Gyors neurális hálózat minden egyes

Meg kell írni a rendszer, amely képes döntéseket hozni a karaktert, amely megfelelhet egy vagy több ellenséget. A rendszer ismert:

karakter életerejét százalékában;

A válasz kell formájában az alábbi:

elrejtése (a hirtelen támadások);

nem csinál semmit.

Hogy vonat egy táblázatot #xAB; tanulságok # xbb;:

Egészségügyi pisztoly ellenség

50% Attack január 1-jén

90% 1 2 támadás

80% 0 1 támadó

30% január 1 elrejtése

60% 1 2 elrejtése

0 1 40% elrejtése

Most mi lesz a vonat a INS és mentse el egy fájlba:

public static void main (String [] args)

// hogy egy új INS létrehozásához szükséges rétegek listája

lista layerList = new ArrayList();

layerList.add (Layer.create (3, ActivationFunction.FANN_SIGMOID_SYMMETRIC, 0.01f));

layerList.add (Layer.create (16, ActivationFunction.FANN_SIGMOID_SYMMETRIC, 0.01f));

layerList.add (Layer.create (4, ActivationFunction.FANN_SIGMOID_SYMMETRIC, 0.01f));

Fann Fann = új Fann (layerList);

// Létrehozunk egy edző, és meghatározza a tanuló algoritmus

Trainer edző = új edző (Fann);

/ * Képzett órákat fájlból Maximum

100,000 ciklus, mely jelentések minden iterációban és elérni 100yu

hiba kevesebb, mint 0,0001 * /

trainer.train (. új fájl ( "train.data") getAbsolutePath (), 100,000, 100, 0.0001f);

ANN áll réteg neuronok. Első réteg - ez neuronok #xAB receptorokon # xbb; vagy neuronok a bemenő adatokat. Az utolsó réteg output neuronok. Az összes többi - ez a rejtett rétegeket. Ebben az esetben, az első neuron réteg 3:

egészség (0,1-1,0);

jelenlétében fegyverek (1 van, 0-nem);

Fann osztály objektum ez egy neurális hálózat, amely úgy van kialakítva alapján a korábban létrehozott réteg.

Object edző osztály magában foglalja az algoritmusok képzési neurális hálózat át a kivitelező edző. A képzést követően, ne felejtsük el, hogy mentse el a fájlt.

Használja a következő kódot, hogy érvényesítse a tanulmány:

public static void main (String [] args)

Fann Fann = új Fann ( "Ann");

1. A kifejezések száma nem lehet statikus. Ie például bizonyos esetekben nem vagyunk fontosak, hogy egy pisztoly - az eredmény nem függ tőle. Ennek megfelelően meg kell valahogy figyelembe venni és egyszerűsítse az algoritmust. Ez növeli a sebességet a döntéshozatalban.

2. Mit tegyek, ha van egy ütköző órákat? Vskidku, az oldat alapján kiválasztott valószínűségszámítás: például, ha az azonos bemeneti feltételek 2-szer kell „támadás”, és 1 alkalommal „fut”, a függvény kell a 66,6% -ában vissza a „támadás”. Ie szükségességét véletlenszerűen!

3. A rendszer nem veszi figyelembe a tapasztalat (óraszám). Tegyük fel, hogy már csak 1 óra jelenlétében a fegyvert és a két ellenfél vissza a „támadás”, és 1000 tanulságok „run”. Ie További órák a fegyver nem létezik. És amikor olyan helyzet áll elő: egy fegyvert, és csak egy ellenfél - ez a funkció visszatérhet a „run”, mert az eltolódás irányába „menekülési”. Mi fog emlékezni ezt az élményt, és tovább súlyosbítja a helyzetet. Ennek eredményeként, a hajó lesz hajlamos a gyávaság.

És ha az egyszerűsített -, akkor az egész probléma csökkenti megtalálása F függvény

egy sor ismert (x) = y

Minden ott divatos hívószavak, mint a „neurális hálózat” és a „mesterséges intelligencia” - csökken a normális közelítés a probléma! ))

Felfedés ág 1

A neurális hálózat nem így működik, hogy táplálja a felhő adatok minden helyzetben, és alkalmazkodik, és megváltoztatja magát mindenkinek örömet sluchayam.I szerkezet ő lesz könnyebb, mint az egy-funktsii.Neyroset csomó idegsejtek programok egyes neuron több bemenet , kapcsolatot más neuronok, és egy kimenettel, majd a másik neyronu.Strukturno és oldalsó fizetési könnyebb, IMHO.

Kapcsolódó cikkek