有没有办法在二维图形上表示阵列之间的距离?

时间:2014-04-14 22:44:51

标签: python arrays distance measure

我正在为python中的进化研究编写一个程序。我的程序的输出是一堆神经网络(固定大小/结构的图形)。

对于所有意图和目的,神经网络可以简单地由某个固定顺序的连接权重数组表示。

我希望能够以某种方式直观地表示神经网络,以显示我的程序的输出是否收敛到类似的网络或许多不同的集群。

例如,假设50个数组看起来像这样:

[.5, -.25, 2.31, -3.2, 1, .88 ...etc ]

我想以某种方式绘制这些图,以便在视觉上证明哪些阵列彼此相似。

由于

1 个答案:

答案 0 :(得分:0)

假设您的神经网络以随机值播种,则有序的有序列表之间不太可能存在任何有意义的关系。您可以通过比较大量输入的输出来检查它们在功能上的相似程度。

如果您真的想比较权重,可以绘制权重指数与网络与权重值的二维直方图。使用pyROOT:

from pyROOT import TH2D
z_min, z_max = #suitable range for weight values
h = TH2D("h", "h", 50, -0.5, 49.5, n_weights, -0.5, n_weights-0.5, 100, z_min, z_max)
for i_network in range(50):
    for i_weight in range(n_weights):
        h.Fill(i_network, i_weight, networks[i_network][i_weight]

h.Draw("colz")

此处具有相似颜色的行将指示网络中的一致权重值。