Глубокое обучение — различия между версиями
Evaleria (обсуждение | вклад) м (→Определение)  | 
				 (→История)  | 
				||
| Строка 21: | Строка 21: | ||
Начиная с 2012 года машинное обучение во-многом фокусируется на глубоких сетях. Искусственный интеллект и машинное обучение обычно упоминаются в контексте глубокого обучения.  | Начиная с 2012 года машинное обучение во-многом фокусируется на глубоких сетях. Искусственный интеллект и машинное обучение обычно упоминаются в контексте глубокого обучения.  | ||
| − | Глубокое обучение используется [  | + | Глубокое обучение используется [[Глубокое обучение#Применения | во-многих сферах]].  | 
== Определение ==    | == Определение ==    | ||
Версия 22:34, 10 декабря 2018
Глубокое обучение (англ. deep learning) — совокупность широкого семейства методов машинного обучения, основанных на обучении представлениям, а не специализированным алгоритмам под конкретные задачи. Глубокое обучение может быть с учителем, с частичным привлечением учителя, без учителя и с подкреплением. Несмотря на то, что данный раздел машинного обучения появился еще в 1980-х, до недавнего времени его применение было сильно ограничено из-за недостака вычислительных мощностей существовавших компьютеров. Ситуация изменилась только в середине 2000-х.
На создание моделей глубокого обучения оказали влияние некоторые процессы и паттерны, происходящие в биологических нейронных системах. Несмотря на это, данные модели во многом отличаются от биологического мозга (и в структуре и в функциях), что делает невозможным использование теорем и доказательств, применяющихся в нейробиологии.
Содержание
История
- 1943 — Искусственный нейрон Маккаллока — Питтса[1] — узел искусственной нейронной сети, являющийся упрощённой моделью естественного нейрона.
 - 1949 — Принцип обучения нейронов Хебба[2] — изначально наблюдаемая причинно-следственная связь между активациями пре- и постсинаптического нейрона имеет тенденцию к усилению.
 - 1957 — Модель перцептрона предложена Фрэнком Розенблаттом[3] — математическая или компьютерная модель восприятия информации мозгом.
 - 1960 — Дельта-правило обучения перцептрона[4] — метод обучения перцептрона по принципу градиентного спуска по поверхности ошибки.
 - 1969 — Выход книги Марвина Минска и Сеймура Паперта "Перцептроны"[5]. В данной книге математически показаны ограничения перцептронов.
 - 1974 — Метод обратного распространения ошибки впервые предложен А. И. Галушкиным и Дж. Вербосом[6] — метод вычисления градиента, который используется при обновлении весов многослойного перцептрона.
 - 1980 — Первая свёрточная нейронная сеть предложена Кунихико Фукусимой[7] — специальная архитектура искусственных нейронных сетей использующая некоторые особенности зрительной коры.
 - 1982 — Рекуррентные нейронные сети предложены Д. Хопфилдом — вид нейронных сетей, где связи между элементами образуют направленную последовательность.
 - 1991 — Проблема "исчезающего" градиента была сформулирована С. Хочрейтом. Проблема "исчезающего" градиента заключается в быстрой потере информации с течением времени.
 - 1997 — Долгая краткосрочная память предложена С. Хочрейтом и Ю. Шмидхубером[8]. В отличие от традиционных рекуррентных нейронных сетей, LSTM-сеть хорошо приспособлена к обучению на задачах классификации, обработки и прогнозирования временных рядов в случаях, когда важные события разделены временными промежутками с неопределённой продолжительностью и границами.
 - 1998 — Градиентный спуск для сверточных нейронных сетей предложен Я. Лекуном.
 - 2006 — Публикации Г. Хинтона, С. Осиндера и Я. Теха об обучении сетей глубокого доверия. Данные публикации, а также их активное освещение в средствах массовой информации смогли привлечь внимание ученых и разработчиков со всего мира к глубоким сетям.
 - 2012 — Предложение дропаута Г. Хинтоном, А. Крижевски и И. Шутковичем[9]. Дропаут (от англ. dropout) — метод регуляризации искусственных нейронных сетей, предназначен для предотвращения переобучения сети.
 - 2012 — Нейронные сети побеждают в ImageNet Challenge[10]. Данное событие ознаменовало начало эры нейронных сетей и глубокого обучения.
 
Начиная с 2012 года машинное обучение во-многом фокусируется на глубоких сетях. Искусственный интеллект и машинное обучение обычно упоминаются в контексте глубокого обучения.
Глубокое обучение используется во-многих сферах.
Определение
Глубокое обучение — это класс алгоритмов машинного обучения, который:
- Использует многослойную систему нелинейных фильтров для извлечения признаков с преобразованиями. Каждый последующий слой получает на входе выходные данные предыдущего слоя.
 - Может сочетать алгоритмы обучения с учителем (пример — классификация) и без учителя (пример — анализ образца).
 - Формирует в процессе обучения слои выявления признаков на нескольких уровнях представлений, которые соответствуют различным уровням абстракции; при этом признаки организованы иерархически — признаки более высокого уровня являются производными от признаков более низкого уровня.
 
Нейронные сети
- Искусственные нейронные сети (англ. artificial neural networks (ANN))[11]
 - Глубокие нейронные сети (англ. deep neural network (DNN))[12]
 
Применения
- Распознавание речи[13]. Все основные коммерческие системы распознавания речи (например, Microsoft Cortana, Xbox, Skype Translator, Amazon Alexa, Google Now, Apple Siri, Baidu и iFlyTek) основаны на глубоком обучении.
 - Компьютерное зрение[на 06.12.18 не создан]. На сегодняшний день системы распознавания образов основанные на глубоком обучении уже умеют давать более точные результаты, чем человеческий глаз[14].
 - Обработка естественного языка[15]. Нейронные сети использовались для реализации языковых моделей еще с начала 2000-х годов. Изобретение LSTM помогло улучшить машинный перевод и языковое моделирование[16].
 - Обнаружение новых лекарственных препаратов. К примеру, нейронная сеть AtomNet использовалась для прогнозирования новых биомолекул — кандидатов для лечения таких заболевания, как вирус Эбола и рассеянный склероз.
 - Рекомендательные системы[17]. На сегодняшний день глубокое обучение применяется для изучения пользовательских предпочтений во многих доменах.
 - Предсказание генномных онтологий в биоинформатике[18].
 
Полный список возможных применений глубокого обучения[19].
Фреймворки для глубокого обучения
- TensorFlow[20]
 - Microsoft Cognitive Toolkit[21]
 - Wolfram Mathematica[22]
 - Keras[23]
 - Deeplearning4j[24]
 - Caffe[25]
 - Torch/PyTorch[26]
 - MXNet[27]
 - Chainer[28]
 
Сопоставление фреймворков, библиотек и отдельных программ для глубокого обучения[29].
См. также
- Нейронные сети, перцептрон[на 06.12.18 не создан]
 - Сверточные нейронные сети[на 06.12.18 не создан]
 - Рекуррентные нейронные сети[на 06.12.18 не создан]
 - Обучение с подкреплением[на 06.12.18 не создан]
 
Примечания
- ↑ Artificial neuron, Wikipedia
 - ↑ Hebbian theory, Wikipedia
 - ↑ Perceptron, Wikipedia
 - ↑ Delta rule, Wikipedia
 - ↑ Perceptrons book, WIkipedia
 - ↑ Backpropagation, Wikipedia
 - ↑ Convolutional_neural_network, Wikipedia
 - ↑ Long short-term memory, Wikipedia
 - ↑ Dropout, Wikipedia
 - ↑ ImageNet Challenge, Wikipedia
 - ↑ Artificial neural network, Wikipedia
 - ↑ Deep neural networks , Wikipedia
 - ↑ Speech recognition, Wikipedia
 - ↑ Multi-column deep neural network for traffic sign classification
 - ↑ Natural language processing, Wikipedia
 - ↑ Sequence to Sequence Learning with Neural Networks
 - ↑ Recommender system, Wikipedia
 - ↑ Deep learning in bioinformatics, Wikipedia
 - ↑ Applications of deep learning, Wikipedia
 - ↑ TensorFlow, Wikipedia
 - ↑ Microsoft Cognitive Toolkit, Wikipedia
 - ↑ Wolfram Mathematica, Wikipedia
 - ↑ Keras, Wikipedia
 - ↑ Deeplearning4j, Wikipedia
 - ↑ Caffe, Wikipedia
 - ↑ PyTorch — ваш новый фреймворк глубокого обучения, habr
 - ↑ MXNet, official site
 - ↑ Chainer, official site
 - ↑ Comparison of deep learning software, Wikipedia