• 検索結果がありません。

[3] [4] Google [5] [6] [7] [8] [9] [10] [11] [12] Cookpad [1] Cookpad A B C

N/A
N/A
Protected

Academic year: 2021

シェア "[3] [4] Google [5] [6] [7] [8] [9] [10] [11] [12] Cookpad [1] Cookpad A B C"

Copied!
8
0
0

読み込み中.... (全文を見る)

全文

(1)

DEIM Forum 2013 D3-5

手順情報としてのレシピデータに対する類似レシピの要約と

微小で重要な差異の発見

杉山

祐一

山肩 洋子

††

田中 克己

††

京都大学工学部情報科

〒 606–8501 京都府京都市左京区吉田本町

††

京都大学大学院情報学研究科社会情報学専攻 〒 606–8501 京都府京都市左京区吉田本町

E-mail:

†{

ysugiyama,yamakata,tanaka

}

@dl.kuis.kyoto-u.ac.jp

あらまし Web 上のレシピ検索サイトで料理名によるキーワード検索を行うと,ときに数千件ものレシピが見つかる.

各レシピの調理手順は似通っているが,細かい部分にそのレシピの特徴とも呼べる違いがみられ,それぞれがどのよ

うに異なっているか理解をするのは手間のかかる作業である.我々は,ユーザの検索意図として,料理の典型的な調

理手順を知りたい場合や,各レシピがどのような特徴を持つかを知りたい場合があると考えた.そこで検索結果とし

て得られた各レシピの調理手順を既存手法により構造化し,それらのレシピの多くが共有する手順と,各レシピ間の

差異を発見することで,その料理の典型的な調理手順と各レシピの特徴をユーザに提示できるシステムを提案する.

キーワード

レシピ,集合要約,手順特徴抽出,手順情報

1.

は じ め に

近年,「Cookpad [1]」や「楽天レシピ[2]」など,一般ユーザ がWeb上にレシピを掲載し,検索を行えるレシピ検索サイト の台頭が目覚ましい.これらのレシピ検索サイトで検索可能な レシピは百万件以上にも上り,「肉じゃが」や「ゴーヤ」といっ た料理名や食材名でのキーワード検索を行うと,数千件ものレ シピが提示される.提示されたレシピはそれぞれ大まかな作り 方(典型的な調理手順)は同じであるが,細かい部分ではワン ポイントと呼べるような特徴があり,互いに異なる特徴を持っ ている.しかし,レシピを検索したユーザが, レシピ一つ一つ を見比べて,その料理の大まかな作り方はどのようなもので, どの部分がそのレシピの特徴なのかを判別するのは手間のかか る作業である. そのため我々はレシピ検索サイトにて次のような問題が生じ ていると考えた. (i) 典型的な調理手順を知りたいユーザがレシピを検索した場 合,1つのレシピを見ただけではどの部分が典型的な調理 手順でどの部分がそのレシピの特徴であるかがわからず, 多数のレシピを見比べなければならない. (ii) 典型的な調理手順はすでに理解しているユーザが,さらに 調理に工夫をしたいと考え,特徴的なレシピを探す場合, 各レシピがどのような特徴を持つかを理解するためには, レシピすべてを読まなくてはならない.しかしレシピの大 半は典型的な調理手順が占めているため非効率的である. 我々はこの2つの問題を,レシピの検索結果の提示方法を改 善することにより解決できると考えた.そこでレシピ検索に よって得られたレシピ集合から典型的な調理手順を推定し,各 レシピの特徴を抽出する手法を提案する. ! ! ! ! 5 ! ! ! ① ② ③

肉じゃが

の検索結果

牛肉 切る 玉ねぎ じゃがいも 醤油・砂糖 サラダ油 炒める 混合   落とし蓋をする   煮る   さらす 春雨を使用 じゃがいもを下茹で   醤油を最後に加える ニンジンを面取りする ひき肉を使用 図 1 検索イメージ ユーザが料理名「肉じゃが」でレシピを検索した場合,提案す るシステムが提示する検索結果のイメージを図1に示す.ユー ザは図1の左側に示されるような,典型的な調理手順を見るこ とで,その料理の大まかな調理手手順を,レシピをみ比べるこ となく把握でき,さらに各レシピに付加されている特徴を閲覧 することで,どのようなバリエーションのレシピがあるか知る ことができると考えられる. 以降,2章では関連研究を述べる.3章では,レシピ検索サ イトをユーザがどのように利用するか調査した結果を述べ,4 章では,ユーザがレシピを見比べる際に注目する特徴がどのよ うなものかを調査した結果を述べる.5章では提案手法とその 評価について述べ,最後に6章でまとめを述べる.

2.

関 連 研 究

既存の料理レシピ検索システムの代表的なものとして前章で あげたCookpad [1]や楽天レシピ[2]の他には,独自に制作し

(2)

たレシピコンテンツを掲載している「レシピ大百科[3]」 や「ネ スレバランスレシピ[4]」,既存のレシピ検索システムを用いた メタ検索を行う「Googleレシピ検索[5]」など様々なサイトが あげられる.いずれのサイトでも通常のキーワード検索と同様, 検索クエリに対し適切と判定された順に上位数件のレシピを列 挙するだけであり,検索結果のレシピ集合における共通点や相 違点を提示する機能はない. レシピ集合の共通点や相違点を解析するためには,レシピに おける調理手順の構造化が必要であると考えられる.レシピの 調理手順の構造化を行う研究としては,調理手順の説明テキス トを,自然言語解析の技術により,作業フローに変換する手法 が多く提案されている.代表的なものでは,既存の自然言語処 理ツールに加え,レシピに特化して手動で導かれたルールを 用いる手法[6]や,レシピコーパスによる機械学習を使った手 法[7],レシピ検索サイトでの多種多様な記述に対応した構造 解析を行う手法[8]などが提案されている.本研究では,検索 対象のレシピは,これらのような研究成果によりあらかじめフ ローグラフに構造化されているものと想定する. レシピ検索・推薦の研究も多様な観点から行われている.レ シピの食材の典型度から追加食材の推薦を行う[9],レシピの難 易度を考慮した検索手法[10]や,個人の嗜好を考慮したレシピ の推薦手法[11],ユーザの気分と料理セットである献立を考慮 したもの[12]などがある.いずれの研究もレシピ検索アルゴリ ズムやランキングに関する研究であるのに対して,本研究では レシピ検索で得られたレシピ集合を扱う点で異なる.

3.

レシピ検索サイトの利用調査

検索結果のレシピ集合は,どのように提示するのがユーザに とって有用であるかを議論するため,レシピ投稿サイトにおけ るユーザの検索行動を調査した. 3. 1 調理時におけるレシピ検索動向の記録と分析 被験者に,調理を行う前にCookpad [1]で自由に一つの実際 に調理するレシピを選択してもらい,そのレシピを選択した理 由と,キーワード検索を行った場合は,そのクエリの変遷を記 述してもらった.被験者は日常的にCookpadを利用している 3名で,それぞれ5回,計15回分の記録を得た.その分析結果 を次に示す. 15回分の記録のうち,キーワード検索により検索を行うもの が13回で最も多かった.残りの2回は「今日のピックアップ 料理」などトップページからリンクをたどることでたどり着い たレシピであった.13回のキーワード検索における,実際に調 理するレシピを検索するのに用いられたクエリと最終的に選択 され たレシピが検索結果中何位であったかを表1に示す.ただ しクエリ中に含まれる“▲”はそれに続くキーワードを含まない ものを検索するマイナス検索である. 検索に用いられた各クエリのうち,料理名を含むものは8つ, 食材名を含むものは8つ,調理法は4つ,道具が1つであっ た.このことより,被験者たちは,主に料理名と食材名で検索 したことがわかる.また,選択されたレシピが検索結果中何位 であったかをみると,1位が選ばれたことは一度もなく,上位 表 1 入力された最終的なクエリと選択されたレシピの順位 被験者 クエリ 順位 A 白菜 豚肉 炒め 生姜 ▲八宝菜 43 鯖 味噌煮 フライパン ▲圧力鍋 ▲缶 ▲梅干 ▲バター 3 白菜 豚肉 巻き ▲味噌 ▲ひき肉 ▲牛乳 ▲サラダ ▲焼く 5 セロリ にんじん 豚肉 ▲巻き ▲ポトフ ▲カレー ▲ブロック ▲かたまり 56 豆腐 ハンバーグ 水切り ▲ひじき ▲不要 33 B カレーうどん カレール 7 鯛めし 12 ビビンバ丼 20 豆腐 50 C カルボナーラ 9 トマト缶 煮る 6 ロールキャベツ 2 パスタ 7 10件の検索結果から選ばれたものも高々13回中7回と,およ そ半分であった.[13]によると,一般的なWeb検索では,検索 結果のうち上位1件をユーザの約58パーセント選んでおり, 上位3件から選ぶユーザは約86パーセント,上位10件から選 ぶユーザは約98パーセントである.つまりユーザは検索結果 の上位を選ぶ傾向がある.しかし,レシピ検索では表1を鑑み るに,この傾向が弱い可能性があると考えられる. さらに,被験者のコメントでは,「いくつかのレシピを比較し てこれがおいしそうだったので決めた.」「複数のレシピを見く らべてレシピを選択した」など,レシピの比較を行ったとの記 述が13回のキーワード検索のうち11回に見られた.Cookpad ではレシピの検索時に,レシピのタイトル・写真・キャッチコ ピー・主な食材を見ることができるが,被験者はその情報のみ でレシピを選択せず,タイトルをクリックして中のレシピ本文 を見て最終的なレシピを選択したと考えられる.以上のことよ り,我々は次の2つの仮説をたてた. 仮説1: レシピ検索は一般的なWeb検索に比べ,上位の検索 結果が選ばれない. 仮説2: ユーザは複数のレシピのタイトルや写真,キャッチコ ピーのみだけでなくレシピ本文を見比べて選択する 3. 2 アンケートによるレシピ選択動向の分析 前節の仮説を,より多数の被験者のもとで検証するために, Webを通じてレシピ検索行動に関するアンケート調査を行った. ここで,被験者のレシピ検索に対する動機づけを行うこと,ま た条件を統制することを目的として,レシピを検索するシチュ エーションを設定した.前節の実験からレシピ検索のクエリに 「料理名」および「食材名」がよく用いられること,Cookpad では検索結果の順位付けとして「新着順」と「人気順」が選べ ること,また,トップページから料理カテゴリをたどってレシ ピを検索する場合があることから,シチュエーションは以下の 4パターンとした.

(3)

0.0     10.0     20.0     30.0     40.0     50.0     60.0     70.0     80.0     90.0     100.0     1   2   3   4   5   6   7   8   9   10   そのレシピの検索結果における順位 ビーフシチュー新着順 カルボナーラ人気順 ゴーヤ新着順 おもてなし料理 一般的なWeb検索[13]   そ のレ シ ピ が選択さ れた 割合   (累計)(%)   図 2 N 位検索率 0.0     5.0     10.0     15.0     20.0     25.0     30.0     35.0     1   2   3   4   5   6   7   8   9   10   ユ ー ザの割合(%) レシピ閲覧数 ビーフシチュー:新着順 カルボナーラ:人気順 ゴーヤ:新着順 おもてなし料理 図 3 レシピを決めるまでに閲覧したページ数とその割合 料理名「ビーフシチュー」で検索し,新着順で結果を得る 料理名「カルボナーラ」で検索し,人気順で結果を得る 食材名「ゴーヤ」で検索し,新着順で結果を得る カテゴリ「おもてなし料理」で検索し結果を得る Cookpad上で上記の4つのシチュエーションでレシピを検 索し(注1),それぞれの検索結果上位 10件を,各シチュエーショ ンのレシピ検索結果とした.被験者に検索結果を提示する画面 は,Cookpadのをそのまま使用した.すなわち,検索結果の画 面で上位10件のレシピについて,タイトル・写真・主な食材, および概要のスニペットが列挙され,調理手順は表示されない. また,各レシピタイトルをクリックすると,調理手順を含むそ のレシピに関する詳細説明の画面が開かれる.各被験者には, シチュエーションごとに以下の項目について回答させた. 最終的に1つレシピを選択するとしたらどのレシピか レシピを選ぶ際に閲覧したレシピはどれか[複数回答可] そのレシピを選んだ理由[複数回答,自由記述可] 被験者数は37名であった.まず,前節で挙げた仮説1を検 証するため,検索結果のN位以内に最終的に選択されたレシ ピをが含まれる確率(N位検索率)を調べた.本アンケートの4 つのシチュエーションにおけるN位選択率を図2に示す.ここ で,一般的なWeb検索と比較を行うため,[13]のN位検索率 を参照し,併せて図2に掲載している. 図2より,いずれの検索シチュエーションにおいても,一般 的なWeb検索に比べて,上位の検索結果が選択される割合は 低いことがわかる.このことより仮説1「レシピ検索は一般的 なWeb検索に比べ,上位の検索結果が選ばれない」が確認でき た.また,新着順よりは,人気順のほうが,上位によりよいレ (注1):2012/10/21 の時点のデータを用いた. シピが登場すると考えられるため,上位のレシピが選ばれやす いと考えられる.しかし,同じく図2によると,ランキング方 法を「新着順」と「人気順」で比較しても,上位の検索結果が 選択される割合は「人気順」に明らかな優位性はみられなかっ た.一般的に,ユーザがどのようなレシピを好むかはユーザの 嗜好に大きく依存していると言われており,いかに検索アルゴ リズムを改善しても,上位2,3件のレシピを見れば十分とは ならない可能性が高いと考えられる.よって本研究が提案する, レシピ検索結果を見比べるやすいシステムは有用性が高いと考 えられる. 次に,前節の仮説2を検証するため,検索シチュエーション ごとに,各被験者がレシピを決定するまでに閲覧したページ数 の平均ページ数を算出し,閲覧したページ数別に被験者の比率 を調べた.その結果を図3に示す.上で述べたように,10件の 検索結果の提示画面では,レシピのタイトル,写真,レシピの 概要などの情報が列挙されているため,これらの情報でレシピ を決定することができるのであれば,詳細説明ページを閲覧す る必要はない.しかし図3によると,いずれの検索シチュエー ションにおいても,被験者の7割以上が2つ以上のレシピを閲 覧していることがわかる.これは,その料理の大まかな特徴だ けでなく,調理手順などの詳細な情報を見てレシピを選択して いることを示唆している.このことより仮説2「複数のレシピ のタイトルや写真,キャッチコピーのみだけでなく本文を見比 べて選択する」が確認できた.そのため,レシピ本文からその 特徴を抽出することで,レシピ本文を効率よく見比べられる本 手法は有用性が高いと言える.

4.

レシピ検索時におけるレシピの特徴

本章では,ユーザが効率よくレシピを見比べやすいレシピ表 示システムを実現する準備として,異なるレシピ間にどのよう な種類の差異があるかを整理し,そのそれぞれの特徴を分析す る.以降,レシピで用いられる材料を「食材」と呼び,食材に 対して行う調理手順ひとつひとつを「調理工程」と呼ぶ. 4. 1 調理手順をテキストで記述する際に生じる差異 実際の調理手順が完全に同じ,あるいは酷似しているレシピ であっても,そのレシピをテキストによって記述すると,一見, 全く別のレシピに見える場合がある.テキストを一覧するだけ では違うレシピに見えても,実際の調理手順がほぼ同一である ならば,そのような差異はユーザがレシピを選択するのに有用 な特徴ではないと考えられる.このような調理手順をテキスト で記述する際により生じる差異には以下のようなものがあげら れる. (1)「炒める」と「いためる」や「じゃがいも」「ジャガイモ」 「ジャガ芋」といった表記の揺れ (2)「炒める」と「炒め合わせる」や「煮る」と「煮込む」と いった作業の微細な違い (3) ニンジンを角切りにするという1つの手順について,「ニ ンジンは角切りにします」と1つの文で表現するか,「ニ ンジン・ジャガイモは角切りにします」のようにほかの作 業とまとめて表現するかといった作業単位の分け方の違い

(4)

(4)「ジャガイモを洗い,皮を剥き,切ります」という表現に 対し,「洗う」,「皮をむく」といった作業はじゃが芋の下ご しらえとして極めて一般的であるから省略して,「ジャガ イモを切ります」と記述するといった記述の省略 以上のような,レシピのテキスト表現による差異は,実際の 作業手順では微細な差異であるか,または作業手順としての差 異はないため,ユーザがレシピを見比べる上で重視しないこと も考えられる.そこで,次節では実際に被験者がレシピを見比 べる際にどのような差異に注目するかを分析した. 4. 2 レシピの特徴分類 レシピを見比べる際にユーザが着目するレシピの特徴はどの ようなものかを調べるために,以下のような実験を行った. 被験者に対し,「肉じゃが」「ビーフシチュー」「カルボナー ラ」「ゴーヤ」をそれぞれキーワードとしてCookpad [1]で人 気順検索をした,上位10件のレシピ集合,計4セットを与え た(注 2).なお,今回は調理手順の差異に着目するため,写真や コメントに関連する特徴は考慮に入れないようにしたい.その ため,レシピとしては,食材と使用量の対である食材リストと 調理説明文のみを抽出したものを被験者に渡した.次に,その 各レシピ集合における,各レシピの特徴を手動で書きださせた. ここで,レシピをざっと見るか,じっくり見比べるかで特徴の 選ばれ方が異なることが予想された.本研究の目的は,レシピ の大きな特徴ではなく,ある程度時間をかけてよく読まないと 発見できないようなレシピの特徴をシステムが提示することで あるから,被験者にはレシピをよく見比べてもらう必要がある. そこで,レシピの特徴を判断する際の作業として,以下のよう に指示した. (1) レシピ集合ごとに,はじめにそのレシピ10件の食材リス トとレシピ本文をすべて読む. (2) 各レシピの食材リストや調理説明文に,そのレシピの特徴 であると思われる箇所をマークする.このとき,食材リス トや調理説明文中に現れない特徴が存在する場合は余白部 分に記入する (3) 各レシピに複数特徴があると判断された場合は,その特徴 の重要性を被験者が主観で判断して順位を付ける. 上記の手順で2名の被験者に特徴の書き出しを行ってもらい, 各レシピにおいて,2名の被験者のいずれかが特徴であると判 断した特徴を,そのレシピの特徴とした.その結果,計194個 の特徴を得た. 得られた特徴を,その性質によって分類したところ, 大きく 「食材」,「調理工程」,「調理器具」そして4.1節であげた「テ キスト表現による差異」に分類できた.また,これらをさらに 詳しくみて,分類「食材」は食材リストのうち,現れる場所の 違いから,「食材の種類」,「食材の使用量」の2つに分類でき た.また「調理工程」に関しては,「肉はワインで下こしらえ」 や「じゃがいもを下茹でしておく」などの下ごしらえに関する キーワードを用いた記述があったため,「下ごしらえ」と「その 他の調理工程」の2種類に分類した.さらに「その他の調理工 (注2):2013/1/15 日のデータを用いた. 程」には「落としぶたをする」や「余熱で火を通す」などの1 つの調理工程に関する記述と,「じゃがいもと人参を先に入れ る」・「じゃがいも最後にもりつける」などの1つの調理工程と しては特徴的ではないが,その調理工程の順序に関して特徴が 認められる記述があったため,「調理工程単体」と「調理工程の 順序」の2つに分類した.なお「下ごしらえ」に分類されたも のはすべて「ジャガイモを下茹でする」・「ニンジンの面取り」 など1つの調理工程に関する記述のみであった.結果として得 られた7種類の分類とその主な例を次に示す. 食材:食材の種類 他のレシピではあまり使われていない食材が用いられてい る.または他のレシピではだいたい用いられている食材が用 いられていない (例 「肉じゃが」に「トマト缶」が用いられている.「肉 じゃが」に「料理酒」が用いられていない) 食材:食材の量 他のレシピに比べ,ある食材の量が多い・少ない (例 「みりん」の量が多い) 調理工程:下ごしらえ 他のレシピでは行われていないような下ごしらえを行ってい る (例 「じゃがいも」を下茹でしている) 調理工程:調理工程単体 下ごしらえ以外で.他のレシピではあまり行われていない調 理工程がある (例 落とし蓋をして煮る.) 調理工程:調理工程の順序 調理工程の順序が他のレシピと異なる (例 「醤油」を最後に加えている) 調理器具 他のレシピでは使っていない調理器具を用いている (例 「圧力鍋」を用いている) テキスト表現による差異 レシピの書き方に特徴がある (例 食材がすべてccで表記されている) 上記のように分類された各特徴は,出現場所が食材リストで あったり調理説明文であったりと異なり,また,出現頻度や記 述のされ方などの性質も異なる.そのため,それぞれの分類に 特化した抽出手法を構築する必要があると考えられる.そこで 本研究では,重要性が高いと考えられる分類の特徴に着目する. 各分類の重要性は次の2つの視点から判断した.1つ目は出 現頻度で,出現頻度の高い分類は重要である.2つ目は,被験 者が各特徴に与えた順位の値である.この値が小さいものはそ のレシピにおいて重要であるため,順位の平均値が小さい分類 は重要である.そこで,各分類の出現頻度と,順位の平均を算 出した結果を表2に示す. 表2より,最も出現頻度の高い「食材の種類」と,順位の平 均が2.0以下である「下ごしらえ」・「調理工程の順序」の3つ が重要性の高い特徴の分類であるとし,本研究ではこれら分類 の特徴である164個(84.5%)の特徴に関して抽出を図る.

(5)

表 2 特徴の種類ごとの頻度と順位平均・分散 特徴の種類 出現回数 頻度 (%) 順位の平均 食材の種類 125 64.4 2.46 下ごしらえ 22 11.3 1.7 調理工程の順序 17 8.8 1.8 食材の量 10 5.2 2.1 調理工程単体 10 5.2 4.1 調理器具 7 4 4 テキスト表現による差異 3 2 4 全て 194 100 2.44 また,節4. 1で述べた,レシピのテキスト表現による差異に 当てはまるものは全体の2% で,順位の平均も4,0であった. そのため,複数のレシピを見比べる目的においては,テキスト 表現による差異を無視しても影響はすくないと予想される.逆 に,このような差異は,レシピの典型的な調理手順の抽出や特 徴発見においてノイズとして影響を与える恐れがあることから, 本手法では除去することを考える. 以上の分析結果を踏まえ,本研究でシステムがレシピ間の特 徴として抽出する差異と無視する差異を以下のようにした. 食材の種類: 抽出する(5.4.1節で述べる) 下ごしらえ: 抽出する(5.4.2節で述べる) 調理工程の順序: 抽出する(5.4.3節で述べる) テキスト表現による差異:前処理で除去する(5.2節,5.3 節で述べる) 食材の量: 本研究では扱わない 調理工程単体: 本研究では扱わない 調理器具:本研究では扱わない

5.

レシピ集合からの典型的な調理手順抽出と特

徴発見

本章では,レシピ検索サイトにおいて,料理名によるレシピ 検索で得られたレシピ集合に対して,典型的な調理手順を推定 する手法と,各レシピに対して,前節で重要と判定された種類 の特徴を抽出する手法について説明する. 5. 1 処理の流れ システムに対するユーザの入力行動と,システムの処理の流 れ,システムがユーザに提示する情報を図4を用いて説明する. ユーザは「肉じゃが」や「ゴーヤ」のような料理名や食材の 検索クエリをシステムに入力する.システムは,この検索クエ リによりCookpad [1]などのレシピ検索サイトを介してレシピ を検索し,上位N件のレシピを獲得する.このとき,得られた N個のレシピriの集合を集合Rとし,R ={r1,· · · , rN}とす る.レシピriは食材リストと,調理手順説明文からなる.レシ ピ集合Rに一度でも出現した食材の集合をF ={f1,· · · , fM} とする.(ただしM は出現する食材の種類の数) 4.1節で述べた,テキストで記述する際に生じる差異のうち, 3.の「作業単位の分け方の違い」を除去するため,各レシピ riの調理手順説明文を,手作業により調理手順を示すフローグ ラフgiに変換する.なお,このフローグラフ化の処理は,[6]∼ [8]などの手法を使えばほぼ自動化が可能である.集合Rから レシピ検索結果集合R   レシピ{r1,  r2,  …,  rN}   調理手順の構造化 レシピのフローグラフ集合G   フローグラフ{g1,  g2,  …,  gN}   テキストで記述する際に生じる差異の除去 各レシピの特徴抽出 各レシピの特徴           レシピrNの特徴「10分蒸らす」 レシピr1の特徴「落し蓋をする」 検索クエリ 縮退されたレシピのフローグラフ集合G’   フローグラフ{g’1,  g’2,  …,  g’N}   典型的な調理手順の抽出 典型的な調理手順を示す   フローグラフP   図 4 処理の流れ 得たフローグラフgiの集合をG ={g1,· · · , gN}とする.今回 は次の得られたフローグラフgiは次の性質を持つものとする. ルートノードは,そのレシピの完成品に対応する. 食材は,それぞれ一つの葉ノードに対応する 調理工程は,それぞれ一つの節ノードに対応する ある節ノードの調理の対象ノードから,その調理に対応 する節ノードへ有向枝が張られている. 次に,このフローグラフgiに対し,5.2節で述べる手続きに よって,4.1節で述べた,テキストで記述する際に生じる差異 のうち,「(1)表記の揺れ」と「(2)作業の微細な違い」による差 異を除去する.また,5.3節で述べる手続きによって,フロー グラフgiに対し,4.1節で述べた,テキストで記述する際に生 じる差異のうち,「(4)記述の省略」による差異を除去する.こ の処理を縮退とよび,縮退により得られた新たなフローグラフ をg0iとし,その集合をG0={g10,· · · , gN0 }とする.このG0か ら典型的な調理手順pを抽出する.最後に5.4節で述べる手続 きによって各レシピの特徴を抽出する. 5. 2 レシピのテキスト表現による差異,表記の揺れと作業 の微細な違いの除去 本節では4.1節で述べた,テキストで記述する際に生じる差 異のうち,「(1)表記の揺れ」と「(2)作業の微細な違い」による 差異の除去を行う手法について説明する.日本語の表記ゆれ判 別用の辞書「たんし」[14]を用い,レシピテキスト中の4. 1節 の表記の揺れによる差異を除去した.「たんし」では,「豚肉」と 「ぶたにく」のように,発音は同じだが,表記が異なる単語同 士を関連付けた辞書である.この辞書を用いて,すべての単語 をひらがなに変換することにより,発音が同じであれば,同じ 表現で表記されるよう統一される. さらに,各調理動作を,下記のようなカテゴリにラベリング し,4. 1の作業の微細な違いによる差異の除去を行った.カテ ゴリはNICT [15]の上位語・下位語辞典を用い,「調理法」を上 位語として持つ動詞を抽出し,4.2節で行った実験の結果を参 考に,レシピ間の特徴とはみなされない程度微細にしか調理動 作が異ならないと考えられるものを手動で分類することで得た. 得られた10種類のカテゴリとその実例を次に示す. 混合:「加える」「入れる」「投入する」など 切る・剥く:「切る」「一口大にする」「みじん切り」など 炒める:「炒める」「炒め合わせる」など 煮る:「煮る」「煮詰める」「煮込む」など

(6)

牛肉 炒める   にんじん 混合 玉ねぎ 炒める   混合 フローA フローB   牛肉 にんじん 炒める 玉ねぎ 炒める   混合 フローC 牛肉 炒める   にんじん 玉ねぎ 牛肉 にんじん 玉ねぎ 炒める   混合 フローD 図 5 フローグラフの縮退の例 焼く:「焼く」「焼き付ける」など 焼く(オーブン):「オーブンで焼く」など 揚げる:「揚げる」「素揚げにする」など 茹でる:「茹でる」「湯がく」など 蒸す:「蒸す」「蒸し焼く」など その他:上記に含まれないもの 5. 3 フローグラフの縮退と典型的な調理手順の抽出 レシピ集合Rの典型的な調理手順は,その典型的な調理手順 を見るだけでレシピの全体の大まかな流れが理解できるもので あることが望ましい.そこでシステムは,典型的な調理手順は レシピの調理手順そのものではなく,調理手順をいくつかの段 階に区分し(この処理を縮退と呼ぶ),フローグラフの形で示 したものを提示する.縮退されたフローグラフgiの素となっ たレシピは,同じ検索クエリで得たレシピ集合であるから,多 くのgiは同じ形となり,結果,G0には同じフローグラフが多 く含まれる.そこで,G0のうち,最も数の多いものを典型的な 調理手順pであると判定する.以下で処理の詳細を説明する. 食材から一つの料理を作りあげるまでの調理手順は,下ごし らえや,似た調理工程をひとまとめにすれば,いくつかの段階 に分けることができると考えられる.例えば,文A「玉ねぎと ニンジンをいれ,炒め合わせる.さらに牛肉も加え炒める」と いう手順は,「炒める」という作業が継続していることから,「炒 める」という調理段階であると考えられる.また,文B「玉ね ぎとニンジンと牛肉を炒める」文C「玉ねぎとニンジンを炒め, 牛肉も炒める」という記述も文Aと同じ調理手順を表している と考えられる.しかしこのそれぞれをフローグラフに変換する と文A,文B,文Cはそれぞれ図5のフローA,フローBに, フローCになる.よってこれらのレシピのフローグラフは実際 には同じ調理動作を表していると考えられる.そこで,これら のフローに縮退処理を加えて,1つのフローDにする.また, 4. 1のテキストで表記する際に生じる差異のうち,「(4)記述の 省略」は,この一つの調理段階の表現方法の詳細さによるもの であると考えられる.よって,レシピのフローグラフを縮退さ せることで,この記述の省略による差異を除去する. 具体的には以下のルールを適用することでて縮退を行った. (1) 2つの調理動作nAnB の間にnAからnBへとエッジ があり,nBに向かうエッジがそれ以外にないとき,nAの ラベルが「混合」で,nBのラベルが「切る・剥く」「その 他」以外のときはnA, nBを一つのノードとし,nB のラ ベルとする.(図6) (2) 2つの調理動作nAnBのラベルが「その他」以外で同 炒める   混合 煮る   混合 縮退前 縮退後   にんじん 玉ねぎ 醤油 炒める 煮る にんじん 玉ねぎ 醤油 図 6 縮退ルール 1 の縮退例 炒める   炒める 炒める 縮退前 縮退後   にんじん 玉ねぎ 塩 炒める にんじん 玉ねぎ 塩 豚肉 豚肉 図 7 縮退ルール 2 の縮退例 その他:   弱火にする   煮る 煮る 縮退前 縮退後   にんじん 玉ねぎ 豚肉 混合 その他:   落としぶたをする   その他:   弱火にする   煮る 煮る にんじん 玉ねぎ 豚肉 煮る その他:   落としぶたをする   図 8 縮退ルール 3 の縮退例 表 3 典型的な調理作業を示すフローグラフの評価 特徴の種類 平均 食材の種類 3.5 下ごしらえ 3.2 調理工程の順序 3.1 全て 3.2 じであり,nAからnBへとエッジがあるとき,nA, nBを 一つのノードとする.(図7) (3) 2つの調理動作nAnBのラベルが同じで,nAnB が複数のノードを経て連結されているとき,間のノード集 合をNAB = (nAB1,· · · , nABM)とする.このとき,nA

のラベルが「混合」「切る・剥く」「その他」以外で,NAB 中のノードのラベルが全て「混合」か「その他」であると き,NAB中のノードのラベルが「混合」であるものを全 てnAのラベルとする.(図8) 図6,図7では左側のフローグラフの点線に囲まれた部分が 縮退され,右側のフローグラフに変換されている.また,図8 では左側のフローグラフの真ん中の「混合」ノードが右側のフ ローグラフでは「煮る」に変換された. 縮退されたフローグラフ集合G0から,最も数の多いフロー グラフを典型的な調理作業を示すフローグラフpとする. 抽出された典型的な調理作業を示すフローグラフpの妥当 性を次のようにして評価した.典型的な調理作業の情報は,そ の料理の大まかな流れが理解でき,かつ個々のレシピの特徴を 把握するの役に立つことが重要であると考えられる.そこで, 4.2節の実験に参加した2名の被験者に対して,本手法で得ら れた典型的な調理作業を示すフローグラフを提示し,各被験者 が書き出した各特徴に対して,そのフローグラフを見ることで 発見時しやすくなるかを「1. 役に立たない」「2. どちらかと言 えば役に立たない」「3. どちらともいえない」「4. どちらかと 言えば役に立つ」「5. 役に立つ」の5段階で回答してもらった. その結果を表3に示す. 表3から,いずれの分類においても3以上の点数を得ること

(7)

ができ,抽出された典型的な調理作業を示すフローグラフを利 用することによって,ユーザが各レシピの特徴を把握しやすく なっていると言える. 5. 4 各レシピの特徴抽出 5. 4. 1 「食材の種類」の特徴抽出 「食材の種類」の特徴は,レシピ集合Rに出現する頻度の低 い食材が選ばれる場合と,頻度の高い食材が選ばれていない場 合の2パターンがあると考えられる.そこで,食材集合F 中 の各食材fiの出現頻度pf(fi)を計算し,その値がしきい値θLf 以下であるものがレシピに含まれている場合,またはしきい値 θH f 以上であるものがレシピに含まれていない場合,その食材 をそのレシピの「食材の種類」の特徴として抽出する.ここで, 「食材の種類」の特徴として選ばれた食材に対する下ごしらえ や調理工程は,その食材に依存して現れたものであると考えら れるため,特徴とみなすべきでない.よって,出現頻度がしき い値θL fθHf の間に含まれる食材の集合F0F0={fi0|fi0∈ F, pf(fi0) > θ L f} とし,次節以降での特徴抽出は,このF0に含まれる食材に関 してのみ特徴抽出を行う. 5. 4. 2 下ごしらえ部分の定義と「下ごしらえ」の特徴抽出 4.2節で述べたように,「下ごしらえ」に分類された多くの特 徴が「下茹でする」「面取りする」のように,調理工程を表す 用語1つによって特徴が表された.そこで,各食材の下ごしら えを行っている調理工程がどの部分であるかを推定し,各食材 とその食材の下ごしらえ部分の調理工程の共起関係を調べるこ とで,下ごしらえに関する特徴を抽出できると考えた. 一般的に下ごしらえは,一つの材料に対して行われる調理 手順である.よって,下ごしらえ部分は,ある食材が他の食材 と混ぜ合わさる直前までの調理動作に含まれると考えられる. レシピriにおける食材fj0 ∈ F0の下ごしらえ部分の候補は, 縮退されたフローグラフgi0において,エッジを葉から根に向 かってたどり,子を二つ以上持つ節ノードに到達する直前の節 ノードまでの部分グラフa(gi0, fj0)とした.あるフローグラフ から,抽出された下ごしらえの例を図9に示す.図の点線で囲 まれている部分が,それぞれの食材の下ごしらえ候補と判定さ れた部分である.縮退されたフローグラフの集合G0 のうち, fj0∈ F0である食材fj0を材料として持つ全てのフローグラフg0i から,下ごしらえの部分グラフa(gi0, fj0)を抽出し,その集合を Aj={a(gi0, fj0)|g0i∈ G0, fj0 ∈ F0}とする. レシピriで,レシピ集合Rの中で食材fjの下ごしらえと して出現する頻度の低い調理工程が行われている場合,そのレ シピriに食材fjの「下ごしらえ」の特徴が含まれていると考 えられる.そこで,Ajに含まれる各調理工程niの頻度pp(ni) を計算し,その値がしきい値θp以下であるものがレシピに含 まれている場合,その調理工程をその調理工程を持つレシピの 「下ごしらえ」の特徴であるとして抽出する.また,レシピri で,レシピ集合Rの中で食材fjの下ごしらえとして出現する 頻度の調理工程が行われていない場合でも,単にその下ごしら えの調理工程の記述を省略した場合が考えられるため,特徴と 牛肉 切る 切る 切る 玉ねぎ じゃがいも 砂糖 油 引く   :その他 茹でる   切る   炒める 混合   蓋をする   :その他 煮る   さやいんげん 水に放す   :その他 醤油 図 9 下ごしらえの例 下ごしらえ 煮る   炒める じゃがいも レシピA 下ごしらえ 煮る   炒める じゃがいも レシピB 下ごしらえ 煮る   じゃがいも レシピD 下ごしらえ 蒸す じゃがいも レシピE 下ごしらえ 煮る   炒める じゃがいも レシピC

多くのレシピ

特徴を持つレシピ

炒める 図 10 処理の流れ しては抽出を行わないこととした. 5. 4. 3 「調理工程の順序」の特徴抽出 「調理工程の順序」の特徴は,各食材が料理が完成するまで に加えられる調理工程をレシピ間で比較することで抽出できる と考えた.Rは1つのクエリで検索されたレシピ集合であるか ら,各レシピにおいて同じ名前の食材の料理が完成するまでに 加えられる調理工程の系列は,図10の左側ように,多くのレ シピで一致することが予想される.一方,「調理工程の順序」に 特徴があるレシピでは,同じ食材であっても,図10の右側よ うに,それが受ける調理工程の系列がほかの多くと異なると考 えた.そのため,まず,F0中の食材fj0に対して,各レシピに 加えられる調理工程の系列を抽出する.ここで,その食材の下 ごしらえ部分を示すa(g0i, fj0)に関しては,前節で述べた処理 により既にその特徴が検討されていることから無視する.各食 材fj0 が料理完成までに受ける調理工程の系列を,縮退された フローグラフの集合G0のうちfjを含む全てのフローグラフ gi0から抽出する.フローグラフg0i上で食材fj0から根ノードに 至るまでのパスに相当する部分グラフのうち,下ごしらえの部 分グラフa(gi0, fj0)を除いたものをh(g0i, fj)とし,その集合を Hj={h(gi, f0j)|g0i∈ G0fj∈ F}とする.集合をHjの中で 比較したときに,その中で最も多く出現した部分グラフを,レ シピ集合Rにおける食材fjの典型的な調理工程の系列とし た.次に,食材の種類ごとに,その食材の典型的な調理工程の 系列と,各レシピにおけるその食材の調理工程の系列部分グラ フとで,編集距離により相違度を計算する.さらに,食材ごと に各レシピの調理工程の系列の相違度cを正規化し,しきい値 θo以上であるものを,そのレシピの「調理工程の順序」と判断 する. ここで,編集コストは以下のように設定した. (1) ノードの挿入

(8)

表 4 各分類別の特徴抽出数とその再現率と適合率 提案手法 R 正解 A 正答 A ∩ R 再現率 適合率 食材の種類 103 125 84 0.67 0.82 下ごしらえ 15 22 12 0.55 0.80 調理工程の順序 16 17 11 0.65 0.69 総数 134 164 107 0.65 0.80 部分グラフh(g0i, fj)に「その他」以外のラベルを持った ノードを挿入する編集コストをci,「その他」のラベルを 持ったノードを挿入する編集コストをcOi とする. (2) ノードの削除 部分グラフh(gi, fj0 )から「その他」以外のラベルを持っ たノードを削除する編集コストをcd,「その他」のラベル を持ったノードを削除する編集コストをcO d とする. 次に「調理工程の順序」の特徴が含まれていると判断された レシピのうち,どの調理工程にその特徴が含まれているのかを 判断する.典型的な調理工程の系列に含まれていない調理工程 がそのレシピに含まれている場合は,そのレシピが他の多くの レシピとは異なる特徴であると考えられる.これは,編集距離 を計算する際に,削除されたノードの調理工程に相当する.ま た,典型的な調理工程に含まれている調理工程がそのレシピに 含まれていない場合は,その調理工程を実行せずに次の調理工 程に移っていることがそのレシピの特徴であると考えられる. これは,編集距離を計算する際に,挿入されたノードに接続さ れているノードの調理工程に相当する. 5. 5 抽出された特徴の評価 5.4.1節から5.4.3節において抽出される特徴を評価する.評 価には,4.2節で特徴分類を行ったレシピ集合4セットを用い, 正解データは4.2節において各レシピの特徴と判断された特 徴のうち,本研究で抽出を図った「食材の種類」「下ごしらえ」 「調理工程の順序」に分類された計164個とした.レシピ集合 4セットに対する予備実験により,各パラメータは,θLf = 0.2, θH f = 0.8, θp= 0.2, ci= 3, cOi = 1, cd= 3, cOd = 1, θo= 0.4, と設定し,本手法を適用することで特徴を抽出したところ,計 134個の特徴が抽出された.各分類別の抽出特徴数とその再現 率と適合率を表4に示す. 表4より,本研究で抽出を図った「食材の種類」「下ごしら え」「調理工程の順序」の3分類の特徴いずれでも再現率・適 合率ともに0.5を超えることができた.この再現率・適合率の 値は,レシピを見比べるという目的の上では,ユーザは各レシ ピの特徴の取捨選択を行うと思われるので,十分にレシピ見比 べの支援ができるものと考えられる.「下ごしらえ」の特徴の再 現率が低いのは,本手法が,下ごしらえ部分を適切に判定でき ていないことが原因と考えられる.「牛肉を塩を用いて下ごしら えする」という特徴は「下ごしらえ」の特徴であると考えられ るが,本手法ではこれらの食材を別々の特徴として抽出したた めに相違が生じた.また4.2節であげた7種類の特徴のうち, 本研究で対象としなかった残り4種類の特徴を抽出する手法を 提案することは今後の課題である.

6.

と め

本研究ではまず,レシピ検索では一般的なWeb検索に比べ, 上位の検索結果が選ばれにくく,複数のレシピを比較しやすい 提示方法に需要があることを調査により示した.そしてレシピ の比較には,検索結果で得たレシピ集合における典型的な調理 工程と,各レシピの特徴を提示することで解決できると考え, その2つの抽出を図った.特徴抽出に関しては,被験者が手動 で抽出した特徴を7種類に分類し,そのうち,出現頻度が高い, あるいは重要性が高いと判定された「食材の種類」「下ごしら え」「調理行程の順序」の3つの特徴を抽出する手法を提案し た.これらの特徴を,再現率は0.65,適合率は0.80で抽出す ることができた.レシピの比較に関しては十分に支援を行える 結果が得られたと考える.

本研究の一部は,文科省科研費基盤(A)「ウエブ検索の意図検 出と多元的検索意図指標にもとづく検索方式の研究」(24240013, 研究代表者:田中克己),および文科省科研費若手(B)「調理 をしながら調理法を説明した音声からのレシピテキストの自動 生成」(23700144,研究代表者:山肩洋子)によるものです.こ こに記して謝意を表します. [1] レシピ検索 No.1 /料理レシピ載せるなら クックパッド http://cookpad.com/ [2] 楽天レシピ: レシピを見つける,料理する,投稿する,みんなで 作る http://recipe.rakuten.co.jp/ [3] レシピ|レシピ大百科【AJINOMOTO PARK】 http://park.ajinomoto.co.jp/ [4] ネスレ バランスレシピ|簡単レシピがいっぱい! http://www.recipe.nestle.co.jp/ [5] Google レシピ検索 http://www.google.co.jp/landing/recipes/ [6] 浜田玲子, 井手一郎, 坂井修一, 田中英彦,“料理テキスト教 材にお ける調理手順の構造化 ”, 電子情報通信学会論文誌. D-II, 情報・ システム, II-パターン処理,Vol.85,No.1,pp.79-89,2002-01-01. [7] Shinsuke Mori,Tetsuro Sasada,Yoko Yamakata,Koichiro

Yoshino,“A Machine Learning Approach to Recipe Text Processing”,ECAI 2012,2012 [8] 苅米 志帆乃 , 藤井 敦,“料理レシピテキストを対象とした構造解 析の高精度化”, 電子情報通信学会技術研究報告 : 信学技報, 電 子情報通信学会,Vol.112,No.75,pp.43-48,2012-06-05 [9] 佃 洸摂, 中村 聡克, 山本 岳洋, 田中 史己,“オブジェクトの典型度 分析とその検索への応用”,Web とデータベースに関するフォー ラム WebDB Forum 2011,2011. [10] 岩本 純也, 宮森 恒,“調理の難易度を考慮したレシピ検索システ ムの提案”,DEIM Forum 2012 E1-3,2012.

[11] 上田 真由美, 高畑 麻理, 中島 伸介,“レシピ閲覧・摂食履歴を 用いた嗜好の抽出”,Web とデータベースに関するフォーラム WebDB Forum 2011,2011. [12] 森下 幸俊, 中村 富予,“気分による献立検索システムの検索軸の 評価とレシピを活用した食品販売機能の市場ニーズの評価 (デー タ工学)”, 電子情報通信学会技術研究報告 : 信学技報, 電子情報 通信学会,Vol.112,No.75,pp.79-84,2012.

[13] Bernard J. Jansena,Amanda Spinkb,Tefko Saracevic,“Information Processing and Management” Vol.36, 207-227,2000.

[14] たんし Ver. 1.1.0 表記揺れ辞書,http://tansi.sourceforge.jp [15] NICT-独立行政法人 情報通信研究機構 http://www.nict.go.jp

表 2 特徴の種類ごとの頻度と順位平均・分散 特徴の種類 出現回数 頻度 (%) 順位の平均 食材の種類 125 64.4 2.46 下ごしらえ 22 11.3 1.7 調理工程の順序 17 8.8 1.8 食材の量 10 5.2 2.1 調理工程単体 10 5.2 4.1 調理器具 7 4 4 テキスト表現による差異 3 2 4 全て 194 100 2.44 また,節 4
表 4 各分類別の特徴抽出数とその再現率と適合率 提案手法 R 正解 A 正答 A ∩ R 再現率 適合率 食材の種類 103 125 84 0.67 0.82 下ごしらえ 15 22 12 0.55 0.80 調理工程の順序 16 17 11 0.65 0.69 総数 134 164 107 0.65 0.80 部分グラフ h(g 0 i , f j ) に「その他」以外のラベルを持った ノードを挿入する編集コストを c i , 「その他」のラベルを 持ったノードを挿入する編集コストを c O i とする

参照

関連したドキュメント

1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月.

2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月.  過去の災害をもとにした福 島第一の作業安全に関する

4月 5月 6月 7月 8月 9月 10月 11月 12月 1月 2月 3月.

(1)  研究課題に関して、 資料を収集し、 実験、 測定、 調査、 実践を行い、 分析する能力を身につけて いる.

1月 2月 3月 4月 5月 6月 7月 8月 9月10月 11月 12月1月 2月 3月 4月 5月 6月 7月 8月 9月10月 11月 12月1月 2月 3月.

12月 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月.

2月 1月 12月 11月 10月 9月 8月 7月

4月 5月 6月 7月 8月 9月 10月 11月 12月 1月 2月