View
1.015
Download
3
Category
Preview:
Citation preview
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
畑と会話できるニュータイプなIoTアプリで加熱中の技術トレンドを鷲掴みにする45分⽇本オラクル株式会社 エバンジェリスト 中嶋 ⼀樹
[実演&全員参加型]
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。 文中の社名、商品名等は各社の商標または登録商標である場合があります。
以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。
Safe Harbor
2
畑
Node.js
CPU3G
Raspberry Pi
Oracle Database Cloud
畑私オラクル畑 友達
Bot
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 5
Bot
ピザを注⽂
会話
クラウドと連携Smart Home
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 6
Bot
ピザを注⽂ クラウドと連携Smart Home
会話Siri
Allo
LINE
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 7
⾃然⾔語処理の例
①お好み焼きを注⽂したいのですが?
②豚モダン焼きを⼀枚。
タイプ 枚数
必要なパラメーター
届け先③港区北⻘⼭1-1-1です。
学習済みのIntent
お好み焼き 注⽂
タイプ 枚数 届け先
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 8
IoT、⾃然⾔語処理を擁するBotのアーキテクチャー例
ユーザー Bot
③質問⽂からIntentを特定
(⾃然⾔語解析エンジン)Translate API
②質問を英訳
①質問 ④必要なデータを取得
⑤回答
センサーデバイス
リアルタイムデータを保存
Oracle Database Cloud
API
node.jsのPaaSで稼働
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 9
IoT、⾃然⾔語処理を擁するBotのアーキテクチャー例
ユーザー Bot
③質問⽂からIntentを特定
(⾃然⾔語解析エンジン)Translate API
②質問を英訳
①質問 ④必要なデータを取得
Oracle Database Cloud⑤回答
センサーデバイス
リアルタイムデータを保存
各サービスのハブとなり、Intentごとのアクションを実装する。
switch (response.result.action) { case "get-latest-moisture": // ⼟壌湿度情報をクラウドデータベースに問い合わせ、その値に応じてレスポンスを設定します。 HatakeDb.getLatestMoisture(function(moisture){ responseText = LineBot.getResponseByMoisture(moisture); that.postLineMessage(chatId, responseText); }); break; case "get-latest-light": // 仮の実装で固定の値を常に返しています。本来は照度センサーの値を取得してレスポンスを設定するイメージです。 responseText = "ちょっと薄暗いですね。"; that.postLineMessage(chatId, responseText); break; case "get-latest-nutrition": // 仮の実装で固定の値を常に返しています。本来は⼟壌養分の値を取得してレスポンスを設定するイメージです。 responseText = "もうちょっと肥えを⾜してもらえますか?"; that.postLineMessage(chatId, responseText); break;
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 11
参考情報
https://github.com/nkjm/hatake-bot
nkjm
https://www.facebook.com/groups/oracle.cloud.developers
今⽇のデモアプリのソースコード。node.jsで動作し、api.aiおよびLINEと連携します。
今⽇の話を記事にまとめました。
Meetupやってます。
http://qiita.com/nkjm/items/540ce04a2c7550d882e4
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 12
これまでのアプリとBotの違い
これまでのアプリ Bot
• ⼈間が操作⽅法を覚える。 • マニュアルがある。 • 仕様がある。
• ⼈間は何も覚える必要がない。 • マニュアルはない。 • スキルがある。
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 13
BotのUIを開発できるプラットフォーム
SlackFacebook Messenger
iOS Skype LINE
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 14
Botの⾃然⾔語処理をサポートするサービス
Google Cloud Natural Language API
ストーリー仕⽴てで会話をおこない、⽂脈を保存しつつ必要なパラメータを拾っていく。
あらかじめIntentを登録し、与えられた⽂からそれを特定する。
⽂から感情分析、パラメータ抽出、⽂法解析をおこなう。
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 15
まとめ
• IoTとAIとBot。このテクノロジーの撚り合せに可能性を感じる。
• 鍵となる⾃然⾔語処理はAPIで利⽤できるようになってきてる。
• あとはアイデア次第。
nkjm
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 16
Recommended