Нейронные сети. Часть 1 — Введение |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2017-01-17 17:50 Привет Хабр! В нашем русском обществе о нейронных сетях мало что пишут, мало кто их у нас развивает. Статьи есть, но чаще всего в них написаны математические формулы, к которым не дают пояснений. Из своего личного опыта хочу сказать, что нейронные сети — это один из лучших методов машинного обучения. Самое главное — это просто.
Нужно понять, зачем мы вообще их изучаем. Зачем мы хотим создать нейронную сеть? В большинстве случаев — искусственный интеллект. А что такое искусственный интеллект? 1. наука о создании интеллектуальных (умных) машин (чаще всего — компьютерных программ). Конечно же, их можно использовать не только для создания искусственного интеллекта, но и так же для прогнозирования, для решения сложных задач, для управления и т.д Разберёмся с вопросом: что такое биологические нейронные сети? Ведь именно с их исследования всё началось. По сути, наш мозг — это и есть сложная биологическая нейронная сеть. Проще говоря — совокупность биологических нейронов. А что такое биологический нейрон? Нервная клетка. Рассмотрим строение биологического нейрона. 1. Ответ приблизителен. 2. Не способны на вычислительные задачи. Вроде это всё. Теперь отставим биологию. Будем разбираться только с искусственными нейронами. Когда вы увидели схему искусственного нейрона — вы могли заметить формулы. Это и есть обработка данных нейроном. Давайте рассмотрим их подробнее. У многих, не понимающих в математике вопрос: что за символ ?. Это сигма. Сигма нужна для более простой записи суммирования. Может быть не совсем понятно. Поэтому опишем это на примере простого нейрона. У нашего нейрона есть входные данные. Пускай это будет 1 и 1. Два входа у нейрона. Пускай он имеет веса (синапсы). В них кстати, заключается сама суть нейрона и нейронных сетей. Мы их можем использовать как память, а так же для получения правильного результата. Ибо входные данные нам менять не нужно, сумматор никак не изменим, функции активации — смысла нет. Поэтому меняем мы веса. Сейчас мы их установим как -1 и 0, а потом разберёмся с обучением, то есть с их изменением на нужный вариант, в следующих частях. Теперь мы имеем такие данные: inp1, inp2 которые = 1. Мы имеем веса: w1, w2 (-1, 0). Перед тем как наш нейрон получит данные, мы умножим каждый соответствующий вес на соответствующий ему вход. То есть — inp1 * w1 и inp2 * w2 ( 1 * (-1) и 1 * 0 ) А теперь мы переходим как сумматору, той самой сигме. Нам нужно суммировать полученные результаты от умножения. Получается -1 + 0. И ответ нашего нейрона — -1. В принципе — это выход нашего нейрона. Обычно добавляют функцию активации. Но о них в следующих частях. Нужно запомнить то, что они преобразуют ответ в более правильный. Например: функция единого скачка. Это когда результат суммирования достиг или превысил какой-то порог. Если превысил — 1, если нет — 0. Но функций активации на самом деле больше. Хорошо. Мы с вами описали работу нейрона. Теперь приступим к практике. Программировать я буду на Java. Создадим класс, опишем данные:
Далее создадим метод, который будет выполнять работу нейрона.
На этом урок заканчивается. В следующей части поговорим о функциях активации. Некоторые материалы были взяты из wikipedia. Источник: habrahabr.ru Комментарии: |
|