============= TinySVMを使う ============= このページでは,`TinySVM `_ をRaSCで利用できるようにするための手順を説明します. TinySVM は,ファイルを通じた入出力を行うため, プログラムの変更が必要です(変更の内容については, :ref:`faq_modify_program` を参照してください). 以下では,プログラムにパッチをあてて変更し,RaSCサービスとして利用するための手順を説明します. TinySVMをRaSC対応に変更する =========================== まず,TinySVMのソースを入手し,解凍します. .. code-block:: bash $ wget http://chasen.org/~taku/software/TinySVM/src/TinySVM-0.09.tar.gz $ tar zxvf TinySVM-0.09.tar.gz 次にパッチファイルを入手します. .. code-block:: bash $ wget https://alaginrc.nict.go.jp/rasc/resources/patch_rasc_TinySVM.diff 次にパッチを当てます .. code-block:: bash $ patch -p0 < patch_rasc_TinySVM.diff 次にビルドを行います .. code-block:: bash $ cd TinySVM-0.09 $ ./configure $ make これにより,RaSCから使えるように改修した実行バイナリ ``svm_classify`` が生成されます. TinySVMに対応したサービス設定ファイルを書く =========================================== サービス定義XMLに,実行バイナリのパスとモデルファイルを含む,起動コマンドラインを記述してください (ダウンロードできます: :download:`サービス定義XML `). ``___BASE_DIR___`` と ``___PATH_TO_MODEL_FILE___`` を,それぞれ実際に ``svm_classify`` がおかれたディレクトリと,モデルファイルのパスに修正してください. .. code-block:: xml :emphasize-lines: 8-10 - ``cmdLine`` に先ほどパッチを当てて作成したTinySVMのパスと詳細表示のオプションの ``-V`` ,入力は標準入力を受け付ける ``-`` を設定し,最後にモデルファイルを指定します. - ``delimiterIn`` には,入力の区切り文字が ``[END_OF_INPUT]`` になるようにパッチを当てたので, ``\n[END_OF_INPUT]\n`` と記述します. - ``delimiterOut`` も同様に,出力の区切り文字が ``EOS\n`` になるようにパッチを当てたので, ``EOS\n`` と記述します. - ここに記述される ``\n`` はプログラム内でシステムに応じた改行コードに置換されます. サービス起動の手順は, :doc:`rasc_core` または :doc:`rasc_basic` を参照してください.