*Pulos alang sa pagkat-on sa Machine Learning, siyempre. Ubos sa gamay nga wala matagbaw nga panan-aw sa iyang minahal nga asawa.
Tingali walay aplikasyon nga yano sa lebel sa spinal reflexes sama sa Tinder. Aron magamit kini, kinahanglan ra nimo ang usa ka tudlo aron mag-swipe ug pipila ka mga neuron aron mapili ang mga babaye o lalaki nga labing gusto nimo. Usa ka sulundon nga pagpatuman sa brute force sa pares nga pagpili.
Nakahukom ko nga kini usa ka maayong paagi aron mabati ang pagkat-on sa makina sa usa ka bag-ong graphics card. Ang nahabilin mao ang pagpasabot sa akong asawa nga wala ko magkinahanglan ug bag-ong mas tambok nga babaye, ug nagbansay-bansay lang ko sa mga neural network.
Unsa ang problema sa mga network sa pagpakigdeyt?
Adunay ingon nga kapanguhaan - Ashley Madison. Piho, nga adunay slogan nga "Life is short. Adunay usa ka relasyon." Ang nag-unang mamiminaw mao ang mga minyo nga mga lalaki nga nangita alang sa usa ka relasyon sa kilid. Makalingaw usab ang pag-monetize - dugang sa naandan nga "paggasto sa mga puntos aron gusto ug isulat," nangayo sila og $19 aron matangtang ang account sa usa ka tiggamit nga walaβy pagsubay.
Sa 2015, natural nga nag-leak ang site ug ang 60 GB nga personal nga data na-leak sa publiko nga domain. Dugang pa sa daghang naguba nga mga pamilya, kini nga pagtulo naghatag daghang makapaikag nga kasayuran sa mga analista. Kanunay kong nagduda nga adunay daghang mga lalaki sa mga dating site, apan sa kini nga kaso kini nahimo nga makapaikag. Ang peryodista nga si Annalee Newitz
Ang ingon nga pagpalabi sa mga account sa lalaki kasagaran dili lamang alang sa kini nga kapanguhaan, apan alang usab sa kadaghanan sa ubang mga site sa pagpakigdeyt. Sigurado ko nga daghan ang nakasugat niining walay duhaduha nga dili patas nga sitwasyon, kung kinahanglan nimo nga magplano og maayo sa usa ka kaila, apan ang babaye kinahanglan lang nga magparehistro. Atong biyaan ang kalidad niining panon sa mga fans, apan ang kamatuoran dili ikalimod nga ang balanse sa suplay ug panginahanglan tin-aw nga gibalhin pabor sa mga babaye.
Feature sa Tinder
Ang sulundon nga bangis nga pwersa sa relasyon sa gender
Ang panguna nga bahin sa kini nga plataporma mao ang mubu nga gasto matag kaila. Ang usa ka sulagma sa duha ka swipes igo na ug nakigsulti ka na sa usa ka potensyal nga makapaikag nga tawo. Ang problema mao nga ang parehas nga pagkadili balanse sa sekso nagdala sa kamatuoran nga kadaghanan sa mga batang babaye adunay daghang mga posporo kada adlaw. Kini nagpasabot nga sila lagmit walay panahon sa pagtagad kanimo taliwala sa ubang mga kandidato.
Klaro kaayo nga ang plataporma nagpasabot og gamay nga oportunidad sa pagtimbang-timbang sa lawom nga sulod nga kalibutan sa usa ka tawo gikan sa usa ug tunga nga segundo nga pagtan-aw sa usa ka litrato sa usa ka swimsuit o nagmaneho sa usa ka uso nga tinted nga awto. Busa, kung dili ka yano nga tan-awon nga balaan sa imong mga litrato, wala kaβy kapilian gawas sa pagdugang sa imong mga higayon pinaagi sa pagsagop
Pagkolekta datos
Una sa tanan, kinahanglan nimo ang daghang datos alang sa normal nga katukma. Ang bisan kinsa nga nakasugat sa pagkat-on sa makina nahibal-an kung unsa ka lisud ang paghimo sa usa ka husto nga nakolekta ug gimarkahan nga dataset. Sa teoriya, ang bisan unsang parehas nga kapanguhaan mahimong angay ingon usa ka gigikanan sa datos, kini Instagram o uban pang mga social network. Apan labing maayo nga magbansay sa mga sampol diin ang network molihok sa umaabot.
Atong kuhaon ang repository isip basehan
from skimage.io import imread, imsave, imshow, show
import matplotlib.pyplot as plt
import pynder
from helpers import get_access_token, get_login_credentials
from io_helper import save_image
email, password, FBID = get_login_credentials()
FBTOKEN = get_access_token(email, password)
session = pynder.Session(facebook_token=FBTOKEN)
while True:
users = session.nearby_users()
for user in users:
photos = user.get_photos()
print("Fetched user photos..")
for photo in photos:
print(photo)
image = imread(photo)
imshow(image)
show()
input_string = "Write 1 to like. Write 2 to dislike."
ans = str(input(input_string)).lower()
if ans == "1":
save_image(image, photo, True)
else:
save_image(image, photo, False)
Makatugot kini kanimo nga markahan ang dataset sa labing madali nga mahimo gamit ang duha lang ka buton. Ang yawe nga lit-ag naa sa kamatuoran nga ang librarya sa werkzeug nakaguba sa atrasado nga pagkaangay ug kinahanglan nga pugson nga i-downgrade kini. Kung dili kini naglabay niini nga sayup.
Traceback (most recent call last):
File "img_scrape.py", line 4, in <module>
from helpers import get_access_token, get_login_credentials
File "/home/someone/tmp/TinderAutomation/helpers.py", line 1, in <module>
import robobrowser
File "/home/someone/tmp/TinderAutomation/venv/lib/python3.6/site-packages/robobrowser/__init__.py", line 3, in <module>
from .browser import RoboBrowser
File "/home/someone/tmp/TinderAutomation/venv/lib/python3.6/site-packages/robobrowser/browser.py", line 8, in <module>
from werkzeug import cached_property
ImportError: cannot import name 'cached_property'
Busa, sa requirements.txt kinahanglan nimong isulat ang Werkzeug==0.16.1. Unya kini molupad.
Ang ikaduha nga problema mao ang pagkuha niini nga timaan. Ang standard nga pamaagi gikan sa repository wala magtrabaho alang kanako, apan nakuha nako kini gikan sa developer console. Aron mahimo kini, adto sa
Mga kinahanglanon sa Dataset
Adunay ubay-ubay nga mahinungdanong kinahanglanon alang sa mga dataset sa pagkat-on sa makina:
- Kaangayan
- Pagkaparehas
- Nagkalainlain
Ang pagkaigo niini nga kaso nanginahanglan labing menos 10000 ka mga litrato aron makatukod ug igong modelo. Oo, daghan kana. Kini sa tinuud ngano nga ang mga serbisyo sama
Walaβy partikular nga mga problema sa lainlain; ang tanan nga mga litrato gipresentar gikan sa lainlaing mga anggulo ug suga. Sa mga baso, sinina, swimsuit ug ski suit. Ang usa ka problema mahimong motumaw sa pagkaparehas sa dataset. Sa maayo nga paagi, kung among gimarkahan ang among sample, kinahanglan nga adunay gibana-bana nga managsama nga mga bahin. Kung adunay usa ka "skewed" nga dataset, kinahanglan nimo nga tunawon kini sa mga litrato gikan sa ubang mga gigikanan. Kinahanglan nimo nga idugang ang labi ka madanihon, o vice versa, mahibal-an nimo sila base sa resulta sa markup. Nakakuha ako usa ka butang nga hapit 60% nga matahum. Dili man ko pili-on, o swerte lang ko ug daghang gwapa nga mga babaye sa palibot.
Dili usab nako ibaliwala ang hypothesis nga adunay daghang mga bot sa taliwala nila. Nagbansay kami sa usa ka bot nga gusto sa ubang mga bot. Adunay pipila ka irony niini.
Pagproseso sa datos
Adunay kami usa ka hugpong sa mga gi-tag nga mga litrato, apan sila sagol kaayo. Adlaw, gabii, gikan sa likod ug uban pa. Uban sa pagmahay, akong nasabtan nga ang pagtudlo gikan sa mga litrato gikan sa usa ka baligtad nga anggulo dili labi ka epektibo, tungod kay ang sample dili parehas. Busa, ang labing kaayo nga kapilian mao ang paggamit sa mga nawong ingon usa ka reperensiya nga timaan sa "kaguwapo." Bisan pa, alang kanamo, sama sa ubang mga primata, kini usa ka hinungdanon nga parameter.
Busa, atong gamiton
Kini gihulagway sa mas detalyado sa manwal
Sa sunod nga yugto, pagkahuman sa mga nawong ra ang naa sa sample, makatarunganon nga tangtangon ang kolor. Sa tinuud, dili ka kinahanglan nga mopili tali sa matahum nga asul nga denizen sa Pandora o sa katahum nga berde nga panit.
Sa mga tawo nga Hue, ang kolor sa panit wala maghimo usa ka hinungdanon nga kontribusyon sa mga rating sa pagkamadanihon.
Busa, angay nga pasimplehon ang trabaho sa neural network ug ibilin lamang ang grayscale.
Pagtukod sa modelo
Gusto nakong isulti dayon nga kung walaβy maayong video card ug CUDA, lagmit dili ka makakuha usa ka nabansay nga modelo sa igong oras. Busa, tinguhaa dayon ang mga kalkulasyon sa espesyal nga mga panganod o paggamit sa python-CUDA.
Nagkuha ako usa ka sukaranan nga tulo-ka-layer nga panig-ingnan gikan sa tagsulat sa repository ug, katingad-an, kini nagpakita sa usa ka katukma sa hapit 72%, nga usa ka maayo nga sangputanan.
model = Sequential()
model.add(Convolution2D(32, 3, 3, activation='relu', input_shape=(img_size, img_size, 3)))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Convolution2D(32, 3, 3, activation='relu'))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Convolution2D(64, 3, 3, activation='relu'))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Flatten())
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(2, activation='softmax'))
adam = optimizers.SGD(lr=1e-4, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss='categorical_crossentropy',
optimizer= adam,
metrics=['accuracy'])
Kung adunay usa ka maayo nga sample, nan kini igo na aron makakuha usa ka magamit nga modelo.
Atong ilunsad ang bot
Salamat sa tagsulat sa repository alang sa usa ka andam nga kapilian alang sa dali nga pagsulay sa ideya. Sa tinuud, kini molihok nga maayo sa sukaranan nga bersyon ug mahimo, sa prinsipyo, ilunsad sa among
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ
I guess cute kaayo ko. Ug ako adunay usa ka adunahan nga kalibutan sa sulod. Nakakuha ako usa ka butang sama sa 13 ka posporo sa sulod sa usa ka oras. Dugang pa, daghang mga higayon nga nagsulat una ang mga babaye.
Ingon usa ka sangputanan, nahuman kami sa nindot kaayo nga mga diyalogo, diin giingon nako nga mianhi ako aron lang magdula sa pagkat-on sa makina ug pag-label sa datos. Usa sa mga babaye interesado kaayo, tungod kay siya mismo usa ka developer. Adunay kusog nga pagbati nga sa katapusan mabasa niya kini nga post sa HabrΓ©. Naglaum gyud ko nga ipadayon ni Oksana ang akong dili mailhan. π
*nagwara-wara ug niingon og hi
Usa ka gamay bahin sa etikal nga bahin sa isyu
Sa tinuud, dili ko gusto ang tibuuk nga ideya sa pag-robot sa mga relasyon tali sa mga lalaki ug babaye. Adunay usa ka butang nga husto bahin sa paglabay sa imong dyaket sa mga abaga sa usa ka bugnaw nga estranghero nga nag-inusara nga nagtindog. O duola ang usa ka gwapa nga babaye sa usa ka cafe sa ting-init ug mag-inom og kape. Gawas gikan sa luyo sa mga monitor na.
Hapit na ang ting-init. Panahon na aron magkaila.
Source: www.habr.com