Контролируемое обучение

  • Классификация - дискретный выход
  • Регрессия - непрерывный вывод

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

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

Пример использования классификации. Имея набор данных электронных писем (например, ENRON), вы хотите классифицировать, считается ли электронное письмо спамом.

Пример использования регрессии: учитывая список координат x и y, когда я даю еще один x, каков будет прогнозируемый y?

Неконтролируемое обучение

  • Изучите и поймите основную структуру данных

Обучение без учителя - это, по сути, обработка и анализ данных посредством исследования и группировки. Полученные знания можно использовать для обучения с учителем и других методов машинного обучения. Например, я могу сгруппировать набор 2D точек по Евклидову расстоянию в 3 группы, а затем пометить каждую группу. Затем я могу использовать центроид (среднее значение) каждого «кластера» для контролируемого обучения при появлении новой точки. Он может дать ответ на вопрос «какой группе / метке я должен назначить новую точку?»

Важные идеи, которые стоит отметить / изучить: кластеризация, максимизация ожиданий, восхождение на гору, имитация отжига, генетические алгоритмы, разработка функций (PCA, ICA и т. д.)

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

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

  • Научитесь действовать / следовать «политике», чтобы получить наибольшее вознаграждение

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

Важные идеи, которые стоит отметить / изучить: MDP, итерация ценности (полезности), итерация политики, Q-Learning

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

Разные термины в отрасли

Это смесь трех перечисленных выше или помогает подготовиться к перечисленным выше.

Большие данные - в основном инженерия данных / манипуляции / споры: вы очищаете, импортируете и создаете конвейер данных для неприлично большого объема данных (ГБ, или ТБ, или даже ПБ данных). Это создает основу для всего обучения.

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

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

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

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

Выводы

Вы можете погрузиться в одну из трех или изучить одну из разных тем. Я рекомендую пройти некоторые курсы вероятности и статистики, а затем пройти вводный курс по машинному обучению для более глубокого освещения того, что я упомянул. Два из них настоятельно рекомендуются: Курс машинного обучения Coursera, преподаваемый Эндрю Нг, и курс машинного обучения Udacity, преподаваемый Чарльзом Исбеллом и Майклом Литтманом.

tl; dr машинное обучение чертовски круто.

Надеюсь, вам понравится узнавать больше самостоятельно! :)