Про обучение без учителя в machine learning я знаю только кластеризацию (оно ж без учителя, да? k-means и компания) и ультра-хайповый (ну, во всяком случае, был) reinforcement learning. И с последним все так круто, так радостно, хочешь в доту играй, хочешь
роботом бегай. На первый взгляд. Но так просто натянуть это на
настоящего робота не выйдет. Да даже и не IRL. Слишком неустойчиво, крайне сильно зависит от качества функции стоимости, слишком долго обучать, слишком магия, слишком часто выдает какое-то говно. Я пытался это курить и таки натянуть на робота, но в своем развитии остановился где-то на мятнике.
Комп прогоняет все варианты
Но ведь там экспонента же. Не все же. На какую-то глубину. Минимакс и всякие хитрые штуки, вроде альфа-бета отсечения. Насколько я знаю, пресловутый AlphaZero работает на таком же принципе, только эвристики у него не вручную написаны, а обучены.
В этом и есть краеугольная причина, почему робот не заменит человека. Живой водитель, даже если никогда не видел голого человека, стоящего раком посреди дороги, все равно сразу поймет, что перед ним человек. Потому что человеческий мозг оценивает, находит аналоги, и.т.д. А нейронная сеть тупая: если этого нет в базе, значит, нет.
Ну вот человеческий мозг же не на магии работает. Сложно, огромное количество нейронов, еще больше связей (которые, к тому же, не сводятся к простому сумматору IRL), но не невозможно. Алсо, у человека просто огромная обучающая выборка: сколько лет ребенок нонстопом смотрит на мир, просто огромный потом информации, чтобы обучить.
У меня есть немного философский вопрос (или рассуждение). Возможно ли создать идеальный, к примеру, распознаватель (ну, не уступающий человеку) сферический в вакууме, или же эта задача потащит за собой другие, так скажем, высшие нервные функции? (например, распознавание не само по себе, а задействует знания о мире, взаимоотношении вещей, физике, умение рассуждать и так далее). P.S.
С чего вы взяли что сеть нельзя научить распознавать голого человека? Сеть научили раздевать фотографии людей, состаривать, менять пол, из расплывчатых пикселей достраивать целую картинку. (https://pikabu.ru/story/neyroset_uvelichivaet_razreshenie_izobrazheniya_do_8_raz_6906911)
Достаточно заложить общее понятие человек и заставить сравнивать с ним объекты, с одеждой или нет.
Я не говорю, что невозможно. Я говорю, что все упирается в датасеты. Все эти раздевания, смена пола, возраста, увеличение разрешения, раскрашивание, создание рисунка по наброску итп итд - это генеративные нейронные сети той или иной сложности. В основе две сети - генератор (делает картинку, пытается обмануть дискриминатор) и дискриминатор (пытается определить - настоящая картинка или нет). В любом случае это все обучается на большущих датасетах с реальными фотографиями. Нет датасета - нет сетки. Нет достаточного количества людей с голой жопой на дороге - нет распознавания.
Я не говорю, что сетки - говно, давайте вертать взад в OpenCV и каскады Хаара. Сетки - это очень хорошо. Особенно в задачах компьютерного зрения и смежных. Но есть область применимости, и
а) в текущем виде это серебряная пуля, не сможет решить все проблемы и вообще сделать зае*ись и это не исправить увеличением количества слоев
б) слишком много хайпа среди обывателей или каких-нибудь недальновидных бизнесов (ну вроде утихает).
Но это моя имха.
Бывают пешеходы в костюмах медведей, как четко описать разницу?
Вы знаете, что есть медведь. Что медведь - физический объект, в него тоже лучше не врезаться. Еще можете по ряду признаков отличить (с той или ной вероятностью) пешехода в костюме от медведя. Либо костюм херовый, либо ходит не так, либо абсурдность ситуации итп итд. Что будет, если взять сетку, которая научена на пешеходы-велосипедисты-машины-грузовики и засунуть ей человека в костюме медведя - я не знаю. Если не сдюжит, придется сколько-то подобных фоток, разметить (ручками!) и в датасет.