はじめに
久しぶりにWatson APIの記事です。
Watson NLU(Natural Language Understanding)のデモをしようと思い、サンプルアプリケーションのページを見ました。
いろいろ面白そうなものが並んでいる中、自分で動かしてみようと選んだのが、上から2つめの構造化データと非構造化データをリンクしてお勧めを生成するでした。
IBM Code Pattarnは面白いものが多いのはいいのですが、コードが古くて動かなくなっているものがあるのが玉に瑕です。
このサンプルもその例に漏れず、何カ所かトラップがありました。そのトラップを乗り越え、最後まで動くコードを作りましたので、コメントを日本語に変えた上で連携します。
(しかし結果が合っていないのでどこかにまだバグがあるようです)
修正後のNotebookはこちらNLU-demo-matching.ipynbです。
以下では、サンプルを動かすための手順を簡単にご紹介します。
[2020-04-25] セットアップ手順修正
手順
基盤的準備
(1) Watson StudioでJupyter Notebookが動く環境を作ります。
手順は
無料でなんでも試せる! Watson Studioセットアップガイド
を参照して下さい。
(2) NLUのインスタンスを作ります。
認証情報はしらべておいて、テキストエディタにコピペしておきます。
(3)以下のgitリポジトリをcloneかzipダウンロードします。
https://github.com/IBM/generate-insights-from-data-formats-with-watson
(4) ダウンロードしたファイルのうち、data配下の3つのファイル(sample_config.txt, Data.csv, data_files.zip
)をStudioのData Assetとしてアップロードします。
(5) Jupyter NotebookのファイルをURLリンクhttps://raw.githubusercontent.com/makaishi2/sample-data/master/notebooks/NLU-demo-matching.ipynbから作ります。
(6) Notebookファイルに修正を加えます。
3箇所のセル自動生成と書かれているところは、下の図のように修正先セルにカーソルがある状態で、対象のデータアセットから右ボタンクリックでコード生成を行います。修正が必要な箇所は、都度指示に従ってコードを修正します。
NLUの認証情報を設定するセルは、事前のコピーしたapikeyの値をiam_apikey
の値として指定します。
後は、セルを上から順番に実行していけば、サンプルアプリが動くはずです。実行結果の画面の一部を下にアップしておきます。