*Мэдээжийн хэрэг, зөвхөн Machine Learning сурах зорилгоор. Хайртай эхнэрийнхээ үл ялиг сэтгэл хангалуун бус харц дор.
Нурууны рефлексийн түвшинд Tinder шиг энгийн програм байхгүй байх. Үүнийг ашиглахын тулд танд зөвхөн нэг хуруугаараа шударч, цөөн хэдэн мэдрэлийн эсүүд танд хамгийн их таалагддаг охид эсвэл эрэгтэйчүүдийг сонгоход хангалттай. Хос сонгоход харгис хүчний хамгийн тохиромжтой хувилбар.
Энэ нь шинэ график карт дээр машин сурах талаар бага зэрэг мэдрэх сайн арга байх болно гэж би шийдсэн. Надад шинэ тарган эмэгтэй хэрэггүй гэдгийг эхнэртээ тайлбарлах л үлдлээ, би зүгээр л мэдрэлийн сүлжээг сургаж байна.
Болзох сүлжээнд ямар асуудал байна вэ?
Ийм нөөц байсан - Эшли Мэдисон. Тодруулбал, “Амьдрал богинохон. Үерхээрэй." Гол үзэгчид бол гэр бүлтэй эрчүүд юм. Мөнгө олох нь бас хөгжилтэй байдаг - "таалагдах, бичихийн тулд оноо зарцуулах" стандартаас гадна тэд хэрэглэгчийн бүртгэлийг ул мөргүй устгахын тулд 19 доллар хүссэн.
2015 онд уг сайт байгалийн жамаар алдагдсан бөгөөд 60 ГБ хувийн мэдээлэл олон нийтэд ил болсон. Олон сүйрсэн гэр бүлээс гадна энэ мэдээлэл нь шинжээчдэд маш олон сонирхолтой мэдээллийг өгсөн. Болзох сайтууд дээр илүү олон эрчүүд байдаг гэж би үргэлж сэжиглэдэг байсан ч энэ тохиолдолд энэ нь нэлээд сонирхолтой болсон. Сэтгүүлч Аннели Ньюиц
Эрэгтэй дансанд ийм давамгайлах нь зөвхөн энэ нөөцөд төдийгүй бусад болзооны сайтуудад түгээмэл байдаг. Танилаа сайтар төлөвлөх хэрэгтэй, гэхдээ охин зүгээр л бүртгүүлэх хэрэгтэй болсон үед олон хүн ийм шударга бус нөхцөл байдалтай тулгарсан гэдэгт би итгэлтэй байна. Энэ олон шүтэн бишрэгчдийн чанарыг орхиё, гэхдээ эрэлт нийлүүлэлтийн тэнцвэр охидын талд илт шилжсэнийг үгүйсгэх аргагүй юм.
Tinder-ийн онцлог
Жендэрийн харилцааны хамгийн тохиромжтой харгис хүч
Энэ платформын гол онцлог нь нэг танил бүрийн зардал бага юм. Хоёр удаа дарах нь хангалттай бөгөөд та сонирхолтой байж болзошгүй хүнтэй аль хэдийн харилцаж байна. Асуудал нь ижил хүйсийн тэнцвэргүй байдал нь ихэнх охидыг өдөрт хэдэн арван шүдэнзтэй болоход хүргэдэг. Энэ нь тэд бусад нэр дэвшигчдийн дунд танд анхаарал хандуулах цаг байхгүй болно гэсэн үг юм.
Энэхүү платформ нь усны хувцастай гэрэл зураг эсвэл загварлаг өнгөт машин жолоодож буй хүний дотоод ертөнцийг нэг хагас секундын харцнаас харах боломжийг олгодоггүй нь тодорхой юм. Тиймээс, хэрэв та гэрэл зурагтаа зүгээр л бурханлаг харагдахгүй бол танд үрчилж авах боломжоо нэмэгдүүлэхээс өөр сонголт байхгүй.
Өгөгдөл цуглуулж байна
Юуны өмнө, хэвийн нарийвчлалтай байхын тулд танд маш их мэдээлэл хэрэгтэй. Машины сургалттай тулгарсан хэн бүхэн зөв цуглуулж, шошготой өгөгдлийн багц гаргах нь хичнээн хэцүү болохыг мэддэг. Онолын хувьд, Instagram эсвэл бусад нийгмийн сүлжээнээс үл хамааран ижил төстэй аливаа эх сурвалж мэдээллийн эх сурвалж болгон ашиглахад тохиромжтой. Гэхдээ ирээдүйд сүлжээ ажиллах болно дээж дээр сургах нь дээр.
Хадгалах газрыг үндэс болгон авч үзье
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)
Энэ нь танд хоёр товчлуурын тусламжтайгаар өгөгдлийн багцыг аль болох хурдан тэмдэглэх боломжийг олгоно. Хамгийн гол бэрхшээл нь werkzeug номын сан нь хоцрогдсон нийцтэй байдлыг эвдсэн тул түүнийг албадан буулгах шаардлагатай болсон явдал юм. Үгүй бол энэ алдаа гаргадаг.
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'
Иймд шаардлага.txt дээр Werkzeug==0.16.1 гэж бичих хэрэгтэй. Дараа нь хөөрөх болно.
Хоёрдахь асуудал бол энэ тэмдгийг авах явдал юм. Репозитороос авсан стандарт арга надад тохирохгүй байсан ч би үүнийг хөгжүүлэгчийн консолоос авч чадсан. Үүнийг хийхийн тулд хаягаар очно уу
Өгөгдлийн багцын шаардлага
Машин сургалтын өгөгдлийн багцад тавигдах хэд хэдэн үндсэн шаардлага байдаг:
- Хангалттай байдал
- Нэгдмэл байдал
- Янз бүрийн
Энэ тохиолдолд хангалттай загвар гаргахын тулд дор хаяж 10000 гэрэл зураг шаардлагатай. Тийм ээ, энэ их юм. Энэ нь үнэндээ яагаад үйлчилгээнд дуртай байдаг
Төрөл бүрийн хувьд онцгой асуудал байхгүй, бүх гэрэл зургийг янз бүрийн өнцгөөс, гэрэлтүүлгээс харуулдаг. Нүдний шил, даашинз, усны хувцас, цанын костюмтай. Өгөгдлийн багцын нэгдмэл байдалд асуудал үүсч болзошгүй. Бид дээжээ шошголохдоо ойролцоогоор тэнцүү хэсгүүдээс бүрдэх ёстой. Хэрэв та "халуу" өгөгдлийн багцтай болвол бусад эх сурвалжаас авсан гэрэл зургаар шингэлэх хэрэгтэй болно. Та илүү сэтгэл татам зүйлсийг нэмэх хэрэгтэй болно, эсвэл эсрэгээр та тэмдэглэгээний үр дүнд үндэслэн тэдгээрийг тодорхойлох болно. Би 60% орчим хөөрхөн юм авсан. Нэг бол би хэтэрхий сонгомол биш юм уу, эсвэл зүгээр л азтай хүн, эргэн тойронд олон хөөрхөн охид байдаг.
Би бас тэдний дунд олон робот байдаг гэсэн таамаглалыг үгүйсгэхгүй. Бид бусад роботуудад таалагдах роботыг сургадаг. Үүнд инээдэмтэй зүйл бий.
Өгөгдөл боловсруулах
Бидэнд шошготой олон тооны зураг байгаа ч тэдгээр нь маш холилдсон байдаг. Өдөр, шөнө, араас болон бусад. Дээж нь маш жигд бус байх тул урвуу өнцгөөс гэрэл зургаас заах нь тийм ч үр дүнтэй биш гэдгийг би харамсаж байна. Тиймээс нүүр царайг "өхөөрдөм" шинж тэмдэг болгон ашиглах нь хамгийн сайн сонголт байх болно. Гэсэн хэдий ч бидний хувьд бусад приматуудын хувьд энэ нь гол үзүүлэлт юм.
Тиймээс ашиглацгаая
Үүнийг гарын авлагад илүү дэлгэрэнгүй тайлбарласан болно
Дараагийн шатанд зөвхөн нүүр царай нь дээжинд орсны дараа өнгийг арилгах нь зүйтэй юм. Үнэн хэрэгтээ та Pandora-ийн үзэсгэлэнтэй цэнхэр далайн эр эсвэл ногоон арьстай гоо үзэсгэлэнгийн аль нэгийг сонгох шаардлагагүй болно.
Hue хүмүүсийн арьсны өнгө нь дур булаам байдлын үнэлгээнд чухал хувь нэмэр оруулдаггүй.
Тиймээс мэдрэлийн сүлжээний ажлыг хялбарчилж, зөвхөн саарал өнгө үлдээх нь зүйтэй.
Загварын барилга
Сайн видео карт, CUDA байхгүй бол та хангалттай хугацаанд бэлтгэгдсэн загвар авахгүй байх магадлалтай гэдгийг би шууд хэлмээр байна. Тиймээс нэн даруй мэргэшсэн үүлэн дээр эсвэл python-CUDA ашиглан тооцоолол хийхийг зорь.
Би агуулахын зохиогчоос үндсэн гурван давхаргын жишээг авсан бөгөөд гайхалтай нь 72% орчим нарийвчлалтай байсан нь маш сайн үр дүн юм.
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'])
Хэрэв сайн дээж байгаа бол энэ нь ажиллах боломжтой загварыг авахад хангалттай байх болно.
Ботыг ажиллуулцгаая
Санааг хурдан туршихын тулд бэлэн сонголтыг өгсөн агуулахын зохиогчид баярлалаа. Үнэн хэрэгтээ энэ нь үндсэн хувилбарт маш сайн ажилладаг бөгөөд зарчмын хувьд бидний хувилбар дээр ажиллах боломжтой
Результаты
Би их хөөрхөн юм шиг байна. Мөн миний дотоод ертөнц баялаг. Би нэг цагийн дотор 13 шүдэнз авсан. Түүгээр ч барахгүй охид хэд хэдэн удаа эхлээд бичсэн.
Үүний үр дүнд бид маш сайхан харилцан яриа өрнүүлсэн бөгөөд би энд зөвхөн машин сурах, мэдээллийн шошготой тоглох гэж ирсэн гэж хэлсэн. Охидын нэг нь өөрөө хөгжүүлэгч учраас маш их сонирхож байв. Тэр эцэст нь Хабре дээрх энэ бичлэгийг унших болно гэсэн хүчтэй мэдрэмж төрж байна. Оксана миний нэрээ нууцлах болно гэдэгт би үнэхээр найдаж байна. 🙂
*савуугаараа даллаж, сайн уу гэж хэлнэ
Асуудлын ёс зүйн талын талаар бага зэрэг
Үнэнийг хэлэхэд, эрэгтэй, охидын харилцааг роботжуулах санаа надад таалагддаггүй. Ганцаараа зогсож байгаа хүйтэн танихгүй хүний мөрөн дээр хүрэмээ шидэх нь маш зөв зүйл юм. Эсвэл зуны кафед хөөрхөн охинтой ойртож, хамтдаа кофе уу. Хяналтын цаанаас аль хэдийн гар.
Зун эргэн тойронд байна. Танилцах цаг боллоо.
Эх сурвалж: www.habr.com