Edited at

Watson Knowledge Studioの機械学習アノテーションをWatson Explorer にデプロイする

More than 1 year has passed since last update.


はじめに

Watson Explorerには、大量の文書からエンティティーや概念を抽出し、分析をする機能があります。辞書やルールに従って、エンティティーやその関係性を抜き出してアノテーション(注釈付け)を行い、分析を行うことが出来ます。

一方で、Watson Knowledge Studioは、エンティティーや関係性を学習させて、機械学習アノテーションモデルを作成できます。

Watson Knowledge Studioで作成したEntity, Relationの機械学習アノテーションモデルは、Watson Explorerや、Alchemy APIにデプロイして、アノテーションに利用することが出来ます。

2つが連携することによって、辞書・ルールだけでなく、機械学習のアノテーションを組み合わせた分析を行うことが可能になります。

この記事では、Watson Explorerへのデプロイ方法についてご案内します。

英語のガイドとして、以下を参考にしています。

Leveraging a machine-learning annotator in IBM Watson Explorer

Using machine-learning annotators from Watson Knowledge Studio in Watson Explorer

Watson Knowledge Studio については、以下の「Watson Knowledge StudioのTutorialをやってみた」が、参考になります。

Watson Knowledge StudioのTutorialをやってみた (前編)

Watson Knowledge StudioのTutorialをやってみた (後編)


主な前提条件

WEXサーバーはRHEL7のみサポート (2017年1月現在)

WEXへの機械学習モデル・デプロイは、有償版のWKSのみサポート、無償版ではサポートされない


Watson Explorerサーバーの準備

WEXサーバーはRHEL7のみサポート

WEXサーバーは、Watson Explorer Version 11.0.1 以降をサポートします。


RHEL7新規導入後、Watson Explorer Version 11.0 の前提として、以下を導入


  • libstdc++33 (compat-libstdc++-33.i686 / libstdc++33-32bit)

  • libstdc++ (libstdc++.i686 / libstdc++6-32bit)

  • zlib (zlib.i686 / libz1-32bit / zlib-32bit)

  • libXext (libXext.i686 / libXext6-32bit / xorg-x11-libXext-32bit)

  • libXft (libXft.i686 / libXft2-32bit / xorg-x11-libs-32bit)

  • libXi (libXi.i686 / libXi6-32bit / xorg-x11-libs-32bit)

  • libXp (libXp.i686 / libXp6-32bit / xorg-x11-libXp-32bit)

  • libXtst (libXtst.i686 / libXtst6-32bit / xorg-x11-libs-32bit)

もし、回答結果の型として、サムネイル表示を利用したい場合は、以下のライブラリーを追加で導入します。


  • libXm

  • libXt

yumでの導入コマンド例:yum install libstdc++.i686


Watson Explorer Analytical Componentの導入

以下リンクを参照してください。

参考:Watson Explorer Content Analytics のフレッシュ・インストールの実行

CUIで導入する場合の例


  • 導入イメージの解凍

tar xvf WATSON_EXPLR_AE_AC_V11.0.1_LNX_ML.tar


  • インストーラの起動

cd Main

./install.bin –i console

CUIのテキストの指示に従って、導入を進める


  • 導入完了後、WEXサーバーを始動

esadminユーザーにスイッチ (または、esadminユーザーでログオン)

su - esadmin

esadmin system startall : WEX Serverの開始

esadmin system stopall : WEX Serverの停止


  • 以下のURLにアクセスし、サーバーへのアクセスを確認

http://{WEXサーバーのIPaddress}:8390/ESAdmin/


WEXサーバーにSIREの導入

RHEL7に、以下のライブラリを導入する


  • apr

  • apr-util

  • boost-filesystem

  • boost-iostreams

  • boost-program-options

  • boost-regex

  • boost-serialization

導入コマンド例:

yum -y install apr apr-util boost-filesystem boost-iostreams boost-program-options boost-regex boost-serialization


  • SIRE

rpm -ivh /opt/IBM/es/bin/sire/sire-20160429-2.x86_64.rpm

※Watson Explorer が、/opt/IBM/es に導入されている場合


SIRE 導入後の確認事項

esadminユーザーにて、以下を確認する


  • $LD_LIBRARY_PATH が定義されていること

echo $LD_LIBRARY_PATH


/opt/IBM/es/lib::/opt/ibm/sire/lib/x86_64/opt


  • $PATH に、sireのパスが含まれていること

echo $PATH

/opt/IBM/es/bin:/opt/IBM/es/bin/secure:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/esadmin/.local/bin:/home/esadmin/bin:/opt/ibm/sire/bin/x86_64/opt


  • RHEL7 も含めて再起動を行う

esadmin system stopall (esadminユーザーにて)

reboot (rootユーザーにて)

esadmin system startall (esadminユーザーにて)


Watson Knowledge Studioの機械学習アノテーションをWatson Explorer にデプロイ


WKSにて機械学習モデルをExport

Annotater Component 内のMachine LearningのExportを実行し、機械学習モデルのzipファイルをダウンロードします。

01.WKSにて機械学習モデルをExport.jpg

※機械学習モデルをExportするために、WKSのTutorial Lesson 12: Creating a machine-learning annotator まで実施されている必要があります

http://www.ibm.com/watson/developercloud/doc/wks/wks_tutorials.shtml

Watson Knowledge StudioのTutorialをやってみた (前編)

Watson Knowledge StudioのTutorialをやってみた (後編)


機械学習モデルをWEXサーバーにアップロード

WEX管理画面上にて、システム⇒解析 より、機械学習モデルの構成を行う。

http://{WEXのIPaddress}:8390/esadmin より

02.機械学習モデルをWEXサーバーにアップロード.jpg


コレクションに機械学習モデルを関連付け

コレクションを開き、機械学習モデルを関連付ける

03.コレクションに機械学習モデルを関連付け.png


分析リソースの再起動

分析リソースを開始し、機械学習アノテーションが動作するようにします

04.分析リソースの再起動.png


機械学習によるファセット検索

以下、URLをブラウザーで開き、WEXの分析画面を開きます。

http://{WEXのIPaddress}:8393/ui/analytics/advanced

WKSで定義したMention(Entity)、Relationを使って、WEXでのファセット検索が可能となっています。

05-2.機械学習によるファセット検索.png


WKSのEntity,Relationの見え方

06.WKSのEntity,Relationの見え方.png


おわりに

WKSの機械学習アノテーションによって、Mention(Entity)、RelationがWEX上で見れることが確認できました。 機械学習であるため、結果は100%正確とは限りませんが、人間には見落としてしまう、またはルールベースでは発見できないアノテーションが可能となるかもしれません。 文書の分析を柔軟に行う手段として活用できたらと思います。


参考情報


お問い合わせ

ご質問がございましたら、こちらにもお問い合わせいただけます。

すくすくワトソン編集室: eb17685@jp.ibm.com