ГейДетектор: что это и как я его сделал
Это первая часть рассказа, продолжение следует.Гейдетектор (gaybuster) определяет геев с вероятностью 76 - 91% и она постепенно будет улучшаться еще больше.Для начала распишу основную информацию. Скоро Гейдетектор будет запущен, допустим пока в виде телеграм бота https://tmtr.me/gaybuster_bot (уже проходил тестовый запуск), также есть вебсайт, где вы можете следить за новостями.Как реагировала общество.На данный момент уже чувствуется давление (возможно со стороны голубой мафии). Например, на producthunt наш анонс был забанен в течении часа без объяснения причин. Кроме того мне угрожают во вконтакте расправой, незнакомые люди представляются сотрудниками СКР. Полиция в открытую говорит мне, чтобы я удалялся навсегда из интернета, приходили ко мне домой в том числе. Этого же требуют и от моих родственников (а точнее просто бандитов) отрубить мне интернет навсегда.Результат работы и как это получилосьМне удалось создать работающий гейдетектор, опредляющий геев с точностью от 76 до 91%. Добавляются определения по видео и голосу, чтобы достичь 99% процентов в будущем, и сейчас я хочу рассказать, как у меня это получилось, так как работа оказалось крайне сложной и было потрачено много времени.С чего началосьВ 2016 мне попалась статья о gaydar ai многие сми написали об этом иследовании https://meduza.io/feature/2017/09/08/uchenye-nauchili-neyroset-opredelyat-seksualnuyu-orientatsiyu-po-fotografii-i-preduprezhdayut-eto-ochen-opasnohttps://psyarxiv.com/hv28a/В итоге выяснилось, что нейросеть может безошибочно определять геев с вероятностью 81% по одной фотографии и до 91% по нескольким. Мне очень понравился этот эксперимент, и я думал, что уже через несколько месяцев магазины приложений будут завалены подобными алгоритмами, а также появятся плагины для браузеров, которые будут обрабатывать все фотографии и списки ваших друзей в социальных сетях, после выводить результат. Также технология будет внедрена в видео камеры и очки дополненной реальности.Но вместо этого голубая мафия ополчилась на алгоритм и начала писать свои заказные статьи, пытаясь разоблачить научное исследование несли всякий бред про невозможность определения физических качеств во внешним признакам, что они не брали старых голубых и чернокожих, а значит типо не работает и вообще авторы фашисты. Другие пошли ещё дальше - псевдо эксперты утверждали, что они изобрели детектор грима, а геев якобы вычислить невозможно. Непонятно, по каким причинам, но до сих пор ни исходный код, ни модель подобного алгоритма не была опубликована, не создано также ни одного приложения для открытого доступа! Подозреваю, что автору заплатили, чтобы он прикрыл разработку, если бы на него наехали он бы мог втихаря выложить в открытый доступ все наработки.В 2019 возможно с подачи голубой мафии скептики решили повторить эксперимет https://arxiv.org/pdf/1902.10739.pdf и он полностью подтвердился! На эксперимент были потрачены большие деньги, они наняли множество сотрудников которые вручную разбирали каждое фото по несколько раз на которых обучалась сеть. Несмотря на более меньшую базу голубых и неголубых результат оказался почти такой же, хотя им удалось достичь большего определения среди женщин! Несмотря на это несколько подконтрольных СМИ голубой мафии написало, якобы у них почти ничего не вышло и пока нельзя определить геев по фото, хотя в исследовании точно говорилось что все подтвердилось и была бы база чуть у них побольше, то результаты может были и выше чем оригинальном исследовании, кроме того они специально пытались дискредитировать это “чудо чудесное” меняя внешность геев и негеев накладывая грим, парики и очки, строя уродливые рожи, и у них ничего не вышло! Алгоритм работал идеально но кто будет читать технические документации эксперимента?Как я принял решениеИ опять никаких даже частичных исходных кодов или баз с моделями не было выложено в открытый доступ! Мне было понятно что если я этого не сделаю, то не сделает никто еще десятки лет, поэтому я решил взяться за работу с нуля вообще не понимая почти ничего ни в питоне не нейросетях, пришлось разбираться самому, во всем так как мне никто и не помог.Я начал с простой своей идеи о том, что голубые похожи больше на женщин, поэтому достаточно сравнивать мужчин с женщинами, чтобы получить результат. Подправив уровень необходимого детекта, первые результаты работы вы можете наблюдать на этом видео https://www.youtube.com/watch?v=n5WJeHc-sGU.Для первой версии гейдетектора я использовал обычный код с гитхаба с готовой моделью по определению женщин от мужчин. Несмотря на то, что многих определяло правильно чувствовалось, что что-то не то и результат невысокий когда проверяешь на реальных геях.К сожалению, я тогда не читал документацию по первому исследованию и созданию алгоритма а только по второму 2019 года и если бы я его прочитал то понял, что еще тогда они установили что если определять лица по уровню женственности, то определение голубой человек или нет составляет всего 58%:После чего я начал делать вторую версию гейдетектора полностью заново, и мне пришла такая идея: раз авторы исследований выложили собирательный портрет голубого, то достаточно сравнивать лица с этими собирательными портретами и получить результат. Я нанял кодера первого кого нашел, заплатил ему 3 тысячи, и он написал мне сравнение нейросеть, которая выявляла похожесть к собирательному портрету геев и не геев:К сожалению, этот способ не сработал и результаты были ещё более рандомные и вообще лишены всякого смысла.После чего мною было решено делать все самому, так как денег больше не было на кодеров ввиду 0 финансирования и помощи для разработки столь важного алгоритма для помощи людям в раздачи бесплатного “дара”.Третья версию я решил уже сделать на основе той-же нейросети с гитхаба, которая определяет мужчин и женщин просто натренировать её вместо мужчин и женщинах на голубых и не голубых.Осталось собрать материалы, нужны были десятки если не сотни тысяч фотографий голубых и не голубых, это оказалось проблемой - никакой готовой базы в открытом доступе не было пришлось собирать с сайтов знакомств.Но возникла ещё проблема, если не голубых можно найти и сграбить в избытке на таких сайтах, то голубых несмотря на большое количество сайтов там крайне мало, несмотря на громкие заявления авторов этих сайтов, кроме того надо еще постараться и написать скрипт чтобы обходил защиту против роботов и собирал тысячами фотографии все которые там есть.Первый сайт на который я наткнулся Gay****.*** и мне повезло после создания тестового аккаунта, оказалось там нет никакой защиты от роботов, все фотографии просто в открытом доступе, перебирая номер фотографии удалось спарсить все фото до единой вот они:всего почти 30 000 фотографийВ дальнейшим было спарсино более хитрым образом еще около 20 тысяч фотографий геев с других сайтов и около 200к негеев. Как впоследствии оказалось это было самым простым, нужно было еще отфильтровать их ВРУЧНУЮ убрав черных, китайцев, слишком молодых и слишком старых! Но тогда я об этом еще не знал и просто выдрал лица программой для изготовления дипфейков (в которых я преуспел) также я сделал почти 10 полных дипфейк фильмов полностью заменив лица в полнометражных фильмах, даже блогер миллионник Гоблин Пучков у себя вк запостил.После простой обработки получилось следующее: где-то по 13к голубых и не голубых (много фотографий оказалось непригодны). Также была отдельная подборка для теста валидации нейросети (фотографии для проверки около 2600 на которых нейросеть не обучалась)голубые:натуралы:Больших усилий стоило разобраться в чужом коде и заставить нейросеть обучаться, нейросеть никак не хотела в препроцесс как потом оказалось из-за пробелов файлах пришлось удалять все пробелы, что тоже получилось с трудом, затем надо было запихнуть каждую фотографию с идентификатором и путем.Список нужно было еще и перемешать, 1 означает гей 0 натурал.С первых раз удалось достичь фантастических результатов почти 80% гдето потери модели составило 0.2 ! 0 - это идеально в этой нейросети на “ - _Gil Levi and Tal Hassner, Age and Gender Classification Using Convolutional Neural Networks, IEEE Workshop on Analysis and Modeling of Faces and Gestures (AMFG), at the IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), Boston, June 2015_”Если кто разбирается напишите чем она отличается от vggface? Прилагаю результаты тестов совершенных после обучение модели на фотографиях на которых она не обучалась:Z:\GayBuster\my_dataset\temp\test-gay\20798.jpgGAY!0.81Z:\GayBuster\my_dataset\temp\test-gay\20799.jpgNotGay0.60Z:\GayBuster\my_dataset\temp\test-gay\20800.jpgNotGay0.75Z:\GayBuster\my_dataset\temp\test-gay\20801.jpgNotGay0.89Z:\GayBuster\my_dataset\temp\test-gay\20802.jpgGAY!0.99Z:\GayBuster\my_dataset\temp\test-gay\20803.jpgGAY!0.52Z:\GayBuster\my_dataset\temp\test-gay\20804.jpgGAY!0.95Z:\GayBuster\my_dataset\temp\test-gay\20805.jpgNotGay0.98Z:\GayBuster\my_dataset\temp\test-gay\20806.jpgGAY!0.97Z:\GayBuster\my_dataset\temp\test-gay\20807.jpgGAY!0.73Z:\GayBuster\my_dataset\temp\test-gay\20808.jpgNotGay1.00Z:\GayBuster\my_dataset\temp\test-gay\20809.jpgGAY!0.99Z:\GayBuster\my_dataset\temp\test-gay\20810.jpgNotGay0.99Z:\GayBuster\my_dataset\temp\test-gay\20811.jpgNotGay0.86И так далее, приложу подробнее, если будет нужно.ЗаключениеПервая часть подошла к концу, забегая вперед опять же скажу, что в дальнейшим эта нейросеть отказалась выдавать приемлемый детект, когда я добавил больше фотографий с других сайтов, кто знает почему напишите, работала идеально когда геи были с одного сайта и не геи с другого но когда я с других сайтов стал добавлять еще геев и негеев в кучу она стала показывать отвратительные результаты. Исправить проблему я не смог, поэтому было решено полностью всё переделать, написав с нуля по методичке, которую выкладывали авторы исследования в 2016 и 2019 году, и у меня получилось с огромным трудом! Как я это сделал всё таки расскажу во второй части. А пока, кто хочет помочь в разработке столь необходимой технологии, пишите мне, помощь действительно очень нужна как виде спонсоров так и технических специалистов.Вообщем следите за новостями и ждите вторую часть.