Когда в чате сайта нам отвечает бот, когда мы пользуемся онлайн-переводчиками или автоматической коррекцией фото, то всегда сталкиваемся с плодами машинного обучения. Машинное обучение является областью искусственного интеллекта, которая позволяет компьютерам учиться без явного программирования.
Что такое машинное обучение?
Если говорить в широком смысле, то машинное обучение помогает искусственному интеллекту имитировать разумное поведение человека. Системы искусственного интеллекта используются для решения сложных задач, причём решают их тем же способом, как делают люди. Машины могут распознавать визуальную сцену, понимать текст, написанный на естественном языке или выполнять какие-то действия в физическом мире.
Машинное обучение дает компьютерам возможность учиться без явного программирования. Традиционный способ программирования компьютеров, можно сравнить с выпечкой, где рецепт требует точного количества ингредиентов и выполнения определённых условий приготовления. Традиционное программирование также требует создания подробных инструкций для компьютера.
Но иногда написание программы для машины требует много времени или в принципе невозможно. Например, не получится написать программу, которая позволит компьютеру распознавать изображения разных людей. В свою очередь человек может делать это без проблем. Машинное обучение использует подход, позволяющий компьютерам учиться программировать себя на основе опыта.
Машинное обучение начинается с данных — чисел, фотографий или текста. Например, банковских транзакций, изображений людей, записей о ремонте. Данные собираются и подготавливаются для использования в качестве обучающих данных или информации, на которой будет обучаться модель машинного обучения. Чем больше данных, тем лучше программа.
Далее выбирается модель и предоставляются данные, чтобы компьютерная модель могла находить закономерности или делать прогнозы. Со временем программист может настроить модель, например, изменить ее параметры, чтобы добиться более точных результатов.
Некоторые данные из обучающей базы сохраняются и могут быть использованы в качестве оценочных, чтобы проверить, насколько точна модель. В результате получается модель, которую можно в будущем использовать с различными наборами данных.
Процесс обучения требует больших вычислительных ресурсов.
Три подкатегории машинного обучения
С учителем. Такие модели обучаются с помощью помеченного набора данных, со временем становясь более точными. Например, алгоритм будет обучаться на изображениях собак и других предметов, где собаки отмечены, а машина будет учиться самостоятельно идентифицировать изображения собак. Машинное обучение с учителем – наиболее распространенным типом.
Без учителя. В данном случае программа ищет закономерности в непомеченных данных. В данном случае машина может находить закономерности или тенденции, которые люди явно не ищут. Например, программа машинного обучения может просматривать данные онлайн-продаж и определять различные типы клиентов, которые совершают покупки.
С подкреплением. Данный тип обучает машины предпринимать наилучшие действия методом проб и ошибок, создавая систему вознаграждений. Таким образом могут обучать модели играть в игры или управлять автономным транспортным средством. Машине сообщают, когда она приняла верное решение, что помогает ей со временем узнать, какие действия она должна предпринять.
Подобласти машинного обучения
Вы можете встретить следующие связанные понятия:
Обработка естественного языка — это область машинного обучения, в которой машины учатся понимать естественный язык. То есть то, как говорят и пишут люди. Это позволяет машинам распознавать язык, понимать его и реагировать на слова, а также создавать новый текст и переводить его с одного языка на другой. Обработка естественного языка позволяет использовать такие технологии, как чат-боты и голосовые помощники (Алиса, Siri)
Нейронные сети — это особый класс алгоритмов. Искусственные нейронные сети моделируются на основе человеческого мозга, в котором тысячи или миллионы узлов обработки взаимосвязаны и организованы в слои. В искусственной нейронной сети клетки или узлы соединены, причем каждая ячейка обрабатывает входные данные и производит выходные данные, которые отправляются другим нейронам. Помеченные данные перемещаются по узлам или ячейкам, причем каждая ячейка выполняет свою задачу.
Сети глубокого обучения — это нейронные сети со многими слоями. Многоуровневая сеть может обрабатывать большие объемы данных и определять «вес» каждой ссылки в сети. Например, в системе распознавания изображений некоторые слои нейронной сети могут обнаруживать отдельные черты лица, такие как глаза, нос, или рот. В то же время другой слой сможет сказать, указывают ли эти черты на то, что на картинке лицо.
Как можно использовать машинное обучение
Машинное обучение лежит в основе бизнес-моделей многих компаний. Его сфера применения уже сейчас очень широка и будет только расти.
Алгоритмы рекомендаций. Механизмы рекомендаций, лежащие в основе предложений в соцсетях, на YouTube и других площадках работают благодаря машинному обучению. ИИ пытается изучить наши предпочтения, какие посты мы хотим читать, какую рекламу смотреть.
Анализ изображений и обнаружение объектов. Машинное обучение может анализировать изображения для получения различной информации, например, научиться идентифицировать людей и различать их. Практически такое можно использовать, например, для анализа количества автомобилей на парковках, поиска пропавших людей и т.п.
Обнаружение мошенничества. Машины могут анализировать закономерности, например, понять, как человек обычно тратит деньги и выявить мошеннические транзакции, если какое-то действие выбивается из привычного.
Голосовые помощники или чат-боты. Многие компании внедряют чат-ботов, которые позволяют сэкономить на людях-операторах. Эти алгоритмы используют машинное обучение и обработку естественного языка, боты учатся на записях прошлых разговоров, чтобы придумывать качественные ответы.
Управление транспортом. Большая часть технологий, лежащих в основе беспилотных автомобилей, основана на машинном обучении, в частности на глубоком обучении.
Медицинская визуализация и диагностика. Программы можно научить анализировать медицинские изображения или другую информацию и искать определенные маркеры болезни. Например, прогнозировать развитие рака на основе маммографии.
Проблемы машинного обучения
Используя машинное обучение в бизнесе, важно понимать и его слабые стороны. Во-первых, не всегда можно четко понять, как именно модели принимают решения. Это важно, потому что системы могут быть обмануты или просто не справляться с определенными задачами, даже теми, которые кажутся очень простыми для людей. Например, корректировка метаданных в изображениях может сбить компьютеры с толку — после нескольких корректировок машина идентифицирует изображение собаки как страуса.
Ещё пример: алгоритм, исследующий рентгеновские снимки, оказался лучше врачей. Но оказалось, что он коррелирует результаты с машинами, которые сделали изображение, а не с самим изображением. Туберкулез чаще встречается в развивающихся странах, которые, как правило, имеют более старые приборы. Программа машинного обучения выяснила, что если рентгеновский снимок был сделан на более старом приборе, у пациента с большей вероятностью был туберкулез. ИИ выполнил задачу, но не так, как задумывалось. Такой анализ не просто бесполезен, он может быть даже вреден, если использовать алгоритм для лечения реальных людей.
Хотя большинство задач можно решить с помощью машинного обучения, люди понимать, что модели работают примерно с 95% точностью по сравнению с человеком. Это подходит, если рекомендованный фильм будет на 95% соответствовать ожиданиями. Но оставшиеся 5% - слишком много, если речь идёт о беспилотном управлении транспортом или поиска серьезных проблем в механизмах или организме человека.
Кроме того, машины обучаются людьми, и человеческие предубеждения могут быть включены в алгоритмы. Например, если подавать в качестве исходных данных информацию, отражающую существующее неравенство, программа научится это воспроизводить. Чат-боты, обученные на примере общения в Твиттере, могут допускать в своих ответах оскорбительные и расистские высказывания.
В некоторых случаях модели создают или усугубляют социальные проблемы. Например, если показываемый контент в соцсетях основан на машинном обучении и будет содержать экстремальные материалы, это приведёт к поляризации и распространению теорий заговора.
Чтобы бороться с предвзятостью, необходима тщательная проверка обучающих данных и а также оказание организационной поддержки этическим усилиям в области искусственного интеллекта.
Машинное обучение может изменить каждую отрасль, поэтому важно понимать не только его возможности, но и ограничения.