Это бесплатная раздача: я публикую всю главу 3 книги Этика искусственного интеллекта: факты, вымыслы и прогнозы, где я объясняю машинное обучение и сравниваю его с методами обучения людей. Хотя основная цель главы является образовательной - помочь широкой публике понять, о чем ML, помимо шумихи! - мысль, которую я подчеркиваю во многих главах, включая эту, заключается в том, что компьютеры и люди ОЧЕНЬ разные.

Машина:« Устройство с механическим, электрическим или электронным управлением для выполнения задачи .»

Чтобы учиться:« Чтобы получить знания, понимание или навыки посредством изучения, инструкции или опыта .»

Моей дочери почти четыре года. Не так давно она подошла ко мне, когда я жарил на гриле, и задала мне вопрос.

«Папа, что это?»

- «Это деревяшки в тазе с водой».

"Почему ты это сделал?"

- «Я хочу покурить в барбекю».

«Как вы курите?»

- «Знаешь, если положить мокрую древесину поверх древесного угля, получится приятный запах дыма!»

«Ха». - сухо отметила она.

Как это принято с детьми этого возраста, она задает мне невероятное количество вопросов. Все обсуждения заканчиваются ее коротким сухим «Ха» - ее способ сказать: «Понятно. Теперь я понимаю."

Меня очаровывает то, что она никогда не спрашивает, имеет ли мой ответ смысл или нет. Она просто принимает вещи такими, какие они есть. Это так просто.

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

Если я оглянусь на свой собственный опыт, то большинство вещей, которые я узнал в жизни, прошли через аналогичный процесс. Мне не нужно было проверять факты или проводить эксперимент, чтобы знать, что Америка существует. Я доверял своей учительнице начальных классов, которая рассказывала мне об Америке и авторе карты мира, которая висела у нас на стеклянной стене. Когда я изучал таблицы умножения и основы математики, я не спрашивал об их внутреннем устройстве - я просто доверял учителям, которые учили меня тому, что 2 + 2 = 4. Доверие, или «по авторитету», является одним из самых простых способов справиться с этим. чему учатся люди.

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

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

Иногда AI и ML даже используются как взаимозаменяемые, потому что ML - это способ, которым системы AI «учатся» выполнять задачу.

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

Итак, что на самом деле означает машинное обучение? А как это работает?

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

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

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

Программа машинного обучения работает иначе. Он принимает точки данных и ответы в качестве входных данных и выводит правила. Используя те же примеры, скажем, мы хотим запрограммировать калькулятор с использованием машинного обучения. Мы вводим множество примеров математических операций (данных) с их ответами. Например, мы должны ввести «2 + 2 = 4», «3 x 2 = 6», «10–3 = 7» и т. Д. Потребуются миллионы таких примеров. Выходные данные программы представляют собой набор правил, которым необходимо следовать для воспроизведения результатов, подобных тем, которые она видела. Таким образом, когда вы вводите «2 + 2», он должен воспроизвести пример, максимально приближенный к реальной математической операции: «2 + 2 = 4». Программирование калькулятора с машинным обучением - это излишество, поскольку в этом контексте достаточно просто дать устройству четкие правила.

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

Интересно отметить, что ML известен под разными именами в разных областях: статистический обучение и распознавание образов - вот несколько примеров. Компьютерная программа распознает закономерности с помощью статистики. Используя запрограммированный на ML калькулятор, описанный выше, методы машинного обучения, увидев множество раз, что 2 + 2 = 4, его правила вырабатывают более высокую вероятность того, что вход «2 + 2» должен дать выход четыре, с меньшим шанс, что он равен любому другому числу. То, как мы собираем данные, играет очень важную роль: если данных недостаточно или они больше представляют одни ответы, чем другие, программа машинного обучения будет учиться на искаженных данных таким образом, что с большей вероятностью даст вам неправильный ответ.

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

Модели машинного обучения обнаруживают закономерности в данных разными способами. Три основных категории ML - это контролируемое, неконтролируемое и подкрепление (Университет Хельсинки). Лучший способ запрограммировать приложение зависит от решаемой проблемы и доступности данных.

Вышеописанная система калькулятора является примером обучения с учителем. Нам даются входные данные с их правильными выходными данными в качестве примеров данных (полные уравнения «2 + 2 = 4», «3 x 2 = 6», «10–3 = 7» и т. Д.). Задача машины - научиться воспроизводить правильный результат уравнения. Результаты уравнений во входных данных называются «метками».

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

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

Допустим, у вас есть веб-сайт электронной коммерции, который собирает огромное количество данных: для каждого продукта у вас есть рейтинги клиентов, размер, цена, цвет, характеристики и список других товаров, купленных вместе. Может быть полезно разрешить алгоритму группировать элементы с аналогичными функциями или аналогичными рейтингами или с аналогичным списком товаров, купленных вместе, чтобы предлагать покупателям другие товары для покупки. У вас нет таких ярлыков, как «элемент X похож на элемент Y» (было бы слишком дорого и неэффективно позволять людям маркировать каждый продукт), поэтому выяснение того, какие группы похожи, - типичная задача алгоритма неконтролируемого обучения. После того, как вы наполнили тележку Amazon и перед тем, как оформить заказ, вы видите соблазнительные предметы с сообщением типа «Люди, купившие обувь Nike Air Max, также купили их», что, вероятно, является результатом алгоритма неконтролируемого обучения.

Фактически, методы неконтролируемого машинного обучения часто встроены в типы ИИ, которые люди считают жуткими или агрессивными. Хотя предложения, которые дает эта технология, могут создать впечатление, будто программа знает много о вас, на самом деле это просто неправда; вместо этого он в основном использует статистические модели для группировки ваших привычек и интересов на основе вашего просмотра с другими людьми, которые демонстрировали похожие модели. Заголовок сделал случай с американским ритейлером Target. Они смогли точно предсказать, что покупательница-подросток беременна. Но не волнуйтесь, целевые компьютеры не все знают об этом клиенте. Они могли просто распознать статистический образец, основанный на покупателях с аналогичной историей покупок.

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

Обучение с подкреплением - это увлекательный механизм, который обычно используется в ситуациях, когда компьютерной программе необходимо корректировать свои прогнозы на ходу. Это полезно для робота-пылесоса, который должен работать в среде, где обратная связь о правильном или неправильном выборе доступна с некоторой задержкой. Например, пылесос сначала перемещается по пятну на полу, а затем проверяет, не загрязнен ли он. Он знает, грязно ли оно, после того, как решило переехать в это место. Данные, собранные при каждом проходе, подкрепляют предыдущие знания о мире, которыми обладало устройство. Аналогичная динамика наблюдается в играх, где каждый ход меняет все перспективы будущих движений: как только вы помещаете слона на определенное поле шахматной доски, стратегия всех будущих ходов, как ваших, так и вашего оппонента, должна измениться. Фактически, Alpha Go, компьютерная программа, разработанная Google DeepMind и победившая чемпиона мира по Go, использовала некоторые элементы обучения с подкреплением для более быстрого поиска решений.

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

Человеческое обучение

В обучение входят два элемента: что изучается и как это изучается.

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

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

Маркус дю Сотуа, британский математик и автор научно-популярных книг, приводит отличный пример человеческого обучения в видеоролике BBC Studios (Почему обучение как люди так сложно для машин). Он ставит перед собой новую задачу: пройти через проволоку на собственном опыте. Дю Сотуа объясняет, что эта задача включает в себя некоторые важные аспекты человеческого обучения: контроль тела, рассуждения и инстинкты. Он все пробует, и кажется, что не перебегает через проволоку. В какой-то момент его тренер предлагает небольшой совет: Попробуйте еще и небольшую песню, мелодию, которая заставит вас немного расслабиться. Вооружившись новым трюком, Маркус может научиться ходить по проволоке после нескольких проб и ошибок. Ученый объясняет:

«Мы не можем полностью объяснить, как наш мозг учится таким образом. Не знаю, почему гудение помогает, но это так.

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

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

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

Надеюсь, вам понравился последний пост из моей серии статей, где я делюсь отрывками и историями из моей книги Этика ИИ: факты, вымыслы и прогнозы - если вам это понравилось и вы хотите подключитесь, вы можете связаться со мной здесь по электронной почте или связаться со мной в социальных сетях: LinkedIn, Twitter. Также вы можете найти мою книгу на Amazon - здесь ссылка на нее.