Эффекты ментальной инерции в науке
Dec. 13th, 2019 10:27 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Ментальная инерция особенно хорошо видна в области искусственных нейронных сетей. Это не обязательно значит, что её там больше, чем в других областях. Просто лучше видно (математика там, как правило, простая, а компьютер известно как работает, так что скрытых загадок природы нет).
Что касается других областей, то, например, лет 10 назад Алик Шнайдер опубликовал детальную статью "Mental inertia in the biological sciences", www.researchgate.net/publication/41111141_Mental_inertia_in_the_biological_sciences
В искусственных нейронных сетях типичное явление состоит в том, что совсем, совсем простые вещи открываются на десятки лет позже, чем должны были бы по "здравому смыслу", и после первого открытия проходит не меньше 10-ти лет, пока их ещё один или несколько раз переоткроют, заметят, и уж только тогда начнут пользоваться.
У меня длинная коллекция таких примеров (она, кстати, включает и знаменитый backpropagation), а здесь я поделюсь двумя любимыми примерами, очень простыми.
Один из них состоит в том, что ступеньчатую функцию внутри нейронов (использовавшуюся в изначальном "персептроне"), конечно, использовать не надо - уж очень у неё неудобная производная, но, может быть, в ряде случаев лучше использовать не сигмоидные гладкие функции с насыщением (которые одно время были самыми популярными), а нечто промежуточное:
en.wikipedia.org/wiki/Rectifier_(neural_networks)
Эта штука пропускает положительные сигналы без изменения, а отрицательные - зануляет. Что может быть проще? Вот, первая известная нам статья, которая объясняла, почему это может быть правильными решением, была опубликована не в каком-нибудь 1970-ом году, а аж в 2000-м, то есть, лет на 30 позже, чем естественно. И опубликована она была не где-нибудь в никому неизвестном месте, а в Nature, что не помешало её полностью проигнорировать. И только после того, как другие люди написали статью в 2011-ом году, это, наконец, заметили, и к 2015-му году, этот вариант стал наиболее популярным в feedforward neural nets (более популярным, чем стандартные до того сигмоидные функции).
Другой из моих любимых примеров - это проблема "исчезающих градиентов" в рекуррентных и глубоких сетях, которую заметили в начале 90-х, и первые решения появились в 1997-ом. Вот, пару лет назад была обнародована работа, которая, по сути, говорила (не вполне явным образом), что всё дело в неправильной регуляризации - надо, чтобы регуляризация прижимала бы матрицу сети к единичной матрице, а не к нулевой, и всё будет отлично работать. То есть, опять предельно простая (и, в некотором смысле, очевидная) штука. Я тогда же написал маленькую "рецензию" на эту статью:
www.cs.brandeis.edu/~bukatin/recurrent-identity-networks.html
Судьба этой статьи тоже очень так себе - первую версию вообще не заметили, и отказались опубликовать на конференции, куда она была подана (там open review, можно посмотреть, как была устроена дискуссия). Вот теперь её начинают хоть чуть-чуть цитировать...
Это - не исключение. Это - правило в этой науке. "Так оно всё обычно и происходит."
Что касается других областей, то, например, лет 10 назад Алик Шнайдер опубликовал детальную статью "Mental inertia in the biological sciences", www.researchgate.net/publication/41111141_Mental_inertia_in_the_biological_sciences
В искусственных нейронных сетях типичное явление состоит в том, что совсем, совсем простые вещи открываются на десятки лет позже, чем должны были бы по "здравому смыслу", и после первого открытия проходит не меньше 10-ти лет, пока их ещё один или несколько раз переоткроют, заметят, и уж только тогда начнут пользоваться.
У меня длинная коллекция таких примеров (она, кстати, включает и знаменитый backpropagation), а здесь я поделюсь двумя любимыми примерами, очень простыми.
Один из них состоит в том, что ступеньчатую функцию внутри нейронов (использовавшуюся в изначальном "персептроне"), конечно, использовать не надо - уж очень у неё неудобная производная, но, может быть, в ряде случаев лучше использовать не сигмоидные гладкие функции с насыщением (которые одно время были самыми популярными), а нечто промежуточное:
en.wikipedia.org/wiki/Rectifier_(neural_networks)
Эта штука пропускает положительные сигналы без изменения, а отрицательные - зануляет. Что может быть проще? Вот, первая известная нам статья, которая объясняла, почему это может быть правильными решением, была опубликована не в каком-нибудь 1970-ом году, а аж в 2000-м, то есть, лет на 30 позже, чем естественно. И опубликована она была не где-нибудь в никому неизвестном месте, а в Nature, что не помешало её полностью проигнорировать. И только после того, как другие люди написали статью в 2011-ом году, это, наконец, заметили, и к 2015-му году, этот вариант стал наиболее популярным в feedforward neural nets (более популярным, чем стандартные до того сигмоидные функции).
Другой из моих любимых примеров - это проблема "исчезающих градиентов" в рекуррентных и глубоких сетях, которую заметили в начале 90-х, и первые решения появились в 1997-ом. Вот, пару лет назад была обнародована работа, которая, по сути, говорила (не вполне явным образом), что всё дело в неправильной регуляризации - надо, чтобы регуляризация прижимала бы матрицу сети к единичной матрице, а не к нулевой, и всё будет отлично работать. То есть, опять предельно простая (и, в некотором смысле, очевидная) штука. Я тогда же написал маленькую "рецензию" на эту статью:
www.cs.brandeis.edu/~bukatin/recurrent-identity-networks.html
Судьба этой статьи тоже очень так себе - первую версию вообще не заметили, и отказались опубликовать на конференции, куда она была подана (там open review, можно посмотреть, как была устроена дискуссия). Вот теперь её начинают хоть чуть-чуть цитировать...
Это - не исключение. Это - правило в этой науке. "Так оно всё обычно и происходит."
no subject
Date: 2019-12-14 06:17 am (UTC)Shapley Interpretation and Activation in Neural Networks
https://arxiv.org/abs/1909.06143
High-performance RNNs with spiking neurons
https://arxiv.org/abs/1905.10692
("Recurrent Auto-Encoding Drift Diffusion Model" might also be of interest)
no subject
Date: 2019-12-14 01:43 pm (UTC)no subject
Date: 2019-12-14 02:23 pm (UTC)С ректифайером, понятное дело, удобно, что производная либо 1, либо 0 - считать долго не надо :-) Но, конечно, надо осознать, что простой разрыв в производной не мешает градиентным методам; отсутствие этого осознания, видимо, и было большим психологическим барьером, из-за которого всё так задержалось...