Статья посвящена введению в нейронные сети и примеру их реализации. В первой части дано небольшое теоретическое введение в нейронные сети на примере нейронной сети Хопфилда. Показано, как осуществляется обучение сети и как описывается ее динамика. Во второй части показано, как можно реализовать алгоритмы, описанные в первой части при помощи языка С++. Разработанная программа наглядно показывает способность нейронной сети очищать от шума ключевой образ. В конце статьи есть ссылка на исходный код проекта.
Рубрика «neural networks» - 10
Нейронная сеть Хопфилда на пальцах
2016-05-30 в 7:21, admin, рубрики: c++, machine learning, neural networks, машинное обучение, ненормальное программированиеОтпуск по-программистски, или как я не поучаствовал в конкурсе по программированию на JS. Часть вторая
2016-05-30 в 5:41, admin, рубрики: javascript, JS, mining, neural networks, sql, Алгоритмы, Блог компании Асинхронный офлайн браузер «Мегалента», Занимательные задачкиВ первой части этого описания попытки решения интересной конкурсной задачи я рассказал о подготовке данных для анализа и о нескольких экспериментах. Напомню, условие задачи заключалось в том, чтобы с наибольшей вероятностью определить наличие слова в словаре, не имея доступа к этому словарю в момент выполнения программы и с ограничением на объем программы (включая данные) в 64K.
Как и в прошлый раз, под катом много SQL, JS, а также нейронные сети и фильтр Блума.
Отпуск по-программистски, или как я не поучаствовал в конкурсе по программированию на JS. Часть первая
2016-05-28 в 3:56, admin, рубрики: data mining, javascript, JS, mining, neural networks, python, sql, Алгоритмы, Блог компании Асинхронный офлайн браузер «Мегалента»Создание и поддержка в одиночку сложного продукта с большим зоопарком технологий и без финансовых вливаний со стороны — дело хлопотное и утомительное. Поэтому, узнав про конкурс с интересной задачей, мы в Мегаленте я подумал о том, чтобы устроить себе "творческий отпуск" и отвлечься ненадолго от работы над новой версией.
Задача состояла в том, чтобы написать программу на JS, которая будет определять, есть слово с словаре английских слов или нет. Вроде бы просто, но есть пара ограничений, делающих задачу заведомо невыполнимой:
– Словом считается не просто любое правильное слово английского языка, а именно слово, которое есть в предоставленном словаре из 600K+ слов.
– Словаря в момент исполнения программы нет, скачать его нельзя, а размер программы, включая данные, не должен превышать 64К. Внешние библиотеки подключать также нельзя, но файл данных может быть заархивирован.
Благодаря этим условиям вместо однозначного ответа результатом может быть только определение наибольшей вероятности присутствия слова в словаре.
Сразу скажу, что решение я так и не отправил из-за неудовлетворённостью результатом (решение, которое давало хотя бы 80%, я смог поместить только в 120-130К, а без превышения размера в 64К выжал максимум 70%).
Тем не менее опыт считаю достаточно интересным и достойным статьи. Под катом много SQL,JS,Python, нейронные сети, а также печальная правда о производительности CPU на хостинге.
Распознавание DGA доменов. А что если нейронные сети?
2016-04-29 в 6:03, admin, рубрики: botnets, DGA, information security, lasagne, LSTM, machine learning, Malware, natural language processing, neural networks, sklearn, theano, Блог компании «Digital Security», информационная безопасность, машинное обучение
Всем привет!
Сегодня мы поговорим про распознавание доменов, сгенерированных при помощи алгоритмов генерации доменных имен. Посмотрим на существующие методы, а также предложим свой, на основе рекуррентных нейронных сетей. Интересно? Добро пожаловать под кат.
Глубокое обучение в гараже — Две сети
2016-02-16 в 13:03, admin, рубрики: data analysis, data mining, data science, deep learning, neural networks, python, Алгоритмы, обработка изображений, Программирование
Это вторая статья из серии про определение смайла по выражению лица.
Глубокое обучение в гараже — Братство данных
Глубокое обучение в гараже — Две сети
Калибрация
Итак, с классификатором, разобрались, но вы наверняка уже заметили, что заоблачные 99% как-то не очень впечатляюще выглядят во время боевого теста на детекцию. Вот и я заметил. Дополнительно видно, что в последних двух примерах очень мелкий шаг движения окон, так в жизни работать не будет. В настоящем, реальном запуске шаг ожидается больше похожим на картинку для первой сети, а там хорошо видно неприятный факт: как бы хорошо сеть не искала лица, окна будут плохо выровнены к лицам. И уменьшение шага — явно не подходящее решение этой проблемы для продакшена.
Читать полностью »
Как уменьшить количество измерений и извлечь из этого пользу
2016-02-05 в 1:02, admin, рубрики: autoencoder, big data, data analysis, data mining, data science, deep learning, h2o, ICA, neural networks, NMF, PCA, R, SVD, главные компоненты, машинное обучение, Программирование, разложение Сначала я хотел честно и подробно написать о методах снижения размерности данных — PCA, ICA, NMF, вывалить кучу формул и сказать, какую же важную роль играет SVD во всем этом зоопарке. Потом понял, что получится текст, похожий на вырезки из опусов от Mathgen, поэтому количество формул свел к минимуму, но самое любимое — код и картинки — оставил в полном объеме.
Читать полностью »
Пробки из будущего
2012-12-06 в 12:47, admin, рубрики: neural networks, Блог компании Яндекс, нейронные сети, пробки, яндекс, Яндекс.ПробкиКак могли заметить пользователи из Москвы, сегодня на главной странице Яндекса появился новый информер — прогноз балла пробок. Он призван помочь автомобилистам планировать свои передвижения.
Он появляется, когда хотя бы один раз за следующие пять часов ожидается три или больше баллов. Показания обновляются каждые 10 минут. Читать полностью »