Мне было интересно, почему так важно иметь принципиальное / теоретическое машинное обучение? С личной точки зрения, как человек, я могу понять, почему принципиальное машинное обучение было бы важно:
- людям нравится понимать, что они делают, мы находим красоту и удовлетворение от понимания.
- с теоретической точки зрения математика это весело
- когда есть принципы, которые определяют дизайн вещей, меньше времени тратится на случайные догадки, странные пробы и ошибки. Если бы мы, скажем, поняли, как на самом деле работают нейронные сети, возможно, мы могли бы потратить гораздо больше времени на их разработку, а не на огромное количество проб и ошибок, которые прямо сейчас связаны с этим.
- в последнее время, если принципы ясны, а теория ясна, тогда (надеюсь) следует повысить прозрачность системы. Это хорошо, потому что, если мы понимаем, что система работает, то ИИ рискует, что многие люди обманывают в значительной степени, уходит немедленно.
- Принципы, кажется, являются кратким способом суммировать важные структуры, которые может иметь мир, и когда использовать инструмент, а не другой.
Однако достаточно ли сильны эти причины, чтобы оправдать интенсивное теоретическое изучение машинного обучения? Одна из самых больших критических замечаний теории заключается в том, что, поскольку это очень трудно сделать, они обычно заканчивают изучением какого-то очень ограниченного случая, или предположения, которые должны быть приведены, по существу делают результаты бесполезными. Мне кажется, я слышал это однажды на выступлении создателя Tor в MIT. То, что некоторая критика Tor, которую он услышал, является теоретическим аргументом, но по сути, люди никогда не могут доказать что-либо о реальных сценариях реальной жизни, потому что они настолько сложны.
В эту новую эру с такой большой вычислительной мощностью и данными мы можем тестировать наши модели с реальными наборами данных и наборами тестов. Мы можем видеть, работают ли вещи, используя эмпиризм. Если мы можем вместо этого достичь AGI или систем, которые работают с инженерным и эмпирическим подходом, стоит ли еще искать принципиальное и теоретическое обоснование для машинного обучения, особенно когда количественные границы так трудно достичь, но интуиции и качественные ответы намного проще достичь с помощью подхода, управляемого данными? Этот подход не был доступен в классической статистике, поэтому я думаю, что теория была так важна в те времена, потому что математика была единственным способом, которым мы могли быть уверены, что все было правильно или что они действительно работали так, как мы думали, что они это сделали.
Я лично всегда любил и думал о теории, и принципиальный подход был важен. Но благодаря возможности испытать себя на реальных данных и вычислительной мощности я задался вопросом, стоит ли все-таки больших усилий (и, возможно, низкого вознаграждения) теоретического развития.
Является ли теоретическое и принципиальное преследование машинного обучения таким важным?
источник
Ответы:
На это нет правильного ответа, но, может быть, «все в меру». В то время как многие недавние улучшения в машинном обучении, такие как выпадение, остаточные соединения, плотные соединения, нормализация партии, не основаны на особенно глубокой теории (большинство может быть оправдано в нескольких параграфах), я думаю, что в конечном итоге существует узкое место для того, сколько такие результаты могут оказать огромное влияние. В какой-то момент вы должны сесть и выработать дополнительную теорию, чтобы сделать следующий большой скачок. Кроме того, теория может направлять интуицию, потому что она может доказать качество или ограничения модели в пределах разумного сомнения. Это особенно важно для определения, если, скажем, SGD лучше, чем Momentum для конкретной проблемы. Это хорошая вещь в теории: она заставляет вас абстрагировать проблему, которую вы решаете,
Большой пример, который приходит на ум - это опорные векторные машины. Первоначально они были разработаны Вапником и Червоненкисом в начале 60-х, но действительно взлетели в начале 90-х, когда Вапник и другие поняли, что вы можете создавать нелинейные SVM, используя Kernel Trick. Вапник и Червоненкис также разработали теорию измерения ВКЭто попытка придумать меру сложности для машинного обучения. Я не могу думать ни о каком практическом применении измерения VC, но я думаю, что идея SVM, вероятно, была под влиянием их работы над этим. Сам Трюк Ядра происходит из абстрактно-бессмысленной математики о гильбертовых пространствах. Можно сказать, что нужно знать эту абстрактную чепуху, чтобы придумывать SVM, но я думаю, что это, вероятно, очень помогло, особенно потому, что многие математики были в восторге от машинного обучения.
Что касается ResNet, то в последнее время была проведена действительно аккуратная работа, предполагающая, что остаточные архитектуры не должны иметь глубину в 100 с. Фактически, некоторые работы предполагают, что остаточные соединения очень похожи на RNN, например, преодоление разрыва между остаточным обучением, рекуррентными нейронными сетями и зрительной корой », Ляо и др. Я думаю, что это определенно стоит того, чтобы заглянуть глубже, потому что это предполагает, что теоретически ResNet с множеством слоев на самом деле невероятно неэффективен и раздут.
Идеи градиентного отсечения для RNN были очень хорошо обоснованы в известной ныне статье « О сложности обучения рекуррентных нейронных сетей » - Pascanu, et. и др. В то время как вы, вероятно, могли бы придумать градиентное ограничение без всей теории, я думаю, что это проделывает долгий путь к пониманию того, почему RNN так сложно тренировать, не делая чего-то причудливого, особенно проводя аналогии с динамическими системными картами (как в статье выше, ).
Есть много волнений о методах энтропийного стохастического градиентного спуска . Они были получены из динамики Ланжевена, и большая часть теоретических результатов тесно связана с классической теоретической теорией PDE и статистической физикой. Результаты являются многообещающими, потому что они представляют SGD в новом свете, с точки зрения того, как он застревает в локальных флуктуациях функции потерь, и как можно локально сгладить функцию потерь, чтобы сделать SGD намного более эффективным. Это имеет большое значение для понимания, когда SGD полезен, а когда он ведет себя плохо. Это не то, что вы можете получить эмпирически, попробовав SGD на разных типах моделей.
В статье « Интригующие свойства нейронных сетей» авторы резюмируют, что нейронные сети чувствительны к враждебным примерам (определяемым как вычисленные ловкие возмущения изображения) из-за высоких липшицевых постоянных между слоями. Это все еще активная область исследований, и ее можно понять только с помощью более теоретических выводов.
Есть также пример анализа топологических данных , вокруг которого образовалась хотя бы одна компания ( Ayasdi ). Это особенно интересный пример, потому что методы, используемые для него, настолько специфичны и абстрактны, что даже с сегодняшнего дня, все еще потребуется много времени, чтобы увидеть, где заканчиваются идеи из этой теории. Насколько я понимаю, вычислительная сложность используемых алгоритмов имеет тенденцию быть довольно высокой (но опять же она была одинаково высокой для нейронных сетей даже 20 лет назад).
источник
Ответ на этот вопрос на самом деле очень прост. Имея теоретическое обоснование модели машинного обучения, мы, по крайней мере, можем доказать, что при выполнении более или менее реалистичных условий есть некоторые гарантии оптимальности решения. Без этого у нас нет никаких гарантий вообще. Конечно, вы можете сказать «давайте просто проверим, что работает, и используем его для решения конкретной проблемы», но это неосуществимо, поскольку существует бесконечное количество способов решения любой проблемы машинного обучения.
источник
Просто глядя на вопрос: действительно ли теоретическое и принципиальное занятие машинным обучением так важно?
Определите, что вы подразумеваете под «важным». Исходя из философской точки зрения, это фундаментальное различие, если вы хотите что-то описать или что-то понять. В несколько грубом ответе это разница между тем, чтобы быть научным или чем-то еще. Практическая часть этого не имеет отношения к основному вопросу. Если что-то слишком сложно доказать или даже невозможно доказать, само по себе это важное открытие. (Введите Геделя и др.) Но это не значит, что это не имеет значения. По крайней мере, это может показаться неуместным с прагматической точки зрения. Но это должно быть, по крайней мере, признано чем-то принципиально важным и ценным.
Рассмотрим аналогию: медицина в целом (и из ее прошлого) ненаучна. В определенном смысле это не может быть никогда. Это дисциплина, которая полностью зависит от ее результатов. В большинстве случаев нет ничего похожего на «правду». Но оказывается, что некоторые части действительно могут быть научными - и именно здесь происходит большая часть запланированного прогресса.
Еще одно очень краткое описание: без теории вы можете заработать много денег. Если это действительно полезно для «большего блага», то вы даже можете получить за это Нобелевскую премию. Но вы никогда не получите медаль Филдса.
источник
Люди веками могли строить корабли, вагоны и здания без законов физики. Но со времен современной науки мы смогли вывести эти технологии на совершенно новый уровень. Доказанная теория позволяет вносить улучшения принципиальным образом. Мы бы никогда не добрались до Луны или не имели бы компьютеров без математической теории вещества и вычислений.
Машинное обучение - это просто еще одна область науки и техники, как и любая другая. Принципиальный подход к машинному обучению обеспечил нас машинами ядра, структурированным обучением и методами ансамбля (бустинг, случайные леса).
источник
Вот простой пример из моей собственной работы.
Я приспосабливаю много нейронных сетей к непрерывным результатам. Каждый определяет веса путем обратного распространения. В конце концов, это сойдет.
Моя сеть сходится намного быстрее .
Спасибо, теория.
источник
Эмпиризм против теории
Вы написали:
Это, я думаю, демонстрирует основное разделение между двумя взглядами, которые мы можем назвать эмпирическими и теоретическими .
С эмпирической точки зрения, как вы также описали, теоремы бесполезны, потому что они никогда не бывают достаточно сложными, чтобы моделировать реальный мир. Они говорят об упрощенных идеальных сценариях, которые нигде не применяются в реальном мире. Так какой смысл заниматься теорией.
Однако с теоретической точки зрения все наоборот. Чему может научить нас эмпиризм помимо того, что «я использовал этот метод в этом наборе данных, и это было лучше, чем запуск этого метода в этом же наборе данных». Это полезно для одного случая, но мало говорит о проблеме.
То, что делает теория, дает некоторые гарантии. Это также позволяет нам изучать упрощенные сценарии именно для того, чтобы мы могли начать понимать, что происходит.
пример
Представьте себе реальный пример: вы хотите увидеть, как дрейф понятий (когда данные меняются со временем) влияет на вашу способность к обучению. Как чистый эмпирик может подойти к этому вопросу? Все, что он может сделать, - это начать применять различные методы и подумать о хитростях, которые он может сделать. Вся процедура может быть похожа на это:
Здесь мы имеем довольно точные результаты для нескольких наборов данных. Возможно, данные были таковы, что обновление алгоритма обучения, основанного на наблюдениях за 200 прошлых дней, дало самую высокую точность. Но будет ли работать то же самое для других данных? Насколько надежны эти 200 дней? Моделирование помогает - но они не отражают реальный мир - та же теория проблем была.
Теперь представьте то же самое с теоретической точки зрения:
Теперь этот сценарий более понятен - мы смогли изолировать проблему, исправив все детали. Мы знаем среднюю ошибку наших классификаторов. Вероятно, можно оценить количество дней, которое потребуется, чтобы обнаружить, что изменение произошло. Определите, от каких параметров это зависит (например, размер изменения). И теперь на основе чего-то вырабатывают практическое решение. Но самое главное: этот результат (если он правильно рассчитан) не меняется. Это здесь навсегда, и каждый может извлечь из этого уроки.
Как и один из отцов современного машинного обучения, Юрген Шмидхубер любит говорить:
Уроки из других областей
Также вкратце хотелось бы упомянуть некоторые параллели с физикой. Я думаю, что у них тоже была эта дилемма. Физики изучали бесконтактные объекты бесконечной массы, движущиеся в бесконечном пространстве. На первый взгляд, что это может сказать нам о реальности, где мы хотим знать, как снежинки движутся на ветру. Но кажется, что теория проделала их довольно далеко.
источник
Вы упомянули несколько причин, из которых, на мой взгляд, способность интерпретировать результаты ОД является наиболее важной. Допустим, охранник имущества, управляемый ИИ, решил застрелить собаку соседа. Было бы важно понять, почему это так. Если не помешать этому в будущем, то хотя бы понять, кто несет ответственность, а кто будет выплачивать компенсацию владельцу.
Однако для меня самая важная причина заключается в том, что понимание принципов, на которых основан алгоритм, позволяет понять его ограничения и повысить его производительность. Рассмотрим использование евклидова расстояния в ML. Во многих алгоритмах кластеризации вы начинаете с определения расстояния между примерами, а затем приступаете к поиску границ между признаками примеров, которые группируют их близость. Как только вы увеличиваете количество объектов, евклидово расстояние перестает работать в какой-то момент. Вы можете потратить много времени, пытаясь заставить его работать, или - если вы знаете, что евклидово расстояние как мера близости не работает в бесконечном измерении - просто переключитесь на какую-то другую метрику расстояния, такую как Манхэттен, затем переходите к работе на реальных проблемах. Вы можете найти множество примеров, таких как этот,
источник
Я думаю, что для этого очень трудно не быть философской дискуссией. Мой ответ - это переформулировка хороших моментов, уже упомянутых здесь (+1 для всех); Я просто хочу указать на цитату Эндрю Гельмана, которая действительно говорила со мной как с кем-то, кто учился на компьютерного ученого. У меня сложилось впечатление, что многие из людей, которые называют то, что они делают машинным обучением, также происходят из информатики. Цитата взята из выступления Гельмана на конференции R в Нью-Йорке 2017 года под названием « Теоретическая статистика» - «Теория прикладной статистики» :
Теория говорит вам, что имеет смысл, а что нет при определенных условиях. Мы хотим сделать тысячи, десятки тысяч или миллионы симуляций, чтобы понять правду? Хотим ли мы проводить эмпирические сравнения на все большем количестве эталонных наборов данных? Это займет некоторое время, и наши результаты могут все еще быть хрупкими. Кроме того, как мы узнаем, что сравнения, которые мы делаем, имеют смысл? Откуда мы знаем, что наш новый Deep Learner с точностью 99,5% действительно лучше, чем старый, у которого точность 99,1%? Некоторая теория поможет здесь.
Я большой поклонник симуляций и часто их использую, чтобы осмыслить мир (или даже понять теорию), но теоретическое машинное обучение - это теория прикладного машинного обучения.
источник