17.5 RSIを使用したセンチメント分析の実行
XML問合せの結果セット・インタフェース(RSI)により、デフォルトのセンチメント分類子またはユーザー定義のセンチメント分類子を使用してドキュメントのセットに対してセンチメント分析を実行できます。センチメント分析を実行する必要のあるドキュメントはドキュメント表内に格納されます。
入力RSIのsentiment
要素は、結果セット記述子(RSD)で指定された他の操作に加えて問合せ時にセンチメント分析を実行する必要があることを示すために使用します。sentiment
要素のclassifier
属性の値を指定すると、指定したセンチメント分類子がセンチメントの分析の実行に使用されます。classifier
属性を省略すると、Oracle Textではデフォルトのセンチメント分類子を使用してセンチメント分析が実行されます。sentiment
要素には、センチメント分析中にセンチメントを生成する必要があるトピックまたは概念を指定する、item
と呼ばれる子要素が含まれます。
各ドキュメントの単一のセンチメント・スコアまたはドキュメント内のトピックごとに個別のセンチメント・スコアを生成できます。item
要素のagg
属性を使用して、各ドキュメントの単一の集計センチメント・スコアを生成します。
センチメント分類を実行するには、キーワード問合せまたはABOUT
演算子を使用します。ABOUT
演算子を使用する場合、結果セットにはシソーラスを使用して識別されたキーワードのシノニムが含まれます。
RSIを使用してセンチメント分析を実行するには:
例17-6 センチメント分析を実行するためのRSDの入力
次の例では、センチメント分析を実行し、'lens'トピックのセンチメントを生成します。駆動問合せは'camera'のキーワード問合せです。sentiment
要素は、センチメント分析をclsfier_camera
センチメント分類子を使用して実行する必要があることを指定します。この分類子は、以前はCTX_CLS.SA_TRAIN_MODEL
プロシージャを使用して作成およびトレーニングしていました。camera_revidx
コンテキスト索引はドキュメント・セット表にあります。
センチメント・スコアの範囲は-100~100です。正のスコアは肯定的なセンチメントを示し、負のスコアは否定的なセンチメントを示します。スコアの絶対値は、肯定的および否定的なセンチメントの大きさを示します。
センチメント分析を実行して、ドキュメント内の各トピックのセンチメント・スコアを取得するには:
-
検索操作の結果を格納する結果セット表
rs
を作成します。SQL> var rs clob; SQL> exec dbms_lob.createtemporary(:rs, TRUE, DBMS_LOB.SESSION);
-
検索問合せの一部としてセンチメント分析を実行します。
検索されているキーワードは'camera'です。センチメント分析が実行されるトピックは'lens'です。
begin ctx_query.result_set('camera_revidx','camera',' <ctx_result_set_descriptor> <hitlist start_hit_num="1" end_hit_num="10" order="score desc"> <sentiment classifier="clsfier_camera"> <item topic="lens" /> <item topic="picture quality" agg="true" /> </sentiment> </hitlist> </ctx_result_set_descriptor>',:rs); end; /
-
結果表に格納されている結果を表示します。
他のアプリケーションでXML結果セットを使用して、さらに処理を加えることができます。簡潔にするために、一部の出力を削除しました。ドキュメント内のセグメントごとに、スコアがセグメントのセンチメント・スコアを表します。
SQL> select xmltype(:rs) from dual; XMLTYPE(:RS) -------------------------------------------------------------------------------- <ctx_result_set> <hitlist> <hit> <sentiment> <item topic="lens"> <segment> <segment_text>The first time it was sent in was because the <b>lens </b> door failed to turn on the camera and it was almost to come off of its track . Eight months later, the flash quit working in all modes AND the door was failing AGAIN!</segment_text> <segment_score>-81</segment_score> </segment> </item> <item topic="picture quality"> <score> -75 </score> </item> </sentiment> </hit> <hit> <sentiment> <item topic="lens"> <segment> <segment_text>I was actually quite impressed with it. Powerful zoom , sharp <b>lens</b>, decent picture quality. I also played with some other Panasonic models in various stores just to get a better feel for them, as well as spent a few hours on </segment_text> <segment_score> 67 </segment_score> </segment> </item> <item topic="picture quality"> <score>-1</score> </item> </sentiment> </hit> . . . . . . </hitlist> </ctx_result_set>
関連項目: