Машинное обучение: обзор начала работы для новичков (1)

машинное обучение искусственный интеллект алгоритм Нейронные сети
Машинное обучение: обзор начала работы для новичков (1)

Машинное обучение: обзор начала работы для новичков (1)

определение

Определение энциклопедии Baidu:

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

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

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

Область применения

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

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

Обучение с подкреплением (RL) — это основной алгоритм решения задач в игровой сфере, а знаменитой моделью является AlphaGO. Используемые алгоритмы — это глубокая нейронная сеть (DNN) (которая включает в себя CNN и другие типы глубоких нейронных сетей), методы Монте-Карло, Q-обучение и т. д., первые два из которых работают при наличии больших объемов данных.

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

академический

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

Конференции высшего уровня или высокого уровня:
Область машинного обучения: ICML, NIPS, COLT, ECML
Гибрид компьютерного зрения и машинного обучения: CVPR, ICCV, ECCV
Смесь машинного обучения и интеллектуального анализа данных: AAAI, IJCAI
В основном в области интеллектуального анализа данных: KDD, SDM, ICDM
Другие известные области машинного обучения: UAI, AISTATS.
Другие известные области интеллектуального анализа данных: CIKM, PKDD
В основном в направлении баз данных, некоторые включают машинное обучение и интеллектуальный анализ данных: SIGMOD, VLDB, ICDE.
Поле пересечения: WWW,SIGIR
Журналы высшего или высокого уровня:
Области, связанные с машинным обучением:
TPAMI, IJCV,JMLR
Поля, связанные с интеллектуальным анализом данных:
TKDE,TKDD,TIST,TODS,TOIS,KIS
Автор: Знай пользователя
Ссылка: https://www.zhihu.com/question/20224890/answer/136485243
Источник: Чжиху

Общие модели

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

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

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

  1. Функция ошибки (потери) (функция потери): обычно используется функцияmse(функция среднеквадратичной ошибки)
  2. Функция оптимизации (оптимизатор): включая алгоритм градиентного спуска (Gradient Descent), метод Ньютона и производные, такие какsgd(Стохастический градиентный спуск),Levenberg–Marquardtалгоритмы и т.д.

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

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

На основе линейной регрессии общая структура аналогична, за исключением того, что функция активации добавляется к конечному результату. В эффекте конечного вывода последний вывод в биномиальной классификации равен 1 или 0, что указывает на то или иное. Результатом полиномиальной классификации является вектор, размерность которого равна количеству категорий n (или дополнительный элемент n+1 равен 1, если цель не принадлежит ни к какой категории), например [0 0 1 0 0].

  1. Функция потерь: функция кросс-энтропийных потерь
  2. Функция активации: Обычно используемые функции активации:sigmoidфункция (для биномиальной классификации),softmaxфункция (для полиномиальной классификации).

Полиномиальную классификацию иногда называют регрессией softmax.

изображение сигмовидной функции - справочный источник: энциклопедия Baidu

Машина опорных векторов

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

Источник ссылки на изображение: Знать https://www.zhihu.com/question/21094489

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

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

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

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

Нейронная сеть в машинном обучении на самом деле относится к нейронной сети с прямой связью (Feedforward Neural Network), обратная связь будет дана немедленно. Нейронная сеть состоит из трех частей: входного слоя, скрытого слоя и выходного слоя. Среди них наиболее сложным и изменчивым является скрытый слой, который образует различные сложные нейронные сети за счет различных методов соединения в скрытом слое. Сила самой нейронной сети, по мнению автора, заключается в самоизвлечении признаков.По мере постепенного углубления сети извлекаемые признаки постепенно меняются с низкоуровневых на высокоуровневые, что также немаловажно. Сети CNN можно использовать для миграции.Одна из причин обучения.

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

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

Источник изображения: https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2018/1/10/160e06eadc4d24f8~tplv-t2oaga2asx-image.image.

Глубина нейронной сети

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

Состав нейронной сети

Вообще говоря, в формуле самой простой нейронной сети есть три основных параметра: a, w и b. где a — значение нейрона, w — веса, а b — параметр смещения. В дополнение к этим трем важным параметрам есть g для представления функции активации, поэтому значение последнего слоя может быть получено как g(aw + b).

Алгоритм обратного распространения для нейронных сетей

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

Активационная функция нейронной сети

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

Общие функции активации:ранее упоминалиsigmoidфункция,softmaxфункция, иtanhфункцию и знаменитыйReLuфункции, ее появление значительно ускорило скорость обучения глубоких нейронных сетей. иRMSpropфункция иAdamфункций, а их наличие в какой-то степени устраняет проблему раскачивания алгоритма в процессе оптимизации. после этогоAdamпроизводные от других функций активации.

Представление функции активации в нейронной сети:Сама функция активации также является нейронным слоем в нейронной сети, но она просто применяет функцию активации к результату предыдущего слоя, а затем напрямую передает результат на следующий слой.