日本ソフトウェア科学会第 30 回大会 (2013 年度) 講演論文集

スライド検索のためのスライドリポジトリにおけるスライド構造について
加藤 雄大

白松 俊

大囿 忠親

新谷 虎松

プレゼンテーション資料としてのスライドは，知識が凝縮されたアーカイブとして価値があり，効率的にスライドを再利用するための検索手法の実現が望まれる．本研究では，効率的なスライド検索を実現するためのスライド構造化手法を開発している．具体的には，スライドに含まれる情報，および，スライドの作成や使用に関わる情報をLinked Data として構造化することで，効率的な検索を実現することを目指している．ここでは，スライド検索に寄与する関連情報の特定や，それらの情報を考慮したスライドの構造化手法が課題となる．例えば，必要なスライドを想起することを支援するような情報として，スライドに関わる研究活動のエピソード情報が利用可能である．本稿
では，スライドの構造化手法，および，構造化されたスライドを格納するためのスライドリポジトリの実装方法について説明する．

シーンに基づくスライド検索 [1] やスライドに基づく

1 はじめにコンテキストを利用したスライド検索がある [2]．本本研究の目的は，スライドの再利用である．再利用研究では，スライドはページ単位で検索されることとは，新規のスライドを作成する際に，既存のスライを前提とする．例えば，プレゼンテーション資料単位ドをそのまま使用したり，既存のスライドの一部を使で検索される場合，プレゼンテーション資料の枚数が用することである．個人や研究室，企業などの研究グ50 枚や 100 枚などのように枚数が多いと，ユーザはループでは，たびたび既存のスライドを再利用する枚数の多いプレゼンテーション資料からスライドを探場面がある．例えば，研究室で同じ分野の研究者同士す必要がある．スライドを検索する場面は二通り考えは，お互いのスライドを再利用する．スライドを作成られる．1 つ目は，ユーザが検索したいスライドを知する際には作成コストがかかる．特に，図形や画像をらない場面である．この場合の検索の目的は，ユーザ作成するための作成コストは大きい．スライドを再が検索されたスライドから知識を得ることである．例

利用する理由は，作成コストを小さくするためであ

えば，機械学習のスライドを検索し，機械学習の知識る．ここで，本研究でのスライドは，Microsoft 社製を得るということである．2 つ目は，ユーザが検索しの PowerPoint で作成されたものを対象とする．

たいスライドを知っている場面である．この場合の検

本稿では，主に，スライドの検索について述べる．

索の目的は，ユーザが検索されたスライドを再利用すスライドを再利用するために既存のスライドを見つることである．本研究の目的は，スライドの再利用でける必要がある．スライド検索手法として，スライドあるため，本研究では，スライドを検索するユーザは検索したいスライドを知っていることを前提とする．

A Slide Structure for Eﬀective Slide Search of a Slide
Repository.
Yudai Kato, Shun Shiramatsu, Tadachika Ozono,
Toramatsu Shintani, 名古屋工業大学大学院工学研究科情報工学専攻, Dept. of Computer Science and Engineering, Graduate School of Engineering, Nagoya
Institute of Technology.

本研究室では，スライドリポジトリと呼ぶ，スライドの作成，修正，添削，および，再利用を目的とするシステムを開発している [3]．スライドや研究活動記録などの研究リソースを結びつけることで，研究リソースを効果的にアーカイブ化・可視化することを可能にし，研究支援環境を構築している．

を指す．

本研究では，スライド関連データを Linked Data

Linked Data を構築することで，全文検索で不十として関連付け，構造化する．スライド関連データ分であった検索が可能になると考えている．例えば，は，例えば，プレゼンテーション資料の作成日時，作研究者 A が学会 A で発表したスライドを検索する場

成者，タイトル，発表する学会，関連する論文など合，全文検索ではや，スライドのタイトル，テキスト，図形，画像などを含むスライドを検索するが，Liked Data を用いれである．スライド関連データとプレゼンテーション資ば 研究者 A とスライドが作成者として関連付けら料やスライドを Linked Data として関連付けることれ，かつ， 学会 A とスライドが発表学会として関で，Linked Data を利用した検索が可能となる．

連付けられたスライドを検索することができる．

研究者 A 学会 Aという文字列

本稿の構成は，2 節でスライド検索における課題にリンクするデータとして，ユーザの記憶に残る研ついて述べ，3 節ではスライドを効率的に検索する究活動や研究の成果物のデータが重要であると考えためのスライド構造について述べる．4 節では，スラている．なぜなら，ユーザは研究活動とスライドを関イドの情報やスライドの作成，使用に関わる情報を連して覚えている可能性があるからである．例えば，

Linked Data として構造化するためのスライドリポ

投稿した論文と発表した学会と発表スライドを関連ジトリの動作について述べる．5 節では考察を述べ，して記憶している可能性がある．

6 節で本稿をまとめる．

3 スライド検索のためのスライド構造
2 スライド検索における課題

3. 1 スライドの HTML コンテンツ化

PowerPoint ファイルは複数の XML ファイルとテー

スライド関連データを Linked Data として扱うためマ，レイアウトなどのファイルが圧縮されて構成されに，PowerPoint ファイル形式のスライドから HTMLている．1 枚のスライドは 1 つの XML ファイルで記コンテンツに変換する必要がある．

述され，その XML ファイルはスライドの構造，アニメーション，画面遷移の情報を持つ．

スライドを HTML コンテンツとして扱うことでいくつかの利点が得られる．(1)Web ブラウザ上でのプ

全文検索に基づくスライド検索だけでは不十分でレゼンテーションや (2) リアルタイム協調編集・添削，ある．スライドは限られた区画にテキスト，図形，画(3) スライドオブジェクトにピンポイントでアノテー像，動画などを配置するため，スライド内の情報はションをリンクすることが可能である．JavaScript

Web ページなどの文書に比べると少ない．スライドを用いてプレゼンテーションの機能を実装すること

内のテキストの長さは短く，索引語の数が十分でないで，HTML コンテンツのスライドによるプレゼンため全文検索だけでは不十分である．

テーションが可能である．本研究では，HTML コン

スライド内の図形，画像，レイアウトなどのテキステンツによるプレゼンテーションツールを開発した

ト形式でないスライドオブジェクトも重要な情報であ[5]．Zyto らは Web ブラウザ上で動作する協調学習るが，全文検索ではテキスト形式でない要素を検索システムを開発している．このシステムは，PDF ドすることはできない．田中らはスライドオブジェクトキュメントにアノテーションを付加する機能を有し，の形，配置やオブジェクトがスライドに占める領域の生徒の PDF の講義ノートに質問や質問に対する答割合を考慮したスライド検索手法を提案している [4]．

えをアノテーションとして付加することができる [6]．

図形に着目した検索手法も必要であるが，図形や画像

HTML コンテンツはマークアップ言語で記述されるが何を意味するオブジェクトであるかという意味情報ため，スライドオブジェクトに対して URI を割り当も必要である．オブジェクトに意味情報を付加し，検て，ピンポイントでアノテーションを付加することが索に利用する．ここで，スライドオブジェクトとは，可能である．

スライドに含まれるテキスト，図形，画像などの対象

3. 2 SVG 形式のスライド
SVG は二次元グラフィックスを XML で記述するための言語である．SVG は 3 種類のグラフィックス< animate xlink : href = " # target "attributeName = " x " dur = " 1 s " keyTimes =" 0.0;1.0 " values = " 0;100 " / >オブジェクトを扱う．グラフィックスオブジェクトは，

図2

animate タグの例

ベクター形式のグラフィック，画像，テキストである．
ベクター形式のグラフィックは，例えば，直線と曲で構成する．SVG ファイルはページ単位で構成され，線からなるパスである．PowerPoint のスライドオブ

図 3 のようにプレゼンテーション資料はページ分のジェクトは SVG のグラフィックスオブジェクトを用SVG ファイルに変換される．図 3 の右部分のように，いて表現可能である．図 1 に SVG のグラフィックス

HTML コンテンツを重ねたものをスライドスタックオブジェクトの例を示す．上からパス，画像，テキスと呼ぶ．本稿では，スライドスタックは PowerPoint

トのオブジェクトを表している．

ファイルから変換された SVG ファイルである．

< path d = " M 100 100 L 300 100 L 200 300 z" fill = " red " stroke = " blue " stroke width = " 3 " / >< image x = " 200 " y = " 200 " width = " 100 px "height = " 100 px " xlink : href = " image . png" />< text x = " 100 " y = " 100 " font - family = " ’Calibri ’ " stroke = " none " > テキスト</ text >図1

図3

HTML コンテンツのスライドグラフィックスオブジェクトの例

3. 3 HTML コンテンツのプレゼンテーション
SVG はアニメーションを記述することができる．

資料

SVG は SMIL が定める 4 つのタグである，animate，HTML コンテンツのプレゼンテーション資料は，set，animateMotion，animateColor をサポートしてPowerPoint ファイルと同様なプレゼンテーション機いる．これらのタグを用いることにより，モーショ能を有するファイルの集まりである．HTML コンテ

ンパス，フェードイン，フェードアウト効果，オブンツのプレゼンテーション資料は，HTML ファイル，ジェクトの拡大，縮小，回転，色の変化などを定義でSVG ファイル，JavaScript ファイル，CSS ファイル

きる．アニメーションは，SVG 内にアニメーションで構成される．のタグを埋め込むことで，定義，起動できる．Pow-

ユーザは HTML コンテンツのプレゼンテーショ

erPoint のアニメーションは，animate タグを用いる

ン資料を検索後，スライドを再利用するために元ことで大部分を再現することが可能である．図 2 にの PowerPoint ファイルを参照する．参照するため

animate タグの使用例を示す．xlink:href では，アに，HTML コンテンツのプレゼンテーション資料とニメーション対象のオブジェクトを URI で指定する．

PowerPoint ファイルの対応を表すデータベースを用

attributeName では，変化させるオブジェクトの属意する．データベースは，HTML コンテンツの URI性を指定する．dur では，アニメーションの時間を指と PowerPoint ファイルの URI の対応表をもつ．例

定する．keyTimes に対応する attributeName の値

えば，HTML コンテンツのプレゼンテーション資を values で指定する．図 2 のアニメーションは，id料の URIhttp://example.com/slide/slide001 とが target のオブジェクトの x 座標を 1 秒間で 0 からPowerPoint ファイルの URI100 まで変化させるアニメーションである．

http://example.com/pptx/slide001.pptx の対応

本研究では，HTML コンテンツのスライドを SVG表をもつ．

HTML コンテンツのプレゼンテーション資料に用意する．:Slide はスライドを表すクラスであり，スPowerPoint ファイルへのリンクが JavaScript で埋めライドが他のスライドを再利用することを表す:reuse

込まれており，ユーザはリンクを辿ることで Power-プロパティとスライドとスライドオブジェクトの包含Point ファイルへアクセスすることが可能である．

関係表す:composedOf プロパティを用意する．:com-posedOf のドメインは:PresentationDoc と:Slide の3. 4 Linked Data の構築

和集合であり，レンジは:Slide と:SlideObject の和集

スライド検索のためにスライド関連データ同士を合である．:SlideObject はスライドオブジェクトを表関連付け，Linked Data を構築する．

HTML コンテンツのスライドオブジェクトに URIすクラスであり，:Text，:Figure，:Image，:Animate
は:SlideObject のサブクラスである．

をもたせることができる．Linked Data を構築する

アノテーションは研究活動と考えられるため，アノ上で，各データの所在を URI で表さなくてはならテーションを表す:Annotation は，:Activity のサブない．SVG はマークアップ言語であるため，スライクラスである．アノテーション対象を表す:annotate

ドオブジェクトは text，path，image などのタグでとアノテーション内容を表す dc:description プロパ表現される．タグに id 属性を付加することにより，ティを用意する．

スライドオブジェクトに URI をもたせることがで

SVG ではアニメーションを animate タグとして記きる．例えば，http://example.com/slide.svg と述するため，他のテキスト，図形，画像と同様にスラいう SVG ファイル内のスライドオブジェクトの属

イドオブジェクトのサブクラスとして扱うことが可性に id="id1"を付加すれば，スライドオブジェクト能である．したがって，アニメーションへのアノテーの URI は http://example.com/slide.svg#id1 とションは，他のテキスト，図形，画像へのアノテーなる．

ションと同様に付加される．

3. 5 スライド関連の Linked Data のためのオントロジー

4 スライドリポジトリ
図 5 にスライドリポジトリの一部分のシステム構成

スライド関連の Linked Data のためのオントロジー

図を示す．サーバ側のスライドリポジトリは，(1)XMLを図 4 に示す．接頭辞 ressup は RESearch Support

解析モジュール，(2)SVG 生成モジュール，(3) リンク

Platform の略であり，研究活動支援環境の名称であモジュールから構成され，クライアント側は (4) ビュる．以下では，接頭辞 ressup を省略する．:Activ-ワー・エディットモジュール，(5)PowerPoint ファイity は，研究活動を表すクラスであり，日付を表すルアップローダから構成される．

dc:created プロパティと研究者を表す dc:creator プ(1) の XML 解析モジュールは，クライアント側のロパティを用意する．:Publication は，成果物を表PowerPoint ファイルアップローダからアップロード

す:Activity のサブクラスである．:Paper は，論文をされた PowerPoint ファイルから XML を取得し，ス著す:Publication のサブクラスであり，発表学会を表ライド構造とアニメーション情報を抽出するモジュー

す:event プロパティを用意する．

ルである．

:PresentationDoc はプレゼンテーション資料を表(2) の SVG 生成モジュールは，XML 解析モジュー

す:Publication のサブクラスである．一般に，論文とルから渡されるスライド構造とアニメーション情報に論文の発表資料は参照の関係にあるため，参照を表す基づいて SVG ファイルを生成するモジュールである．

dc:references プロパティを用意する．他に，プレゼンSVG 生成モジュールはスライド構造の情報から同じテーション資料とスライドの包含関係を表す．:com-外観となるような SVG 形式のテキストを生成する．

posedOf プロパティ，プレゼンテーション資料がスラ(3) のリンクモジュールは，リンク情報の RDF Storeイドを再利用していることを表す:reuse プロパティをへの格納や SVG ファイルの更新を行うモジュールで図4

スライド関連の Linked Data のためのオントロジー

データを生成し，作成者の URI に dc:creator，日付に dc:created，内容に dc:description，スライドオブ
ジェクトの URI に:annotate のリンクを張る．生成
した:Annotation を RDF Store に格納する．
リンクエディットモジュールによるスライド間の再利用リンクの編集時のリンクモジュールの動作を説明する．リンクモジュールはクライアントのリンクエディットモジュールから再利用リンクに関するデータを受け取る．受け取るデータは，再利用するスライドの URI と再利用されるスライドの URI である．リン
図5

スライドリポジトリの一部分

クモジュールは，再利用するスライドの URI から再利用されるスライドの URI へリンクする．

ある．RDF Store の更新は，SPARQL を用いて行う．

SVG 生成モジュールによる SVG 生成時のリン

クライアントのリンクエディットモジュールや SVG

クモジュールの動作を説明する．リンクモジュール

生成モジュールからのリクエストがトリガーとなり，は SVG 生成モジュールから HTML コンテンツのリンクモジュールは動作する．

プレゼンテーション資料の URI と SVG スライドのリンクエディットモジュールによるアノテーショ

URI を受け取る．rdf:type が:PresentationDoc であンのリンク編集時のリンクモジュールの動作を説明

るインスタンスを生成する．プレゼンテーション資する．リンクモジュールは，クライアントのリンク料から作成者と作成日時を抽出し，:Presentation-エディットモジュールから送信されるスライドオブ

Doc に dc:creator，dc:created プロパティでリンクすジェクトの URI とアノテーション作成者の URI，日る．:PresentationDoc から一枚一枚のスライドを表付，内容を受け取る．rdf:type が:Annotation である

す:Slide へ:composedOf プロパティでリンクする．

次に，リンクモジュールはプレゼンテーション資料が参照している論文を探し，プレゼンテーション資料とリンクする．プレゼンテーション資料の 1 枚目のスライドからタイトルを抽出し，論文データベース内の論文のタイトルと比較し，最も類似している論文に dc:references プロパティでリンクする．論文デー
タベースは，研究室内に存在する投稿論文を蓄積したデータベースである．

(4) のビュワー・エディットモジュールは，クライア
ント側の Web ブラウザで動作し，HTML コンテンツのプレゼンテーション資料の閲覧やスライドオブジェ

図7

スライドへのアノテーション付加例

クトへのアノテーションの付加，スライド間の再利用リンクの追加を行うモジュールである．このモジューラウザの下部に移動すると，ブラウザの下部に Dock

ルは，リンクの編集時，サーバ側のリンクモジュー風にスライドの一覧が表示され，スライドをクリック

ルに Linked Data の構築のために必要な情報を送信するとスライドを切り替えられる．本研究で開発したする．例えば，アノテーションを付加する場合，ビュプレゼンテーションツールでは，PowerPoint の一部

ワー・エディットモジュールは，アノテーション対象のアニメーションを再現することが可能である．のスライドオブジェクトの URI と，アノテーション

図 7 にアニメーションするスライドオブジェクト

作成者，作成日時，内容を送信する．スライド間のにアノテーションを付加する例を示す．アノテーショ

再利用リンクの追加の場合，再利用したスライドのンを付加するにはアノテーション作成者の情報が必

URI と再利用されたスライドの URI を送信する．

要となるため，ユーザはスライドリポジトリへのログインが必要である．プレゼンテーション資料を閲覧している状態で，アノテーション対象のスライドオブジェクト上で右クリックすると，メニューが表示される．メニューから「Set Annotation Link」を選択す
ると，アノテーション対象のスライドオブジェクトの背景色が変更され，アノテーションウィンドウが表示される．ウィンドウ内のテキストボックスにアノテーションの内容を追加すると，スライドオブジェクトにアノテーションが付加され，Linked Data においてスライドオブジェクトとアノテーションがリンクする．
次に，スライドとスライドの再利用のリンクを張図6

HTML コンテンツのプレゼンテーション資料の閲
覧例る手順を説明する．プレゼンテーション資料を閲覧している状態で，スライド上で右クリックすると，メニューが表示される．メニューから「Set Reuse Link」

図 6 に HTML コンテンツのプレゼンテーション資を選択すると，スライドスタックに登録されている料の閲覧例を示す．図中の中央部に表示されているス

SVG スライドの一覧が表示される．一覧から再利用ライドは SVG スライドである．プレゼンテーション

されているスライドを選択し，決定ボタンを押すと，資料の閲覧時に，左右の方向キーを押下することでス

Linked Data においてスライドとスライドに再利用ライドを切り替えることが可能である．マウスがブのリンクが張られる．

(5) の PowerPoint ファイルアップローダは，クラ場合があった．図形や画像などのテキスト形式でないイアント側の Web ブラウザ上で動作し，ユーザからスライドオブジェクトは，全文検索に基づくスライドアップロードされた PowerPoint ファイルを XML 解検索は不可能であった．また，スライドは限られた区析モジュールへと送信する．

画内で構成されるため，テキストの量が不十分であり，全文検索が難しかった．

5 考察

本研究では，スライドの検索を容易にするためのスライド関連の Linked Data のためのオントロスライドリポジトリを開発した．スライドリポジト

ジーにおいて，:Annotatoin の 2 つの拡張を考えてリは，スライドの作成，修正，添削，および，再利用いる．1 つ目の拡張は，図形のアノテーションを表を目的とするシステムである．また，スライドや研す:FigAnnotation を:Annotation のサブクラスとし究活動記録などの研究リソースを結びつけることで，て用意することである．さらに，:FigAnnotation か

研究リソースを効果的にアーカイブ化・可視化するこら 3 つのリンクを用意する．1 つ目は図形のタイプとを可能にした．

を表す:shapeType プロパティ，2 つ目は図形の数を

本稿では，スライド検索のために研究活動とスラ表す:num プロパティ，3 つ目は図形の配置を表す:ar-イドの関係に着目し，研究活動とスライドを関連づrangement プロパティを用意する．RDF Store に四けるためのスライド構造について述べた．スライド

角形や丸などの図形の種類を表すインスタンスや，横リポジトリでは，スライド構造を Linked Data としや縦に並んでいるなどの図形の配置を表すインスタて構築し，スライドと論文，学会などの研究活動をンスを用意する．

Linked Data として関連づけることで，全文検索で2 つ目の拡張は，アニメーションのアノテーションを表す:AnimAnnotation を:Annotation のサブクラは不十分であった意味を考慮したスライドの検索が可能となる．

スとして用意することである．:AnimAnnotation から 2 つのリンクを用意する．1 つ目はアニメーション

参 考 文 献の種類を表す:animType プロパティ，2 つ目はアニ[ 1 ] 清水堅, 工藤聖広, 土井達也, 白松俊, 大囿忠親, 新谷虎松: 研究発表履歴を考慮したスライド再利用支援システムの試作, 第 24 回人工知能学会全国大会論文集,2010.
[ 2 ] Moushumi, S., Lawrence,B., Jie, L., and Ravi,
K.: On Slide-Based Contextual Cues for Presentation Reuse, Proc. of the 2012 ACM InternationalConference on Intelligent User Interfaces, 2012, pp.
129-138.
[ 3 ] 武馬賢志郎, 白松俊, 大囿忠親, 新谷虎松: 研究活動
支援環境におけるスライドリポジトリの実現, 日本ソフトウェア科学会 第 30 回大会, 2013(発表予定).
[ 4 ] Seitaro, T., Taro, T., Atsushi, A., Fuminori, K.,
and Akira, M.: Slide Retrieval Technique Using Features of Figures, Proc of the International MultiConference of Engineers and Computer Scientists
2013, 2013, pp. 424-429.
[ 5 ] 加藤雄大, 井上良太, 白松俊, 大囿忠親, 新谷虎松:
Web を利用したスライドスタックのためのスライドリポジトリの試作, 第 27 回人工知能学会全国大会, 2013.
[ 6 ] Sacha, Z., David, R. K., Mark, S. A., and Sanjoy,M.: Successful Classroom Deployment of a SocialDocument, Proceedings of the SIGCHI Conferenceon Human Factors in Computing Systems, 2012,pp. 1883-1892.

メーションの動作を表す:behavior プロパティを用意する．RDF Store にスライドイン，リボルブなどのアニメーションの種類を表すインスタンスや，上に動く，回転，強調などのアニメーションの動作を表すインスタンスを用意する．
本稿では，ユーザが手動でアノテーションを付加する必要であった．しかし，上記の 2 つのアノテーションを用意し，スライドの XML を解析する際に自動で図形やアニメーションにアノテーションを付加することで，さらにスライドの構造に意味を追加し，効率的にスライドを検索できる．

6 まとめ
本稿では，スライドの再利用を目的としたスライド検索のためのスライド構造について述べた．全文検索に基づくスライド検索では，スライドの検索が困難な