LibSVMデータ形式の作成



Making Libsvm Data Format



LibSVMを使用する場合、通常は独自のデータセットを作成する必要があります。インターネット上にいくつかのチュートリアルがありますが、それらは包括的ではないので、ここに小さな要約があります。

まず、公式から提供されたデータ形式を見てください。




heart_scale_instanceはトレーニングサンプルであり、スパース行列です。matlabでスパース(A)を使用して、通常の行列をスパース行列に変換できます。heart_scale_labelはトレーニングラベルであり、ベクトルです。以下では、heart_scale_instanceおよびheart_scale_labelと同様のデータを取得する方法について詳しく説明します。



1.LibSVMの公式ウェブサイトhttps://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/binary/australianを参照してください。jトレーニングセットのデータをtxtファイルに整理します(ラベル[2スペース] 1:データ1 [1つのスペース] 2:データ2 ... d:データd)、dはフィーチャの寸法です。次の図は、libsvmread()関数を使用して、「機械学習」のスイカ3aデータセットに従って整理できるtxtファイルです。


2. libsvmread()関数を使用してtxtファイルを読み取り、トレーニングセットのインスタンスとラベルを取得してから、いくつかの単純な実装にsvmtrain()関数とsvmpredict()関数を使用できます。

全体的に、それは非常にシンプルで使いやすいです。