В 1960-х годах появился новый подраздел информатики — искусственный интеллект (ИИ). Полвека спустя инженеры продолжают развивать обработку естественного языка и машинное обучение, чтобы оправдать надежды на появление сильного ИИ.

Мы в 1cloud пишем в блоге не только о себе [клиентоориентированность, безопасность], но и разбираем занимательные темы вроде ментальных моделей или систем хранения данных на основе ДНК.

Сегодня мы расскажем о том, как машинное обучение используется сейчас: почему нейронные сети популярны у физиков, как работают рекомендательные алгоритмы YouTube и поможет ли машинное обучение «перепрограммировать» наши болезни.


/ Zufzzi / Wikimedia / CC0

Вселенная только кажется необъятной


Математических функций на порядок больше, чем возможных сетей для их аппроксимации. Но глубокие нейронные сети каким-то образом находят правильный ответ. Генри Лин (Henry Lin) из Гарварда и Макс Тегмарк (Max Tegmark) из Массачусетского технологического института пытаются понять, почему так происходит.

Учёные пришли к выводу, что Вселенная управляется только небольшой частью всех возможных функций: законы физики можно описать функциями с простым набором свойств. Вот почему глубоким нейронным сетям не нужно аппроксимировать все возможные математические функций, а только небольшую их часть.

«По непонятным до конца причинам, наша Вселенная может быть точно описана полиномиальными гамильтонианами низкого порядка», — говорят Лин и Тегмарк. Обычно многочлены, описывающие законы физики, имеют степени от 2 до 4. Поэтому Лин и Тегмарк считают, что глубинное обучение уникальным образом подходит для построения «физических» моделей.

У законов физики есть несколько важных свойств — они обычно симметричны по отношению к вращению и перемещению. Эти свойства также упрощают работу нейронных сетей – например, аппроксимацию процесса распознавания объекта. Нейронным сетям не нужно аппроксимировать бесконечное число возможных математических функций, а только небольшое количество самых простых.

Ещё одно свойство Вселенной, которое могут использовать нейронные сети — это иерархия её структуры. Искусственные нейронные сети часто создаются по подобию биологических, поэтому идеи учёных объясняют не только успешную работу глубинного обучения машин, но способность человеческого мозга понимать Вселенную. Эволюция привела к появлению структуры мозга человека, которая идеально подходит для разбора сложной Вселенной на понятные составляющие.

Работа учёных из Гарварда и МТИ должна помочь существенно ускорить процесс развития искусственного интеллекта. Математики могут улучшать аналитическое понимание работы нейронных сетей, физики и биологи – разбираться в том, как взаимосвязаны явления природы, нейронные сети и наш мозг, что приведёт к переходу на новый уровень работы с ИИ.

Определение личности по изображениям


Недавно учёные из Техасского университета в Остине и Корнелльского университета Ричард МакФерсон (Richard McPherson), Риза Шокр (Reza Shokr) и Виталий Шматиков (Vitaly Shmatikov) опубликовали статью, в которой рассказали о собственном методе распознавания изображений на основе искусственных нейронных сетей. С помощью этой системы можно установить личность человека по базе данных, даже на специально защищённых изображениях.

Эксперимент проводился на нескольких методах защиты или обфускации лиц — пикселизации, размытии и новом методе P3 (Privacy-Preserving Photo Sharing), суть которого состоит в шифровании части JPEG-изображения и отделении ценной для распознавания информации от остальной части. Во время исследования учёные применяли нейронные сети для распознавания людей на четырёх наборах данных, которые используются для тестирования алгоритмов определения лиц, объектов и рукописных цифр.

По базе данных MNIST, состоящей из чёрно-белых рукописных цифр, разработанная нейронная сеть определяет почерк с точностью около 80% на защищённых алгоритмом P3 изображениях с уровнем 20 (рекомендованным создателями P3 в качестве самого подходящего значения). На защищённых мозаикой (т.е. при пикселезации) с блоками разрешением 8 ? 8 или ниже, точность распознавания превышает 80%. Точность случайного угадывания в данном случае составляет только 10%.

В наборе данных CIFAR-10, состоящего из цветных изображений автомобилей и животных, учёные добились точности в 75% с защитой P3, 70% при пикселизации с блоками 4 ? 4 и 50% с блоками 8 ? 8. Точность случайного угадывания в данном случае также составляет 10%.

В наборе данных AT&T из чёрно-белых фотографий 40 человек, они добились точности в 57% при размытии, 97% при защите P3 и более 95% при пикселизации. Точность случайного подбора в этом примере составляет 2,5%.

При тестировании на наборе данных FaceScrub из фотографий 530 знаменитостей учёные достигли 53% точности распознавания при пикселизации с блоками 16 ? 16 и 40% точности при защите P3. Точность случайного угадывания в данном случае составляет 0,19%.

Главная причина, почему этот метод работает в таких трудных условиях — для него не нужно предварительно указывать конкретные соответствующие человеку черты и даже не нужно понимать, что скрывают частично зашифрованные или затемнённые изображения.

Вместо этого нейронные сети автоматически определяют релевантные элементы и обучаются использовать корреляции между скрытой и видимой информацией (например, значительные и «незначительные» части в представлении JPEG-изображения). Это – один из примеров того, как нейронные сети учатся выполнять задачи, в решении которых долгое время человеческий интеллект был намного успешнее искусственного.

Новая система рекомендаций YouTube


Разработчики из компании Google Пол Ковингтон (Paul Covington), Джей Адамс (Jay Adams) и Эмре Сэрджин (Emre Sargin) описали работу системы рекомендаций YouTube, основанной на глубоких нейронных сетях.

Как и в случае с другими продуктами Google, в YouTube начали переход на использование глубоких нейронных сетей для большинства проблем, связанных с обучением. Разработанная система рекомендаций основана на технологии Google Brain, которая недавно было выложена в открытый доступ как TensorFlow.

Эта технология представляет собой гибкую среду для экспериментирования с различными архитектурами глубоких нейронных сетей и применения крупномасштабного распределенного обучения. Модели, разработанные инженерами Google, изучают приблизительно один миллиард параметров и обучены на сотнях миллиардов примеров.



Система состоит из двух нейронных сетей: одна – для генерации «кандидатов» [на просмотр], а другая – для их ранжирования. Сеть генерации кандидатов собирает события из истории активности пользователя YouTube в качестве входной информации и выделяет сотни небольших подкатегорий видеороликов из огромного набора.

Фактически сеть генерации кандидатов позволяет отобрать ролики, которые смотрели пользователи с похожими интересами. Сходство между пользователями определяется по тому, сколько одинаковых видео они просмотрели (по ID видеороликов), по их поисковым запросам и демографическим данным (возрасту, полу и т.д.).

Во время процесса генерации кандидатов огромный объём видео с YouTube «просеивают» до сотен роликов, которые могут быть интересны пользователю. Ранее для этой цели применялся метод матричной факторизации, и первые версии модели нейронной сети повторяли это поведение с помощью неглубоких сетей, которые использовали только просмотренные ранее видео. Инженеры Google называют свой подход нелинейным обобщением техник факторизации.

И хотя в YouTube присутствуют механизмы обратной связи (нравится/не нравится, опросы и т.д.), для обучения модели нейронной сети разработчики используют неявное взаимодействие [пользователя с системой] в виде просмотров, где просмотренное до конца видео считается положительным примером, а представленное в выдаче, но не просмотренное – отрицательным. Выбор на таком уровне основан на гораздо более объёмной истории пользователя, что помогает подбирать более точные рекомендации, когда явных отзывов недостаточно.

Чтобы показать пользователю небольшое число «лучших» рекомендаций в виде списка необходимо точно разделять «кандидатов» по их относительной важности для пользователя. Сеть ранжирования выполняет эту задачу, определяя для каждого видео свою оценку и применяя богатый набор характеристик, описывающих видео и пользователя. Видеоролики с самой высокой оценкой ранжируются и выдаются пользователю. Двухэтапный подход позволяет разработчикам работать с миллионами роликов, и при этом быть уверенными, что подобранный для каждого пользователя набор будет персонализирован и интересен.

Большое количество видеоконтента загружается на YouTube каждую секунду, а для такого сервиса очень важно рекомендовать «свежие» ролики, чтобы поддерживать активность пользователей. Помимо отслеживания новых видеороликов, разработчики стремятся совершенствовать систему в направлении автоматического поиска и распространения популярного контента. Распределение популярности видео может сильно меняться со временем, однако усреднённая вероятность просмотра ролика за период обучения в несколько недель, будет иметь вид мультиномиального распределения по всему набору контента.

Развитие медицины и биокомпьютеры


В компании Microsoft считают, что рак похож на компьютерный вирус, и его можно победить, взломав код. Сотрудники компании используют искусственный интеллект в новом медицинском проекте по уничтожению раковых клеток.

В одном из направлений этого медицинского проекта используются машинное обучение и обработка естественного языка – они необходимы ученым для оценки всего объёма ранее собранных данных при подборе плана лечения пациентов.

Компания IBM работает над похожим проектом, используя программу Watson Oncology, которая анализирует состояние пациента по собранным данным. Ещё в одном проекте Microsoft применяется система компьютерного зрения для радиологии, чтобы отслеживать процесс развития опухолей.

Кроме того, корпорация планирует научиться программировать клетки иммунной системы как компьютерный код. Джанет Уинг (Jeanette M. Wing), вице-президент Microsoft Research, объяснила, что компьютеры будущего могут не только состоять из кремния, но и из живой материи, что подталкивает компанию к поиску возможных способов биопрограммирования.

Старые идеи работают по-новому


Искусственные нейронные сети — это далеко не новая концепция, она появилась ещё в 1950-х годах, а многие прорывные исследования в этой области пришлись на 1980-е и 1990-е. Но сегодня в распоряжении инженеров есть инструменты на порядок мощнее, а новые значимые пути развития машинного обучения, возможно, ещё не придуманы.

«ИИ — это новое электричество. Искусственный интеллект делает сейчас то же, что 100 лет назад сделало электричество, трансформируя индустрию за индустрией», — считает Эндрю Ын (Andrew Ng), старший научный сотрудник Baidu Research.

О чём ещё можно почитать в нашем блоге на Хабре на тему искусственого интеллекта, нейронных сетей и машинного обучения:


Если интересно почитать, что мы пишем о нас (1cloud)
Поделиться с друзьями
-->

Комментарии (4)


  1. Danov
    17.10.2016 14:50

    Учёные пришли к выводу, что Вселенная управляется только небольшой частью всех возможных функций: законы физики можно описать функциями с простым набором свойств. Вот почему глубоким нейронным сетям не нужно аппроксимировать все возможные математические функций, а только небольшую их часть.
    По непонятным до конца причинам, наша Вселенная может быть точно описана ...
    Я не профессиональный математик, но, вроде как, есть теорема, которая утверждает, что любую сложную многомерную функцию можно представить в виде суммы простых. Теорема разве не объясняет изложенные предположения?


    1. S_A
      17.10.2016 15:49

      И да и нет. Сумма простых функций может быть какой угодно сложной. Банальный синус в ряд Тейлора если разложить. Тут скорее речь не об этом… Всякие степени полиномов в физике по большей части намекают на трехмерность пространства. Причины лично я (как когда-то математик...) [вот лично моё имхо] вижу в том, что атомарные взаимодействия примитивны, а их агрегирующие — более сложные функции (как ряд Тейлора) — тоже имеют свою структуру, и чаще всего тоже достаточно несложно устроенную, поскольку являются «атомами» других взаимодействий. Но это как гипотеза на вечернем диване скорее, на arxiv.org писать не буду :)


  1. sayanlar
    17.10.2016 14:56

    Интересно, а сможет ли машинное обучение когда-нибудь ставить диагноз? Понятно, что нельзя просто так «скормить алгоритму» совокупности жалоб+анализов и поставленные врачом диагнозы — дело даже не в том, что точность такой выборки будет никакой, а в том, что диагноз должен ставиться, имея ввиду происходящие в организме процессы, т.е. машинное обучение не просто должно связать между собой жалобы и диагнозы, а еще и дать гарантию, что эти связи будут соответствовать анатомии, физиологии и т.п.


    1. S_A
      17.10.2016 15:53

      Машинное обучение минуя информацию об анатомии, физиологии и т.п. может покрыть те же знания, что и человек с этими знаниями. В теории систем как дело обстоит — чтобы одна система могла «понять» другую (в данном случае машина понять систему постановки диагнозов), она должна быть не менее сложно (по связям) устроена, чем другая. Это, до некоторой степени, необходимое условие эквивалентности моделей, о которой вопрос стоит. Так вот. Система постановки диагнозов в современной медицине, безусловно нетривиальна, однако это не значит что нельзя сконструировать не менее сложную нейронную сеть.