Мы в ответе за ТеХ, кого обучили


Да, перефразируя А. С. Экзюпери я выскажусь именно так. А обучил я нейрон. Обычный нейрон, основанный на сумматоре (не сигмоидальный и никакой другой). Даже не совсем нейрон, можно сказать:  уж слишком упрощённая модель, но она мне частично пригодится для написания курсовой работы.


#light
let rec pair =
function | ((f:float->float->float),(hx::tx:float list),(hw::tw:float list),acc) -> pair (f,tx,tw,(acc + (f hx hw)))
| ((f:float->float->float),[],[],acc) -> acc
| ((f:float->float->float),_,[],acc) -> failwith "List are not equal!"
| ((f:float->float->float),[],_,acc) -> failwith "List are not equal!"
let neuron (x:float list) (w:float list) (limit:float) =
//1.0 / (1.0 + (exp (-0.5*((sum x w 0.0)+limit))))
pair ((*),x,w,limit)
let rec learn (X:float list) (y:float) (w:float list)=
let Current = neuron X w 0.0
let e = y - Current
match e with
| _ when (abs e
printfn "Обучение завершено. E=%f" e
w
| _ -> learn X y (List.map2 (+) w (List.map (fun x -> 0.5*x*e) X))
let X=[[0.1;0.2;0.6];[0.4;0.8;0.0];[0.3;0.0;0.3]]
let y=[0.13;0.28;0.12]
let testX=[0.2;0.3;0.2];
let testy=0.14
let rec neuroNetwork (a:int) (w:float list)=
let Current = neuron testX w 0.0
let e = testy - Current
match e with
| _ when (abs e w
| _ -> neuroNetwork ((a+1)%3) (learn X.[a] y.[a] w)
print_any (neuroNetwork 0 [0.0;0.0;0.0])

Простите за быдлокод, это ещё совсем черновик.

Реклама

Метки: , ,

комментариев 5 to “Мы в ответе за ТеХ, кого обучили”

  1. Fieral Says:

    Нармальна, а где учишься?

  2. nix0 Says:

    Московский Авиационный институт (государственный ТеХнический университет 😉

  3. Fieral Says:

    А курс?

  4. nix0 Says:

    Четвёртый 😉

  5. Fieral Says:

    ну ждёмс постов про нейросеть на F# 🙂

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s


%d такие блоггеры, как: