- 1 名前:1 [04/09/11 01:48:08]
- について教えてよ
- 488 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 00:40:37 ]
- ところで複素ニューラルネットワークって何が嬉しいんだろう?
普通の(実数型)NNよりパラメータ数の割に能力が高いとしたら それはなぜなんだろうか?
- 489 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 17:25:55 ]
- >>488
興味深いですね。学生でもない素人ですが、 NNの肝は複雑さだと直観的に思えるので、 複素数を用いた方が複雑さが増していい結果を もたらすのではと思ってます。そもそも 学習したNNがなぜ知能があるように振る舞う のかということすらわかっていないわけで、 錬金術のごとく、ひたすらこねくり回すことが 大事なんじゃないかなと。
- 490 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 01:35:16 ]
- >学習したNNがなぜ知能があるように振る舞う
寡聞にして初耳だが
- 491 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 01:52:30 ]
- そっか
- 492 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 05:18:55 ]
- 知能の定義によりますね。
- 493 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 05:45:52 ]
- 「ように」ってのでどこまで許容するかにもよるな
- 494 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 15:33:58 ]
- 細胞性粘菌の振る舞いに知能があるように感じるかどうかも問題だな。
全体にベターッと広がってから最短経路に集まる様子には知性を感じない。
- 495 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 23:05:26 ]
- >>494
俺は489の書き込みにも知能は感じない
- 496 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 02:50:39 ]
- そもそも知能とは何なのか。
- 497 名前:デフォルトの名無しさん [2008/04/07(月) 13:27:32 ]
- 知能があるようにってのは
最初に意図してプログラムしていたのと違う結果を出す ってことだべ。
- 498 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 13:46:57 ]
- 知能とは何かなんて、知能なんて言葉を使わなければ考えなくていいよ。
だから、最近は論文に人工知能なんてタイトルを付ける人がいなくなったんだろ。
- 499 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 17:58:53 ]
- 自分の書いたプログラムが意図と異なる結果を出力したらそれが知能です。
- 500 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 20:39:25 ]
- それなんてバグ?
- 501 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 20:53:22 ]
- >>488
NNの節の数が増えるのと同じ効果が得られるだけじゃなかろうか?
- 502 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 02:10:40 ]
- 情報科学や工学的利用価値にしか関心のない
人からしたら知能なんてことを哲学的、科学的に 追求する必要ありませんからね。 >>501 よければそういう考察に至った経緯を教えて ください。
- 503 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 13:06:03 ]
- >501
それだと複素ニューラルネットワークに 特別な有り難みは何も無いと言う事になるね。 節を増やしたのと同じ効果しか得られないのなら。
- 504 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 13:28:25 ]
- 複素じゃなくても入力値又は出力値をを或る関数に通せばNN段階で学習する関数の形が簡単になって
汎化能力や精度がよくなる事があるのと同じ原理ではないかと予想
- 505 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 11:54:29 ]
- NNの節数を2倍にすると複素ニューラルネットワークと同等のものは構築できる
複素数を使うこと=制約条件 になってるからその辺になにかいい事があるのかな?
- 506 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 02:45:59 ]
- 構築できるっていう根拠あるの?
先行研究なんかの論文があれば教えて欲しい
- 507 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 06:09:00 ]
- >506
二つの実数(実数のペア)に特定の演算ルール (演算ルールに対する制約条件)を課したものが すなわち複素数。 複素ニューラルネットワークもまた同じ。
- 508 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 01:22:08 ]
- >>507
ノード数が倍になることと関係ないね
- 509 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 01:42:06 ]
- >>508
iを虚数単位とする 複素NN 節α (x1+y1*i) 節β (x2+y2*i) α→β (a+b*i) であるとき β=(x1*a-y1*b)+(x1*b+y1*a)*i x2=x1*a-y1*b y2=x1*b+y1*a NN 節A x1 節B y1 節C x2 節D y2 A→C a A→D b B→C -b B→D a であるとき C=x2=x1*a-y1*b D=y2=x1*b+y1*a
- 510 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 13:26:17 ]
- >508
複素ニューラルネットワークがどんなものかまず調べなよ。 ググればたくさん見つかるよ。 www.kki.yamanashi.ac.jp/~masaki/koba_lab/complex.html など。
- 511 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:19:21 ]
- なるほど。
- 512 名前:デフォルトの名無しさん [2008/04/14(月) 12:04:00 ]
- ニューラルネットの基本的なことを質問させてください。
ニューラルネットとは、組み合わせが多すぎて到底 総当たりでは評価しきれない複数のパラメータがあるシステムの 中の最適なものを算出する手法 ということであっていますでしょうか? 何がいいたいかといいますと、株、先物のデータ分析(というか予想) に使っている人をみかけたのですが、 パラメータをたくさん用意して、最適解求めるのだと 過度の最適化(カーブフィッティング)にしかならないのでは?と思っています。
- 513 名前:デフォルトの名無しさん [2008/04/14(月) 13:11:32 ]
- あっていません
- 514 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 14:56:48 ]
- >過度の最適化(カーブフィッティング)にしかならないのでは?と思っています。
これは、学習方法をどうするかにかかっているんだな カーブフィッティングさせるように学習させれば、そうなるし そうならないように工夫すれば、またそうなる。 学習とはそもそも何かと考えるハメになるのだ。
- 515 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 02:15:40 ]
- >514
過度の最適化に陥っているかどうかの判定は結局、新しい(未学習の) データを持ってきて評価させてみるしか無いのかね?
- 516 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 06:46:55 ]
- まずは「過度の最適化」を定義してみてくれ
そうすれば判定方法も自ずと明らかになるだろ
- 517 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 07:01:56 ]
- 過学習でググレよ。
- 518 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 13:54:47 ]
- >>515
もしそうすると、再びその「未学習」のデータに対して過度の最適化を始めるだけかと それもちょっと非効率なね、だから学習とは何かを考える必要がでてくると。
- 519 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 15:06:27 ]
- そのための cross validation だろ……jk
- 520 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 15:21:59 ]
- cross validation とは何をするものかという事をよく考えてみると、自滅していることに気づけるよ。
- 521 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 15:31:10 ]
- カーブフィッティングの問題は、ニューラルネットワークというよりはノンパラメトリック解析の難しさが表面化しているというのが実態かもしれない
そうなるとちょっとスレ違い気味だね。
- 522 名前:512 mailto:sage [2008/04/18(金) 01:04:24 ]
- レスありがとう。
ニューラルネットワークは全然詳しくないのでついていけないのですが、 ニューラルのキーが学習ならば、過学習がカギっぽいですね。 つきつめるとニューラルとは違う方面になっちゃうのかな? cross validation は、ぐぐってみたのですが、 株とか先物だと既存のデータを、推定と検証用に分けて検証するってことかな? システムトレードで言うバックテストデータと、フォワードテストデータをわけるということかな。
- 523 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 12:24:05 ]
- >>518
日本の品格を著しく下げている在日チョンや 在日チャンコロの排斥が必要なのは言うまでもないでしょう。 まずは東京から。石原閣下に期待です。 前述した残業代を要求して裁判を起こしたりしているのも、 ほとんどはその手の輩ですしね。 日本の国際競争力を低下させようと工作しているんでしょう。
- 524 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 16:34:03 ]
- >523
凄い誤爆だな。
- 525 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 17:42:54 ]
- >>523
石原?冗談じゃねぇよ、あの財政破綻野郎 新銀行東京の責任とらせて全財産没収にしろ 小泉復活キボンネ
- 526 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 00:48:52 ]
- 財政破綻野郎ってw
破綻してたのをここまで回復させたのが石原だろ 美濃部とか青島とかのダメダメ都知事を知らんのか
- 527 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 08:18:13 ]
- 入力層から隠れ層への重みの大きな入力が重要な入力と言うことになるんでしょうか?
- 528 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 17:55:55 ]
- ちょっと話題がそれるかもしれないけど
今日は天気が悪い 今日は非常に天気が良い という2つの項目がDBにあったとします 「今日は天気が良い」で検索した場合後者のほうが一致率が高いわけですが これを抽出するSQL文は書けますか? テーブル構成は自由に設計してもらってかまいません 単語毎に項目を分割格納してもいいです
- 529 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 21:08:00 ]
- >>528
>後者のほうが一致率が高いわけですが こういうことは「一致率」の定義をしていないから言えないんだよ。
- 530 名前:デフォルトの名無しさん mailto:sage [2008/04/28(月) 01:54:11 ]
- >>527
そういう考え方もあるけど 「重要な入力」をどう定義するかが問題で, 一般には「ある出力」に対する影響が大きなものだから 影響をきちんと計算すべき(非線型だから定数にはならない)
- 531 名前:デフォルトの名無しさん mailto:sage [2008/04/28(月) 09:08:51 ]
- >>529
この場合の一致率は一致する文字の数です 多くて余った分は無視 短い方の文の文字すべてが存在する場合は完全一致と判断します
- 532 名前:デフォルトの名無しさん mailto:sage [2008/04/29(火) 03:36:27 ]
- これは何かのクイズですか?
SQLでは難しいけど、NNならできます、というオチですか?
- 533 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 00:46:33 ]
- >>531
それNNの使いどころが無いよ
- 534 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 16:20:58 ]
- ついにやったぞ!
この技術は今のコンピュータを本質的に変えるかも知れない。 wiredvision.jp/news/200805/2008050123.html
- 535 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 18:25:29 ]
- >>534
usbメモリサイズでnnの構造の書き込みと計算結果の出力が出来るものがあるといいな
- 536 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 22:14:31 ]
- 二端子のアクティブ素子は皆淘汰されたからなぁ
メモリ以外の使い道は難しそう MRAMとどっちが早いか/速いか
- 537 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 03:23:38 ]
- 端子数の問題じゃ無いんじゃない?
どちらかと言うと現状のLSI技術に馴染んで集積化できるかどうか? もし可能なら本当にアナログニューロLSIチップや集積化した アナログコンピュータも夢じゃ無いと思う。 その際の演算部分はやっぱりOPアンプかな? あれってそんな集積化できたっけ?
- 538 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 14:50:06 ]
- 二端子アクティブ素子は回路/システム設計が難しい
トンネルダイオードやパラメトロンは当時としては非常に優れた素子だったが 信号を一方向に流す(入出力を分離する)ために三相クロックが必要で廃れた 今の回路技術なら何とかなるのかも知れないが アナログは(A級動作なので)消費電力が大きいのが大問題 上手くパルスorD級で使えればいいのだが
- 539 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 15:51:22 ]
- 隠れ層の数が多すぎる場合、学習の精度は良くても別のデータでの予測精度が悪くなったりするんでしょうか?
- 540 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 17:11:18 ]
- 悪くなったり良くなったりする
- 541 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 18:11:17 ]
- OpenCVのリファレンス(日本語版)をさらっと見ていたらNNに関する機能も提供しているようなことが書いてあったんですが、
使ってる人いたらNNのライブラリとしてどう思うか感想をお願いします。
- 542 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 20:25:56 ]
- >多すぎる場合
と書いてるんだから,多過ぎるかどうかの判定手段として訊いてるんじゃまいか 学習データにもよるが,一般的にはそう考えて構わない(overfitting)
- 543 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 01:05:29 ]
- NNの並列化に関する情報
ちょうあい
- 544 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 02:30:42 ]
- 意味不明
- 545 名前:デフォルトの名無しさん mailto:sage [2008/05/12(月) 23:07:55 ]
- >>541
OpenCVの物体検出関数で使ってるよ
- 546 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 03:17:57 ]
- 学習が進むと、誤差は極小値に落ち着くんですよね?
だったら、どうして過学習が起きるんでしょうか?
- 547 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 03:38:53 ]
- だったらって、両者には何の関係も無いよ。
- 548 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 12:24:00 ]
- 関数の近似に対する局所的な誤差の最小化がローカルミニマム
学習しすぎて関数の近似なんて関係なくなったのが過学習
- 549 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 01:42:22 ]
- >>546
ヒント:「過学習」とは....
- 550 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 03:16:41 ]
- >>546
その時点で知りうる誤差最小値なだけだよ 谷はいくつもある可能性がある 一番深い谷に落ちるのが正解なわけだが 浅めの谷で最小値が決定してしまうと間違いでしょ それが過学習
- 551 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 03:22:37 ]
- というか人間の脳に正解なんて存在しないわけだ
9時に人に出会ったら「おはよう」という点に収束していたとして それは正解でも間違いでもあるわけだ 学習すればするほどこの学習の重みが増していく 「キモオタには話しかけてはいけない」という別の学習が行われても 「おはよう」の重みが大きすぎると「おはよう」と言ってしまうわけだ こうなると都合が悪いだろ これが過学習
- 552 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 08:25:48 ]
- 過学習とは
訓練データに対する誤差は減るが テストデータに対する誤差は増える状態
- 553 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 11:14:35 ]
- 線形関数から作った学習データに対して
ものすごい波形で学習に使ったのみ点を見事に通過する関数を思い描いてください。
- 554 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 15:24:33 ]
- 過学習かどうかってのはあくまでその挙動が正常かどうかという希望に関係してくる
数学的に正しい解は存在しない 計算するよう設計した時だけは別途解が存在するだけ すべては製作者がこういう結果がほしいと望むことから始まる
- 555 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 15:28:07 ]
- 製作者が希望する結果が基準となり
それより足りなければ学習不足 それを超えれば過学習
- 556 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 15:29:49 ]
- ちなみに人間の脳は過学習を抑えるために
常に学習結果を消去している 再学習されない場合は自然消滅する
- 557 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 15:32:56 ]
- まあ人間の場合製作者はいないので基準が存在しない
だから過学習という状態は存在しないのだけど ただ心理学系の馬鹿達に言わせれば 社会的に逸脱した状態が過学習なんだとさ
- 558 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 00:21:05 ]
- なるほど
ある特定の社会(コミュニティ)に過適応するわけか
- 559 名前:デフォルトの名無しさん [2008/06/25(水) 14:48:21 ]
- SOMでオススメの本ないですが。
アマゾン見るとコホーネンの本は翻訳がくそだとか非難が多いのですが。
- 560 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 23:50:56 ]
- あれは確か文科系の先生(しかも学生に手伝わせてる)が訳してて
箸にも棒にもかからなかった記憶がある
- 561 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 16:39:02 ]
- 今日本屋で自己組織化ネットワークの本見てきたけど
ほとんどの章を大学生が訳してた
- 562 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 16:46:05 ]
- むしろ教授が関わってるのは「はじめに」くらいだと思われ
- 563 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 02:39:34 ]
- 全滅なのか
ウェブのほうがマシだということか
- 564 名前:デフォルトの名無しさん mailto:sage [2008/07/02(水) 18:24:58 ]
- あほでも研究費が取れる希少な分野ですからね
- 565 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 00:31:41 ]
- 制約付きニューラルネットワーク学習に関して詳しい参考書があれば教えてください。
基本的なニューラルネットワークのプログラムは組んだ事がありますが 制約に関してはネット上で言葉を見かけた程度で資料も見つからずどう実装するのかまだよく分かってません。
- 566 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 16:32:04 ]
- 人間の脳細胞の構造を考えて見た
どうやって学習するか BPは同じ入力を与え続けて正しい結果が出るまでランダムに変化させるだろ 人間は逆だ 正しい結果を知った上で入力を変化させる つまりだねランダムな入力をしてそれが望む結果じゃ無い時には それは疲労感や絶望感や空腹や実際の栄養不足を発生させる そうなると脳全体の軸策が減少する つづく
- 567 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 16:34:54 ]
- そして軸策が伸びる条件だがそれは単純に脳細胞に信号が到達した時に軸策が伸びる
つまりだ 入力をミスって脳全体が萎縮していくが正しい結果を得られたときだけ伸びた軸策は減少しない それが学習として機能するんだ これを実装する方法も考えた つづく
- 568 名前:デフォルトの名無しさん [2008/08/02(土) 16:54:49 ]
- 実装してから言ってね
- 569 名前:デフォルトの名無しさん mailto:sage [2008/08/04(月) 08:45:25 ]
- 単なるアイデアじゃなくて、きちんとモデル化されてるなら、オレが実装してやってもいいぞ。
- 570 名前:デフォルトの名無しさん mailto:sage [2008/08/04(月) 09:31:00 ]
- >BPは同じ入力を与え続けて正しい結果が出るまでランダムに変化させるだろ
>人間は逆だ >正しい結果を知った上で入力を変化させる なにいってんの
- 571 名前:デフォルトの名無しさん mailto:sage [2008/08/04(月) 19:16:06 ]
- ニューハーフハローワークに見えた
- 572 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 14:48:54 ]
- 自己組織化マップのデータを可視化してくれるフリーのツール、どなたか知りませんか?
以前見かけたんですけど、どこにあったのか忘れてしまって……
- 573 名前:デフォルトの名無しさん [2008/09/01(月) 14:54:05 ]
- >>559
ネットで調べた方が分かりやすい。 この本読めたもんじゃないし。 自己組織化マップ ―理論・設計・応用 海文堂出版 はちょこちょこアルゴリズムも載ってるから、まだいいかもしんない。
- 574 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 18:19:15 ]
- >>572
どんな入力データかによるだろ
- 575 名前:デフォルトの名無しさん [2008/09/03(水) 10:31:36 ]
- C++で実装されたライブラリでいいのないですかね。
最近の事情は全然知らないんで、わかりやすいサンプルがあるのがいいです。
- 576 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 13:00:30 ]
- >>575
OpenCV
- 577 名前:デフォルトの名無しさん [2008/09/03(水) 14:12:15 ]
- >>576
対象は1次元データなので、コンパクトなもの希望です。 サンプルとしてでもフロントエンドのあるものがあるとよいのですが…
- 578 名前:デフォルトの名無しさん [2008/09/03(水) 19:38:39 ]
- ニューラルネットワークはカーブフィッティングあるから使いづらいよ。
統計学をきちんと学べば、機械学習の多くの手法が結局は親戚同士でしかないことや、 そもそもの因子選択がダメなら全部無意味だってことがわかる。 ニューラルネットワークしか知らない人は、「設計には慣れが必要」とか言って素人を煙にまくけど、 本質的な問題はね、機会学習のアルゴリズムは統計学が期待する「正規化されたデータ」という 幻想の上に立脚するものであって、単体では因子間の相関(多重共線性)を 適切に処理できないということなんだよ。 これはNN以外のあらゆる手法にもよこたわる、いわばバカの壁。
- 579 名前:デフォルトの名無しさん [2008/09/03(水) 19:48:51 ]
- これを処理する簡単な方法は、事前に多変量解析を行って、使えそうな因子があるかを見ること。
そして正規化処理を自動化すること。 因子間の相関が変化していく状況(リアルタイム)では、自分の設計を更新できないなら すぐ使いものにならなくなる。 正直、なんで未だにニューラルネットワークを人間が設計することになっているのかよくわからない。 学会とかレベル低すぎ。 誰かはやくAI作ってくれ。
- 580 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 20:04:39 ]
- >>579
いや、何か簡単に使えるフリーのライブラリがあればそれを教えてくれると ありがたいんですが。 LIBSVMは試してみたんだけど、NNも試したいなと。 やりたいのは単に一次元データの予測なんだけど、未知なのでNNでやって みようかなとそんくらいの統計素人ですんまsん。
- 581 名前:デフォルトの名無しさん [2008/09/03(水) 20:09:52 ]
- BP法系統のニューラルネットワークの性能の低さは、因子数が少ないほど顕著になる。
因子が0から1までの値を取るとしたとき、その値の範囲(0.3以下、など)に重大な意味があるようなケースでは、 その因子を適切に分解するプリプロセッサ無しに学習を行おうとすれば、 中間層が2〜3個余計に必要になったあげく、近似精度も劇的に低下する。 なぜかというと、処理対象となる因数空間の分割(非線形近似)にはステップ関数が必要だが、 そのために中間層のニューロンが消費されてしまう。 結果、本当に欲しかった「役に立つ近似」に使われるニューロンが減り、精度が犠牲になってしまうのだ。 思うに、ニューラルネットワークが何をやっているのかわからないというのは、 単にそれを真剣に考えたことが無いだけだと思う。 あらゆる非線形近似は、空間分割と線形近似の組み合わせでしか実現できない。 ニューラルネットワークは、それをステップ関数と足し算(引き算)で行っている。ただそれだけのことだ。
- 582 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 20:18:13 ]
- ライブラリはR言語に付属しているのがある。本家サイトあたりから辿れたと思う。
あとはアルゴリズム系の書籍のサンプルソースダウンロードが利用できる。 書籍を買わないとソースの解説は無いが、R言語に付属している優秀なデータを食わせれば だいたい推測できりはず。もっとも、実データの処理に使うには教科書的すぎて役に立たないと思う。 NNの改善論文が多いのは、元のアルゴリズムが驚くほどクソだから。空間の境界部分を きっちり処理したいなら、SVMやk近傍法のほうがはるかにマシ。
- 583 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 20:24:27 ]
- ニューラルネットワークの本質は、k次元のケーキをナイフで切り分けてるだけ。
中間層を増やせばそれだけ太刀筋は複雑な軌道を描けるようになり、 一見うまくいくように見えるが、その軌道が合理的なものである保証は無い。 偶然に人の皮膚すれすれをナイフが通っても、ケーキが切れていれば切り分けは成功したことになるし、 値は収束したことになる。NNの誤差の収束ってのは、そのくらいの意味しかないのよ。
- 584 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 20:39:23 ]
- SOMの可視化も、2〜5因子くらいにまで絞れているなら座標xy、色rgbとか使って
好きなように表示できるけどね。それ以上だと難しい。 「R言語 SOM」でぐぐると画像が見つかるかも。へぼいけどwww まあ出来合いの可視化ツールはあんまり見た目が良くないし、リアルタイムに見ながら因子を 入れ替えて別の角度から見てみるとか、3因子だから3D表示で見たい!とかなら、 自前で書いたほうが絶対楽だと思う。 上でも勧められてるけど、OpenCV、OpenGL(GULT)あたりがオススメ。データの読み書きはC言語のサイトを参考に。
- 585 名前:デフォルトの名無しさん [2008/09/03(水) 21:19:41 ]
- >>581
中間層が2、3個増えてもなんの問題もないです。 未知な関数をあれやこれや考える余裕もSとかRを使いこなす知識もないので 簡単に近似できるものがないかなと。 例えば何個かの関数の合成だとしたとき、NNならそのそれぞれの関数を見つけて (近似して)くれる可能性がありますよね。 >>584 少しぐぐってみたけど、これって1層NNなの?って思った。多分違うんだろうけど。 理屈はいいので、よさげなNNライブラリかコマンド群教えてくださいw
- 586 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 22:25:56 ]
- どうしてもライブラリでやりたいなら、R言語のライブラリ使うか、CPANのPerlライブラリを
「Neural」とか「BP」とかでサーチするのが楽だと思う。 ぶっちゃけ↑より簡単な方法は無い。 大抵の言語で、フリーの学術系ライブラリってのは全滅に近い。 汎用性持たせようとすると書くのも検証するのも大変で、フリーじゃ割に合わない分野だからね。 カネがあるなら別だけど。 ちなみにNNにデフォルト設定なんてものは無い。 かなり自前で設定する必要があり、結局自前でコード書くのと大差無いことになりがち。 言語は?データの型は?データの値の範囲は? 入力、出力ニューロンの数は?中間層と中間ニューロンの数は? 学習回数は?収束を判定する方法は? 学習結果を使う、保存する方法は?ある値を入れたら何が出る? それを可視化して結果や精度を確認するには? 結局R使え、C言語のサンプルいじれという話になる。
- 587 名前:デフォルトの名無しさん [2008/09/03(水) 22:50:40 ]
- ちょっとぐぐってCortex/Shark/fannてのを見つけたんだけどどんなもんでしょう。
Cortex cortex.snowcron.com/ Shark shark-project.sourceforge.net/ fann sourceforge.net/projects/ >>586 なんかいっぱい質問されてますが、C++のライブラリで、サンプルでもフロントエンドがあれば うれしいと言ってるんですが。あとの項目は普通設定できるんじゃないかと思うんですが、 心配してもらうところじゃないと思います。やりたいのは1次元なので可視化はべつに不要ですし。
- 588 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 23:14:06 ]
- >Cortex
サンプルに株価データもどきを使ってるのはジョークか? フロントエンドは無い。 >SharkのReClaMライブラリ 計算ライブラリ。チュートリアルはダウンロードしないと見れない。 フロントエンドは無い。 >fann URLはこっちかな。 leenissen.dk/fann/ 対応言語が多い。チュートリアルは最もシンプルで、すぐ動かせる感じを受けた。 ただ、ファイルのフォーマットが in-out-in-out-... 順になっててちょっとキモイ。 フロントエンドは無い。 というか汎用性を追求したライブラリに、GUIをつけるメリットが分からない。 普通は付けてもCUIフロントエンドくらいじゃ?
|

|