Какие задачи решаются при помощи искусственного интеллекта – Задачи искусственного интеллекта 7 Тест по теме «История развития искусственного интеллекта» 9 (стр. 1 из 24)

Содержание

задачи, с которыми ИИ не справляется / Habr

«Машине надо принять решение кем пожертвовать — тем, кто внутри автомобиля, или тем, кто бросился под колёса», — профессор кафедры информационных технологий СПбГУ Татьяна Гаврилова объясняет, какие алгоритмы лежат в основе искусственного интеллекта и с какими трудностями сталкиваются его разработчики.

От живого мозга до искусственного интеллекта

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

В 2013 году Европейская комиссия оценила научно-исследовательский проект The Human Brain Project и выделила на исследования грант на сумму в один миллиард долларов. Цель этого проекта — создать полнофункциональную компьютерную модель человеческого мозга. Представить всю многосложность работы мозга: как нейроны соединяются и взаимодействуют между собой, как формируются воспоминания, и принимаются решения. В 2019 году на Европейской конференции с докладом выступил нейробиолог, директор и основатель The Human Brain Project Генри Маркрам. Он вместе с командой показывал изображения мозга, подсвеченные на томографе с разных сторон, подчёркивая, что, чем больше они забирались вглубь мозга, тем меньше становилось понятно, как он работает. Всё это время они двигались по пути миниатюризации, но, очевидно, что нужна макромодель мозга. Здесь можно провести аналогию с известной метафорой: сколько бы муравей ни ползал внутри телевизора, он всё равно не поймёт, что это за устройство.

Чат-боты говорят, но не понимают

Первую разговорную программу «Элиза» разработали ещё в 60-х. Её работа была похожа на сеанс психотерапии. Примерный диалог мог выглядеть следующим образом:
— Здравствуйте. Как вы себя чувствуете?
— Голова болит.
— Как часто это происходит?
— Каждый раз, как с матерью поговорю.
— У вас проблемы с мамой. Расскажите об этом подробней.

Программа содержит набор заготовок. Выявляет ключевое слово в каждом предложении и создает иллюзию разговора, без какого-либо осмысления вообще. Таким образом Элиза могла умело поддерживать беседу на протяжении нескольких часов, производя на людей хорошее впечатление.

Сегодняшняя Алиса от «Яндекса» — эта та же самая Элиза, с подключённой платформой сервисов и гораздо более богатой лексикой. Вся интеллектуальность подобных чат-ботов сводится к переобучению. Если размечать для них ответы плохие, непригодные, то она будет их в дальнейшем отсеивать, а хорошие, подходящие — оставлять. Настоящая разумность программы, её способность не просто определять, что изображено на картинке или преобразовывать устную речь в текст, но понимать значение информации и мыслить, проявится только при подключении к базе знаний. Это некое понимание о мироустройстве. Вот этого пока не может никакая программа. Искусственный интеллект, работающий с базой знаний называется Symbolic AI (символический ИИ).

Сейчас активно используются два направления: искусственная нейронная сеть и машинное обучение. Их развитием занимаются не в научных лабораториях под руководством учёных, а в IT-компаниях. Программисты и разработчики искусственных нейронных сетей признают, что ничего мыслящего, кроме мозга нет. Поэтому если они хотят создать интеллектуальную систему, то вынуждены моделировать работу мозга, потому что больше нечего. Но кардинальный прорыв будет у тех, кто сумеет скрестить модели представления знаний и машинного обучения.

К слову, некоторые компании уже активно используют роботов при трудоустройстве на работу. Они особенно хороши на массовых отборах, куда поступает более 1000 резюме. Робот анализирует анкеты и оценивает кандидатов на релевантность, но окончательное решение всё равно принимает человек. Учёные Технологического института Джорджии выяснили, в каком случае люди охотно доверяют роботу. Это происходит, если им заранее сообщить, что он предназначен для выполнения определённой задачи. Такие роботы также проводят выходные интервью. Люди ведут с машиной более откровенный диалог о причинах увольнения и о том, с какими трудностями сталкивались в процессе работы. Таким образом роботы собирают очень хорошую, а главное весомую, обратную связь. Кроме того, люди боятся врать роботу. Им кажется, что у машин больше информации. Например, два главных вопроса для отбора кладовщиков были следующими: есть ли у вас судимость и употребляете ли вы алкоголь? И люди без утайки отвечали на эти вопросы роботу.

Что не так с беспилотниками

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

Представьте, что вы попросили человека, ничего не понимающего в автомобилях, принести поперечный рычаг. Очевидно, что он не сможет этого сделать. Потому что он не автомеханик, и у него нет в голове модели рычага. Но если сказать, что это железяка изогнутой формы — человек принесёт. Каждый знает, что такое «железяка», и понимает, как выглядит «изогнутая форма». Робот даже после пояснений не справится. Для этого его нужно обучить, закладывая понятия обо всех этих объектах под разными углами и с разной степенью доступа.

Находясь в офисе, человеку не обязательно отодвигать стул от стола, чтобы идентифицировать предмет. Достаточно взглянуть на спинку. Только потому, что у людей есть полная модель стула, и мы по одной его части, воссоздаем целое. Мы знаем, что стул — неотъемлемый атрибут офисного интерьера. Поэтому из огромного подбора объектов, которых можно воссоздать по этому фрагменту — выбираем один. Универсальных программ, которые могли бы делать подобное — нет. Никакой искусственный интеллект не содержит сейчас модели мира и знаний, позволяющих ему однозначно толковать картину, которую он видит.

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

Проблема интерпретаций приближается к своему разрешению, во всяком случае прогресс есть. В алгоритм машинного обучения на огромных выборках можно поместить 100 автомобилей, и ясно, что 101, даже другой марки, с большой вероятностью, программа распознает правильно. Хотя в ней не будет заложен конкретно этот автомобиль. Стоит также отметить, что для обучения программы важно соблюдать многообразие подбора. Если, например, вы будете учить программу только на седанах, а потом подъедет кабриолет, то она, наверняка, его не распознает, потому что в выборке вообще не было машин без крыши.

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

Проблема беспилотников — это в первую очередь нехватка базовых представлений о мире. Люди всегда принимают решения в контексте. Никакой искусственный интеллект не имеет полную картину мира, какую имеет человек к 18 годам. По этой причине водительские удостоверения выдают именно с 18 лет [в России], хотя зрение отлично сформировано уже и в 14. Не достигнув совершеннолетия, человек не может принимать взвешенные решения, в том числе этического и эмоционального характера.

Мы имеем дело с очень молодыми и незрелыми алгоритмами, которые требуют доработки. Они способны исправно работать, но исключительно под контролем человека.

Искусственный интеллект на смену полиграфа

На рынке искусственного интеллекта ведущие мировые компании активно инвестируют в сферу эмоциональных вычислений. Такая технология выявляет самые незаметные изменения в мимике. Программа выбирает определённое количество точек на лице и сравнивает с базой фотографий, на которых эмоция уже распознана.

Компания Microsoft заявила, что у них есть подобный алгоритм, но она не даст его в распоряжение правительства. Это очень опасный инструмент, который можно использовать против человека. Представьте, что вы входите в кабинет к начальнику, а он видит, что вы его ненавидите и думаете о нём плохо. Возникает серьёзная этическая проблема.

Аналогичных программ «распознавалок» будет ещё очень много. Прекрасных, замечательных в том числе. Они будут полезны, особенно в медицине. Машины уже сейчас помогают врачам диагностировать болезни. Допустим, американская программа IBM Watson ставит диагнозы по анализам лучше, чем некоторые начинающие врачи. В качестве обучающей выборки в неё было заложено шесть тысяч историй болезней. Это титанический труд и, безусловно, огромные деньги.

Умеет ли машина сочинять

Машина не в силах порождать нечто качественно новое. Оригинальные тексты песен, стихосложения, музыкальные композиции — это всё основано на принципе пермутации, или, проще говоря, перестановки. Что касается поэзии, то там алгоритм действий следующий: программа находит общие моменты и определённые сочетания. Берёт ключевые слова, добавляет к ним слова других авторов и перекручивает под нужную ритмику. Русский язык сложный, но если не заботиться о рифме, то белый стих «сочинить» можно.

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

Были программы, которые сочиняли народные сказки. Для этого провели анализ сценариев, использовав книгу Владимира Проппа «Морфология сказки». Оказалось, что модель развития событий включает в себя несколько очевидных элементов: в сказках всегда есть положительный и отрицательный герои. Также обязательно присутствует даритель, дорога, препятствие и в конце счастливый конец. Отличительной особенностью таких сказок была эклектика. Программа комбинировала героев и их действия, рассказывая, например, про Ивана-дурака, который борется со Змеем Горынычем. Безусловным минусом являлся бедный язык повествования. Слушателям становилось скучно. Живой сказитель всегда юмора добавит, а где-то занятных речевых оборотов. По этой же причине программа не может переводить на другие языки метафоры или фразеологизмы. Онлайн-переводчики работают с большими объёмами информации. Стоит отметить, что качество их перевода за последние годы заметно улучшилось. Теперь они не переводят каждое слово в отдельности, как делали это раньше, а ищут целое предложение где-либо в текстах. Самая большая трудность возникает с семантикой. Для этого нужна база знаний, чтобы понимать смысл выражений. К примеру: цыплята готовы к обеду. Неясно, как правильно перевести эту фразу, если не знаешь, где человек находится в этот момент — на птицеферме (Chickens are ready for dinner) или в ресторане (Chickens are prepared for lunch).

Без познаний человека никакая интеллектуальная деятельность невозможна. Знание нельзя ничем заменить. Вопрос в том, как эти умения оцифровать. Как превратить опыт в какую-то осмысленную схему, которой можно было бы делиться с машиной.

habr.com

Всё, что вам нужно знать об ИИ — за несколько минут / Habr

Приветствую читателей Хабра. Вашему вниманию предлагается перевод статьи «Everything you need to know about AI — in under 8 minutes.». Содержание направлено на людей, не знакомых со сферой ИИ и желающих получить о ней общее представление, чтобы затем, возможно, углубиться в какую-либо конкретную его отрасль.

Знать понемногу обо всё иногда (по крайней мере, для новичков, пытающихся сориентироваться в популярных технических направлениях) бывает полезнее, чем знать много о чём-то одном.

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

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

Введение

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

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

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

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

Растут надежды корпораций, исследователей и обычных людей на машинное обучение для получения решений задач, не требующих от человека описания конкретных алгоритмов. Много внимания уделяется подходу «чёрного ящика». Программирование алгоритмов, используемых для моделирования и решения задач, связанных с большими объёмами данных, занимает у разработчиков очень много времени. Даже когда нам удаётся написать код, обрабатывающий большое количество разнообразных данных, он зачастую получается очень громоздким, трудноподдерживаемым и тяжело тестируемым (из-за необходимости даже для тестов использовать большое количество данных).

Современные технологии машинного обучения и ИИ вкупе с правильно подобранными и подготовленными «тренировочными» данными для систем могут позволить нам научить компьютеры «программировать» за нас.

Обзор

Интеллект — способность воспринимать информацию и сохранять её в качестве знания для построения адаптивного поведения в среде или контексте

Это определение интеллекта из (англоязычной) Википедии может быть применено как к органическому мозгу, так и к машине. Наличие интеллекта не предполагает наличие сознания. Это — распространённое заблуждение, принесённое в мир писателями научной фантастики.

Попробуйте поискать в интернете примеры ИИ — и вы наверняка получите хотя бы одну ссылку на IBM Watson, использующий алгоритм машинного обучения, ставший знаменитым после победы на телевикторине под названием «Jeopardy» в 2011 г. С тех пор алгоритм претерпел некоторые изменения и был использован в качестве шаблона для множества различных коммерческих приложений. Apple, Amazon и Google активно работают над созданием аналогичных систем в наших домах и карманах.

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

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

Термин «ИИ» является довольно обобщённым. В фокусе большинства исследований сейчас находится более узкое поле нейронных сетей и глубокого обучения.

Как работает наш мозг

Человеческий мозг представляет собой сложный углеродный компьютер, выполняющий, по приблизительным оценкам, миллиард миллиардов операций в секунду (1000 петафлопс), потребляющий при этом 20 Ватт энергии. Китайский суперкомпьютер под названием «Tianhe-2» (самый быстрый в мире на момент написания статьи) выполняет 33860 триллионов операций в секунду (33.86 петафлопс) и потребляющий при этом 17600000 Ватт (17.6 Мегаватт). Нам предстоит проделать определённое количество работы перед тем, как наши кремниевые компьютеры смогут сравниться со сформировавшимися в результате эволюции углеродными.

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

Нейроны взаимодействуют друг с другом с помощью специальных каналов, позволяющих им обмениваться информацией. Сигналы отдельных нейронов взвешиваются и комбинируются друг с другом перед тем, как активировать другие нейроны. Эта обработка передаваемых сообщений, комбинирование и активация других нейронов повторяется в различных слоях мозга. Учитывая то, что в нашем мозгу находится 100 миллиардов нейронов, совокупность взвешенных комбинаций этих сигналов устроена довольно сложно. И это ещё мягко сказано.

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

Изначально входные сигналы приходят из разнообразных источников: наших органов чувств, средств внутреннего отслеживания функционирования организма (уровня кислорода в крови, содержимого желудка и т.д.) и других. Один нейрон может получать сотни тысяч входных сигналов перед принятием решения о том, как следует реагировать.

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

Эта модель человеческого мозга использовалась в качестве шаблона для воспроизведения возможностей мозга в компьютерной симуляции — искуственной нейронной сети.

Искусственные Нейронные Сети (ИНС)

Искусственные Нейронные Сети — это математические модели, созданные по аналогии с биологическими нейронными сетями. ИНС способны моделировать и обрабатывать нелинейные отношения между входными и выходными сигналами. Адаптивное взвешивание сигналов между искусственными нейронами достигается благодаря обучающемуся алгоритму, считывающему наблюдаемые данные и пытающемуся улучшить результаты их обработки.

Для улучшения работы ИНС применяются различные техники оптимизации. Оптимизация считается успешной, если ИНС может решать поставленную задачу за время, не превышающее установленные рамки (временные рамки, разумеется, варьируются от задачи к задаче).

ИНС моделируется с использованием нескольких слоёв нейронов. Структура этих слоёв называется архитектурой модели. Нейроны представляют собой отдельные вычислительные единицы, способные получать входные данные и применять к ним некоторую математическую функцию для определения того, стоит ли передавать эти данные дальше.

В простой трёхслойной модели первый слой является слоем ввода, за ним следует скрытый слой, а за ним — слой вывода. Каждый слой содержит не менее одного нейрона.

С усложнением структуры модели посредством увеличения количества слоёв и нейронов возрастают потенциал решения задач ИНС. Однако, если модель оказывается слишком «большой» для заданной задачи, её бывает невозможно оптимизировать до нужного уровня. Это явление называется переобучением (overfitting).

Архитектура, настройка и выбор алгоритмов обработки данных являются основными составляющими построения ИНС. Все эти компоненты определяют производительность и эффективность работы модели.

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

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

Глубокое обучение

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

Обучение без учителя (unsupervised learning) — область, в которой методики глубокого обучения отлично себя показывают. Правильно настроенная ИНС способна автоматически определить основные черты входных данных (будь то текст, изображения или другие данные) и получить полезный результат их обработки. Без глубокого обучения поиск важной информации зачастую ложится на плечи программиста, разрабатывающего систему их обработки. Модель глубокого обучения же самостоятельно способна найти способ обработки данных, позволяющий извлекать из них полезную информацию. Когда система проходит обучение (то есть, находит тот самый способ извлекать из входных данных полезную информацию), требования к вычислительной мощности, памяти и энергии для поддержания работы модели сокращаются.

Проще говоря, алгоритмы обучения позволяют с помощью специально подготовленных данных «натренировать» программу выполнять конкретную задачу.

Глубокое обучение применяется для решения широкого круга задач и считается одной из инновационных ИИ-технологий. Существуют также другие виды обучения, такие как обучение с учителем (supervised learning) и обучение с частичным привлечением учителя(semi-supervised learning), которые отличаются введением дополнительного контроля человека за промежуточными результатами обучения нейронной сети обработке данных (помогающего определить, в правильном ли направлении движется система).

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

Заключение

ИИ является мощным средством обработки данных и может находить решения сложных задач быстрее, чем традиционные алгоритмы, написанные программистами. ИНС и методики глубокого обучения могут помочь решить ряд разнообразных проблем. Минус состоит в том, что самые оптимизированные модели часто работают как «чёрные ящики», не давая возможности изучить причины выбора ими того или иного решения. Этот факт может привести к этическим проблемам, связанным с прозрачностью информации.

habr.com

Что ИИ может и (пока) не может сделать для вашего бизнеса / Habr

Искусственный интеллект – это подвижная мишень. И вот, как лучше в неё прицелиться.

Кажется, что искусственный интеллект (ИИ) окружает нас со всех сторон. Мы сталкиваемся с ним дома и в телефоне. Мы и опомниться не успеем – если верить предпринимателям и бизнес-инноваторам – как ИИ будет присутствовать практически во всех продуктах и услугах, которые мы покупаем и используем. Кроме того, область его применения к решению бизнес-задач растёт как на дрожжах. В то же самое время растут и сомнения по поводу последствий появления ИИ; мы беспокоимся о том, как повлияет автоматизация на рабочее место, наличие работы и общество.

Иногда реальность теряется между страхами и триумфами заголовков, рассказывающих о Alexa, Siri и AlphaGo, поскольку у ИИ-технологий – у машинного обучения и его подмножества, глубинного обучения – есть множество ограничений, на преодоление которых потребуется потратить ещё очень много сил. В этой статье описаны подобные ограничения, и она должна помочь директорам лучше понять, что именно затормаживает их попытки внедрения ИИ. Также мы опишем многообещающие прорывы, направленные на снятие некоторых ограничений и создание новой волны возможностей.


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

Проще говоря, проблемы и ограничения ИИ создают для лидеров проблему «подвижной мишени»: им сложно добраться до передового края, поскольку тот постоянно передвигается. Также часто разочарование наступает, когда попытки использования ИИ натыкаются на барьеры реального мира – это может уменьшить мотивацию к дальнейшим инвестициям или привести к появлению точки зрения «поживём-увидим», в то время как остальные будут продолжать рваться вперёд. Недавнее исследование Всемирного института Маккинзи показывает, что между лидерами и отстающими в вопросе применения ИИ растёт разрыв – и это видно и в сравнении разных индустрий, и внутри каждой из них (экспонат 1).

Экспонат 1: лидеры применения ИИ в недалёком будущем собираются вложиться в него ещё больше. По вертикали: оценка повышения трат на ИИ в % в ближайшие три года; по горизонтали: процент компаний, уже использующих ИИ

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

Проблемы, ограничения и возможности

Полезной точкой отсчёта будет понять недавние успехи технологий глубинного обучения (ГО). Это, вероятно, наиболее захватывающие разработки в области ИИ, и они добились взрывного увеличения эффективности в вопросах классификаций и предсказаний, без традиционного обучения под присмотром. ГО использует крупномасштабные нейросети, способные содержать в себе миллионы симулированных «нейронов», распределённых по слоям. Наиболее распространённые варианты сетей называются свёрточные нейронные сети (СНС) и рекуррентные нейронные сети (РНС). Эти нейросети обучаются, используя тренировочные данные и алгоритмы обратного распространения.

Хотя в этой области достигнут впечатляющий прогресс, сделать ещё предстоит многое. Критический момент – подстроить ИИ к определённой задаче и доступным данным. Поскольку эти системы не программируются, а тренируются, различные процессы их работы для точного выполнения сложных задач часто требуют огромного количества помеченных данных. Получение крупного набора данных может оказаться сложным делом. В некоторых областях их просто может не быть, но даже если они есть, на простановку меток может уйти огромное количество человеческих ресурсов.

Кроме того, в этих моделях может быть сложно расшифровать, каким образом математическая модель, натренированная при помощи ГО, приходит к определённому предсказанию, рекомендации или решению. Полезность чёрного ящика, пусть он даже выполняет своё предназначение, может оказаться ограниченной, особенно в тех случаях, когда его предсказания или решения влияют на сообщество и имеют последствия, связанные со здоровьем человека. В таких случаях пользователю часто нужно знать «почему» – например, как именно алгоритм пришёл к таким рекомендациям – если его действия могут иметь юридические или регуляторные последствия. Почему определённые факторы, а не какие-то другие, оказались критичными в данном случае.

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

Ограничение 1: разметка данных

Большая часть современных ИИ-моделей тренируется при помощи «контролируемого обучения». Это значит, что люди должны пометить и разбить на категории исходные данные – а такая работа может оказаться трудной и подверженной ошибкам. К примеру, компании, разрабатывающие робомобили, нанимают сотни людей, вручную размечающих многие часы видеозаписей, чтобы помочь тренировке этих систем. В то же время появляются новые многообещающие технологии – например, потоковый контроль (продемонстрирован Эриком Хорвицем с коллегами из Microsoft Research), в котором данные можно помечать в процессе естественного использования. Неконтролируемый или частично контролируемый подходы уменьшают необходимость в получении крупных размеченных наборов данных. Две перспективные техники – обучение с подкреплением и генеративно-состязательная сеть.

Обучение с подкреплением. Эта техника неконтролируемого обучения позволяет алгоритмам обучаться просто методом проб и ошибок. Методология использует метод кнута и пряника: за каждую попытку выполнения задачи алгоритм получает вознаграждение (например, высокую оценку) если его поведение оказалось успешным, или наказание – в ином случае. С ростом количества повторов растёт и эффективность, и во многих случаях она превосходит возможности человека – пока среда обучения соответствует реальному миру.

Обучение с подкреплением знаменито использованием при обучении компьютеров компьютерным играм – недавно в эту схему встроили и ГО. В мае 2017 года, к примеру, это помогло ИИ-системе AlphaGo обыграть чемпиона мира Кэ Дзэ в игру го. В качестве другого примера Microsoft начала предоставлять услуги, пользующиеся обучением с подкреплением и адаптирующиеся к предпочтениям пользователей. Потенциальное применение обучения с подкреплением подходит для различных типов предприятий. Среди возможностей: торговля ценными бумагами с помощью ИИ, который приобретает или теряет очки за приобретение или утерю финансов; движок рекомендаций продуктов, получающий очки за каждую продажу, сделанную по рекомендации; ПО, строящее маршруты для грузоперевозок, получающее награду за сделанные вовремя доставки или уменьшение потребления топлива.

Обучение с подкреплением также может помочь ИИ превзойти естественные и социальные ограничения разметки человеком, разработав решения, до которых прежде никто не додумался, и стратегии, использование которых не приходило в голову даже опытным игрокам. Недавно, к примеру, система AlphaGo Zero, используя обучение с подкреплением нового типа, победила своего предшественника AlphaGo, научившись играть в го с нуля. Это значило начать с совершенно случайной игры с самой собой, вместо того, чтобы тренироваться на партиях, сыгранных людьми и с людьми.

Генеративно-состязательные сети (ГСС). В этой модели обучения с частичным контролем две сети соревнуются друг с другом за улучшение и уточнение их понимания некоей концепции. К примеру, чтобы распознать, как выглядят птицы, одна сеть пытается найти различия между настоящими и поддельными изображениями птиц, а её конкурент пытается обмануть её, выдавая картинки, очень похожие на изображения птиц, но таковыми не являющиеся. Когда у двух сетей начинаются ничьи, репрезентация птицы у каждой модели становится более точной.

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

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

Ограничение 2: получение массивных тренировочных наборов данных

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

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

Техника обучения за один раз (one-shot learning) способна уменьшать потребности в крупных наборах данных и позволять модели ИИ обучаться особенностям объекта на небольшом количестве реальных демонстраций или примеров (в некоторых случаях, даже на одном). Возможности ИИ приблизятся к человеку, способному достаточно точно распознавать различных представителей одной категории после того, как он познакомится только с одним примером – допустим, с одним грузовиком-пикапом. В этой методологии, пока ещё находящейся в стадии разработки, учёные сначала предварительно тренируют модели в симулированной виртуальной реальности, в которой существуют варианты задачи, или, в случае распознавания образов – изображение объекта. Затем, после того, как модели продемонстрируют несколько вариантов объекта в реальном мире, которых ИИ не видел в виртуальной реальности, тот будет использовать уже имеющиеся знания для выработки правильного решения.

Такого рода обучение с одного раза может в результате помочь создать систему, сканирующую тексты на предмет нарушения авторских прав или распознающую корпоративный логотип в видеоролике, после знакомства всего с одним его примером. Сегодня подобные приложения находятся в своей ранней стадии. Но их польза и эффективность могут быстро расширить возможности использования ИИ в различных индустриях.

Ограничение 3: проблема объяснимости

Объяснимость – не новая проблема для ИИ-систем. Но она растёт вместе с успехами и принятием ГО, из-за которого увеличивается не только разнообразие приложений, но и их непрозрачность. Чем больше и сложнее модель, тем труднее объяснить в человеческих понятиях, почему было принято то или иное решение (это сделать ещё сложнее, если всё происходит в реальном времени). Это одна из причин, по которым использование некоторых инструментов ИИ не так сильно расширяется в тех областях, где объяснимость полезна или даже необходима. Более того, с расширением областей применения ИИ требования регуляторов также могут повысить необходимость в моделях ИИ с большим уровнем объяснимости.

Два зарождающихся многообещающих подхода к увеличению прозрачности моделей – это локально-интерпретируемые моделе-агностические объяснения (local-interpretable-model-agnostic explanations, LIME) и техники внимания (экспонат 2). LIME пытается определить, на каких частях входных данных в основном основывает свои расчёты натренированная модель, чтобы выработать промежуточную, интерпретируемую модель. Эта техника рассматривает по нескольку сегментов данных за раз и наблюдает за тем, как меняются результаты предсказаний, чтобы подстроить промежуточную модель и выработать более точную интерпретацию (к примеру, исключая глаза вместо носа, чтобы проверить, что из них более важно для распознавания лиц). Техники внимания визуализируют те части входных данных, на которые в основном полагается модель при принятии определённого решения (например, концентрируясь на рту, чтобы определить, изображён ли на картинке человек).

Экспонат 2

Ещё одна технология, использующаяся уже некоторое время – это обобщённые аддитивные модели (ОАМ). Используя модели с одной особенностью, ОАМ ограничивают взаимодействие особенностей, в результате чего каждая из них становится более интерпретируемой для пользователей. Ожидается, что взятие на вооружение этих и других технологий, стремящихся снять завесу таинственности с ИИ, очень сильно поможет увеличить применение ИИ.

Ограничение 4: обобщаемость обучения

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

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

Переносимое обучение и другие обобщаемые подходы развиваются, и они могут помочь организациям быстрее создавать новые способы применения и добавлять к существующим и работающим методам новую функциональность. К примеру, при создании виртуального помощника, переносимое обучение может обобщить предпочтения пользователей из одной области (допустим, музыки) к другой (допустим, к книгам). Примеры использования не ограничиваются цифровыми продуктами. Переносимое обучение может помочь, например, нефтегазовой компании расширить использовании ИИ-алгоритмов, натренированных на предсказательное обслуживание скважин, на другое оборудование – например, на трубопроводы и бурильные платформы. Переносимое обучение даже в принципе способно произвести революцию в бизнес-аналитике: представьте себе ИИ-инструмент, анализирующий данные, и понимающий, как оптимизировать прибыль авиалиний, способный адаптировать свою модель к изменениям в погоде или местным экономикам.

Другой подход – использование чего-либо, приблизительно описывающего обобщённую структуру, в применении к различным проблемам. Например, AlphaZero от компании DeepMind использовала одну и ту же структуру для трёх разных игр: оказалось возможным при помощи этой обобщённой структуры натренировать модель игре в шахматы за один день, чтобы потом она выиграла у программы-чемпиона мира.

Наконец, представьте возможности нарождающихся техник метаобучения, пытающихся автоматизировать разработку моделей машинного обучения. К примеру, команда Google Brain использует AutoML для автоматизации разработки нейросетей для классификации изображений на крупномасштабных наборах данных. Сегодня эти техники работают так же хорошо, как разработанные людьми. Эта разработка выглядит многообещающе, особенно в связи с тем, что многие организации испытывают дефицит талантливых работников. Также возможно, что метаобучение превзойдёт возможности человека и улучшит результаты. Важно понимать, что эти технологии пока находятся на ранних стадиях развития.

Ограничение 5: предвзятость данных и алгоритмов

Пока мы фокусировались на ограничениях, которые можно преодолеть техническими методами, уже находящимися в разработке, некоторые из которых мы описали. Предвзятость – это проблема другого рода. Потенциально разрушительные социальные последствия могут ожидать нас, когда человеческие пристрастия (сознательные или бессознательные) будут определять, какие данные использовать, а какие игнорировать. Более того, когда процесс и частота сбора данных разнятся в зависимости от различных групп и поведения, можно ожидать возникновения проблем с тем, как алгоритмы будут анализировать эти данные, обучаться на них и делать предсказания. Среди неблагоприятных последствий: решения о найме сотрудников, сделанные на основе дезинформации, искажённые научные или медицинские прогнозы, неверные финансовые модели и решения по криминальным делам, и неправильные юридические решения. Во многих случаях эта предвзятость остаётся необнаруженной или проигнорированной под соусом «передовой науки о данных», «патентованных данных и алгоритмов» или «объективного анализа».

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

Сейчас идёт множество исследований, как теоретических, так и собирающих данные по наилучшим методам использования ИИ, пытающихся решать описанные проблемы в академической, некоммерческой и частной областях. И давно пора – эта проблема, скорее всего, будет становиться всё более критичной, и поднимать всё больше вопросов. Рассмотрим, к примеру, тот факт, что множество из этих предсказательных подходов, основанных на обучении и статистике, негласно предполагают, что будущее похоже на прошлое. А что мы будем делать в социально-культурном окружении, когда предпринимаемые нами действия будут изменять его – а где принятие решений на основе прошлого поведения может затормозить прогресс (или, что ещё хуже, выработать сопротивление переменам)? Множество лидеров, включая и бизнес-лидеров, вскоре могут столкнуться с необходимостью поиска ответов на такие вопросы.

Как попасть в движущуюся мишень

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

Изучайте новую информацию, подстраивайтесь, не отставайте.

Хотя большинству директоров предприятия не обязательно знать разницу между свёрточными и рекуррентными нейронными сетями, вам необходимо быть в общем знакомым с возможностями современных инструментов, обладать общим ощущением того, когда в краткосрочной перспективе могут произойти прорывы, и видеть перспективы того, что лежит за горизонтом. Опрашивайте ваших экспертов по данным и машинному обучению, поговорите с пионерами ИИ, чтобы подстроиться под современные знания, посетите пару конференций по ИИ, чтобы получить информацию о реальных фактах; новостные статьи могут быть полезными, но могут и оказаться частью шумихи. Ещё один хороший способ не отставать от новых разработок – исследования, проводимые знающими специалистами, такие, как AI Index (проект группы «Столетнее исследование ИИ» из Стэнфорда).

Начните использовать сложную стратегию работы с данными.

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

Мыслите нестандартно.

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

Станьте новатором.

Просто не отставать от современных ИИ-технологий и примеров использования не достаточно для того, чтобы оставаться конкурентоспособным в долгосрочной перспективе. Убедите ваших специалистов по обработке данных или договоритесь со сторонними экспертами на решение полезной задачи при помощи зарождающихся технологий – таких, например, которые были упомянуты в этой статье. Постоянно узнавайте о том, что можно сделать и что стало доступным. Многие инструменты машинного обучения, наборы данных и модели, натренированные для стандартного применения (включая речь, зрение и распознавание эмоций) уже доступны для широкого пользователя. Иногда они доступны в виде проектов с исходным кодом, в других случаях – через программные интерфейсы (API), созданные передовыми исследователями и компаниями. Следите за этими возможностями, они могут помочь вам заметить преимущества для первопроходцев.

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

habr.com

Области применения искусственного интеллекта — примеры использования ИИ

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

Столь широкое использование ИИ обусловлено двумя важнейшими факторами. С одной стороны, он способен автоматизировать даже те процессы, которые ранее требовали участия человека: например, управление роботизированными механизмами на производстве (то есть в данном случае ИИ берет на себя наши обязанности). С другой стороны, он может быстро обрабатывать и анализировать поистине гигантские объемы информации и просчитывать варианты, используя множество переменных. И по данному направлению ИИ дает качественно лучшие результаты по сравнению с человеком. Добавим к этому то, что машина не подвержена человеческому фактору, а ее работоспособность не зависит от эмоций и личных проблем. Как итог – области применения искусственного интеллекта очень широки и фактически ограничиваются только нашей фантазией и скоростью внедрения технологических новаций.

Несколько особенностей использования ИИ

Конечно, многие особенности применения ИИ зависят от конкретных проектов, разработок и задач, которые стоят перед умными устройствами. Но также можно выделить несколько аспектов, которые касаются практически любой сферы использования искусственного интеллекта.

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

Сейчас такой подход можно проиллюстрировать на примере суперкомпьютера-диагноста IBM Watson. Статистика говорит о том, что ИИ, в который загружены миллионы медицинских документов и историй болезней, часто ставит диагнозы точнее людей. Тем не менее пока последнее слово остается именно за лечащим врачом, а суперкомпьютер выступает как помощник, эффектный и полезный инструмент.

Следующий вопрос частично связан с предыдущим – ответственность. Например, уже сейчас разрабатываются и внедряются беспилотные личные автомобили и общественный транспорт. Но кто возьмет на себя ответственность, если такой автомобиль попадет в аварию? Или, предположим, будет создан высокоинтеллектуальный робот-хирург, который сможет самостоятельно проводить операции. На кого ляжет вина, если пациент умрет от неверного движения такого робота? Можно ли считать ответственным сам ИИ и что должно последовать из такого шага? Пока данные вопросы остаются открытыми, и, возможно, в этом одна из причин, почему деятельность и решения роботов контролируются людьми: так решать проблемы ответственности намного проще.

В каких сферах ИИ применяется уже сейчас?

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

Медицина

В медицине особенно ценится отменная память искусственного интеллекта и его способность обрабатывать большое количество данных, сопоставлять и анализировать информацию. Так работает уже упомянутый выше IBM Watson или, например, DeepMind Health от компании Google. Эти и аналогичные им умные помощники не просто дают советы врачам, но и определяют предрасположенность к заболеваниям или выявляют их на очень ранних стадиях, когда они могут скрыться от человеческого глаза.

В конце 2017 года премьер-министр РФ Д. Медведев обозначил стратегию, которая в том числе подразумевает использование в российском здравоохранении возможностей искусственного интеллекта. Например, планируется развивать систему поддержки принятия решений врача «Третье мнение». Сейчас она умеет анализировать снимки клеток крови и глазного дна, УЗИ мочевого пузыря и рентгенограммы легких, а в будущем научится обрабатывать данные компьютерных томографов и МРТ. Еще одна аналогичная российская система – Botkin.AI. Среди ее задач – анализ диагностических данных, подсказки и советы врачам, мониторинг проводимого лечения. Пока Botkin.AI помогает онкологам, но планируется, что уже скоро он будет работать и в других областях.

Проект Face2Gene от компании FDNA обещает определить генетические заболевания по фото. По словам разработчиков, по чертам лица можно выявить около 3 500 генетических заболеваний, даже если по симптомам они себя еще не проявили. Приложение доступно для смартфонов на Andriod и iOS.

Искусственный интеллект помогает не только врачам, но и пациентам. В последние годы растет популярность телемедицины и соответствующих приложений. Они используют различные алгоритмы: некоторые собирают данные с носимых датчиков вроде фитнес-браслетов; другие, скорее, представляют собой опросники, цель которых – установить точные симптомы и проблемы пациентов. Некоторые ИИ распознают речь, и им можно отвечать устно, другие предпочитают письменную коммуникацию. Получив нужную информацию, приложения либо дают рекомендации, что делать дальше и как лечиться, либо отправляют соответствующие сведения лечащему врачу. Одни из самых известных интеллектуальных помощников такого рода – Ada и Your.MD (можно скачать в Google Play и App Store).

Промышленность и сельское хозяйство

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

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

Что касается сельского хозяйства, то тут искусственный интеллект используется для контроля за состоянием растений, уровнем влажности, наличием в почве необходимых питательных веществ и в принципе для надлежащего ухода за посадками. Например, роботы научились идентифицировать сорняки и аккуратно избавляться от них (выдергивая или обрабатывая химикатами). Умные помощники способны определять заболевания растений или напавших на них вредителей по фотографиям, а также точечно доставлять необходимые препараты. Это помогает экономнее расходовать пестициды и гербициды.

Дорожное движение

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

ИИ, следящий за дорожным движением, не только наблюдает за авариями, но и помогает водителям. Например, может вызвать эвакуатор.

Подобные системы работают во многих городах Европы, Азии, Северной Америки, для которых актуальна проблема пробок. Конечно, полностью избавиться от заторов в большинстве случаев не удается, однако ИИ позволяет улучшить ситуацию с дорожным движением, порой – значительно ускорить движение. Возможно, прогресс будет заметнее, когда в широкий обиход войдут автономные автомобили – еще одна сфера применения искусственного интеллекта.

Искусственный интеллект в быту

Конечно, типичным примером использования ИИ в быту станут системы умных домов, которые получают все большее распространение. Задача большинства подобных разработок – максимально автоматизировать и облегчить наш быт. Например, с утра ИИ сможет раздвинуть занавески, чтобы в спальню проник солнечный свет, разбудить вас с помощью радио и включить кофеварку, чтобы на завтрак вас уже ждал ароматный кофе, а когда вы уйдете на работу, он активирует сигнализацию. В будущем функционал таких систем наверняка будет значительно расширен, вплоть до того, что холодильник сам закажет вашу любимую еду, а шкаф – отпарит одежду.

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

Еще один пример бытового использования ИИ – автоматические переводчики. Если раньше качество пропущенного через них текста оставляло желать много лучшего, то сейчас ситуация меняется. Алгоритмы учатся подбирать правильный перевод в зависимости от контекста и согласовывать части предложения между собой. Как итог, вместо «машинного перевода» можно получить вполне читаемый текст. Внедрение ИИ в свой переводчик осенью 2017 года анонсировал «Яндекс». Алгоритм не разбивает текст на отдельные слова, а воспринимает предложение целиком, что позволяет получить текст более высокого качества.

robo-sapiens.ru

как он работает, и уничтожит ли наше общество уже в этом году? / Habr

Сегодняшний ИИ технически «слабый» – однако он сложный и может значительно повлиять на общество

Не нужно быть Киром Дулли, чтобы знать, насколько пугающим может стать хорошо соображающий искусственный интеллект [американский актёр, исполнявший роль астронавта Дэйва Боумена в фильме «Космическая одиссея 2001 года» / прим. перев.]

ИИ, или искусственный интеллект, сейчас одна из самых важных областей знания. Решаются «нерешаемые» задачи, инвестируются миллиарды долларов, а Microsoft даже нанимает Коммона, чтобы он рассказал нам поэтическим штилем, какая это замечательная штука – ИИ. Вот ведь.


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

  • Что подразумевают люди, говоря «ИИ»?
  • В чём разница между ИИ, машинным обучением и глубоким обучением?
  • Что такого замечательного в глубоком обучении?
  • Какие бывшие сложными задачи теперь решать легко, а что до сих пор тяжело?

Я знаю, что не один интересуюсь подобными вещами. Поэтому, если вам интересно, с чем связаны все эти восторги по поводу ИИ на простейшем уровне, пора заглянуть за кулисы. Если вы – эксперт по ИИ, и читаете отчёты с конференции по нейрологической обработке информации (NIPS) для развлечения, в статье ничего нового для вас не будет – однако мы ждём от вас уточнений и исправлений в комментариях.

Что такое ИИ?

В информатике есть такая старая шутка: в чём разница между ИИ и автоматизацией? Автоматизация – это то, что можно делать с помощью компьютера, а ИИ – это то, что мы хотели бы уметь делать. Как только мы узнаём, как что-то делать, это переходит из области ИИ в разряд автоматизации.

Эта шутка справедлива и сегодня, поскольку ИИ не определён достаточно чётко. «Искусственный интеллект» – это просто не технический термин. Если залезть в Википедию, то там написано, что ИИ – это «интеллект, демонстрируемый машинами, в отличие от естественного интеллекта, демонстрируемого людьми и другими животными». Менее чётко и не скажешь.

В целом, есть два типа ИИ: сильный и слабый. Сильный ИИ представляет себе большинство людей, когда слышат об ИИ – это какой-то богоподобный всезнающий интеллект типа Skynet или Hal 9000, способный на рассуждения и сравнимый с человеческим, при этом превосходящий его возможности.

Слабые ИИ – высоко специализированные алгоритмы, разработанные для получения ответов на определённые полезные вопросы в узко определённых областях. К примеру, в эту категорию попадает очень хорошая шахматная программа. То же можно сказать о ПО, очень точно подстраивающем страховые платежи. В своей области такие ИИ достигают впечатляющих результатов, но в целом они весьма ограничены.

За исключением голливудских опусов, сегодня мы даже близко не подошли к сильному ИИ. Пока что любой ИИ – слабый, и большинство исследователей в данной области согласны с тем, что придуманные нами техники создания прекрасных слабых ИИ, скорее всего, не приблизят нас к созданию сильного ИИ.

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

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

Кадр из короткого видео от инженеров Facebook, демонстрирующего, как ИИ в реальном времени распознаёт кошек (задача, также известная, как святой Грааль интернета)

Машинное обучение

МО – это особый способ создания машинного интеллекта. Допустим, вы хотите запустить ракету, и предсказать, куда она попадёт. В общем и целом это не так уж и сложно: гравитация довольно неплохо изучена, вы можете записать уравнения и рассчитать, куда она отправится, на основании нескольких переменных – таких, как скорость и начальная позиция.

Однако такой подход становится неуклюжим, если мы обращаемся к той области, правила которой не так хорошо известны и ясны. Допустим, вы хотите, чтобы компьютер сказал вам, есть ли на каких-то изображениях из выборки кошки. Как вы будете записывать правила, описывающие вид во всех возможных точек зрения на все возможные комбинации усов и ушей?

Сегодня МО-подход хорошо известен: вместо того, чтобы пытаться записать все правила, вы создаёте систему, способную самостоятельно вывести набор внутренних правил после изучения огромного количества примеров. Вместо того, чтобы описывать кошек, вы просто показываете своему ИИ кучу фотографий кошек, и даёте ему самостоятельно понять, что является кошкой, а что – нет.

И на сегодня это идеальный подход. Систему, самостоятельно обучающуюся правилам на основе данных, можно улучшать, просто добавляя данных. А если наш вид что-то и умеет очень хорошо делать, так это генерировать, хранить и управлять данными. Хотите научиться лучше распознавать кошек? Интернет генерирует миллионы примеров прямо в эту минуту.

Всё возрастающий поток данных – одна из причин взрывного роста алгоритмов МО в последнее время. Другие причины связаны с использованием этих данных.

Кроме данных, для МО есть ещё два связанных с этим вопроса:

  • Как мне запомнить изученное? Как хранить и представлять на компьютере связи и правила, которые я вывел из данных?
  • Как мне обучаться? Как изменять сохранённую репрезентацию в ответ на поступление новых примеров, и улучшаться?

Иначе говоря, что именно обучается на основе всех этих данных?

В МО вычислительным представлением обучения, которое мы храним, является модель. Тип используемой модели очень важен: он определяет то, как учится ваш ИИ, на каких данных он может обучаться, и какие вопросы можно будет ему задавать.

Давайте посмотрим на очень простой пример. Допустим, мы покупаем в продуктовом магазине инжир, и хотим сделать ИИ с МО, который говорил бы нам, спелый ли он. Это должно быть легко сделать, поскольку в случае инжира, чем он мягче, тем слаще.

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

Зародыш ИИ в виде «чем они мягче, тем слаще»

С добавлением новых данных задача усложняется

Посмотрите-ка! Прямая неявным образом следует идее о том, что «чем они мягче, тем слаще», и нам даже не пришлось ничего записывать. Наш зародыш ИИ не знает ничего о содержании сахара или созревании фруктов, но может предсказывать сладость фрукта, сжимая его.

Как натренировать модель, чтобы она стала лучше? Мы можем собрать ещё больше образцов и провести ещё одну прямую, чтобы получить более точные предсказания (как на второй картинке выше). Однако проблемы сразу становятся очевидными. Пока что мы обучали наш инжирный ИИ на качественных ягодах – а что, если мы возьмём данные из фруктового сада? Внезапно у нас появляются не только спелые, но и гнилые фрукты. Они очень мягкие, но определённо не подходят для еды.

Что нам делать? Ну, раз это модель МО, мы просто можем скормить ей больше данных, правильно?

Как показывает первая картинка внизу, в этом случае мы получим совершенно бессмысленные результаты. Прямая просто не подходит для описания того, что происходит, когда фрукт становится слишком спелым. Наша модель уже не вписывается в структуру данных.

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

Ладно, наверное, идея использовать прямую для сложного ИИ была не очень удачной

Требуется математика посложнее

Пример довольно глупый, но он показывает, что выбор модели определяет возможности обучения. В случае инжира данные простые, и модели могут быть простыми. Но если вы пытаетесь обучиться чему-то более сложному, требуются более сложные модели. Точно так же, как никакое количество данных не заставит линейную модель отражать поведение гнилых ягод, так невозможно подобрать простую кривую, соответствующую куче картинок, чтобы создать алгоритм компьютерного зрения.

Поэтому трудность для МО состоит в создании и выборе правильных моделей для соответствующих задач. Нам нужна модель, достаточно сложная для того, чтобы описать на самом деле сложные связи и структуры, но достаточно простая для того, чтобы с ней можно было работать и тренировать её. Так что, хотя интернет, смартфоны и так далее породили невероятные горы данных, на которых можно обучаться, нам всё равно нужны правильные модели, чтобы воспользоваться этими данными.

Именно тут и вступает в игру глубокое обучение.

Глубокое обучение

Глубокое обучение – это машинное обучение, использующее модель определённого вида: глубокие нейросети.

Нейросети – это тип модели МО, использующей структуру, напоминающую нейроны в мозге, для вычислений и предсказаний. Нейроны в нейросетях организуются послойно: каждый слой выполняет набор простых вычислений и передаёт ответ следующему.

Послойная модель позволяет проводить более сложные вычисления. Простой сети с небольшим количеством слоёв нейронов достаточно для воспроизводства использовавшейся нами выше прямой или параболы. Глубокие нейросети – это нейросети с большим количеством слоёв, с десятками, или даже сотнями; отсюда и их название. С таким количеством слоёв можно создавать невероятно мощные модели.

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

Однако в успех нейросетей сделал свой вклад и ещё один аспект: обучение.

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

В нашей модели с инжиром мы искали уравнение прямой. Это задача простой регрессии, и существуют формулы, которые дадут вам ответ за один шаг.

Простая нейросеть и глубокая нейросеть

С более сложными моделями всё не так просто. Прямую и параболу легко представить несколькими числами, но глубокая нейросеть может иметь миллионы параметров, а набор данных для её обучения также может состоять из миллионов примеров. Аналитического решения в один шаг не существует.

К счастью, существует один странный трюк: можно начать с плохой нейросети, а потом улучшать её при помощи постепенных подстроек.

Обучение модели МО таким способом похоже на проверку ученика при помощи тестов. Каждый раз мы получаем оценку, сравнивая то, какие ответы должны быть по мнению модели, с «правильными» ответами в обучающих данных. Затем мы проводим улучшение и запускаем проверку снова.

Как мы узнаем, какие параметры надо подстраивать, и насколько? У нейросетей есть такое прикольное свойство, когда для многих видов обучения можно не только получить оценку в тесте, но и подсчитать, насколько именно она изменится в ответ на изменение каждого параметра. Говоря математическим языком, оценка – это функция значения, и для большинства таких функций мы легко можем подсчитать градиент этой функции относительно пространства параметров.

Теперь мы точно знаем, в какую сторону надо подстраивать параметры для увеличения оценки, и можно подстраивать сеть последовательными шагами во всё лучших и лучших «направлениях», пока вы не дойдёте до точки, в которой уже ничего нельзя улучшить. Это часто называют восхождением на холм, поскольку это действительно похоже на движение вверх по холму: если постоянно двигаться вверх, в итоге попадёшь на вершину.

Видали? Вершина!

Благодаря этому нейросеть улучшать легко. Если ваша сеть обладает хорошей структурой, получив новые данные, вам не нужно начинать с нуля. Можно начать с имеющихся параметров, и заново обучиться на новых данных. Ваша сеть будет постепенно улучшаться. Наиболее видные из сегодняшних ИИ – от распознавания кошек на Facebook до технологий, которые (наверное) использует Amazon в магазинах без продавцов – построены на этом простом факте.

Это ключ ещё к одной причине, по которой ГО распространилось так быстро и так широко: восхождение на холм позволяет взять одну нейросеть, обученную какой-то задаче, и переобучить её на выполнение другой, но сходной. Если вы обучили ИИ хорошо распознавать кошек, эту сеть можно использовать для обучения ИИ, распознающего собак, или жирафов, без необходимости начинать с нуля. Начните с ИИ для кошек, оценивайте его по качеству распознавания собак, и потом забирайтесь на холм, улучшая сеть!

Поэтому в последние 5-6 лет произошло резкое улучшение возможностей ИИ. Несколько кусочков головоломки сложились синергетическим образом: интернет сгенерировал огромный объём данных, на котором можно учиться. Вычисления, особенно параллельные вычисления на графических процессорах сделали возможной обработку этих огромных наборов. Наконец, глубокие нейросети позволили воспользоваться преимуществами этих наборов и создать невероятно мощные модели МО.

И всё это означает, что некоторые вещи, бывшие ранее крайне сложными, теперь делать очень легко.

И что мы теперь можем делать? Распознавание образов

Возможно, глубочайшее (пардон за каламбур) и скорейшее влияние глубокое обучение оказало на область компьютерного зрения – в особенности, на распознавание объектов на фотографиях. Несколько лет назад этот комикс от xkcd прекрасно описывал передний край информатики:

Сегодня распознавание птиц и даже определённых видов птиц – тривиальная задача, которую может решить правильно мотивированный старшеклассник. Что поменялось?

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

Поэтому распознавание лиц становится вопросом распознавания закономерностей, в которых расположены глаза и рты, что может потребовать распознавания форм глаза и рта из линий и кружочков.

Эти закономерности называются особенностями, и до появления глубокого обучения для распознавания было необходимо описать все особенности вручную и запрограммировать компьютер на их поиск. К примеру, есть знаменитый алгоритм распознавания лиц «метод Виолы — Джонса», основанный на том факте, что брови и нос обычно светлее глазниц, поэтому они формируют яркую Т-образную форму с двумя тёмными точками. Алгоритм, по сути, ищет подобные Т-образные формы.

Метод Виолы-Джонса работает хорошо и удивительно быстро, и служит основой распознавания лиц в дешёвых фотоаппаратах и т.п. Но, очевидно, не каждый объект, который вам нужно распознать, поддаётся подобному упрощению, и люди придумывали всё более сложные и низкоуровневые закономерности. Чтобы алгоритмы работали правильно, требовалась работа команды докторов наук, они были очень чувствительными и подверженными отказам.

Большой прорыв случился благодаря ГО, а в частности – определённому виду нейросетей под названием «свёрточные нейросети». Свёрточные нейросети, СНС – это глубокие сети с определённой структурой, вдохновлённой строением зрительной коры мозга млекопитающих. Такая структура позволяет СНС самостоятельно обучаться иерархии линий и закономерностей для распознавания объектов вместо того, чтобы ждать, пока доктора наук потратят годы на исследования того, какие из особенностей лучше подходят для этого. К примеру, СНС, обученная на лицах, выучит собственную внутреннюю репрезентацию линий и кружочков, складывающихся в глаза, уши и носы, и так далее.

Старые зрительные алгоритмы (метод Виолы-Джонса, слева) полагаются на вручную выделенных особенностях, а глубокие нейросети (справа) на собственную иерархию более сложных особенностей, составленных из более простых

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

Это всё замечательно, но есть и другая причина такого быстрого и широкого распространения СНС – это то, насколько легко они адаптируются. Помните восхождение на холм? Если наш старшеклассник захочет распознать определённую птицу, он может взять любую из множества зрительных сетей с открытым кодом, и обучить её на собственном наборе данных, даже не понимая, как работает лежащая в её основе математика.

Естественно, это можно расширить и ещё дальше.

Кто там? (распознавание лиц)

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

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

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

Изменение нейросети с распознавания лиц (слева) до описания лиц (справа) требует лишь изменения формата выходных данных, без смены её основы

Теперь можно распознавать лица, сравнивая описания каждого из лиц, создаваемые нейросетью

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

Подобная структурная гибкость – ещё одна причина такой полезности глубоких нейросетей. Было разработано уже огромное количество разнообразных МО-моделей для компьютерного зрения, и хотя они развиваются в очень разных направлениях, базовая структура многих из них основана на таких ранних СНС, как Alexnet и Resnet.

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

Подобная гибкость – дело хорошее, но не бесконечное. Чтобы решать некоторые другие проблемы, требуется использовать другие типы сетей.

И даже до этой точки виртуальные ассистенты добирались очень долго

Что ты сказал? (Распознавание речи)

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

Базовая идея в распознавании речи довольно похожа на принцип компьютерного зрения: распознавать сложные вещи в виде наборов более простых. В случае с речью распознавание предложений и фраз строится на распознавании слов, которое основано на распознавании слогов, или, если быть более точным, фонем. Так что, когда кто-то говорит «Bond, James Bond», на самом деле мы слышим BON+DUH+JAY+MMS+BON+DUH.

В зрении особенности организованы пространственно, и эту структуру обрабатывают СНС. В слухе эти особенности организованы во времени. Люди могут говорить быстро или медленно, без чёткого начала и конца речи. Нам нужна модель, способная воспринимать звуки по мере поступления, как человек, вместо того, чтобы ждать и выискивать в них законченные предложения. Мы не можем, как в физике, сказать, что пространство и время – это одно и то же.

Распознавать отдельные слоги довольно легко, однако их сложно изолировать. К примеру, «Hello there» может звучать похоже на «hell no they’re»… Так что для любой последовательности звуков обычно существует несколько комбинаций слогов, произнесённых на самом деле.

Чтобы во всём этом разобраться, нам нужна возможность изучать последовательность в определённом контексте. Если я слышу звук, то что более вероятно – что человек сказал «hello there dear» или «hell no they’re deer?» Здесь опять на помощь приходит машинное обучение. С достаточно большим набором образцов произнесённых слов можно выучить наиболее вероятные фразы. И чем больше примеров у вас есть, тем лучше это будет получаться.

Для этого люди используют рекуррентные нейросети, РНС. В большинстве типов нейросетей, как, например, в СНС, занимающихся компьютерным зрением, связи между нейронами работают в одном направлении, от входа к выходу (математически говоря, это направленные ациклические графы). В РНС выход нейронов может быть перенаправлен обратно на нейроны этого же уровня, на них самих или даже ещё дальше. Это позволяет РНС иметь свою память (если вам знакома двоичная логика, то эта ситуация похожа на работу триггеров).

СНС работает за один подход: скармливаем ей изображение, и она выдаёт какое-то описание. РНС поддерживает внутреннюю память о том, что ей давали раньше, и выдаёт ответы на основе того, что она уже видела, плюс того, что видит сейчас.

Такое свойство памяти у РНС позволяет им не только «слушать» слоги, поступающие к ней один за другим. Это позволяет сети обучаться тому, какие слоги идут вместе, формируя слово, и тому, насколько вероятны определённые их последовательности.

Используя РНС, возможно получить очень хорошую транскрипцию человеческой речи – до такой степени, что по некоторым измерениям точности транскрипций компьютеры сейчас могут превосходить людей. Конечно, звуки – не единственная область, где проявляются последовательности. Сегодня РНС используют также и для определения последовательностей движений для распознавания действий на видео.

Покажи мне, как ты умеешь двигаться (глубокие подделки и генеративные сети)

Пока что мы говорили о МО-моделях, предназначенных для распознавания: скажи мне, что изображено на картинке, скажи мне, что сказал человек. Но эти модели способны на большее – сегодняшние модели ГО можно использовать и для создания контента.

Это имеется в виду, когда люди рассказывают о deepfake – невероятно реалистичных поддельных видеороликах и изображениях, созданных с использованием ГО. Некоторое время назад один сотрудник немецкого телевидения вызвал обширную политическую дискуссию, создав поддельное видео, на котором министр финансов Греции показывал Германии средний палец. Для создания этого видео потребовалась команда редакторов, работавших для создания телепередачи, но в современном мире это может за несколько минут сделать любой человек с доступом к игровому компьютеру средней мощности.

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

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

Можно представить, что, используя все рассмотренные нами техники, возможно обучить сеть, получающую изображение танцора и сообщающую, где находятся его руки и ноги. А в таком случае, очевидно, на каком-то уровне сеть обучилась тому, как связывать пиксели в изображении с расположением конечностей человека. Учитывая то, что нейросеть – это просто данные, хранящиеся на компьютере, а не биологический мозг, должно быть возможно взять эти данные и пойти в обратную сторону – чтобы получить пиксели, соответствующие расположению конечностей.

Начните с сети, извлекающей позы из изображений людей

МО-модели, способные делать это, называются генеративными [англ. generate – порождать, производить, создавать / прим. перев.]. Все предыдущие рассмотренные нами модели называются дискриминационными [англ. discriminate – различать / прим. перев.]. Разницу между ними можно представить себе так: дискриминационная модель для кошек смотрит на фотографии и различает фото, содержащие кошек, и фото, где их нет. Генеративная модель создаёт изображения кошек на основе, допустим, описания того, какая это должна быть кошка.

Генеративные модели, «рисующие» изображения объектов, создаются при помощи тех же СНС-структур, что и модели, использующиеся для распознавания этих объектов. И эти модели можно обучать в основном так же, как и другие модели МО.

Однако хитрость заключается в том, чтобы придумать для их обучения «оценку». При обучении дискриминационной модели есть простой способ оценить правильность и неправильность ответа – типа, правильно ли сеть отличила собаку от кошки. Однако как оценить качество полученного рисунка кошки, или его точность?

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

Эта технология называется генеративно-состязательная сеть, или ГСС. Вы заставляете две нейросети состязаться друг с другом: одна сеть пытается создавать подделки, к примеру, рисуя нового танцора на основе поз старого. Другая сеть обучена на поиск разницы между реальными и поддельными примерами с использованием кучи примеров реальных танцоров.

И две эти сети играют в состязательную игру. Отсюда и слово «состязательный» в названии. Генеративная сеть пытается делать убедительные подделки, а дискриминационная пытается понять, где подделка, а где реальная вещь.

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

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

В итоговом рабочем процессе используется только генеративная модель, создающая нужные изображения

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

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

Чтобы всё это работало правильно, требуется большая работа по подстройкам и исправлениям, но по сути человек тут выступает в роли арбитра. Именно ИИ работают друг против друга, внося основные улучшения.

Так что, ждать ли нам в ближайшее время появления Skynet и Hal 9000?

В каждом документальном фильме о природе в конце есть эпизод, где авторы рассказывают о том, как вся эта грандиозная красота скоро исчезнет из-за того, насколько люди ужасны. Думаю, что в том же духе каждая ответственная дискуссия касательно ИИ должна включать раздел о его ограничениях и социальных последствиях.

Во-первых, давайте ещё раз подчеркнём текущие ограничения ИИ: главная мысль, которую вы, как я надеюсь, извлекли из прочтения этой статьи, состоит в том, что успех МО или ИИ чрезвычайно сильно зависит от выбранных нами моделей обучения. Если люди плохо организуют сеть или используют негодные материалы для обучения, то эти искажения могут оказаться весьма явными для всех.

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

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

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

Мы часто представляем себе, как ИИ «заменяет» нас, то есть, как роботы буквально делают нашу работу, но на самом деле это будет происходить не так. Взгляните, например, на рентгенологию: иногда люди, смотря на успехи компьютерного зрения, говорят о том, что ИИ заменит рентгенологов. Возможно, мы не дойдём до такой точки, когда у нас вообще не будет ни одного рентгенолога-человека. Но вполне возможно такое будущее, в котором на сотню сегодняшних рентгенологов ИИ позволит пяти-десяти из них делать работу всех остальных. Если такой сценарий реализуется, куда пойдут оставшиеся 90 врачей?

Даже если современное поколение ИИ не оправдает надежд наиболее оптимистичных его сторонников, он всё равно приведёт к весьма обширным последствиям. И эти проблемы нам придётся решать, поэтому неплохим началом, вероятно, будет овладеть основами этой области.

habr.com

Задачи, решаемые методами искусственного интеллекта.





⇐ ПредыдущаяСтр 8 из 15Следующая ⇒

Распознавание образов и классификация

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

Принятие решений и управление

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

Кластеризация

Под кластеризацией понимается разбиение множества входных сигналов на классы, при том, что ни количество, ни признаки классов заранее не известны. После обучения такая сеть способна определять, к какому классу относится входной сигнал. Сеть также может сигнализировать о том, что входной сигнал не относится ни к одному из выделенных классов — это является признаком новых, отсутствующих в обучающей выборке, данных. Таким образом, подобная сеть может выявлять новые, неизвестные ранее классы сигналов. Соответствие между классами, выделенными сетью, и классами, существующими в предметной области, устанавливается человеком. Кластеризацию осуществляют, например, нейронные сети Кохонена.

Нейронные сети в простом варианте Кохонена не могут быть огромными поэтому их делят на гиперслои (гиперколонки) и ядра (микроколонки). Если сравнивать с мозгом человека то идеальное количество параллельных слоёв не должно быть более 112. Эти слои в свою очередь составляют гиперслои (гиперколонку), в которой от 500 до 2000 микроколонок (ядер). При этом каждый слой делится на множество гиперколонок пронизывающих насквозь эти слои. Микроколонки кодируются цифрами и единицами с получением результата на выходе. Если требуется, то лишние слои и нейроны удаляются или добавляются. Идеально для подбора числа нейронов, и слоёв использовать суперкомпьютер. Такая система позволяет нейронным сетям быть пластичной.



Прогнозирование

Способности нейронной сети к прогнозированию напрямую следуют из ее способности к обобщению и выделению скрытых зависимостей между входными и выходными данными. После обучения сеть способна предсказать будущее значение некой последовательности на основе нескольких предыдущих значений и/или каких-то существующих в настоящий момент факторов. Следует отметить, что прогнозирование возможно только тогда, когда предыдущие изменения действительно в какой-то степени предопределяют будущие. Например, прогнозирование котировок акций на основе котировок за прошлую неделю может оказаться успешным (а может и не оказаться), тогда как прогнозирование результатов завтрашней лотереи на основе данных за последние 50 лет почти наверняка не даст никаких результатов.

Аппроксимация

Нейронные сети — могут аппроксимировать непрерывные функции. Доказана обобщённая аппроксимационная теорема: с помощью линейных операций и каскадного соединения можно из произвольного нелинейного элемента получить устройство, вычисляющее любую непрерывную функцию с некоторой наперёд заданной точностью. Это означает, что нелинейная характеристика нейрона может быть произвольной: от сигмоидальной до произвольного волнового пакета или вейвлета, синуса или многочлена. От выбора нелинейной функции может зависеть сложность конкретной сети, но с любой нелинейностью сеть остаётся универсальным аппроксиматором и при правильном выборе структуры может достаточно точно аппроксимировать функционирование любого непрерывного автомата.

Сжатие данных и Ассоциативная память

Способность нейросетей к выявлению взаимосвязей между различными параметрами дает возможность выразить данные большой размерности более компактно, если данные тесно взаимосвязаны друг с другом. Обратный процесс — восстановление исходного набора данных из части информации — называется (авто)ассоциативной памятью. Ассоциативная память позволяет также восстанавливать исходный сигнал/образ из зашумленных/поврежденных входных данных. Решение задачи гетероассоциативной памяти позволяет реализовать память, адресуемую по содержимому.




 

1. Структур.прогр-ие-методология разработки ПО,,в основе кот.лежит представление программы в виде иерархической стр-ры блоков.Предложена в 70-х XX века Э.Дейкстрой, разраб-на и дополнена Н.Виртом. 1)Люб.программа представляет собой стр-ру, построенную из трёх типов базовых конструкций: Последоват-ое исполнение-однократ. вып-ие операций в том порядке, в кот.они записаны в тексте программы;

ветвление-однократ. вып-ие одной из двух или более операций, в завис-ти от выполнения некоторого заданного условия; цикл — многократ. исполнение одной и той же операции до тех пор, пока вып-ся некоторое заданное условие. 2)Повторяющиеся фрагменты программы (либо логически целостные выч.блоки) могут оформляться в виде т. н. подпрограмм (процедур или функций). В тексте осн.программы, вместо помещённого в подпрограмму фрагмента, встав-ся инструкция вызова подпрограммы. При вып-ии такой инструкции вып-ся вызванная подпрограмма, после чего исполнение программы продолжается с инструкции, следующей за командой вызова подпрограммы. Разработка программы ведётся пошагово, методом «сверху вниз».

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

Модульное прогр-ие.

Для упрощения программу разраб-т по частям, кот. наз-ся программными модулями.А такой метод раз-ки программ наз-ют модульным прогр-ем. Прогр. модуль-это любой фрагмент опис-я процесса, оформляемый как самост. программный продукт, пригодный для исп-ия в описаниях процесса. Каждый программный модуль прогр-ся, компилируется и отлаживается отдельно от др.модулей программы. Кажд. разработанный прогр. модуль может вкл-ся в состав разных программ, если выполнены условия его исп-я, декларированные в документации по этому модулю. Для оценки приемлемости прогр. модуля исп-ся его хар-и: размер, прочность, сцепление с др.модулями, рутинность модуля. Размер модуля измер-ся числом содержащихся в нем операторов или строк. М. не должен быть слишком маленьким или слишком большим. Прочность модуля-это мера его внутр.связей. Сцепление модуля-это мера его завис-ти по данным от др. модулей. Хар-ся способом передачи данных.Чем слабее сцепление, тем сильнее его независ-ть от др.модулей. Рутинность модуля-это его незав-ть от предыстории обращений к нему. Модуль наз-ся рутинным, если результат обращения к нему зависит только от значений его параметров.

3. Транслятор — Программа или тех. ср-во, вып-ее трансляцию программы с одного языка прогр-ия на др, обрабатывающая программа, предназначенная для преобраз-я исходной программы в объектный модуль. Транслятор обычно вып-ет также диагностику ошибок, формирует словари идентификаторов, выдаёт для печати тексты программы и т.д. Трансляция прогр-ы-преобр-ие прогр-ы, представ-ой на одном из языков прогр-ия, в прогр-у на др.языке и, в опред.смысле, равносильную первой. Язык, на котором представ. входная программа, наз-ся исход.языком, а сама программа-исход.кодом. Выход.язык наз-ся целевым языком или объектным кодом. В случае программ-трансляторов, адресатом явл-ся тех. устр-во (процессор) или программа-интерпретатор. Интерпретатор программно моделирует машину, цикл выборки исполнения кот. работает с командами на языках выс.уровня, а не с машин.командами. Транс-ия заним.переводом программ с одного языка на другой,а интер-ия отвечает за исп-е программ. Однако, поскольку целью транс-ии как правило явл-ся подготовка программы к интер-ии, то эти процессы обычно рассм-ся вместе. Например, языки прогр-ия часто хар-ся как «компилируемые» или «интерпретируемые».

4. ООП-парадигма прогр-ия, в кот. осн. концепциями явл. понятия объектов и классов. Класс-это тип, описыв-ий устр-во объектов. Понятие «класс» подразумевает нек. поведение и способ представления. Понятие «объект» подразум. нечто, что обладает опред.поведением и способом представления. Объект- это экземпляр класса. Обычно классы разраб-т таким образом,чтобы их объекты соотв-вали объектам предметной области. Объект-сущность в адресном пространстве выч. системы, появл-щаяся при создании экземпляра класса. ООП явл-я более структурным, чем все предыдущ. разработки, касающиеся структурного прогр-ия. Оно также явл-я более модульным и более абстрактным. ООЯ прогр-ия хар-ся 3-я осн.св-вами: 1.Инкапсуляция.Комбинир-ие записей с процедурами и ф-циями, манипулирующими полями этих записей, формирует новый тип данных-объект. 2.Наслед-е. Иерархическое наследование признаков. 3.Полиморфизм. Присвоение действию одного имени, кот.затем совместно исп-ся вниз и вверх по иерархии объектов.

Програм-е в .NET Framework.

Платформа Microsoft .NET Framework сост-т из набора баз.классов и CLR (Common Language Runtime,общеязык.среда вып-я). Сущ-е баз. классы позволят решить практически весь необх-ый программисту круг задач.

.NET Framework это виртуальная машина, кот. явл-ся промежуточным звеном между ОС и приложением.

Поверх ОС работает Common Language Runtime. Это и есть вирт.машина, кот. обрабатывает IL (Intermediate Language) код программы.

Баз.классы .NET Framework предлаг-т обширный набор классов, кот. упрощают создание приложения. Расширенные классы-более сложные компоненты доступа к базам данных, XML и др.WEB сервисы.WEB формы,Windows формы-это основа люб.приложения.

Framework-унификация библиотек функций для различных языков, а также повыш-е контроля за приложениями с т.зр. безопасности и эффективного исп-я ресурсов.

Этапы построения алгоритмов

В процессе полного построения алгоритма можно выделить следующие основные этапы:

1) постановка задачи;

2) разработка модели;

3) построение алгоритма;

4) проверка правильности алгоритма;

5) анализ алгоритма;

6) программная реализация алгоритма.

Каждый из перечисленных шагов в реальных условиях может присутствовать самостоятельно или входить в состав соседних с ним этапов в зависимости от конкретной задачи и навыков пользователя.











infopedia.su

Основная проблема искусственного интеллекта в том, что никто до конца не понимает, как он работает

В прошлом году по дорогам округа Монмут, Нью-Джерси, стал колесить странный робомобиль. Это экспериментальное транспортное средство, разработанное специалистами компании Nvidia, по внешнему виду не слишком отличается от других автономных машин других производителей, таких как Google, Tesla или General Motors. Но специально для этого автомобиля разработана новая система управления. Она самообучается, и не зависит от настроек, заданных на производстве. Вместо этого робомобиль следит за действиями человека-водителя и учится у него.

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


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

Но сначала нужно найти пути, которые позволят лучше понимать то, что происходит в самой нейросети при обработке данных. В противном случае сложно, если вообще возможно, предсказать возможные ошибки систем со слабой формой ИИ. А такие ошибки обязательно будут. Это одна из причин, почему автомобиль от Nvidia до сих пор находится в стадии тестирования.

Человек сейчас применяет математические модели для того, чтобы облегчить для себя задачу выбора — например, определить надежного заемщика денежных средств или найти сотрудника с необходимым опытом для какой-то работы. В целом, математические модели и процессы, которые их используют, относительно просты и понятны. Но военные, коммерческие компании, ученые сейчас используют гораздо более сложные системы, чьи «решения» основываются не на результатах работы одной-двух моделей. Глубокое обучение отличается от обычных принципов работы компьютеров. По мнению Томми Джаакола, профессора из MIT, эта проблема становится все более актуальной. «Что бы вы ни делали — принимали решение об инвестициях, пытались поставить диагноз, выбрали точку атаки на поле боя, все это не должно зависеть от метода „черного ящика“», — говорит он.

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

Никогда прежде человек не строил машины, принцип работы которых не до конца понятен сами создателям и резко отличается от способа обработки информации, используемого самим человеком. Так можно ли ожидать нормального взаимодействия с машинами, работа которых непредсказуема?


Картина, подготовленная художником Адамом Ферриссом при помощи Google Deep Dream

В 2015 году исследовательская группа Mount Sinai Hospital из Нью-Йорка использовала глубокое обучение для обработки базы данных записей пациентов. База данных включала информацию о тысячах пациентов с сотнями строк информации по каждому человеку вроде результатов тестов, дате посещения врача и т.п. В результате появилась программа Deep Patient, которая обучилась на примере записей 700 тысяч человек. Результаты, которые показывала эта программа, оказались необычайно хорошими. Например, она смогла предсказывать появление некоторых болезней на ранней стадии у ряда пациентов.

Однако, результаты оказались и немного странными. Например, система начала отлично диагностировать шизофрению. Но даже для опытных психиатров диагностика шизофрении — сложная проблема. А вот компьютер справился с ней на «ура». Почему? Никто не может объяснить, даже создатели системы.

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

Все это оставалось чистой воды теорией до настоящего момента, когда компьютеры стали достаточно мощными для того, чтобы специалисты по искусственному интеллекту и нейросетям могли начать реализовывать свои идеи на практике. За последние десять лет было реализовано огромное количество идей, появились отличные сервисы, помогающие переводить тексты с языка на язык, распознавать речь, обрабатывать видеопоток в режиме реального времени, работать с финансовыми данными, оптимизировать процессы производства.

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

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

Один из примеров того, насколько работа нейросети отличается от работы мозга человека — система Deep Dream. Это проект Google, нейросеть, в которую вводили обычную фотографию и давали цель преобразовать это фото в соответствии с определенной темой. Ну, например, сделать все объекты на снимке похожими на собак. Результаты впечатлили всех. Как-то в систему ввели задачу генерировать изображение гантели. Система справилась, но во всех случаях к гантели были пририсованы руки людей — нейросеть решила, что гантель-рука — едина система, которую нельзя рассматривать, как два отдельных элемента.

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

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

Военные США вложили миллиарды долларов в разработку систем автоматического управления дронами, определения и идентификации различных объектов, анализа данных. Но и военные считают, что работа таких систем должна быть понятной и объяснимой. Те же солдаты, закрытые в танке с автоматическим управлением будут чувствовать себя очень некомфортно в том случае, если не будут понимать, как и что работает, почему система приняла такое решение, а не другое.

Возможно, в будущем эти системы будут пояснять свои действия. Например, Карлос Гуестрин, профессор из Вашингтонского университета, разработал компьютерную систему, которая поясняет промежуточные результаты своих вычислений. Эта система может использоваться для анализа электронных сообщений. Если какое-то из них оценено компьютером, как отправленное условным террористом, то обязательно будет дано пояснение, почему сделан именно такой вывод.

По мнению ученого, объяснения должны быть достаточно простыми и понятными. «Мы еще не достигли мечты, где ИИ просто ведет с вами беседу и может объяснять», — говорит Гуестрин. «Мы лишь в начале долгого пути по созданию прозрачного ИИ».

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

Наверное, все же нельзя заставить компьютер объяснять все свои действия и решения — ведь, например, поступки и решения любого человека зачастую невозможно понять. Они зависят от большого количества факторов. А чем сложнее нейросеть, тем больше таких факторов она принимает во внимание и анализирует.

Здесь возникает ряд сложных вопросов этического и социального характера. Например, в случае с теми же военными, когда речь идет о создании автоматизированных танков и других машин для убийства, важно, чтобы их решения соответствовали этическим нормам человека. Собственно, убийство само по себе может не соответствовать этическим нормам многих из нас. Но эти решения должны быть хотя бы приемлемыми для большинства. Хотя, что представляет собой это большинство? Тоже вопрос.

Дэниэлл Денетт, философ из Университета Тафтса, говорит следующее: «Я считаю, что если мы собираемся использовать эти вещи и зависеть от них, тогда нужно понимать, как и почему они действуют так, а не иначе. Если они не могут лучше нас объяснить, что они делают, то не стоит им доверять».  

habr.com

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *