методы обучения с учителем машинное обучение

Обучение нейросети с учителем, без учителя, с подкреплением — в чем отличие? Какой алгоритм лучше?

методы обучения с учителем машинное обучение. obuchenie s bez uchitelja s podkrepleniem e1539953799444. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-obuchenie s bez uchitelja s podkrepleniem e1539953799444. картинка методы обучения с учителем машинное обучение. картинка obuchenie s bez uchitelja s podkrepleniem e1539953799444.

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

Есть руководство по эксплуатации и все нужные детали? Просто следуйте инструкции. Ну как, получается? Можно выбросить руководство и работать самостоятельно. Но стоит перепутать порядок действий, и уже вам решать, что делать с этой кучей деревянных болтов и досок.

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

методы обучения с учителем машинное обучение. unsupervised learning. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-unsupervised learning. картинка методы обучения с учителем машинное обучение. картинка unsupervised learning.Результат обучения нейронной сети — кластеризация изображений

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

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

Для каждого способа обучения рассмотрим примеры подходящих для него данных и задач.

Обучение с учителем

Обучение с учителем (supervised learning) предполагает наличие полного набора размеченных данных для тренировки модели на всех этапах ее построения.

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

методы обучения с учителем машинное обучение. obuchenie s uchitelem. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-obuchenie s uchitelem. картинка методы обучения с учителем машинное обучение. картинка obuchenie s uchitelem.Пример обучения с учителем — классификация (слева), и дальнейшее ее использование для сегментации и распознавания объектов

В основном обучение с учителем применяется для решения двух типов задач: классификации и регрессии.

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

А вот задачи регрессии связаны с непрерывными данными. Один из примеров, линейная регрессия, вычисляет ожидаемое значение переменной y, учитывая конкретные значения x.

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

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

Обучение без учителя

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

В обучении без учителя (unsupervised learning) у модели есть набор данных, и нет явных указаний, что с ним делать. Нейронная сеть пытается самостоятельно найти корелляции в данных, извлекая полезные признаки и анализируя их.

методы обучения с учителем машинное обучение. obuchenie bez uchitelja klasterizacija. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-obuchenie bez uchitelja klasterizacija. картинка методы обучения с учителем машинное обучение. картинка obuchenie bez uchitelja klasterizacija.Кластеризация данных на основе общих признаков

В зависимости от задачи модель систематизирует данные по-разному.

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

Обучение с частичным привлечением учителя

Это золотая середина.

Обучение с частичным привлечением учителя (semi-supervised learning) характеризуется своим названием: обучающий датасет содержит как размеченные, так и неразмеченные данные. Этот метод особенно полезен, когда трудно извлечь из данных важные признаки или разметить все объекты – трудоемкая задача.

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

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

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

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

методы обучения с учителем машинное обучение. obuchenie s chastichnym privlecheniem uchitelja. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-obuchenie s chastichnym privlecheniem uchitelja. картинка методы обучения с учителем машинное обучение. картинка obuchenie s chastichnym privlecheniem uchitelja.Как работает GAN: дискриминатору «D» показывают исходные изображения и данные, созданные генератором «G». Дискриминатор должен определить, какие изображения являются реальными, а какие поддельными.

Обучение с подкреплением

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

Обучение с подкреплением (reinforcement learning) действует по тому же принципу. Видеоигры — популярная тестовая среда для исследований.

методы обучения с учителем машинное обучение. result of reinfircement learning. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-result of reinfircement learning. картинка методы обучения с учителем машинное обучение. картинка result of reinfircement learning.Результат обучения с подкреплением — «агент» проходит трассу, не выезжая за ее пределы. Далее можно добивиться повышения скорости прохождения трассы.

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

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

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

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

Источник

Гид: алгоритмы машинного обучения и их типы

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

Автор: Катрина Уэйкфилд (Katrina Wakefield), маркетинг, SAS Великобритания

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

Термин «машинное обучение» ввел американский компьютерный ученый Артур Самуэль в 1959 году как «способность компьютера учиться, не будучи явным образом запрограммированным».

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

Существуют 4 типа алгоритмов машинного обучения: обучение с учителем, обучение с частичным привлечением учителя, обучение без учителя и обучение с подкреплением

Какой алгоритм машинного обучения следует использовать?

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

Обучение с учителем

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

К категории обучения с учителем относятся классификация, регрессия и прогнозирование.

Обучение с частичным привлечением учителя

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

Обучение без учителя

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

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

Методы обучения без учителя включают в себя:

Обучение с подкреплением

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

Источник

Все модели машинного обучения за 5 минут

Mar 6, 2020 · 5 min read

методы обучения с учителем машинное обучение. 0*UZW12meJ 0vDW0Ib. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*UZW12meJ 0vDW0Ib. картинка методы обучения с учителем машинное обучение. картинка 0*UZW12meJ 0vDW0Ib.

методы обучения с учителем машинное обучение. 0*1Tu2RuyAUlj3YkGG. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*1Tu2RuyAUlj3YkGG. картинка методы обучения с учителем машинное обучение. картинка 0*1Tu2RuyAUlj3YkGG.

Фундаментальная сегментация моделей машинного обучения

Все модели машинного обучения разделяются на обучение с учителем (supervised) и без учителя (unsupervised). В первую категорию входят регрессионная и классификационная модели. Рассмотрим значения этих терминов и входящие в эти категории модели.

Обучение с учителем

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

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

методы обучения с учителем машинное обучение. 0*eWQldPNsaX3TQe98. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*eWQldPNsaX3TQe98. картинка методы обучения с учителем машинное обучение. картинка 0*eWQldPNsaX3TQe98.

Пример обучения с учителем

Повторюсь, обучение с учителем подразделяется на две подкатегории: регрессия и классификация.

Регрессия

В регре с сионных моделях вывод является непрерывным. Ниже приведены некоторые из наиболее распространенных типов регрессионных моделей.

Линейная регрессия

методы обучения с учителем машинное обучение. 0*6DzhoxfhDxb7 i0K. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*6DzhoxfhDxb7 i0K. картинка методы обучения с учителем машинное обучение. картинка 0*6DzhoxfhDxb7 i0K.

Пример линейной регрессии

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

Дерево решений

методы обучения с учителем машинное обучение. 0*msYqvdzEkdTjHr1d. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*msYqvdzEkdTjHr1d. картинка методы обучения с учителем машинное обучение. картинка 0*msYqvdzEkdTjHr1d.

Изображение из Kaggle

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

Случайный лес

Случайный лес — это техника ансамбля методов, основанная на деревьях решений. Случайные леса включают создание нескольких деревьев решений с использованием первоначальных наборов данных и случайный выбор поднабора переменных на каждом этапе. Затем модель выбирает моду (значение, которое встречается чаще других) из всех прогнозов каждого дерева решений. Какой в этом смысл? Модель “победы большинства” снижает риск ошибки отдельного дерева.

методы обучения с учителем машинное обучение. 0*o7DbtVRp9JkO 93Q. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*o7DbtVRp9JkO 93Q. картинка методы обучения с учителем машинное обучение. картинка 0*o7DbtVRp9JkO 93Q.

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

Нейронная сеть

методы обучения с учителем машинное обучение. 0*ij0zMEiVOPXJMTnk. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*ij0zMEiVOPXJMTnk. картинка методы обучения с учителем машинное обучение. картинка 0*ij0zMEiVOPXJMTnk.

Визуальное представление нейронной сети

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

Классификация

В классификационных моделях вывод является дискретным. Ниже приведены некоторые из наиболее распространенных типов классификационных моделей.

Логистическая регрессия

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

методы обучения с учителем машинное обучение. 0*j0kdKV9nS 2XcJG5. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*j0kdKV9nS 2XcJG5. картинка методы обучения с учителем машинное обучение. картинка 0*j0kdKV9nS 2XcJG5.

Метод опорных векторов

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

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

методы обучения с учителем машинное обучение. 0*C0V1pJK9UMMEgDnW. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*C0V1pJK9UMMEgDnW. картинка методы обучения с учителем машинное обучение. картинка 0*C0V1pJK9UMMEgDnW.

Наивный Байес

Наивный Байес — еще один популярный классификатор, используемый в науке о данных. Его идея лежит в основе теоремы Байеса:

методы обучения с учителем машинное обучение. . методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-. картинка методы обучения с учителем машинное обучение. картинка .

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

Обучение без учителя

методы обучения с учителем машинное обучение. 0*mnKIZEB2HcyjgVml. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*mnKIZEB2HcyjgVml. картинка методы обучения с учителем машинное обучение. картинка 0*mnKIZEB2HcyjgVml.

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

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

методы обучения с учителем машинное обучение. 0*9fH0CG BFqs50oyo. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-0*9fH0CG BFqs50oyo. картинка методы обучения с учителем машинное обучение. картинка 0*9fH0CG BFqs50oyo.

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

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

Понижение размерности

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

Популярный метод понижения размерности называется методом главных компонент (PCA). Он представляет собой проецирование многомерных данных (например, 3 измерения) в меньшее пространство (например, 2 измерения). Это приводит к уменьшению размерности данных (2 измерения вместо 3) при сохранении всех исходных переменных в модели.

Источник

Революция машинного обучения: общие принципы и влияние на SEO

Предлагаю вашему вниманию перевод статьи «Революция машинного обучения» за авторством Эрика Энжа (Eric Enge).

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

Для справки, рекомендую посмотреть презентацию Рэнда Фишкина «SEO in a Two Algorithm World», где Рэнд подробно рассматривает влияние машинного обучения на поиск и SEO. К этой теме я еще вернусь.

Я также упомяну сервис, который позволяет спрогнозировать шансы ретвита вашего поста на основании следующих параметров: показатель Followerwonk Social Authority, наличие изображений, хэштегов и некоторых других факторов. Я назвал этот сервис Twitter Engagement Predictor (TEP). Чтобы разработать такую систему мне понадобилось создать и обучить нейронную сеть. Вы указываете исходные параметры твита, сервис обрабатывает их и прогнозирует шансы ретвита.

TEP использует данные исследования, опубликованного в декабре 2014 «Twitter engagement» (вовлечение в Twitter), где мы проанализировали 1,9 миллионов оригинальных твитов (исключая ретвиты и избранное), чтобы определить основные факторы, которые влияют на получение ретвитов.

Мое путешествие в машинное обучение

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

Если вкратце, они собирают информацию о всех вариантах перевода слова в сети и на основе этих данных проводят обучение. Это очень серьезный и сложный пример машинного обучения, Google применила его в 2011 году. Стоит сказать, что сегодня все лидеры рынка — например, Google, Microsoft, Apple и Facebook используют машинное обучение для многих интересных направлений.

Еще в ноябре, когда я захотел серьезнее разобраться в этой теме, я приступил к поиску статей в сети. Вскоре я обнаружил отличный курс по машинному обучению на Coursera. Его преподает Andrew Ng (Эндрю Ын) из Стэнфордского университета, курс дает хорошее представление об основах машинного обучения.

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

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

Основные положения машинного обучения

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

Машинное обучение с учителем

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

методы обучения с учителем машинное обучение. 491ccc4502fb483191932f6ca9fcbbc4. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-491ccc4502fb483191932f6ca9fcbbc4. картинка методы обучения с учителем машинное обучение. картинка 491ccc4502fb483191932f6ca9fcbbc4.

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

методы обучения с учителем машинное обучение. c7aff47a95b7422c9d207c26804cda3a. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-c7aff47a95b7422c9d207c26804cda3a. картинка методы обучения с учителем машинное обучение. картинка c7aff47a95b7422c9d207c26804cda3a.

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

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

методы обучения с учителем машинное обучение. 025e061b4ef144b195ced05c8794affb. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-025e061b4ef144b195ced05c8794affb. картинка методы обучения с учителем машинное обучение. картинка 025e061b4ef144b195ced05c8794affb.

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

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

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

Задачи классификации

183 см). Набор входных данных будет выглядеть приблизительно так:

методы обучения с учителем машинное обучение. b26238d4409940d5a0e4c4d5138fe462. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-b26238d4409940d5a0e4c4d5138fe462. картинка методы обучения с учителем машинное обучение. картинка b26238d4409940d5a0e4c4d5138fe462.

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

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

Машинное обучение без учителя

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

методы обучения с учителем машинное обучение. b786da09678641c2aa7773738b4eceae. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-b786da09678641c2aa7773738b4eceae. картинка методы обучения с учителем машинное обучение. картинка b786da09678641c2aa7773738b4eceae.

Алгоритм анализирует эти данные и группирует их на основании общих свойств. В примере ниже показаны объекты «x» имеют общие свойства:

методы обучения с учителем машинное обучение. bc4cca9abbaa4c62bdf04067f78c0e53. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-bc4cca9abbaa4c62bdf04067f78c0e53. картинка методы обучения с учителем машинное обучение. картинка bc4cca9abbaa4c62bdf04067f78c0e53.

Тем не менее, алгоритм может ошибаться при распознавании объектов и группировать их примерно так:

методы обучения с учителем машинное обучение. d564f12667614b0987b136cb25fcae98. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-d564f12667614b0987b136cb25fcae98. картинка методы обучения с учителем машинное обучение. картинка d564f12667614b0987b136cb25fcae98.

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

методы обучения с учителем машинное обучение. 32b69ab6446f493f9c43d32978892733. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-32b69ab6446f493f9c43d32978892733. картинка методы обучения с учителем машинное обучение. картинка 32b69ab6446f493f9c43d32978892733.

Мы видим новость о задержании Ираном 10 американских моряков, а также ссылки на связанные новости от агентств Reuters и Bloomberg (обведено красным). Группировка этих новостей является хорошим примером системы машинного обучения без учителя, когда алгоритм учится находить связи между объектами и объединять их.

Другие примеры использования машинного обучения

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

Теперь расскажу немного об упомянутом в начале статьи сервисе Twitter Engagement Predictor, система которого построена на базе нейронной сети. Пример его работы можно увидеть на скриншоте:

методы обучения с учителем машинное обучение. 92f4a1bd72c64bf69f0c5fa4175747d2. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-92f4a1bd72c64bf69f0c5fa4175747d2. картинка методы обучения с учителем машинное обучение. картинка 92f4a1bd72c64bf69f0c5fa4175747d2.

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

При анализе исходных данных, используемых для обучения сети можно обнаружить немало интересных нюансов, например:

методы обучения с учителем машинное обучение. 52e28cd673304831b6897d3591794224. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-52e28cd673304831b6897d3591794224. картинка методы обучения с учителем машинное обучение. картинка 52e28cd673304831b6897d3591794224.

Таблица показывает статистику для твитов пользователей с уровнем Social Authority от 0 до 9, без изображений, без ссылок и упоминаний, содержащих 2 хештега и от 0 до 40 символов текста. Мы видим 1156 таких твитов без ретвитов и только 17 твитов с ретвитами.

Наш алгоритм показывает, что с высокой вероятностью твит с такими параметрами не получит ретвитов, но этот прогноз будет неверным для 1,4% случаев (17 из 1173). Нейронная сеть прогнозирует вероятность получения ретвита в 2,1%.

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

Кроме того, я проверил два дополнительных набора данных (содержащие 470к и 473к примеров) через нейронную сеть, чтобы оценить точность показаний TEP. В абсолютном прогнозе (да/нет) система оказалась права в 81% случаев. Учитывая, что здесь тоже присутствовали около 10% примеров с возможной ошибкой, можно сказать, что результат довольно неплох! По этой причине сервис TEP дополнительно отображает вероятность ретвита в процентах, вместо обычного прогноза (да/нет).

Примеры алгоритмов, которые может использовать Google

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

Алгоритм Пингвин

Одним из подходов к реализации алгоритма Google Penguin может быть построение связей между ссылочными характеристиками, которые могут быть потенциальными индикаторами ссылочного спама:

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

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

Алгоритм Панда

После того, как мы рассмотрели потенциальные возможности алгоритма Пингвин, ситуация немного прояснилась. Теперь представим возможности алгоритма оценки качества контента.

Как машинное обучение влияет на SEO

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

Еще в 2009 году Bing и Google проводили ряд экспериментов, которые показали, что появление даже небольших задержек в результатах поиска значительно влияют на удовлетворенность пользователей. В свою очередь, менее довольные пользователи меньше кликали на рекламные объявления, а поисковые системы получали меньший доход:

методы обучения с учителем машинное обучение. 73e57247a0eb43b59b8e1d79b824b58a. методы обучения с учителем машинное обучение фото. методы обучения с учителем машинное обучение-73e57247a0eb43b59b8e1d79b824b58a. картинка методы обучения с учителем машинное обучение. картинка 73e57247a0eb43b59b8e1d79b824b58a.

Объясняется все это очень просто. У Google полно конкурентов, и это касается не только поиска Bing. Борьба за аудиторию в остальных (непоисковых) сервисах также является формой конкуренции. Здесь уже подключаются Facebook, Apple/Siri и Amazon. Существует множество альтернативных источников получения и обмена информацией, и они каждый день работают над тем, чтобы стать лучше. Поэтому и Google должен.

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

Итак, что это значит?

Учитывая, что повышение удовлетворенности пользователя имеет решающее значение для Google, нам стоит рассматривать этот показатель в качестве основного фактора ранжирования для SEO. Вам нужно научиться измерять его и повышать показатель со временем. Рекомендую задать себе следующие вопросы:

Заключение

Машинное обучение стремительно распространяется. Препятствия для обучения базовых алгоритмов исчезают. Все основные компании на рынке в той или иной мере используют методы машинного обучения. Вот немного информации для чего машинное обучение использует Facebook, а вот как активно вербует специалистов по машинному обучению Apple. Другие компании предоставляют платформы, чтобы облегчить внедрение машинного обучения, например, Microsoft и Amazon.

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

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

Источник

Добавить комментарий

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