Всем привет, с вами снова Павел Бузин. Нобелевская неделя принесла несколько замечательных новостей, которые окажут серьезное влияние на развитие отраслей, связанных с машинным обучением и искусственным интеллектом.
Первая новость — Нобелевская премия по физике 2024 года присуждена Джону Хопфилду (John J. Hopfield) и Джефри Хинтону (Geoffrey E. Hinton) за исследования в области нейронных сетей.
Вторая новость — Нобелевская премия по химии 2024 года присуждена Дэвиду Бейкеру (David Baker), Демису Хассабису (Demis Hassabis) и Джону Джамперу (John M. Jumper). Оба лауреата удостоены премии за исследования белков с применением AI-технологий, а по сути — с применением нейронных сетей.
Третьей новостью можно считать то, что эти решения практически не вызывают возражений в условиях неоднократных обвинений Нобелевского комитета в предвзятости и ангажированности. Достойная работа ученых получила заслуженные высокую оценку и награду.
Как аналитик компании-провайдера облачных и AI-технологий, который работает с нейросетями каждый день, предлагаю обратиться к первоисточникам и посмотреть на суть достижений нобелевских лауреатов по физике, а конкретно — на физическую составляющую открытий и их дальнейшее применение. Про химию поговорим чуть позже.
Как известно, регламент присуждения Нобелевских премий не раскрывает кандидатов, и процессы отбора наивысших научных достижений по разным направлениям независимы. Такие решения Нобелевского комитета буквально юридически фиксируют, что нейронные сети стали важной частью знаний и технологий человеческой цивилизации. Давайте отмотаем время назад и посмотрим, с чего же все начиналось.
Идеи МакКаллоха и Питтса
Начало нейронным сетям положили идеи Уорена МакКаллоха (Warren S. McCulloch) и Уолтера Питтса (Walter Pitts). В 1943 году они опубликовали статью A LOGICAL CALCULUS OF THE IDEAS IMMANENT IN NERVOUS ACTIVITY («Логическое исчисление идей, присущих нервной деятельности»), в которой применили математический аппарат логики для описания и формализации процессов, происходящих при взаимодействии нейронов.
В этой статье они предложили математическое описание для процессов, которые в дальнейшем стали описываться функциями активации перцептрона, а также описали:
-
задержки в активации нейрона;
-
влияние предыдущего состояния нейрона на процесс возбуждения этого нейрона;
-
инерцию реакции нейрона;
-
неизменность нейронной сети со временем.
Дополнительно авторы ввели понятия временнóе пропозициональное выражение (temporal propositional expression, TPE) и временнáя пропозициональная функция (temporal propositional function, TPF), т. е. функции и выражения, позволяющие описать высказывания, состоящие из нескольких логических утверждений, и их изменение со временем.
Также МакКаллох и Питтс доказали несколько теорем, в том числе подтвердили, что временнóе пропозициональное выражение может быть реализовано сетью нулевого порядка и описали свойства TPE. Проще говоря, ученые установили, что можно задавать логические функции с помощью сети нейронов.
Перцептрон Розенблатта
Следующей значительной вехой развития нейросетей стала математическая модель нейрона, предложенная в 1957 году Фрэнком Розенблаттом (Frank Rosenblatt).
Фрэнк Розенблатт предложил алгебраическую модель нейрона, получившую название перцептрон. Перцептрон связывает поступающие на вход нейрона сигналы и выходной сигнал с помощью линейных алгебраических функций. Компоненты входного сигнала xi суммируются с весами wi, и к полученному результату применяется функция активации, имитирующая прохождение сигнала от нейрона в возбужденном состоянии и отсутствие сигнала при уровне возбуждения ниже порога. Математически это записывают так:
Если описанное выше кажется слишком сложным, давайте упростим: Фрэнк Розенблатт предложил модель, которая имитирует работу нейрона. Он работает как настраиваемый «черный ящик», принимая на вход разные сигналы. Каждому сигналу присваивается «вес»: у звонка от начальника вес выше, чем от очередных спамеров, например. Затем перцептрон складывает сигналы с учетом их важности. Есть специальное условие — порог. Если общая важность сигналов превышает этот порог, перцептрон выдает сигнал. Если нет — он молчит.
Такая модель позволила создавать математическое описание наборов нейронов, связанных последовательно в виде многослойных структур, которые получили название «нейронные сети». Сам перцептрон для простоты именуют нейроном, имея в виду именно математическую модель.
У сетей из набора перцептронов Розенблатта есть много замечательных свойств, из которых я обязательно должен упомянуть три:
-
возможность обучения;
-
возможность уже при двух слоях реализовать весь базисный набор команд булевой логики: AND, OR, NOT и XOR;
-
повышение точности при увеличении числа слоев.
Возможность обучения появляется в тот момент, когда мы начинаем менять веса нейронов так, чтобы выходной сигнал был ближе к ожидаемому. Процесс получил название «обучение с учителем», эта тема широко известна и описана во многих источниках. Поэтому сразу перейду к менее очевидным, но интересным свойствам.
Способность многослойного перцептрона уже при двух слоях реализовывать базисный набор команд булевой логики AND, OR, NOT и XOR открыла возможность строить модели, эмулирующие любой процесс формальной математической логики практически неограниченной сложности, а также создавать нейросети, имитирующие поведение непрерывных функций.
Ученые были удивлены, когда обнаружили, что многослойные нейронные сети, содержащие 10 и более слоев, стали успешно справляться с распознаванием изображений. Этот эффект был экспериментально подтвержден в 2021 году командой с участием Алекса Крижевского, Джеффри Хинтона и Ильи Суцкевера (также известного своей работой в OpenAI над моделями GPT) и получил название Deep Learning. Разработанная ими архитектура сверточной нейронной сети под названием AlexNet вызвала взрывной рост успехов, интереса и инвестиций в области нейронных сетей и машинного обучения.
В многослойные нейронные сети на основе перцептрона Розенблатта нашли очень широкое применение при создании сверточных и рекуррентных нейронных сетей, решения задач регрессии, классификации и многих других.
Джеффри Хинтон и обратное распространение ошибки
Каждый, хотя бы немного знакомый с обучением нейронных сетей, знает про обратное распространение ошибки — backpropagation. Автором этого метода является Джеффри Хинтон, который в 1986 году вместе с Дэвидом Румельхартом (David E. Rumelhart) и Рональдом Вильямсом (Ronald J. Williams) описал новую процедуру обучения нейронных сетей в статье Learning representations by back-propagating errors.
В оригинальной статье они использовали в качестве функции активации логистическую функцию — сигмоиду:
Высокая вычислительная эффективность алгоритма обуславливается тем, что для производной этой сигмоиды выполняется равенство: y’ = y*(1-y).
Это значит, что вместо нахождения производной численными методами (считать функцию во многих последовательных точках, повторять так много раз, уменьшая шаг по оси x) мы вычисляем ее через арифметические операции со значениями самой функции (в одну операцию по формуле, где нужно всего лишь перемножить пару значений функции).
Дальнейшее развитие этих идей позволило найти другие эффективные функции активации, включая ступенчатую функцию, гиперболический тангенс, ReLU и другие.
Помимо широко используемого в настоящее время метода обратного распространения ошибки Джеффри Хинтон исследовал модели машины Больцмана, Mixture-of-Experts (привет OpenAI и GPT-4) и многое другое.
И небольшое историческое отступление. Интересная подробность, которую раскопали историки — Джеффри Хинтон является правнуком Джорджа Буля (George Boole), создателя математической логики и булевой алгебры.
Нейронная сеть Кохонена
В 1988 году финский исследователь Тейво Кохонен (Teuvo Kohonen) предложил на выходе многослойной нейронной сети ставить дополнительный слой, работающий по принципу Winner-take-all (победитель получает все). При анализе алгоритма работы сети Кохонена финальное решение выглядит так:
-
на выходе каждый из нейронов голосует за принадлежность к определенному классу с определенным уровнем сигнала, обычно пропорциональным вероятности реализации именно этого класса;
-
слой Кохонена выбирает максимальный уровень сигнала и присваивает ему значение 1;
-
остальные выходные сигналы — зануляются.
Такая архитектура позволяет эффективно решать задачи кластеризации, а подход Кохонена получил название «векторное квантование».
Сети с памятью
Многослойные перцептроны и сети Кохонена обладают одним важным свойством: при работе сети сигнал движется последовательно от входного слоя до выходного, без петель и циклов. Такие сети получили название Feedforward Neural Network — сети прямого распространения.
При этом существует множество задач, когда необходимо знать значения в предшествующий момент времени. Самая важная их часть — задачи обработки естественного языка. Например, значение следующего слова в предложении зависит от предыдущего, а также от семантики конкретного языка.
Особенно ярко это выражено в английском языке. Сравните два выражения: John called Mark и Mark called John. Кто первый в предложении — тот и позвонил другому. Но y feedforward-сетей нет возможностей различить эти два случая — вектора John, called и Mark поступают на вход одновременно.
Для анализа этих и других выражений нейросеть должна иметь возможность учитывать значения сигнала на предыдущем шаге, а, значит, появляется необходимость подать на вход нейрона выходные сигналы этого и других нейронов. В связях нейронов появляются петли и циклы, а такие архитектуры получили название рекуррентные.
В процессе развитие рекуррентных сетей выделяются три важнейших события:
-
Работы Джона Хопфилда 1982 года — создание архитектуры сети с ассоциативной памятью.
-
Работы Майкла Мозера (Michael C. Mozer) 1988 года и его последователей, Зеппа Хохрайтера (Sepp Hochreiter) и Юргена Шмитхубера (Jürgen Schmidhuber), которые привели в 1997 году к созданию ячейки с памятью LSTM.
-
Появление в недрах Google архитектуры трансформеров 2017 году, с которой стартовала эпоха генеративных и больших языковых моделей. Посвященная трансформерам статья Attention Is All You Need является, по разным оценкам, самой цитируемой статьей в области нейронных сетей и машинного обучения.
Результаты развития идей Джона Хопфилда многие читатели используют уже сейчас в виде различных версий ChatGPT, GigaChat, YandexGPT и других моделей.
А при чем тут физика?
В свете сказанного не вызывает сомнений полезность открытий и Джона Хопфилда, и Джеффри Хинтона, их роль и влияние на развитие науки, технологий машинного обучения и нейросетей. Нобелевский комитет оценил это по достоинству с формулировкой for foundational discoveries and inventions that enable machine learning with artificial neural networks («за фундаментальные открытия и изобретения, сделавшие возможным машинное обучение для искусственных нейронных сетей»).
Как я упомянул выше, это не вызывает возражений. Но у внимательного читателя возникнет закономерный вопрос: а при чем тут физика? Вторым вопросом может быть — за что именно получил премию Джеффри Хинтон? Давайте чуть подробнее.
Энергетические модели
В этом пункте я опишу некоторые физические модели, которые позволили создать математические методы, примененные в машинном обучении. Эта часть для физиков-скептиков. Если же вы не очень знакомы с физикой и просто хотите узнать, в чем же там дело с Нобелевской премией, можете пропустить этот пункт без потерь.
Один из фундаментальных законов природы — закон сохранения энергии. Он помогает вычислить, как система будет меняться со временем и каким будет ее конечное состояние, а также определить стабильные (равновесные) состояния, в которых эта система может находиться.
Для тех, кто любит посложнее
Другим важным принципом является принцип наименьшего действия. Действие как физическая величина определяется через функцию Лагранжа L(φi) (еще ее называют лагранжиан), где φi — обобщенные координаты (координаты, скорости, угловые скорости и т. д, соответствующие степеням свободы системы).
Например, для механической системы лагранжиан L = T – V — разность между кинетической и потенциальной энергиями системы (в квантовом и релятивистском пределах лагранжиан системы записывается сложнее), или в другой записи:
q — вектор обобщенных координат системы.
— вектор обобщенных скоростей системы.
Другой подход к описанию, предложенный Уильямом Гамильтоном (William Hamilton) в 1833 году, опирается на описание системы в терминах обобщенных координат и импульсов. Функция Гамильтона (гамильтониан) для системы с n степеней свободы.
H(p, q, t), где p – вектор обобщенных импульсов, q — вектор обобщенных координат. Гамильтониан и лагранжиан системы связаны уравнением Лежандра:
Прелесть этого подхода в том, что мы сразу получаем уравнения, описывающие систему, в виде дифференциальных уравнений первого порядка:
И нам не нужно последовательно следить за каждым шагом эволюции системы.
В 1925 году Эрнст Изинг (Ernst Ising) опубликовал статью «Вклад в теорию ферромагнетизма», в которой исследовал поведение систем, каждый элемент которых может принимать одно из двух четко выраженных состояний (спин атома). При этом вероятность принять одно или другое состояние зависит от энергии атомов (~ температуре T) и определяется распределением Больцмана.
Изинг решил эту задачу в терминах гамильтоновой механики, получив уравнение для гамильтониана системы в виде:
где Ji,j — описывает поведение системы (J > 0 — ферромагнетизм, «магнитный», все спины выстраиваются в одном направлении, J < 0 — антиферромагнетизм, соседние спины противоположны и противодействуют друг другу, J = 0 — спины распределяются случайно и не взаимодействуют).
Величина σi — описывает направление спина и принимает одно из двух значений — {-1, +1}.
Модель Изинга описывает случай короткого взаимодействия спинов (взаимодействуют только соседи). Развитие модели Изинга для кристаллических решеток (дальнодействие) получило название модели Поттса по имени создателя Ренфри Поттса (Renfrey Potts).
Другую физическую задачу, которую необходимо упомянуть, касается метода градиентного спуска. Этот метод был разработан Коши (Augustin-Louis Cauchy) в 1847 году и применяется для решения задачи о нахождении минимума энергии системы во многих разделах физики, в том числе для многомерных случаев.
Энергетические модели в работах Хопфилда
И вот здесь-то и началось сближение физики и науки о данных. В работе 1982 года Джон Хопфилд, исследуя динамическую модель ассоциативной памяти, обнаружил коллективные эффекты в поведении нейронов. Нейроны обновляли свое состояние Vi, переходя из одного порогового значения в другое, а переход зависел от значения сигналов на входе нейрона Tij:
Матрица взаимосвязей Tij — симметричная с нулевыми значениями на диагонали. Стационарные состояния нейронов можно было трактовать как состояние ячейки памяти, хранящей информацию.
Такой подход позволил ввести понятие энергии нейронной сети по аналогии с другими физическими моделями:
Здесь мы видим потенциальную энергию сети как составляющую Лагранжиана. Дальнейшие операции по решению уравнений были к этому моменту очень хорошо разработаны физиками-теоретиками.
Про лежащие на поверхности аналогии вроде спинового стекла или применения для решения задач дискретной оптимизации я предлагаю изучить читателю самостоятельно, тем более сейчас появится очень много различных публикаций на эту тему.
Энергетические модели в работах Хинтона
В 1983 году Джеффри Хинтон с коллегами Дэвидом Экли (David Ackley) и Террeнсом Сейновски (Terrence Sejnowski) применили стохастический подход к модели Хопфилда. А именно: они предложили задавать состояние нейрона в соответствии с распределением Больцмана (напомню, что этому распределению подчиняется кинетическая энергия частиц в газах и плазме).
В этом случае вероятность состояния нейрона должна описываться выражением:
где T — фиктивная температура, являющаяся аналогом температуры в физике, а энергия нейронной сети может быть записана в виде:
где, а 𝜃𝑖 — смещение (bias), а в физическом мире его роль выполняет локальное поле (например, поле тяготения).
Описанная архитектура получила название «машина Больцмана», и для нее выполняются закономерности, ранее найденные при решении различных задач с помощью модели Изинга, включая алгоритм имитации отжига.
Заключение
Я надеюсь, что мне удалось вам показать, как тесно связаны машинное обучение и физические процессы. Основы машинного обучения и нейросетей, такие как машины Больцмана из конца XIX века и модель Изинга из XX века, стали важными для развития информатики. В начале XXI века эти идеи получили признание в виде Нобелевских премий по физике и химии как ценные инструменты для понимания природы.
Благодарю старшего архитектора-исследователя Кирилла Кучкина за продуктивное обсуждение идей и фундаментальных физических принципов, которые привели к написанию этой статьи. Идеи и лежащие в основе статьи оригинальные материалы были собраны задолго до решения Нобелевского комитета, а само решение лишь подтвердило важность и актуальность темы.
Завершаю статью перечислением описанных событий в хронологическом порядке, чтобы немного упорядочить таймлайн для тех, кто ранее был с ним незнаком:
1736 – 1813 — годы жизни Луи Лагранжа, создателя вариационного исчисления.
1837 год — Ян Пуркине открывает нейроны мозга.
1844 – 1906 — годы жизни Людвига Больцмана.
1847 год — метод градиентного спуска Коши.
1897 год — Чарльз Шеррингтон исследует роль синапсов в обмене сигналами между нейронами.
1925 год — Эрнст Изинг, статья «Вклад в теорию ферромагнетизма».
1943 год — искусственные нейронные сети Уорена МакКаллоха и Уолтера Питтса.
1957 год — перцептрон Розенблатта.
1982 год — нейронная сеть Джона Хопфилда с ассоциативной памятью.
1983 год — Джеффри Хинтон с коллегами — стохастические подходы и машина Больцмана.
1986 год — обратное распространение ошибки Джеффри Хинтона, Дэвида Румельхарта и Рональда Вильямса.
1988 год — Майкл Мозер предлагает архитектуры нейросетей с памятью.
1988 год — нейронная сеть Кохонена.
1997 год — Зепп Хохрайтер и Юрген Шмитхубер предложили ячейку LSTM.
2021 год — нейросеть AlexNet стала победителем конкурса ISLVRC-2012. Взрывной рост интереса к машинному обучению.
2017 год — появление архитектуры трансформеров в недрах Google. Начало эры GPT.
2024 год — Нобелевские премии по физике за исследования в области нейронных сетей и по химии за применение нейронных сетей.
А еще 24 октября приглашаю вас на IT-конференцию GoCloud Tech — сможете послушать доклады про изнанку русского AI и облачных решений, обсудить собственные идеи с коллегами и экспертами.
Источники
-
Работа Уорена МакКоллоха
https://link.springer.com/article/10.1007/BF02478259
https://home.csulb.edu/~cwallis/382/readings/482/mccolloch.logical.calculus.ideas.1943.pdf Работы Джона Хопфилда https://www.pnas.org/doi/pdf/10.1073/pnas.84.23.8429 https://www.pnas.org/doi/abs/10.1073/pnas.79.8.2554 Работа Майкла Мозера https://gwern.net/doc/ai/nn/rnn/1995-mozer.pdf Работа Зеппа Хохрайтера и Юргена Шмитхубера, посвященная LSTM https://www.researchgate.net/publication/13853244_Long_Short-term_Memory Работы Джефри Хинтона https://www.nature.com/articles/323533a0 https://direct.mit.edu/neco/article-abstract/3/1/79/5560/Adaptive-Mixtures-of-Local-Experts https://cdn.aaai.org/AAAI/1983/AAAI83-087.pdf https://www.cs.toronto.edu/~hinton/absps/fahlmanBM.pdf https://www.sciencedirect.com/science/article/pii/S0364021385800124 https://onlinelibrary.wiley.com/doi/epdf/10.1207/s15516709cog0901_7 Статья Attention Is All You Need, посвященная архитектуре трансформеров https://arxiv.org/pdf/1706.03762 Ссылки на материалы Нобелевского комитета по физике https://www.nobelprize.org/prizes/physics/ https://www.nobelprize.org/prizes/physics/2024/press-release/ https://www.nobelprize.org/uploads/2024/09/advanced-physicsprize2024.pdf Статья Изинга о ферромагнетизме в переводе на английский https://www.hs-augsburg.de/~harsch/anglica/Chronology/20thC/Ising/isi_fm00.html
Интересное в блоге: