LoginSignup
12
7

More than 5 years have passed since last update.

Watson Retrieve and Rankの公式ツールを利用して質問応答システムを作る (2)

Last updated at Posted at 2017-04-30

2017年11月1日追記

[Watson] Retrieve and Rankのサービス終了について

概要

本稿では、Retrieve and Rank Web interfaceという公式ツールを利用してRetrieve and Rank(以下R&R)のトレーニングを行い、簡単な質問応答システムを作るまでの手順をシリーズ化して解説します。

(1) R&Rおよび公式ツール利用開始〜回答データ投入
(2) 質問データ投入〜Rankerトレーニング ※この記事で説明する部分
(3) Node-REDアプリケーションとR&Rの連携

まだ前回の記事をお読みでない方は、そちらを先にお読みください。

前回は公式ツールを利用して回答データを投入し、Solrによる検索結果までを確認しました。
この記事では質問データを準備・アップロードして、回答との関連付け、そしてRankerのトレーニングを行っていきます。

免責事項

本稿におけるWatsonサービスに関する解説は執筆者の個人的な見解であり、公式資料に基づいていない内容を含みます。
また本稿の情報は2017年4月現在のものです。
必ずWatson Developer Cloudなどの公式資料も併せて確認してください。

質問データの準備

公式ツールにアップロードできる質問データの形式は、UTF-8のテキストファイルです。
レイアウトは単純で、改行をレコード区切りとする質問文の羅列です。

Rankerのトレーニングを開始するには、後述する「質問と回答の関連付け」を150件以上行う必要があります。(結構大変ですね…)

今回は、「歴史のある観光スポットを教えてください」「家族で楽しめる観光スポットを教えてください」といった感じの質問文を150個ほど用意しました。

質問データのアップロード

質問データができたら、公式ツールの「Content」タブ「Questions」タブの「Upload questions」ボタンをクリックします。
スクリーンショット 2017-04-29 17.49.29.png

以下のダイアログにて質問データファイルを指定し、アップロードします。
スクリーンショット 2017-04-29 17.51.23.png

アップロードが完了すると以下のような画面に遷移します。
スクリーンショット 2017-04-29 17.52.31.png

質問と回答の関連付け

公式ツールの「Tasks」タブに移動します。「Priority training」の「Start」ボタンをクリックします。
以下のように、先ほどアップロードした質問文と、Solr検索による回答候補が表示されます。
この回答候補に対して、★マークで関連度を評価します。
スクリーンショット 2017-04-29 18.20.34.png

評価 説明
関連なし
★★ 関連性はあるが回答としては不適
★★★ 部分的には良い回答だが改善の余地あり
★★★★ 期待通りの回答

Solr検索による回答候補が不足な場合は、「See More Answers」または「Search and Find Answer」ボタンで別の回答候補を表示できます。

候補として表示された全回答に対して、★マークを1つ以上付けたら「Submit Rating」ボタンをクリックします。
(注)★マークを付けていない回答候補があるとボタンが押せません。

この作業をひたすら繰り返し、150件に達するまで続けます。
何件まで進んでいるかは「Performance」タブで確認することができます。

Rankerのトレーニング

質問と回答との関連付けが150個に達すると、「Tasks」タブに「Train a ranker」というタスクが現れます。

ここまでの作業でトレーニングデータ(教師データ)が作成できました。
これでいよいよRankerのトレーニング=機械学習が可能となります。

「Train」をクリックすると、Rankerのトレーニングが始まります。
スクリーンショット 2017-04-30 20.02.25.png

トレーニングが完了すると「Train a ranker」が消えて代わりに「Review」というタスクが現れます。
スクリーンショット 2017-04-30 19.06.17.png

「Start」をクリックし、上で行った関連付けの要領で、Rankerのレビューを行っていきます。

レビューが完了すると再度「Train a ranker」が有効になり、再トレーニングを行うことができます。

こうして、質問文の追加 → 回答との関連付け → Rankerのトレーニング → レビュー → 再トレーニングのサイクルを回すことで、Rankerの精度を高めていきます。

Rankerの精度を試す

「Content」-「Try Out Watson」タブで、プルダウンの切り替えにより、Solrのみ、あるいはSolr + Rankerの検索を試すことができます。
スクリーンショット 2017-04-30 20.33.34.png

Solrのみによる検索結果

スクリーンショット 2017-04-30 20.10.29.png

Solr + Rankerの検索結果

スクリーンショット 2017-04-30 20.09.51.png

Rankerにより順位が変わっていることがわかります。

これで、Retrieve and Rankが使えるようになりました!

次回はRetrieve and Rankと連携する質問応答システムを、Node-REDを使って作成していきます。

12
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
7