Step1. Экспертные системы. Мир логичен, компетенции можно записать в коде. Подход IF-ELSE. Это "машинное обучение", да.
Step2. Feature mining. Строгое доказательство того, что двухслойная нейросеть может апроксимировать (почти) любую корреляцию методом back error propagation, осталось подать на вход данные. Выясняется что лучшие результаты достигаются на неочевидных форматах представления данных. Эпоха "ручного майнинга фичей".
Step3. Stochastic gradient boost. Градиентный бустинг и растущие вычислительные мощности позволяют обучать глубокие нейронные сети. Сеть 5 слоев по 32 нейрона в разы лучше 2х1024. SGB рождает такие подходы как unsupervised learning и convolutional network. Эпоха глубоких нейронных сетей.
Step 4. Маленькие нейросети объединяют в структурные блоки, итоговую сеть собирают из их набора. Attention unit, short memory unit, long memory unit, etc. Реализованы сверточные, генеративные, трансформеры. Эпоха архитектур. Мы находимся здесь.
Проблемы текущего этапа: результаты конкретной архитектуры чувствителльны к объему, формату, качеству данных и "внутреннему смыслу" решаемой задачи. Т.е. архитектура, работающая для классификации котиков на уровне сравнимом или лучше с человеком не работает для классификации собачек, при прочих равных в наборе данных. Архитектура, работавшая на 1000 посетителей сайта не работает на 3000 посетителей. Работавшая на жителях СНГ не применима к североамериканцам. Ни о каком "common vision" речи не идет, подгон параметров под конкретные данные. Крайняя неуниверсальность, немастабируемость и непереносимость решений. Сотни людей на кагле брутфорсят архитектуры, выжимая лишние 0.0001% MSE, отделяющие первое место от второго, и результат их работы не применим ни к чему, кроме вот этого конкретного конкурсного набора данных.
Кстати, а можно ли говорить о "common vision" у человека? Мозг человека, обученный различать белых европеоидов, начинает лажать, если нужно различать, например, китайцев. И требует сильного дообучения. Разные люди различают разные вещи. Особенность нервной системы многих млекопитающих в том, что она способна к дообучению. По поводу архитектуры мозга: она достаточно избыточна, плюс она достраивается и настраивается во время первых лет жизни. И итоговая даже архитектура может отличаться на мелком уровне, я уж не говорю про их работу. А что значит различать котиков? Различать их по породам? Отличать одного котика от другого?