Поговорим о вкладе кошек в создание искусственного интеллекта. Да-да, это отнюдь не шутка! Котики давно покорили людские сердца, оккупировали интернет, а теперь добрались еще и до такой перспективной на сегодняшний день области нашего ближайшего будущего как нейросети.
Попыткам создать похожего на нас с вами, но только искусственного человека не одна сотня лет. Даже слово робот придумано Карелом Чапеком еще в 1920-м году. В вопросе имитации движения отдельных частей или всего тела успехи давно очевидны. Уже в XII веке арабский изобретатель создал механических музыкантов, с XVI столетия в Западной Европе удивляли публику заводные автоматоны, в XVIII веке появился играющий на флейте андроид, а в 1968 году на конвейере Kawasaki начал работать первый промышленный робот.
Только вот с искусственным интеллектом даже до наших дней дела обстоят не столь радужно. Возможно, потому что мы сами еще не дали точного определения самому интеллекту и не определились, как его собственно измерять. Единственно, в чем мы уверены точно – он у нас имеется. Изначально наметились два направления. Одно пыталось воссоздать логику работы разума. Второе – искусственно смоделировать действия сети нейронов мозга.
В первом случае требуется формализовать, то есть подробно описать, задачу и создать алгоритм, пользуясь которым можно получить решение. Нейросети же не требуют формализации задачи. Они учатся самостоятельно на примерах, когда получают правильные решения по тем данным, которые им задаются на начальном этапе. То есть все как у людей: получают входные данные и выдают ответ, основываясь на уже имеющемся опыте.
Еще в начале 2000-х годов они были уделом немногочисленных энтузиастов. Однако рост вычислительной мощности компьютеров и усовершенствование графических ускорителей кардинально изменили ситуацию. Сегодня многослойные искусственные нейросети в тренде. Не вдаваясь в технические подробности – это устройства, состоящие из сотен миллионов или миллиардов соединенных между собой «нейронов». Каждый из них принимает сигнал, модифицирует его определенным образом и передает дальше.
С увеличением количества слоев возросло число этапов обработки и способов, которыми эти слои можно комбинировать между собой. Появились разные виды глубоких нейросетей: прямого распространения, рекуррентные, сверточные и т.д. Но все это интересно специалистам. Для нас же важно, что они начали показывать чудеса интеллектуальной работы – побеждать мастеров игры в го; подсчитывать число людей в толпе; вести осмысленную беседу и т.п.
Еще в начале XXI века казалось, что нейросеть никогда не отличит кошку от собаки. Однако сегодня она не только успешно выполняет подобную задачу, но также определяет породу животных и способна идентифицировать конкретную четвероногую особь. Причем, как и в случае с нашим мозгом, ученые знают о путях связей и действии отдельных «нейронов», но не ведают, каким конкретно способом обе нейросети получают итоговый результат.
Искусственной нейросети для обучения требуется огромное количество исходных данных. Чем их больше, тем лучшей будет ее работа. Если вы обучаете ее распознавать объекты на снимках, то котики – ваш выбор. Ибо в интернете они уступают лишь медиапродукции для взрослых. Наиболее способными оказались сверточный нейросети, лучшие из которых ошибаются только в 3.5% случаев. Для сравнения – у человека данный показатель 5%.
Покончив с распознаванием, исследователи перешли к следующему этапу – созданию новых ранее несуществующих образов. Этому они пытаются научить генеративно-соревновательную нейросеть StyleGAN. Правда, многие из сгенерированных 100 000 кошачьих образов скорее подобны героям фильмов ужасов, чем милым мурлыкам.
Впрочем, учитывая сложность задачи – создание пушистиков в разных позах, под разными углами обзора, на фоне мебели, в компании людей и т.д. уже достигнут довольно высокий уровень. А ведь обучение еще только на начальном этапе.
Как говаривал незабвенный Чеширский Кот: - О да, жизнь – это серьезно! Но не очень. Тоже применимо сегодня и к использованию новых технологий. Вот живете вы себе в небольшом чудесном загородном домике с изумрудным газоном. И все бы ничего, если бы не соседские кошки. Повадились они регулярно оставлять в мягкой траве отнюдь не аппетитного вида продукты своей жизнедеятельности.
Бороться с ситуацией поможет собака во дворе, огораживание участка колючей проволокой, установка ультразвуковых отпугивателей и т.д. Однако инженер-разработчик компании Nvidia Роберт Бонд (Robert Bond) посчитал такие варианты слишком банальными.
Он предпочел закрепить на стене гаража IP камеру Foscam, которая при детектировании движения на участке с секундным интервалом делает семь снимков и отправляет их для обработки модулю Nvidia Jetson TX1. Установленная на нем глубокая сверточная нейросеть Caffe анализирует изображение, и в случае обнаружения кошки дает команду на включение спринклеров системы полива газона.
Поскольку систему требовалось предварительно натренировать, Р. Бонд «скормил» ей около 1.2 миллионов скачанных из интернета фотографий котиков. Впрочем, на начальном этапе обучение проходило не совсем гладко. Дело в том, что на подавляющем большинстве таких снимков кошки сняты крупным планом с близкого расстояния. А у следящей за двором камеры ракурс и масштаб совсем иные.
Однажды Роберт даже сам стал жертвой свое детища. Не ожидая никакого подвоха он вышел подстричь траву на газоне. Распознавая на фотографии комбинацию изображений его фигуры, газонокосилки и теней от них нейросеть решила, что на вверенную ей территорию вторглась кошка и начала полив.
Только когда Бонд собственноручно сделал серию учебных снимков забегающих к нему на участок котов, дела стремительно пошли на лад и «преступники» четко идентифицировались. Правда довольно скоро система осталась без работы. Кошки просто перестали наведываться в этот двор. Оказалось, они тоже могут учиться Причем гораздо быстрее – им достаточно всего пару раз попасть под душ, чтобы усвоить урок.