データサイエンス

データサイエンスの専門家、機械学習の専門家、およびこの分野に関する知識が豊富な方へ

4
非常に不均衡なデータセットのトレーニングのクイックガイド
トレーニングセットに約1000個の陽性サンプルと10000個の陰性サンプルがある分類問題があります。したがって、このデータセットは非常に不均衡です。プレーンランダムフォレストは、すべてのテストサンプルを多数派クラスとしてマークしようとしています。 ここでは、サブサンプリングと重み付きランダムフォレストに関するいくつかの良い答えを示します。高度にバイアスされたデータセットを使用してツリーアンサンブルをトレーニングすることの意味は何ですか? RF以外のどの分類方法が問題を最善の方法で処理できますか?

4
後続の畳み込み層はどのように機能しますか?
この質問は、「畳み込み層が正確にどのように機能するか」に要約されます。 私が持っていると仮定しグレースケール画像を表示します。したがって、画像には1つのチャネルがあります。最初のレイヤーでは、k 1個のフィルターとパディングを使用して3 × 3の畳み込みを適用します。次に、5 × 5の畳み込みとk 2フィルターを備えた別の畳み込み層があります。フィーチャーマップはいくつありますか?n×mn×mn \times m3×33×33\times 3k1k1k_15×55×55 \times 5k2k2k_2 タイプ1畳み込み 最初のレイヤーが実行されます。その後、特徴マップ(各フィルターに1つ)があります。これらはそれぞれ、サイズn × mです。すべての単一のピクセルを取ることにより作成された3 ⋅ 3 = 9つのパディングされた入力画像から画素を。k1k1k_1n×mn×mn \times m3⋅3=93⋅3=93 \cdot 3 = 9 次に、2番目のレイヤーが適用されます。すべての単一フィルターは、各機能マップに個別に適用されます。これにより、k 1 個のすべての特徴マップに対して個の特徴マップが生成されます。したがって、2番目のレイヤーの後にk 1 × k 2の特徴マップがあります。新しい特徴マップの各のすべての単一のピクセルを取ることによって作成されました5 ⋅ 5 = 25前からパッド入りの特徴マップの「ピクセル」。k2k2k_2k1k1k_1k1×k2k1×k2k_1 \times k_25⋅5=255⋅5=255 \cdot 5 = 25 システムが学習する必要がありのパラメータを。k1⋅3⋅3+k2⋅5⋅5k1⋅3⋅3+k2⋅5⋅5k_1 \cdot 3 \cdot 3 + …

6
ビッグデータでSVDとPCAを行う方法は?
大量のデータセット(約8 GB)があります。機械学習を使用して分析したいと思います。したがって、SVDを使用してからPCAを使用して、効率のためにデータの次元を減らす必要があると思います。ただし、MATLABとOctaveはそのような大きなデータセットを読み込むことができません。 このような大量のデータでSVDを実行するために使用できるツールは何ですか?

3
ニューラルネットワークをトレーニングするためのCPUとGPUの選択
GPUの「オーバーヘッド」についての議論を見てきました。「小さな」ネットワークの場合、GPUよりも実際にCPU(またはCPUのネットワーク)でトレーニングする方が速いかもしれません。 「小さい」とはどういう意味ですか? たとえば、100個の隠れユニットを持つ単一層MLPは「小さい」でしょうか? 「小規模」の定義は、リカレントアーキテクチャに対して変わりますか? CPUでトレーニングするかGPUでトレーニングするかを決定するときに考慮する必要がある他の基準はありますか? 編集1: 私はブログの記事を見つけました(?おそらく古いそれは2014年からです): "...ほとんどのネットワークカードはCPUに登録されているメモリでのみ機能するため、2つのノード間のGPUからGPUへの転送は次のようになります。GPU1からCPU 1、ネットワークカード1、ネットワークカード2、CPU 2からGPU 2.つまり、遅いネットワークカードを選択した場合、1台のコンピューターで高速化が行われない可能性があります。高速ネットワークカードでも、クラスターが大きい場合、GPUから比較しても高速化されませんGPUの動作が速すぎるため、ネットワークカードがCPUに対応できません。 これが、GoogleやMicrosoftのような多くの大企業がGPUクラスターではなくCPUを使用して大規模なニューラルネットワークをトレーニングしている理由です。」 そのため、この投稿によると、ある時点でCPUを使用した方が高速だった可能性があります。これはまだ事実ですか? 編集2:はい、そのブログ投稿は次の理由で非常に古くなっている可能性があります。 ノード内のGPUはPCIeバスを介して接続されているため、通信は約6GiB / sで発生する可能性があります。(例:https : //www.youtube.com/watch?v=el1iSlP1uOs、約35分)。スピーカーは、これがGPU1からCPU、GPU2に行くよりも速いことを暗示しています。ネットワークカードがボトルネックではなくなったことを意味します。

2
グラウンドトゥルースとは
Machine Learningのコンテキストでは、Ground Truthという用語が頻繁に使用されるのを見てきました。私はよく検索して、ウィキペディアで次の定義を見つけました。 機械学習では、「グラウンドトゥルース」という用語は、教師あり学習手法に対するトレーニングセットの分類の精度を指します。これは、研究仮説を証明または反証するために統計モデルで使用されます。「グラウンドトゥルースティング」という用語は、このテストの適切な客観的(証明可能な)データを収集するプロセスを指します。ゴールドスタンダードと比較してください。 ベイジアンスパムフィルタリングは、教師あり学習の一般的な例です。このシステムでは、アルゴリズムはスパムと非スパムの違いを手動で学習します。これは、アルゴリズムのトレーニングに使用されるメッセージのグラウンドトゥルースに依存します。グラウンドトゥルースの不正確さは、結果として生じるスパム/非スパム判定の不正確さと相関します。 ポイントは、私が本当にそれが意味するものを得ることができないということです。ことで、ラベルがそれぞれに使用データオブジェクトまたはターゲット関数それぞれにラベルを与え、データオブジェクト、または多分何か他のもの?


4
ニューラルネットワークは文字列データを解析しますか?
だから、私はニューラルネットワークがパターンを認識して入力を分類する方法を学び始めたばかりで、人工ニューラルネットワークが画像データを解析して画像を分類する方法を見ました(convnetjsを使ったデモ)、そしてそこのキー画像をダウンサンプリングし、各ピクセルがネットワークへの1つの入力ニューロンを刺激します。 しかし、文字列入力でこれが可能であれば、私は頭を包み込もうとしていますか?私が持っているユースケースは、ユーザーが見た映画の「推奨エンジン」です。映画には多くの文字列データ(タイトル、プロット、タグ)があり、その映画を説明するいくつかのキーワードにテキストを「ダウンサンプリング」することを想像できますが、この映画を説明する上位5語を解析しても、映画のセットを比較するために、すべての英語の単語に対して入力ニューロンが必要だと思いますか?入力ニューロンをセットで使用される単語だけに制限できますが、新しい映画を追加することで成長/学習できます(ユーザーは新しい単語で新しい映画を視聴します)。私が見たライブラリのほとんどは、システムのトレーニング後に新しいニューロンを追加することを許可していませんか? 文字列/単語/文字データをニューラルネットワークへの入力にマッピングする標準的な方法はありますか?または、ニューラルネットワークは、このような文字列データを解析するための適切なツールではありませんか(文字列データのパターンマッチングに適したツールは何ですか)。

4
SVMでランダムフォレストを使用する場合とその逆の場合
いつRandom Forest、SVMまたはその逆を使用しますか? cross-validationモデルの比較はモデル選択の重要な側面であることを理解していますが、ここでは、2つの方法の経験則と経験則について詳しく学びたいと思います。 分類器の微妙さ、長所、短所、およびそれぞれに最適な問題を誰かが説明できますか?

4
履歴書データに基づいてジョブ分類を実行するには、どのアルゴリズムを使用する必要がありますか?
Rですべてを行っていることに注意してください。 問題は次のようになります。 基本的に、履歴書(CV)のリストがあります。一部の候補者は以前に実務経験があり、いくつかはそうではありません。ここでの目標は、CVのテキストに基づいて、それらを異なる職種に分類することです。私は、候補者が経験を持たない/学生である場合に特に興味があり、卒業後にこの候補者がどの職種に属する可能性が高いかを予測する必要があります。 質問1:機械学習アルゴリズムを知っています。ただし、NLPを実行したことはありません。インターネットでLatent Dirichletの割り当てに出会いました。しかし、これが私の問題に取り組むための最良のアプローチであるかどうかはわかりません。 私の元のアイデア: これを教師付き学習問題にします。ラベル付けされたデータがすでに大量にあると仮定します。つまり、候補者のリストのジョブセクターに正しくラベル付けされています。MLアルゴリズム(つまり、最近傍...)を使用してモデルをトレーニングし、これらのラベルのないデータを入力します。これらのデータは、実務経験がない/学生である候補であり、所属するジョブセクターを予測しようとします。 質問2の更新:履歴書のすべてを抽出してテキストファイルを作成し、各履歴書が非構造化文字列を含むテキストファイルに関連付けられるようにテキストファイルを作成することをお勧めします。テキストマイニング手法をテキストファイルに適用し、データを構造化するか、テキストファイルから使用される用語の頻度マトリックスを作成しますか?たとえば、テキストファイルは次のようになります。 I deployed ML algorithm in this project and... Skills: Java, Python, c++ ... これは私が「非構造化」、つまりすべてを1行の文字列に折りたたむことによって意味したものです。 このアプローチは間違っていますか?私のアプローチが間違っていると思われる場合は私を修正してください。 質問3:難しい部分は、キーワードを識別して抽出する方法です。tmRでパッケージを使用しますか?tm パッケージはどのアルゴリズムに基づいていますか?NLPアルゴリズムを使用する必要がありますか?はいの場合、どのアルゴリズムを調べる必要がありますか?ご覧になる良いリソースをいくつか教えてください。 どんなアイデアでも素晴らしいでしょう。

4
新しい観察結果が利用可能な場合、モデルを再トレーニングする必要がありますか?
ですから、このテーマに関する文献を見つけることはできませんでしたが、考えてみる価値のあるもののようです。 新しい観察結果が利用可能な場合のモデルのトレーニングと最適化のベストプラクティスは何ですか? 予測が低下し始める前にモデルを再トレーニングする期間/頻度を決定する方法はありますか? 集約されたデータに対してパラメーターが再最適化されると、過剰適合になりますか? 学習は必ずしもオンラインであるとは限らないことに注意してください。最近の予測で大幅な変動を観察した後、既存のモデルをアップグレードすることもできます。

3
MultiOutputClassifierからpredict_probaを理解する
scikit-learn Webサイトでこの例をフォローして、ランダムフォレストモデルでマルチ出力分類を実行しています。 from sklearn.datasets import make_classification from sklearn.multioutput import MultiOutputClassifier from sklearn.ensemble import RandomForestClassifier from sklearn.utils import shuffle import numpy as np X, y1 = make_classification(n_samples=5, n_features=5, n_informative=2, n_classes=2, random_state=1) y2 = shuffle(y1, random_state=1) Y = np.vstack((y1, y2)).T forest = RandomForestClassifier(n_estimators=10, random_state=1) multi_target_forest = MultiOutputClassifier(forest, n_jobs=-1) multi_target_forest.fit(X, Y).predict(X) print(multi_target_forest.predict_proba(X)) これからpredict_proba、2つの5x2配列を取得します。 …

6
モデルハイパーパラメーターとモデルパラメーターの違いは何ですか?
モデルハイパーパラメーターやモデルパラメーターなどの用語は、事前に明確化することなくWeb上で交換可能に使用されていることに気付きました。これは間違いであり、説明が必要だと思います。機械学習モデル、SVM / NN / NBベースの分類器または画像認識器など、最初に思い浮かぶものを考えてみてください。 モデルのハイパーパラメーターとパラメーターは何ですか? 例を挙げてください。

4
Jaccard類似度およびCosine類似度のアプリケーションと違い
ジャカード類似性とコサイン類似性は、アイテムの類似性を比較する2つの非常に一般的な測定値です。ただし、どの状況が他の状況よりも望ましいかについてはあまり明確ではありません。 誰かがこれら2つの測定の違い(定義や計算ではなく、概念や原理の違い)とそれらの望ましい応用を明確にするのを助けることができますか?
27 similarity 

3
XGBoostパラメーターのハイパーチューニング
XGBoostは、カテゴリー依存変数と連続従属変数の両方の処理に関して、素晴らしい仕事をしてきました。しかし、XGBoostの問題に対して最適化されたパラメーターを選択するにはどうすればよいですか? これは、最近のKaggleの問題に対するパラメーターの適用方法です。 param <- list( objective = "reg:linear", booster = "gbtree", eta = 0.02, # 0.06, #0.01, max_depth = 10, #changed from default of 8 subsample = 0.5, # 0.7 colsample_bytree = 0.7, # 0.7 num_parallel_tree = 5 # alpha = 0.0001, # lambda = 1 ) clf <- xgb.train( …
27 r  python  xgboost 

1
複数の機能を備えたRNN
私は、機械学習アルゴリズム(基本的なランダムフォレストおよび線形回帰タイプのもの)で動作する知識を少し自習しています。私は分岐して、KerasでRNNの学習を開始することにしました。通常在庫予測を含むほとんどの例を見ると、1列が機能日付でもう1列が出力である以外に、実装されている複数の機能の基本的な例を見つけることができませんでした。私が行方不明になっている重要な基本的なものまたは何かがありますか 誰かが例を持っているなら、私はそれを大いに感謝します。 ありがとう!

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