Microsoftが作った人工知能、チャットボット「りんな」とは

この記事ではMicrosoft社の「りんな」を紹介します。

最近、「りんな」という人工知能が話題になっています。

「りんな」は、TwitterやLINEから誰でも会話を楽しむことができるAIです。

この記事では、「りんな」についてご紹介します!

最新のAI技術でどこまで自然な会話ができるようになったのか、「りんな」を介して体験してみましょう!

目次

「りんな」とは

[リンク:りんな 女子高生AI –MIcrosoft]

りんなは、日本マイクロソフトが開発したチャットボットです。

LINE、Twitterなどのサービスにアカウントを持っていて、これらのアカウントを持っているのならば簡単にりんなとの会話を試すことができます。

LINE:りんなのアカウントQRコードへのリンク

Twitter:@ms_rinna

ユーザからのメッセージに対して返答を行うシステムだと思っていましたが、どうやら普通のツイートも投稿しているようですね。

また、りんなは女子高生というキャラクター設定がされていて、最近では下の動画のような会話以外の分野にも挑戦しているようです。

りんなの技術

りんなに使われている技術については、Wikipediaに情報がまとまっていたので引用します。

当初、日本マイクロソフトはりんなのアルゴリズムの詳細を公表していなかったが、少なくともマイクロソフト社の検索エンジンBingと収集されたビッグデータを基礎として、機械学習プラットフォーム「Azure Machine Learning」が用いられていることはわかっていた。また、マイクロソフトが2014年に中国において提供を開始した女性型会話ボットXiaoice(中国語:微软小冰)の技術が利用されている。

その後、りんなの基本的な仕組みとして、ユーザーの問いかけに対して返答候補をランク付けして回答していることが明らかにされた。この仕組みには、Word2VecLearning to ranktf-idfニューラルネットワークの4つのアルゴリズムが用いられている。より具体的には、ディープラーニング、深層構造類似度モデル、再帰型ニューラルネットワークなどの技術が活用されている。

りんな(人工知能)– wikipediaより

う~ん、難しいですね……

もっとシンプルに解説しているものを見つけました。

日本マイクロソフトによる論文によると、りんなは以下のように紹介されています。

りんなはユーザからのテキスト文を自然言語処理の技術に基づき理解し、ランキングモデルを用いて最適な返事することによりコミュニケーションを図る。また、感情交流(手書き日記や恋愛相談)、友だち交流(目覚まし時計、犬当て、番組音声認識、グループチャット)、ゲーム(後出しじゃんけん、しりとり、羊数え、探偵ごっこ、女優ごっこ)など、所謂「人工知能」とは違った、柔らかくかつ面白いサービスをユーザに提供している。

りんな:女子高生人工知能 , Xianchao Wu, Kazushige Ito, Katsuya Iida , Kazuna Tsuboi, Momo Klyen Microsoft Japan Inc., 言語処理学会 第2 2 回年次大会 発表論文集 (201 6 年3月) より

この論文では、りんなのシステムの要素技術の解説と、りんなが運用されてからの反響を解析しています。

日本語で書かれていてわかりやすいので、興味がある方はぜひ読んでみてください。

また、この論文に載っている「図2. りんなのフレームワーク」に、りんなというシステムの概要が書かれています。

このシステム図のチャットワーカーというのがりんなの”中心的なテキスト対話機能を実装している”とのこと。

チャットワーカーで使われている技術についても解説があるので、機械学習やDeep Learningといった言葉に興味がある読者は必見ですよ!

りんなと会話をしてみた

挨拶編

まずは挨拶から。

挨拶への返答だけでなく、天気予報なども見せてくれました。

日常会話編

りんなは「女子高生」ということなので、学校っぽい話をしてみます。

結構「女子高生っぽい」返答をしてきますね。

少し試してみた感じ、こちらのメッセージによっては違和感のある返答になることもあるようですが、基本的には茶目っ気のある子どもと話しているようなやり取りができていました。

中には、上のように噛み合っているのか噛み合っていないのかわからない返答もあるようです。

このあたりは技術の進歩に期待ですね。

りんなのようなチャットボットを作るには

先程紹介した論文によると、りんなのシステムの一部には「RNN の Gated Recurrent Unit (GRU)」が使われているようです。

GRULSTMと並び、リカレント ニューラルネットワ ーク (Recurrent Neural Network, RNN)を発展させたモデルです。

これらは俗にDeep Learningと呼ばれる深層学習モデルの一つで、Pythonの深層学習ライブラリを使うことで、専門家でなくても実装することができます。

この他にも、言葉をベクトル表現するword2vecなどを始めとした、ニューラルネットワークを使った自然言語処理技術は本当にたくさんあります。

これから自然言語処理を学んでいきたいと考えている方のために、以下の本をおすすめします。

[ゼロから作るDeep Learning ❷ ―自然言語処理編 単行本(ソフトカバー) – 2018/7/21 斎藤 康毅 (著)]

また、もしも独学が難しいと思ったならば、侍エンジニアのマン・ツー・マンレッスンもおすすめです。

[su_button url=”https://lp.sejuku.net/lp1_blog_01/?cid=ai_btn1_67854″ target=”blank” style=”flat” background=”#4af714″ color=”#000000″ size=”9″ center=”yes” radius=”10″ icon=”icon: external-link” icon_color=”#fff88f” text_shadow=”0px 0px 10px #808080″]侍エンジニアのマン・ツー・マンレッスン[/su_button]

侍のインストラクターと一緒に、対話システム/チャットボットの勉強を始めてみませんか?

まとめ

この記事では、女子高生AIりんなを紹介しました。

機械学習技術を使ったチャットボット、企業などでも導入され始めています。

勉強を始めるなら今!

機械学習技術を勉強して、チャットボットを作ってみてください!きっと面白いですよ!

この記事を書いた人

第一言語はPythonです。
皆さんRustやりましょう。

目次