InterSystems IRISの目玉機能であるNatural Language Processing(NLP)は、
・「その文章がいかなる意味のつながりを持っているか」を数値化する
・「コンテクスト」(その文章が表現しようとしている知識領域のマップ)と「エンティティ」(コンテクストを構成する要素としてのまとまった単語)を出力する
という機能が特徴です。この能力を知るためには、Webブラウザ上からGUIで動作できる「Analyze」機能がありますが、プログラムと連動して動作させるためにはObjectScriptで記述する必要があります。接続方法をInterSystems掛地様に教えていただいた(ありがとうございます)ので、まとめます。まず、GUI操作でのNLP利用までの流れを紹介します。この土台を用いて、プログラミングを行います。
・InterSystems IRISの起動
右下のアイコンから[IR]->[Management Portal]を起動
・Analyticsから、解析するネームスペースを選択する(ここではTESTSAMPLESにデータを格納している)
・NLPで読み出せる基本的なデータセットを作成するため、[Text Analytics]→[ドメイン・アーキテクト]をクリック
・新規作成をクリックする。ドメイン名を任意でつける(ここではAnalyzeとした)と、クラスとして、User.Analyzeというクラス名が自動的に記述される。
・スキーマ(ここでは、NLPの元データを入力した場所。"User"という名前の直下にクラスを作成してデータを入れた場合のみ、"SQLUser"という名前になることに注意)とテーブル名"MercForNLP"を入力する。最も簡単に行う場合は、IDフィールドにID、グループフィールドにもID、データフィールドにNLPにかけたいデータフィールド(ここではContentFull)を入れると始めやすい。
・[保存][コンパイル][構築]を準備実行すると、NLP用データドメインの作成が始まる。(結構時間がかかります)その後、[Domain Explorer]を押して、分析結果を見る環境に入る。
・既にドメイン構築ができている場合には、[Text Analytics]->[Domain Explorer]を選択してもよい。
[Domain Explorer]では、左に解析されたエンティティとその頻度、真ん中に類似エンティティ、右側に関連(コンセプト)が表示される。