問題タブ [torch]
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.
lua - nn.Sum で連続したテンソル エラーが予想される
ネットワークにフィードする 2x16x3x10x10 テンソルがあります。私のネットワークには、並行して機能する 2 つの部分があります。最初の部分は 16x3x10x10 行列を取り、最後の 2 つの次元の合計を計算して、16x3 テンソルを返します。2 番目の部分は、16x160 テンソルを生成する畳み込みニューラル ネットワークです。このモデルを実行しようとすると、次のエラーが発生します。
モデルの関連部分は次のとおりです。
コードは、入力テンソルが 2x1x3x10x10 の場合は機能しますが、テンソルが 2x16x3x10x10 の場合は機能しません。
編集:これは、model:forward ではなく model:backward を実行した場合に発生することに気付きました。関連するコードは次のとおりです。
x は 2x16x3x10x10 テンソルで、dE_dy は 16x2 です。
lua - nn.Linear を使用して nngraph 構築ノードをトーチする
こんにちは、私は torch/luaの初心者で、オックスフォード機械学習コースの実用的な5 を行っています。
私が実装しようとしているのは単純なレイヤーです: m = x1 + x2 cmul linear(x3) ここで、cmul は要素の乗算であり、linear は単なる線形レイヤーです。
私のコードは次のようになります:
ただし、エラーメッセージが表示されました:
そして、 aa = nn.Linear(10,20)() のみが必要な場合
上記と同じエラーが発生しました。
トーチ githubの例に従っても:
同じエラーが発生しました。
更新および解決済み:
パッケージのインポートに失敗しました。nngraph
コードではとのnn
両方を参照していnn
ますが、実際には異なるパッケージです。
すべき
そして、私はしただけです
lua - コマンドライン経由で ctrl-c が送信されたときに lua で ctrl-c をキャッチする方法
コマンド ラインからユーザーが control-c を押したときに知りたいので、いくつかのものを保存できます。
どうすればいいですか?私は見てきたが、実際には何も見ていない。
注: 私は lua にある程度精通していますが、専門家ではありません。私は主に lua を使用してライブラリ Torch ( http://torch.ch/ )を使用します。
lua - Lua コマンドライン文字列
このコマンドで Lua を呼び出すとします。
Lua からこの同じコマンドライン文字列にアクセスするにはどうすればよいですか?
テーブルについては知っていarg
ますが、元のコマンド文字列からすべての引用符が削除され、再構築が困難になります。
Lua 内から正確な文字列をファイルに保存できれば、後で簡単に呼び出すことができます。
lua - ClassNLLCriterion を使用した Torch でのバッチ処理
詳細を学ぶために、Torch に単純な NN を実装しようとしています。非常に単純なデータセットを作成しました: 0 から 15 までの 2 進数で、私の目標は数値を 2 つのクラスに分類することです。クラス 1 は数値 0-3 と 12-15 で、クラス 2 は残りの数値です。次のコードは私が今持っているものです (データ読み込みルーチンのみを削除しました):
これは、データとクラスのテンソルがどのように見えるかです:
それが私が期待していることです。ただし、このコードを実行すると、 line loss = criteria:forward( predict, class )で次のエラーが発生します。
torch/install/share/lua/5.1/nn/ClassNLLCriterion.lua:69: nil 値に対して演算を実行しようとしました
このようにトレーニング ルーチンを変更すると (バッチで 16 個すべてのデータ ポイントを処理するのではなく、一度に 1 つのデータ ポイントを処理する)、それが機能し、ネットワークは 2 つのクラスを認識することを正常に学習します。
私が行おうとしている「バッチ処理」の何が問題なのかわかりません。ClassNLLCriterion を簡単に見ても役に立ちませんでした。期待される入力 (以下を参照) を与えているようですが、それでも失敗します。受け取る入力 (予測とクラス テンソル) は次のようになります。
誰かがここで私を助けてくれますか? ありがとう。
backpropagation - torch 7 でバックプロパゲーションはどのように機能しますか?
torch チュートリアルで教師あり学習を理解しようとしました。
http://code.madbits.com/wiki/doku.php?id=tutorial_supervised
そして逆伝播:
http://home.agh.edu.pl/~vlsi/AI/backp_t_en/backprop.html
私が知っているように、このトーチ チュートリアルのパラメーターの更新は、ステップ 4 のトレーニング手順にあります。
たとえば、これを手に入れました
df_doはこれですか?
この例では、ターゲットが 9 で出力が 4 であることはわかっているため、結果が正しくなく、df_do の 9 番目の要素に「-1」を指定します。
しかし、なぜ ?
http://home.agh.edu.pl/~vlsi/AI/backp_t_en/backprop.htmlによると、
df_do は [ターゲット (目的の出力) - 出力] です。
neural-network - Torch: テキストと数値入力を処理する NN
私は次のNNアーキテクチャを持っています:
パート1:
パート2:
私がやりたいことは、これら2つの部分の出力を別の部分への入力として使用することです:
パーツ 1 には 128 の出力があり、パーツ 2 には 4 があり、最後にパーツ 3 には 132 の入力があることに注意してください。したがって、基本的には、2 種類の入力 (パート 1 はテキスト用、パート 2 は数値ベクトル用) を受け取り、これらの両方の情報を 3 番目のレイヤーで 2 クラス分類に使用するネットワークが必要です。
さまざまなコンテナを見てきましたが、必要なものはないようです。具体的には、nn.Parallel を見てきましたが、ドキュメントからは、まったく異なることをしているように見えます (2 つの異なるモジュールに対する同じ入力)。最初の問題は、ネットワークの入力がどのように見えるかです (各部分は異なるタイプのテンソルを使用するため、最初の要素が 2D テンソルで、2 番目の要素が 1D テンソルである単純なテーブル (配列) で十分だと思いました)。 ) そして、その出力を別のネットワークに接続して、通常どおり前方/後方呼び出しを使用できるようにする方法。
これを行う方法はありますか?
ありがとう!
lua - 再コンパイル後に依存関係を torch で強制的にリロードするにはどうすればよいですか?
ルアロックであるトーチパッケージに取り組んでいます。テスト中に、セッションrequire "mypackage"
を終了せずに最新のコードを取得したいと考えて います。th
ただし、私が理解しているようにrequire
、ロードされたパッケージはキャッシュされるため、2 回目にロードされることはありません。Lua マニュアルは、_LOADED
このキャッシュされた情報を格納するグローバル変数があることを示唆しているようで、パッケージの値を次のように設定するだけnil
です。
_LOADED
ただし、トーチでは、いくつかのパッケージを要求した後でも、グローバルはないようです。
考え?