深度学习-感知器

感知器是神经网络的基础构成组件,是一个“神经元”。输入与权重和偏差构成线性关系,再经由激活函数转化为输出。感知器可以表示某些逻辑运算符,比如AND,OR,NOT运算符。

下面简单编写一个AND感知器,其中权重和偏差是自己设置的。

import pandas as pd

weight1 = 1
weight2 = 1
bias = -2

test_inputs = [(0,0),(0,1),(1,0),(1,1)]
test_outputs = [False,False,False,True]
outputs = []

for test_input,test_output in zip(test_inputs,test_outputs):
    linear_combination = test_input[0]*weight1 + test_input[1]*weight2 + bias
    output = int(linear_combination >= 0)
    is_correct = 'Yes' if output == test_output else 'No'
    outputs.append([test_input[0],test_input[1],linear_combination,output,is_correct])

num_wrong = len([output[4] for output in outputs if output[4]=='No'])
output_frame = pd.DataFrame(outputs,columns = ['Input1','Input2','Linear combination','Activation output','Is correct'])
if not num_wrong:
    print('You have a good job,all correct')
else:
    print('You have {} wrong.Please try again.'.format(num_wrong))
print(output_frame.to_string(index=False))

OR,NOT感知器的编码基本一样,只要稍微修改一下即可。

猜你喜欢

转载自blog.csdn.net/bj_109/article/details/81915144