Каковы некоторые хорошие ресурсы для изучения искусственных нейронных сетей?

Меня действительно интересуют искусственные нейронные сети, но я ищу место для начала.

Какие ресурсы существуют и что является хорошим стартовым проектом?

Ответ 2

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

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

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

Одной из лучших книг по этой теме является Крис Бишоп Neural Networks для распознавания образов. Он довольно старый на этом этапе, но по-прежнему является отличным ресурсом, и вы часто можете найти используемые копии онлайн около 30 долларов США. Глава нейронной сети в его новой книге "Распознавание образов и машинное обучение" также довольно обширна. Для особо хорошего учебного пособия по реализации см. Этот код на CodeProject.com, который реализует умную сеть, называемую сверточной сетью, которая ограничивает возможности подключения таким образом, чтобы он очень хорошо учился классифицировать визуальные шаблоны.

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

Ответ 3

Я очень рекомендую эту прекрасную серию Anoop Madhusudanan на Code Project.

Он познакомит вас с основными принципами, чтобы понять, как они работают, и понять, как использовать его библиотеку brainnet, чтобы создать свой собственный.

Ответ 4

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

Если вы хотите узнать больше об ИИ и машинах, я рекомендую прочитать Peter Norvig Искусственный интеллект: современный подход. Это широкий обзор AI и множество современных технологий. Он также использует историю и более старые методы, и даст вам более полное обоснование основ ИИ и машинного обучения.

Нейронные сети довольно легки. Особенно, если вы используете генетический алгоритм для определения весов, а не для правильного обратного распространения.

Ответ 5

I вторая рекомендация dwf Neural Networks для распознавания образов Криса Бишопа. Хотя, возможно, это не стартовый текст. Norvig или онлайн-учебник (с кодом в Matlab!), Вероятно, были бы более мягким введением.

Хорошим стартовым проектом будет OCR (оптическое распознавание символов). Вы можете сканировать на страницах текста и подавать каждый символ через сеть, чтобы выполнить классификацию. (Сначала вам нужно было бы обучать сеть!).

Ответ 7

Я могу порекомендовать, где не начинать. Я купил "Введение в нейронные сети" Кевина Герни, который имеет хорошие отзывы об Amazon и претендует на "очень доступное введение в один из самых важных темы в когнитивной и компьютерной науке" . Лично я бы не стал рекомендовать эту книгу в качестве старта. Я могу понять только около 10%, но, возможно, это только я (английский не мой родной язык). Я собираюсь изучить другие варианты этой темы.

Ответ 8

http://www.ai-junkie.com/ann/evolved/nnt1.html - это четкое введение в многослойный персептрон, хотя он не описывает алгоритм backpropagation

вы также можете взглянуть на generation5.org, который содержит множество статей об ИИ в целом и содержит некоторые отличные тексты о нейронной сети.

Ответ 9

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

Что касается первого проекта, Kohonen maps интересны для категоризация: найти скрытые отношения в вашей музыкальной коллекции, построить интеллектуальный робот или решить Премия Netflix.

Ответ 12

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

Ответ 14

Я нашел учебник "Вычислительный интеллект" невероятно полезным.

Ответ 15

Если вы хотите быстро узнать о приложениях некоторых концепций нейронной сети на реальном симуляторе, есть отличная онлайн-книга (теперь wiki) под названием "Вычислительная когнитивная неврология" на http://grey.colorado.edu/CompCogNeuro/index.php/CCNBook/Main

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

Кроме того, каждый раздел дополняется домашними заданиями, которые уже для вас. Просто скачайте, следуйте инструкциям и имитируйте все, о чем говорила глава. Программное обеспечение, которое они используют, Emergent, немного тонкое, но невероятно надежное: это продукт более 10 лет работы, который я считаю.

Я прошел через это в классе под уроки в прошлом семестре, и это было здорово. Просматривает все шаг за шагом.

Ответ 16

Я согласен с другими людьми, которые говорили, что изучение биологии - не самая хорошая отправная точка... потому что у них много нерелевантной информации в биологии. Вам не нужно понимать, как работает нейрон, чтобы воссоздать его функциональность - вам нужно только имитировать свои действия. Я рекомендую Ray Kurzweil "Как создать разум" - это касается аспекта биологии, который имеет отношение к вычислительным моделям (создание сингулярного нейрона путем объединения нескольких входов и стрельбы после достижения порога), но игнорирует бесполезные вещи, такие как как нейрон на самом деле добавляет вход тэгов togeather. (Например, вы будете использовать + и неравенство для сравнения с порогом)

Я должен также указать, что книга на самом деле не о "создании ума" - она ​​фокусируется только на распознавании иерархической структуры/неокортекса. Общая тема была обсуждена с 1980-х годов, когда я верю, поэтому есть много старых книг, которые, вероятно, содержат слегка датированные формы одной и той же информации. Я прочитал старые документы, в которых говорится, что система видения, например, является многоуровневым распознавателем паттерна. Он утверждает, что это относится ко всей неокортексу. Кроме того, возьмите его "предсказания" с куском соли - его аппаратные оценки, вероятно, довольно точны, но я думаю, что он недооценивает, насколько сложными могут быть простые задачи (например, вождение автомобиля). Конечно, он видел много прогресса (и был частью некоторых из них), но я все еще думаю, что он слишком оптимистичен. Существует большая разница между тем, что автомобиль ИИ способен проехать милю успешно в 90% случаев по сравнению с 99,9 +%, что может сделать человек. Я не ожидаю, что какой-либо ИИ по-настоящему будет управлять мной в течение как минимум 20 лет... (Я не считаю дорожные автомобили BMW, которые должны быть "обучены" на реальном курсе, поскольку они на самом деле не играют одинаково игра)

Если у вас уже есть базовое представление о том, что такое ИИ и как его можно смоделировать, вам может быть лучше пропустить что-то более техническое.