PyBrain - Bekerja dengan Jaringan Feed-Forward
Jaringan umpan maju adalah jaringan saraf, di mana informasi antara node bergerak ke arah depan dan tidak akan pernah berjalan mundur. Jaringan Feed Forward adalah yang pertama dan paling sederhana di antara jaringan yang tersedia di jaringan saraf tiruan. Informasi tersebut diteruskan dari node input, di samping node tersembunyi dan kemudian ke node output.
Dalam bab ini kita akan membahas bagaimana -
- Buat Jaringan Feed-Forward
- Tambahkan Koneksi dan Modul ke FFN
Membuat Jaringan Feed Forward
Anda dapat menggunakan IDE python pilihan Anda, yaitu PyCharm. Dalam hal ini, kami menggunakan Visual Studio Code untuk menulis kode dan akan menjalankan hal yang sama di terminal.
Untuk membuat jaringan feedforward, kita perlu mengimpornya dari pybrain.structure seperti yang ditunjukkan di bawah ini -
ffn.py
from pybrain.structure import FeedForwardNetwork
network = FeedForwardNetwork()
print(network)
Jalankan ffn.py seperti yang ditunjukkan di bawah ini -
C:\pybrain\pybrain\src>python ffn.py
FeedForwardNetwork-0
Modules:
[]
Connections:
[]
Kami belum menambahkan modul dan koneksi apa pun ke jaringan feedforward. Oleh karena itu jaringan menunjukkan array kosong untuk Modul dan Koneksi.
Menambahkan Modul dan Koneksi
Pertama kita akan membuat layer input, hidden, output dan menambahkan yang sama ke modul seperti yang ditunjukkan di bawah ini -
ffy.py
from pybrain.structure import FeedForwardNetwork
from pybrain.structure import LinearLayer, SigmoidLayer
network = FeedForwardNetwork()
#creating layer for input => 2 , hidden=> 3 and output=>1
inputLayer = LinearLayer(2)
hiddenLayer = SigmoidLayer(3)
outputLayer = LinearLayer(1)
#adding the layer to feedforward network
network.addInputModule(inputLayer)
network.addModule(hiddenLayer)
network.addOutputModule(outputLayer)
print(network)
Keluaran
C:\pybrain\pybrain\src>python ffn.py
FeedForwardNetwork-3
Modules:
[]
Connections:
[]
Kami masih mendapatkan modul dan koneksi kosong. Kami perlu menyediakan koneksi ke modul yang dibuat seperti yang ditunjukkan di bawah ini -
Berikut adalah kode di mana kami telah membuat koneksi antara input, hidden dan output layer dan menambahkan koneksi ke jaringan.
ffy.py
from pybrain.structure import FeedForwardNetwork
from pybrain.structure import LinearLayer, SigmoidLayer
from pybrain.structure import FullConnection
network = FeedForwardNetwork()
#creating layer for input => 2 , hidden=> 3 and output=>1
inputLayer = LinearLayer(2)
hiddenLayer = SigmoidLayer(3)
outputLayer = LinearLayer(1)
#adding the layer to feedforward network
network.addInputModule(inputLayer)
network.addModule(hiddenLayer)
network.addOutputModule(outputLayer)
#Create connection between input ,hidden and output
input_to_hidden = FullConnection(inputLayer, hiddenLayer)
hidden_to_output = FullConnection(hiddenLayer, outputLayer)
#add connection to the network
network.addConnection(input_to_hidden)
network.addConnection(hidden_to_output)
print(network)
Keluaran
C:\pybrain\pybrain\src>python ffn.py
FeedForwardNetwork-3
Modules:
[]
Connections:
[]
Kami masih belum bisa mendapatkan modul dan koneksi. Sekarang mari kita tambahkan langkah terakhir, yaitu kita perlu menambahkan metode sortModules () seperti yang ditunjukkan di bawah ini -
ffy.py
from pybrain.structure import FeedForwardNetwork
from pybrain.structure import LinearLayer, SigmoidLayer
from pybrain.structure import FullConnection
network = FeedForwardNetwork()
#creating layer for input => 2 , hidden=> 3 and output=>1
inputLayer = LinearLayer(2)
hiddenLayer = SigmoidLayer(3)
outputLayer = LinearLayer(1)
#adding the layer to feedforward network
network.addInputModule(inputLayer)
network.addModule(hiddenLayer)
network.addOutputModule(outputLayer)
#Create connection between input ,hidden and output
input_to_hidden = FullConnection(inputLayer, hiddenLayer)
hidden_to_output = FullConnection(hiddenLayer, outputLayer)
#add connection to the network
network.addConnection(input_to_hidden)
network.addConnection(hidden_to_output)
network.sortModules()
print(network)
Keluaran
C:\pybrain\pybrain\src>python ffn.py
FeedForwardNetwork-6
Modules:
[<LinearLayer 'LinearLayer-3'gt;, <SigmoidLayer 'SigmoidLayer-7'>,
<LinearLayer 'LinearLayer-8'>]
Connections:
[<FullConnection 'FullConnection-4': 'SigmoidLayer-7' -> 'LinearLayer-8'>,
<FullConnection 'FullConnection-5': 'LinearLayer-3' -> 'SigmoidLayer-7'>]
Kami sekarang dapat melihat modul dan detail koneksi untuk feedforwardnetwork.