(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-31
(45)【発行日】2022-11-09
(54)【発明の名称】サーバの制御方法、サーバ、およびサーバの制御プログラム
(51)【国際特許分類】
G06F 40/186 20200101AFI20221101BHJP
G06F 40/157 20200101ALI20221101BHJP
G06F 40/16 20200101ALI20221101BHJP
【FI】
G06F40/186
G06F40/157
G06F40/16
(21)【出願番号】P 2019027334
(22)【出願日】2019-02-19
【審査請求日】2021-11-10
(73)【特許権者】
【識別番号】500175565
【氏名又は名称】株式会社ぐるなび
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100114018
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100180806
【氏名又は名称】三浦 剛
(74)【代理人】
【識別番号】100122116
【氏名又は名称】井上 浩二
(72)【発明者】
【氏名】大久 敬
【審査官】成瀬 博之
(56)【参考文献】
【文献】特開平10-320388(JP,A)
【文献】特開2017-016558(JP,A)
【文献】特開2000-242637(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00-40/58
G06F 16/00-16/958
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
記憶部および端末と接続可能なサーバの制御方法であって、
前記記憶部には、
1以上の用語で構成される複数の可変要素を含むテンプレートが規定されるテンプレートマスタと、
複数の前記用語ごとに、他の各用語との概念の類似度合いに基づく他の各用語との関連度を関連づける用語マスタと、が記憶され、
前記サーバが、
前記端末からの要求に応じて前記テンプレートマスタに規定された前記テンプレートを前記端末に送信し、
前記テンプレートに含まれる前記可変要素を置き換えるための追加用語を前記端末から受信し、
前記テンプレートに含まれる複数の前記可変要素のうち、前記用語マスタにおいて、受信した前記追加用語との関連度が大きい可変要素を置換候補可変要素として特定し、
前記テンプレートに含まれる前記置換候補可変要素を前記追加用語で置き換えることにより置換テンプレートを生成し、
生成された前記置換テンプレートを前記端末に送信する、
ことを含むサーバの制御方法。
【請求項2】
前記関連度は、前記複数の用語ごとに、概念の類似度合いに基づいて他の各用語を並べたときの順位に応じて定められる値である、請求項1に記載の制御方法。
【請求項3】
前記関連度は、前記複数の用語ごとに、他の各用語との概念における距離に応じて定められる値である、請求項1に記載の制御方法。
【請求項4】
前記用語マスタは、複数の前記用語を概念の類似度合いに基づいて定められるグループである複数のカテゴリと関連づけており、
前記サーバは、前記特定において、前記追加用語が関連づけられるカテゴリと同一のカテゴリに関連づけられる可変要素を、前記追加用語が関連づけられるカテゴリと同一のカテゴリに関連づけられない可変要素よりも前記追加用語との関連度が大きい可変要素と判定する、請求項1に記載の制御方法。
【請求項5】
前記サーバは、前記特定において、前記追加用語が関連づけられるカテゴリのうち、より多くのカテゴリに関連づけられる可変要素を、前記追加用語との関連度がより大きい可変要素と判定する、請求項4に記載の制御方法。
【請求項6】
前記用語マスタにおいて、複数の前記カテゴリは、ツリー構造を形成する2以上の階層のうちいずれかの階層に位置づけられている、請求項4に記載の制御方法。
【請求項7】
前記サーバは、前記特定において、前記追加用語が関連づけられるカテゴリの上位または下位の階層に位置づけられたカテゴリに関連づけられる可変要素を、その他のカテゴリに関連づけられる可変要素よりも前記追加用語との関連度が大きいと判定する、請求項6に記載の制御方法。
【請求項8】
前記サーバは、前記特定において、前記追加用語が関連づけられるカテゴリからたどったときの階層の数が少ないカテゴリに関連づけられる可変要素ほど、前記追加用語との関連度が大きいと判定することを特徴とする、請求項6に記載の制御方法。
【請求項9】
前記サーバは、
複数の前記置換候補可変要素を特定し、複数の前記置換候補可変要素のそれぞれを前記追加用語によって置き換えた前記置換テンプレートを複数生成し、生成した複数の前記置換テンプレートを前記端末に送信し、
前記複数の置換テンプレートのうちいずれか1つに対応する置換候補可変要素選択情報を前記端末から受信し、
受信した前記置換候補可変要素選択情報に基づいて、前記置換候補可変要素選択情報に対応する用語と前記追加用語との関連度を変動させる、請求項1ないし8のいずれか一項に記載の制御方法。
【請求項10】
記憶部および端末と接続可能なサーバであって、
前記記憶部には、
複数の用語を可変要素として含むテンプレートが規定されるテンプレートマスタと、
複数の前記用語ごとに、他の各用語との概念の類似度合いに基づく他の用語の関連度を関連づける用語マスタと、が記憶され、
前記端末からの要求に応じて前記テンプレートマスタに規定された前記テンプレートを前記端末に送信するテンプレート送信部と、
前記テンプレートに含まれる前記可変要素を置き換えるための追加用語を前記端末から受信する追加用語受信部と、
前記テンプレートに含まれる複数の前記可変要素のうち、前記用語マスタにおいて、受信した前記追加用語との関連度が大きい可変要素を置換候補可変要素として特定する置換候補可変要素特定部と、
前記テンプレートに含まれる前記置換候補可変要素を前記追加用語で置き換えることにより置換テンプレートを生成する置換テンプレート生成部と、
生成された前記置換テンプレートを前記端末に送信する置換テンプレート送信部と、
を備えるサーバ。
【請求項11】
記憶部および端末と接続可能なサーバの制御プログラムであって、
前記記憶部には、
複数の用語を可変要素として含むテンプレートが規定されるテンプレートマスタと、
複数の前記用語ごとに、他の各用語との概念の類似度合いに基づく他の各用語の関連度を関連づける用語マスタと、が記憶され、
前記サーバに、
前記端末からの要求に応じて前記テンプレートマスタに規定された前記テンプレートを前記端末に送信し、
前記テンプレートに含まれる前記可変要素を置き換えるための追加用語を前記端末から受信し、
前記テンプレートに含まれる複数の前記可変要素のうち、前記用語マスタにおいて、受信した前記追加用語との関連度が大きい可変要素を置換候補可変要素として特定し、
前記テンプレートに含まれる前記置換候補可変要素を前記追加用語で置き換えることにより置換テンプレートを生成し、
生成された前記置換テンプレートを前記端末に送信する、
処理を実行させることを特徴とするサーバの制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバの制御方法、サーバ、およびサーバの制御プログラムに関する。
【背景技術】
【0002】
飲食店を利用する外国人に向けて、飲食店が自店舗におけるメニューを外国語で提供するために、外国語でのメニュー名称を容易に生成可能にするメニュー生成システムが知られている。
【0003】
例えば、特許文献1には、ジャンル・食材・調味料を選択することでメニューを指定し、指定されたジャンル・食材・調味料に対応する外国語名称を組み合わせることにより、外国語で正確に表記されたメニュー属性の文字情報を提供することが記載されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に例示されるメニュー生成システムにおいて、記憶されているテンプレートの一部を可変要素として定義しておき、この可変要素を置き換えることにより、新たなメニュー名またはメニュー説明文の翻訳を作成できる場合がある。例えば、メニュー名「ビーフステーキ」に対応する説明文のテンプレート「厚切りの牛肉を焼いた料理」において、「牛肉」が可変要素として定義されているとする。このテンプレートの可変要素「牛肉」を「アグー豚」に変更することにより、説明文「厚切りのアグー豚を焼いた料理」を生成することができる。
【0006】
しかし、例えばメニュー名「しゃぶしゃぶ」に対応する説明文のテンプレート「薄切りの肉や魚を熱湯や出汁にさっとくぐらせて、タレをつけて食べる料理」において、「肉や魚」および「熱湯や出汁」が可変要素として定義されているとする。このとき、単に「アグー豚」という用語を追加するだけでは、複数定義された可変要素のうちいずれを変更すればよいかをメニュー生成システムは適切に判定することができない。
【0007】
そこで、本発明では、ユーザが指定する追加用語に基づいてテンプレートから適切に生成された置換テンプレートをユーザに提供することができるサーバの制御方法、サーバ、およびサーバの制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明にかかるサーバの制御方法は、記憶部および端末と接続可能なサーバの制御方法であって、記憶部には、1以上の用語で構成される複数の可変要素を含むテンプレートが規定されるテンプレートマスタと、複数の用語ごとに、他の各用語との概念の類似度合いに基づく他の各用語との関連度を関連づける用語マスタと、が記憶され、サーバが、端末からの要求に応じてテンプレートマスタに規定されたテンプレートを端末に送信し、テンプレートに含まれる可変要素を置き換えるための追加用語を端末から受信し、テンプレートに含まれる複数の可変要素のうち、用語マスタにおいて、受信した追加用語との関連度が大きい可変要素を置換候補可変要素として特定し、テンプレートに含まれる置換候補可変要素を追加用語で置き換えることにより置換テンプレートを生成し、生成された置換テンプレートを端末に送信する、ことを含む。
【0009】
また、本発明にかかる制御方法では、関連度は、複数の用語ごとに、概念の類似度合いに基づいて他の各用語を並べたときの順位に応じて定められる値であることが好ましい。
【0010】
また、本発明にかかる制御方法では、関連度は、複数の用語ごとに、他の各用語との概念における距離に応じて定められる値であることが好ましい。
【0011】
また、本発明にかかる制御方法では、用語マスタは、複数の用語を概念の類似度合いに基づいて定められるグループである複数のカテゴリと関連づけており、サーバは、特定において、追加用語が関連づけられるカテゴリと同一のカテゴリに関連づけられる可変要素を、追加用語が関連づけられるカテゴリと同一のカテゴリに関連づけられない可変要素よりも追加用語との関連度が大きい可変要素と判定することが好ましい。
【0012】
また、本発明にかかる制御方法では、サーバは、特定において、追加用語が関連づけられるカテゴリのうち、より多くのカテゴリに関連づけられる可変要素を、追加用語との関連度がより大きい可変要素と判定することが好ましい。
【0013】
また、本発明にかかる制御方法では、用語マスタにおいて、複数のカテゴリは、ツリー構造を形成する2以上の階層のうちいずれかの階層に位置づけられていることが好ましい。
【0014】
また、本発明にかかる制御方法では、サーバは、特定において、追加用語が関連づけられるカテゴリの上位または下位の階層に位置づけられたカテゴリに関連づけられる可変要素を、その他のカテゴリに関連づけられる可変要素よりも追加用語との関連度が大きいと判定することが好ましい。
【0015】
また、本発明にかかる制御方法では、サーバは、特定において、追加用語が関連づけられるカテゴリからたどったときの階層の数が少ないカテゴリに関連づけられる可変要素ほど、追加用語との関連度が大きいと判定することが好ましい。
【0016】
また、本発明にかかる制御方法では、サーバは、複数の置換候補可変要素を特定し、複数の置換候補変換要素のそれぞれを追加用語によって置き換えた置換テンプレートを複数生成し、生成した複数の置換テンプレートを端末に送信し、複数の置換テンプレートのうちいずれか1つに対応する置換候補可変要素選択情報を端末から受信し、受信した置換候補可変要素選択情報に基づいて、置換候補可変要素選択情報に対応する用語と追加用語との関連度を変動させることが好ましい。
【0017】
本発明にかかるサーバは、記憶部および端末と接続可能なサーバであって、記憶部には、複数の用語を可変要素として含むテンプレートが規定されるテンプレートマスタと、複数の用語ごとに、他の各用語との概念の類似度合いに基づく他の用語の関連度を関連づける用語マスタと、が記憶され、端末からの要求に応じてテンプレートマスタに規定されたテンプレートを端末に送信するテンプレート送信部と、テンプレートに含まれる可変要素を置き換えるための追加用語を端末から受信する追加用語受信部と、テンプレートに含まれる複数の可変要素のうち、用語マスタにおいて、受信した追加用語との関連度が大きい可変要素を置換候補可変要素として特定する置換候補可変要素特定部と、テンプレートに含まれる置換候補可変要素を追加用語で置き換えることにより置換テンプレートを生成する置換テンプレート生成部と、生成された置換テンプレートを端末に送信する置換テンプレート送信部と、を備える。
【0018】
本発明にかかるサーバの制御プログラムは、記憶部および端末と接続可能なサーバの制御プログラムであって、記憶部には、複数の用語を可変要素として含むテンプレートが規定されるテンプレートマスタと、複数の用語ごとに、他の各用語との概念の類似度合いに基づく他の各用語の関連度を関連づける用語マスタと、が記憶され、サーバに、端末からの要求に応じてテンプレートマスタに規定されたテンプレートを端末に送信し、テンプレートに含まれる可変要素を置き換えるための追加用語を端末から受信し、テンプレートに含まれる複数の可変要素のうち、用語マスタにおいて、受信した追加用語との関連度が大きい可変要素を置換候補可変要素として特定し、テンプレートに含まれる置換候補可変要素を追加用語で置き換えることにより置換テンプレートを生成し、生成された置換テンプレートを端末に送信する、処理を実行させる。
【発明の効果】
【0019】
本発明によると、ユーザが指定する追加用語に基づいてテンプレートから適切に生成された置換テンプレートをユーザに提供するようサーバを制御することができる。
【図面の簡単な説明】
【0020】
【
図1】メニュー生成システムの動作概要を示す模式図である。
【
図2】メニュー生成システムの概略構成を示す模式図である。
【
図4】ストレージ装置の概略構成を示す模式図である。
【
図7】用語マスタにおける用語とカテゴリとの関連付けの例を示す図である。
【
図11】置換テンプレート表示画面の例を示す図である。
【
図12】メニュー生成システムの動作シーケンス図である。
【発明を実施するための形態】
【0021】
以下、図面を参照してサーバの制御方法、サーバおよびサーバの制御プログラムについて詳細に説明する。ただし、本発明は図面または以下に記載される実施形態には限定されないことを理解されたい。
【0022】
本開示のメニュー生成システムにおいて、サーバは、1以上の用語で構成される複数の可変要素を含むテンプレートを端末に送信する。端末は、テンプレートを参照したユーザから追加用語の入力を受け付け、追加用語をサーバに送信する。サーバは、端末から追加用語を受信すると、テンプレートに含まれる複数の可変要素から置換候補可変要素を特定する。そして、サーバは、置換候補可変要素を追加用語で置き換えることにより置換テンプレートを生成し、端末に送信する。これにより、本開示のメニュー生成システムは、ユーザが指定する追加用語に基づいてテンプレートから適切に生成された置換テンプレートをユーザに提供することができる。
【0023】
図1は、メニュー生成システム1の動作概要を示す模式図である。
【0024】
メニュー生成システム1は、サーバ2と、ストレージ装置3と、端末4と、ネットワーク5とを有する。メニュー生成システム1において、サーバ2は、ストレージ装置3と接続され、端末4とネットワーク5を介して接続される。
【0025】
サーバ2に接続されるストレージ装置3には、テンプレートマスタおよび用語マスタが記憶されている。テンプレートマスタは、1以上の用語で構成される複数の可変要素を含むテンプレートが規定する。用語マスタは、複数の用語ごとに、他の各用語との概念の類似度合いに基づく他の各用語との関連度を関連づける。
【0026】
本明細書において、テンプレートは、料理の説明文である。料理の説明文には、料理の食材、調味料、調理方法といった要素が含まれる。これらの要素を他の用語で置き換えることにより、既存のテンプレートに基づいて新たな料理の説明文を生成することができる。
【0027】
サーバ2は、まず、テンプレートを端末4に送信する。サーバ2は、端末4から受信したテンプレート送信要求に応じてテンプレートを端末に送信してよい。
図1の例では、サーバ2は、テンプレートとして、「薄切りの[肉や魚]を[熱湯や出汁]にさっとくぐらせて、タレをつけて食べる料理」を端末4に送信する。このテンプレートは、2つの可変要素[肉や魚]および[熱湯や出汁]を含んでいる。
【0028】
テンプレートを受信した端末4は、追加用語指定画面100を表示し、ユーザによる追加用語の入力を受け付ける。
図1の例では、追加用語「アグー豚」を入力したユーザが送信ボタンを操作することにより、端末4は追加用語「アグー豚」をサーバ2に送信する。
【0029】
サーバ2は、追加用語を受信した場合、テンプレートに含まれる可変要素のうち、用語マスタにおいて、受信した追加用語との関連度が大きい可変要素を置換候補可変要素として特定する。
図1の例では、用語マスタにおいて、追加用語「アグー豚」と可変要素「肉や魚」との関連度は90であり、追加用語「アグー豚」と可変要素「熱湯や出汁」との関連度は20である。なお、
図1の例において、関連度は0から100までの数値であり、関連度の数値が大きいことは関連が強いことを表わしている。追加用語「アグー豚」と可変要素「肉や魚」との関連度は、追加用語「アグー豚」と可変要素「熱湯や出汁」との関連度よりも大きいため、可変要素「肉や魚」が置換候補可変要素として特定される。
【0030】
次に、サーバ2は、テンプレートに含まれる置換候補可変要素を追加用語で置き換え、置換テンプレートを生成する。
図1の例では、サーバ2は、テンプレート「薄切りの[肉や魚]を[熱湯や出汁]にさっとくぐらせて、タレをつけて食べる料理」における置換候補可変要素「肉や魚」を追加用語「アグー豚」で置き換える。これにより、置換テンプレート「薄切りのアグー豚を熱湯や出汁にさっとくぐらせて、タレをつけて食べる料理」が生成される。
【0031】
サーバ2は、生成された置換テンプレートを端末4に送信する。置換テンプレートを受信した端末4は、置換テンプレートを表示する。
【0032】
このように、本実施形態にかかるサーバ2を含むメニュー生成システム1は、ユーザが指定する追加用語に基づいてテンプレートから適切に生成された置換テンプレートをユーザに提供することができる。
【0033】
図2は、メニュー生成システム1の概略構成を示す模式図である。
【0034】
メニュー生成システム1は、サーバ2と、ストレージ装置3と、端末4と、ネットワーク5とを有する。メニュー生成システム1において、サーバ2は、ストレージ装置3と接続され、端末4とネットワーク5を介して接続される。
【0035】
ネットワーク5は、サーバ2と端末4とを通信可能に接続する。ネットワーク5は、例えばTCP/IP(Transport Control Protocol / Internet Protocol)による通信が行われるインターネットである。ネットワーク5により通信する機器は、有線または無線によって接続される。無線による接続は、例えばIEEE(The Institute of Electrical and Electronics Engineers)802.11acなどの無線LAN(Local Area Network)接続であってよい。無線による接続は、また、4G(4th Generation)回線などの無線WAN(Wide Area Network)接続であってよい。
【0036】
【0037】
サーバ2は、ストレージ装置3および端末4と接続し、端末4から受信する追加用語に基づいて置換テンプレートを生成し、端末4に送信する。そのために、サーバ2は、サーバ通信部21と、サーバ記憶部22と、サーバ処理部23とを備える。
【0038】
サーバ通信部21は、サーバ2をネットワーク5に接続するための通信インタフェース回路を有する。サーバ通信部21は、端末4から受信したデータをサーバ処理部23に供給する。また、サーバ通信部21は、サーバ処理部23から供給されたデータを端末4等に送信する。
【0039】
サーバ記憶部22は、例えば、半導体メモリ、磁気ディスク装置および光ディスク装置のうちの少なくとも1つを有する。サーバ記憶部22は、サーバ処理部23による処理に用いられるドライバプログラム、オペレーティングシステムプログラム、アプリケーションプログラム、データ等を記憶する。例えば、サーバ記憶部22は、ドライバプログラムとして、サーバ通信部21を制御する通信デバイスドライバプログラム等を記憶する。各種プログラムは、コンピュータ読み取り可能な可搬型記録媒体から、公知のセットアッププログラム等を用いてサーバ記憶部22にインストールされてよい。コンピュータ読み取り可能な可搬型記録媒体とは、例えばCD-ROM(Compact Disc Read-Only Memory)、DVD-ROM(DVD Read-Only Memory)等である。
【0040】
サーバ処理部23は、1以上のプロセッサおよびその周辺回路を備える。サーバ処理部23は、サーバ2の全体的な動作を統括的に制御するものであり、例えば、CPU(Central Processing Unit)である。サーバ処理部23は、サーバ2の各種処理がサーバ記憶部22に記憶されているプログラム等に基づいて適切な手段で実行されるように、サーバ通信部21等の動作を制御する。サーバ処理部23は、サーバ記憶部22に記憶されているプログラム(オペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム等)に基づいて処理を実行する。また、サーバ処理部23は、複数のプログラム(アプリケーションプログラム等)を並列に実行することができる。
【0041】
サーバ処理部23は、テンプレート送信部231と、追加用語受信部232と、置換候補可変要素特定部233と、置換テンプレート生成部234と、置換テンプレート送信部235とを有する。サーバ処理部23が有するこれらの各部は、サーバ処理部23が有するプロセッサ上で実行されるプログラムによって実装される機能モジュールである。あるいは、サーバ処理部23が有するこれらの各部は、独立した集積回路、マイクロプロセッサ、またはファームウェアとしてサーバ2に実装されてもよい。
【0042】
図4は、ストレージ装置3の概略構成を示す模式図である。
【0043】
ストレージ装置3は、記憶部の一例である。ストレージ装置3は、入力されたデータを記憶し、記憶したデータを要求に応じて出力する。そのために、ストレージ装置3は、ストレージ通信部31と、ストレージ記憶部32と、ストレージ処理部33とを備える。
【0044】
ストレージ通信部31は、ストレージ装置3をサーバ2に接続するための通信インタフェース回路を有する。ストレージ通信部31は、サーバ2から受信したデータをストレージ処理部33に供給する。また、ストレージ通信部31は、ストレージ処理部33から供給されたデータをサーバ2に送信する。
【0045】
ストレージ記憶部32は、例えば、半導体メモリ、磁気ディスク装置および光ディスク装置のうちの少なくとも1つを有する。ストレージ記憶部32は、サーバ2から受信したデータ等を記憶する。
【0046】
ストレージ処理部33は、1以上のプロセッサおよびその周辺回路を備える。ストレージ処理部33は、ストレージ装置3の全体的な動作を統括的に制御するものであり、例えば、CPU(Central Processing Unit)である。ストレージ処理部33は、ストレージ通信部31およびストレージ記憶部32の動作を制御する。
【0047】
なお、ストレージ装置3は、ストレージ通信部31およびストレージ処理部33を有していなくてもよい。この場合、ストレージ装置3のストレージ記憶部32がサーバ2に直接接続され、ストレージ記憶部32はサーバ2のサーバ処理部23により制御される。
【0048】
ストレージ装置3は、ストレージ記憶部32に、ジャンルテーブルと、属性テーブルとを記憶する。
【0049】
【0050】
テンプレートマスタは、1以上の用語で構成される複数の可変要素を含むテンプレートが規定されるマスタである。テンプレートマスタには、1以上のテンプレートが記憶される。
【0051】
テンプレートは、複数の用語を含むテキスト情報である。テンプレートマスタにおいて、テキスト情報に含まれる1以上の単語が、可変要素として規定される。テンプレートには、複数の可変要素が含まれる。
【0052】
図5に示すテンプレートマスタの例では、テンプレートに含まれる可変要素が項目として記憶されている。また、テンプレートにおいて可変要素が角括弧で囲んで示されている。しかし、テンプレートマスタにおけるテンプレートの規定はこれに限らない。例えば、テンプレートに含まれる可変要素が項目として記憶されている場合、テンプレートにおける可変要素の角括弧による囲みはなくてもよい。逆に、テンプレートにおける可変要素の角括弧による囲みがある場合、テンプレートに含まれる可変要素が項目として記憶されていなくてもよい。このとき、テンプレートにおける可変要素の囲みは角括弧ではなく、他の記号または符号であってもよい。
【0053】
【0054】
用語マスタは、複数の前記用語ごとに、他の各用語との概念の類似度合いに基づく他の各用語との関連度を関連づけるマスタである。
【0055】
図6の例では、用語マスタは、用語「肉や魚」と用語「アグー豚」との関連度が90であり、用語「肉や魚」と用語「熱湯や出汁」との関連度が20であり、用語「アグー豚」と用語「熱湯や出汁」との関連度が20であることを示している。なお、
図6の例では、同一の用語が縦方向および横方向に配列されている。そのため、左上から右下に向かう対角線上にある欄は同一の用語(例えば用語「肉や魚」と用語「肉や魚」)との関連度に対応し、関連度が100となっている。また、この対角線に対し右上側と左下側との値は対称であるので、一方のみに値を記憶して他方を省略することが可能である。
【0056】
用語マスタに記憶される他の各用語との関連度は、他の各用語との概念の類似度合いに基づいて他の各用語を並べたときの順位に応じて定められてもよい。類似度合いの順位に応じて関連度を定めることにより、取り扱う情報量が減少し、より効率的に処理を実行することができる。
【0057】
例えば、用語「肉や魚」との類似度合いが、用語「アグー豚」は90、用語「熱湯や出汁」は20であるとする。このとき、用語「アグー豚」の順位は1位であり、用語「熱湯や出汁」の順位は2位である。用語の関連度を、(順位の合計-用語の順位)/順位の合計×100とすることにより、順位に応じて用語の関連度を定めることができる。なお、順位の合計とは、他の用語の数がnである場合の1+2+…+nの値である。
【0058】
図6の例では、用語「肉や魚」と用語「アグー豚」との関連度は、(1+2-1)/(1+2)×100=67である。また、用語「肉や魚」と用語「熱湯や出汁」との関連度は、(1+2-2)/(1+2)×100=33である。
【0059】
上述以外の計算式により、順位に応じて関連度を定めるようにしてもよい。
【0060】
また、関連度は、複数の用語ごとに、他の各用語との概念における距離に応じて定められる値であってもよい。概念における距離に応じて関連度を定めることにより、メニュー生成システム1は、用語間の関係をより適切に反映した関連度を用いて処理を実行することができる。
【0061】
まず、各用語の概念が所定の座標空間にマッピングされる。そして、用語の概念に対応する座標と他の各用語の概念に対応する座標との間の距離が算出される。用語マスタには、算出された距離に応じた値が関連度として記憶される。
【0062】
図7は、用語マスタにおける用語とカテゴリとの関連づけの例を示す図である。
【0063】
図7に示す用語マスタは、複数の用語ごとに、他の用語との関連度に加えて、カテゴリとも関連づけている。カテゴリは、概念の類似度合いに基づいて定められるグループである。カテゴリはメニュー生成システム1の運営者が人為的に定めてもよく、座標空間にマッピングされた概念のうち距離の近いものをグループとして抽出してもよい。カテゴリを人為的に定めた場合、用語の概念とカテゴリとの対応関係は、人為的に設定される。
【0064】
用語をカテゴリと関連づけた用語マスタを用いるメニュー生成システム1において、置換候補可変要素特定部232は、用語の関連度を、用語に関連づけられたカテゴリに基づいて求めることができる。例えば、用語「アグー豚」はカテゴリ「食材」「動物性」「豚肉」に関連づけられている。用語「肉や魚」も同様にカテゴリ「食材」「動物性」「豚肉」に関連づけられている。一方、用語「熱湯や出汁」はカテゴリ「食材」「動物性」「豚肉」に関連づけられておらず、他のカテゴリ「調味料」「旨味」に関連づけられている。この場合、用語「アグー豚」と同一のカテゴリに関連づけられる用語「肉や魚」は、用語「アグー豚」と異なるカテゴリに づけられる用語「熱湯や出汁」よりも、用語「アグー豚」との関連度が大きいと判定される。このように、用語に関連づけられたカテゴリの情報を用いることで、置換候補可変要素特定部232は、用語間の関連度をより効率的に判定することができる。
【0065】
【0066】
図8のツリー構造は、
図7に示す用語マスタにおけるカテゴリに対応している。
図8に示すように、カテゴリはツリー構造を形成し、L1~L3の3階層を有するツリー構造におけるいずれかの階層に位置づけられている。すなわち、カテゴリ「食材」は階層L1に位置づけられている。また、カテゴリ「動物性」はカテゴリ「食材」の下位であり、階層L2に位置づけられている。同様に、カテゴリ「豚肉」はカテゴリ「動物性」の下位であり、階層L3に位置づけられている。このようにツリー構造を形成する2以上の階層のうちいずれかの階層に各カテゴリを位置づけることにより、置換候補可変要素特定部232は、用語の関連度をツリー構造に基づいて効率的に求めることができる。
【0067】
置換候補可変要素特定部232は、一の用語が関連づけられるカテゴリの上位または下位の階層に位置づけられたカテゴリに関連づけられる用語を、その他のカテゴリに関連づけられる用語よりも、一の用語との関連度が大きいと判定してもよい。
図8の例において、一の用語が階層L2に属するカテゴリ「植物性」に関連づけられているとする。この場合、置換候補可変要素特定部232は、カテゴリ「植物性」の上位カテゴリの「食材」または下位カテゴリ「穀類」に関連づけられる用語は、「動物性」、「調味料」といった他のカテゴリに関連づけられる用語よりも、一の用語との関連度が大きいと判定する。これにより、置換候補可変要素特定部232は、用語の関連度をツリー構造に基づいて適切に判定することができる。
【0068】
また、置換候補可変要素特定部232は、一の用語が関連づけられるカテゴリからたどったときの階層の数が少ないカテゴリに関連づけられる可変要素ほど、一の用語との関連度が大きいと判定してもよい。
【0069】
図8の例において、カテゴリ「牛肉」に関連づけられる用語「米沢牛」を考える。用語「アグー豚」が関連づけられるカテゴリ「豚肉」は、「牛肉」→「動物性」→「豚肉」と、カテゴリ「牛肉」から2つの階層でたどることができる。一方、用語「聖護院大根」が関連づけられるカテゴリ「根菜類」は、「牛肉」→「動物性」→「食材」→「植物性」→「根菜類」と、カテゴリ「牛肉」から4つの階層でたどることができる。したがって、置換候補可変要素特定部232は、用語「米沢牛」と用語「アグー豚」との関連度は、用語「米沢牛」と用語「聖護院大根」との関連度よりも大きいと判定する。これにより、置換候補可変要素特定部232は、用語の関連度をツリー構造に基づいて適切に判定することができる。
【0070】
ストレージ記憶部32は、ツリー構造を有しない用語マスタを記憶してもよい。ツリー構造を有しない用語マスタでは、
図8に示すカテゴリ間の階層の上下関係は規定されていない。ツリー構造を有しない用語マスタでは、各用語にカテゴリをタグとして付与することにより、用語とカテゴリとの関連を規定することができる。
【0071】
置換候補可変要素特定部233は、追加用語が関連づけられるカテゴリのうち、より多くのカテゴリに関連づけられる可変要素を、追加用語との関連がより大きい可変要素として判定してもよい。
【0072】
例えば、追加用語「アグー豚」は、カテゴリ「食材」「豚肉」に関連づけられている。可変要素「肉や魚」は、追加用語「アグー豚」が関連づけられるカテゴリ「食材」「豚肉」の2つに関連づけられている。一方、可変要素「熱湯や出汁」は、追加用語「アグー豚」が関連づけられるカテゴリに関連づけられていない。
【0073】
置換候補可変要素特定部233は、追加用語「アグー豚」が関連づけられるカテゴリのより多くに関連づけられている可変要素「肉や魚」を、より少ないカテゴリに関連づけられている「熱湯や出汁」よりも、追加用語「アグー豚」との関連度が大きいと判定する。
【0074】
【0075】
端末4は、ネットワーク5を介してサーバ2に接続し、サーバ2と通信を行う。端末4は、ユーザの入力操作に応じて、テンプレートの表示および追加用語の入力の受付を行う。そのために、端末4は、端末通信部41と、端末記憶部42と、端末操作部43と、端末表示部44と、端末処理部45とを備える。
【0076】
なお、本実施形態では端末4として、パーソナルコンピュータ(Personal Computer, PC)を想定するが、実施形態はこれに限定されない。端末4は、例えば、多機能携帯電話(いわゆる「スマートフォン」)、携帯電話(いわゆる「フィーチャーフォン」)、携帯情報端末(Personal Digital Assistant, PDA)、携帯ゲーム機、携帯音楽プレーヤ、タブレット端末、タブレットPC、ノートPCなどの情報処理装置であってよい。また、端末4は、飲食店に設置され飲食店の関係者等に操作される店舗端末であってもよい。
【0077】
端末通信部41は、通信インタフェース回路を備え、端末4をネットワーク5に接続する。端末通信部41は、端末処理部45から供給されたデータを、ネットワークを介してサーバ2等に送信する。また、端末通信部41は、ネットワークを介してサーバ2等から受信したデータを端末処理部45に供給する。
【0078】
端末記憶部42は、例えば、半導体メモリ装置を備える。端末記憶部42は、端末処理部45での処理に用いられるオペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム、データ等を記憶する。例えば、端末記憶部42は、ドライバプログラムとして、端末操作部43を制御する入力デバイスドライバプログラムや、端末表示部44を制御する出力デバイスドライバプログラム等を記憶する。また、端末記憶部42は、アプリケーションプログラムとして、受信したテンプレートを受信し、追加用語の入力を受け付ける追加用語指定画面を表示するための画面表示プログラム等を記憶する。また、端末記憶部42は、所定の処理にかかる一時的なデータを一時的に記憶してもよい。
【0079】
端末操作部43は、端末4の操作が可能であればどのようなデバイスでもよく、例えば、キーボードやマウス等である。ユーザは、端末操作部43を用いて、文字や数字、記号等を入力することができる。端末操作部43は、ユーザにより操作されると、その操作に対応する信号を発生する。そして、発生した信号は、ユーザの指示として端末処理部45に供給される。
【0080】
端末表示部44は、映像や画像等の表示が可能であればどのようなデバイスでもよく、例えば、液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ等である。端末表示部44は、端末処理部45から供給された映像データに応じた映像や、画像データに応じた画像等を表示する。
【0081】
端末処理部45は、1以上のプロセッサおよびその周辺回路を備える。端末処理部45は、端末4の全体的な動作を統括的に制御するものであり、例えば、CPUである。端末処理部45は、端末4の各種処理が端末記憶部42に記憶されているプログラムや端末操作部43への操作等に基づいて適切な手段で実行されるように、端末通信部41や端末表示部44等の動作を制御する。端末処理部45は、端末記憶部42に記憶されているプログラム(オペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム等)に基づいて処理を実行する。また、端末処理部45は、複数のプログラム(アプリケーションプログラム等)を並列に実行することができる。
【0082】
端末処理部45は、少なくとも閲覧実行部451、端末送信部452等を備える。これらの各部は、端末処理部45が備えるプロセッサで実行されるプログラムにより実現される機能モジュールである。あるいは、これらの各部は、ファームウェアとして端末4に実装されてもよい。
【0083】
本開示のメニュー生成システム1は、上述のハードウェア構成を採用することで、ユーザが指定する追加用語によりテンプレートに含まれる可変要素を置換して生成された置換テンプレートをユーザに提供するようサーバを制御する。本開示のメニュー生成システム1によると、所望の置換テンプレートを得るために必要なサーバ2と端末4との通信量およびサーバ2における処理時間を削減することができるため、効率的な情報処理が可能となる。
【0084】
次に、
図10および
図11を参照して、サーバ2に接続された端末4の表示機能によって端末表示部44に表示される各表示画面の一例を説明する。
【0085】
【0086】
端末4は、サーバ2が送信する、テンプレートを含む追加用語指定画面表示データに基づいて、
図10に示す追加用語指定画面100を端末表示部44に表示する。端末4のユーザは、追加用語指定画面100を参照して、追加用語を入力する。
【0087】
追加用語指定画面100には、テンプレート表示欄101と、テンプレートリスト表示要求欄102と、追加用語入力欄103と、追加用語リスト表示要求欄104と、追加用語送信ボタン105とが含まれる。
【0088】
テンプレート表示欄101は、サーバ2から受信したテンプレートを表示する欄である。ユーザは、テンプレート表示欄101に表示されたテンプレートを参照し、追加用語を指定する。
【0089】
テンプレートリスト表示要求欄102は、テンプレートリストの表示を要求する欄である。テンプレートリスト表示要求欄102への所定の操作(例えばカーソルを位置づけて左クリック)を検出すると、端末4は、サーバ2にテンプレートリスト表示要求を送信し、受信したテンプレートリストを端末表示部44に表示する。テンプレートリストには、テンプレートマスタに記憶されるテンプレートが一覧表示される。テンプレートリストから選択されたテンプレートが、テンプレート表示欄101に表示される。
【0090】
追加用語入力欄103は、ユーザによる入力を受け付けた追加用語が表示される欄である。
図10では、ユーザが追加用語として「アグー豚」を入力した状態を示している。
【0091】
追加用語リスト表示要求欄104は、追加用語リストの表示を要求する欄である。追加用語リスト表示要求欄104への所定の操作を検出すると、端末4は、サーバ2に追加用語リスト表示要求を送信し、受信した追加用語リストを端末表示部44に表示する。追加用語リストには、用語マスタに記憶される用語が一覧表示される。このとき、追加用語リストでは、用語をカテゴリごとに表示してもよい。また、検索キーワードの入力を受け付け、検索キーワードを含む、または、検索キーワードに関連する用語を表示するようにしてもよい。追加用語表示リストから選択された追加用語が、追加用語入力欄103に表示される。
【0092】
追加用語送信ボタン105は、追加用語の送信を指示するボタンである。端末操作部43が追加用語送信ボタン105に対するユーザの所定の操作を検出すると、端末4は、端末通信部41を介して、追加用語入力欄103に入力された指定用語をサーバ2に送信する。
【0093】
図11は、置換テンプレート表示画面の例を示す図である。
【0094】
端末4は、サーバ2が送信する、置換テンプレートを含む置換テンプレート表示画面表示データに基づいて、
図11に示す置換テンプレート表示画面110を端末表示部44に表示する。端末4のユーザは、置換テンプレート表示画面110を参照して、置換テンプレートが適切に生成されているか否かを確認する。
【0095】
置換テンプレート表示画面110には、置換テンプレート表示欄111と、置換テンプレート決定ボタン112と、置換テンプレート修正ボタン113とが含まれる。
【0096】
置換テンプレート表示欄111は、サーバ2から受信した置換テンプレートを表示する欄である。置換テンプレート表示欄111では、置換テンプレートが、テンプレートのうち追加用語により置換された部分とその他の部分とが異なる表示態様で表示される。これにより、ユーザは置換された部分を容易に視認することができる。
図11の例では、置換された部分には下線を付して表示されている。
【0097】
置換テンプレート決定ボタン112は、置換テンプレート表示欄111に表示された置換テンプレートの内容の決定を指示するボタンである。端末操作部43が置換テンプレート決定ボタン112に対するユーザの所定の操作を検出すると、端末4は、端末通信部41を介して、置換テンプレートの決定を指示する置換テンプレート決定指示要求をサーバ2に送信する。置換テンプレート決定指示要求を受信したサーバ2は、決定した置換テンプレートをサーバ記憶部22の所定の領域に記憶し、他の用途での使用を可能にする。
【0098】
置換テンプレート修正ボタン113は、置換テンプレート表示欄111に表示された置換テンプレートの内容の修正を指示するボタンである。端末操作部43が置換テンプレート修正ボタン113に対するユーザの所定の操作を検出すると、端末4は、置換テンプレートの修正を行う置換テンプレート修正画面を端末表示部44に表示する。置換テンプレート修正画面での修正が完了すると、修正された置換テンプレートが置換テンプレート表示欄111に表示される。また、置換テンプレートは、置換テンプレート表示欄111に修正可能に表示されていてもよい。この場合、置換テンプレート修正ボタン113は省略可能である。
【0099】
図12は、メニュー生成システム1の動作シーケンス図である。
【0100】
まず、端末4は、ネットワーク5を介してテンプレート要求を送信する(ステップS1)。テンプレート要求は、追加用語指定画面100のテンプレートリスト表示要求欄102への操作に応じて表示されるテンプレートリストからテンプレートを選択することにより送信される。テンプレート要求には、対象となるテンプレートに対応するテンプレート識別子が含まれる。
【0101】
サーバ通信部21を介してテンプレート要求を受信したサーバ2のテンプレート送信部231は、対応するテンプレートをストレージ記憶部32に記憶されるテンプレートマスタから読み出し、サーバ通信部21を介して端末4に送信する(ステップS2)。
【0102】
テンプレートを受信した端末4は、受信したテンプレートを端末表示部44に表示する(ステップS3)。ユーザは、表示されたテンプレートを参照し、追加用語の指定を行う。
【0103】
端末4は、端末操作部43を介してユーザによる追加用語の指定を受け付ける(ステップS4)。そして、端末4は、受け付けた追加用語をサーバ2に送信する(ステップS5)。
【0104】
サーバ2の追加用語受信部232がサーバ通信部21を介して追加用語を受信した場合、置換候補可変要素特定部233が置換候補変換要素を特定する(ステップS6)。置換候補可変要素特定部233は、ストレージ記憶部32に記憶された用語マスタを参照し、対象となるテンプレートに含まれる複数の可変要素について、受信した追加用語との関連度を取得する。そして、置換候補可変要素特定部233は、複数の可変要素についての追加用語との関連度を比較し、関連度が大きい可変要素を、置換候補可変要素として特定する。
【0105】
次に、サーバ2の置換テンプレート生成部234は、テンプレートに含まれる置換候補可変要素を追加用語で置き換えることにより置換テンプレートを生成する(ステップS7)。
【0106】
続いて、サーバ2の置換テンプレート送信部235は、生成された置換テンプレートを、サーバ通信部21を介して端末4に送信する(ステップS8)。
【0107】
置換テンプレートを受信した端末4は、端末表示部44に置換テンプレートを表示する(ステップS9)。
【0108】
以上詳述したとおり、メニュー生成システム1は、ユーザが指定する追加用語に基づいてテンプレートから適切に生成された置換テンプレートをユーザに提供する。
【0109】
なお、本実施形態を変形したメニュー生成システムも実施可能である。
【0110】
例えば、メニュー生成システムのある変形例では、動作シーケンスのステップS6において、置換候補可変要素特定部233は、複数の置換候補可変要素を特定してもよい。この場合、ステップS7において、置換テンプレート生成部234は、複数の置換候補可変要素のそれぞれを追加用語によって置き換えて、置換テンプレートを複数生成する。そして、ステップS8において、置換テンプレート送信部235は、生成した複数の置換テンプレートを端末4に送信する。
【0111】
複数の置換テンプレートを受信した端末4は、ステップS9において、受信した複数の置換テンプレートを端末表示部44に表示する。そして、端末4は、ユーザによる置換テンプレートの選択を受け付ける。端末4は、端末操作部43を介して受け付けたユーザによる置換テンプレートの選択に対応する置換候補可変要素選択情報を、サーバ2に送信する。
【0112】
サーバ通信部21を介して置換候補可変要素選択情報を受信したサーバ2は、受信した置換候補可変要素選択情報に基づいて、用語マスタにおける置換候補可変要素選択情報に対応する用語と追加用語との関連度を変更させる。
【0113】
このようなメニュー生成システムは、用語マスタにおける用語間の関連度をユーザの選択に基づいて更新していくことができる。このとき、サーバ2は、置換候補可変要素選択情報に対応する用語と追加用語との関連度が大きくなるように変更することが好ましい。ユーザにより追加用語で置換すべきと選択された用語は、追加用語との関連度が大きいためである。
【0114】
また、メニュー生成システムの他の変形例では、テンプレートマスタは第1言語のテンプレートを第2言語のテンプレートと関連づけており、ストレージ記憶部32は第1言語の用語と第2言語の用語とを関連づける用語翻訳マスタを記憶していてもよい。
【0115】
この場合、サーバ2のテンプレート送信部231は、ステップS2において第1言語のテンプレートを送信する。そして、サーバ2の追加用語受信部は、ステップS5において端末4から第1言語の追加用語を受信する。
【0116】
サーバ2の置換テンプレート生成部234は、ステップS7において、第1言語のテンプレートに関連づけられた第2言語のテンプレートの置換候補可変要素を、第1言語の追加用語に関連づけられた第2言語の用語により置き換える。そして、サーバ2の置換テンプレート送信部235は、生成された置換テンプレートを端末4に送信する。
【0117】
このようなメニュー生成システムによると、ユーザは第1言語でテンプレートおよび追加用語を指定することにより、適切に生成された第2言語の置換テンプレートを得ることができる。
【0118】
ここまで説明した実施形態では、サーバ2は飲食店で提供される料理のメニューまたは説明文に関するテンプレートに基づいて置換テンプレートを生成する。しかし、本出願にかかるサーバにおいて、記憶部に記憶されるテンプレートは、料理のメニューまたは説明文に関するものに限定されない。
【0119】
例えば、サーバ2は店舗やウェブ上で提供される商品の情報に関するテンプレートに基づいて置換テンプレートを生成してもよい。商品以外にもアイテムに関する説明であれば本発明は適用できる。
【0120】
記憶部に記憶されるテンプレートマスタには、「[東京]地方で[地震]が発生しました」といった災害情報の告知に関するテンプレートが規定されていてもよい。このとき、用語マスタには、概念の類似度に基づいて、「東京」「千葉」「地震」「台風」といった用語の関連度が関連づけられる。そして、追加用語「千葉」を受信した場合、サーバは、上述の制御方法に従って用語「千葉」との関連度が大きい置換候補可変要素[東京]を特定し、適切な置換テンプレート「千葉地方で地震が発生しました」を生成する。
【0121】
当業者は、本発明の精神および範囲から外れることなく、種々の変更、置換および修正をこれに加えることが可能であることを理解されたい。
【符号の説明】
【0122】
1 メニュー生成システム
2 サーバ
231 テンプレート送信部
232 追加用語受信部
233 置換候補可変要素特定部
234 置換テンプレート生成部
235 置換テンプレート送信部
3 ストレージ装置
4 端末
5 ネットワーク