LibSVMフォーマットの概要とExcelによるCSV/XLSフォーマットの変換


最近spark上で決定ツリークラスアルゴリズムを研究し,与えられた決定ツリーのdemoがlibsvm datasetに使用されていることを発見し,関連資料を調べた.関連内容は以下の通りです.
1、libsvmとは
LIBSVMは台湾大学林智仁(Lin Chih-Jen)教授などが開発設計した簡単で、使いやすく、迅速で有効なSVMモード識別と回帰のソフトウェアパッケージであり、Windowsシリーズシステムでコンパイルできる実行ファイルを提供しただけでなく、ソースコードを提供し、改善、修正、その他のオペレーティングシステムでの応用を便利にした.このソフトウェアはSVMに関連するパラメータの調整が比較的に少なく、多くのデフォルトパラメータを提供し、これらのデフォルトパラメータを利用して多くの問題を解決することができる.インタラクティブチェック(Cross Validation)の機能も提供されています.
2、libsvmで使用するデータフォーマット
データの基本フォーマットは次のとおりです.
<label> <index1>:<value1> <index2>:<value2>

Labelはカテゴリ識別を表し、例えば、ある座標点に対して二元分類問題を行い、対角線を境界線とし、yの正の半軸に近い領域を正とし、1の代表を用い、逆に0の場合、(1,5)点に対して正を表し、labelは1であるべきである.(4,1)については0を表す.したがって、上記2つのデータのセットは、以下の形式で表すことができる.
1 1:1 2:5
0 1:4 2:1

3 D問題では、次の結果が得られます.
1 1:0 2:4 3:4

indexは次元数に対応していることがわかります.
3、libsvmフォーマットデータの生成方法
データには多くのストレージフォーマット、txtフォーマット、xlsフォーマット、dataフォーマット、csvフォーマットなどがあり、これらのデータフォーマットの間で互いに変換することができます.ここでは、xlsがlibsvmフォーマットのデータを生成する方法について説明します.libsvmデータを生成するには2つの方法があります.ここではFormatDatalibsvmツールを使用する方法を紹介します.この方法は直感的に簡単で、効率が高く、実行しやすいからです.実はexcelのマクロを利用しただけです.①FormatDatalibsvm.xlsというものをダウンロードするのは隠れていて、多くの前のリンクがなくなりました.長い間探していましたが、CSDNで見つけました.住所は以下の通りです.http://download.csdn.net/download/wangwenjinghenhao/3139540 共有者に感謝する.②Excelデータセットを用意するcsv形式の場合は、まずExcelで.xls形式に変換することができます.具体的な方法は以下の4点を参照してください.③FormatDatalibsvm.xlsを開く上にマクロが無効になったことを知らせるボックスが表示されますので、必ず変更をクリックしてマクロを有効にしてください.④dataをロードすると、topleftセルに直接データをコピーできます.コピーするときは、データ領域に関する属性だけをコピーしないでください.そうしないとクラッシュします.⑤変換Excelインタフェースで「ツール」->「マクロ」->「マクロ」->FormatDatatoLibsvm->実行すると、データが変換や移動しているのが見え、少し待っているとlibsvm形式になっているのが見えます.
4、csvとxls変換
最初に取得したデータをcsv形式に変換したい場合は、①Excelを開き、空白のドキュメントを新規作成します.②インタフェースで「データ」->「テキストから」をクリックします.csvファイル「ソースファイル.csv」を見つけて選択し、「インポート」をクリックします.操作はウィンドウをポップアップし、操作を行わずに次のステップをクリックします.③次の画面で区切り記号の種類に応じて該当する記号、例えばカンマ、セミコロンなどを選択し、選択してから次のステップ④をクリックして次のステップをクリックし、データフォーマットを変更する必要がある場合は調整する.⑤完了をクリックし、ウィンドウをポップアップし、データの保存場所を選択し、操作を完了すると、データが最も原始的なxlsフォーマットになったことがわかります.