T
THINK Watson

自然言語や性格分析も!知っておきたい Watson API まとめ

post_thumb

さまざまな事業領域で活用が進む「IBM Watson」。最近では「カスタマーサポート」や「ビッグデータ活用」などでの事例を目にする機会も増えている。自社でもAI を導入し、効率化を図りたいと考える企業担当者も多いだろう。

自社のビジネスにWatsonを活用するための鍵となるのは「API(アプリケーション・プログラミング・インターフェース)」と呼ばれるアプリケーションを連携させるための仕組みだ。IBMは、画像認識や音声認識などのWatsonの機能をAPIとして公開しているため、すぐにWatsonを試すことができる。この記事では、Watsonの主要なAPIを紹介する。どのような機能やシステムを連携させてサービスを作るのかを理解することで、プログラマーでなくとも、開発者やパートナー企業とのやり取りがスムーズにできるようになるはずだ。

 

【Watson API 目次】

■言語解析系 API

■画像認識系 API

■音声認識 API

 

Watson はどのように使えるの?

API群が一覧になっている画像

Watson は現在、自然言語などの非構造化データや画像認識など、大小合わせて12種類の API を使用することができる。APIを活用することで、例えばチャットボットを Watson で作った際に、LINE などのメッセージアプリの API と連携させて「ユーザーが LINE 上でチャットボットと対話する」といったことが可能となる。

Watson API は、「IBM  Cloud」上ですぐに利用できる。クレジットカード不要、期間無制限で、APIとサービスが 無料で使えるライト・アカウントに、こちらから登録しよう。

 

IBM Cloudライト・アカウントを今すぐ登録

ライト・アカウント登録後、「組織」を作成する際、「地域」には最新サービスを提供している「米国南部」の選択をお勧めします。

(「ライト」の表記があるAPIは、無料・無期限で使用可能 )

ではそれぞれの API を系統別に紹介しよう。

 

言語解析系の API

言語解析系 API は、文字通り Watson でテキスト処理を行いたいときに用いる API 群。例えば人間の会話や学術書などの自然言語を Watson で処理したい、自社サービスにチャットボットを導入したいという場合に役立つ。

 

Conversation(会話)

スマホを触っている画像

「Conversation」はチャットボットのような対話型サービスを作るためのAPIだ。ウェブサイトや SNS、メッセージアプリと組み合わせることで、ユーザーと Watson がテキストベースで対話できるようになる。ビジネスシーンにおいては「カスタマーサポート」や「ウェブ接客」などで活躍する。

カスタマーサポートの分野で「Conversation」を活用するのであれば、あらかじめ Watson に顧客の質問例とその意図のセットおよび対話の中で使われる業務用語や質問の目的語といったキーワードを学習させる。そして、ダイアログに質問の意図に対する応答と対話処理フローを記述しておく。加えて、この学習済みの Watson をウェブサイトや LINE など、ユーザーが実際に操作をする「インターフェース層」と繋ぐことで、ユーザーはチャットボットと対話して、問題を解決することができる。

詳しくは『店員の仕事をするAI:米最大手百貨店Macy’sの試み|THINK Watson』でも紹介している。

 

Natural Language Classifier(自然言語分類)

黄色の背景。イラスト調にコメントやデータが表示されている

「Natural Language Classifier(自然言語分類)」はSNS や学術論文など、人間の言葉(自然言語)の背後の意図を解釈し、その関連の度合いを信頼度レベル付けして分類するというもの。例えば、Go Moment社が提供するホテル・コンシェルジュ・サービスは、部屋を気に入ってもらえたかどうかなどのメッセージをSMSでゲストに送信し、やり取りしたテキストをNatural Language Classifierで解析、ゲストが満足しているか不満かといった判断をして、ホテルスタッフが適切に対応できるように支援しています。

Go Momentのウェブサイト(英語)』も参照すれば、より理解が深まるだろう。

 

Retrieve and Rank(検索およびランク付け)

白い背景に青めの電子回路のような図

「Retrieve and Rank」は、機械学習と検索機能のコンビネーションによる API。あらかじめ用意した質問とその回答のランク付けを機械学習することで、ユーザーからの質問や照会に対して近い回答を提案することができる。

Natural Language Classifier が、文章にどんな要素を含むのかをジャンル別に仕分けするのに対し、Retrieve and Rank は確度の高い回答を提案できる API だ。

例えば車について「クルーズコントロールはどうやって使うの?」という質問に対し、マニュアルの中から適切と思われる箇所をランク順に提示するといった使い方ができる。

 

Document Conversion(文書変換)

「Document Conversion(文書変換)」は、自社で所持する Word 文書や PDF、HTML 文書を、APIの Conversation や Retrieve and Rank で使用できるように変換してくれるというもの。

こちらは他の API と組み合わせて使用するためのツールなので、実際に開発がスタートする段階になってから必要性を判断すればよい。

 

Watson Discovery(探索)

「Watson Discovery」は、大量のデータを検索するとともに、データからパターンや傾向を読み取り、適切な意思決定を支援するAPI だ。また、現状では英語のみの対応だが、ユーザーがインプットした用語集(知識ベース)から最適な検索結果を表示することができるディスカバリーニュースというコレクションがあらかじめ提供されており、毎日約 300,000 件のニュースやブログ記事から具体的に識別されているキーワード、エンティティー、概念、評判や感情分析を含めた検索結果を表示することもできる。

医療や研究などの論文や臨床データなど、ユーザー自身がデータをあらかじめ入力した用語集が知識ベースだ。これを Watson にインプットすることで、専門的な領域でも有用な洞察ができる。例えば「○○がん 事例」というワードを Watson Discovery に入力すると、その治療法や事例、最新のニュースで親和性が高い記事を表示してくれる。

 

Personality Insights(性格分析)

性格分析結果のサンバースト・チャート

「Personality Insights(性格分析)」は、Twitter のツイートや Eメールなどのテキストを通じてパーソナリティーの特性を分析するというもの。例えばツイートを分析すると「協調性」や「外向性」「誠実性」など、いわゆる「ビッグファイブ」という個性を表す基準をはじめ、「衣服を買うときは品質を優先する」傾向にある、といった行動の分析までできるのが面白いところ。

分析対象者が使用する単語の傾向や頻度、書き方を材料に分析しており、サンプル数(この場合はツイート数や分析する文章量)が多いほど正確な分析ができる。

Personality Insights は、ユーザーの嗜好や心理を知ることができるため、デジタルマーケティングやセールスの分野における活用が期待できる。実際に使ってみたい、という人は以下のリンクからデモを試すことができる。

 

Natural Language Understanding(テキスト分析)

Natural Language Understandingのイメージ。スマートフォンやPC、カルテから文章の内容を読み取っている。

「Natural Language Understanding」は、自然言語処理で文章(テキスト)の意味的特徴を分析し、書かれている概念、エンティティー、キーワード、カテゴリー、感情などのメタデータを抽出するAPIだ。例えば、このAPIを使ってIBM Watsonに関するブログ記事を分析すると「Watson」という言葉が「人名」なのか「会社名」なのかといったエンティティーをその確度とともに解析していることがわかる。このAPIはまだ日本語に対応していないが、上記の様なエンティティーやキーワードなどが、すでに学習済みなのが特長だ。インプットする文章は、HTML文書、プレーン・テキストおよび外部URLが指定できる。

 

Language Translator(言語変換)

各国の人がそれぞれの国の言語でやり取りをしている様子

「Language Translator」は、IBM が過去数十年間にわたり研究してきた統計的機械翻訳技術を用いて、ある言語から別の言語にリアルタイムに変換できる API だ。現在日本語の対応は、ニュース記事の「英語から日本語」「日本語から英語」の対応のみだが、英語からの翻訳は記事執筆時点で8ヶ国語に対応している。

Language Translatorの特長はそのカスタマイズ性だ。専門用語など特殊な用語の翻訳をしたい場合に、翻訳を指定するデータを用意してLanguage Translatorをカスタマイズできる。

カスタマイズに関する具体的な方法はこちらの記事を参照してほしい。
IBM Watson の翻訳 API をカスタマイズする : まだプログラマーですが何か?

 

Tone Analyzer(感情分析)

3カラムのグラフ

「Tone Analyzer」はテキスト上の「怒り」や「喜び」といった感情をとらえたり、簡単な性格分析を行うことができる(記事執筆時点では日本語未対応)。

上記の「Personality Insights」(性格分析)と似ているところがあるが、こちらは性格診断というよりも、テキストから感じ取ることができる「感情」の分析がメイン。Personality Insights が消費者動向や嗜好を分析する API であるのに対し Tone Analyzer は消費者の感情のトーンを知るための API だ。

例えば、チャットボットを用いたカスタマーサポート窓口にユーザーからお叱りのメッセージが届いたとする。人間であれば文面から相手の “トーン” を理解して真摯な対応ができるが、チャットボットにはそれは難しい。そんな時に Tone Analyzer をチャットボットと組み合わせることで、相手の感情を汲み取り、人間に近い対応をすることが可能となる。

使用例としては『意中のあの人のハートをゲット!Tone Analyzerで会話の雰囲気を分析するLINE Botを作ろう』という記事が面白い。

 

画像解析系の API

 

Visual Recognition(画像認識)

公園のイラスト。それぞれの対象物を認識している

「Visual Recognition」は、画像に写っている物体の抽出および認識、顔の検出などを行うAPI だ。

それぞれ3つの画像を分析している図

例えばイヌが写っている画像だけを判別したい場合、事前に「さまざまな種類のイヌの画像」「全く関係ない動物が写っている画像」などを Watson にインプットする。機械学習が完了した後に、Watsonに新たな画像を認識させると、イヌが写っているかどうかを自動的に判別できる。
また、そもそも動物であれば、Watsonが事前に学習した知識から「画像に写っているものは何か」「(動物と判断すれば)どんな動物か」「(イヌと判断すれば)犬種は何か」をWatsonが判別できる。機械学習をさせる必要すらない。

愛すべき技術の無駄遣い ── Watsonの画像認識を用いたマンホールのマップサイト運営者』という記事では、マンホールの画像を大量に読み込み「これが何県のマンホールなのか」「同じマンホールの画像は何枚撮影しているのか」などを、Visual Recognitionに分析させる事例が紹介されている。

デモで、実際に画像を読み込んで認識の精度を試すことも可能だ。

 

音声認識系の API

 

Speech to Text(音声認識) とText to Speech(音声合成)

レコーディングをしているイラスト

「Speech to Text」は、文字通り会話からテキストを書き起こすことができる API。音声を文字に起こしたり、音声認識でスマートフォンのアプリを操作したりすることが可能となる。THINK Watson では『Watsonにテープ起こしさせてみた』という記事で紹介しているのでご参照いただきたい。

そして「Text to Speech」は、テキスト文書からリアルタイムで音声を合成するツールで、テキスト文書を読み上げてくれる API だ。英語のみならず、ポルトガル語やフランス語、そして日本語など、記事執筆時点で7ヶ国語に対応している。

音声認識の仕組みとしては、音声波形を音響モデル(音の波形をデジタル化したもの)に当てはめた上に Watson がテキストに変換(もしくはテキストから音声に変換)することで、テキストの音声変換や、逆に音声をテキストに変換することが可能となる。

「Speech to Text」と「Text to Speech」を、上記した Conversation など別の API を組み合わせることで、音声同士でのチャットが可能となる。それぞれ音声をいったんテキストに変換し、ユーザーの質問の意図を汲んでから回答を音声に変換してユーザーに返す、ということが可能になる。

【事例やデモ】
Speech to Text
Text to Speech

Watson ではいくつかの API を組み合わせて使うことができるため、汎用性が高い。例えば「Conversation」「Visual Recognition」「Speech to Text」「Text to Speech」などの API を組み合わせれば、音声と画像でやり取りができる「オンラインショップ店員」として活用することも可能だ。

Watson の API は、2016年2月のローンチ以降、できることや活用できる場が日々増えている。ローンチ直後は日本語未対応が多かったが、最近では日本語対応の API も増えており、格段にビジネスに活用しやすくなった。

それぞれの API の特性を理解して、ぜひ自社のサービスに Watson を活用して欲しい。「何から手をつけたら良いのだろうか?」と迷う時には、下記の「IBM Watson適用判断」を試してみよう。設問に答えていくことで、適切な情報にアクセスできる。

 
2017年11月1日、BluemixはIBM Cloudにブランドを変更しました。詳細はこちら

IBM Alert Notification
スタッフがすべての重大な IT アラートの通知を受け取ることができます
無料評価版はこちら