DEIM Forum 2016 E2-5

レシピ間の対応度と相違性に基づく料理アレンジナビゲーション
工藤 貴徳†

北山 大輔†† 工学院大学情報学部コンピュータ科学科 〒 163–8677 東京都新宿区西新宿 1-24-2
E-mail: †j110040@ns.kogakuin.ac.jp,kitayama@cc.kogakuin.ac.jp
あらましWeb 上には cookpad をはじめ，多くのレシピサイトがある．その中でもユーザ投稿型レシピサイトにはレシピが数多く投稿されており，投稿者によって様々なアレンジがされている．調理者のアレンジの幅を広げるために，閲覧中のレシピのある一部分の手順が異なる似たレシピを発見し，提示することが有用であると考えられる．本研究では，ユーザが選択したレシピを選択レシピ，対象となるレシピを対象レシピと定義する．選択レシピの手順とは異なる手順を持つレシピを発見し，その手順を提示する手法を提案する．具体的には，選択レシピと対象レシピの調理動作の順番に着目し手順の対応度を算出する．また，対応する手順を基に相違性を見つけ，相違性がある手順をアレンジと定める．選択レシピから分岐点を設けて別のアレンジレシピとして提示することでアレンジ料理へのナビゲーションを行う．
キーワード

レシピ，手順検索，順序関係

1. は じ め ににアレンジが含まれるとし，ナビゲーションの対象とする．著
者らの研究グループではレシピ手順の対応関係抽出 [4] に取り近年，cookpad [1] などを代表とするユーザ投稿型レシピサ組んでおり，本稿で定義する対応度はアレンジ抽出のために粒イトが普及しており，多くのレシピが投稿され利用されている．

度を細かく判定できるように [4] の手法を改良したものである．

2016 年 1 月現在，cookpad では 225 万件，楽天レシピ [2] では

材料に関しては手順を比較する時には調味料や野菜など表現に106 万件ものレシピがユーザによって投稿されている．

偏りがあるため使用しない．

マルハニチロホールディングスが行った「料理レシピに関す

本稿の構成は以下の通りである．2 節ではレシピの構造と関る調査」[3] によると，料理をする際レシピサイトを利用する人連研究を述べる．3 節では，レシピ手順の対応付け，アレンジが 72.2%と多い．料理レシピを利用する人の理由としては「何の抽出について述べる．4 節では本手法による出力例についてを作ろうか悩んでいる時」や「日頃作らないような料理を作る述べる．5 節では今後の課題について述べる．

時」「料理のレパートリーを広げたい時」が上位に上がっている．特に料理レシピを使った結果やアレンジ経験に関する設問
では「レシピに書いてある内容にアレンジを加えることが多い」が 53.4%となっており料理のアレンジに対する要求が高いと考えられる．

2. レシピの構造と関連研究
2. 1 レシピの構造本研究でで対象となるレシピは材料，手順，調理動作から構成される．材料はレシピ中に出現する材料リストに列挙された

投稿されているレシピは投稿したユーザによって様々なアレ食材であり，手順はレシピ投稿者によって分割された調理方法ンジがされており，例えば cookpad で「肉じゃが」と検索するである．手順の中には調理方法を説明する調理動作が含まれてと 7,980 件のレシピがヒットする．その中には定番の肉じゃがいる（図 1）本研究では調理方法の最小単位を調理動作であるのレシピもあれば，食材が異なる肉じゃがのレシピや余った肉とし，それを用いる．以下に調理動作を詳細に説明する．調理じゃがを使って別の料理を作っているレシピもある．このレシ

動作は基本動作と具体動作の 2 種類からなるように定義する．

ピを 1 件ずつ確認していき，どのような手順にアレンジがされ基本動作は以下の２つの基準により決定した．ているかを見つけることは非常に困難である．調理者のアレンジの幅を拡げるために 1 件のレシピだけを閲覧したままで他のレシピのアレンジされた手順が提示されれば調理者の手間が省け便利であると考えた．
本研究では，ユーザが選択したレシピを選択レシピ，対象と•書籍「おいしくなるコツが身につく！料理のきほん」[5]にある「切る」「焼く」「煮る」など調理をする時の動作•[5] に載っていないが cookpad に頻出する動作の原型

表 1 に基本動作をまとめる．cookpad から加えた基本動作には下線を引いてある．

なるレシピを対象レシピと呼ぶ．選択レシピに含まれる手順の具体動作は，以下の２つの基準により決定した

中にある調理動作の順番に着目し，対応付く調理動作にスコア•

基本動作の語幹が含まれている複合語．例えば，「せん切を付ける．このスコアを対応度とし，対応する調理動作を含むり」「蒸し焼き」「煮込む」や「20 分じっくり煮る」などの基本手順を対応する手順であると判断する．次に相違性に基づくア

動作に時間の名詞や副詞が係っている調理動作などである．こレンジの発見を行う．相違性の有無は手順の対応関係とそこにの際，係り受け解析器 cabocha [11] を使い文章の係り受けを関含まれる調理動作の関係によって判断する．相違性のある手順係に基づき抽出する．

手順１

手順２

図2
手順A
切る

手順３

盛り付け

選択レシピに出現する調理動作

手順B

手順C
炒める

みじん切り

図3

手順４

焼く

混ぜる

みじん切り

手順D
混ぜる

手順E
じっくり
焼く

手順F
煮込む

対象レシピに出現する調理動作いる．
志土地ら [9] はマルチメディア情報を用いて料理手順の補足をするための手法を提案している．
苅米ら [10] は既存研究をもとにレシピテキストの構造解析し，食材や調味料の調理過程を表すフローチャートを自動的に出力する手法を提案している．わかりやすいレシピ作成に取り組む
ためにわかりにくい箇所に補足する手法としてレーベンシュタ
イン距離を用いて調理動作の距離が小さいほど調理動作が類似しているとしている．
これらの研究とは，手順の対応付けを行うにあたり抽象レ
図1
表1

レシピ構造

ベルでの表現を用いる点は似ているが，本研究ではさらにアレ[5] と cookpad から参照した基本動作一覧
蒸す

切る

混ぜる

煮る

焼く

揚げる

炒める

和える

漬ける

茹でる

煎る

燻す

干す

凍らせる

ンジの発見に取り組む．

3. 提 案 手 法
3. 1 レシピ手順の対応付け
レシピの手順を比較する際にまず調理動作単位での対応付けを行う．その際，選択レシピと対象レシピに共通して出現する調理動作の対応度を算出する．このとき，共通して出現する動•基本動作が含まれていない「落し蓋」「フランベ」など

作は基本動作のレベルで同じ動作とする．例えば，選択レシピの特殊な呼び方がされている動作．これらは辞書を準備する．

において「みじん切り」，対象レシピにおいて「千切り」が出例外として，「ごまをする」などで使われる「する」に関して現する場合，両方とも基本動作が「切る」であるため，共通しは調理動作だけでなく一般動作にも該当してしまうため今回はて出現すると判断する．また，あるレシピの手順の中に同じ手除外する．

順が複数個かつ連続して存在する場合は 1 つとしてまとめる．

2. 2 関 連 研 究

このように緩やかに判断するため，まったく同じ具体動作が共レシピに関しての研究はこれまで様々な研究が行われている．

通する場合と基本動作レベルでのみ共通する場合では，対応の杉山ら [6] の研究では典型的な手順や各レシピが持つ特徴を知基礎点が異なると考えられる．そのため対応付けの基礎点は以りたい場合に，検索結果の各レシピの調理手順を「食材の種類」下の通りにする．

•同一の具体動作である場合：1.0

ピの多くが共有できる手順とレシピ間の差異を発見しその料理•

同一の基本動作であるが，片側が具体動作である場合：の典型的な調理手順と特徴をユーザに提示するシステムを提案

0.75「下ごしらえ」「調理工程の順序」の 3 つにより構造化し，レシ•同一の基本動作である場合：0.5

西原ら [7] は料理レシピを対象として手順のアウトラインの•同一の基本動作から派生した異なる具体動作である場要約する手法を提案している．教師あり学習を用いて手順の段合：0.25している．

階ごとに主要な動作表現を抽出し，それらを連結することでアウトラインの生成を行っている．

ある選択レシピと対象レシピを例に共通して出現する動作とその共通して出現する動作とその基礎点を説明する．図 2 の選

山肩ら [8] はレシピの調理手順文章から流れを表す作業フロー

択レシピの手順は「みじん切り」「混ぜる」「焼く」「盛り付け」を導入する手法を提案している．作業フローは基本的な流れにの 4 手順からなり，図 3 の対象レシピは「切る」「みじん切り」

注目すればツリー構造になることからレシピツリーと呼び，こ「炒める」「混ぜる」「じっくり焼く」「煮込む」の 6 手順からなのレシピツリーの活用法について議論されている．この研究でる．
「みじん切り」は基本動作の「切る」，「じっくり焼く」の基は調理手順のスケジュールやナビゲーションなどを目的として本動作は「焼く」であるため選択レシピと対象レシピはに共通

切る1(0.75)

e2

切る２(1.0)

切る1(0.75)

e4

1.25

焼く
(0.75)

混ぜる
(0.5)

1.5

e3

e1

混ぜる
(0.5)

図4切る２(1.0)

e5

1.75

図 5 エッジの重み付け

表 2 対応する調理動作の基礎点
対象レシピ

基礎点 表記

みじん切り

切る

0.75

みじん切り

みじん切り

混ぜる

混ぜる

焼く

じっくり焼く焼く(0.75)

1.25

選択レシピと対象レシピの順序関係からなる無向グラフ

選択レシピ

1.5

表 3 重み付けから計算した対応度
調理動作

グラフで接続しているエッジ 対応度切る１切る１e1×e2

1.87

1.0

切る２

切る２

e3×e4

2.62

0.5

混ぜる

混ぜる

max(e1,e3)×e5

1.56

0.75

焼く

焼く

max(e2,e4)×e5

2.18

表 4 更新したエッジの重み付けする調理動作は「切る」「混ぜる」「焼く」となる．これらを用

エッジ 対応している動作 エッジの重み

いて動作の対応付けを行う．選択レシピの「みじん切り」に対e1

切る１，混ぜる

3.43

する対応の候補としては対象レシピの「切る」「みじん切り」で

e2

切る１，焼く

4.05

ある．対応関係の候補をそれぞれ「切る１」「切る２」と表す．

e3

切る２，混ぜる

4.18

同様に選択レシピの「焼く」に対する対応の候補としては対象

e4

切る２，焼く

4.80

レシピの「じっくり焼く」である．以降，「焼く」と表す．動作

e5

混ぜる，焼く

3.40の基礎点は表 2 のようになる．

表 5 更新した重み付けから計算した対応度

調理動作の対応付けのアルゴリズムを説明する．まず，対象調理動作グラフで接続しているエッジ 対応度

レシピの調理動作と選択レシピの調理動作の対応関係の候補を切る１

e1×e2

13.89

ノードとしたグラフを作成する．この時，選択レシピの調理動

切る２e3×e4

20.06

作の手順の順序関係と，対象レシピの共通する調理動作の手順

混ぜる

max(e1,e3)×e5

14.21の順序関係を比較し逆順序にならないところにエッジを作る．

焼く

max(e2,e4)×e5

13.77

例えば図 2，図 3 の例では，図 2 では「みじん切り (切る)」よりの後に「混ぜる」．図 3 中では同様に「みじん切り（切る２）」よりも後に「混ぜる」が出現するため「切る２」から「混ぜる」

象レシピの手順は手順３となる．

3. 2 アレンジの抽出のエッジを作成する．このようにしてできた無向グラフが図 4

本稿ではアレンジを含む手順を以下のように定義する．

である．図 4 中の e1 等はエッジ番号である．次に図 4 のエッ（ 1 ） 対応する手順において選択レシピにある基本動作が対ジに重み付けを行う．エッジの重みは接続しているノードの表

象レシピでは具体動作である場合2 の基礎点を合計したものである．その結果を図 5 に示す．次（ 2 ） 対応する手順において選択レシピと対象レシピ共に違にノードの対応度は，ノードに接続しているエッジの重みを掛う具体動作の場合け合わせたものとする．ただし，同一の動作の候補があるもの（ 3 ） 対象レシピ中の対応しない手順において選択レシピには最大値を用いる．最終的に 2 度の反復計算を行い，対応度を出現しないの調理動作が含まれてる場合算出する．その後，全体の均値以上のノードを対応度を持つ候

定義に基づき手順に差があることを相違性とし，相違性があ補を採用する．ただし，このとき，同じ調理動作の候補が複数ればその手順はアレンジを含むと判断する．本手法では１，２ある時はエッジの最大値のものを採用する．最終的な重み付けの場合には，選択レシピ中に対応する手順からアレンジを含むの計算結果を表 4，対応度の計算結果を表 5 にまとめた．

手順へ遷移可能にする．３の場合は前後にある対応する手順か対応する調理動作を含む手順を対応する手順であると判定すら挿入する位置を判定し，選択レシピ中の該当位置に遷移可る．図 2，図 3 の例では計算結果より選択レシピの手順１，２能なポインタを作る．これらによってナビゲーションを可能とと対象レシピの手順２および，選択レシピ手順３に対応する対する．

表 6 手順の対応付けの実験結果
レシピA

CD

EFGH

L

M

N

適合率

0.78 0.80 0.33

00.75 0.50

00.33 0.50 0.40 0.40 0.50

1.00.50 0.50 0.49

再現率

1.000.75 0.17

00.20 0.40 0.33 0.40 0.60 0.25 0.17 0.50 0.43

B
1.00.75

表 7 アレンジの評価の実験結果
アレンジ

結果 (%)

アレンジ A50

アレンジ B53アレンジ C55

全体平均

53

I

JKO

平均

チゲ鍋

ピーマンの肉詰め

４と５の手順の間に一手間

X

１の手順中に一手間４の手順中に一手間

図 7 アレンジの評価の実験データの例

Yわれていなかった．被験者は動作の単語ごとの判断ではなく文章全体で調理動作と判断しており，これを解決するにはより深い意味解析を行う必要がある．今回のプロトタイプシステムで
図 6 対応付けの判断の実験データの例

は判定困難なレシピ D,G,H,J を除いた結果では適合率は 0.60，再現率は 0.54 となった．

4. 3 アレンジの評価に関する評価

4. 評価実験と考察評価実験として対応付けの判断とアレンジの評価を行った．

4. 1 実 験 方 法
cookpad より料理名が同じレシピ 2 件を 1 組とし，対応付けの判断の実験では 15 組，アレンジの評価では 3 組の実験データを作成し用いた．図 6 が対応付けの判断の実験で使用した例，
図 7 がアレンジの評価の実験で利用した例になる．15 組のデータセットに対し，被験者は複数回答可で 2 件のレシピ中に対応実験結果を表 7 にまとめる．結果としては，50%程度の精度でアレンジを提示できることがわかった．誤判定される例としては，レシピとは関係ない付け合わせであったり，アレンジとして対応づく箇所が不適切な場合であった．アレンジの抽出手法としては，レシピの料理に関係する手順であるかどうかの判定を行う必要がある．また対応づく箇所の問題は対応付け手法の問題であり，精度を向上させる必要がある．

5. まとめと今後の課題づくであろう手順を判断し，その理由も記述した．被験者は 1組のデータにつき 10 名づつである．その後，提案手法で対応付けられた手順と比較し，適合率と再現率を算出することで評価する．アレンジの評価として 3 組のデータセットに対し，被験者は提案手法によりアレンジと判断された手順が提示されたレシピを見て，3 段階で評価し，その理由も記述した．被験者
は 1 組のデータにつき 10 名づつである．

4. 2 対応付けの判断に関する評価算出した実験結果を表 6 にまとめる．結果としては，全体では適合率 0.49，再現率 0.43 という結果であった．レシピ D,Gの手順には調理動作として判断される単語が含まれておらず適本研究では料理レシピに含まれる調理動作の抽出し，動作の対応付けを行い，定義に基づいてアレンジである手順の候補を提示する手法を提案した．評価実験により違う動作の手順もアレンジだと判定されるのでアレンジの可能性があるとわかった．
今後の課題としては動作の対応づける部分の改善すること，動作の単語だけではなく前後の文節も含めて調理動作と判断できるように改善すること，今回は「ソテー」「落し蓋」などの具体動作を判断する具体動作辞書を導入していなかったので導入することがあげられる．

謝

辞合率，再現率共に 0 であった．これに関しては基本動作を拡充する．具体動作辞書を実装する．同義語を対応付けの候補とするなどの対処が必要であると考えられる．レシピ H,J のに関しては手順中に調理動作はあったが，動作の対応付けがうまく行本研究では、クックパッド株式会社と国立情報学研究所が提供する「クックパッドデータ」を利用した．本研究の一部は，
平成 27 年度科研費若手研究 (B)(課題番号：15K16091) によるものです．ここに記して謝意を表すものとします．

文

献[1] レ シ ピ 検 索 No.1/料 理 レ シ ピ 載 せ る な ら クック パッド
http://cookpad.com/[2] 楽天レシピ http://recipe.rakuten.co.jp/[3] マ ル ハ ニ チ ロ ホ ー ル ディン グ ス/料 理 に 関 す る 調 査
https://www.maruha-nichiro.co.jp/news center/research/pdf/20130227 recipe cyousa.pdf[4] 染谷侑希，北山大輔 レシピ手順の順序関係を用いた詳細度算
出手法 DEIM Forum 2015 C1-2
[5] 若松和紀，おいしくなるコツが身につく！料理のきほん，食のス
タジオ，西東社，2015 年 8 月 10 日発行[6] 杉山祐一，山肩洋子，田中克己 手順情報としてのレシピデータ
に対する類似レシピの要約と微小で重要な差異の発見 DEIM
Forum 2013 D3-5
[7] 西原弘真，苅米志帆乃，藤井敦 料理レシピを対象としたアウ
トライン型自動要約 情報処理学会研究報告 情報学基礎研究会
報告,vol.8,2013,pp1-7[8] 山肩洋子，門脇拓也，今堀慎治，森信介 調理レシピ手順文章から導出した作業フローの活用方法の検討 電子情報通信学会，
DE2015-34[9] 志土地由香，出口大輔，高橋友和，井手一郎，中村祐一，村瀬洋 料理レシピを分かりやすくするための理解困難な表現の補
足 電子情報通信学会,MVE2009-145[10] 苅米志帆乃，藤井敦 料理レシピテキストを対象とした構造分析の高精度化 電子情報通信学会技術研究報告，vol.112,no.75,pp.4348,2012.
[11] Taku Kudoh, Yuji Matsumoto (2000) Japanese DependencyAnalysis Based on Support Vector Machines,EMNLP/VLC
2000