0% found this document useful (0 votes)
4 views

vertopal.com_5. BackPropagation

Uploaded by

shivzzzz2002
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

vertopal.com_5. BackPropagation

Uploaded by

shivzzzz2002
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

import numpy as np

inputNeurons=2
hiddenlayerNeurons=4
outputNeurons=2
iteration=6000

input = np.random.randint(1,5,inputNeurons)
output = np.array([1.0,0.0])
hidden_layer=np.random.rand(1,hiddenlayerNeurons)

hidden_biass=np.random.rand(1,hiddenlayerNeurons)
output_bias=np.random.rand(1,outputNeurons)
hidden_weights=np.random.rand(inputNeurons,hiddenlayerNeurons)
output_weights=np.random.rand(hiddenlayerNeurons,outputNeurons)

def sigmoid (layer):


return 1/(1 + np.exp(-layer))

def gradient(layer):
return layer*(1-layer)

for i in range(iteration):

hidden_layer=np.dot(input,hidden_weights)
hidden_layer=sigmoid(hidden_layer+hidden_biass)

output_layer=np.dot(hidden_layer,output_weights)
output_layer=sigmoid(output_layer+output_bias)

error = (output-output_layer)
gradient_outputLayer=gradient(output_layer)
error_terms_output=gradient_outputLayer * error

error_terms_hidden=gradient(hidden_layer)*np.dot(error_terms_output,ou
tput_weights.T)

gradient_hidden_weights =
np.dot(input.reshape(inputNeurons,1),error_terms_hidden.reshape(1,hidd
enlayerNeurons))
gradient_ouput_weights =
np.dot(hidden_layer.reshape(hiddenlayerNeurons,1),error_terms_output.r
eshape(1,outputNeurons))

hidden_weights = hidden_weights + 0.05*gradient_hidden_weights


output_weights = output_weights + 0.05*gradient_ouput_weights
if i<50 or i>iteration-50:
print("**********************")
print("iteration:",i,"::::",error)
print("###output########",output_layer)

**********************
iteration: 0 :::: [[ 0.0720921 -0.94906383]]
###output######## [[0.9279079 0.94906383]]
**********************
iteration: 1 :::: [[ 0.07203592 -0.94865304]]
###output######## [[0.92796408 0.94865304]]
**********************
iteration: 2 :::: [[ 0.07197988 -0.94823618]]
###output######## [[0.92802012 0.94823618]]
**********************
iteration: 3 :::: [[ 0.07192399 -0.94781309]]
###output######## [[0.92807601 0.94781309]]
**********************
iteration: 4 :::: [[ 0.07186825 -0.94738367]]
###output######## [[0.92813175 0.94738367]]
**********************
iteration: 5 :::: [[ 0.07181265 -0.94694777]]
###output######## [[0.92818735 0.94694777]]
**********************
iteration: 6 :::: [[ 0.07175721 -0.94650525]]
###output######## [[0.92824279 0.94650525]]
**********************
iteration: 7 :::: [[ 0.0717019 -0.94605598]]
###output######## [[0.9282981 0.94605598]]
**********************
iteration: 8 :::: [[ 0.07164675 -0.9455998 ]]
###output######## [[0.92835325 0.9455998 ]]
**********************
iteration: 9 :::: [[ 0.07159173 -0.94513658]]
###output######## [[0.92840827 0.94513658]]
**********************
iteration: 10 :::: [[ 0.07153687 -0.94466616]]
###output######## [[0.92846313 0.94466616]]
**********************
iteration: 11 :::: [[ 0.07148214 -0.94418838]]
###output######## [[0.92851786 0.94418838]]
**********************
iteration: 12 :::: [[ 0.07142756 -0.94370307]]
###output######## [[0.92857244 0.94370307]]
**********************
iteration: 13 :::: [[ 0.07137313 -0.94321009]]
###output######## [[0.92862687 0.94321009]]
**********************
iteration: 14 :::: [[ 0.07131884 -0.94270924]]
###output######## [[0.92868116 0.94270924]]
**********************
iteration: 15 :::: [[ 0.07126469 -0.94220037]]
###output######## [[0.92873531 0.94220037]]
**********************
iteration: 16 :::: [[ 0.07121068 -0.94168329]]
###output######## [[0.92878932 0.94168329]]
**********************
iteration: 17 :::: [[ 0.07115681 -0.94115781]]
###output######## [[0.92884319 0.94115781]]
**********************
iteration: 18 :::: [[ 0.07110309 -0.94062375]]
###output######## [[0.92889691 0.94062375]]
**********************
iteration: 19 :::: [[ 0.0710495 -0.94008092]]
###output######## [[0.9289505 0.94008092]]
**********************
iteration: 20 :::: [[ 0.07099606 -0.9395291 ]]
###output######## [[0.92900394 0.9395291 ]]
**********************
iteration: 21 :::: [[ 0.07094276 -0.93896809]]
###output######## [[0.92905724 0.93896809]]
**********************
iteration: 22 :::: [[ 0.0708896 -0.93839769]]
###output######## [[0.9291104 0.93839769]]
**********************
iteration: 23 :::: [[ 0.07083657 -0.93781767]]
###output######## [[0.92916343 0.93781767]]
**********************
iteration: 24 :::: [[ 0.07078369 -0.93722781]]
###output######## [[0.92921631 0.93722781]]
**********************
iteration: 25 :::: [[ 0.07073094 -0.93662788]]
###output######## [[0.92926906 0.93662788]]
**********************
iteration: 26 :::: [[ 0.07067833 -0.93601765]]
###output######## [[0.92932167 0.93601765]]
**********************
iteration: 27 :::: [[ 0.07062586 -0.93539685]]
###output######## [[0.92937414 0.93539685]]
**********************
iteration: 28 :::: [[ 0.07057353 -0.93476526]]
###output######## [[0.92942647 0.93476526]]
**********************
iteration: 29 :::: [[ 0.07052133 -0.93412259]]
###output######## [[0.92947867 0.93412259]]
**********************
iteration: 30 :::: [[ 0.07046927 -0.9334686 ]]
###output######## [[0.92953073 0.9334686 ]]
**********************
iteration: 31 :::: [[ 0.07041735 -0.932803 ]]
###output######## [[0.92958265 0.932803 ]]
**********************
iteration: 32 :::: [[ 0.07036556 -0.93212552]]
###output######## [[0.92963444 0.93212552]]
**********************
iteration: 33 :::: [[ 0.0703139 -0.93143586]]
###output######## [[0.9296861 0.93143586]]
**********************
iteration: 34 :::: [[ 0.07026238 -0.93073371]]
###output######## [[0.92973762 0.93073371]]
**********************
iteration: 35 :::: [[ 0.070211 -0.93001879]]
###output######## [[0.929789 0.93001879]]
**********************
iteration: 36 :::: [[ 0.07015975 -0.92929075]]
###output######## [[0.92984025 0.92929075]]
**********************
iteration: 37 :::: [[ 0.07010863 -0.92854929]]
###output######## [[0.92989137 0.92854929]]
**********************
iteration: 38 :::: [[ 0.07005764 -0.92779406]]
###output######## [[0.92994236 0.92779406]]
**********************
iteration: 39 :::: [[ 0.07000679 -0.92702471]]
###output######## [[0.92999321 0.92702471]]
**********************
iteration: 40 :::: [[ 0.06995607 -0.92624088]]
###output######## [[0.93004393 0.92624088]]
**********************
iteration: 41 :::: [[ 0.06990548 -0.92544221]]
###output######## [[0.93009452 0.92544221]]
**********************
iteration: 42 :::: [[ 0.06985502 -0.92462832]]
###output######## [[0.93014498 0.92462832]]
**********************
iteration: 43 :::: [[ 0.0698047 -0.92379882]]
###output######## [[0.9301953 0.92379882]]
**********************
iteration: 44 :::: [[ 0.0697545 -0.92295329]]
###output######## [[0.9302455 0.92295329]]
**********************
iteration: 45 :::: [[ 0.06970443 -0.92209133]]
###output######## [[0.93029557 0.92209133]]
**********************
iteration: 46 :::: [[ 0.06965449 -0.9212125 ]]
###output######## [[0.93034551 0.9212125 ]]
**********************
iteration: 47 :::: [[ 0.06960468 -0.92031637]]
###output######## [[0.93039532 0.92031637]]
**********************
iteration: 48 :::: [[ 0.069555 -0.91940247]]
###output######## [[0.930445 0.91940247]]
**********************
iteration: 49 :::: [[ 0.06950544 -0.91847034]]
###output######## [[0.93049456 0.91847034]]
**********************
iteration: 5951 :::: [[ 0.02082056 -0.02234698]]
###output######## [[0.97917944 0.02234698]]
**********************
iteration: 5952 :::: [[ 0.02081891 -0.02234494]]
###output######## [[0.97918109 0.02234494]]
**********************
iteration: 5953 :::: [[ 0.02081726 -0.0223429 ]]
###output######## [[0.97918274 0.0223429 ]]
**********************
iteration: 5954 :::: [[ 0.02081561 -0.02234086]]
###output######## [[0.97918439 0.02234086]]
**********************
iteration: 5955 :::: [[ 0.02081396 -0.02233882]]
###output######## [[0.97918604 0.02233882]]
**********************
iteration: 5956 :::: [[ 0.02081231 -0.02233678]]
###output######## [[0.97918769 0.02233678]]
**********************
iteration: 5957 :::: [[ 0.02081067 -0.02233475]]
###output######## [[0.97918933 0.02233475]]
**********************
iteration: 5958 :::: [[ 0.02080902 -0.02233271]]
###output######## [[0.97919098 0.02233271]]
**********************
iteration: 5959 :::: [[ 0.02080737 -0.02233067]]
###output######## [[0.97919263 0.02233067]]
**********************
iteration: 5960 :::: [[ 0.02080572 -0.02232864]]
###output######## [[0.97919428 0.02232864]]
**********************
iteration: 5961 :::: [[ 0.02080408 -0.0223266 ]]
###output######## [[0.97919592 0.0223266 ]]
**********************
iteration: 5962 :::: [[ 0.02080243 -0.02232457]]
###output######## [[0.97919757 0.02232457]]
**********************
iteration: 5963 :::: [[ 0.02080079 -0.02232253]]
###output######## [[0.97919921 0.02232253]]
**********************
iteration: 5964 :::: [[ 0.02079914 -0.0223205 ]]
###output######## [[0.97920086 0.0223205 ]]
**********************
iteration: 5965 :::: [[ 0.0207975 -0.02231846]]
###output######## [[0.9792025 0.02231846]]
**********************
iteration: 5966 :::: [[ 0.02079585 -0.02231643]]
###output######## [[0.97920415 0.02231643]]
**********************
iteration: 5967 :::: [[ 0.02079421 -0.0223144 ]]
###output######## [[0.97920579 0.0223144 ]]
**********************
iteration: 5968 :::: [[ 0.02079256 -0.02231237]]
###output######## [[0.97920744 0.02231237]]
**********************
iteration: 5969 :::: [[ 0.02079092 -0.02231034]]
###output######## [[0.97920908 0.02231034]]
**********************
iteration: 5970 :::: [[ 0.02078928 -0.02230831]]
###output######## [[0.97921072 0.02230831]]
**********************
iteration: 5971 :::: [[ 0.02078763 -0.02230628]]
###output######## [[0.97921237 0.02230628]]
**********************
iteration: 5972 :::: [[ 0.02078599 -0.02230425]]
###output######## [[0.97921401 0.02230425]]
**********************
iteration: 5973 :::: [[ 0.02078435 -0.02230222]]
###output######## [[0.97921565 0.02230222]]
**********************
iteration: 5974 :::: [[ 0.02078271 -0.02230019]]
###output######## [[0.97921729 0.02230019]]
**********************
iteration: 5975 :::: [[ 0.02078107 -0.02229816]]
###output######## [[0.97921893 0.02229816]]
**********************
iteration: 5976 :::: [[ 0.02077943 -0.02229613]]
###output######## [[0.97922057 0.02229613]]
**********************
iteration: 5977 :::: [[ 0.02077779 -0.02229411]]
###output######## [[0.97922221 0.02229411]]
**********************
iteration: 5978 :::: [[ 0.02077615 -0.02229208]]
###output######## [[0.97922385 0.02229208]]
**********************
iteration: 5979 :::: [[ 0.02077451 -0.02229005]]
###output######## [[0.97922549 0.02229005]]
**********************
iteration: 5980 :::: [[ 0.02077287 -0.02228803]]
###output######## [[0.97922713 0.02228803]]
**********************
iteration: 5981 :::: [[ 0.02077123 -0.022286 ]]
###output######## [[0.97922877 0.022286 ]]
**********************
iteration: 5982 :::: [[ 0.02076959 -0.02228398]]
###output######## [[0.97923041 0.02228398]]
**********************
iteration: 5983 :::: [[ 0.02076795 -0.02228196]]
###output######## [[0.97923205 0.02228196]]
**********************
iteration: 5984 :::: [[ 0.02076631 -0.02227993]]
###output######## [[0.97923369 0.02227993]]
**********************
iteration: 5985 :::: [[ 0.02076468 -0.02227791]]
###output######## [[0.97923532 0.02227791]]
**********************
iteration: 5986 :::: [[ 0.02076304 -0.02227589]]
###output######## [[0.97923696 0.02227589]]
**********************
iteration: 5987 :::: [[ 0.0207614 -0.02227387]]
###output######## [[0.9792386 0.02227387]]
**********************
iteration: 5988 :::: [[ 0.02075977 -0.02227185]]
###output######## [[0.97924023 0.02227185]]
**********************
iteration: 5989 :::: [[ 0.02075813 -0.02226983]]
###output######## [[0.97924187 0.02226983]]
**********************
iteration: 5990 :::: [[ 0.0207565 -0.02226781]]
###output######## [[0.9792435 0.02226781]]
**********************
iteration: 5991 :::: [[ 0.02075486 -0.02226579]]
###output######## [[0.97924514 0.02226579]]
**********************
iteration: 5992 :::: [[ 0.02075323 -0.02226377]]
###output######## [[0.97924677 0.02226377]]
**********************
iteration: 5993 :::: [[ 0.02075159 -0.02226175]]
###output######## [[0.97924841 0.02226175]]
**********************
iteration: 5994 :::: [[ 0.02074996 -0.02225973]]
###output######## [[0.97925004 0.02225973]]
**********************
iteration: 5995 :::: [[ 0.02074833 -0.02225772]]
###output######## [[0.97925167 0.02225772]]
**********************
iteration: 5996 :::: [[ 0.02074669 -0.0222557 ]]
###output######## [[0.97925331 0.0222557 ]]
**********************
iteration: 5997 :::: [[ 0.02074506 -0.02225368]]
###output######## [[0.97925494 0.02225368]]
**********************
iteration: 5998 :::: [[ 0.02074343 -0.02225167]]
###output######## [[0.97925657 0.02225167]]
**********************
iteration: 5999 :::: [[ 0.0207418 -0.02224965]]
###output######## [[0.9792582 0.02224965]]

You might also like