我一直在使用此代码为小型数据集生成 SOM。它会产生一个我无法弄清楚的错误。
from mvpa2.suite import *
data = np.array(
[[1,0,0,1,1,0,1,0,1,0],
[1,0,0,0,1,0,1,0,1,1],
[1,0,1,0,1,0,0,0,1,0],
[0,1,1,1,0,1,0,1,0,0],
[1,1,0,0,1,0,1,1,1,1],
[0,0,1,0,1,1,0,1,0,0],
[1,1,0,1,0,1,0,0,1,0],
[1,0,0,0,1,0,1,1,1,1],
[0,1,1,0,1,0,1,0,0,0],
[1,1,0,1,0,1,0,1,1,0]])
data_names = \
['u1', 'u2', 'u3', 'u4',
'u5', 'u6', 'u7', 'u8',
'u9', 'u10']
som = SimpleSOMMapper((10, 10), 100, learning_rate=0.05)
som.train(data)
pl.imshow(som.K, origin='lower')
mapped = som(data)
pl.title('DATA SOM')
for i, m in enumerate(mapped):
pl.text(m[1], m[0], data_names[i], ha='center', va='center',
bbox=dict(facecolor='white', alpha=0.5, lw=0))
pl.show()
错误 :
pl.imshow(som.K, origin='lower')
TypeError: Invalid dimensions for image data
任何帮助理解这一点?