(57)【要約】【課題】調理レシピから抽出した調理手順の記載内容を均一化すること。【解決手段】自然言語で記述された調理レシピを解析する手段（１０）と、前記解析結果に従って、調理の手順を抽出する手段（２１）と、前記調理手順に対応する細かい調理手順が登録されたデータベース（２４）と、調理レシピで明文化されていない調理手順であって、前記データベースに登録された調理手順を追加するように前記調理手順を展開する手段（２２）と、を備えた。【選択図】      図１
2008123131.tif 000002
【特許請求の範囲】
【請求項１】
自然言語で記述された調理レシピを解析する手段と、
前記解析結果に従って、調理の手順を抽出する手段と、
前記抽出した調理手順の下位概念の調理手順が登録されているデータベースと、
前記調理レシピで明文化されていない調理手順であって、前記データベースに登録された調理手順を参照して前記抽出した調理手順を展開する手段と、を具備することを特徴とする調理レシピ抽出装置。 
【請求項２】
前記データベースは、表形式又はオントロジー形式の展開データを含み、
前記展開手段は、前記調理レシピから抽出した調理手順を検索キーとして、抽出した調理手順を少なくとも１つの調理手順に展開することを特徴とする請求項１に記載の調理レシピ抽出装置。
【請求項３】
前記展開手段は、調理レシピから抽出した調理手順と展開した調理手順とが重複する調理手順を削除することを特徴とする請求項１又は請求項２に記載の調理レシピ抽出装置。 
【請求項４】
前記展開手段は、同じ調理器具を使用した調理手順が連続する場合は、不要な調理手順を削除することを特徴とする請求項１から請求項３のいずれか１項に記載の調理レシピ抽出装置。 
【請求項５】
前記展開手段は、前記データベースを参照して、調理レシピで明文化されていない調理手順の主語及び目的語の少なくとも一方を補充することを特徴とする請求項１に記載の調理レシピ抽出装置。
【請求項６】
調理機器の種類や数を登録した第２のデータベースと、
前記第２のデータベースを参照して、調理手順をメタデータフォーマットで出力する手段を更に具備し、
前記出力手段は、前記調理手順に対し、前記調理機器を自動制御するための制御情報を付加することを特徴とする請求項１から請求項５のいずれか１項に記載の調理レシピ抽出装置。
【請求項７】
調理機器の種類や数を登録した第２のデータベースと、
前記第２のデータベースを参照して、調理手順をメタデータフォーマットで出力する手段を更に具備し、
前記出力手段は、前記調理手順に対し、調理機器を自動制御するための調理機器を直接制御するための内部情報であるプロパティ値を付加することを特徴とする請求項１から請求項５のいずれか１項に記載の調理レシピ抽出装置。
【請求項８】
前記出力手段は、前記調理手順に対し、調理レシピの該当部分を強調表示させるための情報を付加することを特徴とする請求項６又は請求項７に記載の調理レシピ抽出装置。
【請求項９】
前記展開手段は、前記調理手順に対し、ユーザプロファイルに応じたスケジューリングを行うことを特徴とする請求項１から請求項８のいずれか１項に記載の調理レシピ抽出装置。 
【請求項１０】
調理手順の下位概念の調理手順が登録されているデータベースを用意し、
自然言語で記述された調理レシピを解析し、
前記解析結果に従って、調理の手順を抽出し、
調理レシピで明文化されていない調理手順であって、前記データベースに登録された調理手順を参照して前記抽出した調理手順を展開することと、を具備することを特徴とする調理レシピ抽出方法。
【請求項１１】
調理レシピから調理手順を抽出するコンピュータで実行可能な調理レシピ抽出プログラムにおいて、
コンピュータに自然言語で記述された調理レシピを解析させ、
コンピュータに前記解析結果に従って、調理の手順を抽出させ、
コンピュータに調理レシピで明文化されていない調理手順であって、前記抽出した調理手順の下位概念の調理手順が登録されているデータベースに登録された調理手順を参照して前記抽出した調理手順を展開させること、を具備することを特徴とする調理レシピ抽出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自然言語で記述された調理レシピから所望の調理手順を抽出する技術に関する。
【背景技術】
【０００２】
調理レシピから調理手順を抽出する技術として、レシピデータを解析して、レシピに使用される調理用具や材料、及び調理手順を抽出する調理ナビゲーション装置が提案されている（特許文献１：特開２００４−２９４８６４号公報）。  
この調理ナビゲーション装置では、調理手順を読み上げ文として抽出し、さらに待時間情報を取得して、ある調理手順が音声出力された時点から、その待時間で示される待時間の計時を開始し、待時間の計時の開始後に両手巡視レガ入力されずに当該待時間が経過したときに、自動的に次の調理手順を音声出力するようにしている。  
しかし、上記の文献では、単なるレシピデータの解析のみにとどまることから、レシピデータに記載された内容以外の、例えば詳細な内容まで調理手順として抽出することができない。従って、例えば、レシピデータが、中級者や上級者用のものであった場合には、初級者には、その調理手順が理解できないことになる。
【特許文献１】特開２００４−２９４８６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は、調理レシピから抽出した調理手順の記載内容を均一化することを目的とする。
【課題を解決するための手段】
【０００４】
本発明では、手順の分割法を記述した表やオントロジーなどの展開データベースを参照し、手順を手順に展開することで、手順に関する記述情報を均一化することを特徴とする。
【０００５】
本発明の局面に係る調理レシピ抽出装置は、自然言語で記述された調理レシピを解析する手段と、前記解析結果に従って、調理の手順を抽出する手段と、前記調理手順に対応する細かい調理手順が登録されたデータベースと、調理レシピで明文化されていない調理手順であって、前記データベースに登録された調理手順を追加するように前記調理手順を展開する手段と、を具備することを特徴とする。本発明は、装置に限らず、装置で実現される方法やプログラムの発明としても成立する。
【発明の効果】
【０００６】
本発明によれば、調理レシピから抽出した調理手順の記載内容を均一化することができる。
【発明を実施するための最良の形態】
【０００７】
図面を参照して本発明の実施の形態を説明する。図１は、本発明の一実施形態に係る調理レシピ抽出装置の概略構成を表すブロック図である。図１には、自然言語解析装置１０と、本実施形態に係る調理レシピ抽出装置２０と、調理手順命令装置３０とが記載されている。  
上記の構成において、自然言語解析装置１０は、調理レシピを解析する。ここで、「調理レシピ」は、自然言語で記述された文章であるものとする。自然言語解析装置１０は、この自然言語で記述された調理レシピを所定のフォーマットに変換する。なお、自然言語解析装置１０による解析は、従来使用されているもので行うことができるので、その詳細な説明は省略する。  
例えば、「揚げだし豆腐の野菜あんかけ」の調理レシピが、  
【表１】
2008123131.tif 000003
【０００８】
のように記述されている場合において、自然言語解析装置１０により、図２の下段に示すような解析結果が得られる。図２は自然言語解析装置１０の解析例を示す図である。図２に示すように、自然言語で記述された文章は形態素解析され、それぞれの係り受け関係が示されている。例えば、図２において、「水切りした豆腐を」という表現は、「水切りした」と「豆腐を」の２つの表現に分解されている。そして、「水切りした」という表現は、「水切り」という名詞と、「し」及び「た」という助動詞に分解される。また、「豆腐を」という表現は、「豆腐」という名詞と、「を」という助詞に分解される。このように、自然言語で記述されたレシピが、それぞれ言語要素に分解されて、そのレシピにおける調理手順が解析される。この解析結果が、調理レシピ抽出装置２０に出力されて、調理レシピ抽出装置２０により調理レシピが抽出され、調理レシピ抽出装置２０から調理レシピメタデータが出力される。  
調理手順命令装置３０は、調理レシピ抽出装置２０から出力された調理レシピメタデータを参照して、手順通りに使用可能な調理機器３１や人に対して手順の実行命令を出す。この調理手順命令装置３０は、例えば、テレビやステレオや調理機器が接続されたホームサーバの有する機能の一部であっても良い。これにより、例えば、あるレシピに従って、調理をしている場合になどにおいて、ＩＨクッキングヒーターで食材を所定時間加熱するといった場合などにおいて、調理者が何らかの操作を行う（例えば、加熱ボタンを押すなど）ことによって、ホームサーバに接続されたＩＨクッキングヒーターで所定時間食材を加熱することができる。
【０００９】
また、本実施形態に係る調理レシピ抽出装置２０は、手順データ抽出部２１と、展開データ処理部２２と、調理レシピメタデータ生成部２３と、調理手順展開データベース２４と調理機器データベース２５とを備えている。  
手順データ抽出部２１は、自然言語解析装置が行う形態素解析や係り受け解析処理の結果から、調理手順を抽出する。   
展開データ処理部２２は、調理手順展開データベース２４を参照し、手順を複数の手順に展開したり、重複した手順を削除したりする。調理手順展開データベース２４の具体例は後述する。  
調理レシピメタデータ生成部２３は、調理機器データベース２５を参照して調理手順をメタデータフォーマットで出力する。調理機器データベース２５は、調理レシピ抽出装置２０が導入された家庭や調理場などに備えられた鍋やフライパン等の調理器具、或いはＩＨクッキングヒーターやガスコンロなどの調理機器を登録したものであり、実際の調理に使用可能な調理機器が登録されている。なお、本明細書において、鍋やフライパン或いは包丁、まな板等の通常の調理に使用される器具は「調理器具」と称し、ＩＨクッキングヒーターやガスコンロ、或いは電子レンジやその他の機器は「調理機器」と称する。
【００１０】
上記のように構成された調理レシピ抽出装置２０の動作を、図３を参照して詳細に説明する。図３は、本発明の一実施形態に係る調理レシピ抽出装置２０の動作を示すフローチャートである。
【００１１】
まず、上記の図２で説明したような調理レシピの自然言語解析によって得られた解析結果に基づいて、手順データ抽出部２１は、調理の手順を示すデータ（以下、「手順データ」と称する。また、調理の手順を、単に「手順」と称する）を抽出する（ステップＳ１）。ここで、手順データ抽出部２１が調理レシピを解析して抽出する調理の手順は、調理の作業手順を示す主語、述語、及び目的語で構成されるものとする。例えば、手順データ抽出部２１で抽出された手順データは、図４に示すように構成される。具体的には、図２に示すような「水切りした豆腐を６つ切りにして片栗粉をまぶす」というレシピについては、  
【表２】
2008123131.tif 000004
【００１２】
という３つの手順データとして、表されることになる。このように抽出された手順データは、展開データ処理部２２に出力されて、調理手順展開データベース２４を参照して、手順が複数の手順に展開されたり、重複した手順が削除されたりする。
【００１３】
まず、展開データ処理部２２では、手順の展開が可能かどうか調理手順展開データベース２４を参照して判定する（ステップＳ２）。手順の展開ができない場合には（ステップＳ２のＮＯ）、ステップＳ４に処理を進める。ステップＳ２において、手順の展開が可能であれば（ステップＳ２のＹＥＳ）、調理手順展開データベース２４を参照して手順の展開を行う（ステップＳ３）。この調理手順展開データベース２４は、表形式或いはオントロジー形式で与えることが好ましい。表形式及びオントロジー形式で与えられた展開データ例を図５及び図６に示す。図５は、表形式の展開データ例を示す図である。図６は、オントロジー形式の展開データ例を示す図である。
【００１４】
図５の表形式の展開データ例では、展開データとして、（ａ）手順データと、（ｂ）調理機器データとが登録されている。  
手順データには、「手順名」、「上位手順名」、「手順１」「手順２」、・・・が定義されている。例えば、「煮る」という手順を参照すると、「煮詰める」と「煮込む」という手順があることが定義されている。また、「煮る」の上位手順は、「加熱」という手順があり、「加熱」という手順には、「煮る」の他に「揚げる」という手順があることが定義されている。更に、この手順データにおいて、「煮る」という手順には、手順１〜手順５が定義されており、「鍋に食材を入れる」、「火をつける」、「指定時間まで煮る」、「火を止める」及び「食材を取り出す」が手順１〜手順５として与えられている。  
次に、調理機器データについては、「コンロＡ」と「コンロＢ」とを有する「ＩＨクッキングヒーター」が例示されており、ＩＨクッキングヒーターによる調理手順として、「揚げる」が例示されており、そのときの、設定として、「揚げる」、「天ぷらキー」、「油量」、「油温度」及び「揚げ時間」の設定１〜設定５が定義されている。
【００１５】
図６のオントロジー形式の展開データ例では、各調理手順と調理機器が階層形式等の階層構造で与えられている。この展開データ例では、「手順」から「切る」と「加熱」が定義され、それぞれ、「切る」と「加熱」に対する手順が定義されている。また、「加熱」から「煮る」と「揚げる」が定義されており、それぞれ同様にその手順が定義されている。また、本展開データ例では、手順である「揚げる」と、調理機器である「ＩＨクッキングヒーター」が関連づけられており、「ＩＨクッキングヒーター」についての詳細な、機能等が定義されている。
【００１６】
なお、図５或いは図６に示すような展開データは、予め用意されており、調理機器の追加などによって適宜更新される。
【００１７】
図７を参照して、手順の展開例を説明する。図７は、展開データ処理部２２における手順の展開例を示す図である。図７では、手順データ抽出部２１の結果を利用して、調理レシピにおいて明文化されていない手順１−９−ｆと１−９−ｇを補う例を示している。
【００１８】
図７において、揚げ物をする時に、手順１−８の後に、油の温度が充分に上昇したことを確認してから、豆腐を鍋に入れて手順１−９を実行する必要がある。しかし、油の温度が上昇するまで待つこと、調理する食材を鍋に入れることは常識であるため調理レシピに明文化されていない。そこで、図５や図６の「揚げる」手順に対する展開データを参照して、必要な手順を補う。具体的には、  
【表３】
2008123131.tif 000005
【００１９】
という手順は、具体的には、  
【表４】
2008123131.tif 000006
【００２０】
と展開される。この展開後のデータを参照して、手順を補うことになる。ここで、手順１−９−ａ〜１−９−ｅ、１−９−ｈ〜１−９−ｊは、それぞれ、手順１−４〜１−８、１−１０、１−１１と重複するため削除（又は、置き換えを）する。これにより、最終的に、手順１−９−ｆと１−９−ｇが追加されたレシピができることになる。
【００２１】
上記のように手順を展開すると、次に、手順の重複があるかどうか判定し（ステップＳ４）重複した手順がなければ、ステップＳ６に処理を進める。ステップＳ４において、手順の重複がある場合には、重複する手順を削除する処理を実行する（ステップＳ５）。具体例を、図８を参照して説明する。図８は、手順が連続する場合における不要な手順を削除する例を示す図である。図８の（ａ）に示すような  
【表５】
2008123131.tif 000007
【００２２】
という手順があった場合において、２−２及び２−３で示された手順は、以下のように展開できる。
【００２３】
まず、  
【表６】
2008123131.tif 000008
【００２４】
という手順は、  
【表７】
2008123131.tif 000009
【００２５】
という３つの手順に展開できる。
【００２６】
また、  
【表８】
2008123131.tif 000010
【００２７】
という手順は、  
【表９】
2008123131.tif 000011
【００２８】
という手順に展開できる。
【００２９】
ここで、手順２−２と２−３は、連続する「煮る」手順であるため、「食材」を鍋から取り出して（手順２−２−ｃ）、再び「食材」を鍋に入れる（手順２−３−ａ）という手順を行わなくても良い。従って、この連続した手順２−２−ｃと２−３−ａとを削除する。これにより、図８の（ｃ）で示すような、手順が抽出できる。
【００３０】
ステップＳ７における不要な手順の削除が終了したら、リソースの展開が可能かどうか判定し（ステップＳ８）、リソースの展開が可能でなければステップＳ１０に処理を進める。ここで、リソースの展開が可能であれば、リソースの展開を行う（ステップＳ９）。  
図９は、リソースの展開例を示す図である。このリソースの展開は、手順の内容に応じて、手順の主語、述語、目的語を展開して、手順を実行するために必要なリソース（人や調理器具、調理機器、食材）を補うために行うものである。
【００３１】
例えば、図９（ａ）に示すように、「水切りした  豆腐を  ６つ切りにして  片栗粉をまぶす」という手順において、図９（ｂ）に示すような  
【表１０】
2008123131.tif 000012
【００３２】
という手順が得られている場合に、１−２の表現では、リソースが明確にされていないので、「豆腐を  ６つ切りにする」のが、何を使って行うのかわからない。
【００３３】
そこで、展開データ処理部２２は、調理手順展開データベース２４を参照して、図９（ｃ）に示すように、例えば、「６つ切りにする」という述語から、「人が、包丁で」というリソースを補い、「煮る」という述語から「ＩＨクッキングヒーターが、鍋で」というリソースを補う。これにより、図９（ｄ）に示すような、  
【表１１】
2008123131.tif 000013
【００３４】
という手順が抽出される。
【００３５】
上記のように、リソースの展開が終了したら、調理レシピメタデータ生成部２３は、調理機器データベース２５を参照して、調理レシピメタデータを生成して、実際の調理が手順通りにできるようなデータを調理手順命令装置３０に出力する（ステップＳ１０）。この場合において、調理レシピメタデータには、例えば、以下のような情報が追加されることが好ましい。  
（１）  調理レシピから抽出した、例えば、ＩＨクッキングヒーターの温度や加熱時間などの調理機器を自動制御するための情報。例えば、ユーザがハイスペックのＩＨクッキングヒーターを所有する場合は、その機器を用いるようにするような情報。  
（２）調理機器の制御コマンドを含む調理機器を自動制御するためのプロパティ値であって、調理機器を直接制御するための内部情報。  
（３）調理レシピの該当部分を強調表示（例えば、反転、ブリンク、色の変化など）するためのテキストやオフセット値などの情報。
【００３６】
上記のように、本実施形態によれば、調理レシピに記載されていない調理手順であって、上級者や中級者にとって常識と思われるような手順を、調理手順展開データベース２４を参照して、追加するようにしているので、調理レシピから抽出した調理手順の記載内容を均一化することができる。
【００３７】
上記の実施形態では、調理手順展開データベース２４を参照して、自然言語で記述された調理レシピを展開して、細かい調理手順を作成する例を説明したが、調理レシピ抽出装置２０で、手順を展開する際に、図示しないユーザプロファイルを参照して、手順を展開することが好ましい。図１０は、ユーザプロファイルの例を示す図である。  
図１０（ａ）は、家族データの例であり、図１０（ｂ）は、個人データの例である。家族データとして、４人家族の場合に、夫が調理をする場合には、調理習熟度が「初心者」であることを考慮して、調理法の詳細な手順に対する説明を付加した調理手順を提示することが好ましい。また、健康管理において、「高血圧」とい項目から、血圧を下げるような調理手順を提示することが好ましい。  
また、調理習熟度が「中級者」や「上級者」では、詳細な説明が不要であるので、概略の手順のみを提示し、詳細な説明が省略された調理手順を提示するようにしても良い。なお、ユーザプロファイルに、調理履歴を記録しておいて、以前に同じ調理法を行ったことがある場合は、次回の詳細な説明は不要と判断して、詳細な説明を省略した調理手順を提示するようにしても良い。
【００３８】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００３９】
【図１】本発明の一実施形態に係る調理レシピ抽出装置の概略構成を表すブロック図である。
【図２】自然言語解析装置１０の解析例を示す図である。
【図３】本発明の一実施形態に係る調理レシピ抽出装置２０の動作を示すフローチャートである。
【図４】手順データ抽出部２１で抽出された手順データの一例を示す図である。
【図５】表形式の展開データ例を示す図である。
【図６】オントロジー形式の展開データ例を示す図である。
【図７】展開データ処理部２２における手順の展開例を示す図である。
【図８】手順が連続する場合における不要な手順を削除する例を示す図である。
【図９】リソースの展開例を示す図である。
【図１０】ユーザプロファイルの例を示す図である。
【符号の説明】
【００４０】
１０…自然言語解析装置
２０…調理レシピ抽出装置
２１…手順データ抽出部
２２…展開データ処理部
２３…調理レシピメタデータ生成部
２４…調理手順展開データベース
２５…調理機器データベース
３０…調理手順命令装置
３１…調理機器
【図１】
2008123131.tif 000014
【図２】
2008123131.tif 000015
【図３】
2008123131.tif 000016
【図４】
2008123131.tif 000017
【図５】
2008123131.tif 000018
【図６】
2008123131.tif 000019
【図７】
2008123131.tif 000020
【図８】
2008123131.tif 000021
【図９】
2008123131.tif 000022
【図１０】
2008123131.tif 000023