- ABBYY FineReader Engine に用意されている検証アルゴリズムを使用します。これは k 分割交差検証方式を使用します。
各反復では、TrainingData オブジェクトで指定された分類済みのデータ セットが、ランダムに FoldsCount 個の同じ大きさの部分に分割されます。各部分は順番に検証用として使用されます。つまり、その 1 つを除くすべての部分で Model をトレーニングし、残りの 1 つの部分で検証します。
この処理は RepeatCount 回繰り返されます。結果として得られる FoldsCount * RepeatCount 個の Model のうち、最も高い F-measure スコアを示したものが ITrainingResult::Model プロパティから返され、その scores は ITrainingResult::ValidationResult プロパティから取得できます。
各トレーニング ステップにおけるトレーニング セット内のオブジェクト数は、<オブジェクト の総数> * (FoldsCount - 1) / FoldsCount になります。この数は、テキスト classifier の場合は少なくとも 4、combined classifier の場合は少なくとも 8 である必要があります。トレーニング サンプルに十分な数のオブジェクトが含まれていることを確認してください。 - ShouldPerformValidation を FALSE に設定して検証を無効にし、トレーニング データ セット全体で Model をトレーニングした後、別の既知のデータ サンプルに対して IModel::Classify メソッドを使用し、Model の性能をユーザー側でテストします。
プロパティ
| 名前 | 型 | 説明 |
|---|---|---|
| AveragingMethod | AveragingMethodEnum | 2 つを超えるカテゴリを持つ分類器について、正解率、適合率、再現率、および F 値の平均スコアを計算するメソッドです。既定では、このプロパティは AM_Macro に設定されています。 |
| FoldsCount | int | k 分割交差検証アルゴリズムで使用される分割数です。このプロパティの既定値は 3 です。 |
| RepeatCount | int | アルゴリズムで使用される反復回数です。このプロパティの既定値は 1 です。 |
| ShouldPerformValidation | VARIANT_BOOL | 学習済みのModelを検証するかどうかを指定します。このプロパティの既定値は FALSE です。 |
オブジェクト図
