CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
SWO研究会ワークショップ
ナレッジグラフ推論チャレンジ「技術勉強会」
人工知能学会セマンティックウェブとオントロジー(SWO)研究会
1
2018年10月18日(木)@JST東京本部「別館」
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
公式Webサイト
2
http://challenge.knowledge‐graph.jp/
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
本日の概要
本日のねらい
10月末の応募締切に向け,チャレンジの概要,想定
される推論例,応募のポイントなどを解説し,具体的
な応募イメージをつかんでいただく.
本日の予定
16:00 ナレッジグラフ推論チャレンジの紹介[古崎]
・開催趣旨,概要
・提供するナレッジグラフの説明
16:30 SPARQLと推論ルールを用いた例+デモ[江上]
16:50 応募イメージの紹介[川村]
17:30 質疑応答
17:45 終了
3
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
開催趣旨
“何に”チャレンジするのか?
シャーロック・ホームズのような
“推理”(推論)ができるAI技術の開発
にチャレンジする!
具体的には,
与えられた事実(情報)に基づいて…
事件の犯人を,正しく突き止める
その理由(証拠,トリック,etc.)を,適切に説明する
→“説明能力(解釈可能性)”をもったAI技術の開発
4
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
タスク(課題)の概要
推理小説の内容をもとに,事件の背景,起こった出
来事,人物像などを知識化したナレッジグラフ(LOD)
を用いて,“犯人を推理する”
ただし,“その理由をきちんと説明できる”こと!
対象とする推理小説
「シャーロック・ホームズ」短編シリーズから人気No.1
の「まだらのひも」をナレッジグラフ(LOD)化
5
どのような“推理・推論・説明”に,
どのような“知識”が,どの程度必要か?
を考察するテストケースと位置づけられる.
2018/9/8
課題の概要
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
想定している応募内容
推理?推論?推定?する手法は,情報技術であれば
なんでもOK!
手法1 SPARQLで検索して探す
例) 特定の時間に特定の場所に居た人をUnionで探す,など
手法2 一階述語論理に基づくルールを加えて推論す
例) ナイフに個人の指紋がある ⇒ 犯人である,など
手法3 オントロジーに基づいて記述論理で推論する
例) 犯人クラスを定義し,犯人候補との包摂関係を推論する,など
手法4 機械学習を用いて分類,クラスタリングして推定する
例) 他の事件における犯人の特徴群から学習・推定する,など
提供されたナレッジグラフ以外の外部知識も利用可
 適切な推理を進める上で必要な“捜査戦略”や“常識知識”の
導入も,キーポイントの1つ.
6
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
推理(推論)の例
ジュリアの死に不審な点があると,ヘレンから相
談を受ける
↓ ←犯人は現場にいた人【外部知識】
「ジュリアが死んだ日」に現場の屋敷にいた人物
の一覧を取得する
ジュリアが結婚すると,ロイロット博士に入るお金
が減る
↓ ←お金は殺人の動機になりうる【外部知識】
ロイロット博士がジュリアを殺す動機になる
7
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
応募要領の概要
提出物
応募は本部門とアイデア部門に分かれています.
アイデア部門は以下の1,2のみで結構です.
1. 応募者に関する情報
2. 推論・推理過程の説明
3. 実行プログラム
(ただし,ソースコードの提出は必須ではありません)
審査基準
1. 正しく犯人を当てているか?
2. 説明が納得できるか?
3. 技術的な工夫
 推論の仕方
 拡張した知識
4. 評価観点
 汎用性:一般的な知見となりうるか?
 少ない知識をうまく使う vs. 多量の知識?
8
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
開催スケジュール(これまで)
2017/02/26 推論チャレンジ(仮称)の構想開始
in 第41回SWO研究会@志賀島
2017/11/25 第1回公開WS:推論チャレンジ(仮称)開催予告
in 第43回SWO研究会@人工知能学会合同研究会2017
2017/12/19 第2回公開WS:スキーマ検討会
2018/02/28 第3回公開WS:スキーマ設計会
2018/03/18 第4回公開WS:ナレッジグラフの構築テスト
in 第44回SWO研究会@五島市(合宿)併設ワークショップ
2018/04/23 第5回公開WS:「推論チャレンジ」ワークショップ
2018/06/05 ナレッジグラフ公開・チャレンジ開始
2018/08/07 応募に向けた技術勉強会
9
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
今後の予定
2018/10/18:応募に向けた技術勉強会(2回目)
2018/10/30: チャレンジ応募締切
2018/11/25: 授賞式
(JIST2018@淡路島での併設イベントを予定)
2018/12月以降
応募者共著で国際会議での発表,論文投稿も予定
数年目以降は国際イベント化し,海外からの参加も募集!
ナレッジグラフ構築の自動化など,タスク範囲の拡大も検討
10
詳細は公式サイト,http://challenge.knowledge‐graph.jp/
もしくは「推論チャレンジ」で検索
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
提供するナレッジグラフの説明
本チャレンジの課題(タスク)向けに
提供するナレッジグラフのスキーマ,
データ内容についての説明します
ナレッジグラフ推論チャレンジ:応募に向けた「技術勉強会」
11
※以下の説明は,2018/08/07開催した「技術勉強会」と同じ内容です.
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
ナレッジグラフ化の手順検討
手順決定に至るまでの経緯
ワークショップにてスキーマ検討
テンプレートを作成し,ワークショップ入力テスト
→フィードバックを受けて,構築方法再検討
コアメンバー(3名)で構築作業
構築方法の再検討結果
小説全文をKG化 → 推理に必要な部分に絞ってKG化
小説の原文を残しKG化
→ 予め,簡易な日本語に直したものKG化
構築方法が決定したら,クラウドソーシングでKG化
→ワーカへの支持が難しそうなので,学生バイトで…
→(1年目は)コアメンバーで手分けしてKG化
12
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
実際のナレッジグラフ化の手順
1. 小説の内容から,ナレッジグラフ化の対象とする部分を抽出
(赤色でマーク)
2. 1.でマークした部分を(中心に),短い文を箇条書きした形
に要約する
 短い一文を「一つの場面」とする
例)ホームズはそれをヘレンに説明した。
ヘレンは真っ青になった。
3. 要約した短い文を基に,ナレッジグラフ化する情報を
「テンプレート」に記入
 場面ごとにIDを付与,表記ゆれを統制,場面間の関係性の記述...
1. 全体を3つに分けて分担作業(1人7-10時間程度の作業)
途中,作業方針すり合わせのミーティングを開催(2-3回)
2. 各単文を英訳+表記統制
3. 場面の関係性,時間の記述+最終確認
4. テンプレートに記入いた内容を,プログラムでRDFに変換
13
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
ナレッジグラフ化の考え方
ナレッジグラフの要求仕様
犯人を推論(推理)するのに必要な知識を提供する
「推理小説」で描かれる様々な状況を,できるだけ統一的
な形式で計算機処理(検索・推論・etc.)可能にする
ナレッジグラフ化の基本方針
「推理小説」の内容を,最小単位の「場面(シーン)」に分割
→場面ごとにID(IRI)を付与
「各場面の記述内容」および「場面間の関係」をグラフ化
→グラフ化に必要なクラス・プロパティを定義
場面1 場面2 場面3
場面4
場面5
・・・
・・・
14
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
抽出した文章+要約の例
15
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
テンプレートのサンプル
16
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
スキーマ:「場面」
場面
原文
主語
述語
目的語
subject
hasPredicate
source
その他
他の場面
場面間
主語 目的語
述語
の形でないことに注意
スキーマの基本構造
「場面」の記述に用いるプロパティ(赤字は必須)
 subject:その場面の記述において主語となる人や物
 hasPredicate:その場面の内容を表す述語
 場面の詳細を表す目的語:whom(だれに), where(どこで), when
(いつ), what(何を), how(どのように), …etc.
 場面間の関係:then,if, because, …etc.
 time:その場面が起こった絶対時間(xsd:DateTime)
 source:その場面の原文(英語/日本語のリテラル)
→場面に関わる複数の
情報をまとめるため
「場面」中心に記述
17
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
スキーマ設計における工夫点
「事実・状況」と「発言・考え」の書き分け
Aの(Bへの)発言,Aの考え
:A,Bに相当する人(情報源)を記述
複数の主語・目的語の扱い
AND:場面を中心とした記述にしているため,主語/目的
語を表すプロパティを複数記述することで表現
OR:「ORの組み合わせ」を表すリソースを導入することで
統一的な扱いが可能
述語の否定(〇〇しない,できない)の扱い
NOT,CanNOTを表す行為クラスを導入
人やものがもつ「性質」
hasProperty+「性質」で表現
18
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
例:「場面」の記述
原文(英語/日本語)
各場面には
一意の
ID(IRI)
を与える
絶対時間※小説内に基準
日時を設定している
主語・述語・目的語は全て
「リソース」として定義
→他の場面で同じ目的語
を参照できる
述語
主語
他の場面
場面の種類(クラス)分け
Scene:上位クラス
-Situation:事実・状況の描写
-Statement:Aの発言
-Talk:AのBへの発言
-Thought:Aの考え
19
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
例:AのBへの発言
情報源となる人物A
と受け手B
情報源となる人物A
受け手B
※Talkの場合のみ
20
Talk:AのBへの発言
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
シーン間の関係
シーン間の関係を表す
プロパティ
21
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
シーン間の関係の種類
シーン間の関係を表す
プロパティ
22
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
ANDの扱い
同じプロパティによるトリプルを複数記述することで表現する
23
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
ORの扱い
ORで表された組を指すリ
ソースをORobjとタイプの
インスタンスとして記述
ORobjタイプ
※Objectのサブクラス
ORの対象となるリソース
24
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
動詞の「Not」の扱い
TypeをNotActionとす
ることで表現
※NotActionはActionの
サブクラス
→Actionタイプである
ことも明記
原型のAction
「できない」の
場合は,
CanNotActionと
する
原型のAction
25
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
hasPropertyの例
kgcc:Propertyタイプ
26
「性質」を表す
任意のリソースを
導入する
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
クラス,プロパティ一覧
27
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
ナレッジグラフ利用技術の紹介
ナレッジグラフの処理に利用できるツール
(データベース,API,など)や関連技術
(SPARQLなど)の情報を紹介します.
ナレッジグラフ推論チャレンジ:応募に向けた「技術勉強会」
28
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
利用可能なデータ(テキスト)
原文
青空文庫「まだらのひも」からダウンロード
ナレッジグラフ化のための加工データ
Speckled Band_Soruce.docx
原文からRDF化する部分をマーク(赤字)+該当箇所を要約(青字)
したもの
SpeckledBand.xlsx
要約した文をもとに,テンプレートに入力したもの
SpeckledBand.tsv
テンプレート入力結果をTSVに変換したもの
これらのテキストデータを利用した処理もOK
29
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
RDFデータの提供方法
RDFファイル
 SpeckledBand.nt,SpeckledBand.rdf,SpeckledBand.ttl
 kgc.owl スキーマ定義(各RDFファイルにも含む)
SPARQLエンドポイント
 http://lod.hozo.jp/repositories/kgc
参照解決可能URL
 http://kgc.knowledge-graph.jp/data/SpeckledBand/XXX
(XXX=1から401の数字,または,k001)
というURLにより,RDFデータに参照解決可能なアクセス可能
 拡張子を変更することで,各種形式のRDFを取得可能
→プログラムから直接処理も可
 例)
 http://kgc.knowledge-graph.jp/data/SpeckledBand/36
 http://kgc.knowledge-graph.jp/data/SpeckledBand/36.ttl
 http://kgc.knowledge-graph.jp/data/SpeckledBand/36.rdf
 http://kgc.knowledge-graph.jp/data/SpeckledBand/36.json
 http://kgc.knowledge-graph.jp/data/SpeckledBand/36.jsonld
30
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
RDFを扱うための技術・ツール
RDF用のライブラリ
https://github.com/KnowledgeGraphJapan/sparql-library-
examples にプログラム言語でのサンプルあり
Javaを使うなら,Apache Jenaがおススメ
OWL形式のファイルを開くには
protégéなどのオントロジーエディタを使用(RDFファイルも開ける)
https://protege.stanford.edu/
RDFファイルをDBに格納して使用するには
FusekiやVirtuosoなどのRDF-DBを使用
チュートリアル資料
Jena,Fusekiの簡単な使用方法,SPARQLクエリの書き方など
https://github.com/KnowledgeGraphJapan/LODws2nd
31
RDF処理に利用可能な技術
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会 1
2017/11/25 JSAI合同研究会
推論チャレンジ技術勉強会
SPARQLと推論ルールを用いた例
人工知能学会セマンティックウェブとオントロジー(SWO)研究会
2018/10/18
@JST東京別館
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
発表内容
今年のナレッジグラフ推論チャレンジの題材
「まだらのひも」ではなく「白銀号事件」を題材に紹介
2
2017年11月の人工知能学会合同研究会@慶應矢上キャンパスで行った
「第1回公開WS:推論チャレンジ(仮称)開催予告~解釈可能な人工知能を
目指して~ 」のデモ発表内容と一部重複します。
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
白銀号事件
短編集「シャーロック・ホームズの思い出」より
青空文庫「白銀の失踪」
https://www.aozora.gr.jp/cards/000009/card4292
9.html
あらすじ
ウェセックス・カップの本命馬である白銀号が突然失踪す
る。
さらに調教師のストレイカーが死体で発見され、殺人事件
として捜査が進められる。
※本デモではネタバレがあります
3
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
あらすじ (1/4)
白銀号が失踪した晩、予想屋と思われる怪しい男(=フィッ
ツロイ・シンプソン)が白銀号の厩舎(きゅうしゃ)にやってきた。
世話係のネッド・ハンターがその男に犬をけしかけようとす
るが、すでに逃げ出していなくなっていた。
4
白銀と栗毛、確実
な予想を教えてく
れませんかね
予想屋だな。
出てけ
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
あらすじ (2/4)
その夜中の1時に、調教師のストレイカーが馬の様子を見に
いったまま戻らず、
翌朝厩舎にストレイカーの妻が行ったところ、見張り当番の
ネッド・ハンターが薬で眠らされており、
白銀号もストレイカーもいなくなっていた。
5
Zzz…
夫と白銀号は
どこ行った?
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
あらすじ (3/4)
ストレイカーは厩舎から4分の1マイルほど離れた茂みの中で、
頭を鈍器のようなもので殴られ、腿を刃物で切られた死体で
発見された。
死体の右手には血の付いた外科用のメス、左手には昨晩厩
舎にやってきた男がつけていたネクタイ(スカーフ)を持ってい
た。
6
Zzz…
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
あらすじ (4/4)
警察は殺人事件の容疑者としてネクタイの持ち主、フィッツロ
イ・シンプソンを逮捕し、ストレイカーがメスで傷つけたと考え
る共犯を探していた。
白銀号の行方と真犯人をホームズが推理する。
7
やってない!
ネクタイ君ので
しょ。逮捕!
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
作中の主な登場人物
(KG化の際には簡略化のため何人か除外)
シャーロック・ホームズ
ワトソン
グレゴリ警部
馬:白銀号
白銀号の調教師:ジョン・ストレイカー (死亡)
白銀号の馬主:ロス大佐
白銀号の厩舎の馬丁(ばてい):ネッド・ハンター
ストレイカーの妻
ストレイカーの女中
怪しい男:フィッツロイ・シンプソン
ライバル馬:デスボロ
デスボロの調教師:サイラス・ブラウン
ジプシー
8
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
事実を簡易的にKnowledge Graph化
9
今回のチャレンジ「まだらのひも」とは若干構造が異なるが、だいたい同じ
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
実行環境
MacBook Pro High Sierra (メモリ16G, Core i7 3.5GHz)
RDFストア: Stardog Community 4.1.3 (無償)
推論エンジン: Pellet (Stardogに組み込み)
10
https://www.stardog.com/
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
遺留物から推論するアプローチ
「犯行現場に落ちていた物の所有者は誰か」
SELECT * where {
?x kgc:where kd:犯行現場 ;
kd:所有者 ?s .
filter(?s != kd:ジョン・ストレイカー)
}
11
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
遺留物から推論するアプローチ(結果)
12
ジョン・ストレイカーの所有物以外では、フィッツロイ・シンプ
ソン(予想屋)のネクタイのみ該当
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
行動から推論するアプローチ
「犯行当日に現場を通ったのは誰か」
SELECT * where {
?action kgc:who ?s ;
kgc:hasPredicate kd:通った ;
kgc:where kd:犯行現場 ;
kgc:when "事件当日" .
}
13
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
行動から推論するアプローチ(結果)
14
ジョン・ストレイカーと白銀号のみ。
犯人が浮かび上がってこない。
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
ホームズの推理をルールとして追加
ホームズの推理
「白銀号が連れ出された時に犬が吠えなかったということは、
白銀号を連れ出した犯人は犬がよく知っている人」
Semantic Web Rule Language (SWRL)
(kd:犬 kd:not吠える ?x), (kd:犬 kd:知っている ?y)
-> (?x kd:候補 ?y)
15
白銀号を連れ
出した人
ジョン・スト
レイカー
犬
not吠える
ネッド・
ハンター
白銀号知っている
候補
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
Stardogにルールを追加
StardogにSWRLを追加することも可能だが、SPARQLのよう
にルールを書けるStardog Rules Syntax (SRS)が推奨されて
いる。ルールが増えてくると見やすくなる。
16
PREFIX rule: <tag:stardog:api:rule:>
PREFIX kd: <http://kgc.knowledge-graph.jp/data/SilverBlaze/>
[] a rule:SPARQLRule ;
rule:content """
IF {
kd:犬 kd:not吠える ?x .
kd:犬 kd:知っている ?y .
}
THEN {
?x kd:候補 ?y .
}
""".
「“」3つで囲んだ中に
ルールを記述
前件
後件
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
Stardogにルールを追加
Data > Addからルールを記述したttlファイルをRDFと
同じ場所にロード
17
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
犯人を推論付きSPARQLで探す
「白銀号を連れ出した人, かつ犯行当日に現場を通った人」
SELECT * WHERE {
kd:白銀号を連れ出した人 kd:候補 ?s .
?action kgc:who ?s ;
kgc:hasPredicate kd:通った ;
kgc:where kd:犯行現場 ;
kgc:when "事件当日" .
?s rdf:type kd:Person .
}
18
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
犯人を推論付きSPARQLで探す(結果)
19
推論無しでは該当なし
推論有りではストレイカーのみ該当
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
検索経路(サブグラフ)
独自定義したルールとRDFSルールにより新たなリンクが追
加される
20
白銀号を連れ
出した人
ジョン・スト
レイカー
調教師
人
rdf:type
rdfs:subClassOf
rdf:type
kd:候補
Action4 通った
犯行現場
kgc:who
kgc:hasPredicate
kgc:where
事件当日
kgc:when
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
真相 (1/2)
シャーロック・ホームズが調査を進め、近くの窪地に馬の足跡
を見つける。
その足跡を追うとライバル厩舎の前まで来ていた。
ライバル厩舎の調教師はレースに有利になるため白銀号を隠
し持っていたが殺人事件とは無関係。
21
魔が差した
ライバル馬(デスボロ)
の調教師
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
真相 (2/2)
睡眠薬(阿片)は匂いと味が強いため隠すのは容易ではない。
ホームズは,夕飯がカレーと知っており,あやしまれずに阿片混入
ができたストレイカーかその妻が犯人と考えた。
さらに,白銀号が連れ出された時に犬が吠えなかったことに着目
し,犯人は犬がよく知っているものと推理(今回ルールに使用)
現場にマッチ,メスが落ちており,厩舎にいた羊が何匹か足を悪
くしていることから,ストレイカーは白銀号がレースで負けるよう
に手術を施す予定だったと推理。羊はその練習。
明かりに驚いた白銀号がストレイカーを蹴り殺した
22
CC-BY4.0:人工知能学会 セマンティクWebとオントロジー(SWO)研究会
課題
不足していたor使用しなかった知識
馬(の蹴り)が人を殺しうる
阿片は匂いが強い
足を怪我した羊
自殺・事故の可能性
……その他多数
推論にもいろいろ
知識をどのように追加・補完(推論)していくか
どのような検索経路(推論)で真相へ辿り着くか
ホームズの推理だけが答えとは限らない(?)
……
23
第1回ナレッジグラフ推論チャレンジ2018
~解釈可能な人工知能を目指して~
主催: 人工知能学会 セマンティクWebとオントロジー(SWO)研究会
1
本日の内容
別の小説「白銀号事件」をベースに少し具体的な応募イメージの説明
 推論・推定処理の例
 応募シート記入例
【参考】 推論チャレンジ 応募要項
http://challenge.knowledge-graph.jp/application.html
2
推論・推定処理の設計方法
1. 小説にはないが,必要そうな知識をファクト,ルール化していく
 本チャレンジは答えが分かっている問題でルールの書き方を学ぶスタンス
2. 独自の推論・推定処理を考案する
 さまざまな方法の組み合わせを考えるのが望ましい
前向き推論
後向き推論(プラニング)
SPARQL検索
オントロジー推論
機械学習,など
3
以下の例では取り得る(適用できる)ルール,ファクトの内の1つの道筋を説明しています.
実際には,実行過程において多数の道筋が取り得て,その内の1つ,または,いくつかが
矛盾を起こさない形となって残る点に留意.
グレゴリ警部の(間違った)推論
R: Aのモノが現場に落ちていた → Aが犯人
F: 現場に落ちていたモノ has ?X(スカーフ);
F: シンプソン has ?X(スカーフ);
F: 予想屋 typeOf シンプソン;
R: Aは予想屋である → Aはまっとうな人間ではない
R: Bが馬を近くLに隠している → 馬が見つからない
F: B exist ?L(近くの荒野);
F: ジプシー exist ?L(近くの荒野);
R: Bはジプシーである → Bはまっとうな人間ではない
∴ 犯人Aはシンプソンで,馬を隠しているBはジプシー
問題点: 状況証拠(モノが落ちている=犯人)と偏見に頼った推論となっている
4
F: 提供されたナレッジグラフ内のファクト
R: 追加すべきルール
後ろ向き推論
ドメイン知識(ナレッジグラフ)から
前件部変数Aに入る値を検索する
シンプソンが何者か検索
常識的知識を追加
ドメイン知識(ナレッジグラフ)から
前件部変数Bに入る値を検索する
常識的知識
知識>偏見(小説的ミスリード)
知識>偏見(小説的ミスリード)
ホームズの推理
R: Aのモノが現場にあった → Aが犯人である
R: Aのモノが現場にあった → Aが犯人かもしれない
R: Aが馬を連れ出した → Aが犯人である
F: Aは見張り(ハンター)を眠らせた next Aは馬を連れ出した;
F: ハンター眠った causedBy (夕食に入っていた)アヘン;
R: ハンターの夕食の味が濃い → ハンターはアヘンを摂取する
F: 夕食 has マトンのカレー煮;
F: 夕食 decidedBy ストレイカー家の家族
F:ストレイカー家の家族 typeOf {ストレイカー,妻}
A= {ストレイカー,妻}
5
ドメイン知識
確率的な知識という位置づけ
(ただ,ホームズも現場に着くまで
シンプソンが犯人と考えていた)
ドメイン知識
眠った理由を検索
小説的肝①
(なくてもよい)
味が濃い理由を検索
味が濃い理由を検索
F: 提供されたナレッジグラフ内のファクト
R: 追加すべきルール
ホームズの推理 cont’d
R: Bが馬を連れ出した@時刻T → Bが犯人
R: 見張りが寝ていた@時刻T → 馬を連れ出せた
R: 静かだった@時刻T → 見張りが寝ていた(起きなかった)
R: 犬が吠えなかった@時刻T → 静かだった
R: Bが犬を飼っている → 犬はBに吠えない
F: {ストレイカー,見張り(馬丁)3人,ロス大佐} keep 犬;
B= {ストレイカー,見張り(馬丁)3人,ロス大佐}
A ∩ B = {ストレイカー}
6
時刻Tに絞って
ドメイン知識を
後ろ向きにトレース
小説的肝②
ドメイン知識からBを検索
結論1
F: 提供されたナレッジグラフ内のファクト
R: 追加すべきルール
一般的なルールを上手に使いまわして推論する場合や,
ドメインに依存したルールをたくさん用意して少ないステップで推論する場合などがある
ホームズの推理 cont’d
R: Cが馬を近くLに隠している → 馬が見つからない
F: C exist ?L(ブラウンの厩舎);
F: ブラウン exist ?L(ブラウンの厩舎);
R: Dがストレイカーを殺した → Dが犯人
R: Dは殺人現場Sに居た → Dがストレイカーを殺した
F: {ストレイカー,馬} exist 殺人現場S
R: Dはストレイカーである → ストレイカーがストレイカーを殺した!
必然的にもう1つの可能性{馬}となる
∴犯人A,Bはストレイカー,馬を隠しているCはブラウン,ストレイカーを殺したDは馬である
7
結論2
変数Cに入る値を検索
常識的知識
常識的知識
確率的知識
変数Dを検索
【矛盾】
結論3
F: 提供されたナレッジグラフ内のファクト
R: 追加すべきルール
別の推理の可能性
例) 動物(馬)も人を殺せる点を推論過程に入れる
 オントロジー推論(この場合,プロパティ推論)
Person is-a Mammal;
Person canKill Animal;
Person canKill Person; 定義済みプロパティとする
Animal is-a Mammal;
Animal canKill Animal ;
(Animal canKill Person ;) 兄弟概念であるAnimalに上記プロパティを追加
例) 羊を使って馬の脚を怪我させる実験をしていた点をいれてもよい
 機械学習(この場合,ナレッジグラフ補完)
ストレイカー has 羊; ストレイカー hurt 羊;
ストレイカー has 馬;(ストレイカー hurt 馬;) 欠損(missing)プロパティとして推定
8
応募シート1.応募者に関する情報
氏名またはチーム名: 推論 太郎
所属: IT Tech. Inc.
メールアドレス(代表): it@tech.com
9
応募シート2.推論・推理過程の説明
プログラムのログなどを用いてポイントを解説.アイデアの場合は自由形式.
(図などを用いて分かりやすく説明してください)
 推論・推定処理における流れ,工夫点などをアピールしてください
使用した知識の範囲(ID)
 ID: 100-200など
推論・推理のために追加した知識についての記述
(追加した知識をWeb上で公開されている場合は,入手先のURL等も記載.
ただし,追加した知識の公開は必須ではありません)
 追加した知識についてまとめて記載してください
パフォーマンス情報(計算機のスペック,実行時間,使用するメモリなど)
 MacBook Pro, Memory 8GB, Core i5 2.6 GHz, OS X12
参考情報(もしあれば応募者のWebサイトや関連する論文など)
 http://www.it.tech.com
10
応募シート3.実行プログラム
実行形式のアプリケーションがダウンロードできるURL,またはWebサービスの
URL (ただし,ソースコードの提出は必須ではありません)
 http://www.it.tech.com/application
実行方法の説明
 上記サイトからkgc.zipをダウンロードをしてjavaでapp.jarを実行
既存ツールを利用する場合は,ツールの詳細(名称,バージョン,有償/無償など)
 Java 1.8
 Stardog Community 4.1.3 (RDFデータベース)
 Pellet (推論エンジン)
11
是非,チャレンジにご参加ください
12

ナレッジグラフ推論チャレンジ技術勉強会(2018/10/18)