Доктор философии Массачусетского технологического института: как начать исследования в области ИИ

Google машинное обучение искусственный интеллект Twitter

Опыт аспиранта Массачусетского технологического института Тома Сильвера в исследованиях ИИ. Том Сильвер — выпускник Гарвардского университета по специальности «Информатика и математика» и прошел стажировку во многих известных лабораториях или компаниях по искусственному интеллекту, таких как Sabeti Lab, Google и Vicarious.

Первоначальный автор: Том Сильвер

Исходная ссылка: http://web.mit.edu/tslvr/www/lessons_two_years.html

Перевод: Базовый лагерь технологий ИИ Источник: Nuggets

Мой друг собирается начать исследования в области ИИ, а я оказался на два года раньше него, поэтому в последнее время он расспрашивал меня о своем исследовательском опыте. Эта статья представляет собой обобщение моего двухлетнего исследовательского опыта, включающего в себя как обыденные жизненные инсайты, так и исследовательские навыки, и я надеюсь, что она поможет читателям и друзьям.

начиная

Найдите подходящего человека, чтобы задать «глупый вопрос»

Когда я впервые начал заниматься исследованиями, я часто боялся спрашивать совета у своих коллег, опасаясь задавать вопросы, которые звучали бы слишком непрофессионально и вызывали бы у них пренебрежительное отношение. Потребовалось несколько месяцев, чтобы это ослабло, но я все еще был очень осторожен, опасаясь пропустить удар. Но теперь у меня есть несколько доверенных лиц, с которыми я могу напрямую обсуждать вопросы. Хотел бы я знать их раньше!

Раньше, когда я сталкивался с проблемой, я напрямую гуглил ее, и ссылки и информация на экране часто приводили меня в замешательство; но теперь, когда я сталкиваюсь с проблемой, я могу напрямую поднять ее и обсудить со всеми, а не решаю сам..

Найдите вдохновение для исследований в разных местах

Решение о том, что делать дальше, часто может быть самой сложной частью исследовательской карьеры для многих людей. Вот несколько стратегий, которые обычно используются исследователями:

  • Общайтесь с людьми из разных областей знаний. Задайте им вопросы, которые их интересуют, и попытайтесь перефразировать их в компьютерных терминах. Спросите их, есть ли у них какие-либо наборы данных, которые они хотят проанализировать, но которые трудно обработать с помощью существующих технологий. Большая часть наиболее впечатляющей работы в области машинного обучения связана с столкновением компьютеров с биологией/химией/физикой, социальными науками или чистой математикой. Например, статья Мэтью Джонсона и др. на NIPS 2016 (Composing graphical models with neural networksfor structured representations and fast inference), вдохновлен набором данных о поведении мыши; другой пример Статья Джастина Гилмера и др. на ICML 2017 (Neural Message Passing for Quantum Chemistry), который применяет методы машинного обучения к изучению квантовой химии.
  • Напишите простой базовый код, чтобы понять проблему. Например, попробуйте написать код, управляющий перевернутым маятником, и тщательно откалибруйте его или попробуйте реализовать модель мешка слов в наборе данных на естественном языке. При написании базовых планов я часто сталкиваюсь с неожиданными ситуациями — ошибками в ментальной модели или в коде. Даже если мой базовый код работает, я обычно пробую другие идеи, чтобы лучше понять проблему.
  • Расширьте экспериментальную часть вашей любимой статьи. Внимательно прочитайте методы и результаты этих работ. Постарайтесь найти в ней самую ценную часть. Сначала мы можем рассмотреть некоторые из самых простых расширений и спросить себя, применим ли подход, изложенный в статье. Затем рассмотрите базовые методы, которые не обсуждаются в статье, и подумайте, где эти методы могут дать сбой.

Овладейте инструментами и навыками визуализации

При написании кода я обычно начинаю с создания визуального сценария. Когда я заканчиваю писать другой код, визуальные скрипты помогают мне быстро убедиться, что код соответствует моей мысленной модели. Что еще более важно, хорошая визуализация часто облегчает мне обнаружение ошибок в мышлении или коде, чем другие методы. Другая причина — самомотивация: каждый раз, когда я заканчиваю кусок кода, я могу показать всем красивую диаграмму или видео!

Конечно, правильная визуализация проблемы может потребовать некоторых навыков. Если это итеративная модель оптимизации (например, глубокое обучение), вы можете начать с рисования кривой функции потерь. Кроме того, существует множество методов, которые можно использовать для визуализации и интерпретации изученных весов (особенно сверточных) нейронных сетей, таких какуправляемое обратное распространение.

При обучении и планировании с подкреплением вещи, которые необходимо визуализировать, очевидны: поведение агента в окружающей среде, такой как игра Atari, роботизированная задача или простой грид-мир (например, среда в OpenAI Gym). С различными настройками мы также можем визуализировать функцию значений и ее изменения во время обучения (показано ниже) или визуализировать пройденное дерево состояний.

При работе с графическими моделями можно получить много информации, визуализируя изменения в распределении одномерных или двумерных переменных во время логического вывода (см. ниже). Один из способов измерить эффективность методов визуализации — оценить количество информации, которое вам нужно иметь в голове каждый раз, когда вы анализируете визуализацию. Плохая визуализация потребует от вас подробного анализа написанного вами кода, а хорошая визуализация позволит сделать выводы.

Tensorboard — популярный графический интерфейс для визуализации моделей глубокого обучения Tensorflow.

https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2018/5/3/1632504acd30564b~tplv-t2oaga2asx-image.image

Построение графиков распределения по мере накопления данных для облегчения отладки графических моделей (из Викимедиа).

https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2018/5/3/1632504acd6b425b~tplv-t2oaga2asx-image.image

Функция ценности, изученная посредством Q-обучения, может быть визуализирована в мире сетки, который она представляет (Энди Зенг).

Научитесь определять основные отправные точки для исследователей и статей

Хотя многие исследователи будут публиковаться на одних и тех же конференциях, использовать одну и ту же терминологию и все заявляют, что работают в области искусственного интеллекта, их мотивы, скорее всего, будут совершенно противоположными. Некоторые даже хотят переименовать поле, чтобы решить проблему (Майкл Джордан в недавней статье, призывающей к изменению названия поля https://medium.com/@mijordan3/artificial-intelligence-the-revolution-hasnt-happened-yet -5e1d5812e1e7 ). В этой области есть как минимум три основных направления, а именно «математика», «инженерия» и «познание».

  • С «математической» точки зрения: каковы фундаментальные свойства и ограничения интеллектуальных систем?
  • С «инженерной» точки зрения: как мы можем разработать интеллектуальные системы, способные лучше решать реальные проблемы?
  • С «когнитивной» точки зрения: как мы должны моделировать естественный интеллект, присущий людям и другим животным?

Эти отправные точки не противоречат друг другу, и многие интересные вещи в области ИИ очень интересны с любой точки зрения. Кроме того, отдельных исследователей часто касаются под разными углами, что способствует слиянию поля ИИ.

Конечно, отправная точка также может быть непоследовательной. У меня есть друзья и коллеги, которые явно ориентируются на «инженерный» ракурс, а другие в первую очередь интересуются «биологией». Если есть статья, показывающая, что какая-то умная комбинация существующих технологий может превзойти текущий уровень развития техники на базовом уровне, есть большая вероятность, что инженеры заинтересуются этой статьей, в то время как ученые-когнитивисты могут не заинтересоваться. все или даже заинтересованы в этом. Статья, которая иллюстрирует биологическую правдоподобность или когнитивные связи, но остается теоретической или не имеет серьезных результатов, может получить диаметрально противоположные отклики от двух типов исследователей.

Хорошие статьи и исследователи с самого начала заявляют о своей отправной точке, но лежащая в ее основе мотивация может быть скрыта глубоко. Если отправная точка не очевидна, полезно проанализировать статью с разных точек зрения.

▌Поиск пищи от исследовательского сообщества

найти документы

На arXiv есть тонны статей по ИИ, и они бесплатны для просмотра. В дополнение к быстрому увеличению количества статей, большое количество активных пользователей в сообществе также снижает сложность поиска качественных статей. Ученик Ли Фейфей Андрей Карпати создал программу arXiv, которая помогает нам сортировать, искать и фильтровать релевантные статьи. Майлз Брандейдж часто каждый вечер публикует в Твиттере тщательно подобранный список статей arXiv; большую часть этой задачи выполняет бот Брандейджа. Многие другие пользователи Твиттера также время от времени делятся множеством интересных ссылок — я предлагаю вам Следите за интересующими вас исследователями в Twitter.

Если вам нравится использовать Reddit, рассмотрите возможность использования r/MachineLearning, но эти сообщения, как правило, больше ориентированы на инженеров по машинному обучению, чем на академических исследователей. Джек Кларк публикует еженедельный информационный бюллетень сообщества под названием «Импорт ИИ» (https://jack-clark.net/), а Денни Бритц издает информационный бюллетень под названием «Импорт ИИ» (https://jack-clark.net/).The Wild Week in AI" столбец.

Также стоит посмотреть материалы некоторых конференций по искусственному интеллекту. Три главные конференции в области машинного обучения — это NIPS, ICML и ICLR. Другие конференции включают AAAI, IJCAI и UAI. Также будут проводиться более конкретные конференции по каждой субдисциплине в этой области. Конференции по компьютерному зрению включают CVPR, ECCV и ICCV; конференции по обработке естественного языка включают ACL, EMNLP и NAACL; конференции по робототехнике включают CoRL, ICAPS, ICRA, IROS и RSS; для более теоретической работы сосредоточьтесь на AISTATS, COLT и КДД эти конференции. Эти сеансы являются текущим ИИ Основным каналом публикации статей, конечно же, являются также некоторые журналы. JAIR и JMLR — два самых важных журнала в этой области. Иногда более продвинутые статьи также появляются в научных журналах, таких как Nature и Science.

Также важно обращаться к классическим документам, но это также сложнее. Названия этих классических статей часто встречаются в ссылках на многие статьи или в списках рекомендуемой литературы для аспирантов. Еще один способ найти классические статьи — начать со старших профессоров в этой области и искать их более ранние работы, то есть их исследовательские траектории, а также отправлять этим профессорам электронное письмо с запросом дополнительных ссылок (конечно, если они слишком заняты). не против). А для старых статей хорошей идеей будет ключевое слово Google Scholar.

Сколько времени я должен потратить на чтение диссертации?

Я часто слышу два предположения о том, сколько времени люди тратят на изучение предыдущей исследовательской работы. Во-первых, если вы только начинаете, прочитайте все статьи! Часто говорят, что в первом семестре или на первом курсе аспиранта должна быть только диссертация. Второй совет: не тратьте слишком много времени на чтение статей после того, как у вас есть начальное понимание области исследования! Отправной точкой для последнего является то, что исследователям легче создавать и решать проблемы творчески, если на них не влияют предыдущие методы.

Я лично согласен с первым предложением и не согласен со вторым предложением. По моему мнению, исследователи должны прочитать как можно больше статей, чтобы обеспечить оригинальное время исследования. «Если я не знаком с тем, что пробовали другие люди, мне легче придумать новый, лучший способ решить сложную проблему» — это кажется маловероятным и слишком самонадеянным. Да, важно смотреть на вещи со свежей точки зрения, и многие истории этих любителей связаны с тем, что они мыслят нестандартно. Но как профессиональные исследователи, мы не можем полагаться только на этот элемент удачи, чтобы найти решение проблемы без размышлений. Большую часть своей исследовательской карьеры мы терпеливо, шаг за шагом и методично подходили к решению проблем. Чтение связанных статей — эффективный способ понять, где мы находимся и что делать дальше.

Конечно, в вопросе прочтения как можно большего количества статей я должен напомнить вам, что время, необходимое для переваривания статей, так же важно, как и их чтение. Лучше сначала прочитать несколько статей, затем тщательно записать и обдумать каждую, а не проглатывать ее одну за другой.

Обмен >> Видео > Бумага > Выступление на конференции

Чтобы понять незнакомый исследовательский календарный год, чтение статьи, конечно, самый простой способ, но как насчет самого эффективного? У разных людей могут быть разные ответы, и для меня общение с другими (в идеале с кем-то, кто уже понимает, о чем я думаю) — безусловно, самый быстрый и эффективный способ понять. Если у вас нет таких людей, просмотр видео на эту тему, например приглашенного выступления автора этой статьи, также является очень хорошим способом понять. Когда спикеры обращаются к живой аудитории, они отдают предпочтение ясности, а не точности. Но в большинстве случаев написания эссе приоритеты этих двух элементов меняются местами. В статье очень важно количество слов (авторы не должны занимать слишком много места для разъяснения концепции), а неточные предыстории могут также привести к восприятию того, что автору не хватает знаний в данной области. Наконец, краткие презентации на конференциях часто более формальны, чем содержательны. Конечно, обмен мнениями с основным докладчиком после выступления также очень ценен.

Остерегайтесь хайпа

Успехи в области искусственного интеллекта привлекли внимание общественности и привлекли в эту область больше людей, и последствия этого цикла в основном благотворны, но есть и вредный побочный эффект — ажиотаж. СМИ всегда хотят получить больше кликов; технологические компании хотят привлечь инвесторов и нанять больше сотрудников; точно так же исследователи хотят повысить узнаваемость и цитируемость своих статей, а все это приводит к все более и более серьезной шумихе. Поэтому, когда мы видим заголовки сообщений или статей в СМИ, мы должны больше думать о факторах, стоящих за ними, и остерегаться заголовков.

Во время сеанса вопросов и ответов на конференции NIPS 2017 года сотни зрителей услышали, как довольно известный профессор (чтобы противостоять ажиотажу) держал микрофон и увещевал авторов статей быть осторожными с использованием слова «воображение» в названии. «Слово. У меня смешанные чувства по поводу такого рода почти публичных возражений, и мне нравится эта конкретная статья, но я вполне понимаю неудовольствие профессора. Один из самых распространенных и отвратительных пропагандистских приемов в исследованиях ИИ — заново изобрести старую идею с новым термином. Остерегайтесь этих модных словечек — как серьезный исследователь вы все равно должны судить о статьях в первую очередь по их экспериментам и результатам.

▌Исследования — это марафон

Ставьте измеримые цели

При поиске исследовательских проектов на раннем этапе я потратил много времени на мозговой штурм. Для меня мозговой штурм в то время сводился к тому, чтобы положить голову на стол и надеяться, что смутные интуиции превратятся в конкретные идеи. После дня мозгового штурма я часто чувствую усталость и разочарование. Это наука о жизни?

Конечно, не существует реального рецепта немедленного прогресса в исследованиях, и блуждание в темноте является частью исследовательской карьеры большинства людей. Но теперь я обнаружил, что, ставя поддающиеся количественной оценке цели, а затем планируя свою работу, я могу облегчить свою исследовательскую жизнь и сделать ее более полноценной. Когда я не знаю, что делать дальше, я часто максимально подробно записываю свои смутные идеи; если в процессе записи идеи я не считаю ее уместной, то записываю идеи, исключающие это оправдание (вместо того, чтобы полностью отказаться от этой идеи и больше не измерять собственный прогресс). Без каких-либо идей мы можем прибегнуть к чтению статей или общению с коллегами. В конце каждого дня моя работа наконец-то оставляет ощутимые следы. Хотя эти идеи никогда не применялись, они значительно повысили мою уверенность в себе. Мне больше не нужно беспокоиться о том, чтобы тратить время на те же самые идеи позже.

Научитесь распознавать и избегать тупиков

Хорошие исследователи тратят больше времени на хорошие идеи, потому что они тратят меньше времени на плохие. Способность различать хорошие и плохие идеи, по-видимому, в первую очередь зависит от опыта. Тем не менее, исследователи всех уровней квалификации часто сталкиваются со следующим выбором. Моя исследовательская идея ошибочна или неопределенна, поэтому должен ли я выбрать А): дальнейшее спасение или продолжение идеи или Б): полностью отказаться от идеи? Я лично жалею, что потратил время на А), когда должен был потратить на Б). Особенно в начале, я много раз застревал в тупике и проводил там долгое время. Коренной причиной моего нежелания сдаваться может быть непонимание невозвратных издержек — если я сдамся в этом тупике, я потеряю время, которое уже потратил.

Теперь я все еще разочаровываюсь каждый раз, когда сдаюсь в тупик. Но я пытался сказать себе, что возврат назад — это также шаг вперед, что немного нелогично, но я усвоил это осознание. Уже уплаченная стоимость того стоит и не просела. Если бы я не исследовал этот тупик сегодня, я мог бы снова пробурить его завтра. Тупики — это не конец, это часть нормальной научной жизни. Надеюсь, одна из этих идей останется со мной. Если нет, то вот знаменитая цитата Фейнмана: «Мы пытаемся доказать свою неправоту как можно быстрее, потому что только тогда мы можем стать лучше».

Мы пытаемся как можно быстрее доказать свою неправоту, потому что только так мы сможем добиться прогресса. ― Ричард Фейнман

Начни писать!

Однажды у меня была возможность спросить совета у одного очень известного исследователя ИИ. Его совет прост: пишите! Помимо написания блогов и эссе, что более важно, записывайте свои мысли каждый день. С тех пор, как я последовал его совету, я заметил заметную разницу в прогрессе, который я делаю, когда активно пишу, а не просто думаю.

Физическое и психическое здоровье является предпосылкой научных исследований

Исследователи часто забывают есть и спать, когда заняты научными исследованиями, что является очень опасным занятием. Раньше я очень стремился к этому состоянию и часто мне было стыдно, что я не достиг его. Теперь я понимаю (по крайней мере, на рациональном уровне), что упражнения и умственный отдых — это инвестиции, а не отвлечение. Если я буду спать 8 часов и работать 4 часа, я буду более продуктивным, чем если бы я спал 4 часа и работал 8 часов.

Конечно, прерывать работу перед лицом серьезной проблемы все еще может быть очень сложно. Даже когда я прохожу точку истощения или депрессии и не делаю существенного прогресса, я не отдыхаю, а продолжаю копать. Когда мне, наконец, удается немного продвинуться вперед, остановиться и сделать глубокий вдох, я всегда искренне рад, что выстоял. Надеюсь, я смогу продолжить этот путь, когда перейду к следующему этапу своей исследовательской карьеры.

Пожалуйста, укажите: "MIT PhD: Как начать исследования в области ИИ | Я люблю компьютеры