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

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

2
Scikit LearnのGridSearchCVの評価指標としてコーエンのカッパを使用する方法は?
私は1:15の比率、つまり非常に低いイベント率でクラスの不均衡を抱えています。したがって、scikitでGBMのチューニングパラメータを選択するには、F1スコアの代わりにカッパを使用することを学びます。カッパは、クラスの不均衡のF1スコアよりも優れた指標です。 しかし、私はここでsklearn.metricsをscikit learnのEvaluation_metricとしてkappaを見つけることができません でした。 ご質問 gridsearchcvにカッパを含めるための回避策はありますか? scikit learnでカッパの代わりに使用できる他のより良いメトリックはありますか?

1
不均衡なクラスに対処するためのアプローチの分類
不均衡クラス問題に対処するために開発されたアプローチを分類する最良の方法は何ですか? この記事では、それらを次のように分類しています。 前処理:オーバーサンプリング、アンダーサンプリング、ハイブリッド法を含みます コスト重視の学習:直接的な方法とメタ学習が含まれ、後者はさらにしきい値とサンプリングに分割されます。 アンサンブル手法:アンサンブル学習と組み合わせたコスト重視のアンサンブルとデータ前処理が含まれます。 第二の分類: データの前処理:分布の変更とデータ空間の重み付けが含まれます。1クラス学習は、分布の変化と見なされます。 特別な学習方法 予測後処理:しきい値法とコスト重視の後処理を含みます ハイブリッドメソッド: 3番目の記事: データレベルのメソッド アルゴリズムレベルの方法 ハイブリッド法 最後の分類では、出力調整を独立したアプローチと見なしています。 前もって感謝します。


3
プロット/画像上の点を特定するための機械学習技術はありますか?
次の画像とサンプルデータの3つのプロットに示すように、時間と車線番号に対する各車両の横位置のデータがあります。 > a Frame.ID xcoord Lane 1 452 27.39400 3 2 453 27.38331 3 3 454 27.42999 3 4 455 27.46512 3 5 456 27.49066 3 人間のドライバーは車両の位置を完全に制御できないため、横方向の位置は時間とともに変化します。車線変更操作は、横方向の位置が急激に変化したときに始まり、変化が再び「正常」になったときに終了します。これは、データから直接識別することはできません。車線変更の所要時間を推定するには、各車両のプロットを手動で見て、車線変更操作の開始点と終了点を決定する必要があります。しかし、私はデータセットに何千もの車両を持っています。これらのポイントを特定するためにトレーニングできる関連する画像分析/機械学習アルゴリズムを教えていただけませんか?私はRで働いています。よろしくお願いします。

2
トレーニングセットに負のy値がない場合、勾配ブースティング回帰は負の値を予測するのはなぜですか?
私は木の数を増やすと学ぶscikitさんGradientBoostingRegressor、私は私のトレーニングやテストセットには負の値が存在しないにもかかわらず、多くの負の予測を取得します。私は約10の機能を持っていますが、そのほとんどはバイナリです。 私が調整していたパラメーターのいくつかは次のとおりです。 木/反復の数; 深さを学ぶ; そして学習率。 負の値のパーセンテージは、最大で2%のようです。学習深度1(切り株)は、負の値の最大の%を持っているように見えました。このパーセンテージは、ツリーが多く、学習率が小さいほど増加するように見えました。データセットは、kaggle遊び場コンテストの1つからのものです。 私のコードは次のようなものです: from sklearn.ensemble import GradientBoostingRegressor X_train, X_test, y_train, y_test = train_test_split(X, y) reg = GradientBoostingRegressor(n_estimators=8000, max_depth=1, loss = 'ls', learning_rate = .01) reg.fit(X_train, y_train) ypred = reg.predict(X_test)

4
検証セットとテストセットの予測に違いがあるのはなぜですか?
XGBoostモデルで、通貨が次の期間(5分)に上昇または下降するかどうかを予測しようとしています。2004年から2018年までのデータセットがあります。ランダム化されたデータを95%トレインと5%検証に分割し、検証セットの精度は最大55%です。その後、新しいテストセット(2019年のデータ)でモデルを使用すると、精度が51%未満に低下します。 誰かがその理由を説明できますか? つまり、モデルがテストデータよりも検証データを "見た"(トレーニングした)とは考えていません。そのため、モデルは本当に過剰適合しているのでしょうか? 以下に簡単なモデルを添付して説明します。検証セットでは54%が得られますが、テストセットでは50.9%にすぎません。 助けてくれてありがとう! NB私が持っていた理論の1つは、一部の機能が履歴データ(移動平均など)に依存しているため、何らかのデータ漏えいの可能性があるというものでした。次に、移動平均の作成に含まれないサンプルデータのみを使用して、それを修正しようとしました。たとえば、3周期の移動平均がある場合、2周期前のデータ行をサンプリング/使用しません。それは何も変更しなかったので、以下のモデルにはありません。 NB2以下のモデルは、私が使用しているものの単純なバージョンです。私が検証セットを使用した理由は、ハイパーパラメーター調整に遺伝的アルゴリズムを使用しているためです。 import pandas as pd import talib as ta from sklearn.utils import shuffle pd.options.mode.chained_assignment = None from sklearn.metrics import accuracy_score # ## TRAINING AND VALIDATING # ### Read in data input_data_file = 'EURUSDM5_2004-2018_cleaned.csv' # For train and validation df = pd.read_csv(input_data_file) # ### …

2
LightGBMの結果は、データの順序によって異なります
列数、列名、値がまったく同じ2つのデータセットAとBがあります。唯一の違いは、それらの列の順序です。次に、次の手順で2つのデータセットのそれぞれでLightGBMモデルをトレーニングします 各データセットをトレーニングとテストに分割します(AとBの両方に同じランダムシードと比率を使用します) ハイパーパラメータをほぼデフォルトのままにします ランダムな状態を固定数として設定(再現用) グリッド検索を使用してlearning_rateを調整する トレーニングセットでLightGBMモデルをトレーニングし、テストセットでテストする テストセットで最高のパフォーマンスを持つ学習率が選択されます 2つのデータセットの出力モデルは非常に異なるため、列の順序はLightGBMを使用したモデルトレーニングのパフォーマンスに影響を与えると思います。 これが事実である理由を知っていますか?

1
Java Weka APIでSMOTEを使用する方法
Java Weka APIを使用して分類モデルを構築しようとしています。トレーニングデータセットにクラスの不均衡の問題があります。このため、SMOTEを使用してクラスの不均衡の問題を軽減したいと考えています。しかし、Java Weka APIでそれを使用する方法がわかりません。


2
Fメジャーが分類タスクに推奨されるのはなぜですか?
Gメジャー(またはFowlkes–Mallowsインデックス)が(教師なし)クラスタータスクに一般的に使用されるのに対し、Fメジャーは通常(教師付き)分類タスクに使用されるのはなぜですか? Fメジャーは、精度と再現率の調和平均です。 Gメジャー(またはFowlkes–Mallowsインデックス)は、精度と再現率の幾何平均です。 以下は、異なる平均のプロットです。 = 2 ⋅ P R E 、C 、I S I O N ⋅ R E C A L LP R E 、C 、I S I O N + R E C A L L=2⋅prec私s私oん⋅recallprec私s私oん+recall= 2\cdot\frac{precision\cdot recall}{precision + recall} = P R E 、C 、I S I …

1
VCディメンションの正確な定義は何ですか?
私はAndrew Ng Stanfordの講義から機械学習を勉強していて、VC次元の理論に出くわしました。講義と私が理解したことによると、VCディメンションの定義は、 分類器によって粉砕できるようにポイントのセットを見つけることができ(つまり、すべての可能な2 nラベリングを正しく分類する)、粉砕できるn + 1ポイントのセットを見つけることができない場合(つまり、任意のセットの場合)n + 1ポイントには、分類子がすべてのポイントを正しく分離できないように、少なくとも1つのラベル付け順序があります)。VCディメンションはnです。んnn2ん2n2^nn + 1n+1n+1n + 1n+1n+1んnn また、教授は例を取り、これをうまく説明しました。それは: みましょう、 H= { S 、E 、T 、O 、F l i n e a r c l a s s i f i e r s i n 2 D i m e n s i o …

2
列の値がNaNの場合に行全体を削除する方法[終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、 Data Science Stack Exchangeのトピックとなるようにします。 2年前休業。 列に関連するNaN値を含むすべての行を削除します。次のようなデータセットがあるとしましょう: Age Height Weight Gender 12 5'7 NaN M NaN 5'8 160 M 32 5'5 165 NaN 21 NaN 155 F 55 5'10 170 NaN 「Gender」にNaN値があるすべての行を削除したい。私が望む出力: Age Height Weight Gender 12 5'7 NaN M NaN 5'8 160 M 21 NaN 155 F …

2
AdaGradとAdaDeltaの数学を理解する
私はプロジェクト用にいくつかのモデルを構築していますが、AdagradおよびAdadeltaアルゴリズムの計算に頭を悩ますことはできません。 私はバニラ勾配降下法がどのように機能するかを理解しており、それを正常に機能させるためのコードを作成しました。 誰かがこれらの2つのことを私に説明したり、それらを理解するためのリソースを提供したりすると、私は感謝します。

5
コサイン類似度によるクラスタリング
大きなデータセットとそれらの間のコサイン類似度があります。予想するクラスターの数を事前に指定する必要なく、類似のオブジェクトをまとめるコサイン類似度を使用してそれらをクラスター化したいと思います。 私はDBSCANとAffinity Propagationのsklearnドキュメントを読みました。どちらも距離行列(コサイン類似度行列ではない)を必要とします。 本当に、私はa)距離メトリックとb)事前に指定された数のクラスターを必要としないアルゴリズムを探しています。 誰かがそれを行うアルゴリズムを知っていますか?

1
分類のための畳み込みネットワーク、照明に非常に敏感
畳み込みネットワークをトレーニングして、機械コンポーネントの画像を良品または不良品として分類しました。テストの精度は高いものの、照明がわずかに異なる画像ではモデルのパフォーマンスが低いことに気付きました。 私が検出しようとしている機能は微妙であり、照明がモデルを誤作動させて多くの偽陰性を呼び出しているようです。すべてではありませんが、ほとんどのトレーニングデータとテストデータは、拡散照明下で撮影された画像から得られました。私がモデルを試した新しい画像は、焦点を当てたライトで撮影されました。 ヒストグラムの等化(CLAHE)が役立つことを願って、モデルに供給する前に画像の等化を行い、トレーニングとテストデータのためにこれを行いました。そのときの問題は精度が高かったことですが、モデルは画像とラベルの間に他の相関関係を学習したようです。等化後、画像のすべてが目立ち、欠陥はさらに微妙になり、人間の目でも検出するのが難しくなります。 同じコンポーネントが同じ照明で、異なる方向のライトで撮影された場合でも、モデルの予測は変化しました。だから私の質問は、データの終わりやモデルで何ができるのですか?

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