問題タブ [encog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
963 参照

neural-network - ニューラルネットワークトレーニング。ほんのわずかな結果

3つの入力、2つの隠れ層(それぞれ6つのニューロン、シグモイド活性化関数)、および出力として1つのニューロンを持つネットワークがあります。私は分類ネットワークを見ていませんので、私のネットワークは継続的であると期待しています(それが理にかなっていることを願っています)。

私の入力は、1年の日数(0〜365の範囲)を表します。私は実際にそれらを0-1の範囲に正規化します(シグモイドのため)。

私の問題は次のとおりです。トレーニングエラーが小さくても、トレーニングセットを再利用したときの実際の値は正しくありません。実行するエポックの数に応じて、異なる結果が得られます。

ネットワークを数千回以上トレーニングした場合、考えられる結果は2つだけです。トレーニングを少なくすると、より多くの可能性のある結果が得られますが、値は私が期待するものにはほど遠いです。

継続的なネットワークの場合は、2つの隠れ層を使用する方がよいことを読みました。

何が間違っているのかわかりません。あなたが何か助けになることができれば、それは素晴らしいことです。詳細が必要な場合はお知らせください。

ありがとう

更新1

トレーニングセットの要素数を減らしました。今回、ネットワークは少数のエポックに収束しました。トレーニングエラーは次のとおりです。


トレーニングネットワーク


反復#1。エラー:0.0011177179783950614

反復#2。エラー:0.14650660686728395

反復#3。エラー:0.0011177179783950614

反復#4。エラー:0.023927628368006597

反復#5。エラー:0.0011177179783950614

反復#6。エラー:0.0034446569367911364

反復#7。エラー:0.0011177179783950614

反復#8。エラー:8.800816244191594E-4


最終エラー:0.0011177179783950614


0 投票する
1 に答える
1244 参照

java - Encogニューラルネットワークは常に一貫性のない結果をもたらします

私は機械学習とEncog全体に慣れていませんが、Encogについてより簡単に学ぶために、少なくとも例から一貫した結果が得られることを期待していました。私にとって、Encogeは実行されるたびに異なる方向の結果を出します。

誰かが私がこれがなぜであるかをよりよく理解するのを手伝ってもらえますか?以下は、使用されているいくつかの変更されたサンプルコードです。

正しい方向:10/25

正しい方向:8/25

正しい方向:6/25

..。

0 投票する
2 に答える
4810 参照

java - Encog 3.1を使用して時系列予測を行うJavaの例はありますか?

ニューラルネットを使って時系列予測をするのがいかに簡単かを理解しようとしています。Encogが選択されたフレームワークのようですが、私はグーグルで調べて、最新バージョン(または任意の3.x)を使用したJava時系列の例をどこにも見ませんでした。

誰かが私が見ることができる良い例を持っていますか?

複数の相互に関連する値を予測することを示す例である場合、ボーナスポイント。つまり、W、X、Y、Zの以前の値に基づいてW、X、Y、Zを予測する必要があります。

0 投票する
2 に答える
1361 参照

java - Encog/neurophはニューラルネットワークを保存します

ニューラルネットワークの分野は初めてです(実を言うと、私は数日前に始めたばかりです)。OCRアプリケーションでニューラルネットワークを使用して、手書きのテキストを認識したいと思います。

私が知りたいのは、最初のトレーニングの後にネットワークをトレーニングすることは可能ですか。言い換えれば、最初はいくつかの文字をトレーニングするつもりですが、以前にトレーニングしたデータの存在に影響を与えることなく、後でネットワークにさらに文字を追加したいと思います(追加の文字のための適切な出力ニューロンを備えたニューラルネットワークを作成したと仮定します) )。これが可能であれば、どうすればencogを使用してこれを実行できますか?

ありがとうございました

0 投票する
1 に答える
2696 参照

neural-network - ニューロフ対エンコグ

手書きテキストの OCR アプリケーションに逆伝播トレーニングを備えたフィードフォワード NN を使用することにしました。入力層は 32*32 (1024) ニューロンと少なくとも 8 ~ 12 の出力ニューロンになります。

いくつかの記事を同時に読んで、Neuroph が使いやすいことがわかりました。Encog のパフォーマンスは数倍優れています。私のシナリオのパラメーターを考慮すると、どの API が最も適しているかがわかります。そして、私が取得した入力ノードの数についてコメントしていただければ幸いです。値が大きすぎますか(トピック外ですが)

0 投票する
1 に答える
2537 参照

java - Encog: BasicNetwork: 事前構築されたデータセットを使用しないオンライン学習

Encog ライブラリを強化学習問題の関数近似として使用しようとしています。より正確には、多層パーセプトロン (BasicNetwork) を稼働させようとしています。私のエージェントは、選択した RL アルゴリズムに基づいて何らかの方法で世界を探索するため、 XOR の例に示されているように、BasicNeuralDataSet を事前に構築することはできません。おそらく、pause() および resume() 関数を使用する必要がありますが、これらのドキュメントや例が見つからないため、これらの機能の使用方法がわかりません (私のバージョンで動作する場合でも。 2番目のリンクの質問への回答を読んだ後に確認してください)。

Java と encog-core-2.5.3 jar を使用しています。私の現在のアプローチは次のようになります。

これは明らかに、おもちゃのサンプル (XOR) からランダムなデータポイントを抽出する最小限の例です。何が起こるかというと、MLP は収束しません。ログに完全にランダムなエラーが表示されているため、トレーナーがリセットされており、一時停止/再開のアプローチが正しく実装されていないと思います。


PS: 私は Encoq に縛られていませんが、任意のフレームワークを使用できるので、私の要件を満たすサンプル コードも高く評価しています。これまでのところ、Weka と Neuroph を試しましたが、どちらも、新しいサンプルが利用可能になるたびにトレーニングをトリガーできる実際のオンライン学習に欠けているようです (いつでもサンプルを分類できる必要があります)。

0 投票する
1 に答える
647 参照

android - EncogはAndroidで動作が遅すぎます、どうすればよいですか?

デスクトップ用のEncog3.1.0を使用してアプリケーションを開発しましたが、私の意図は常にそれをAndroidプラットフォームに移植することでした。ええと、デスクトッププラットフォームでは、それはうまく、非常に速く実行され、仕事を終えるのに数秒かかります。一方、Androidで同じコードを実行すると、非常に遅くなります。

私の質問は次のとおりです。デスクトップまたはAndroid用にEngogNNをプログラムする方法に違いはありますか?許容できる時間内にAndroidでアプリを実行するにはどうすればよいですか?

PS:私のデバイスはSamsung GalaxyTab2です

ありがとう、B.Ramon

0 投票する
1 に答える
726 参照

java - ホップフィールド ネットワークを使用した悪い結果

ニューラル ネットワークを使用して交通標識を認識するプログラムを作成していますが、Hopfieldネットワークに問題があります。この例を使用して、独自のホップフィールド ネットワークを作成しています。

0入力として、正規化後にこれらの交通標識を使用します。これはとの 50x50 行列です1

私が遭遇する問題は、Hopfield ネットワークが 2 つのパターンを学習すると、それらをよく認識しますが、結果として 2 つ以上のパターンでトレーニングしようとすると、以前のパターンのいずれにも一致しないパターンが得られることです。トレーニングされ、私が提供する入力に対してそれを返します。

これが私のコードで、公式のencogの例のものと非常によく似ています:

の型はどこinputDataにありますか。array[2500]double

私がこれまでに試したことは次のとおりです。

  1. パターンのサイズを小さく変更 (10x10、20x20)。

  2. さまざまな数のパターン (2 から 20 まで) を学習しようとしています。ネットワークがトレーニングされたパターンのいずれにも一致しない奇妙な結果が常に得られます。

0 投票する
2 に答える
986 参照

c# - エンティティの類似性のみに基づく教師なしクラスタリング

いくつかのエンティティをクラスター化しようとしています。クラスタリングについて私が持っている唯一のメトリックは、あるエンティティと別のエンティティ間の類似性です。(0-1 float)

これを達成するクラスタリングアルゴリズムを考えられる人はいますか? あいまいなグループを返すことに感謝します。これは、現時点でプログラムによってグループを推定するよりも優れたソリューションです。

0 投票する
1 に答える
2183 参照

java - Encogを使用したニューラルネットワーク分類器

私は機械学習に不慣れで、画像を使用してオブジェクトを分類するJavaアプリケーションに取り組んでいます。40個の入力ニューロンとn個の出力ニューロンがあります(トレーニングデータの数によって異なります)。ニューラルネットワークのフレームワークとしてEncogを使用しました。データのトレーニングは成功しましたが、ネットワークをテストしているため、うまく機能していないようです。オブジェクトを正しく分類できません。トレーニングの部分は次のとおりです。

およびテスト部分:

トレーニング部分に何か問題がありますか?私が正しい方法で物事をしているなら、誰かが私を導いてくれることを願っています。