Привет. Закончился курс по нейронным сетям. Хороший курс, но мало практики. Так что в этом посте мы рассмотрим, напишем и протестим ограниченную машину Больцмана — стохастическую, генеративную модель нейронной сети. Обучим ее, используя алгоритм Contrastive Divergence (CD-k), разработанный профессором Джеффри Хинтоном, который кстати и ведет тот курс. Тестировать мы будем на наборе печатных английских букв. В следующем посте будет рассмотрен один из недостатков алгоритма обратного распространения ошибки, и способ первоначальной инициализации весов с помощью машины Больцмана. Кто не боится формулок и простыней текста, прошу под кат.
Метка «нейронные сети» - 3
Реализация Restricted Boltzmann machine на c#
2012-12-08 в 14:24, admin, рубрики: .net, data mining, анализ данных, искусственный интеллект, машина Больцмана, нейронные сети, обучение без учителя, метки: c++, анализ данных, машина Больцмана, нейронные сети, обучение без учителяIBM провела симуляцию нейрокомпьютера, сопоставимого с мозгом человека
2012-11-19 в 20:38, admin, рубрики: будущее здесь, искусственный интеллект, моделирование мозга, нейробиология, нейронные сети, суперкомпьютер, метки: моделирование мозга, нейробиология, нейронные сети, суперкомпьютерНа конференции Supercomputing 2012 компания IBM представила результаты работы нейросимулятора Compass на суперкомпьютере Sequoia (второе место в мировом рейтинге суперкомпьютеров). Впервые был достигнут масштаб, соответствующий человеческому мозгу — 530 миллиардов нейронов и 137 триллионов синапсов. Симуляция происходила в 1542 раза медленнее реального времени. В ней были задействованы все 1 572 864 ядер и полтора петабайта памяти,
Compass — система симуляции новой компьютерной архитектуры TrueNorth, которую в IBM называют «старшим братом Watson». В отличие от привычных нам компьютеров, основанных на архитектуре фон Неймана, TrueNorth построен по образу и подобию мозга, на базе разработанных IBM "нейросемантических ядер" — чипов, содержащих кремниевые нейроны и синапсы. Каждый чип содержит 256 нейронов, 1024 аксона и 256х1024 синапса. Площадь чипа, произведённого по 45-нанометровой технологии — 4.5 мм2. В рекордной симуляции была смоделирована работа 2084 миллиардов таких ядер.
Читать полностью »
Построение нейронных сетей в php используя FANN, пример реализации
2012-11-15 в 9:07, admin, рубрики: php, искусственный интеллект, нейронные сети, метки: нейронные сетиПередо мной предстала задача анализа большого количества информации и выявления закономерностей. И первое, что пришло в голову — построить математическую модель с помощью нейронной сети.
Поскольку данные для анализа формируются в php и мне этот язык сейчас ближе всего, то искалась библиотека с интерфейсом для php. В связи с этим мне порекомендовали FANN (Fast Artificial Neural Network) — открытое программное обеспечение для построения сетей. У этого решения есть апи для 15 языков, так что почти каждый сможет выбрать что-то для себя.
Пример. Распознавание языка текста на странице
Для примера возьмем задачу легкую, но недалекую от нашей реальности и от серьезных задач. Допустим есть 1000 документов, на 3-х разных языках. Пусть это будут французский, английский и польский. Наша задача научить нейронную сеть распознавать язык документа. Для этого мы используем самый простой частотный механизм. Но тем не менее его результаты неплохи. Его суть в том, что у каждого языка с разной частотой в тексте встречаются одни и те же символы. Мы подготавливаем 3 больших куска текста для каждого из языков (английский, французкий, польский), посчитаем для каждого символа частоты. Эти данные мы передадим в нейронную сеть, с указанием какой набор частот принадлежит каждому из языков. Дальше нейронная сеть все сделает сама.
Локальная скорость обучения весов нейронов в алгоритме обратного распространения ошибки
2012-11-02 в 15:38, admin, рубрики: data mining, Алгоритмы, анализ данных, искусственный интеллект, нейронные сети, обратное распространение ошибки, обучение, метки: data mining, анализ данных, искусственный интеллект, нейронные сети, обратное распространение ошибки, обучение Привет, в одной из последних лекций по нейронным сетям на курсере речь шла о том, как можно улучшить сходимость алгоритма обратного распространения ошибки в общем, и в частности рассмотрели модель, когда каждый вес нейрона имеет свою собственную скорость обучения (neuron local gain). Я давно хотел реализовать какой нибудь алгоритм, который бы автоматически настраивал бы скорость обучения сети, но все лень руки не доходили, а тут вдруг такой простой и незамысловатый способ. В этой небольшой статье я расскажу про эту модель и приведу несколько примеров того, когда эта модель может быть полезна.
Бесплатный MATLAB для студентов онлайн курсов
2012-10-15 в 19:28, admin, рубрики: Matlab, octave, искусственный интеллект, математика, нейронные сети, образование, онлайн-курсы, Учебный процесс в IT, халява студентам, метки: Matlab, octave, нейронные сети, образование, онлайн-курсы, халява студентам
Буду краток. Компания Matlab сделала шаг навстречу удаленному обучению и предоставила свой продукт бесплатно скачать торрент без смс для студентов Courcera.
Читать полностью »
Алгоритм обратного распространения ошибки с регуляризацией на c#
2012-10-15 в 11:39, admin, рубрики: .net, data mining, алгоритм, искусственный интеллект, нейронные сети, обратное распространение ошибки, регуляризация, метки: c++, алгоритм, искусственный интеллект, нейронные сети, обратное распространение ошибки, регуляризацияПривет. Я хочу продолжить тему реализации методов машинного обучения на c#, и в этой статье я расскажу про алгоритм обратного распространения ошибки для обучения нейронной сети прямого распространения, а также приведу его реализацию на языке C#. Особенность данной реализации в том, что реализация алгоритма абстрагирована от реализаций целевой функции (той, которую нейросеть пытается минимизировать) и функции активации нейронов. В итоге получится некий конструктор, с помощью которого можно поиграться с различными параметрами сети и алгоритма обучения, посмотреть и сравнить результат. Предполагается, что вы уже знакомы с тем, что такое искусственная нейросеть (если нет, то настоятельно рекомендую для начала изучить википедию или одну из подобных статей). Интересно? Лезем под кат.
Стресс и нейронные сети: почему лучше не нервничать
2012-08-20 в 8:00, admin, рубрики: Научно-популярное, нейронные сети, Стресс, Эмоции, метки: нейронные сети, Стресс, ЭмоцииЗа свою жизнь я сталкивался с десятками публикаций и книг, посвященных преодолению стрессов и эмоциональной реактивности. Обычно в таких материалах большое внимание уделяется избавлению от нервного напряжения, в то время как вред, наносимый организму во время стрессов, практически не описывается.
Даже Карнеги в свое время пытался с медицинской точки зрения описать вред, получаемый организмом от излишних переживаний, однако он не продвинулся дальше его краткой характеристики. В книге «Как перестать нервничать и начать жить» автор ссылается на результаты исследований, которые показали, что нервные люди чаще других умирают от инсультов, инфарктов и страдают от язвы желудка. Довольно убедительно, но информации все равно недостаточно.
Читать полностью »
PyBrain работаем с нейронными сетями на Python
2012-07-24 в 17:18, admin, рубрики: pybrain, python, Алгоритмы, искусственный интеллект, машинное обучение, нейронные сети, метки: pybrain, python, машинное обучение, нейронные сети
В рамках одного проекта столкнулся необходимостью работать с нейронными сетями, рассмотрел несколько вариантов, больше всего понравилась PyBrain. Надеюсь её описание будет многим интересно почитать.
PyBrain — одна из лучших Python библиотек для изучения и реализации большого количества разнообразных алгоритмов связанных с нейронными сетями. Являет собой хороший пример удачного совмещения компактного синтаксиса Python с хорошей реализацией большого набора различных алгоритмов из области машинного интеллекта.
Предназначен для:
- Исследователей — предоставляет единообразную среду для реализации различных алгоритмов, избавляя от потребности в использовании десятков различных библиотек. Позволяет сосредоточится на самом алгоритме а не особенностях его реализации.
- Студентов — с использованием PyBrain удобно реализовать домашнее задание, курсовой проект или вычисления в дипломной работе. Гибкость архитектуры позволяет удобно реализовывать разнообразные сложные методы, структуры и топологии.
- Лекторов — обучение методам Machine Learning было одной из основных целей при создании библиотеки. Авторы будут рады, если результаты их труда помогут в подготовке грамотных студентов и специалистов.
- Разработчиков — проект Open Source, поэтому новым разработчикам всегда рады.
Иллюзия реальности, записки о человекостроении
2012-07-01 в 19:54, admin, рубрики: мозг, нейронные сети, Песочница, философия, метки: Мозг, нейронные сети, философия
Это моя вольная интерпретация накопленных на данный момент знаний как непосредственно из нейрофизиологии и смежных наук, так и при конструировании динамических нейросетей.
У мозга есть отдаленное сходство с машинами виртуализации. Например в том, что он способен симулировать в себе поведение окружающих динамических сущностей, начиная со своего обладателя. Его элементы идеально подходят для такой симуляции, как и элементы FPGA. И сама эта симуляция или отражение — происходит непрерывно и автоматически, по мере открытия «новых граней» объекта и в чем-то предвосхищая или прогнозируя их.
Базовые принципы алгоритмов обучения Hierarchical Temporal Memory
2012-06-23 в 9:42, admin, рубрики: numenta, ИИ, искусственный интеллект, нейронные сети, метки: numenta, ИИ, нейронные сети Доброго времени суток!
В последнее время на хабре довольно часто появляются статьи, в которых авторы описывают современные теории и подходы к построению искусственного интеллекта и нейронных сетей. Однако примеров конкретной реализации приводится довольно скудное количество. Попробуем восполнить этот пробел. В данной статье я опишу только основные теоретические и практические моменты, использованные при написании рабочего макета алгоритмов, предоставленных Numenta Inc.
Читать полностью »