読者です 読者をやめる 読者になる 読者になる

このままでいっか

アニメとか,プログラミングとか,研究とか,思ったことそのまま書く感じで

アニメオントロジー製作開始!

こんにちは,大変ご無沙汰しております,tomabuです.

なんだかんだと忙しい時期が過ぎ,一旦少し落ち着いた日常へと戻ってまいりました. 気づけばいつの間にか夏が終わっていたΣ(゚д゚;)

時の流れは残酷でございます.

何はともあれ少し時間余裕のあるができましたので,アニメ関連で何か技術的な事ができないかと考えていたわけです.

なんかしたいなぁ

と思いたち,せっかくなので自分の研究と多少なりとも関係があることができたらいいなぁとも思ったり思わなかったりしてる間に,あることを考え始めました.

「アニメってなんだ?

こんなに面白いのに,自分はアニメのなんたるかをわかっていない気がする...

そうだ!アニメに関する概念峻別のためにオントロジーを構築しよう!」

と思ったわけですね?

はい,もともとわからないブログなのに更によくわからない話になってきましたね(笑)

ちょっとだけ説明したいと思います.

オントロジーとは何か

オントロジーとは,LOD(Linked Open data)を活用した人工知能分野などで用いられる,意味処理技術の一部です.

いわば,概念について計算機可読な共通の認識を提供する辞書的な仕様のことです.

え?更にわからなくなった?笑

なら具体的な例を挙げましょう.

「自転車」に関するとてつもなくシンプルなオントロジーを考えます.

「自転車」は「二輪車」の一種(サブクラス)だといえます. 「自動二輪車(バイク)」も同様に「二輪車」の一種(サブクラス)だといえます. 「自転車」と「自動二輪車」の本質的な差は「エンジンで」動くか「ペダルを漕ぐことで」動くかだといえるかもしれません.

こういうことを次のように定義するのがオントロジーです.*1

f:id:dbym4820:20161017175620p:plain

その中身はXMLファイルであり,以下のようなテキストファイルとなります.

<?xml version="1.0" encoding="UTF-8"?>
<OE_FILE filename="cycle.xml">
<FILENAME_ONT>new_file.xml</FILENAME_ONT>
<W_CONCEPTS>
<CANVAS_SIZE w="2000" h="3000" />
<CONCEPT>
<LABEL>乗り物</LABEL>
<POS x="79" y="63"/>
<PART_TREE>colse</PART_TREE
><SUB_TREE>open</SUB_TREE
><RELATIONS>
</RELATIONS>
</CONCEPT>
<CONCEPT>
<LABEL>二輪車</LABEL>
<POS x="155" y="90"/>
<PART_TREE>colse</PART_TREE
><SUB_TREE>open</SUB_TREE
><RELATIONS>
</RELATIONS>
</CONCEPT>
<CONCEPT>
<LABEL>自転車</LABEL>
<POS x="234" y="83"/>
<SLOTS>
<SLOT type="NW"  label="slot"  kind="p/o"  num="2"  role="ペダル"  class_constraint="cls"  rh_name=""  value="" >
<SUB_L label="" def="" role_name="" class_const="cls" rh_name ="" value ="" />
</SLOT>
</SLOTS>
<RELATIONS>
</RELATIONS>
</CONCEPT>
<CONCEPT>
<LABEL>自動二輪車</LABEL>
<POS x="214" y="143"/>
<SLOTS>
<SLOT type="NW"  label="slot"  kind="p/o"  num="1"  role="エンジン"  class_constraint="cls"  rh_name=""  value="" >
<PART_TREE>close</PART_TREE>
<SUB_L label="" def="" role_name="" class_const="cls" rh_name ="" value ="" />
</SLOT>
</SLOTS>
<RELATIONS>
</RELATIONS>
</CONCEPT>
<ISA parent="乗り物" child="二輪車" />
<ISA parent="二輪車" child="自転車" />
<ISA parent="二輪車" child="自動二輪車" />
</W_CONCEPTS>
<R_CONCEPTS>
<CANVAS_SIZE w="2000" h="3000" />
</R_CONCEPTS>
<PRINTER>
<PAGE_SETTINGS header="true" footer="true" cropmarks="true" scale="100" />
<PAGE_FORMAT w="595.0" h="842.0" iw="559.0" ih="783.0" ix="18.0" iy="18.0" />
<PRINTER_SETTINGS orientation="1" printername="157.16.89.147" />
</PRINTER>
</OE_FILE>


この形式は計算機にとって,自然言語に比べて比較的「意味処理が容易な」形になっているといえます.

このような方式で概念を細分化することで,AI(人工知能)によって筋の通る意味処理を行い人間とのインタラクションに活かしていくことがオントロジー研究の目的であると,僕は認識しています.

自分がやりたいことは!

この技術をアニメの分野にも取り入れていかない?ってのが僕の提案というわけです!

お前の説明では全くわからん!って人が多いと思いますので,こちらこちらで理解を深めてください.

具体的にどんなオントロジーを構築していくかはこれからぼちぼち考えて行きたいと思ってます.

一緒にオントロジー考えたい人いてます?笑

誰でもウェルカムです!笑

オントロジーに詳しい人なら更に大歓迎です!!!

(正直僕も上手くオントロジーを造れるか自信があんまりないので...笑)

進捗があったら少しずつでも公開できたらいいなぁって思います.

もし,既にそうゆうのあんで!ということを知っている方がいらっしゃれば教えていただければ助かります!

ではまた!

*1:法造を用いてオントロジーを記述した例