問題タブ [pylearn]
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.
python - Pylearn2 で訓練された Autoencoder によって新しいデータを変換するにはどうすればよいですか?
Pylearn2 で 2 層積層 CAE モデルをトレーニングして保存しました。これらのモデルをロードして、新しいデータセットを変換したいと思います。どうすればいいですか?
これは私のモデルです:
私もこのようなことを試しましたが、うまくいきません。
これは私が最近やっていることですが、その正しさについてはわかりません:
python - python make_dataset.py -pylearn2 - トレーニング モデルを実行できません
Pylearn2 をインストールしました。pylearn2 を使用してモデルをトレーニングしたいと考えています。ここを参照: ここにリンクの説明を入力
しかし、ステップ 1: データセットの作成を実行し、grbm_smd ディレクトリからコマンド $python make_dataset.py を実行すると、エラーが発生しました。
$ python make_dataset.py
ファイルの読み込み中 /Users/k11067kk/pylearn2_data/cifar10/cifar-10-batches-py/data_batch_1
トレースバック (最新の呼び出しが最後):
ファイル「make_dataset.py」の 27 行目
ファイル "/Users/k11067kk/pylearn2/pylearn2/datasets/cifar10.py"、73 行目、init
ファイル "/Users/k11067kk/pylearn2/pylearn2/datasets/cifar10.py"、257 行目、_unpickle 内
TypeError: load() はキーワード引数を取りません
私はいくつかのテストを行い、パスを次のように設定しました: $export PYLEARN2_DATA_PATH=~/pylearn2_data 何が問題なのですか? これを解決する方法はありますか?ありがとう!
python-2.7 - import theano results in ImportError
theano を使用しようとしていますが、インポートするとエラーが発生します。cuda_6.5.14_linux_64.run をインストールし、このNVIDIA PDF の第 6 章で推奨されているすべてのテストに合格しました。最終的にpylearn2をインストールできるようにしたいのですが、コンパイルしようとすると以下とまったく同じエラーが発生します。
EDIT1: 私の theanorc は次のようになります:
gpu を cpu に置き換えると、コマンド import theano は成功します。
python - pylearn2 CSVDataset TypeError
カスタム データセットを pylearn2 にロードする際に問題が発生しています。小さな XOR データセットを使用してトレーニングする単純な MLP を取得しようとしています。pylearn2 のスクリプトxor.csv
と同じディレクトリにない、yaml ファイルと同じディレクトリに名前が付けられたデータセットがあります。train.py
の内容全体は次のxor.csv
とおりです。
私のYAMLファイルの内容全体は次のとおりです。
pylearn2 のtrain.py
スクリプトを実行すると、トレーニングの前に (おそらく theano 関数のコンパイル中に) 失敗します。出力の全体は次のとおりです。
これはどういう意味ですか?のコードを調べたCSVDataset
ところ、データが using に読み込まnp.loadtxt
れ、float として取り込まれるはずです。xor.csv
フロート ( など) のように編集しても何も変わりません1 -> 1.0
。
machine-learning - 制限付きボルツマン マシンで「8x8 パッチを抽出」する理由は何ですか?
RBM の pyLearn2 (機械学習ライブラリ) の例に関するこのドキュメントにたどり着きました。なぜ簡単なのか誰か教えてもらえますか?
私は RBM についてよく知らないので、ご容赦ください。完全なコードについては、このリンクを参照してください
python - pylearn2 で単層ニューラル ネットワークを作成する
Pylearn2 は通常、ニューラル ネットワークの Python リソースとして提案されています。
単一の隠れ層ニューラル ネットワークを作成し、バックプロパゲーション アルゴリズムでトレーニングしたいと考えています。
これは基本的なことのはずですが、pylearn2 でそれを行う方法がわかりません。多層パーセプトロンに関するこのチュートリアルを見つけましたが、それでもまだ迷っています。( http://nbviewer.ipython.org/github/lisa-lab/pylearn2/blob/master/pylearn2/scripts/tutorials/multilayer_perceptron/multilayer_perceptron.ipynb )
40 個の隠しノードとシグモイド活性化関数を備えた単層ニューラル ネットワークを作成したいと考えています。
誰かが私を助けることができますか?
編集:
私はこのコードを書くことができましたが、まだ機能していません
machine-learning - pylearn2 の npy ファイルから画像データをグレースケールに変換する
pylearn2 を使用して単純な畳み込みニューラル ネットワークをトレーニングしています。RGB 画像データを npy ファイルに保存しています。そのデータをnpyファイルから直接グレースケールデータに直接変換する方法はありますか?
python - 検出クラスのシグモイド出力が正しくないパフォーマンスを返す
私の問題の要約:検出があります (二項分類、不均衡問題)。シグモイドを使用してサンプルを分類します。報告された f スコア、適合率、および再現率は両方のクラスを考慮しているようです。たとえば、真陽性は正しく分類されたサンプルの総数であり、正しく分類されたクラス '1' に属するサンプルの総数ではないようです。
より長い説明:私の実験では、人に関する人口統計データがあり、彼らが製品を購入したかどうかを予測する必要があります。PCA を使用して初期機能を 4 つの機能だけに減らし、データを csv ファイルに保存しました (最初の列にはクラス ラベル '0' と '1' があります)。ほとんどの人は購入しなかったため、2 つのクラスは非常にバランスが取れていないことに注意してください。CSVDatasetクラスを使用して読み取ります。
簡単な分類モデルから始めたいと思います。パフォーマンスの尺度として f スコアを使用します。したがって、私の最初のアイデアは、単一のシグモイド層を持つ MLP モデルを使用することでした (デフォルトのモニター「検出」は再現率、精度、f スコアを提供します)。
私の最初のアイデアは、dim を 1 に設定することでした (決定規則は、出力 > 0.5 の場合はクラス '1' を選択し、< 0.5 の場合はクラス '0' を選択します)。しかし、 ValueError: Can't convert to VectorSpace of dim 1というエラーが発生しました。 be: out1 > out0 の場合は「1」を選択、out1 の場合
私のtrain.yamlでは、ドキュメントで提供されているソフトマックス サンプル ノートブックに多かれ少なかれ従っています。たとえば、BGD アルゴリズムを使用し、batch_size をトレーニング セット内のサンプルの総数 (74164 サンプル、小さなデータセット!) として設定して、パフォーマンスを手動でチェックするときの混乱を避けます。
モデルは提供されているtrain.pyスクリプトを使用してトレーニングされ、結果を見るまではすべて問題ないように見えました。前述のように、検出するクラス ('1') が非常にまれにしか発生しない検出の問題です。したがって、報告された train_y_f1 の高い値を見て非常に驚きました (1 エポック後の最良の結果は約 94% です)。
これを確認するために、提供されたスクリプト predict_csv.py を使用して手動で f スコアを計算し、予測をロードしました。実際にはミスしかないことがわかりました (すべての「1」は「0」に分類されました)。そのため、適合率、再現率、および f スコアはすべてゼロになるはずです。検出モニターがより高い値を報告するのはなぜですか?
いくつかの調査の後、MLP には各クラスの出力があることがわかり、get_detection_channels_from_state() で定義された真陽性と偽陽性が実際に両方のクラス '1' と「0」、たとえば真陽性は、「1」として分類された「1」に属するベクトルの数を、「0」として分類された「0」に属するベクトルの数に合計したものです。したがって、MLP はすべてを「0」として分類しており、ほぼすべてのベクトルが「0」に属しているため、パフォーマンスは良好です。これは、正しい分類率が適切な尺度ではない不均衡な検出問題の既知の問題であり、f スコアや AUC などの尺度がある理由です。でも、
これは Sigmoid クラスの設計者に知られていると想像できるので、何か間違ったことをしているとしか思えません。うまくいけば、誰かが私にヒントを与えることができます:)
注:この質問を pylearn2 ユーザー メーリング リストに送信しました。返事が来たらここにコピペします…
machine-learning - pylearn2 の隠れ層でリーキーな ReLus を活性化関数として使用する方法
CNN を設計するために pylearn2 ライブラリを使用しています。Leaky ReLus を活性化関数として 1 つのレイヤーで使用したいと考えています。pylearn2 を使用してこれを行う方法はありますか? カスタム関数を作成する必要がありますか、それともpylearn2には関数が組み込まれていますか? もしそうなら、カスタムコードを書く方法は? ここで誰か助けてくれませんか?
machine-learning - pylearn2 で cuda_convnet エラーをコンパイルできませんでした
Windows Server 2012 で pylearn2 を使用して CNN をコンパイルしようとしています。しかし、ネットワークに MaxoutConvC01B が含まれていると、コンパイルに失敗し、エラー メッセージが表示されます。
RuntimeError: (「ノードのコンパイル中に次のエラーが発生しました」、(GpuContiguous.0)、「\n」、「cuda_convnet をコンパイルできませんでした」)
この問題を解決するための助けをお願いします。