Hub AI&BigData meetup / Дмитрий Сподарец: Введение в машинное...
-
Upload
hub-it-school -
Category
Data & Analytics
-
view
362 -
download
2
Transcript of Hub AI&BigData meetup / Дмитрий Сподарец: Введение в машинное...
История искусственного интеллекта• Появление предпосылок AI (1943 – 1955)
• Рождение AI (1956) / Двухмесячный семинар в Дартмуте
• Ранний энтузиазм, большие ожидания (1952 – 1969)
• Столкновение с реальностью (1966 – 1973)
• Системы, основанные на знаниях – ключ к успеху? (1969 – 1979)
• Превращение AI в индустрию (1980 – …)
• Возвращение к нейронным сетям (1986 – …)
• Превращение AI в науку (1987 – …)
• Интеллектуальные агенты (1995 – …)
• Доступность больших баз данных (2001 – …)
История машинного обучения• Нейронные сети - Перспептрон (Розенблатт, 1958)
• Когнитрон (Фукушима, 1975)
• Метод опорных векторов (1990е)
• Бустинг (конец 1990х)
• Рандомизированный решающий лес (начало 2000х)
• Обучение Марковских случайных полей (2000е)
• Глубокое обучение (2006)
Машинное обучение: определение
• Машинное обучение — обширный подраздел искусственного интеллекта, изучающий методы построения алгоритмов, способных обучаться.
ru.wikipedia.org
Машинное обучение: определение
• Машинное обучение — процесс, в результате которого машина (компьютер) способна показывать поведение, которое в нее не было явно заложено (запрограммировано).
A.L. Samuel
Машинное обучение: определение
• Говорят, что компьютерная программа обучается на основе опыта E по отношению к некоторому классу задач T и меры качества P, если качество решения задач из T, измеренное на основе P, улучшается с приобретением опыта
E. T.M.Mitchell
Суть машинного обученияОбучающаяся программа
Примеры данных с закономерностями
Модельзакономерности
Поиск закономерностей в новых данных
Сферы приложения• Компьютерное зрение (computer vision)
• Распознавание речи (speech recognition)
• Компьютерная лингвистика и обработка естественных языков (natural language processing)
• Медицинская диагностика
• Биоинформатика
• Техническая диагностика
• Финансовые приложения
• Информационный поиск
• …
Аппарат• Линейная алгебра
• Теория вероятностей и математическая статистика
• Методы оптимизации
• Численные методы
• Математический анализ
• Дискретная математика
• и др.
Классификация задач машинного обучения• Дедуктивное обучение (экспертные системы)
• Индуктивное обучение (≈ статистическое обучение)
• Обучение с учителем
• Обучение без учителя
• Обучение с подкреплением (reinforcement learning)
• Активное обучение
• . . .
Дедуктивное или аналитическое обучение (экспертные системы)
• Имеются знания, сформулированные экспертом и как-то формализованные.
• Программа выводит из этих правил конкретные факты и новые правила.
Обучение с учителем• Обучаем машину на примерах (данные + требуемое решение)
• Алгоритм сохраняет «значение» о примерах во внутренней математической модели
• Предсказываем новые данные, используя обученную модель
Основная суть: обучая машину на исходных данных и зная ответ для этих данных, получить ответ для новых данных.
Обучение без учителя
• Загружаем в машину какой-то набор данных
• Машина может самостоятельно проанализировать загруженные данные и сгруппировать их или предложить вам набор инсайтов
Основная суть: не зная ответ совсем - получаем ответ.
Основные типы задач• Обучение с учителем
• Классификация
• Регрессия
• Обучение без учителя
• Кластеризация
• Определение выбросов
• Гибридные
• Коллаборативная фильтрация (рекомендации)
Метод классификации k-ближайших соседей в Rlibrary(ElemStatLearn)
require(class)
x <- mixture.example$x
g <- mixture.example$y
xnew <- mixture.example$xnew
mod15 <- knn(x, xnew, g, k=15, prob=TRUE)
prob <- attr(mod15, "prob")
prob <- ifelse(mod15=="1", prob, 1-prob)
px1 <- mixture.example$px1
px2 <- mixture.example$px2
prob15 <- matrix(prob, length(px1), length(px2))
par(mar=rep(2,4))
contour(px1, px2, prob15, levels=0.5, labels="", xlab="", ylab="", main=
"15-nearest neighbour", axes=FALSE)
points(x, col=ifelse(g==1, "coral", "cornflowerblue"))
gd <- expand.grid(x=px1, y=px2)
points(gd, pch=".", cex=1.2, col=ifelse(prob15>0.5, "coral", "cornflowerblue"))
box()
http://stats.stackexchange.com/questions/21572/how-to-plot-decision-boundary-of-a-k-nearest-neighbor-classifier-from-elements-o
Примеры задач классификации• Медицинская диагностика: по набору медицинских характеристик требуется поставить диагноз
• Геологоразведка: по данным зондирования почв определить наличие полезных ископаемых
• Оптическое распознавание текстов: по отсканированному изображению текста определить цепочку символов, его формирующих
• Кредитный скоринг: по анкете заемщика принять решение о выдаче/отказе кредита
• Синтез химических соединений: по параметрам химических элементов спрогнозировать свойства получаемого соединения
Линейная регрессияdata <- read.csv('~/git/R-Linear-Regression/rosn.txt', sep='\t')
fit <- lm(data$ROSN ~ data$BRN )
plot(data$ROSN~data$BRN, xlab="ROSN", ylab="BRN")
abline(fit)
summary(fit)http://www.algorithmist.ru/2011/04/linear-regression-with-examples-in-r.html
Примеры задач регрессии• Оценка стоимости недвижимости: по характеристике района, экологической обстановке, транспортной связности оценить стоимость жилья
• Прогноз свойств соединений: по параметрам химических элементов спрогнозировать температуру плавления, электропроводность, теплоемкость получаемого соединения
• Медицина: по постоперационным показателям оценить время заживления органа
• Кредитный скоринг: по анкете заемщика оценить величину кредитного лимита
• Инженерное дело: по техническим характеристикам автомобиля и режиму езды спрогнозировать расход топлива
Примеры задач кластерного анализа• Экономическая география: по физико-географическим и экономическим показателям разбить страны мира на группы схожих по экономическому положению государств
• Финансовая сфера: по сводкам банковских операций выявить группы «подозрительных», нетипичных банков, сгуппировать остальные по степени близости проводимой стратегии
• Маркетинг: по результатам маркетинговых исследований среди множества потребителей выделить характерные группы по степени интереса к продвигаемому продукту
• Социология: по результатам социологических опросов выявить группы общественных проблем, вызывающих схожую реакцию у общества, а также характерные фокус-группы населения
Примеры задач идентификации• Медицинская диагностика: по набору медицинских характеристик требуется установить наличие/отсутствие конкретного заболевания
• Системы безопасности: по камерам наблюдения в подъезде идентифицировать жильца дома
• Банковское дело: определить подлинность подписи на чеке
• Обработка изображений: выделить участки с изображениями лиц на фотографии
• Искусствоведение: по характеристикам произведения (картины, музыки, текста) определить, является ли его автором тот или иной автор
Примеры задач прогнозирования• Биржевое дело: прогнозирование биржевых индексов и котировок
• Системы управления: прогноз показателей работы реактора по данным телеметрии
• Экономика: прогноз цен на недвижимость
• Демография: прогноз изменения численности различных социальных групп в конкретном ареале
• Гидрометеорология: прогноз геомагнитной активности
Примеры задач извлечения знаний• Медицина: поиск взаимосвязей (синдромов) между различными показателями при фиксированной болезни
• Социология: определение факторов, влияющих на победу на выборах
• Генная инженерия: выявление связанных участков генома
• Научные исследования: получение новых знаний об исследуемом процессе
• Биржевое дело: определение закономерностей между различными биржевыми показателями
Онлайн курсы/лекции
• https://yandexdataschool.ru/edu-process/courses/machine-learning
• https://www.coursera.org/learn/introduction-machine-learning
• https://www.coursera.org/learn/machine-learning
• https://www.youtube.com/watch?v=qLBkB4sMztk
The Home of High Performance ComputingCompute / Manage data / Collaborate
http://www.flyelephant.net/