luis を使ったアプリケーション開発

22
事例で学ぶ LUISを使ったアプリケーション 2016-11-22 Cogbot勉強会 #2 公開バージョン

Upload: beachside-yokohama-atsushi

Post on 22-Jan-2018

200 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: LUIS を使ったアプリケーション開発

事例で学ぶ

LUISを使ったアプリケーション

2016-11-22

Cogbot勉強会 #2

公開バージョン

Page 2: LUIS を使ったアプリケーション開発

自己紹介

横浜 篤(よこはま あつし)

C#, ASP.NET, Azureとか中心にやってます。Xamarin始めました。

機械学習とか始めました。

#横浜には住んでいません。

@BEACH_SIDE

http://beachside.hatenablog.com/

横浜 篤

Page 3: LUIS を使ったアプリケーション開発

1. LUISでできること

2. 事例紹介

3. まとめ

アジェンダ

Page 4: LUIS を使ったアプリケーション開発

1. LUISでできること

2. 事例紹介

3. まとめ

アジェンダ

BotやLUISを使ってアプリを作ってみ

たいなーというワクワク感を共有

LUISを使ってアプリケーションを開発

するイメージを共有

本セッションのゴール

Page 5: LUIS を使ったアプリケーション開発

2016年11月21日時点の情報です。

アップデートのペースが速いためご注意ください。

フォント:HG行書体

注意事項

Page 6: LUIS を使ったアプリケーション開発

1. LUISでできること

2. 事例紹介

3. まとめ

アジェンダ

Page 7: LUIS を使ったアプリケーション開発

1. LUISでできること - その前に…

開発が柔軟

難易度高 難易度低

ある程度作られたAPIを提供

Cognitive

Services

Cognitive

Services

CNTK

(Cognitive Toolkit)

Machine

Learning

Microsoftが提供する3つのIntelligence

Page 8: LUIS を使ったアプリケーション開発

Intent : 天気

Intent : 電車の時刻

1. LUISでできること - その前に…

Cognitive

Services

本日の主役

Language Understanding Intelligent Service

Page 9: LUIS を使ったアプリケーション開発

1. LUISでできること - 具体例

Entity : 渋谷Intent : 天気 Entity(出発駅):栃木Entity(到着駅):渋谷Intent : 電車の時刻

Cognitive

Services「天気の情報」と「電車の時刻」を認知するLUISの例

LUIS

Page 10: LUIS を使ったアプリケーション開発

1. LUISでできること - 具体例

栃木から渋谷行く電車の時間教えて

Intent : 電車の時刻

Entity(出発駅):栃木Entity(到着駅):渋谷

LUIS

Page 11: LUIS を使ったアプリケーション開発

1. LUISでできること - 具体例

で、渋谷の天気は?

Entity : 渋谷

Intent : 天気

JSONLUIS

Page 12: LUIS を使ったアプリケーション開発

Entity : 渋谷

Intent : 天気

1. LUISでできること - JSON形式のレスポンス

{

"query": "で、渋谷の天気は?",

"topScoringIntent": {"intent": "GetWeather",

"score": 0.99344033,"actions": [

{

"triggered": true,

"name": "GetWeather",

"parameters": [

{

"name": "Location",

"type": "Location",

"required": false,

"value": [

{

"entity": "渋谷","type": "Location",

"resolution": {}

}

JSON

LUIS

!!

Page 13: LUIS を使ったアプリケーション開発

Entity : 渋谷

Intent : 天気

1. LUISでできること - まとめ

文章を解析して、[Intent]と[Entity]にラベル付けすることがぼくの役割。

文章が何を言っているのか判断するから、そのあとのアクションは、皆さんで実装してね。LUIS

ふむふむ…

Page 14: LUIS を使ったアプリケーション開発

1. LUISでできること

2. 事例紹介

3. まとめ

アジェンダ

♪♪

Page 15: LUIS を使ったアプリケーション開発

2. 事例紹介 - 要件

要件 : Skypeで、Outlookのメールの状況を知りたい

昨日、横浜さんから添付付きのメール来てる?

今日、青木さんの未読のある?

返信必要なメールあるかな?

Outlook開くの

ツラいもん

LUIS

… . .

Page 16: LUIS を使ったアプリケーション開発

この構成で実現しているよ。

2. 事例紹介 - システム構成

もしもーし

はい、ご主人さま

LUIS

Office 365

Outlook.com

Machine Learning

LUIS(Cogmitive Services)

Microsoft Azure

App Services

with

Bot Framework

Page 17: LUIS を使ったアプリケーション開発

2. 事例紹介 - コンポーネントごとの役割

LUIS

Machine Learning

LUIS(Cogmitive Services)

文章から、次のアクションを決定するためのIntent、Entityをラベリングします。

メールの返信要否を判断します。

Page 18: LUIS を使ったアプリケーション開発

事例紹介 - コンポーネントごとの役割

LUIS

WebAPIのエンドポイントとして、LUISからの分析結果から条件に応じて、Office365のメールの検索をし、チャットの応答を返します。

Skypeと連携して、チャットの応答基盤として動作します。

Page 19: LUIS を使ったアプリケーション開発

この構成で実現したよ

2. 事例紹介 - システム構成

ご理解いただけましたか?

LUIS

Office 365

Outlook.com

Machine Learning

LUIS(Cogmitive Services) App Services

with

Bot Framework

Microsoft Azure

ふむふむ…

Page 20: LUIS を使ったアプリケーション開発

1. LUISでできること

2. 事例紹介

3. まとめ

アジェンダ

Page 21: LUIS を使ったアプリケーション開発

セッションのまとめ

LUIS

LUISは、文章をIntentとEntityにラベル付けしてく

れます。楽しいアプリケーションを開発しましょう。

次のアクションに必要なEntityを設計すると、よいLUISができますよ。

Bot FrameworkとLUISの相性はすごくいいのでぜひ

活用しましょう。

Azure Bot Serviceを使うともっと楽に開発ができるかもね。LUISの今後の機能追加も見逃せないよ!

LUIS

Page 22: LUIS を使ったアプリケーション開発

enjoy Cogbot.

2016-11-22

Cogbot勉強会 #2