天行科技

使用python深度神经网络

神经网络 2024-06-20 17:37:35 浏览:3652 分享
还可以输入1000字

全部回答(1)

最佳回答

⑴Hopfield神经网络用python实现讲解?

神经网络结构具有以下三个性质:

神经元完全连接,是单层神经网络。

每个神经元既是输入又是输出,从而产生相对对称的权重矩阵,从而可以存储计算量。

在输入的刺激过程中,输出会产生连续的状态变化,并且这个反馈过程会不断重复。 如果Hopfield神经网络是一个收敛稳定网络,这种反馈和迭代计算过程引起的变化会越来越小,当达到稳定平衡状态时,Hopfield网络将输出一个稳定的常数值。

Hopfield网络可以存储一组平衡点,这样当给定网络的一组初始状态时,网络通过自行运行最终收敛到设计的平衡点。 当然,根据热力学,平衡态分为稳态和亚稳态。 在网络收敛过程中,这两种状态都是很可能发生的。

它是一个递归网络,t时刻的状态与t-1时刻的初始状态相关。 后续的神经元更新过程也采用异步更新方式(asynchronous)。

Hopfield神经网络用python实现

⑵如何用Python和深度神经网络寻找相似图像代码
首先在TuriCreate软件包中读取
导入turicreateastc
我们指定图片所在的文件夹image,让TuriCreate读取所有的图片文件,并存放在data数据框
data=tc.image_analysis.load_images('./image/')
我们看一下data数据框的内容:
data
数据包含两列信息。 第一列是图像的地址,第二列是图像的长宽描述。
接下来,我们要求TuriCreate为数据框中的每一行添加行号。 这将用作图像的标记,稍后可以使用它来查找图像并输出观看数据。
data=data.add_row_number()
data
下面是重头戏。 我们让TuriCreate基于输入图像集合构建图像相似度判别模型。
model=tc.image_similarity.create(data)
此语句可能需要一些时间来执行。 如果这是您第一次使用TuriCreate,可能还需要从Internet下载一些数据。 请稍等。
经过或长或短的等待,模型已经成功建立。
接下来,我们尝试给模型一张图片,让TuriCreate帮我们从当前图片集中选择10张最相似的图片。
为了方便,我们选择第一张图片作为查询输入。
我们使用show()函数来显示这张图片。
tc.Image(data[0]['path']).show()
接下来我们来查询一下。 我们让模型找到与这张图片最相似的10个。
similar_images=model.query(data[0:1],k=10)
我们将结果存储在similar_images变量中。 我们来看看都有哪些图片。
similar_images
返回结果共10行。 符合我们的要求。
每行数据包含4列。 它们是:
查询图像的标记
获取结果的标记
结果图像与查询图像之间的距离
结果之间相似度的排名值图像和查询图像
通过这些信息,我们可以看到哪些图片与输入查询图片最相似。
请注意,第一个结果图像实际上是我们的输入图像本身。 思考这个问题没有任何意义。
我们提取所有结果图像的标签(索引)值,忽略第一个(本身)。
similar_image_index=similar_images['reference_label'][1:]
过滤所有图片索引列表中以上9张图片的标签:
filtered_index=data['id'].apply(lambdax:xinsimilar_image_index)
filtered_index
验证通过后,请执行以下语句。 我们再次调用TuriCreate的explore()函数来显示相似度查询结果图像。
数据[filtered_index].explore()

2