【HALCON】add_sample_class_train_data 関数について - トレーニングデータにサンプルを追加
2024-08-23
2024-08-23
HALCON
のadd_sample_class_train_data
関数は、トレーニングデータセットに新しいサンプルを追加するために使用されます。この関数により、サンプルの特徴ベクトルとクラスIDを指定してデータを拡張し、分類モデルの精度を向上させることが可能です。主に画像分類やパターン認識において、モデルを強化するために利用されます。
使用例
以下は、add_sample_class_train_data
関数を使用してトレーニングデータにサンプルを追加する具体的な例です。
* トレーニングデータセットを作成
create_class_train_data(&TrainDataHandle)
* 特徴ベクトルとクラスIDを指定してサンプルを追加
add_sample_class_train_data(TrainDataHandle, "row", [0.5, 1.2, 0.8], 1)
* 別のサンプルを追加
add_sample_class_train_data(TrainDataHandle, "row", [2.1, 0.4, 1.7], 0)
* トレーニングモデルの実行
train_class_model(TrainDataHandle)
この例では、まずcreate_class_train_data
関数でトレーニングデータセットを作成し、次にadd_sample_class_train_data
関数を使って特徴ベクトルとクラスIDを指定してサンプルを追加しています。その後、train_class_model
関数でモデルをトレーニングしています。
引数
-
ClassTrainDataHandle
トレーニングデータセットのハンドル。create_class_train_data
関数で生成されたハンドルを使用します。 -
Order
特徴ベクトルの順序を指定します。row
、column
、またはfeature_column
のいずれかを指定可能です。 -
Features
追加するサンプルの特徴ベクトルです。各サンプルの特徴を数値の配列として指定します。 -
ClassID
サンプルのクラスIDを整数で指定します。
戻り値
add_sample_class_train_data
関数は、追加されたサンプルが適用されたトレーニングデータセットを返します。このデータセットは、後のトレーニングフェーズで使用され、分類モデルの精度を向上させます。
応用例
サンプルを使ったモデルの強化
この関数は、分類モデルの精度を高めるために、追加サンプルを効率的に使用します。以下に、複数のサンプルを追加する例を示します。
* 複数のサンプルを追加
add_sample_class_train_data(TrainDataHandle, "row", [1.5, 0.8, 1.9, 3.0, 2.2], 1)
add_sample_class_train_data(TrainDataHandle, "row", [0.6, 1.4, 2.1, 0.5, 1.0], 0)
この例では、トレーニングデータセットに複数の特徴ベクトルを追加し、それぞれのサンプルにクラスIDを割り当てています。これにより、データセットが拡張され、モデルのトレーニング精度が向上します。
注意点
Features
の長さは、モデルの構造に合った正確な次元である必要があります。不一致があるとエラーが発生する可能性があります。- サンプルを追加した後は、
train_class_model
関数でモデルを再トレーニングする必要があります。新しく追加されたサンプルがモデルに反映されるには、再トレーニングが必要です。
まとめ
HALCON
のadd_sample_class_train_data
関数は、既存のトレーニングデータに新しいサンプルを追加するための重要なツールです。この関数を使用してトレーニングデータセットを拡張し、分類モデルの精度を向上させることができます。特に画像分類や機械学習タスクにおいて、データセットの強化に役立ちます。