コンテンツの構造を反映したメタデータに基づく部分コンテンツの再利用法
槙野 理恵

1

(指導教員：小林 一郎)

はじめに近年，Web の大規模化にともなう検索エンジンの普及により，「コンテンツは作らずに探す」という考え方が一般化しつつある．しかし，料理やお菓子のレシピのように，個人の嗜好が強く影響するようなコンテンツが Web で提供されているなど，それらを見つけることは依然として難しい．このため，所望のコンテンツを得るためには，部分的に利用可能なコンテンツを収集し，利用目的や嗜好に応じて修正・合成し，コンテンツを再利用できるような仕組みが望まれる．そこで，本研究では，Web 上の既存コンテンツから再利用可能な断片を抽出し，それらを修正し，入れ替えることにより希望のコンテンツを半自動的に作成する手法を提案する．

2

部分コンテンツの再利用

本研究では具体的なドメインとして，Web にて公開されている菓子レシピを対象とする．菓子のモデル構成を反映してレシピを構造化し，部分的に修正と入れ替えが可能な独立した部分レシピを定義する．ここで，レシピは必要な食材と調理の結果得られる成果物を抽象的な操作手順で連結されたプロセスとして考えることができる．そこで，調理手順を問題解決の手続きとみなし，問題解決プロセスの記述法である CommonKADS[1] の問
題解決メソッド (以下，PSM:ProblemSolvingMethod)を用いてレシピを構造化コンテンツとしてモデル化する．これにより，個々のレシピが共通の語彙で表現され，部分レシピの修正・入れ替えを行う際のモデルの一貫性が保たれ，調理における制約条件を考慮した修正と入れ替えが実現可能になる．

2.1

システム概要本研究では，モデル化されたレシピが蓄積されたリポジトリから利用可能な部分を抽出し，部分ごとに調理手順の修正を行い，レシピを部分的に合成することにより，所望のレシピを半自動的に構成するシステムを構築した．システムの開発は，オブジェクトを関連により結びつけることで，汎用的なデータ構造を定義するためのツール Workmap[4] を使用して行った．構
築したシステムの概要を図 1 に示す．

をリポジトリから抽出し，レシピモデルの部分構造と合成・入れ替えを行うことにより，ユーザが所望するレシピを生成する．

3

交換可能なレシピ構造菓子のレシピを部分的に引用し，新たなレシピとして再利用するために，まず，菓子のタイプを分類し，独立した調理工程に対応した菓子の構成要素を定める．
次に，菓子の構成要素に基づくレシピの部分構造を定義し，各レシピ部分の持つ調理手順を問題解決手順としてモデル化するための PSM，入出力オブジェクト，オブジェクトと PSM 間の制約を定義する．

3.1

菓子のモデル構造

交換可能な菓子の構成要素を定義するための観点として，製法や主原料に基づいた菓子分類 [3] に従う．菓
子分類において，一般的に各種類に共通する構成と特徴的な構成が得られる．ここでは，種類ごとに異なる特徴的な部分を基礎部とし，全ての種類に共通して出現する部分を装飾部とする．
一般には，基礎部と装飾部を自由に組み合わせることで，新たな菓子の構成が可能になる．このことから
本研究では，レシピ再利用の観点から，既存レシピに対して基礎部と装飾部を入れ替え可能なレシピの部分構造を表す単位とする．

3.2

レシピの部分構造

レシピは，菓子の一般的な構成に基づき，以下に示す 3 つのレシピの部分構造から構成される．

• 基礎部レシピ• 装飾部レシピ• 仕上げレシピ
基礎部レシピと装飾部レシピは，それぞれ基礎部と装飾部を作る手順を与えるレシピのことである．仕上げレシピとは，基礎部と装飾部を組み合わせて最終的な菓子を作る手順を与えるレシピのことである．図 2にショートケーキを例とした菓子の構成要素と，基礎部レシピと装飾部レシピ，仕上げレシピの関係を示す．

図 1: システム概要

図 2: 菓子の構成要素と部分レシピ

まず，Web にて提供されている菓子レシピが持つ調理手順を PSM によってモデル化し，それらをコンテンツリポジトリに格納する．ユーザはリポジトリの構成要素を用いたクエリを入力する．システムは，制約条件を考慮しながらクエリの構成ノードをレシピモデルに追加し，クエリの構成ノードに一致する部分構造

一般的に基礎部レシピと装飾部レシピにおいて，記述されている調理手順に新たな手順を追加したり，手順の一部を他の手順と入れ替えることにより，生成される基礎部や装飾部の味や食感を変えることができる．

3.3

レシピの PSM と入出力オブジェクト

レシピの部分構造をモデル化するための PSM と入出力オブジェクトを定義する．入出力オブジェクトは‘材料オブジェクト’，‘成果物オブジェクト’，‘基礎部オブジェクト’，‘装飾部オブジェクト’ の 4 つがある．
各オブジェクトは属性と属性値の対のリストにより定義する．表 1 に材料オブジェクトの定義を示す．
表 1: 材料オブジェクト
属性属性値

名前
大きさ
相
油分
水分
温度

材料の名前
なし，粉，ゴマ，レーズン，大きい
液体，軟，可塑性，硬多い，あり，なし
多い，あり，なし
低温 (20 ℃以下)，室温 (20 ℃〜25 ℃)，高温(25 ℃以上)
少ない (大さじ 1 未満)，多い (大さじ 1 以上)
量と単位の 2 つ組み

量分量

表 3: 材料オブジェクトと操作「混ぜる」間の制約
材料の属性値
大きさ：粉相：液体

4.1

レシピ部分

PSM

基礎部レシピ

冷やす，加熱する，ふるう，かき立てる，溶かす，混ぜる，泡立てる
基礎部レシピと同じ冷やす，焼く，染み込ませる，塗る，入れる，挟む，飾る

装飾部レシピ
仕上げレシピ

大きさ：粉の材料オブジェクトのみと混ぜることができる
相：液体の材料オブジェクトのみと混ぜることができる

クエリ

クエリはリポジトリの構成要素を用いて作成する．
レシピの部分的な入れ替えを行う場合，基礎部・装飾部レシピを構成するオブジェクトの属性と属性値の対のリストを，AND と OR の論理演算子により結合した検索式で定義する．例として，装飾部レシピを「チョコレートを使用した軟らかい装飾部のレシピ」に変更する場合のクエリを図 4 に示す．

以上のオブジェクトを入出力とする PSM を各レシ
ピごとに CommonKADS の推論規則の特徴表現に基づいて定義する．各レシピ部分の PSM を表 2 に示す．
表 2: 各レシピ部分の PSM

制約

図 4: 論理演算子を用いたクエリの例

4.2

実行例

図 4 のクエリにより得られる実行例を図 5 に示す．
左側のレシピモデルの装飾部レシピはホイップクリー
ムであるが，クエリを入力し実行した結果，新たに装飾部レシピがチョコクリームとなるレシピモデルが得られる．

以上の枠組みから，「生クリームを泡立てる」という調理手順を持つ装飾部レシピの記述例を図 3 に示す．
ここで，PSM に対して，具体的なレシピの説明記述を示す「具体的説明オブジェクト」がプロパティ「具体的説明」で関連づけられている．

図 5: 実行例5
図 3: 装飾部レシピモデルの例

3.4

オブジェクトと PSM 間の制約

一般的に液体の物体と固体の物体を混ぜ合わせて 1つの物体にすることはできない．よって図 3 において，「相：硬」である材料オブジェクトと「相：液体」である材料オブジェクトを操作「混ぜる」の入力とすることはできない．このように，オブジェクトと PSM 間には制約が存在する．制約の一例を表 3 に示す．

4システムの実行例

レシピモデルのリポジトリから関連するコンテンツを抽出し，所望のコンテンツを作成するためのクエリと実行例を示す．

おわりに

本研究では，菓子のレシピを問題解決プロセスの構成要素単位に対して，材料と調理の結果得られる成果物や調理手順の単位操作を割り当てることにより，交換可能なレシピ構造を定めた．この結果，コンテンツの部分的な再利用による嗜好に合わせたレシピの変更を実現することができた．今後は，レシピの入れ替えに伴う材料や調理手順の変更を材料と調理手順間の制約を考慮して行えるモデル構造を構築していきたい．

参考文献[1] G.Schreiber etal.，KNOWLEDGE ENGINEERINGAND MANAGEMENT The CommonKADS Methodology, The MIT Press(1999)[2] Liping Wang etal.,:Substructure similarity measurement in chinese recipes, WWW ’08: Proceeding of the17th international conference on World Wide Web,pp.979–988, 2008.
[3] 桜井芳人編：総合食品事典第六版，同文書院 (1995)[4] http://www.bspace.info/ bunmei/workmap/