タグ付けされた質問 「classification」

統計的分類は、サブ母集団が既知である観測を含むデータのトレーニングセットに基づいて、サブ母集団のアイデンティティが不明な場合に、新しい観測が属するサブ母集団を識別する問題です。したがって、これらの分類は、統計学によって研究することができる変数の動作を示します。

1
ブライアスコアに類似した平均絶対誤差の名前?
昨日の質問イベントの確率を推定するモデルの精度を決定することで、確率スコアリングに興味を持ちました。 1N∑i=1N(predictioni−referencei)21N∑i=1N(predictioni−referencei)2\frac{1}{N}\sum\limits _{i=1}^{N}(prediction_i - reference_i)^2 1N∑i=1N|predictioni−referencei|1N∑i=1N|predictioni−referencei|\frac{1}{N}\sum\limits _{i=1}^{N}|prediction_i - reference_i| have a name, too?


2
バイナリ分類問題でのaucとloglossの最適化
私は、結果の確率がかなり低い(aroung 3%)バイナリ分類タスクを実行しています。AUCで最適化するか、ログ損失で最適化するかを決定しようとしています。私が理解しているように、AUCはモデルの能力を最大化してクラスを区別しますが、対数損失は実際の確率と推定された確率の相違にペナルティを課します。私の仕事では、精度の精度を校正することが非常に重要です。だから私はログロスを選びますが、最高のログロスモデルは最高のAUC / GINIモデルでもあるべきかどうか疑問に思います。

1
誤検知の数を減らす方法は?
私は歩行者検出と呼ばれるタスクを解決しようとしています、そして私は2つのカテゴリーのポジティブ-人々、ネガティブ-バックグラウンドでバイナリクラスシファーをトレーニングします。 データセットがあります: 陽性の数= 3752 負の数= 3800 私はtrain \ test split 80 \ 20%とRandomForestClassifier形式のscikit-learn をパラメーターで使用します: RandomForestClassifier(n_estimators=100, max_depth=50, n_jobs= -1) スコアを取得:95.896757% トレーニングデータのテスト(完全に機能): true positive: 3005 false positive: 0 false negative: 0 true negative: 3036 テストデータのテスト: true positive: 742 false positive: 57 false negative: 5 true negative: 707 私の質問は、偽陽性の数を減らす方法です(背景は人として分類されます)?また、なぜ偽陰性よりも偽陽性のエラーが多いのですか? class_weightパラメータを使用しようとしましたが、ある時点でパフォーマンスが低下します(class_weight = {0:1,1:4}で確認できます)。 class_weight= …

1
ランダムフォレスト(または別の分類子)による層別分類
だから、私は約60 x 1000の行列を持っています。私はそれを1000の特徴を持つ60個のオブジェクトとして見ています。60個のオブジェクトは3つのクラス(a、b、c)にグループ化されます。各クラスには20個のオブジェクトがあり、真の分類がわかります。この60のトレーニング例のセットで教師あり学習を行いたいのですが、分類機能の精度(および関連するメトリック)と1000の機能の機能選択の両方に興味があります。 まず、私の命名はどうですか? 今本当の質問: ランダムフォレストを、前述のように、または他の任意の数の分類器にスローすることができます。しかし、微妙な点があります。クラスcとクラスaおよびbを区別することだけが重要です。クラスaとbをプールすることもできますが、c以外のすべてのオブジェクトが2つの異なるクラスターを形成する可能性があるという先験的な知識を使用する良い方法はありますか?私と同様のデータで効果的であることが示されているので、ランダムフォレストまたはそのバリアントを使用したいと思います。しかし、私は他のいくつかのアプローチを試すことを確信することができました。

3
非常に小さなセットでの異常値の検出
12のサンプル光度値が与えられた場合、主に安定した光源の明るさの値をできるだけ正確にする必要があります。センサーは不完全であり、光は時々明るくまたは暗く「ちらつく」ことがありますが、無視してかまいません。そのため、外れ値を検出する必要があると思います(そうでしょうか)。 私はここでさまざまなアプローチについていくつか読んだことがありますが、どのアプローチを採用するか決定できません。外れ値の数は事前にわからないため、多くの場合ゼロになります。フリッカーは通常、安定した明るさからの非常に大きな偏差です(大きなものが存在する場合、平均値を実際に乱すのに十分です)が、必ずしもそうではありません。 質問を完全にするための12の測定値のサンプルセットを次に示します。 295.5214、277.7749、274.6538、272.5897、271.0733、292.5856、282.0986、275.0419、273.084、273.1783、274.0317、290.1837 292と295は少し高いように見えますが、私の直感では、その特定のセットにはおそらく異常値はありません。 だから、私の質問は、ここでの最善のアプローチは何でしょうか?値は、ゼロ(黒)ポイントからの光のRGおよびBコンポーネントのユークリッド距離をとることから得られることを述べておかなければなりません。必要に応じてこれらの値に戻すのは、プログラム的には困難ですが可能です。ユークリッド距離は、「全体的な強さ」の尺度として使用されました。私は色に興味がなく、出力の強さだけだからです。ただし、私が言及したフリッカーは、通常の出力とは異なるRGB構成になる可能性があります。 現時点では、許可された測定値の安定したメンバーシップに到達するまで繰り返される、ある種の機能をいじっています。 標準偏差を見つける 外のすべてのものを無視リストに2 SDと表示する 無視リストを除外して平均とSDを再計算する 新しい平均とSDに基づいて無視するユーザーを再決定(12をすべて評価) 安定するまで繰り返します。 そのアプローチに価値はありますか? すべてのコメントはありがたいことに受け入れられました!


1
t-SNEがクラスを適切に分離していることを確認した後、どの分類アルゴリズムを使用する必要がありますか?
分類の問題があり、最初にデータから何らかの洞察を得たいと思い、t-SNEを実行するとします。t-SNEの結果は、クラスを非常によく分離します。これは、クラスも非常にうまく分離する分類モデルを構築できることを意味します(t-SNEが十分に分離しない場合は、それほど意味しません)。 t-SNEはローカル構造に焦点を当てており、クラスを適切に分離できることを知っています。この問題でうまく機能するはずの分類アルゴリズムとは何ですか?ScikitはGaussian RBFカーネルを備えたSVMを提案していますが、他は何ですか?

1
多くのバイナリ分類子と単一のマルチクラス分類子
複数のバイナリ分類器を使用するか、単一のマルチクラス分類器を使用するかを決定するときに考慮すべき要素は何ですか? たとえば、手振りの分類を行うモデルを構築しています。シンプルなケースには4つの出力があります:[なし、thumbs_up、clenched_fist、all_fingers_extended]。これに取り組むには2つの方法があります。 オプション1-複数のバイナリ分類子 [なし、thumbs_up] [なし、clenched_fist] [なし、all_fingers_extended] オプション2-単一のマルチクラス分類器 [なし、thumbs_up、clenched_first、all_fingers_extended] どのアプローチがより良い傾向にあり、どのような状況で?

5
(分類で行うように)0.5レベルではなく0.05レベルで帰無仮説を棄却する理由
仮説検定は分類問題に似ています。したがって、観察(サブジェクト)には2つの可能なラベルがある-ギルティ対非ギルティ。Non-Guiltyを帰無仮説とします。問題を分類の観点から見た場合、データが与えられると、2つのクラスのそれぞれに属する主題の確率を予測する分類子をトレーニングします。次に、確率が最も高いクラスを選択します。その場合、0.5の確率が自然なしきい値になります。誤検知エラーと誤検知エラーに異なるコストを割り当てた場合、しきい値を変更する可能性があります。ただし、しきい値を0.05に設定するほど極端になることはほとんどありません。つまり、確率が0.95以上の場合にのみ、サブジェクトをクラス「ギルティ」に割り当てます。でもよくわかったら これは、仮説検定の問題と同じ問題を見るときに標準的な方法として行っていることです。後者の場合、「非ギルティ」である確率が5%未満の場合にのみ、「非ギルティ」というラベルは割り当てません。そして、もし私たちが無実の人々に有罪判決を下すことを本当に避けたいのであれば、これはおそらく理にかなっているでしょう。しかし、なぜこのルールがすべてのドメインとすべてのケースで適用されるのでしょうか? どの仮説を採用するかを決定することは、データを与えられた真実の推定者を定義することと同じです。最尤推定では、データが与えられる可能性が高いという仮説を受け入れます。ただし、圧倒的に可能性が高いとは限りません。以下のグラフをご覧ください。 最尤法を使用すると、この例では予測子の値が3を超える場合(4など)、対立仮説が優先されますが、この値が帰無仮説から導出される確率は0.05よりも大きくなります。 そして、私が投稿を始めた例はおそらく感情的に訴えられますが、技術的な改善など、他のケースを考えることができます。新しいソリューションが改善である確率が改善ではない確率よりも高いことがデータから示されたときに、なぜステータスクオにそのような利点を与える必要があるのですか?

2
Rの分類モデルの増分学習
以下のコードを使用して不正を検出するための分類器(デシジョンツリー、ランダムフォレスト、ロジスティック回帰などの標準的な分類器のいずれか)があると仮定します。 library(randomForest) rfFit = randomForest(Y ~ ., data = myData, ntree = 400) # A very basic classifier Say, Y is a binary outcome - Fraud/Not-Fraud 今、私は目に見えないデータセットを予測しました。 pred = predict(rfFit, newData) 次に、分類に関する調査チームからフィードバックを取得しましたが、不正を非詐欺(つまり、1つの偽陰性)に分類するのを間違えたことがわかりました。とにかく、アルゴリズムに間違いがあることをアルゴリズムに理解させることができますか?つまり、アルゴリズムにフィードバックループを追加して、間違いを修正できるようにする方法はありますか。 私の頭の上から考えることができる1つのオプションはadaboost classifier、新しい分類器が古い分類器の間違いを修正するようにを構築することです。または私はの何かを聞いたことがありますIncremental LearningかOnline learning。に既存の実装(パッケージ)はありRますか? それは正しいアプローチですか?または、モデルを最初から構築する代わりに微調整する他の方法はありますか?

2
ベイズ分類器が理想的な分類器であるのはなぜですか?
これは、カテゴリーの基礎となる確率構造が完全にわかっている理想的なケースと見なされます。 なぜベイズ分類器を使用すると、達成可能な最高のパフォーマンスが得られるのですか? これの正式な証明/説明は何ですか?常にベイズ分類器をベンチマークとして使用して、他のすべての分類器のパフォーマンスを比較します。

3
高精度または再現率の高いバイナリ分類器を取得するには、どの損失関数を使用する必要がありますか?
非常にまれにしか発生しない(画像内で)オブジェクトの検出器を作成しようとしています。スライディング/サイズ変更されたウィンドウに適用されるCNNバイナリ分類器を使用する予定です。私はバランスのとれた1:1の正と負のトレーニングとテストセットを作成しました(そのような場合にそれを行うのは正しいことですか?)、分類器はテストセットで精度の点で問題ありません。ここで、分類子の再現率/精度を制御したいので、たとえば、過半数のクラスオカレンスの多くに誤ってラベルを付けないようにします。 (私にとって)明らかな解決策は、現在使用されているのと同じロジスティック損失を使用することですが、調整可能ないくつかの定数で2つのケースのいずれかで損失を乗算することにより、タイプIとタイプIIのエラーに異なる重みを付けます。正しいですか? PS 2番目の考えでは、これは一部のトレーニングサンプルに他のサンプルよりも重みを付けることと同じです。1つのクラスを追加するだけで、同じことを実現できると思います。

2
部分的に「不明な」データによる分類
入力として数値のベクトルを取り、出力としてクラスラベルを与える分類子を学びたいとしましょう。私のトレーニングデータは、多数の入出力ペアで構成されています。 ただし、新しいデータをテストする場合、このデータは通常、部分的にしか完成していません。たとえば、入力ベクトルの長さが100の場合、30個の要素にのみ値が与えられ、残りは「不明」です。 この例として、画像の一部が隠れていることがわかっている画像認識を考えてみます。または、データの一部が破損していることがわかっている一般的な意味で分類を検討してください。すべての場合において、データベクトルのどの要素が未知の部分であるかを正確に把握しています。 この種類のデータで機能する分類子をどのようにして学習できるのでしょうか。「未知の」要素を乱数に設定することもできますが、既知の要素よりも未知の要素の方が多いことが多いので、これは良い解決策のようには聞こえません。または、トレーニングデータの要素をランダムに「不明」に変更し、完全なデータではなくこれらでトレーニングすることもできますが、これには既知の要素と未知の要素のすべての組み合わせの徹底的なサンプリングが必要になる場合があります。 特に、ニューラルネットワークについて考えていますが、他の分類器を利用できます。 何か案は?ありがとう!

1
最小リスク分類子の計算しきい値?
2つのクラスとに属性あり、分布がととします。次のコストマトリックスの前のが等しい場合:、C 2、X N(0 、0.5 )N(1 、0.5 )P (C 1)= P (C 2)= 0.5C1C1C_1C2C2C_2xxxN(0,0.5)N(0,0.5) \cal{N} (0, 0.5)N(1,0.5)N(1,0.5) \cal{N} (1, 0.5)P(C1)=P(C2)=0.5P(C1)=P(C2)=0.5P(C_1)=P(C_2)=0.5 L=[010.50]L=[00.510]L= \begin{bmatrix} 0 & 0.5 \\ 1 & 0 \end{bmatrix} なぜ、は最小リスク(コスト)分類器のしきい値ですか?x0&lt;0.5x0&lt;0.5x_0 < 0.5 これは私が誤解している私のメモの例です(つまり、このしきい値にどのように到達したのですか?) 編集1:尤度比のしきい値には、P(C1)/ P(C2)を使用できると思います。 編集2:しきい値に関するいくつかのテキストをパターンのDuda Bookから追加します。

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