Что такое машинное обучение?
Приведены два определения машинного обучения. Артур Сэмюэл описал это как: «Область исследования, которая позволяет компьютерам учиться без явного программирования».
Том Митчелл дает более современное определение: «Говорят, что компьютерная программа учится на опыте E о некотором классе задач T и показателе производительности P, если ее производительность (измеряемая в P) по задаче в T улучшается с опытом E».
Например ?: играть в шахматы
-
E = Многократный опыт игры в шашки
-
T = задача игры в шахматы.
-
P = вероятность того, что программа выиграет следующую игру.
Вообще говоря, любую проблему машинного обучения можно отнести к одной из двух широких категорий: обучение с учителем и обучение без учителя.
контролируемое обучение
В обучении с учителем нам дается набор данных, и мы уже знаем, как должен выглядеть наш правильный вывод, и мы знаем, что существует связь между вводом и выводом.
Проблемы обучения с учителем делятся на проблемы «регрессии» и «классификации».
- В задаче регрессии мы пытаемся предсказать результат в непрерывном выводе, что означает, что мы пытаемся сопоставить входную переменную с некоторой непрерывной функцией.
- В задачах классификации мы пытаемся предсказать результаты в дискретных выходных данных. Другими словами, мы пытаемся сопоставить входные переменные с дискретными категориями.
Пример 1:
Учитывая данные о размерах домов на рынке недвижимости, попробуйте спрогнозировать их цены. Цена как функция масштаба является непрерывным выпуском, поэтому это проблема регрессии.
Мы можем превратить этот пример в проблему классификации, вместо того чтобы на выходе получать информацию о том, «продается ли дом выше или ниже запрашиваемой цены». Здесь мы делим дома на две отдельные категории в зависимости от цены.
Пример 2:
(а) Регрессия. Имея фотографию человека, мы должны предсказать его возраст на основе данной фотографии.
(b) Классификация. Учитывая пациента с опухолью, мы должны предсказать, является ли опухоль злокачественной или доброкачественной.
неконтролируемое обучение
Неконтролируемое обучение позволяет нам решать проблемы, практически не зная, как должны выглядеть результаты. Мы можем вывести структуру из данных, и нам не обязательно знать влияние переменных.
Мы можем получить эту структуру путем кластеризации данных на основе взаимосвязей между переменными в данных.
При неконтролируемом обучении нет обратной связи, основанной на прогнозируемом результате.
пример:
-
Кластеризация: соберите 1 000 000 различных генов и найдите способ автоматически сгруппировать эти гены в группы, которые в чем-то похожи или связаны разными переменными (например, продолжительностью жизни, местоположением, ролью и т. д.).
-
Некластеризация: «алгоритм коктейльной вечеринки», который позволяет найти структуру в загроможденной среде. (т.е. идентификация отдельных голосов и музыки из паутины звуков на коктейльной вечеринке)