|
n-DESIGN の FAQ のページです。
|
- Q1. n-DESIGNの製品版はありますか。値段はいくらですか。注文はどうすればいいですか。
- Q2. 「感性と設計」付録の CD-ROM の n-DESIGN の入手は可能ですか。
- Q3. CD-ROM 版 n-DESIGN にはプログラム上の制限はありますか。
- Q4. n-DESIGN Pro が n-DESIGN より優れている点は何ですか。
- Q5. n-DESIGN の学習定義で『収束条件』は平均誤差ですか,それとも二乗誤差ですか。
- Q6. n-DESIGN で,出力層の異なるユニット毎に,異なる出力関数を設定したいのですが。
- Q7. n-DESIGN の収束誤差グラフで上方に,学習誤差(数字1,数字2) 推定誤差(数字1,数字2)と表示されますが,数字1,数字2の意味を教えてください。
- Q8. n-DESIGN の収束誤差グラフで,表示オプションで『平均誤差』,『二乗誤差』と切り替えても,画面が変わらないことがあります。なぜですか。
- Q9. ニューロ学習中に,学習誤差と推定誤差が共に下がり,また元に戻る現象が時々見られます。
- Q10. n-DESIGN で CV 法(「感性と設計」41ページ)を用いてニューロを学習させる場合,どのような手順でネットワークが構築されるのか教えてください。マニュアルに基づいて一度目の操作をした後,以降の操作はどのようにすれば良いのでしょうか。
- Q11. ある教師データで中間層 1 層のときは収束しますが,中間層 2 層以上とすると収束しません。
- Q12. n-DESIGNのパターン数が5で固定されて変更できません。
- Q13. 出力ユニットが2個以上になるとデザインウィンドウが出てきません。
- Q14. ニューロの最適な中間層のユニット数の決定に AIC(「感性と設計」42ページ) を用いることはできますか。
- Q15. 上限値,下限値の範囲外の出力値を同定結果として得ることは可能ですか。(2001.02.01)
- Q16. 入出力層のユニットごとに個別にフィルタを設定することはできませんか。また,ユーザ定義関数を用いることはできませんか。
- Q17. 同定結果を出力する際に,数値の上限・下限を設定しないで外挿することはできませんか。
- Q18. 自動学習によりCV法を実行するには,以下の方法がありますが,どれが正しいのでしょうか。(2001.07.10)
- 学習データを入力→実行→自動学習の選択→適用範囲「すべて」を選択後OK
- 学習データを入力→Cross Validation法のボックスチェック→実行→自動学習の選択→適用範囲「すべて」を選択後OK
- 学習データを入力→Cross Validation法のボックスチェック→一番最初のデータに*印をチェック→実行→自動学習の選択→適用範囲「すべて」を選択後OK
- Q19. 最適な学習回数の決定方法がありましたら教えてください。
- Q20. n-DESIGNでは結合係数,しきい値を初期化する際に乱数系列として「3456」などが使われますが,具体的にはこの数字はどのように使われるのですか。
- Q21. デザインウィンドウの右にある,小さなウィンドウの表示がおかしいです。(2001.08.14)
- Q22. n-DESIGNでは AIC (赤池情報量基準) はどこに出力されますか。(2001.09.06) (2001.11.19,回答に AIC の計算法を追加しました)
- Q23. n-DESIGN (フリー版) の学習終了時に「不正な浮動小数点数演算命令」というメッセージが出ます。(2001.09.13)
- Q24. デザインウィンドウの満足解の読み取り方がよくわからないのですが。(2001.09.13)
- Q25.【未学習データの導出】学習した結果導き出される予測値を見るにはどうしたらよいですか。(2001.11.19)
- Q26. 学習に用いたデータ以外のデータを入力し予測値を求める方法を教えてください。(2001.11.19)
- Q27. タブメニュー「寄与度解析」のグラフ上にはx軸に線形相関係数の絶対値が,y軸には寄与度がプロットされるはずですが,表示されません。右クリックで出てくるプロパティで,x軸,y軸のレンジスケールを変えても表示されません。(2001.11.19)
- Q28. AICを計算する際,学習誤差パネルで自乗誤差を得るとのことですが,学習パネルにあるL: とT: のどちらを使えばいいですか。(2002.1.28)
- Q29. 学習条件は全く同じにして検証データを異なるものにした2つの学習パターンを考えます。学習は検証に依存しないので,この2つの学習パターンの誤差履歴は同じ物にならなければなりませんが,そうなりません。(2002.1.28)
- Q30. n-DESIGN Pro で,相関図パネル,学習誤差パネル,寄与度解析パネルでオートスケールができないようになっています。また,相関図パネル,学習誤差パネルで対数スケールが設定できません。(2002.2.8)
- Q31. n-DESIGN Pro で,ndsファイル,csvファイルのオープン時に表示されるファイルダイアログで,ダイアログが示すフォルダの位置が n-DESIGN のインストールフォルダに固定されていて不便です。(2002.3.4)
- Q32. n-DESIGN Pro で,相関図パネルの表示内容が別のパネルに移って戻ってくるとデフォルトの表示状態になってしまいます。(2002.3.4)
- Q33. n-DESIGN,n-DESIGN Pro は解析者向けには大変よくできていると思いますが,解析者が構築したニューラルネットワークを用いて,解析者ではない一般のユーザがデータ処理をするには,少し不便です。(2002.5.7)
- Q34. 学習回数の定義を教えてください。(2002.12.2)
- Q35. ダウンロード版を使っています。説明書には CSVファイルによる入出力が可能とありますが,データの作成方法を教えてください。(2003.2.3)
- Q36. n-DESIGN のニューラルネットワークエンジンのパフォーマンスを教えてください。(2004.1.5)
- Q37. ダウンロード版で,学習誤差 (平均二乗誤差) が収束条件に達しても学習が終了しません。(2004.3.1)
- Q38. n-DESIGN Pro の動作環境を教えてください。(2005.11.14)
- Q39. n-DESIGN Pro が Windows XP で動作しません。(2005.11.14)
- Q40. 感度と寄与度について詳しく教えてください。(2005.3.7)
- A1. V1.0が1999年12月10日にリリースされ,2001年4月現在,V1.0の機能拡張版 n-DESIGN Pro V1.1 が発売中です。値段は一般価格30万円,アカデミック価格20万円です。注文は当社まで直接お願いします。詳しくはこちらをご覧ください。
- A2. 当社までお問い合わせください。
- A3. n-DESIGN には次のような制限があります。
| (1) ネットワーク構造 | (2) 学習データ件数 | (3) デザインウィンドウ | (4) データ印刷 |
ネットワーク階層 最大4層
ユニット数
入力層 - 最大 25個
出力層 - 最大 5個
中間層 - 最大 15個
リカレント型ネットワークは利用不可
|
最大1000件 |
出力層が1個の場合のみ表示可 |
不可 |
- A4. n-DESIGN Pro は,n-DESIGN に対してつぎの機能拡張が行なわれています。
- n-DESIGN ではネットワーク構造またはデータ件数に制限を設けていますが,n-DESIGN Pro には制限がありません。
- MDI(マルチドキュメントインターフェース)を採用し,異なるデータ間の学習状況の比較や複数の学習プロセスを並列に実行できます。
- プロジェクト毎にデータを系統的に管理するプロジェクト管理が可能です。
- 入出力層においてユニットごとのフィルタ処理が可能です。(V1.1より)
- 出力層においてユニットごとの出力関数設定が可能です。(V1.1より)
- 出力関数タイプにユーザー定義関数の設定が可能です。(V1.1より)
- 検証データ付き学習として v-fold CV法 が利用できます。(V1.1より)
- A5. 学習の収束判定は,学習データに対する平均二乗誤差で評価しています。
- A6. n-DESIGN試用版では,各層毎に出力関数を定義しますので,ユニット毎に出力関数を設定することはできません。しかし製品版 n-DESIGN Pro V1.1 より設定が可能になりました。
- A7. 誤差グラフに表示される数値については,例えば:
学習中 [5600]: 学習誤差 (0.0617 0.0034) : 推定誤差 (0.1171 0.0072)
はつぎの意味です。
学習状況 [学習回数] : 学習誤差(平均誤差 平均2乗誤差),推定誤差(平均誤差 平均2乗誤差)
- A8. 表示のタイミングによって描画面が更新しない場合があります。表示変更が有効になるのは学習中に表示を切り替える,または学習前に表示を切り替えた後,学習を開始するときです。この時グラフのY軸描画領域を指定してください。
- A9. これは一般によく見られる現象です。一時的な現象として無視して学習を続けて下さい。
- A10. 確かに,CV法で毎回学習をさせると少しずつ異なるネットワークが形成されます。しかし,その結果(それぞれの適切な学習回数や推定誤差)を総合的に判断して,対象とする問題に適した最適学習回数を決定したら,全データを学習に用い,最適学習回数学習させて得られたネットワークが最後に推定に用いるべきネットワークとなります。
A11. n-DESIGN では 4 層以上にした場合,収束しにくくなるようです。これにつきましては,現在のところ原因はわかっておりません。
- A12. パターンの追加/削除は「学習データ」画面にて行います。同画面のパターン数を表示するテキストボックスは編集できません (ユーザーズガイド,3.2.4 学習データ,P39)。データを追加するには:
- グリット上でマウス右ボタンをクリックし,ポップアップメニューを呼び出す。
- メニューから追加を選ぶ。→「セル挿入」ダイアログが表示される。
- 行全体を選んでOKを押すと,パターンデータが1行追加され,列全体を選んでOKを押すと,ユニットが1行追加されます。
削除についても同様な方法で行います。
- A13. デザインウィンドウについては試用版には,出力1個の場合のみ表示
するよう,制限を設けています。n-DESIGN Pro では複数の出力を持つものでも表
示できます。
- A14. 本システムには最適な中間層ユニットを自動的に決定する機構は現在
のところありません。経験的には,入力ユニット数が7〜9個程度でしたら,中間層ユニット数を4個程度とってあれば問題ありません。それで作業をお続けください。
「感性と設計」の中にある「可調整モデルパラメータ K」(43ページ)とは,ニューラルネットワークの中にある,調整可能なパラメータの総数,という意味で,いくつかの解釈方法があります。入力層ユニットの数,中間層ユニットの数,出力層ユニットの数をそれぞれ N,M,L とすると,K=N*M+M*L+M+L とすることが多いようです。これは結合係数の数としきい値の数の合計に対応します。また,通常,中間層ユニット数を決定するためには,入力層と出力層のユニット数はそれぞれ固定されている(すなわちニューラルネットワークの入出力はすでに決定されているため,N と M は一定に固定されている) ため K を K=M のように簡略化して用いることもあります。これですと,可調整パラメータ=中間層ユニットの数,となります。
AIC についてですが,もともと AIC はニューラルネットワークにきちんと理論的なものがあるわけではなく,ニューラルネットワークの最適学習と数理統計学の「最適モデル決定」とがお互いによく似ていることから,「AIC をニューロにも適用してみた結果,うまくいったことがある」という経験則から適用が始まったものです。したがって,AIC の導出にも若干のバリエーションがあります。Q22もご覧ください。
- A15. V1.1 では可能です。出力ユニットの出力関数に上限値,下限値の設定を外した線形関数を設定出来るので,正規化した場合 0〜1 の範囲外の同定結果を得ることが出来ます。これにより,重回帰分析と似た働きをするネットワークを構築することが可能となりました。
- A16. ユニットごとの個別のフィルタ処理,出力層におけるユーザ定義関数の使用はV1.1からできるようになりました。
ユーザ定義関数につきましては,n-DESIGN Pro の仕様に基づいて作られた dll 形式の関数(C関数)を,n-DESIGN Pro が実行時に動的に取り込みます。ただし,VC++などの開発環境が別途に必要になります。
- A17. このご質問に答えるために,V1.1.3 (2001年2月1日現在最新版) の機能を強化しました。
学習関数を,従来の"BinarySigmoid"と"Linear"の2つから,"BinarySigmoid","Linear1","Linear2"の3つに変更いたしました。これらの詳細は以下の通りです。
| BinarySigmoid | 従来のBinarySigmoidと同じ |
| Linear1 | 従来のLinearと同じで出力に上限値,下限値があります
| | Linear2 | 出力に上限値,下限値がありません
|
同定結果に上限値・下限値を設定しないようにするには,学習時には出力関数にLinear1を用いて学習させ,学習が終了したらネットワーク図パネルで上限値,下限値を設定しない出力ユニットの出力関数をすべてLinear2に変更してから同定結果を求めてください。
- A18. どれも正しい実行方法です。ただし,学習データを入力して学習したい状態になりましたら,一度その状態をファイルに保存してから自動学習を行ってください。
- A19. 必ずしも最適になるとは言えませんが,「推定誤差」が極小となる学習回数に決定するのが良いとされています。学習誤差パネルで,「推定誤差」が極小になっている学習回数を知ることが出来ます。この方法は過剰学習という,必要以上に学習(過剰学習)させると誤差を伴ったデータに対し誤差の現象まで再現してしまいかえって汎化能力が下がる,いう現象を避けることが出来ます。
場合にもよりますが,先ず5000回〜10000回を目安に学習させてみて,もし極値が現れなかっ
たらさらに学習回数を増やしてみる,という方法で行ったらよいと思います。
- A20. 結合係数,閾値の初期値を決定する際,C の rand 関数で各値を得ていますが,この関数の種 (seed) としてこの数値を用いています。値そのものには意味はありませんが,同じ値ならば乱数系列は同じ,これを変えたい場合は別の値を指定します。
- A21. 環境によってこのような現象が現れることを確認しました。V1.1.4で対応いたしました。
- A22. 現バージョン (V1.1) の n-DESIGN では,AIC は出力されません。必要ならば別に計算することになります。AICは次式によって算出します。
AIC = T * P * log(E * 2) + 2 * K
T:学習データ数
P:出力層ユニット数
K:調整可能なパラメータ総数 (結合係数の数としきい値の数)
※または中間層ユニット数 (A12 参照)
E:平均自乗誤差 (n-DESIGNの算出自乗誤差値)
log は自然対数
例として
- ネットワーク構造
3階層 (入力層ユニット:5,中間層ユニット:4,出力層ユニット:3)
- 学習データ数:
30パターン
- 学習結果
平均自乗誤差=0.0123
※学習誤差パネル(画面)から自乗誤差を得る。
の場合,
となります。
- A23. 入力系列の各値がすべて同じ値であるとき,「不正な浮動小数点数演算命令」というメッセージが出ることがあります。この入力は出力に寄与していないので,この系列の削除をお願いします。n-DESIGN Pro では,このようなデータは入力できないようになっています。
- A24. 学習済みのネットワークに対して,各入力ユニットの最小値,平均値,最大値を正規化したもの,およびそのときの各出力ユニットの正規化した値とをセットにしたものが一枚のパネルになっています。
例えば,入力ユニットが3つのときは,入力ユニット 1 の最大値,最小値,平均値,入力ユニット 2 の最大値,
最小値,平均値,入力ユニット3の最大値,最小値,平均値それぞれに対しパネルがつくられますので,合計で 3×3×3 = 81 枚のパネルがつくられることになります。
デフォルトでは上記の様になっていますが,自分で各入力ユニットの値を代入しその時の出力ユニットの値を得ることもできます。
選択されているパネルを正面から見た図が「デザインウィンドウ」パネル右下の「チャート図」に表示されています(全てのユニットの値は正規化されています)。
また各パネルの頂点の値は,「同定結果」パネルで,正規化された場合,本来の値の両方とも得ることができます。このとき,各パネルの番号と「同定結果」パネルの行番号が対応しています。
- A25. 学習後,デザインウインドパネル及び同定結果パネルが表示されますが,同定結果パネル上に予想結果が表示されます。但し,この予想結果はプログラムが入力データをパラメトリックに組み合せたデータパターンについて,現学習属性から結果を予想したものです。
これに加えて,学習に利用したデータを未学習データとしてプログラムに取込むことで,既知の結果とプログラムが予想した結果を比較することができます。以下にその手順を示します。
- 学習データの保存
学習後,学習データパネルを開き,メニューから「ファイル」→「名前を付けて保存」→「CSVフィル」を選び,学習データを csv ファイルに保存します。
- 未学習データの読込み
同定結果パネルを開き,メニューから「ファイル」→「開く」→「CSVファイル」を選び,先に保存した csv ファイルを読込みます。
- 結果の評価
同定結果パネルに表示された出力予想値と既知の出力値の値を比較し,学習パラメータの汎化性能を評価します。
- A26. 以下の手順で行います。Q25,A25もご覧ください。
- 未学習データのCSVファイルを作成する。
- 同定結果パネルを開き,ファイルメニューから上記作成したデータを読込む。
- 同定結果パネルで予測値を評価する。
- A27. プロパティ設定ダイアログには,左に最大値,右に最小値の入力ボックスがあります。設定値の大小関係が逆であるとデータがプロットされません。x軸,y軸とも0から1の範囲で設定してください。
- A28. L,T はそれぞれ学習誤差,推定誤差に対応しております。L の方をお使いください。
- A29. 検証データが学習に影響を与えているのでは,とのご質問です。学習誤差に差異がみられるのは,検証データがニューロ学習に影響を与えるのではなく,検証データが異なることによって,ニューラルネットワークへの入力値が異なることに起因します。
ニューラルネットワークへの入力値は,0.0〜1.0 (上限値〜下限値) の範囲に正規化されたものが対象になります。n-DESIGN では,「学習データ+検証データ」の各入出力ユニットにおいて正規化します。サンプリングされたデータに対するスケーリングは,本来ニューロ学習と切り離して考えるべきであり,正規化の際はサンプリングデータ全体に対して同一手法を用いて正規化を行います。局所的に見ると検証データが変わることでニューロ学習時の学習誤差に差異が生じるので,全体のアプローチには矛盾がありません。
どのデータを検証データする・しないはユーザの選択であり,サンプリングの際は学習データ用,検証データ用と用途を特定して行うことは一般にはないと思います。
- A30. プログラムの不具合です。V1.2 で修正いたしました。
- A31. V1.2.1 で修正いたしました。一旦ndsファイルまたはcsvファイルをオープンすると,その位置が次回に指示されるフォルダ位置になります。
- A32. プログラムの不具合です。V1.2.1 で修正いたしました。
- A33. これは大変多く寄せられるご意見です。次期バージョンではインタフェースを追加する予定です。
- A34. 学習データが n 件あるとし,そのパターンを Pi (i=1, ... , n) とします。このとき,つぎの 1) 〜 6) までの処理を行います。この一連の処理が1回の学習です。
1) パターン Pi についてネットワークに対して出力結果を得る。
2) 出力結果と目標値である教師信号との誤差を各ユニットについて計算する。
3) 結合係数,閾値の修正量を計算する。
4) 結合係数,閾値を修正する。
5) 1) 〜 4) を n 回繰り返す。
6) 収束判定をおこなう。収束条件を満たしていなければ 1) へ。
- A35. 説明書がやや不十分なのですが,ダウンロード試用版では,入力層と出力層の合計とCSVファイルの列の数が一致している必要があります。入力層ユニットの学習データの後ろの列に出力層ユニットの学習データを追加してひとつのCSVファイルにしてください。
(例)入力データ3,出力データ1の場合,次のようにデータを作成します。列1〜3が入力データ,列4が出力データに対応します。
| 列1 | 列2 | 列3 | 列4 |
| ◇, | ◇, | ◇, | ○ |
| ◇, | ◇, | ◇, | ○ |
| ◇, | ◇, | ◇, | ○ |
| ◇, | ◇, | ◇, | ○ |
| ◇, | ◇, | ◇, | ○ |
- A36. 3 つの例のパフォーマンスを示します。PC のスペックは Pentium4,1.8GHz です。
- 例1.
入力ユニット数 3
出力ユニット数 1
中間層2 層,各ユニット数 6
学習件数 5
収束条件 0.001
→
収束計算回数 377478
計算時間 65秒
- 例2.
入力ユニット数 4
出力ユニット数 2
中間層2 層,各ユニット数 8
学習件数 5
収束条件 0.001
→
収束計算回数 268801
計算時間 131秒
- 例3.
入力ユニット数 3
出力ユニット数 1
中間層2 層,各ユニット数 6
学習件数 2528件
学習回数 4000回で打ち切り
→
計算時間 333秒
誤差 0.05
- A37. ダウンロード版のバグのようです。
- A38. Microsoft Windows NT4.0,2000,XP です。
- A39. 2004 年 7 月 以前にご購入された n-DESIGN Pro 1.2 は Windows XP に対応しておりません。当社までお問い合わせのうえ,XP 対応版を取得した後インストールしてください。
- A40. 「感度と寄与度」についての解説をご覧ください。
|
n-DESIGN に関するお問い合せは
postmaster@alde.co.jp
までお願いします。
|