タグ付けされた質問 「average-precision」

2
精度-リコール曲線下面積(PR曲線のAUC)および平均精度(AP)
平均精度(AP)は、精度-リコール曲線(PR曲線のAUC)の下の面積ですか? 編集: PR AUCとAPの違いに関するコメントを次に示します。 AUCは、精度の台形補間によって取得されます。代替の通常ほぼ同等のメトリックは、info.apとして返されるAverage Precision(AP)です。これは、新しい陽性サンプルが呼び出されるたびに取得される精度の平均です。精度が定数セグメントによって補間される場合、AUCと同じであり、TRECが最も頻繁に使用する定義です。 http://www.vlfeat.org/overview/plots-rank.html また、AUC及びaverage_precision_score結果は、学習scikitに同じではありません。これは奇妙なことです。なぜなら、ドキュメントには次のようなものがあるからです。 予測スコアから平均精度(AP)を計算するこのスコアは、精度-想起曲線の下の領域に対応します。 コードは次のとおりです。 # Compute Precision-Recall and plot curve precision, recall, thresholds = precision_recall_curve(y_test, clf.predict_proba(X_test)[:,1]) area = auc(recall, precision) print "Area Under PR Curve(AP): %0.2f" % area #should be same as AP? print 'AP', average_precision_score(y_test, y_pred, average='weighted') print 'AP', average_precision_score(y_test, y_pred, average='macro') print …

2
2つのランキングアルゴリズムを比較する方法は?
2つのランキングアルゴリズムを比較したい。これらのアルゴリズムでは、クライアントは検索でいくつかの条件を指定します。クライアントの要件に従って、これらのアルゴリズムはデータベース内の各アイテムにスコアを割り当て、最高のスコアを持つアイテムを取得する必要があります。 私はこのサイトで私の質問に関連するさまざまなトピックを読み、ネットを検索しました。私の検索によると、ランキングアルゴリズムを比較するためのいくつかの指標について説明する最も関連性の高い記事は次のとおりです:Brian McFeeおよびGert RG Lanckriet、Metric Learning to Rank、ICML 2010(https://bmcfee.github.io/papers/mlr .pdf)。prec @ k、MAP、MRR、およびNDCGは、使用するのに適したメトリックスですが、問題があります。 私のアルゴリズムは結果を並べ替えるので、結果リストの最初の項目は最高のスコアを持つ最高のものであり、2番目の結果は2番目に上位のスコアになります。検索アルゴリズムを制限して、たとえば5つの最高の結果を見つけます。結果は、上位5項目です。したがって、精度は1になります。検索を制限して最良の結果を見つけると、最良の結果が検出されます。繰り返しになりますが、精度は1になりますが、問題は、この結果を見る人には受け入れられないことです。 私に何ができる?これらのアルゴリズムを比較して、一方が他方よりも優れていることを示すにはどうすればよいですか?

1
平均平均精度と平均逆数ランク
MAPを使用するのが適切な時期とMRRを使用する時期を理解しようとしています。MRRは、関連する結果の数が5未満の場合に最適であり、1の場合に最適であるというこのプレゼンテーションを見つけました。他のケースではMAPが適切です。2つの質問があります。 なぜそうなのかよくわかりません。 この主張の引用可能な引用文献が見つかりません。 私は非常に強い統計的背景を持っていないので、素人の説明が大いに役立つことに注意してください。ありがとうございました。

4
オブジェクト検出の平均精度
APやmAPの値をどのように計算できるかについてはかなり混乱しています。特に、オブジェクト検出のためにAP / mAP値を取得したいと考えています。 私が確実に知っているのは、 リコール= TP /(TP + FN)、精度= TP /(TP + FP) たとえば、評価するクラスが1つだけで、500のテスト画像があるとします。各テスト画像には異なる数の予測(境界ボックス提案)が含まれる場合がありますが、各画像には1つのグラウンドトゥルース境界ボックスしかありません。 画像1:[クラス、確率、x1、y1、x2、y2]、[クラス、確率、x3、y3、x4、y4]、[クラス、確率、x5、y5、x6、y6]、[クラス、確率、 x7、y7、x8、y8]、... 画像2:[クラス、確率、x1、y1、x2、y2]、[クラス、確率、x3、y3、x4、y4]、... 。。。(等々) *ほんの一例で、私はこれを作りました TPを取得するには、各予測のIOUを見つけて、選択したしきい値(0.5など)を超えるものをカウントする必要があることを知っています(しきい値を超えるIOUを持つ複数の予測がある場合、1回だけカウントして他を処理しますか? FPとして?) これは私を困惑させるところです: TP + FP =各画像に対して行われた予測の数でしょうか? すべてのテスト画像にネガがないため、TP + FN = 500? 画像ごと、またはクラスごとに計算されますか? 私の例に基づいてAP / mAPを取得するためのステップバイステップガイドを誰かに教えてもらえますか?最も曖昧な部分は、画像ごとに行うのか、クラスごとに行うのか(つまり、一度に500枚の画像を処理する場合)です。 私が見つけたほとんどのガイド/論文は、情報検索を対象としています。これでいくつかの助けをいただければ幸いです。 *注:一部のカスタムデータセットでテストしています。PASCAL VOCにはそれを行うためのコードがいくつかあることは知っていますが、自分のデータに合わせてカスタマイズしたコードを自分で記述したいと思っています。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.