forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   C++ (http://forum.boolean.name/forumdisplay.php?f=22)
-   -   Нейронная сеть (http://forum.boolean.name/showthread.php?t=12954)

BlackDragon 20.07.2010 00:28

Ответ: Нейронная сеть
 
Цитата:

Сообщение от Den (Сообщение 155394)
Я только понял что она состоит из много связаных нейронов, которые передают друг другу информацию по какому то алгоритму.

Да, да, читай статью на вики про однослойный перцепторон, ее достаточно для создания первой нейросети и ее изучения.
Могу скинуть мой быдлокод на блицбейсике модификации 3-х слойного перцептрона. Сеть распознает (после обучения) с заданной точностью искомую букву на фоне помех.

den 20.07.2010 00:32

Ответ: Нейронная сеть
 
Цитата:

Да, да, читай статью на вики про однослойный перцепторон, ее достаточно для создания первой нейросети и ее изучения.
Да я уже вроде разобрался.
Цитата:

Могу скинуть мой быдлокод на блицбейсике модификации 3-х слойного перцептрона. Сеть распознает (после обучения) с заданной точностью искомую букву на фоне помех.
Кидай

BlackDragon 20.07.2010 01:55

Ответ: Нейронная сеть
 
Вложений: 1
Держи.
Там в коде есть некоторые переменные, которые управляют режимом работы программы:

Код:

save_load=1        ; запись/чтение фаила
;        0 - СОХРАНЕНИЕ НОВОЙ ГЕНЕРАЦИИ
;        1-ЗАГРУЗКА обученной сети СЕТИ
;СОХРАНЕНИЕ  ОБУЧЕННОЙ СЕТИ - клавиша "SPACE"

Ttgt_bkv=65        ;искомая буква, код 65 - буква "А", код 90 - буква "Z"

training=0        ;1 -выбор метода коррекции ошибок, 0 -без обучения

proc_oshib=5        ;определение  допустимого % ошибок, например: proc_oshib=10 это 10% ошибок


random<50        ;вероятность выпадения искомой буквы - 0.5

arl_fnt_16=LoadFont ("Arial",16,1,0) - шрифт "подопытных букв"

Эти задают размер и некоторые параметры сети:
Код:

Sx=16        ;множитель
A0x=8        ;множитель
A1x=4        ;множитель

porog_A0#=3        ;порог возбуждения A0-элемента
porog_A1#=3        ;порог возбуждения A1-элемента
porog_A2#=3        ;порог возбуждения A2-элемента

diap=2        ;диапазон, сколько A*Sx*2.5 приходится на один S ( !!!! Коррелирует с порогом возбуждения porog_A0# !!!! )
diap1=2
diap2=2

Лучше конечно написать свою нейросеть, чем разбираться с чужой.

den 20.07.2010 12:32

Ответ: Нейронная сеть
 
Цитата:

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

den 21.07.2010 01:51

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

Igor 21.07.2010 13:17

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

BlackDragon 21.07.2010 16:30

Ответ: Нейронная сеть
 
Существуют разные методы обучения нейронных сетей, почитай про них, выбери понравившийся.

den 21.07.2010 16:36

Ответ: Нейронная сеть
 
Существуют разные методы обучения нейронных сетей, почитай про них, выбери понравившийся.
Да я читал, но везде почемуто упускают эту деталь.

BlackDragon 22.07.2010 14:45

Ответ: Нейронная сеть
 
Вот самые простые методы: http://ru.wikipedia.org/wiki/Метод_коррекции_ошибки
Суть в том , что при получении на R элементе неправильного ответа, следует изменять веса связей А-R каждого активного А-элемента в нужную сторону на некоторое значение. Например, если R=0 неверный ответ, то выискиваем все А-элементы, где A=1 (активные) и к их весам связей A-R прибавляем (т.к. нам надо увеличить выход R до 1) некоторое значение (фиксированное или расчетное). Примерное так.

Reizel 23.07.2010 15:25

Ответ: Нейронная сеть
 

Не будем мимикрировать, но говоря супрематично... :-D

Randomize 06.09.2010 21:49

Ответ: Нейронная сеть
 
http://pmg.org.ru/ai/nn.zip
http://pmg.org.ru/ai/ai-lect.zip
http://pmg.org.ru/ai/nn_fl.rar
http://pmg.org.ru/ai/ngn.djvu

То, что надо.
После прочтения этого материала тема будет раскрыта на 100%.

DarkInside 08.04.2016 23:48

Ответ: Нейронная сеть
 
Начал на досуге вникать в нейронные сети. Млять, вот почему все сложные абстракции начинают объяснять с математики с кучей переменных, производных и тд? Производная сама по себе абстракция. Почему бы не начать с примера...Допустим есть 1000 девушек, у них есть параметры (входы) - рост, вес, цвет волос, сиськи, голос и тд. У каждого параметра есть степень важности (вес). Мы говорим нейрону, что переспали бы с 500 из 1000. И сеть начинает обучаться по этой выборке - корректировать веса таким образом, чтобы 500 сочетаний параметров выдавали положительную оценку, а 500 отрицательную. А потом мы показываем девушку и сеть угадывает, какие девушки в нашем вкусе, а какие нет.

DarkInside 09.04.2016 12:42

Ответ: Нейронная сеть
 
Мда...потихоньку выясняется, что все эти модели из прошлого века заброшены, не имеют возможности дальнейшего развития и не стоит забивать ими голову, поскольку сегодня представления о работе мозга изменились и мир (google, IBM) переходит на другую архитектуру сетей, где нейроны выстроены в кортикальные колонки и каждый нейрон отвечает за отдельный объект - кортикоморфные сети + нейромедиаторы... в общем, всё сложно, имеющиеся учебные пособия безнадежно устарели


Часовой пояс GMT +4, время: 21:33.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot