Обучение нейронных сетей с учителем

Печать RSS
375

Автор
Пацак
0
помимо класификации нейроная сеть должна будет предсказывать развертывание событий работая совместно с еще ненаписанным класом обрабатывающим некую последовательность событий.
А

Оранжевые штаны
0
Сори косячный пример написал.
Править не буду лучше объясню)
$fann->train(array("$i",$i), array($i));//
(array("$i",$i)- это данные по которым сравнивается, то есть если ты распознаешь картинку длина массива будет равна её размеру, и в каждой ячейки по байту, если сравниваешь 2 числа то должен быть массив из 2 чисел.
array($i)- не верно написал, тут не 1 элемент должен быть. Если ты сравниваешь 2 числа то тебе на прямую сеть не скажет что больше что меньше, она вернет вероятность. То есть вместо array($i) как минимум должно быть 2 события отвечающие за правду и не правду, что то запутано выходит всё же исправлю пример)
А

Оранжевые штаны
0
Учим мы её сколько хотим, разница лишь будет в качестве ответов.
На 1 примере нормально не научишь по этому там цикл.
Вот рабочий пример.
<?php 
require('./fann.class.php'); 
$fann = new fann(); 

$trainFile = 'train_data.txt';//тут файл для обучения 
$filename = 'test.txt';//сама сеть 

// train 
$fann->create_standard(4, 2, 4, 4, 1);//не помню вроде 4- это тип обучения, 2 слоёв, 40-нейронов,49- скрытых слоёв,1-хз 
$fann->set_activation_function_hidden(FANN_SIGMOID_SYMMETRIC);//это в дрках почитай) 
$fann->set_activation_function_output(FANN_SIGMOID_SYMMETRIC);//

//научим сеть  находить большее из 2 чисел
$fann->train(array(7,8), array(0,1));//обучение с учителем 


//$fann->train_on_file($trainFile, 1000, 0.01); //это обучение из файла, 1000- не помню, 0.01 скорость обучения

$fann->save($filename);// сохранение сети 


// run 
$fann->create_from_file($filename); 


$res = $fann->run(array(7, 8));// задаём вопрос 
var_dump($res);//массив ответов 
?>
Изменил: Александр (28.09.2010 / 07:59)
Автор
Пацак
0
понял немного разобрался но я учил правда с нейронной сетью работал не на PHP а на C# - реализовать конечно легче - писал антикапчу для депосит файлэс - использовал 36 выходов (26 латинских символов + 10 знаков - числа). и при результате сравнивал у кого на выходе большая маса. Я конечно никогда не писал еще двухслойных НС но поидее в моей системе можно выло сделать тотальную проверку, при этом исключив результаты с наименьшей массой.. типа берем выход с наибольшей массой импульс которого идет дальше ко второму слою где происходит более конкретная проверка мол если в первом слое мы спрашиваем какой это символ то в друх слойной системе мы можем ее еще и спросить точно ли это такой символ. правда еще не знаю как такое организовать (говорил - это только теория (с двух-ми сетями никогда не работал)) ведь будет возвращенно два результата где нейрон скажет да это точно X символ, или нет я неуверен... но как тогда конкретезировать какой именно символ там утвержден?
D

Малиновые штаны
0
#1, smile что то ты Веталь куришь постоянно.. ну ладно, сейчас то на здоровую голову, можишь ответить, каково практическое применение сево чуда? (именно для тебя)
А

Оранжевые штаны
0
24, Если правильно понял.
ведь будет возвращенно два результата
это почему? сколько выходов сделаешь столько и будет
да это точно X символ
точно скорее всего не будет), почти всегда вероятность выпадает.
но как тогда конкретезировать какой именно символ там утвержден?
для каждого символа нужно сделать выход.
Сеть вернёт вероятность для каждого из выходов.
Автор
Пацак
0
-- дубликат --
Изменил: Веталь (28.09.2010 / 17:25)
Автор
Пацак
0
25. Денис Петрович, во первых: написание собственного класса для управления нейросетями. Втрое: сам проэкт оглошать конкретно не хочу по понятным причинам - пиши в асю)))
втретих: намой взгляд это очень хорошая практика которая помоему хорошенько потрепала мои взгляды к программированию (представь только маштабы той же эллементарной до ужаса поисковой системы если в нее включить и эллементы нейросетей?! )
D

Малиновые штаны
0
28. Вандер, хорошо, отпишусь в асю, просто я не пойму что такое эта нейросеть D отстал от жизни..
D

Малиновые штаны
0
<!-- ДУБЛЬ -->
Изменил: delete (28.09.2010 / 17:49)
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск