% gcc lab060515som.c -lm % a.outまずは,プログラムの上部に書かれている値をいろいろ 変えてみて,何が変わるか観察する.
#define N_XUNITS 10 // 素子の総数この値を50などに変えてみる.
int N_LEARNING = 500; // 学習回数
% gcc lab060515som221.c -lm % a.out
入力信号空間に各素子の参照ベクトルをプロットし,
神経場で隣接している素子同士のものが線で結ばれている.
まず,この図の読み方を理解する.
この例では,入力信号空間は2次元,モデルは 1次元 (20x1). 入力信号空間は2次元のままで,モデルを 2次元 (20x20)に変更してみよう.
#define N_XUNITS 20 #define N_YUNITS 20などと変更して実行してみる.
% octave GNU Octave, version 2.0.17 (i386-vine-linux-gnu). Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002 John W. Eaton. This is free software with ABSOLUTELY NO WARRANTY. For details, type `warranty'. octave:1> load data000 octave:2> hist(dat000,20) octave:3> gset term postscript octave:4> gset output "data000hist.eps" octave:5> replot octave:5> gset term X11