Hopfield网络的设计与实现
反馈神经网络,Hopfield网络,DHNN,Python。
通过Python编程,使用Hebb学习方法计算DHNN的权重参数;
通过Python编程,使用同步方法迭代DHNN,获取最终网络稳定状态
实验步骤
1,导入必要的函数库
2. 设计一个DHNN,激活函数使用符号函数
3. 将两幅灰度图片(1.png和2.png)转换为二值向量作为两个模式保存到DHNN
4. 使用外积法(Hebb学习规则)设计网络的权重参数,
5. 用异步迭代法,计算当输入一个全1向量时,网络的最终输出。
6. 计算当输入图片3.png时,网络的最终输出。
7. 计算当输入图片4.png时,网络的最终输出。
import numpy as np
from PIL import Image
import matplotlib.pyplot as plt
img2=Image.open("1.png")
img2=np.int64(np.array(img2)>127)
vector_train=img2.flatten()
img2=Image.open("2.png")
img2=np.int64(np.array(img2)>127)
vector_train2=img2.flatten()
attractors=np.array([vector_train,vector_train2])
attractors=attractors*2-1
print("保存的模式:\n"<