1

vowpal のサンプル データに対してロジスティック回帰を実行しようとしています。次のようなサンプル データ セットを作成しました。

 1 1.0  | a:3.28 b:1.5 c:2.0  |example
-1 1.0  | a:1.25 b:0.4 c:1.4  |example
 1 1.0  | a:1.40 b:0.8 c:1.6  |example
 1 1.0  | a:2.00 b:4.2 c:2.1  |example
-1 1.0  | a:2.51 b:2.7 c:1.9  |example
 1 1.0  | a:1.72 b:2.3 c:0.6  |exampleone
 1 1.0  | a:1.81 b:2.1 c:0.9  |example

ロジスティックを実行しようとすると、「損失関数の専門家または不正な形式の例で指定された -1 または 1 ではなくラベル 0 を使用しています」というエラーが表示されます

この後、最後にスコアを計算したいのですが、 vowpal でスコアまたは auc 曲線を計算する方法

4

1 に答える 1

2

Vowpal Wabbitの正しい入力データ形式を使用していることを確認してください。

--loss_function=logistic(または)を使用し、一部の例にラベル 0 がある場合、「ラベル 0 を使用しています」というエラーが--loss_function=hinge発生します。提供されたサンプルではエラーを再現できません。

サンプルの " |example" は、機能のない名前空間として解釈されますが、これはおそらくあなたが望んでいたものではありません。「1.0」は重要度の重みの例として解釈されますが、1.0 はデフォルトの重要度の重みであるため、省略できます。タグを使用する場合は、最初の垂直バーの前に配置する必要があります (バーの前にスペースを入れないでください)。したがって、サンプルは次のようになります。

1 tag1| a:3.28 b:1.5 c:2.0 -1 tag2| a:1.25 b:0.4 c:1.4 1 tag3| a:1.40 b:0.8 c:1.6 1 tag4| a:2.00 b:4.2 c:2.1 -1 tag5| a:2.51 b:2.7 c:1.9 1 tag6| a:1.72 b:2.3 c:0.6 1 tag7| a:1.81 b:2.1 c:0.9

最後にスコアを計算し、スコアまたは auc を計算する方法

何点?VW は、プログレッシブ バリデーション ロス (複数のパスを使用し、 を使用しない場合はホールドアウト ロス) を計算します--holdout_offROC 曲線の下の面積を計算する場合は、 perfなどの外部ツールを使用する必要があります。Vowpal Wabbit を使用する場合の AUC の計算を参照してください。

于 2015-05-27T20:36:53.640 に答える