Procesamiento del lenguaje natural: construcción artificial de un perceptrón (unidad neuronal)

La estructura del perceptrón se muestra en la figura:
Inserte la descripción de la imagen aquí
Ahora impleméntelo con código Python:

import numpy as np

example_input = [1, .2, .1, .05, .2]
example_weights = [.2, .12, .4, .6, .90]
input_vector = np.array(example_input)
weights = np.array(example_weights)
bias_weight = .2

# 这里bias_weight * 1只是为了强调bias_weight和其他
# 权重一样:权重与输入值相乘,区别只是 bias_weight
# 的输入特征值总是 1
activation_level = np.dot(input_vector, weights) + (bias_weight * 1)
print(activation_level)

# 阈值函数
threshold = 0.5
if activation_level >= threshold:
    perceptron_output = 1
else:
    perceptron_output = 0
print(perceptron_output)

# 调整权重值
expected_output = 0
new_weights = []
for i, x in enumerate(example_input):
    new_weights.append(weights[i] + (expected_output - perceptron_output) * x)
weights = np.array(new_weights)
# 初始权重
print(example_weights)
# 新的权重
print(weights)

Supongo que te gusta

Origin blog.csdn.net/fgg1234567890/article/details/112708901
Recomendado
Clasificación