KR20210017973A - Method and server for food ingredient pairing prediction using siamese neural network - Google Patents
Method and server for food ingredient pairing prediction using siamese neural network Download PDFInfo
- Publication number
- KR20210017973A KR20210017973A KR1020190158385A KR20190158385A KR20210017973A KR 20210017973 A KR20210017973 A KR 20210017973A KR 1020190158385 A KR1020190158385 A KR 1020190158385A KR 20190158385 A KR20190158385 A KR 20190158385A KR 20210017973 A KR20210017973 A KR 20210017973A
- Authority
- KR
- South Korea
- Prior art keywords
- pairing
- food ingredient
- data
- food
- ingredient
- Prior art date
Links
- 235000012041 food component Nutrition 0.000 title claims abstract description 183
- 239000005417 food ingredient Substances 0.000 title claims abstract description 183
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 11
- 238000010411 cooking Methods 0.000 claims abstract description 24
- 206010010688 Conjoined twins Diseases 0.000 claims description 67
- 239000004615 ingredient Substances 0.000 claims description 66
- 235000013305 food Nutrition 0.000 claims description 30
- 230000006870 function Effects 0.000 claims description 21
- 239000000463 material Substances 0.000 claims description 14
- 230000015654 memory Effects 0.000 claims description 14
- 238000012549 training Methods 0.000 claims description 7
- 230000000306 recurrent effect Effects 0.000 claims description 4
- 230000002457 bidirectional effect Effects 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 3
- 238000007477 logistic regression Methods 0.000 claims description 3
- 230000006403 short-term memory Effects 0.000 claims description 2
- 238000004590 computer program Methods 0.000 claims 1
- 239000013598 vector Substances 0.000 description 23
- 238000010586 diagram Methods 0.000 description 18
- 239000000796 flavoring agent Substances 0.000 description 9
- 235000019634 flavors Nutrition 0.000 description 9
- 241000234282 Allium Species 0.000 description 8
- 235000002732 Allium cepa var. cepa Nutrition 0.000 description 8
- 230000000295 complement effect Effects 0.000 description 7
- 235000019993 champagne Nutrition 0.000 description 5
- 150000001875 compounds Chemical class 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 5
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 4
- 235000002566 Capsicum Nutrition 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 235000015040 sparkling wine Nutrition 0.000 description 4
- 235000014101 wine Nutrition 0.000 description 4
- 235000007688 Lycopersicon esculentum Nutrition 0.000 description 3
- 239000006002 Pepper Substances 0.000 description 3
- 235000016761 Piper aduncum Nutrition 0.000 description 3
- 240000003889 Piper guineense Species 0.000 description 3
- 235000017804 Piper guineense Nutrition 0.000 description 3
- 235000008184 Piper nigrum Nutrition 0.000 description 3
- 240000003768 Solanum lycopersicum Species 0.000 description 3
- 235000009499 Vanilla fragrans Nutrition 0.000 description 3
- 235000012036 Vanilla tahitensis Nutrition 0.000 description 3
- 238000002679 ablation Methods 0.000 description 3
- 235000015278 beef Nutrition 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 235000019995 prosecco Nutrition 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 244000223760 Cinnamomum zeylanicum Species 0.000 description 2
- 235000008733 Citrus aurantifolia Nutrition 0.000 description 2
- 244000299461 Theobroma cacao Species 0.000 description 2
- 235000011941 Tilia x europaea Nutrition 0.000 description 2
- 244000263375 Vanilla tahitensis Species 0.000 description 2
- 244000195452 Wasabia japonica Species 0.000 description 2
- 235000000760 Wasabia japonica Nutrition 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 235000017803 cinnamon Nutrition 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 239000004571 lime Substances 0.000 description 2
- 235000008390 olive oil Nutrition 0.000 description 2
- 239000004006 olive oil Substances 0.000 description 2
- 235000020095 red wine Nutrition 0.000 description 2
- 150000003839 salts Chemical class 0.000 description 2
- 235000020097 white wine Nutrition 0.000 description 2
- BLKPFVWYBFDTPX-UHFFFAOYSA-N 2-(6,6-dimethyl-4-bicyclo[3.1.1]hept-3-enyl)acetaldehyde Chemical compound C1C2C(C)(C)C1CC=C2CC=O BLKPFVWYBFDTPX-UHFFFAOYSA-N 0.000 description 1
- 235000016068 Berberis vulgaris Nutrition 0.000 description 1
- 241000335053 Beta vulgaris Species 0.000 description 1
- 241000238557 Decapoda Species 0.000 description 1
- 240000008415 Lactuca sativa Species 0.000 description 1
- 235000003228 Lactuca sativa Nutrition 0.000 description 1
- 235000019687 Lamb Nutrition 0.000 description 1
- 240000005183 Lantana involucrata Species 0.000 description 1
- 235000013628 Lantana involucrata Nutrition 0.000 description 1
- VAYOSLLFUXYJDT-RDTXWAMCSA-N Lysergic acid diethylamide Chemical compound C1=CC(C=2[C@H](N(C)C[C@@H](C=2)C(=O)N(CC)CC)C2)=C3C2=CNC3=C1 VAYOSLLFUXYJDT-RDTXWAMCSA-N 0.000 description 1
- 244000070406 Malus silvestris Species 0.000 description 1
- 235000006677 Monarda citriodora ssp. austromontana Nutrition 0.000 description 1
- 241000237536 Mytilus edulis Species 0.000 description 1
- 240000008607 Opuntia megacantha Species 0.000 description 1
- 235000002840 Opuntia megacantha Nutrition 0.000 description 1
- 235000006538 Opuntia tuna Nutrition 0.000 description 1
- 241000758706 Piperaceae Species 0.000 description 1
- 235000001466 Ribes nigrum Nutrition 0.000 description 1
- 241001312569 Ribes nigrum Species 0.000 description 1
- 244000180577 Sambucus australis Species 0.000 description 1
- 235000018734 Sambucus australis Nutrition 0.000 description 1
- 244000223014 Syzygium aromaticum Species 0.000 description 1
- 235000016639 Syzygium aromaticum Nutrition 0.000 description 1
- 244000269722 Thea sinensis Species 0.000 description 1
- 235000009470 Theobroma cacao Nutrition 0.000 description 1
- 244000290333 Vanilla fragrans Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 235000021016 apples Nutrition 0.000 description 1
- 235000013361 beverage Nutrition 0.000 description 1
- 235000014121 butter Nutrition 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 235000019219 chocolate Nutrition 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 239000006071 cream Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 235000008995 european elder Nutrition 0.000 description 1
- 239000013604 expression vector Substances 0.000 description 1
- 235000015243 ice cream Nutrition 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 235000020094 liqueur Nutrition 0.000 description 1
- 241000238565 lobster Species 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 235000013372 meat Nutrition 0.000 description 1
- 235000020638 mussel Nutrition 0.000 description 1
- 238000004451 qualitative analysis Methods 0.000 description 1
- 235000014102 seafood Nutrition 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 235000013616 tea Nutrition 0.000 description 1
- 230000001256 tonic effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0637—Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
- G06Q10/06375—Prediction of business process outcome or impact based on a proposed change
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/12—Hotels or restaurants
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- General Health & Medical Sciences (AREA)
- Educational Administration (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Primary Health Care (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Preparation And Processing Of Foods (AREA)
Abstract
Description
본 발명은 식재료 페어링을 예측하는 것으로, 보다 상세하게는 다양한 종류의 식재료 데이터를 입력으로 샴쌍둥이 네트워크 이용하여 식재료 페어링을 예측하는 방법 및 서버에 관한 것이다.The present invention relates to predicting food ingredient pairing, and more particularly, to a method and server for predicting food ingredient pairing using a Siamese twin network as input of various types of food ingredient data.
요리 업계에는 수많은 재료가 존재하고, 수많은 식재료들이 있지만, 요리사들과 요리연구가들은 소수의 식재료만을 선택해서 사용하고 있다.There are numerous ingredients in the cooking industry, and there are numerous ingredients, but chefs and culinary researchers use only a handful of ingredients.
푸드페어링 분야에서는 푸드페어링 가이드북 등을 통해 다양한 형태의 식재료들의 조합을 추천하나, 푸드페어링은 전문가의 경험을 바탕으로 이루어지기 때문에 주관적인 측면이 강해서 정량화 하기가 어렵고, 새로운 레시피의 추천에 한계가 있다.In the food pairing field, combinations of various types of ingredients are recommended through food pairing guidebooks, etc., but since food pairing is based on the experience of experts, the subjective aspect is strong, making it difficult to quantify, and there are limitations in recommending new recipes .
푸드페어링 연구 중 하나는 음식 재료가 공유하는 향미 화합물의 수를 기반으로 네트워크의 에지가 구축되는 향미 네트워크를 소개한다. 향미 네트워크는 381 성분 및 1,021 향미 화합물로 구성된다. FlavorDB는 기존 식품 저장소를 결합하여 사용자 대화형 페이지가 있는 더 큰 데이터베이스를 제공한다. 음식 브릿징은 두 성분의 화학적 유사성이 낮음에도 불구하고 한 쌍의 친화력을 통해 두 성분 사이에 브릿지를 추가하여 향미 네트워크를 개선한다. 다만 이들은 제한된 수의 향미 화합물 및 천연 성분만을 포함하나, 일부 잘 알려진 음식 쌍(예를 들어, 레드 와인 및 쇠고기)은 공통적으로 향미 화합물이 거의 없다. One of the food pairing studies introduces a flavor network in which the edge of the network is built based on the number of flavor compounds shared by food ingredients. The flavor network consists of 381 components and 1,021 flavor compounds. FlavorDB combines existing food repositories to provide a larger database with user interactive pages. Food bridging improves the flavor network by adding a bridge between the two ingredients through a pair of affinity, despite the poor chemical similarity of the two ingredients. However, they contain only a limited number of flavor compounds and natural ingredients, but some well-known food pairs (eg, red wine and beef) have few flavor compounds in common.
최근 많은 도메인에 인공지능이 적용되는 추세이지만, 아직까지 음식 정보를 다루는 데이터에 대한 인공지능의 적용은 부족한 실정이다.Although artificial intelligence is recently applied to many domains, the application of artificial intelligence to data dealing with food information is still insufficient.
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서 인공신경망 기반의 모델을 활용하여 식재료 페어링을 예측하는 방법을 제공한다. The present invention provides a method of predicting food ingredient pairing using an artificial neural network-based model as to solve the above-described problems of the prior art.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.However, the technical problem to be achieved by the present embodiment is not limited to the technical problem as described above, and other technical problems may exist.
상술한 기술적 과제를 해결하기 위한 기술적 수단으로서, 본 개시의 제 1측면에 따른 서버에 의해 수행되는 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법은, 네트워크를 통해 하나 이상의 요리 정보를 수집하고, 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하는 단계; 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하는 단계; 및 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공하는 단계;를 포함한다. 식재료 페어링 예측 모델은 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것이다.As a technical means for solving the above-described technical problem, the method for predicting food ingredient pairing using the Siamese twin network performed by the server according to the first aspect of the present disclosure is to collect one or more cooking information through the network, and Generating food material data by extracting food ingredients for each information; Providing pairing data by calculating a food ingredient pairing score according to a frequency of simultaneous appearance of ingredients based on the food ingredient data; And providing data as a result of predicting food ingredient pairing in the food ingredient pairing prediction model by inputting pairing data. The food ingredient pairing prediction model is trained by using food ingredient data and ingredient pairing score data as input data and using a Siamese twin network composed of a first sub-network and a second sub-network.
상술한 기술적 과제를 해결하기 위한 기술적 수단으로서, 본 개시의 제 2 측면에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버는, 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 프로그램이 저장된 메모리; 메모리에 저장된 프로그램을 실행하는 프로세서를 포함하며, 프로세서는 프로그램의 실행에 의해, 네트워크를 통해 하나 이상의 요리 정보를 수집하고, 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하고, 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하고, 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공한다. 식재료 페어링 예측 모델은 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것이다.As a technical means for solving the above technical problem, a food ingredient pairing prediction server using a Siamese twin network according to a second aspect of the present disclosure includes: a memory storing a food ingredient pairing prediction program using a Siamese twin network; It includes a processor that executes a program stored in the memory, and the processor collects one or more cooking information through a network by execution of the program, extracts food ingredients for each collected cooking information, and generates food material data, based on the food material data. Thus, the pairing data is provided by calculating the food ingredient pairing score according to the frequency of simultaneous appearance between ingredients, and the pairing data is input to provide the result data of predicting food ingredient pairing in the food ingredient pairing prediction model. The food ingredient pairing prediction model is trained by using food ingredient data and ingredient pairing score data as input data and using a Siamese twin network composed of a first sub-network and a second sub-network.
전술한 본원의 과제 해결 수단 중 어느 하나에 의하면, 인공신경망 기반의 샴쌍둥이 네트워크를 식재료 페어링 예측에 활용함으로써 새롭고 다양한 식재료 페어링을 발견할 수 있다.According to any one of the above-described problem solving means of the present application, a new and diverse food ingredient pairing can be discovered by utilizing an artificial neural network-based Siamese twin network for food ingredient pairing prediction.
여러가지 식재료 페어링을 포함하는 대규모 데이터 세트를 구축하여 전문가에 의한 식재료 페어링 추천보다 더 많은 데이터를 분석할 수 있고, 정성 분석을 통해 보완적인 식재료 페어링을 추천하고, 새로운 식재료 페어링을 발견할 수 있다.By constructing a large-scale data set including various food ingredient pairings, more data can be analyzed than food ingredient pairing recommendations by experts, and complementary ingredient pairings can be recommended through qualitative analysis, and new ingredient pairings can be discovered.
도 1은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버의 구성을 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 시스템의 구성을 도시한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법의 진행 단계를 나타낸 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 식재료 페어링 스코어를 설명하는 도면이다.
도 5는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 식재료 페어링 예측 모델의 아키텍쳐를 설명하는 도면이다.
도 6은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 모델의 예측 결과를 설명하는 도면이다.
도 7은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에 대한 절제 테스트 결과를 설명하는 도면이다.
도8은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 알려진 페어링과 새로운 페어링 결과를 설명하는 도면이다.
도 9는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 페어링 랭킹을 설명하는 도면이다.
도 10은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 페어링 랭킹을 설명하는 도면이다.1 is a block diagram showing the configuration of a food ingredient pairing prediction server using a Siamese twin network according to an embodiment of the present invention.
2 is a block diagram showing the configuration of a food ingredient pairing prediction system using a Siamese twin network according to an embodiment of the present invention.
Figure 3 is a flow chart showing the progress of the food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
4 is a diagram illustrating a food ingredient pairing score in a method of predicting food ingredient pairing using a Siamese twin network according to an embodiment of the present invention.
FIG. 5 is a diagram illustrating the architecture of a food ingredient pairing prediction model in a food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
6 is a diagram illustrating a prediction result of a model in a food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
7 is a diagram illustrating a result of an ablation test for a method of predicting food ingredient pairing using a Siamese twin network according to an embodiment of the present invention.
8 is a diagram illustrating a known pairing and a new pairing result in a food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
9 is a diagram illustrating a pairing ranking in a food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
10 is a diagram illustrating a pairing ranking of a food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, exemplary embodiments of the present application will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art may easily implement the present application. However, the present application may be implemented in various different forms and is not limited to the embodiments described herein. In addition, in the drawings, parts not related to the description are omitted in order to clearly describe the present application, and similar reference numerals are attached to similar parts throughout the specification.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. Throughout this specification, when a part is said to be "connected" with another part, this includes not only the case that it is "directly connected", but also the case that it is "electrically connected" with another element interposed therebetween. do.
본원 명세서 전체에서, 어떤 부재가 다른 부재 “상에” 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.Throughout this specification, when a member is positioned “on” another member, this includes not only the case where a member is in contact with another member, but also the case where another member exists between the two members.
이하 첨부된 도면을 참고하여 본 발명의 일 실시예를 상세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버의 구성을 도시한 블록도이다.1 is a block diagram showing the configuration of a food ingredient pairing prediction server using a Siamese twin network according to an embodiment of the present invention.
도시된 바와 같이 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버(100)는 통신 모듈(110), 메모리(120), 프로세서(130), 데이터베이스(140) 및 입력모듈(150)을 포함할 수 있다.As shown, the food ingredient
통신모듈(110)은 접속된 사용자 단말(100) 및 연동된 서버(200)와 각각 데이터를 통신한다. 통신모듈(110)은 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.The
메모리(120)에는 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 프로그램이 저장된다. 식재료 페어링 예측 프로그램은 네트워크를 통해 하나 이상의 요리 정보를 수집하고, 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하고, 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하고, 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공한다. 이 때 식재료 페어링 예측 모델은 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것이다.The
이러한 메모리(120)에는 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버(100)의 구동을 위한 운영 체제나 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 프로그램의 실행 과정에서 발생되는 여러 종류가 데이터가 저장된다. The
이때, 메모리(120)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치를 통칭하는 것이다. In this case, the
또한, 메모리(120)는 프로세서(130)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행할 수 있다. 여기서, 메모리(120)는 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치 외에 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.In addition, the
프로세서(130)는 메모리(140)에 저장된 프로그램을 실행하되, 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측프로그램의 실행에 따르는 전체 과정을 제어한다. 프로세서(130)가 수행하는 각각의 동작에 대해서는 추후 보다 상세히 살펴보기로 한다.The
이러한 프로세서(130)는 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이 크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.The
데이터베이스(140)는 프로세서(130)의 제어에 따라, 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측시스템에 필요한 데이터를 저장 또는 제공한다. 이러한 데이터베이스(140)는 메모리(140)와는 별도의 구성 요소로서 포함되거나, 또는 메모리(140)의 일부 영역에 구축될 수도 있다.The
도 2는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 시스템의 구성을 도시한 블록도이다. 2 is a block diagram showing the configuration of a food ingredient pairing prediction system using a Siamese twin network according to an embodiment of the present invention.
이용한 식재료 페어링 예측 시스템은 서버(100) 및 복수의 사용자 단말(200)을 포함한다. 이들은 네트워크를 통해 연결 될 수 있다.The used food ingredient pairing prediction system includes a
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법은 서버(100)에서 실시될 수 있다. 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에서 데이터 분석은 서버(100)에서 이루어지고, 분석데이터 표시는 사용자 단말(200)에서 이루어 질 수 있다.A method for predicting food ingredient pairing using a Siamese twin network may be implemented in the
도 3은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법의 진행 단계를 나타낸 흐름도이다. Figure 3 is a flow chart showing the progress of the food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법은 네트워크를 통해 하나 이상의 요리 정보를 수집하고(S110), 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성한다(S120).In the method of predicting food ingredient pairing using the Siamese twins network, one or more cooking information is collected through the network (S110), and food ingredients are extracted by extracting food ingredients for each of the collected cooking information (S120).
프로세서(130)는 식재료들을 추출할 때, 순환 신경망에 기반한 식재료 명칭 추출 모듈을 사용하여, 수집된 요리 정보에서 각 단어에 대해 로지스틱 회귀를 수행하여 식재료 명칭을 추출할 수 있다. 이 때 순환 신경망은 양방향 LSTM(Long Short Term Memory models)을 이용할 수 있다. When extracting food ingredients, the
예를 들면, 요리와 관련된, 여러 유명 웹 사이트에서 수집 한, 약 백만 개의 레시피와 해당 이미지를 포함하는 데이터 세트인 Recipe1M을 활용할 수 있다. Recipe1M의 모든 내용은 텍스트와 이미지의 두 가지 범주로 나눌 수 있다. Recipe1M의 레시피 텍스트는 식재료 목록과 레시피 지침 두 부분으로 구성된다. Im2Recipe는 양방향 LSTM 기반 재료 명칭 추출 모듈을 사용하여 Recipe1M의 모든 식재료 목록에서 각 단어에 대해 로지스틱 회귀를 수행하여 재료 명칭만 추출할 수 있다. 예를 들어, "2 tbsp의 올리브 오일"은 올리브 오일로 추출된다. 레시피에 대한 지침에서 식재료 명칭을 포함한 모든 어휘를 워드투벡터(word2vec)패션으로 학습시킬 수 있다. For example, you can take advantage of Recipe1M, a data set containing about a million recipes and their images, collected from several popular websites related to cooking. All contents of Recipe1M can be divided into two categories: text and images. Recipe1M's recipe text consists of two parts: an ingredient list and recipe instructions. Im2Recipe uses a bidirectional LSTM-based ingredient name extraction module to perform logistic regression on each word from Recipe1M's list of all ingredients to extract only ingredient names. For example, "2 tbsp of olive oil" is extracted with olive oil. In the instructions for the recipe, all vocabulary, including the names of ingredients, can be learned in a word-to-vector (word2vec) fashion.
예를 들면 하기 표1과 같이 총 30,167 개의 학습된 어휘 중에서 3,567 개의 고유한 재료 명칭을 얻을 수 있다. 알려진 페어(known pairs)는 발생 횟수가 20보다 큰 식재료로 구성된다. 알려진 페어(unknown pairs)는 동시 발생 횟수가 적어도 5회 이상이다.For example, as shown in Table 1 below, 3,567 unique material names can be obtained out of a total of 30,167 learned vocabularies. Known pairs consist of ingredients with an occurrence number of greater than 20. Known pairs have at least five or more simultaneous occurrences.
[표1][Table 1]
식재료 데이터들이 생성된 이후에는 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공한다(S130). After the food material data are generated, the food material pairing score is calculated based on the food material data according to the frequency of simultaneous appearances between the food ingredients, and the pairing data is provided (S130).
전통적인 재료 페어링 방법은 요리 산업의 인간 전문가에 대한 광범위한 경험과 지식에 의존한다. 결과적으로 딥 러닝 모델 학습에 사용할 수 있는 데이터 양이 충분하지 않다. 이 문제를 해결하기 위해 딥 러닝 모델을 학습할 수 있는 새로운 대규모 식재료 페어링 점수 데이터 세트를 구성한다. 식재료 페어링은 재료가 서로 얼마나 잘 보완되는지에 따라 -1에서 1까지의 점수가 부여된다. 대량의 레시피 코퍼스의 식재료의 동시 발생 정보가, 각 레시피에서 재료가 어떻게 결합되는지에 대한 통찰력을 제공 할 수 있다. 이 연구에서는 데이터 집합에 통계적 동시 발생 정보가 포함되어 있으므로 재료 수 또는 조리 절차의 수를 고려하지 않았다.Traditional ingredient pairing methods rely on extensive experience and knowledge of human experts in the culinary industry. As a result, there is not enough data available to train a deep learning model. To solve this problem, we construct a new large-scale food ingredient pairing score data set that can train deep learning models. Food pairings are scored from -1 to 1 depending on how well the ingredients complement each other. Co-occurrence information of ingredients in a large number of recipe corpus can provide insight into how ingredients are combined in each recipe. In this study, the number of ingredients or the number of cooking procedures was not considered because the data set contained statistical co-occurrence information.
페어링 데이터는 요리 정보에서 두 개의 식재료가 개별적으로 발생하는 확률 및 동시에 발생하는 확률을 하기 수학식 1에 의해 계산하는NPMI(normalized point-wise mutual information)를 기초로 식재료 페어링 스코어를 계산하여 정규화한 것일 수 있다.The pairing data is obtained by calculating and normalizing the food ingredient pairing score based on the NPMI (normalized point-wise mutual information), which calculates the probability that two ingredients occur individually and the probability that they occur simultaneously in the cooking information. I can.
[수학식1][Equation 1]
p(x,y)= p(x,y)=
p(x)= p(x)=
p(y)= p(y)=
본 발명에서는 PMI (point-wise mutual information)를 기반으로 식재료 페어링 스코어를 계산한다. 상기 수학식 1에 표시된 PMI 점수는 p (x, y)가 동시에 발생하는 두 요소의 확률이며, 이는 개별적으로 p (x), p (y)가 발생하는 각 요소의 확률과 비교된다. 커스텀 스코어는 낮은 동시 발생 페어를 가진 소금 또는 버터와 같이 매우 인기 있는 재료에 불이익을 주어 좋은/나쁜 페어를 정확하게 나타내도록 설계되었다. 반면에 덜 인기 있는 재료로 구성된 페어는 좋은 보완적 페어가 될 수 있다(예: 와사비 & 노리). 회귀 모델을 더 잘 훈련하고 맞추기 위해 상기 수학식 1에 표시된 정규화 된 버전의 PMI (NPMI)를 사용할 수 있다. 포인트 단위 상호 정보는 -1과 +1 사이에서 정규화 될 수 있다. 여기서 -1 (한계)은 절대로 함께 발생하지 않으며 0은 독립, +1은 완전한 동시 발생을 나타낸다. 따라서 -1과 1 사이의 점수를 통해 페어가 적합한지 직관적으로 결정할 수 있다.In the present invention, a food ingredient pairing score is calculated based on point-wise mutual information (PMI). The PMI score indicated in
NPMI 점수에 기초한 식재료 페어링 데이터 세트 생성시, 이상적으로는 3,567 개의 고유 재료에서 생성 된 6,359,961 개의 가능한 식재료 페어링 점수 (3,567 2)를 모두 계산할 수 있다. 그러나, 백만개 레시피 텍스트에서 거의 발생하지 않은 식재료가 노이즈 샘플로 작용할 수 있고, 또한 거의 발생하지 않는 식재료는 모델의 성능을 저하시킬 수 있다. 따라서 발생 횟수가 20을 초과하지 않는 식재료와 동시 발생 횟수가 5를 초과하지 않는 식재료 페어링을 제거하여 페어링을 구축했다. 결과는 상기 표1을 참고할 수 있다. 총 356,451 개의 유효한 알려진 페어링을 얻었고, 다른 모든 페어링은 알 수 없는 페어링으로 간주되었다. 식재료 페어링 점수의 최종 분포는 대략적인 정규 분포를 따른다. 분포의 상위 5 % (μ + 2σ)에서 재료 페어링 점수 (0.274 이상)는 보수 쌍이며, 음수를 가진 점수는 표 2에 표시된 것처럼 불량 페어링의 예라고 가정할 수 있다.When creating a food pairing data set based on the NPMI score, ideally, you can calculate all 6,359,961 possible food pairing scores (3,567 2) generated from 3,567 unique ingredients. However, foods that rarely occur in one million recipe texts can serve as noise samples, and foods that rarely occur can degrade the performance of the model. Therefore, pairings were established by removing food ingredients whose occurrence frequency does not exceed 20 and food ingredients whose number of occurrences does not exceed five. The results can be referred to Table 1 above. A total of 356,451 valid known pairings were obtained, and all other pairings were considered unknown pairings. The final distribution of food pairing scores follows a roughly normal distribution. In the top 5% of the distribution (μ + 2σ), the material pairing score (0.274 or higher) is the complement pair, and the score with a negative number can be assumed to be an example of poor pairing, as shown in Table 2.
[표2][Table 2]
재료 페어링 데이터 세트 중 바닐라와 페어링 하기 위한 데이터 세트에서 5 가지 최고의 재료를 표2에 표시하였다. 전문가의 판단인 The Flavor Bible에 따르는 경우 또한 초콜릿, 커피, 크림, 아이스크림 또는 설탕을 바닐라와 함께 사용하는 것을 추천한다.Among the material pairing data sets, the five best ingredients in the data set for pairing with vanilla are shown in Table 2. In accordance with expert judgment, The Flavor Bible, it is also recommended to use chocolate, coffee, cream, ice cream or sugar with vanilla.
프로세서(130)는 식재료 페어링 스코어를 계산한 이후, 하나 이상의 정규화된 식재료 페어링 스코어를 이용하여 식재료 페어링 스코어 데이터베이스를 구축할 수 있다.After calculating the food ingredient pairing score, the
페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공한다(S140). 이 때 식재료 페어링 예측 모델은 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것일 수 있다.The pairing data is input and the result data of predicting food ingredient pairing in the food ingredient pairing prediction model is provided (S140). In this case, the food ingredient pairing prediction model may be learned by using the food ingredient data and the food ingredient pairing score data as input data, and using a Siamese twin network composed of a first sub-network and a second sub-network.
식재료 페어링 예측 모델은 제1 식재료와 제2 식재료에 대한 식재료 페어링 스코어가 산출되도록 가중치를 갱신하는 것이고, 시맨틱 특징을 위한 딥 레이어와 희소성 특징을 위한 와이드 레이어를 통해 식재료 페어링 스코어를 계산할 수 있다.The food ingredient pairing prediction model updates weights to calculate food ingredient pairing scores for the first ingredient and the second ingredient, and the ingredient pairing score may be calculated through a deep layer for semantic features and a wide layer for sparsity features.
식재료 페어링 예측 모델은 실제 식재료 페어링 스코어(yab)와 코사인 유사도를 이용한 예측 식재료 페어링 스코어(Yab)를 이용한 손실 함수(J(θ))를 하기 수학식 2에 의해 계산하고, 손실 함수의 결과값이 최소화되도록 학습을 통해 최적의 가중치를 결정하는 것일 수 있다.The food ingredient pairing prediction model calculates the loss function (J(θ)) using the actual food ingredient pairing score (y ab ) and the predicted food ingredient pairing score (Y ab ) using the cosine similarity by
[수학식 2][Equation 2]
N: 학습에 사용된 총 입력 수N: Total number of inputs used for training
수학식 2는, 손실 함수 (평균 제곱 오차)를 최소화하기 위한 것으로, L은 학습 중에 최소화 될 계산 손실 함수이고, Θ는 학습 할 모델 매개 변수이고 N은 입력쌍에 대한 학습 데이터 총수를 각각 나타낸다. yab는 실제 점수 값이고, Yab는 예측 점수 값을 나타낸다. 제안된 식재료 페어링 예측 모델은 Adam 옵티마이저를 사용할 수 있다. Adam 옵티마이저는 모멘텀을 사용해 정확도를 향상시키고, RMSprop을 이용해 보폭 민감도를 보완하였으며, 학습 속도를 빠르고 안정적으로 할 수 있다.
프로세서(130)는 식재료를 나타내는 노드와 식재료와 식재료의 관련도를 나타내는 에지(Edge)로 구성되는 그래프 정보를 생성할 수 있고, 식재료 페어링 예측 모델은 일대다 식재료 페어링을 학습하기 위해 그래프 기반 신경망 아키텍처를 사용할 수 있다.The
식재료 페어링을 예측한 결과 데이터는 식재료 페어링 스코어에 기초한 식재료 페어링 랭킹 리스트를 포함할 수 있고, 요리 정보에 포함된 식재료 페어링 스코어, 새로운 식재료 페어링 스코어 및 추천 식재료 페어링 데이터를 포함할 수 있다.The result data of predicting food ingredient pairing may include an ingredient pairing ranking list based on the ingredient pairing score, and may include an ingredient pairing score included in the cooking information, a new ingredient pairing score, and recommended ingredient pairing data.
도 4는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 식재료 페어링 스코어를 설명하는 도면이다.4 is a diagram illustrating a food ingredient pairing score in a method of predicting food ingredient pairing using a Siamese twin network according to an embodiment of the present invention.
잘 알려진 식재료 페어링(예: 진앤 토닉 워터, 소금 & 고추, 바닐라 & 양파)을 포함하는 데이터 세트에 대한 훈련을 통해, 식재료 페어링 예측 모델은 덜 인기 있거나 자주 사용되지 않는 알려지지 않은 식재료 페어링 스코어(예: 진 & 아쿠아 비트, 와사비 & 노리, 라임 & 노팔)를 예측할 수 있다.By training on datasets that include well-known ingredient pairings (e.g., Gin & Tonic Water, Salt & Pepper, Vanilla & Onion), the ingredient pairing predictive model is less popular or less frequently used and unknown ingredient pairing scores (e.g.: Gin & Aqua Beet, Wasabi & Nori, Lime & Nopal) can be predicted.
도 5는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 식재료 페어링 예측 모델의 아키텍쳐를 설명하는 도면이다.FIG. 5 is a diagram illustrating the architecture of a food ingredient pairing prediction model in a food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
샴쌍둥이 네트워크는 서로 다른 두 입력 사이의 유사성을 배우기 위해 다양한 작업에 사용될 수 있으며, 샴쌍둥이 네트워크의 일부 변형이 사용될 수 있다. 본 발명에서는 두 문장을 입력으로받는 Manhattan LSTM 모델을 활용할 수 있다. Manhattan LSTM 모델은 각 문장에 대한 벡터 표현을 생성하고 간단한 함수 exp (h1 h2)를 사용하여 벡터 표현 사이의 유사성을 계산한다. 여기서 h1과 h2는 임베딩 벡터이다. 또한 포지티브 쌍에 대한 부분 손실 기능과 네거티브 쌍에 대한 부분 손실 기능으로 나눌 수 있는 맞춤형 대비 손실 기능을 활용할 수 있다. 손실 함수는 음수 쌍의 두 벡터 표현 사이의 거리를 넓히고 양수 쌍의 두 벡터 표현 사이의 거리를 좁힌다. 이 두 기능이 샴쌍둥이 네트워크를 사용하고 동일한 유형의 두 가지 다른 입력을 받는것과 달리, 샴쌍둥이 네트워크 모델 중 한 입력을 받아 다른 입력을 평가하는 표준으로 사용할 수도 있다. 입력은 표준으로 사용된 입력과의 유사성을 기반으로 평가된다. 본 발명은 위에서 언급 한 단순한 거리 기반 유사성을 넘어 식재료 페어링의 의미론적 관계를 훈련 시키도록 설계되었다.Siamese twins networks can be used for a variety of tasks to learn the similarity between two different inputs, and some variations of the Siamese twins network can be used. In the present invention, a Manhattan LSTM model that receives two sentences as input may be used. The Manhattan LSTM model generates vector representations for each sentence and computes the similarity between vector representations using a simple function exp(h1 h2). Where h1 and h2 are embedding vectors. In addition, a custom contrast loss function, which can be divided into a partial loss function for a positive pair and a partial loss function for a negative pair, is available. The loss function widens the distance between two vector representations of a negative pair and narrows the distance between two vector representations of a positive pair. Unlike these two functions using a Siamese twin network and accepting two different inputs of the same type, it can also take one input of a Siamese twin network model and use it as a standard to evaluate the other. The input is evaluated based on its similarity to the input used as the standard. The present invention is designed to train the semantic relationship of food ingredient pairing beyond the simple distance-based similarity mentioned above.
식재료 페어링 예측 모델의 아키텍처는 두가지 주요 구성 요소를 포함한다. 첫번째는 샴쌍둥이 네트워크를 사용하는 식재료 표현 컴포넌트(모듈)이다. 동일한 두개의 동일한 MLP(Multi-Layer Perceptron) 가중치는 각각 상이한 300 차원 워드 벡터 표현을 수신한다. 각 MLP에는 입력 재료 벡터를 처리하는 완전히 연결된 두 개의 레이어가 있다. (Xa, Xb)를 300 차원 단어 벡터로 표현 된 하나의 식재료 페어링이라고 보면, W* 및 b*는 각각 MLP의 공유 가중치 및 바이어스이며, f (·)는 비선형성에 대한 활성화 함수를 나타낸다. 우리는 정류 선형 단위 (ReLU)로 f (·) (max (x, 0))를 사용한다. 이 페어의 학습 된 표현 (ha, hb)은 수학적으로 하기 수학식 3과 같이 표현된다.The architecture of the food pairing prediction model includes two main components. The first is a food ingredient expression component (module) using the Siamese twins network. The same two identical Multi-Layer Perceptron (MLP) weights each receive a different 300-dimensional word vector representation. Each MLP has two fully connected layers that process the input material vector. Considering (X a , X b ) as one food ingredient pairing expressed as a 300-dimensional word vector, W * and b * are the shared weights and biases of MLP, respectively, and f (·) represents the activation function for nonlinearity. We use f (·) (max (x, 0)) as the rectified linear unit (ReLU). The learned expression (h a , h b ) of this pair is mathematically expressed as
[수학식 3][Equation 3]
이고 i 및 j는 숨겨진 유닛의 수이다. And i and j are the number of hidden units.
'페어링 스코어 예측 컴포넌트(모듈)'에서는 광범위한 딥 러닝(wide&deep learning)을 사용한다. 레이어는 와이드 레이어와 딥 레이어로 나뉜다. 딥 레이어에서, 2 개의 j 차원 학습 표현 벡터가 연결되어 2 개의 성분의 조인트 표현을 계산하는 다른 MLP로 전달된다. 이 조인트 표현은 딥 벡터 d로 표시되며 하기 수학식4와 같이 수학적으로 표현된다.The'pairing score prediction component (module)' uses wide&deep learning. Layers are divided into wide layers and deep layers. In the deep layer, two j-dimensional learning representation vectors are concatenated and passed to another MLP that computes the joint representation of the two components. This joint expression is expressed as a dip vector d and is mathematically expressed as in
[수학식 4][Equation 4]
이고 j는 각 레이어의 숨겨진 유닛의 수. 와이드 레이어에서, 2 개의 j 차원 학습 표현 벡터의 외부 곱이 계산되고 j × j 행렬이 생성된다. 행렬은 하기 수학식5와 같이 수학적으로 표현되는 j 2 차원의 와이드 벡터 w로 평탄화된다. And j is the number of hidden units in each layer. In the wide layer, the outer product of two j-dimensional learning expression vectors is calculated and a j × j matrix is generated. The matrix is flattened into a j2-dimensional wide vector w expressed mathematically as in
[수학식 5][Equation 5]
여기서 g는 n × n 행렬을 n2 차원의 단일 벡터로 변환하는 평탄화 함수를 나타낸다.Where g denotes a flattening function that transforms an n × n matrix into a single vector of n 2 dimensions.
이어서 와이드 벡터 w는 딥 벡터 d에 직접 연결된다. 와이드 벡터와 딥 벡터의 연결은 마지막으로 완전히 연결된 레이어로 전달되어 최종 출력에 대한 페어링 스코어를 계산한다. 전체적으로 (w, d)가 와이드 벡터와 딥 벡터의 연결이므로 식재료 페어 (Xa, Xb)에 대한 최종 출력 점수 Y는 수학적으로 하기 수학식 6과 같이 계산된다.Then the wide vector w is directly connected to the deep vector d. The concatenation of the wide vector and the deep vector is finally passed to the fully connected layer to calculate the pairing score for the final output. Overall, since (w, d) is a connection between the wide vector and the deep vector, the final output score Y for the food ingredient pair (Xa, Xb) is mathematically calculated as in
[수학식 6][Equation 6]
여기서 및 이고, j는 각 레이어에서 숨겨진 유닛의 수이다.here And And j is the number of hidden units in each layer.
식재료 페어링 예측 모델은 실제 식재료 페어링 스코어(yab)와 코사인 유사도를 이용한 예측 식재료 페어링 스코어(Yab)를 이용한 손실 함수(J(θ))를 하기 수학식 7에 의해 계산하고, 손실 함수의 결과값이 최소화되도록 학습을 통해 최적의 가중치를 결정하는 것일 수 있다.In the food ingredient pairing prediction model, the loss function (J(θ)) using the predicted food ingredient pairing score (Y ab ) using the actual food ingredient pairing score (y ab ) and the cosine similarity was calculated by
[수학식 7][Equation 7]
수학식 7은, 손실 함수 (평균 제곱 오차)를 최소화하기 위한 것으로, L은 학습 중에 최소화 될 계산 손실 함수이고, Θ는 학습 할 모델 매개 변수이고 N은 입력쌍에 대한 학습 데이터 총수를 각각 나타낸다. yab는 실제 점수 값이고, Yab는 예측 점수 값을 나타낸다. 제안된 식재료 페어링 예측 모델은 Adam 옵티마이저를 사용할 수 있다. Adam 옵티마이저는 모멘텀을 사용해 정확도를 향상시키고, RMSprop을 이용해 보폭 민감도를 보완하였으며, 학습 속도를 빠르고 안정적으로 할 수 있다.
도 6은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 모델의 예측 결과를 설명하는 도면이다.6 is a diagram illustrating a prediction result of a model in a food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
식재료 페어링 예측 모델을 평가하기 전에 먼저 기본 모델을 평가할 수 있다. 먼저 두 입력 성분 벡터 간의 코사인 유사성을 계산하여 페어링 점수를 예측한다. 그런 다음 Python Scikit-learn 패키지의, 선형 지원 벡터 회귀 분석기, 임의의 포레스트 회귀 분석기, 추가 트리 회귀 분석기, SGD 회귀 분석기 및 그라디언트 부스팅에 해당하는 기계 학습 모델을 기본 모델로 사용한다. 또한 간단한 버전의 샴쌍둥이 네트워크를 기본 모델 중 하나에 사용한다. 이 모든 모델에는 빌트인 그리드 검색으로 추정 된 하이퍼 파라미터가 장착되어 있다.Before evaluating the food pairing prediction model, the base model can be evaluated first. First, the pairing score is predicted by calculating the cosine similarity between the two input component vectors. Then, we use the machine learning model equivalent of the Python Scikit-learn package, a linear support vector regression analyzer, an arbitrary forest regression analyzer, an additional tree regression analyzer, an SGD regression analyzer, and gradient boosting as the base model. It also uses a simple version of the Siamese twins network in one of the base models. All of these models are equipped with hyperparameters estimated by built-in grid search.
하기 표 3에서 설명한대로 다음 5 가지 메트릭을 사용하여 모델 성능을 평가한다. RMSE (Root Mean Square Error), MSE (Mean Square Error), MAE (Mean Absolute Error), CORR (correlation) 및 R2와 비교할 때, 본 발명의 식재료 페어링 예측 모델(KitcheNette)은 모든 메트릭에서 기본 모델보다 성능이 뛰어나다.The following five metrics are used to evaluate model performance as described in Table 3 below. Compared with RMSE (Root Mean Square Error), MSE (Mean Square Error), MAE (Mean Absolute Error), CORR (correlation) and R2, the food ingredient pairing prediction model (KitcheNette) of the present invention performs better than the basic model in all metrics. This is excellent.
[표3][Table 3]
NDCG @ K (Normalized Discounted Cumulative Gain)를 사용하여 모델의 순위 성능을 평가하고 (도 6a) ROC 곡선을 사용하여 모델의 감도를 평가한다 (도 6b). NDCG @ K의 관점에서, 우리의 모델은 정확한 예측을 하는 데 있어 모든 기본 모델보다 뛰어나다. ROC 곡선은 모델의 분류 성능을 측정하는 데에도 사용된다. 예측 점수가 0.274 이상인 모든 페어링은 보완적인 페어링으로 간주한다. 점수가 낮은 페어링은 비 보완적인 것으로 간주한다. ROC 곡선 결과는 본 발명의 식재료 페어링 예측 모델이 보완적 페어링 분류에서 다른 모든 모델보다 높은 성능을 달성함을 보여준다.The ranking performance of the model was evaluated using NDCG @ K (Normalized Discounted Cumulative Gain) (Fig. 6a) and the sensitivity of the model was evaluated using the ROC curve (Fig. 6b). From NDCG @ K's point of view, our model outperforms all basic models in making accurate predictions. The ROC curve is also used to measure the classification performance of the model. All pairings with a predicted score of 0.274 or higher are considered as complementary pairings. Pairing with a low score is considered non-complementary. The ROC curve results show that the food ingredient pairing prediction model of the present invention achieves higher performance than all other models in the complementary pairing classification.
도 7은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에 대한 절제 테스트 결과를 설명하는 도면이다.7 is a diagram illustrating a result of an ablation test for a method for predicting food ingredient pairing using a Siamese twin network according to an embodiment of the present invention.
본 발명의 각 기능을 평가하기 위해 절제 테스트를 수행한다. 도 7에서 알 수 있듯이, 본 발명의 식재료 페어링 예측 모델의 광범위하고 심층적인 아키텍처 및 구성 요소 포함은 성능을 향상시키는 데 도움이 된다. 본 발명의 식재료 페어링 예측 모델이 샴쌍둥이 네트워크에서 배운 표현의 코사인 유사성을 사용하면, 식재료 페어링 스코어 예측에서 가장 낮은 성능을 얻는다. 두 표현의 연결(딥 레이어)은 모델의 성능을 크게 향상시킨다. 이것은 식재료 페어링 스코어를 예측하기 위해 의미론적 관계가 학습되어야 함을 나타낸다. 또한 두 가지 성분의 관계를 배우는 와이드 딥 아키텍처는 모델의 성능을 더욱 향상시킨다. 또한 무작위로 초기화 된 벡터 대신 입력 벡터에 성분 임베딩을 사용하면 모델의 성능이 향상된다.Ablation tests are performed to evaluate each function of the present invention. As can be seen from FIG. 7, the inclusion of extensive and in-depth architectures and components of the food ingredient pairing prediction model of the present invention helps to improve performance. When the food ingredient pairing prediction model of the present invention uses the cosine similarity of the expression learned in the Siamese twin network, the lowest performance is obtained in the food ingredient pairing score prediction. The connection of the two expressions (deep layer) greatly improves the performance of the model. This indicates that semantic relationships must be learned to predict food ingredient pairing scores. In addition, the wide deep architecture that learns the relationship between the two components further improves the model's performance. Also, using component embeddings in the input vectors instead of randomly initialized vectors improves the model's performance.
도8은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 알려진 페어링과 새로운 페어링 결과를 설명하는 도면이다.8 is a diagram illustrating a known pairing and a new pairing result in a food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
자주 사용하지 않는 음식 재료 페어링에 대한 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법의 예측의 정확성을 입증하기 위해 알려진 재료 페어링과 알려지지 않은 재료 페어링의 예측 결과를 비교 분석한다. 도 8에 도시된 바와 같이, 3 개의 유사한 탄산 화이트 와인 (샴페인, 스파클링 와인 및 프로 세코)을 선택한 후, 다른 재료와 페어를 이루는 각 와인의 점수를 계산하고 하기 세 가지 사례에 대해 가능한 모든 페어링을 분석했다.In order to verify the accuracy of the prediction of the food ingredient pairing prediction method using the Siamese twin network for the food ingredient pairing that is not frequently used, the prediction results of the known ingredient pairing and the unknown ingredient pairing were compared and analyzed. As shown in FIG. 8, after selecting three similar carbonated white wines (champagne, sparkling wine and prosecco), the score of each wine paired with other ingredients was calculated, and all possible pairings were made for the following three cases. Analyzed.
사례 1. 이미 높은 평가를 받는 잘 알려진 성분인 샴페인과 오렌지 트위스트를 비교를 위한 페어링으로 사용했다. 오렌지 트위스트 & 스파클링 와인과 오렌지 트위스트 & 프로 세코 페어링은 드문 페어링이기 때문에 페어링 스코어가 없다. 또한 오렌지 트위스트와 비슷하지만 세 가지 와인 중 자주 사용되지 않는 두 가지 다른 성분 (오렌지 웨지 및 라임 트위스트)을 선택했다. 결과적으로 한 쌍의 알려진 페어링과 8 개의 알려지지 않은 페어링이 있다. 9 개의 모든 페어링의 예측 결과는 일관되게 높았다 (0.33-0.45).
사례 2. 계산된 페어링 스코어를 기반으로, 우리는 와인을 서로 다른 성분과 동시에 보완하여 샴페인과 엘더 플라워 리큐어, 스파클링 와인 & 크림 드 카시스, 프로 세코 & 레몬 셔벗 등 세 가지 고유 한 페어링을 만들었다. 나머지 6 개의 알려지지 않은 페어링의 예측 결과는 3 개의 알려진 알려진 페어링과 비교하여 지속적으로 높았다 (0.29-0.42).
사례 3. 마지막으로, 우리는 샴페인과 최악의 페어링을 만들고 나머지 두 와인과 짝을 이루어 양파를 선택했다. 두 개의 알려지지 않은 페어링 (스파클링 와인 & 양파 및 프로 세코 & 양파)의 예측 결과는 알려진 페어링 (샴페인 & 양파)의 점수만큼 일관되게 낮았다.
결론적으로, 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법은 유추적 추론에 기초하여 특정 페어링에 대해 예측할 수 있음을 보여준다. 이는 A가 B와 유사하고 A가 C와 좋은 페어링을 형성하면 B도 좋은 페어링을 형성할 가능성이 높다는 것을 나타낸다. 이 추론을 사용하면 스코어가 계산되지 않은 식재료 페어링에서 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법의 성능이 향상되었다고 생각할 수 있다.In conclusion, it is shown that the food ingredient pairing prediction method using the Siamese twin network can predict a specific pairing based on analogical inference. This indicates that if A is similar to B and A forms a good pairing with C, then B is likely to form a good pairing. Using this inference, it can be considered that the performance of the method of predicting food pairing using the Siamese twin network in food pairing for which scores are not calculated.
도 9는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 페어링 랭킹을 설명하는 도면이다.9 is a diagram illustrating a pairing ranking in a food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법(KitcheNette)에 의해 등급이 매겨진 재료와 FlavorDB 4에서 등급이 매겨진 재료 사이의 비교 분석을 수행한다. 널리 사용되는 4 가지 음식 재료(토마토, 양파, 후추 및 계피)를 선택하고 도12에 나타낸 바와 같이 각각의 선택된 재료에 대한 상위 10 가지 재료 페어링을 검색한다. 본 발명에 따르면 일반적으로 일상적인 요리 및 식사에 자주 사용되는 음식 재료(예: 토마토 및 양상추, 양파 및 갈은 소고기, 후추 및 오레가노, 계피 및 정향, 사과)를 추천한다. 반면 FlavorDB는 선택된 재료와 많은 화합물을 공유하는 음식 재료를 추천했지만, 일부 추천 사항은 조리 및 식사를 위해 선택된 재료(예: 토마토 및 차, 양파 및 코코아, 후추 및 오렌지)와 잘 맞지 않았다.A comparative analysis is performed between ingredients graded by the food pairing prediction method (KitcheNette) using the Siamese twins network and ingredients graded in
도 10은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 페어링 랭킹을 설명하는 도면이다.10 is a diagram illustrating a pairing ranking of a food ingredient pairing prediction method using a Siamese twin network according to an embodiment of the present invention.
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에 의하면 새로운 음식-음료 페어링을 찾을 수 있다. 음식 및 음료 권장 사항에 대한 전문 컨텐츠인 “The Flavor Bible” 및“WHAT to DRINK with WHAT you EAT”의 권장 사항을 도13의 recommendations에 표시하여 본 발명(KitcheNette)과 비교했다. 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에 의하면 이 책의 요리 전문가의 추천 사항과 일치하는 추천 사항을 제공 할뿐만 아니라 두 권의 책보다 훨씬 더 많은 페어링을 추천한다.A new food-beverage pairing can be found according to the method of predicting food ingredient pairing using the Siamese twin network. Recommendations of “The Flavor Bible” and “WHAT to DRINK with WHAT you EAT”, which are specialized content for food and beverage recommendations, were displayed in the recommendations of FIG. 13 and compared with the present invention (KitcheNette). According to the method of predicting food ingredient pairing using the Siamese twins network, it not only provides recommendations that match the recommendations of culinary experts in this book, but also recommends far more pairings than two books.
레드 와인과 화이트 와인의 경우, 본 발명은 다양한 고기 (예: 쇠고기, 양고기) 및 특정 해산물 재료 (예: 홍합, 랍스터, 새우)를 각각 추천했다. 본 발명은 사케와 짝을 이루는 본격적인 일본 음식 재료를 추천했으며, 이는 데이터 중심 모델이 아시아 요리에서 덜 일반적인 음식 재료를 추천 할 수 있음을 보여준다.For red and white wines, the present invention recommended a variety of meats (eg beef, lamb) and specific seafood ingredients (eg mussels, lobster, shrimp), respectively. The present invention recommended authentic Japanese food ingredients paired with sake, which shows that data-driven models can recommend less common food ingredients in Asian cuisine.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. An embodiment of the present invention may also be implemented in the form of a recording medium including instructions executable by a computer, such as a program module executed by a computer. Computer-readable media can be any available media that can be accessed by a computer, and includes both volatile and nonvolatile media, removable and non-removable media. Further, the computer-readable medium may include a computer storage medium. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.Although the methods and systems of the present invention have been described in connection with specific embodiments, some or all of their components or operations may be implemented using a computer system having a general-purpose hardware architecture.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present application is for illustrative purposes only, and those of ordinary skill in the art to which the present application pertains will be able to understand that it is possible to easily transform it into other specific forms without changing the technical spirit or essential features of the present application. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not limiting. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as being distributed may also be implemented in a combined form.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present application is indicated by the claims to be described later rather than the detailed description, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present application.
100: 서버
110: 통신 모듈
120: 메모리
130: 프로세서
140: 데이터베이스
150: 입력모듈
200: 사용자 단말100: server
110: communication module
120: memory
130: processor
140: database
150: input module
200: user terminal
Claims (12)
(a) 네트워크를 통해 하나 이상의 요리 정보를 수집하고, 상기 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하는 단계;
(b) 상기 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하는 단계; 및
(c) 상기 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공하는 단계;를 포함하되,
상기 식재료 페어링 예측 모델은 상기 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것인,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법.In the food ingredient pairing prediction method using a Siamese twin network performed by a server,
(a) collecting one or more cooking information through a network, extracting food ingredients according to the collected cooking information, and generating food material data;
(b) providing pairing data by calculating a food ingredient pairing score according to the frequency of simultaneous appearance of ingredients based on the food ingredient data; And
(c) providing data as a result of predicting food ingredient pairing in a food ingredient pairing prediction model by inputting the pairing data; including,
The food ingredient pairing prediction model is learned by using the food ingredient data and the ingredient pairing score data as input data, and using a Siamese twin network consisting of a first sub-network and a second sub-network,
Food ingredient pairing prediction method using Siamese twins network.
상기 (a) 단계에서 식재료들을 추출할 때, 순환 신경망에 기반한 식재료 명칭 추출 모듈을 사용하여, 수집된 요리 정보에서 각 단어에 대해 로지스틱 회귀를 수행하여 식재료 명칭을 추출하는,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법.The method of claim 1,
When extracting food ingredients in step (a), using a food ingredient name extraction module based on a recurrent neural network, performing logistic regression on each word from the collected cooking information to extract food ingredient names,
Food ingredient pairing prediction method using Siamese twins network.
상기 순환 신경망은 양방향 LSTM(Long Short Term Memory models)에 기반한,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법.The method of claim 2,
The recurrent neural network is based on bidirectional Long Short Term Memory models (LSTM),
Food ingredient pairing prediction method using Siamese twins network.
상기 페어링 데이터는 상기 요리 정보에서 두 개의 식재료가 개별적으로 발생하는 확률 및 동시에 발생하는 확률을 하기 수학식 1에 의해 계산하는NPMI(normalized point-wise mutual information)를 기초로 식재료 페어링 스코어를 계산하여 정규화한 것인,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법.
[수학식1]
p(x,y)=
p(x)=
p(y)=
The method of claim 1,
The pairing data is normalized by calculating a food ingredient pairing score based on the NPMI (normalized point-wise mutual information), which calculates the probability that two ingredients occur individually and the probability that they occur simultaneously in the cooking information. One,
Food ingredient pairing prediction method using Siamese twins network.
[Equation 1]
p(x,y)=
p(x)=
p(y)=
상기 (b) 단계에서, 하나 이상의 상기 정규화된 식재료 페어링 스코어를 이용하여 식재료 페어링 스코어 데이터베이스를 구축하는 단계를 포함하는,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법.The method of claim 4,
In the step (b), comprising the step of building a food ingredient pairing score database using the one or more normalized food ingredient pairing scores,
Food ingredient pairing prediction method using Siamese twins network.
상기 식재료 페어링 예측 모델은 제1 식재료와 제2 식재료에 대한 상기 식재료 페어링 스코어가 산출되도록 가중치를 갱신하는 것이고, 시맨틱 특징을 위한 딥 레이어와 희소성 특징을 위한 와이드 레이어를 통해 식재료 페어링 스코어를 계산하는 것인,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법.The method of claim 1,
The food ingredient pairing prediction model updates weights to calculate the food ingredient pairing score for the first ingredient and the second ingredient, and calculates the ingredient pairing score through a deep layer for semantic features and a wide layer for sparsity features. sign,
Food ingredient pairing prediction method using Siamese twins network.
상기 식재료 페어링 예측 모델은 실제 식재료 페어링 스코어(yab)와 코사인 유사도를 이용한 예측 식재료 페어링 스코어(Yab)를 이용한 손실 함수(J(θ))를 하기 수학식 2에 의해 계산하고, 상기 손실 함수의 결과값이 최소화되도록 학습을 통해 최적의 가중치를 결정하는 것인,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법.
[수학식2]
N: 학습에 사용된 총 입력 수The method of claim 6,
The food ingredient pairing prediction model calculates a loss function (J(θ)) using an actual food ingredient pairing score (y ab ) and a predicted food ingredient pairing score (Y ab ) using the cosine similarity by Equation 2 below, and the loss function The optimal weight is determined through learning so that the result value of is minimized.
Food ingredient pairing prediction method using Siamese twins network.
[Equation 2]
N: Total number of inputs used for training
상기 (a)단계 이후, 식재료를 나타내는 노드와 식재료와 식재료의 관련도를 나타내는 에지(Edge)로 구성되는 그래프 정보를 생성하는 단계를 더 포함하고,
상기 식재료 페어링 예측 모델은 일대다 식재료 페어링을 학습하기 위해 그래프 기반 신경망 아키텍처를 사용하는 것인,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법.The method of claim 1,
After the step (a), the step of generating graph information consisting of a node representing a food ingredient and an edge representing a degree of relation between the food ingredient and the food ingredient,
The food ingredient pairing prediction model uses a graph-based neural network architecture to learn one-to-many food ingredient pairing,
Food ingredient pairing prediction method using Siamese twins network.
상기 식재료 페어링을 예측한 결과 데이터는 상기 식재료 페어링 스코어에 기초한 식재료 페어링 랭킹 리스트를 포함하는,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법.The method of claim 1,
The result data of predicting the food ingredient pairing includes a food ingredient pairing ranking list based on the food ingredient pairing score,
Food ingredient pairing prediction method using Siamese twins network.
상기 식재료 페어링을 예측한 결과 데이터는 상기 요리 정보에 포함된 식재료 페어링 스코어, 새로운 식재료 페어링 스코어 및 추천 식재료 페어링 데이터를 포함하는,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법.The method of claim 1,
The result data of predicting the food ingredient pairing includes food ingredient pairing score, new ingredient pairing score, and recommended ingredient pairing data included in the cooking information,
Food ingredient pairing prediction method using Siamese twins network.
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 프로그램이 저장된 메모리;
상기 메모리에 저장된 프로그램을 실행하는 프로세서를 포함하며, 상기 프로세서는 상기 프로그램의 실행에 의해,
네트워크를 통해 하나 이상의 요리 정보를 수집하고, 상기 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하고,
상기 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하고,
상기 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공하고,
상기 식재료 페어링 예측 모델은 상기 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것인,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버.In a food ingredient pairing prediction server using a Siamese twin network,
A memory storing a food ingredient pairing prediction program using a Siamese twin network;
And a processor executing a program stored in the memory, wherein the processor executes the program,
Collecting one or more cooking information through a network, extracting food ingredients for each of the collected cooking information to generate food material data,
Provide pairing data by calculating a food ingredient pairing score according to the frequency of simultaneous appearance between ingredients based on the food ingredient data,
Provides data as a result of predicting food ingredient pairing in the food ingredient pairing prediction model by inputting the pairing data,
The food ingredient pairing prediction model is learned by using the food ingredient data and the ingredient pairing score data as input data, and using a Siamese twin network consisting of a first sub-network and a second sub-network,
Food ingredient pairing prediction server using Siamese twins network.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190097335 | 2019-08-09 | ||
KR20190097335 | 2019-08-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210017973A true KR20210017973A (en) | 2021-02-17 |
KR102300474B1 KR102300474B1 (en) | 2021-09-10 |
Family
ID=74731357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190158385A KR102300474B1 (en) | 2019-08-09 | 2019-12-02 | Method and server for food ingredient pairing prediction using siamese neural network |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102300474B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220128145A (en) * | 2021-03-12 | 2022-09-20 | 주식회사 퓨처키친 | Method for food recommendation using deep-learning module |
CN117198466A (en) * | 2023-11-08 | 2023-12-08 | 北京四海汇智科技有限公司 | Diet management method and system for kidney disease patients |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017156886A (en) * | 2016-02-29 | 2017-09-07 | Kddi株式会社 | Device of tracking object taking similarity degree between images into consideration, program thereof and method thereof |
KR101874604B1 (en) * | 2016-08-10 | 2018-07-04 | 주식회사 원더풀플랫폼 | Method for generating creation recipe |
KR20180086712A (en) | 2017-01-23 | 2018-08-01 | 이용진 | Iot-based food materials checking and recipe contents providing platform |
KR20190065665A (en) * | 2017-12-04 | 2019-06-12 | 주식회사 솔루게이트 | Apparatus and method for recognizing Korean named entity using deep-learning |
-
2019
- 2019-12-02 KR KR1020190158385A patent/KR102300474B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017156886A (en) * | 2016-02-29 | 2017-09-07 | Kddi株式会社 | Device of tracking object taking similarity degree between images into consideration, program thereof and method thereof |
KR101874604B1 (en) * | 2016-08-10 | 2018-07-04 | 주식회사 원더풀플랫폼 | Method for generating creation recipe |
KR20180086712A (en) | 2017-01-23 | 2018-08-01 | 이용진 | Iot-based food materials checking and recipe contents providing platform |
KR20190065665A (en) * | 2017-12-04 | 2019-06-12 | 주식회사 솔루게이트 | Apparatus and method for recognizing Korean named entity using deep-learning |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220128145A (en) * | 2021-03-12 | 2022-09-20 | 주식회사 퓨처키친 | Method for food recommendation using deep-learning module |
CN117198466A (en) * | 2023-11-08 | 2023-12-08 | 北京四海汇智科技有限公司 | Diet management method and system for kidney disease patients |
CN117198466B (en) * | 2023-11-08 | 2024-01-26 | 北京四海汇智科技有限公司 | Diet management method and system for kidney disease patients |
Also Published As
Publication number | Publication date |
---|---|
KR102300474B1 (en) | 2021-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhukov et al. | Cross-task weakly supervised learning from instructional videos | |
Park et al. | FlavorGraph: a large-scale food-chemical graph for generating food representations and recommending food pairings | |
Tauber | Marketing notes and communications: Hit: Heuristic ideation technique—a systematic procedure for new product search | |
Park et al. | Kitchenette: Predicting and recommending food ingredient pairings using siamese neural networks | |
Charte et al. | QUINTA: A question tagging assistant to improve the answering ratio in electronic forums | |
CN109447266A (en) | A kind of agricultural science and technology service intelligent sorting method based on big data | |
CN110851571B (en) | Data processing method and device, electronic equipment and computer readable storage medium | |
KR102300474B1 (en) | Method and server for food ingredient pairing prediction using siamese neural network | |
CN109871485A (en) | A kind of personalized recommendation method and device | |
CN110119479B (en) | Restaurant recommendation method, restaurant recommendation device, restaurant recommendation equipment and readable storage medium | |
WO2015051462A1 (en) | System and method for classifying food products | |
Nishimura et al. | Structure-aware procedural text generation from an image sequence | |
CN107833088A (en) | Content providing, device and smart machine | |
Amac et al. | Procedural reasoning networks for understanding multimodal procedures | |
Gim et al. | Recipebowl: A cooking recommender for ingredients and recipes using set transformer | |
Rahman Khilji et al. | Question classification and answer extraction for developing a cooking QA system | |
Tian et al. | Recipe representation learning with networks | |
CN110580285B (en) | Product label determination method and device and electronic equipment | |
Reusch et al. | RecipeGM: a hierarchical recipe generation model | |
Sakib et al. | Assorted, archetypal and annotated two million (3a2m) cooking recipes dataset based on active learning | |
Chen et al. | Understanding the wine judges and evaluating the consistency through white-box classification algorithms | |
Dvornik et al. | Graph2vid: Flow graph to video grounding for weakly-supervised multi-step localization | |
Katserelis et al. | Towards Fine-Dining Recipe Generation with Generative Pre-trained Transformers | |
Aljbawi | Health-aware food planner: A personalized recipe generation approach based on gpt-2 | |
Schwabl | Classifying user information needs in cooking dialogues–an empirical performance evaluation of transformer networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |