タグ付けされた質問 「machine-learning」

「経験とともに自動的に改善するコンピューターシステム」を構築する方法と原則。

2
Qラーニングが分岐するのはなぜですか?
私のQラーニングアルゴリズムの状態値は無限に発散し続けます。つまり、私の重みも発散しています。値のマッピングにはニューラルネットワークを使用しています。 私はもう試した: 「報酬+割引*アクションの最大値」のクリッピング(最大/最小は50 / -50に設定) 低い学習率の設定(0.00001と私は、重みを更新するために従来のバックプロパゲーションを使用しています) 報酬の価値を下げる 探査率を上げる 入力を1〜100に正規化します(以前は0〜1でした) 割引率を変更する ニューラルネットワークのレイヤーを減らす(検証のためだけ) Qラーニングは非線形入力で発散することが知られていると聞きましたが、重みの発散を止めようと試みることができる他に何かありますか? 2017年8月14日の更新#1: リクエストがあったため、現在行っていることについて具体的な詳細を追加することにしました。 私は現在、エージェントにシューティングゲームのトップダウンビューで戦う方法を学ばせようとしています。対戦相手は確率的に動くシンプルなボットです。 各キャラクターには、各ターンで選択できる9つのアクションがあります。 上に移動 下に移動 左に移動 右に動く 弾丸を上向きに発射する 弾丸を撃ち落とす 左に弾丸を撃ちます 右に弾丸を撃ちます 何もしない 報酬は次のとおりです。 エージェントがボットを弾丸で打った場合、+ 100(さまざまな値を試してみました) ボットが発射した弾丸にエージェントが当たった場合、-50(ここでも、さまざまな値を試しました) 弾丸を発射できないときにエージェントが弾丸を発射しようとした場合(例:エージェントが弾丸を発射した直後など)-25(必須ではありませんが、エージェントをより効率的にしたいと思いました) ボットがアリーナから出ようとした場合は-20(あまり必要ではありませんが、エージェントをより効率的にしたいと思いました) ニューラルネットワークの入力は次のとおりです。 0から100に正規化されたX軸上のエージェントとボット間の距離 0から100に正規化されたY軸上のエージェントとボット間の距離 エージェントのxとyの位置 ボットのxとyの位置 ボットの弾丸の位置。ボットが弾丸を発射しなかった場合、パラメーターはボットのx位置とy位置に設定されます。 私も入力をいじっています。エージェントの位置(距離ではなく実際の位置)のx値やボットの弾丸の位置などの新しい機能を追加してみました。それらのどれもうまくいきませんでした。 これがコードです: from pygame import * from pygame.locals import * import sys from …

2
評価ではなく購入履歴に基づく推奨システム
保険業界向けに最適化されたレコメンダーシステムのオプションを検討しています。 i)製品保有 ii)ユーザーの特性(セグメント、年齢、裕福さなど)。 強調したい a)利用可能な製品評価がないため、協調フィルタリングはオプションではありません b)推奨製品は、すでに購入された製品と類似している必要はありません。したがって、アイテム間の推奨はおそらく関連性がありません。 自動車保険に加入している人は、自宅や旅行などではなく、別のモーター製品を購入する可能性が低いため、保険では、すでに購入したものと同様の製品を推奨することはめったにありません。 そのため、購入履歴や人口統計に基づいて、ユーザー間の類似性に関する推奨事項を作成します 理想的には、それをRで、できればPythonで実装できるようにしたいと考えています。ヘルプと提案をありがとう!

2
Coursera ML-最適化アルゴリズムの選択は、マルチクラスロジスティック回帰の精度に影響しますか?
最近、Pythonを使用したCourseraでのAndrew Ngの機械学習の演習3を完了しました。 演習のパート1.4から1.4.1を最初に完了すると、トレーニング済みモデルが予想される94.9%に一致する精度を持っていることを確認するのが困難になりました。デバッグして、コストと勾配関数にバグがないこと、および予測子コードが正しく機能していることを確認した後でも、精度は90.3%しかありませんでした。で共役勾配(CG)アルゴリズムを使用していましたscipy.optimize.minimize。 好奇心から、別のアルゴリズムを試すことにし、ブロイデン-フレッチャー-ゴールドファーブ-シャノン(BFGS)を使用しました。驚いたことに、精度は大幅に96.5%に向上し、予想を上回りました。これら2つの異なる結果のCGとBFGSの比較は、ノートブックのヘッダー「最適化アルゴリズムの違いによる精度の違い」の下で確認できます。 最適化アルゴリズムの選択が異なるため、この精度の違いの理由はありますか?はいの場合、誰かが理由を説明できますか? また、これを引き起こしている関数にバグがないことを確認するためだけにコードをレビューしていただければ幸いです。 ありがとうございました。 編集:ここで、読者にJupyterノートブックへのリンクを紹介するのではなく、このページで行うコメントのリクエストに、質問に含まれるコードを追加しました。 モデルのコスト関数: def sigmoid(z): return 1 / (1 + np.exp(-z)) def compute_cost_regularized(theta, X, y, lda): reg =lda/(2*len(y)) * np.sum(theta[1:]**2) return 1/len(y) * np.sum(-y @ np.log(sigmoid(X@theta)) - (1-y) @ np.log(1-sigmoid(X@theta))) + reg def compute_gradient_regularized(theta, X, y, lda): gradient = np.zeros(len(theta)) XT = X.T beta …


1
OCRのトレーニングデータを生成する方法
ライセンスプレート(インドネシアのライセンスプレート)を認識するための光学式文字認識システムを構築しようとしていますが、残念ながら利用可能なトレーニングセットはありませんが、フォントを見つけました。 (ガウスぼかし、ボックスぼかしなど)Pythonを使用しますが、実際のデータとは異なります。フォントは次のようになります。 そして、私はこのように見える個々の手紙を生成したいです: 上の画像のようなトレーニングデータを生成する方法はありますか?ありがとうございました

2
マッチングに利用できる教師あり学習アルゴリズムはどれですか?
私は非営利団体に取り組んでいます。そこでは、経験/知恵を共有したい卒業生と彼らをマッチングすることによって、潜在的な大学の応募者を支援しようとしています。現時点では、それは手動で行われています。そのため、2つのテーブルを用意します。1つは学生用で、もう1つは卒業生用です(いくつかの機能は共通しているかもしれませんが、必ずしもすべてではない場合があります)。 NameKathyTommyRuth...GenderFMF...Height165182163...NameGenderHeightKathyF165TommyM182RuthF163.........\begin{array}{|l|c|c|} \text{Name} & \text{Gender} & \text{Height} \\ \hline \text{Kathy} & F & 165 \\ \hline \text{Tommy} & M & 182 \\ \hline \text{Ruth} & F & 163 \\ \hline ... & ... & ... \\ \end{array} NameMiss LucyMiss GeraldineMiss Emily...GenderFFF...Weight657060...NameGenderWeightMiss LucyF65Miss GeraldineF70Miss EmilyF60.........\begin{array}{|l|c|c|} \text{Name} & \text{Gender} & \text{Weight} \\ …

3
トレーニングデータ画像を手動で分類するためのツールを構築する
クラスタリングアルゴリズムをトレーニングするために分類する必要がある画像が多数あり、オフラインでデータを取得したいと考えています(データは独自のものです)。基本的に、各画像を1つまたは2つのカテゴリにすばやく配置できるデスクトップ調査ツールを構築したいと思います。理想的には、ツールは: 事前に指定されたデスクトップフォルダーで画像を検索します。 画像とカテゴリの静的リストを表示し、クリックできるようにします。 クリックすると、画像に関連付けられたカテゴリが記録されます。 画像のファイル名と関連カテゴリをデータセットのどこかに保存します。 フォルダ内の次のタグなし画像を表示し、プロセスを繰り返します。 この種のツールをPythonで簡単に構築する方法、または無料でオフラインで使用できる他のビルド済みユーティリティはありますか?


3
ログブック:機械学習のアプローチ
以前は、問題を解決するためにさまざまな機械学習アルゴリズムを試すときに、機能、機能の前処理、正規化、アルゴリズム、アルゴリズムパラメーターなどの詳細を保持しながら、ノートブックに一連のアプローチを溺れさせていました...したがって、手書きのログブックを作成する。 しかし、私は現在、「より専門的な」ツールを使用することを懸念しています。そのため、詳細を保持し、他のチームメンバーと共有することもできます。 これは、機能、アルゴリズム、アルゴリズムパラメータ、データの前処理、データ、メトリックなど、Googleの共同ドライブスプレッドシートを超えた詳細を考慮して、完了した作業を追跡する自動化された協調的なツールです。 これをどのように解決していますか?作業の進捗状況をどのように管理していますか?あなたの何日誌ツールは? 事前にどうもありがとうございました。

3
Twitter感情分析:ポジティブクラスとネガティブクラスのみのトレーニングにもかかわらず、ニュートラルツイートを検出する
機械学習に関しては、私は初心者です。Pythonのscikit-learnライブラリを使用して、さまざまな教師あり学習アルゴリズムを分析することで、実際に体験してみます。これらのさまざまなアルゴリズムを使用した感情分析には、160万のツイートのsentiment140データセットを使用しています。 ばかげた質問かどうかはわかりませんが、2つのクラス(ポジティブとネガティブ)だけをトレーニングした場合、3つのクラス(ポジティブ、ネガティブ、ニュートラル)に分類できるかどうか疑問に思いました。sentiment140トレーニングセットは、合計で1.6Mツイートの2つのクラスだけ(正と負)で構成されていますが、それは私が考えるようになったので、そのテスト・セットは、三つのクラス(正、負と中立)を超える500件のツイートで構成されています。 これは可能ですか?はいの場合、ニュートラルなツイートを特定する方法を教えてください。直感的に、各クラスのテストセットで各分類されたツイートの条件付き確率を(predict_probaを使用して)見つけ、それがポジティブクラスとネガティブクラスの両方で特定のしきい値(たとえば0.7未満)を下回っている場合はニュートラルかどうかを判断できます。これは正しい方法ですか?

1
ニューラルネットワーク:低確率のイベントを検出するための実世界のデータを準備する方法
私は実際の信用借入者のデータセット(50,000レコード)を持っています。このセットには、既婚、独身、離婚などのカテゴリと、収入、年齢などの連続データが含まれます。一部のレコードは不完全であるか、外れ値が含まれています。従属変数はDefaulted / Good(0,1)です。ニューラルネットワークをトレーニングして、トレーニングデータに基づいてデフォルトを予測しようとしています。ニューラルネットワークの経験があり、サンプルデータに使用して素晴らしい結果を得ましたが、ノイズの多い実世界のデータを正規化する必要はありませんでした。 私が心に留めておくべきことについての考え:-カテゴリを正規化する方法。インデックス番号を割り当てることはできますか?それらを層別化する必要がありますか?-欠損データの扱い方。0を割り当てますか?-デフォルトがデータセットの約5%に過ぎないという事実に対処する方法。これらの低い確率を予測するためにどの伝達関数が役立つでしょうか。-基本的に、その他の実世界のデータに関するアドバイスは非常に高く評価されています。 前もって感謝します!

2
通常のラップトップでのディープネットのトレーニング
ディープニューラルネットワークの設計とトレーニングで「実践的な」経験を積むことに興味があるアマチュアが、その目的のために通常のラップトップを使用することは可能ですか(GPUなし)、または良い結果を得ることはできませんか?強力なコンピューター/クラスター/ GPUなしで妥当な時間? 具体的には、ラップトップのCPUはIntel Core i7 5500Uフィス世代で、8GB RAMを搭載しています。 ここで、どの問題に取り組みたいかを指定していないので、別の方法で質問を組み立てます。次の目標が達成されるように、ハードウェアで実装することをお勧めする深いアーキテクチャはどれですか:過去10年間に導入され、ディープネットの蜂起に不可欠であった手法(初期化、ドロップアウト、rmspropの理解など)をいつどのように使用するかに関する直感と知識の習得。 私はこれらの手法について読みましたが、もちろん自分で試してみなければ、これらを効果的に実装する方法と時期を正確に知ることはできませんでした。逆に、力が足りないパソコンを使ってみると、自分の学習速度が遅くなり、理解が深まったと言っても無意味でしょう。そして、これらのテクニックを浅いネットで使用しようとすると、正しい直感を構築できないでしょう。 (私の)学習のプロセスを次のように想像します。ニューラルネットを実装し、それを数時間まで練習して、得られたものを確認し、プロセスを繰り返します。これを1日に1、2回行うとしたら、たとえば6か月後に、その分野の専門家が知っておくべきことと同等の実践的な知識が得られれば幸いです。

1
「残差マッピング」とは何ですか?
Heらによる最近の論文。(画像認識のためのディープ残差学習、Microsoft Research、2015年)は、最大4096のレイヤー(ニューロンではない!)を使用すると主張しています。 紙を理解しようとしているのですが、「残差」という言葉に出会いました。 誰かが私にこの場合の残差の意味を説明/定義してくれませんか? 例 参照されていない関数を学習する代わりに、層の入力を参照して残差関数を学習するように、層を明示的に再構成します。 [...] いくつかの積み重ねられた各層が望ましい基本的なマッピングに直接適合することを期待する代わりに、これらの層を残余のマッピングに明示的に適合させます。正式には、望ましい基礎となるマッピングをH(x)H(バツ)\mathcal{H}(x)、積み重ねられた非線形層を別のマッピングに適合させます F(x ):= H(x )− xF(バツ):=H(バツ)−バツ\mathcal{F}(x) := \mathcal{H}(x)−x。元のマッピングはに再キャストされますF(x )+ xF(バツ)+バツ\mathcal{F}(x)+x。残余マッピングを最適化する方が、元の参照されていないマッピングを最適化するよりも簡単であると仮定します

1
正確にはどこに
私は、SVMが(カーネルトリックのない)バイナリの線形分類器であることを理解しました。彼らはトレーニングデータを持っています(xi,yi)(xi,yi)(x_i, y_i) どこ xixix_i ベクトルであり、 yi∈{−1,1}yi∈{−1,1}y_i \in \{-1, 1\}クラスです。それらはバイナリ、線形分類子なので、タスクはラベルでデータポイントを分離する超平面を見つけることです−1−1-1 ラベル付きのデータポイントから +1+1+1。 今のところ、データポイントは線形分離可能であり、スラック変数は必要ないものとします。 これで、トレーニングの問題が次の最適化問題であることがわかりました。 minw,b12∥w∥2minw,b12‖w‖2{\min_{w, b} \frac{1}{2} \|w\|^2} st yi(⟨w,xi⟩+b)≥1yi(⟨w,xi⟩+b)≥1y_i ( \langle w, x_i \rangle + b) \geq 1 私はそのminizmizingだと思うマージンを最大化手段(。しかし、私はそれが正方形がここにある理由を理解していないだろう何かの変更を1最小化しようとする場合?)。∥w∥2‖w‖2\|w\|^2∥w∥‖w‖\|w\| また、は、モデルがトレーニングデータに対して正しい必要があることを意味することも理解しました。ただし、ではなくます。どうして?yi(⟨w,xi⟩+b)≥0yi(⟨w,xi⟩+b)≥0y_i ( \langle w, x_i \rangle + b) \geq 0111000

1
ニューラルネットワーク実装のトラブルシューティング
私はStandford / Coursera Machine Learningコースを受講しました。そしてそれはかなり順調に進んでいます。コースから成績を取得するよりも、トピックの理解に本当に興味があるので、私はすべてのコードをより流暢なプログラミング言語で書き込もうとしています(簡単に掘り下げることができるもの)のルーツ)。 私が最もよく学ぶ方法は、問題に取り組むことです。そのため、ニューラルネットワークを実装しましたが、機能しません。テストの例に関係なく、各クラスの確率は同じになるようです(たとえば、入力値に関係なく、クラス0の0.45、クラス1の0.55)。奇妙なことに、すべての非表示のレイヤーを削除した場合、これは当てはまりません。 ここに私がすることの簡単な概要があります。 Set all Theta's (weights) to a small random number for each training example set activation 0 on layer 0 as 1 (bias) set layer 1 activations = inputs forward propagate; Z(j+1) = Theta(j) x activation(j) [matrix operations] activation(j+1) = Sigmoid function (Z(j+1)) [element …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.