KR102300474B1 - 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 및 서버 - Google Patents
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 및 서버 Download PDFInfo
- Publication number
- KR102300474B1 KR102300474B1 KR1020190158385A KR20190158385A KR102300474B1 KR 102300474 B1 KR102300474 B1 KR 102300474B1 KR 1020190158385 A KR1020190158385 A KR 1020190158385A KR 20190158385 A KR20190158385 A KR 20190158385A KR 102300474 B1 KR102300474 B1 KR 102300474B1
- Authority
- KR
- South Korea
- Prior art keywords
- pairing
- ingredient
- data
- food
- score
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 235000012041 food component Nutrition 0.000 title claims description 19
- 239000005417 food ingredient Substances 0.000 title claims description 19
- 238000013528 artificial neural network Methods 0.000 title claims description 9
- 239000004615 ingredient Substances 0.000 claims abstract description 179
- 235000013305 food Nutrition 0.000 claims abstract description 81
- 206010010688 Conjoined twins Diseases 0.000 claims abstract description 68
- 238000010411 cooking Methods 0.000 claims abstract description 24
- 239000000463 material Substances 0.000 claims abstract description 7
- 230000006870 function Effects 0.000 claims description 21
- 230000015654 memory Effects 0.000 claims description 14
- 238000012549 training Methods 0.000 claims description 8
- 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 22
- 238000010586 diagram Methods 0.000 description 14
- 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
- 238000012545 processing Methods 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
- 239000006002 Pepper Substances 0.000 description 4
- 235000016761 Piper aduncum Nutrition 0.000 description 4
- 240000003889 Piper guineense Species 0.000 description 4
- 235000017804 Piper guineense Nutrition 0.000 description 4
- 235000008184 Piper nigrum Nutrition 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 235000019995 prosecco Nutrition 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
- 240000003768 Solanum lycopersicum Species 0.000 description 3
- 235000009499 Vanilla fragrans Nutrition 0.000 description 3
- 244000263375 Vanilla tahitensis Species 0.000 description 3
- 235000012036 Vanilla tahitensis Nutrition 0.000 description 3
- 235000015278 beef Nutrition 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 239000011159 matrix material Substances 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
- 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
- 230000008569 process Effects 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
- 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
- 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
- 240000007673 Origanum vulgare Species 0.000 description 1
- 235000001466 Ribes nigrum Nutrition 0.000 description 1
- 241001312569 Ribes nigrum Species 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
- 238000002679 ablation Methods 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
- 230000008901 benefit Effects 0.000 description 1
- 235000013361 beverage Nutrition 0.000 description 1
- 235000014121 butter Nutrition 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
- 230000003203 everyday effect Effects 0.000 description 1
- 238000009499 grossing Methods 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
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 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
본원의 일 측면에 따른 서버에 의해 수행되는 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법은, 네트워크를 통해 하나 이상의 요리 정보를 수집하고, 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하는 단계; 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하는 단계; 및 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공하는 단계;를 포함한다. 식재료 페어링 예측 모델은 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것이다.
Description
본 발명은 식재료 페어링을 예측하는 것으로, 보다 상세하게는 다양한 종류의 식재료 데이터를 입력으로 샴쌍둥이 네트워크 이용하여 식재료 페어링을 예측하는 방법 및 서버에 관한 것이다.
요리 업계에는 수많은 재료가 존재하고, 수많은 식재료들이 있지만, 요리사들과 요리연구가들은 소수의 식재료만을 선택해서 사용하고 있다.
푸드페어링 분야에서는 푸드페어링 가이드북 등을 통해 다양한 형태의 식재료들의 조합을 추천하나, 푸드페어링은 전문가의 경험을 바탕으로 이루어지기 때문에 주관적인 측면이 강해서 정량화 하기가 어렵고, 새로운 레시피의 추천에 한계가 있다.
푸드페어링 연구 중 하나는 음식 재료가 공유하는 향미 화합물의 수를 기반으로 네트워크의 에지가 구축되는 향미 네트워크를 소개한다. 향미 네트워크는 381 성분 및 1,021 향미 화합물로 구성된다. FlavorDB는 기존 식품 저장소를 결합하여 사용자 대화형 페이지가 있는 더 큰 데이터베이스를 제공한다. 음식 브릿징은 두 성분의 화학적 유사성이 낮음에도 불구하고 한 쌍의 친화력을 통해 두 성분 사이에 브릿지를 추가하여 향미 네트워크를 개선한다. 다만 이들은 제한된 수의 향미 화합물 및 천연 성분만을 포함하나, 일부 잘 알려진 음식 쌍(예를 들어, 레드 와인 및 쇠고기)은 공통적으로 향미 화합물이 거의 없다.
최근 많은 도메인에 인공지능이 적용되는 추세이지만, 아직까지 음식 정보를 다루는 데이터에 대한 인공지능의 적용은 부족한 실정이다.
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서 인공신경망 기반의 모델을 활용하여 식재료 페어링을 예측하는 방법을 제공한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 해결하기 위한 기술적 수단으로서, 본 개시의 제 1측면에 따른 서버에 의해 수행되는 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법은, 네트워크를 통해 하나 이상의 요리 정보를 수집하고, 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하는 단계; 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하는 단계; 및 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공하는 단계;를 포함한다. 식재료 페어링 예측 모델은 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것이다.
상술한 기술적 과제를 해결하기 위한 기술적 수단으로서, 본 개시의 제 2 측면에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버는, 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 프로그램이 저장된 메모리; 메모리에 저장된 프로그램을 실행하는 프로세서를 포함하며, 프로세서는 프로그램의 실행에 의해, 네트워크를 통해 하나 이상의 요리 정보를 수집하고, 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하고, 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하고, 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공한다. 식재료 페어링 예측 모델은 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것이다.
전술한 본원의 과제 해결 수단 중 어느 하나에 의하면, 인공신경망 기반의 샴쌍둥이 네트워크를 식재료 페어링 예측에 활용함으로써 새롭고 다양한 식재료 페어링을 발견할 수 있다.
여러가지 식재료 페어링을 포함하는 대규모 데이터 세트를 구축하여 전문가에 의한 식재료 페어링 추천보다 더 많은 데이터를 분석할 수 있고, 정성 분석을 통해 보완적인 식재료 페어링을 추천하고, 새로운 식재료 페어링을 발견할 수 있다.
도 1은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버의 구성을 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 시스템의 구성을 도시한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법의 진행 단계를 나타낸 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 식재료 페어링 스코어를 설명하는 도면이다.
도 5는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 식재료 페어링 예측 모델의 아키텍쳐를 설명하는 도면이다.
도 6은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 모델의 예측 결과를 설명하는 도면이다.
도 7은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에 대한 절제 테스트 결과를 설명하는 도면이다.
도8은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 알려진 페어링과 새로운 페어링 결과를 설명하는 도면이다.
도 9는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 페어링 랭킹을 설명하는 도면이다.
도 10은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 페어링 랭킹을 설명하는 도면이다.
도 2는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 시스템의 구성을 도시한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법의 진행 단계를 나타낸 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 식재료 페어링 스코어를 설명하는 도면이다.
도 5는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 식재료 페어링 예측 모델의 아키텍쳐를 설명하는 도면이다.
도 6은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 모델의 예측 결과를 설명하는 도면이다.
도 7은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에 대한 절제 테스트 결과를 설명하는 도면이다.
도8은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 알려진 페어링과 새로운 페어링 결과를 설명하는 도면이다.
도 9는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 페어링 랭킹을 설명하는 도면이다.
도 10은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 페어링 랭킹을 설명하는 도면이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 “상에” 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
이하 첨부된 도면을 참고하여 본 발명의 일 실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버의 구성을 도시한 블록도이다.
도시된 바와 같이 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버(100)는 통신 모듈(110), 메모리(120), 프로세서(130), 데이터베이스(140) 및 입력모듈(150)을 포함할 수 있다.
통신모듈(110)은 접속된 사용자 단말(100) 및 연동된 서버(200)와 각각 데이터를 통신한다. 통신모듈(110)은 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.
메모리(120)에는 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 프로그램이 저장된다. 식재료 페어링 예측 프로그램은 네트워크를 통해 하나 이상의 요리 정보를 수집하고, 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하고, 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하고, 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공한다. 이 때 식재료 페어링 예측 모델은 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것이다.
이러한 메모리(120)에는 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버(100)의 구동을 위한 운영 체제나 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 프로그램의 실행 과정에서 발생되는 여러 종류가 데이터가 저장된다.
이때, 메모리(120)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치를 통칭하는 것이다.
또한, 메모리(120)는 프로세서(130)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행할 수 있다. 여기서, 메모리(120)는 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치 외에 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
프로세서(130)는 메모리(140)에 저장된 프로그램을 실행하되, 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측프로그램의 실행에 따르는 전체 과정을 제어한다. 프로세서(130)가 수행하는 각각의 동작에 대해서는 추후 보다 상세히 살펴보기로 한다.
이러한 프로세서(130)는 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이 크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
데이터베이스(140)는 프로세서(130)의 제어에 따라, 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측시스템에 필요한 데이터를 저장 또는 제공한다. 이러한 데이터베이스(140)는 메모리(140)와는 별도의 구성 요소로서 포함되거나, 또는 메모리(140)의 일부 영역에 구축될 수도 있다.
도 2는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 시스템의 구성을 도시한 블록도이다.
이용한 식재료 페어링 예측 시스템은 서버(100) 및 복수의 사용자 단말(200)을 포함한다. 이들은 네트워크를 통해 연결 될 수 있다.
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법은 서버(100)에서 실시될 수 있다. 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에서 데이터 분석은 서버(100)에서 이루어지고, 분석데이터 표시는 사용자 단말(200)에서 이루어 질 수 있다.
도 3은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법의 진행 단계를 나타낸 흐름도이다.
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법은 네트워크를 통해 하나 이상의 요리 정보를 수집하고(S110), 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성한다(S120).
프로세서(130)는 식재료들을 추출할 때, 순환 신경망에 기반한 식재료 명칭 추출 모듈을 사용하여, 수집된 요리 정보에서 각 단어에 대해 로지스틱 회귀를 수행하여 식재료 명칭을 추출할 수 있다. 이 때 순환 신경망은 양방향 LSTM(Long Short Term Memory models)을 이용할 수 있다.
예를 들면, 요리와 관련된, 여러 유명 웹 사이트에서 수집 한, 약 백만 개의 레시피와 해당 이미지를 포함하는 데이터 세트인 Recipe1M을 활용할 수 있다. Recipe1M의 모든 내용은 텍스트와 이미지의 두 가지 범주로 나눌 수 있다. Recipe1M의 레시피 텍스트는 식재료 목록과 레시피 지침 두 부분으로 구성된다. Im2Recipe는 양방향 LSTM 기반 재료 명칭 추출 모듈을 사용하여 Recipe1M의 모든 식재료 목록에서 각 단어에 대해 로지스틱 회귀를 수행하여 재료 명칭만 추출할 수 있다. 예를 들어, "2 tbsp의 올리브 오일"은 올리브 오일로 추출된다. 레시피에 대한 지침에서 식재료 명칭을 포함한 모든 어휘를 워드투벡터(word2vec)패션으로 학습시킬 수 있다.
예를 들면 하기 표1과 같이 총 30,167 개의 학습된 어휘 중에서 3,567 개의 고유한 재료 명칭을 얻을 수 있다. 알려진 페어(known pairs)는 발생 횟수가 20보다 큰 식재료로 구성된다. 알려진 페어(unknown pairs)는 동시 발생 횟수가 적어도 5회 이상이다.
[표1]
식재료 데이터들이 생성된 이후에는 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공한다(S130).
전통적인 재료 페어링 방법은 요리 산업의 인간 전문가에 대한 광범위한 경험과 지식에 의존한다. 결과적으로 딥 러닝 모델 학습에 사용할 수 있는 데이터 양이 충분하지 않다. 이 문제를 해결하기 위해 딥 러닝 모델을 학습할 수 있는 새로운 대규모 식재료 페어링 점수 데이터 세트를 구성한다. 식재료 페어링은 재료가 서로 얼마나 잘 보완되는지에 따라 -1에서 1까지의 점수가 부여된다. 대량의 레시피 코퍼스의 식재료의 동시 발생 정보가, 각 레시피에서 재료가 어떻게 결합되는지에 대한 통찰력을 제공 할 수 있다. 이 연구에서는 데이터 집합에 통계적 동시 발생 정보가 포함되어 있으므로 재료 수 또는 조리 절차의 수를 고려하지 않았다.
페어링 데이터는 요리 정보에서 두 개의 식재료가 개별적으로 발생하는 확률 및 동시에 발생하는 확률을 하기 수학식 1에 의해 계산하는NPMI(normalized point-wise mutual information)를 기초로 식재료 페어링 스코어를 계산하여 정규화한 것일 수 있다.
[수학식1]
본 발명에서는 PMI (point-wise mutual information)를 기반으로 식재료 페어링 스코어를 계산한다. 상기 수학식 1에 표시된 PMI 점수는 p (x, y)가 동시에 발생하는 두 요소의 확률이며, 이는 개별적으로 p (x), p (y)가 발생하는 각 요소의 확률과 비교된다. 커스텀 스코어는 낮은 동시 발생 페어를 가진 소금 또는 버터와 같이 매우 인기 있는 재료에 불이익을 주어 좋은/나쁜 페어를 정확하게 나타내도록 설계되었다. 반면에 덜 인기 있는 재료로 구성된 페어는 좋은 보완적 페어가 될 수 있다(예: 와사비 & 노리). 회귀 모델을 더 잘 훈련하고 맞추기 위해 상기 수학식 1에 표시된 정규화 된 버전의 PMI (NPMI)를 사용할 수 있다. 포인트 단위 상호 정보는 -1과 +1 사이에서 정규화 될 수 있다. 여기서 -1 (한계)은 절대로 함께 발생하지 않으며 0은 독립, +1은 완전한 동시 발생을 나타낸다. 따라서 -1과 1 사이의 점수를 통해 페어가 적합한지 직관적으로 결정할 수 있다.
NPMI 점수에 기초한 식재료 페어링 데이터 세트 생성시, 이상적으로는 3,567 개의 고유 재료에서 생성 된 6,359,961 개의 가능한 식재료 페어링 점수 (3,567 2)를 모두 계산할 수 있다. 그러나, 백만개 레시피 텍스트에서 거의 발생하지 않은 식재료가 노이즈 샘플로 작용할 수 있고, 또한 거의 발생하지 않는 식재료는 모델의 성능을 저하시킬 수 있다. 따라서 발생 횟수가 20을 초과하지 않는 식재료와 동시 발생 횟수가 5를 초과하지 않는 식재료 페어링을 제거하여 페어링을 구축했다. 결과는 상기 표1을 참고할 수 있다. 총 356,451 개의 유효한 알려진 페어링을 얻었고, 다른 모든 페어링은 알 수 없는 페어링으로 간주되었다. 식재료 페어링 점수의 최종 분포는 대략적인 정규 분포를 따른다. 분포의 상위 5 % (μ + 2σ)에서 재료 페어링 점수 (0.274 이상)는 보수 쌍이며, 음수를 가진 점수는 표 2에 표시된 것처럼 불량 페어링의 예라고 가정할 수 있다.
[표2]
재료 페어링 데이터 세트 중 바닐라와 페어링 하기 위한 데이터 세트에서 5 가지 최고의 재료를 표2에 표시하였다. 전문가의 판단인 The Flavor Bible에 따르는 경우 또한 초콜릿, 커피, 크림, 아이스크림 또는 설탕을 바닐라와 함께 사용하는 것을 추천한다.
프로세서(130)는 식재료 페어링 스코어를 계산한 이후, 하나 이상의 정규화된 식재료 페어링 스코어를 이용하여 식재료 페어링 스코어 데이터베이스를 구축할 수 있다.
페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공한다(S140). 이 때 식재료 페어링 예측 모델은 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것일 수 있다.
식재료 페어링 예측 모델은 제1 식재료와 제2 식재료에 대한 식재료 페어링 스코어가 산출되도록 가중치를 갱신하는 것이고, 시맨틱 특징을 위한 딥 레이어와 희소성 특징을 위한 와이드 레이어를 통해 식재료 페어링 스코어를 계산할 수 있다.
식재료 페어링 예측 모델은 실제 식재료 페어링 스코어(yab)와 코사인 유사도를 이용한 예측 식재료 페어링 스코어(Yab)를 이용한 손실 함수(J(θ))를 하기 수학식 2에 의해 계산하고, 손실 함수의 결과값이 최소화되도록 학습을 통해 최적의 가중치를 결정하는 것일 수 있다.
[수학식 2]
N: 학습에 사용된 총 입력 수
수학식 2는, 손실 함수 (평균 제곱 오차)를 최소화하기 위한 것으로, L은 학습 중에 최소화 될 계산 손실 함수이고, Θ는 학습 할 모델 매개 변수이고 N은 입력쌍에 대한 학습 데이터 총수를 각각 나타낸다. yab는 실제 점수 값이고, Yab는 예측 점수 값을 나타낸다. 제안된 식재료 페어링 예측 모델은 Adam 옵티마이저를 사용할 수 있다. Adam 옵티마이저는 모멘텀을 사용해 정확도를 향상시키고, RMSprop을 이용해 보폭 민감도를 보완하였으며, 학습 속도를 빠르고 안정적으로 할 수 있다.
프로세서(130)는 식재료를 나타내는 노드와 식재료와 식재료의 관련도를 나타내는 에지(Edge)로 구성되는 그래프 정보를 생성할 수 있고, 식재료 페어링 예측 모델은 일대다 식재료 페어링을 학습하기 위해 그래프 기반 신경망 아키텍처를 사용할 수 있다.
식재료 페어링을 예측한 결과 데이터는 식재료 페어링 스코어에 기초한 식재료 페어링 랭킹 리스트를 포함할 수 있고, 요리 정보에 포함된 식재료 페어링 스코어, 새로운 식재료 페어링 스코어 및 추천 식재료 페어링 데이터를 포함할 수 있다.
도 4는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 식재료 페어링 스코어를 설명하는 도면이다.
잘 알려진 식재료 페어링(예: 진앤 토닉 워터, 소금 & 고추, 바닐라 & 양파)을 포함하는 데이터 세트에 대한 훈련을 통해, 식재료 페어링 예측 모델은 덜 인기 있거나 자주 사용되지 않는 알려지지 않은 식재료 페어링 스코어(예: 진 & 아쿠아 비트, 와사비 & 노리, 라임 & 노팔)를 예측할 수 있다.
도 5는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 식재료 페어링 예측 모델의 아키텍쳐를 설명하는 도면이다.
샴쌍둥이 네트워크는 서로 다른 두 입력 사이의 유사성을 배우기 위해 다양한 작업에 사용될 수 있으며, 샴쌍둥이 네트워크의 일부 변형이 사용될 수 있다. 본 발명에서는 두 문장을 입력으로받는 Manhattan LSTM 모델을 활용할 수 있다. Manhattan LSTM 모델은 각 문장에 대한 벡터 표현을 생성하고 간단한 함수 exp (h1 h2)를 사용하여 벡터 표현 사이의 유사성을 계산한다. 여기서 h1과 h2는 임베딩 벡터이다. 또한 포지티브 쌍에 대한 부분 손실 기능과 네거티브 쌍에 대한 부분 손실 기능으로 나눌 수 있는 맞춤형 대비 손실 기능을 활용할 수 있다. 손실 함수는 음수 쌍의 두 벡터 표현 사이의 거리를 넓히고 양수 쌍의 두 벡터 표현 사이의 거리를 좁힌다. 이 두 기능이 샴쌍둥이 네트워크를 사용하고 동일한 유형의 두 가지 다른 입력을 받는것과 달리, 샴쌍둥이 네트워크 모델 중 한 입력을 받아 다른 입력을 평가하는 표준으로 사용할 수도 있다. 입력은 표준으로 사용된 입력과의 유사성을 기반으로 평가된다. 본 발명은 위에서 언급 한 단순한 거리 기반 유사성을 넘어 식재료 페어링의 의미론적 관계를 훈련 시키도록 설계되었다.
식재료 페어링 예측 모델의 아키텍처는 두가지 주요 구성 요소를 포함한다. 첫번째는 샴쌍둥이 네트워크를 사용하는 식재료 표현 컴포넌트(모듈)이다. 동일한 두개의 동일한 MLP(Multi-Layer Perceptron) 가중치는 각각 상이한 300 차원 워드 벡터 표현을 수신한다. 각 MLP에는 입력 재료 벡터를 처리하는 완전히 연결된 두 개의 레이어가 있다. (Xa, Xb)를 300 차원 단어 벡터로 표현 된 하나의 식재료 페어링이라고 보면, W* 및 b*는 각각 MLP의 공유 가중치 및 바이어스이며, f (·)는 비선형성에 대한 활성화 함수를 나타낸다. 우리는 정류 선형 단위 (ReLU)로 f (·) (max (x, 0))를 사용한다. 이 페어의 학습 된 표현 (ha, hb)은 수학적으로 하기 수학식 3과 같이 표현된다.
[수학식 3]
'페어링 스코어 예측 컴포넌트(모듈)'에서는 광범위한 딥 러닝(wide&deep learning)을 사용한다. 레이어는 와이드 레이어와 딥 레이어로 나뉜다. 딥 레이어에서, 2 개의 j 차원 학습 표현 벡터가 연결되어 2 개의 성분의 조인트 표현을 계산하는 다른 MLP로 전달된다. 이 조인트 표현은 딥 벡터 d로 표시되며 하기 수학식4와 같이 수학적으로 표현된다.
[수학식 4]
이고 j는 각 레이어의 숨겨진 유닛의 수. 와이드 레이어에서, 2 개의 j 차원 학습 표현 벡터의 외부 곱이 계산되고 j × j 행렬이 생성된다. 행렬은 하기 수학식5와 같이 수학적으로 표현되는 j 2 차원의 와이드 벡터 w로 평탄화된다.
[수학식 5]
여기서 g는 n × n 행렬을 n2 차원의 단일 벡터로 변환하는 평탄화 함수를 나타낸다.
이어서 와이드 벡터 w는 딥 벡터 d에 직접 연결된다. 와이드 벡터와 딥 벡터의 연결은 마지막으로 완전히 연결된 레이어로 전달되어 최종 출력에 대한 페어링 스코어를 계산한다. 전체적으로 (w, d)가 와이드 벡터와 딥 벡터의 연결이므로 식재료 페어 (Xa, Xb)에 대한 최종 출력 점수 Y는 수학적으로 하기 수학식 6과 같이 계산된다.
[수학식 6]
식재료 페어링 예측 모델은 실제 식재료 페어링 스코어(yab)와 코사인 유사도를 이용한 예측 식재료 페어링 스코어(Yab)를 이용한 손실 함수(J(θ))를 하기 수학식 7에 의해 계산하고, 손실 함수의 결과값이 최소화되도록 학습을 통해 최적의 가중치를 결정하는 것일 수 있다.
[수학식 7]
수학식 7은, 손실 함수 (평균 제곱 오차)를 최소화하기 위한 것으로, L은 학습 중에 최소화 될 계산 손실 함수이고, Θ는 학습 할 모델 매개 변수이고 N은 입력쌍에 대한 학습 데이터 총수를 각각 나타낸다. yab는 실제 점수 값이고, Yab는 예측 점수 값을 나타낸다. 제안된 식재료 페어링 예측 모델은 Adam 옵티마이저를 사용할 수 있다. Adam 옵티마이저는 모멘텀을 사용해 정확도를 향상시키고, RMSprop을 이용해 보폭 민감도를 보완하였으며, 학습 속도를 빠르고 안정적으로 할 수 있다.
도 6은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 모델의 예측 결과를 설명하는 도면이다.
식재료 페어링 예측 모델을 평가하기 전에 먼저 기본 모델을 평가할 수 있다. 먼저 두 입력 성분 벡터 간의 코사인 유사성을 계산하여 페어링 점수를 예측한다. 그런 다음 Python Scikit-learn 패키지의, 선형 지원 벡터 회귀 분석기, 임의의 포레스트 회귀 분석기, 추가 트리 회귀 분석기, SGD 회귀 분석기 및 그라디언트 부스팅에 해당하는 기계 학습 모델을 기본 모델로 사용한다. 또한 간단한 버전의 샴쌍둥이 네트워크를 기본 모델 중 하나에 사용한다. 이 모든 모델에는 빌트인 그리드 검색으로 추정 된 하이퍼 파라미터가 장착되어 있다.
하기 표 3에서 설명한대로 다음 5 가지 메트릭을 사용하여 모델 성능을 평가한다. RMSE (Root Mean Square Error), MSE (Mean Square Error), MAE (Mean Absolute Error), CORR (correlation) 및 R2와 비교할 때, 본 발명의 식재료 페어링 예측 모델(KitcheNette)은 모든 메트릭에서 기본 모델보다 성능이 뛰어나다.
[표3]
NDCG @ K (Normalized Discounted Cumulative Gain)를 사용하여 모델의 순위 성능을 평가하고 (도 6a) ROC 곡선을 사용하여 모델의 감도를 평가한다 (도 6b). NDCG @ K의 관점에서, 우리의 모델은 정확한 예측을 하는 데 있어 모든 기본 모델보다 뛰어나다. ROC 곡선은 모델의 분류 성능을 측정하는 데에도 사용된다. 예측 점수가 0.274 이상인 모든 페어링은 보완적인 페어링으로 간주한다. 점수가 낮은 페어링은 비 보완적인 것으로 간주한다. ROC 곡선 결과는 본 발명의 식재료 페어링 예측 모델이 보완적 페어링 분류에서 다른 모든 모델보다 높은 성능을 달성함을 보여준다.
도 7은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에 대한 절제 테스트 결과를 설명하는 도면이다.
본 발명의 각 기능을 평가하기 위해 절제 테스트를 수행한다. 도 7에서 알 수 있듯이, 본 발명의 식재료 페어링 예측 모델의 광범위하고 심층적인 아키텍처 및 구성 요소 포함은 성능을 향상시키는 데 도움이 된다. 본 발명의 식재료 페어링 예측 모델이 샴쌍둥이 네트워크에서 배운 표현의 코사인 유사성을 사용하면, 식재료 페어링 스코어 예측에서 가장 낮은 성능을 얻는다. 두 표현의 연결(딥 레이어)은 모델의 성능을 크게 향상시킨다. 이것은 식재료 페어링 스코어를 예측하기 위해 의미론적 관계가 학습되어야 함을 나타낸다. 또한 두 가지 성분의 관계를 배우는 와이드 딥 아키텍처는 모델의 성능을 더욱 향상시킨다. 또한 무작위로 초기화 된 벡터 대신 입력 벡터에 성분 임베딩을 사용하면 모델의 성능이 향상된다.
도8은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 알려진 페어링과 새로운 페어링 결과를 설명하는 도면이다.
자주 사용하지 않는 음식 재료 페어링에 대한 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법의 예측의 정확성을 입증하기 위해 알려진 재료 페어링과 알려지지 않은 재료 페어링의 예측 결과를 비교 분석한다. 도 8에 도시된 바와 같이, 3 개의 유사한 탄산 화이트 와인 (샴페인, 스파클링 와인 및 프로 세코)을 선택한 후, 다른 재료와 페어를 이루는 각 와인의 점수를 계산하고 하기 세 가지 사례에 대해 가능한 모든 페어링을 분석했다.
사례 1. 이미 높은 평가를 받는 잘 알려진 성분인 샴페인과 오렌지 트위스트를 비교를 위한 페어링으로 사용했다. 오렌지 트위스트 & 스파클링 와인과 오렌지 트위스트 & 프로 세코 페어링은 드문 페어링이기 때문에 페어링 스코어가 없다. 또한 오렌지 트위스트와 비슷하지만 세 가지 와인 중 자주 사용되지 않는 두 가지 다른 성분 (오렌지 웨지 및 라임 트위스트)을 선택했다. 결과적으로 한 쌍의 알려진 페어링과 8 개의 알려지지 않은 페어링이 있다. 9 개의 모든 페어링의 예측 결과는 일관되게 높았다 (0.33-0.45).
사례 2. 계산된 페어링 스코어를 기반으로, 우리는 와인을 서로 다른 성분과 동시에 보완하여 샴페인과 엘더 플라워 리큐어, 스파클링 와인 & 크림 드 카시스, 프로 세코 & 레몬 셔벗 등 세 가지 고유 한 페어링을 만들었다. 나머지 6 개의 알려지지 않은 페어링의 예측 결과는 3 개의 알려진 알려진 페어링과 비교하여 지속적으로 높았다 (0.29-0.42).
사례 3. 마지막으로, 우리는 샴페인과 최악의 페어링을 만들고 나머지 두 와인과 짝을 이루어 양파를 선택했다. 두 개의 알려지지 않은 페어링 (스파클링 와인 & 양파 및 프로 세코 & 양파)의 예측 결과는 알려진 페어링 (샴페인 & 양파)의 점수만큼 일관되게 낮았다.
결론적으로, 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법은 유추적 추론에 기초하여 특정 페어링에 대해 예측할 수 있음을 보여준다. 이는 A가 B와 유사하고 A가 C와 좋은 페어링을 형성하면 B도 좋은 페어링을 형성할 가능성이 높다는 것을 나타낸다. 이 추론을 사용하면 스코어가 계산되지 않은 식재료 페어링에서 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법의 성능이 향상되었다고 생각할 수 있다.
도 9는 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 페어링 랭킹을 설명하는 도면이다.
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법(KitcheNette)에 의해 등급이 매겨진 재료와 FlavorDB 4에서 등급이 매겨진 재료 사이의 비교 분석을 수행한다. 널리 사용되는 4 가지 음식 재료(토마토, 양파, 후추 및 계피)를 선택하고 도12에 나타낸 바와 같이 각각의 선택된 재료에 대한 상위 10 가지 재료 페어링을 검색한다. 본 발명에 따르면 일반적으로 일상적인 요리 및 식사에 자주 사용되는 음식 재료(예: 토마토 및 양상추, 양파 및 갈은 소고기, 후추 및 오레가노, 계피 및 정향, 사과)를 추천한다. 반면 FlavorDB는 선택된 재료와 많은 화합물을 공유하는 음식 재료를 추천했지만, 일부 추천 사항은 조리 및 식사를 위해 선택된 재료(예: 토마토 및 차, 양파 및 코코아, 후추 및 오렌지)와 잘 맞지 않았다.
도 10은 본 발명의 일 실시예에 따른 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 중 페어링 랭킹을 설명하는 도면이다.
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에 의하면 새로운 음식-음료 페어링을 찾을 수 있다. 음식 및 음료 권장 사항에 대한 전문 컨텐츠인 “The Flavor Bible” 및“WHAT to DRINK with WHAT you EAT”의 권장 사항을 도13의 recommendations에 표시하여 본 발명(KitcheNette)과 비교했다. 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에 의하면 이 책의 요리 전문가의 추천 사항과 일치하는 추천 사항을 제공 할뿐만 아니라 두 권의 책보다 훨씬 더 많은 페어링을 추천한다.
레드 와인과 화이트 와인의 경우, 본 발명은 다양한 고기 (예: 쇠고기, 양고기) 및 특정 해산물 재료 (예: 홍합, 랍스터, 새우)를 각각 추천했다. 본 발명은 사케와 짝을 이루는 본격적인 일본 음식 재료를 추천했으며, 이는 데이터 중심 모델이 아시아 요리에서 덜 일반적인 음식 재료를 추천 할 수 있음을 보여준다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
100: 서버
110: 통신 모듈
120: 메모리
130: 프로세서
140: 데이터베이스
150: 입력모듈
200: 사용자 단말
110: 통신 모듈
120: 메모리
130: 프로세서
140: 데이터베이스
150: 입력모듈
200: 사용자 단말
Claims (12)
- 서버에 의해 수행되는 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법에 있어서,
(a) 네트워크를 통해 하나 이상의 요리 정보를 수집하고, 상기 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하는 단계;
(b) 상기 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하는 단계; 및
(c) 상기 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공하는 단계;를 포함하되,
상기 식재료 페어링 예측 모델은 상기 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것이고,
상기 식재료 페어링 예측 모델은 제1 식재료와 제2 식재료에 대한 상기 식재료 페어링 스코어가 산출되도록 가중치를 갱신하는 것이고, 시맨틱 특징을 위한 딥 레이어와 희소성 특징을 위한 와이드 레이어를 통해 식재료 페어링 스코어를 계산하는 것인,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법. - 제 1 항에 있어서,
상기 (a) 단계에서 식재료들을 추출할 때, 순환 신경망에 기반한 식재료 명칭 추출 모듈을 사용하여, 수집된 요리 정보에서 각 단어에 대해 로지스틱 회귀를 수행하여 식재료 명칭을 추출하는,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법. - 제 2 항에 있어서,
상기 순환 신경망은 양방향 LSTM(Long Short Term Memory models)에 기반한,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법. - 제 4 항에 있어서,
상기 (b) 단계에서, 하나 이상의 상기 정규화된 식재료 페어링 스코어를 이용하여 식재료 페어링 스코어 데이터베이스를 구축하는 단계를 포함하는,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법. - 삭제
- 제 1 항에 있어서,
상기 (a)단계 이후, 식재료를 나타내는 노드와 식재료와 식재료의 관련도를 나타내는 에지(Edge)로 구성되는 그래프 정보를 생성하는 단계를 더 포함하고,
상기 식재료 페어링 예측 모델은 일대다 식재료 페어링을 학습하기 위해 그래프 기반 신경망 아키텍처를 사용하는 것인,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법. - 제 1 항에 있어서,
상기 식재료 페어링을 예측한 결과 데이터는 상기 식재료 페어링 스코어에 기초한 식재료 페어링 랭킹 리스트를 포함하는,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법. - 제 1 항에 있어서,
상기 식재료 페어링을 예측한 결과 데이터는 상기 요리 정보에 포함된 식재료 페어링 스코어, 새로운 식재료 페어링 스코어 및 추천 식재료 페어링 데이터를 포함하는,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법. - 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버에 있어서,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 프로그램이 저장된 메모리;
상기 메모리에 저장된 프로그램을 실행하는 프로세서를 포함하며, 상기 프로세서는 상기 프로그램의 실행에 의해,
네트워크를 통해 하나 이상의 요리 정보를 수집하고, 상기 수집된 요리 정보별로 식재료들을 추출하여 식재료 데이터를 생성하고,
상기 식재료 데이터에 기초하여 식재료들간의 동시 출현 빈도에 따른 식재료 페어링 스코어를 계산하여 페어링 데이터를 제공하고,
상기 페어링 데이터를 입력으로 하여 식재료 페어링 예측 모델에서 식재료 페어링을 예측한 결과 데이터를 제공하고,
상기 식재료 페어링 예측 모델은 상기 식재료 데이터 및 식재료 페어링 스코어 데이터를 입력 데이터로 하여, 제1 서브 네트워크와 제2 서브 네트워크로 구성되는 샴쌍둥이 네트워크를 이용해 학습된 것이고,
상기 식재료 페어링 예측 모델은 제1 식재료와 제2 식재료에 대한 상기 식재료 페어링 스코어가 산출되도록 가중치를 갱신하는 것이고, 시맨틱 특징을 위한 딥 레이어와 희소성 특징을 위한 와이드 레이어를 통해 식재료 페어링 스코어를 계산하는 것인,
샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 서버. - 제 1 항에 따르는 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 비일시적 컴퓨터 판독가능 기록매체.
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 KR20210017973A (ko) | 2021-02-17 |
KR102300474B1 true KR102300474B1 (ko) | 2021-09-10 |
Family
ID=74731357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190158385A KR102300474B1 (ko) | 2019-08-09 | 2019-12-02 | 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 및 서버 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102300474B1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102589880B1 (ko) * | 2021-03-12 | 2023-10-17 | 주식회사 퓨처키친 | 딥러닝 모듈을 이용한 음식 추천 방법 |
CN117198466B (zh) * | 2023-11-08 | 2024-01-26 | 北京四海汇智科技有限公司 | 针对肾病患者的饮食管理方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017156886A (ja) * | 2016-02-29 | 2017-09-07 | Kddi株式会社 | 画像間類似度を考慮して物体を追跡する装置、プログラム及び方法 |
KR101874604B1 (ko) * | 2016-08-10 | 2018-07-04 | 주식회사 원더풀플랫폼 | 창작 레시피 생성방법 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180086712A (ko) | 2017-01-23 | 2018-08-01 | 이용진 | 사물인터넷 기반 식재료 조회 및 레시피 컨텐츠 제공 플랫폼 |
KR102043353B1 (ko) * | 2017-12-04 | 2019-11-12 | 주식회사 솔루게이트 | 딥 러닝을 이용한 한국어 개체명 인식 장치 및 방법 |
-
2019
- 2019-12-02 KR KR1020190158385A patent/KR102300474B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017156886A (ja) * | 2016-02-29 | 2017-09-07 | Kddi株式会社 | 画像間類似度を考慮して物体を追跡する装置、プログラム及び方法 |
KR101874604B1 (ko) * | 2016-08-10 | 2018-07-04 | 주식회사 원더풀플랫폼 | 창작 레시피 생성방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20210017973A (ko) | 2021-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20150169758A1 (en) | Multi-partite graph database | |
US10488383B2 (en) | Systems and methods for evaluation of wine characteristics | |
Park et al. | FlavorGraph: a large-scale food-chemical graph for generating food representations and recommending food pairings | |
Charte et al. | QUINTA: A question tagging assistant to improve the answering ratio in electronic forums | |
CN117972057A (zh) | 对话内容处理方法、设备、存储介质及产品 | |
KR102300474B1 (ko) | 샴쌍둥이 네트워크를 이용한 식재료 페어링 예측 방법 및 서버 | |
Tauber | Marketing notes and communications: Hit: Heuristic ideation technique—a systematic procedure for new product search | |
De Clercq et al. | Data-driven recipe completion using machine learning methods | |
Park et al. | Kitchenette: Predicting and recommending food ingredient pairings using siamese neural networks | |
CN109447266A (zh) | 一种基于大数据的农业科技服务智能分拣方法 | |
CN106682095A (zh) | 基于图的主题描述词预测及排序方法 | |
CN110851571B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN110223757A (zh) | 食谱方案的推荐方法、装置、介质、电子设备 | |
CN115280422A (zh) | 食物推荐方法、装置、存储介质及电子设备 | |
CN110119479A (zh) | 一种餐馆推荐方法、装置、设备及可读存储介质 | |
Amac et al. | Procedural reasoning networks for understanding multimodal procedures | |
Nishimura et al. | Structure-aware procedural text generation from an image sequence | |
Ruede et al. | Multi-task learning for calorie prediction on a novel large-scale recipe dataset enriched with nutritional information | |
CN110580285B (zh) | 一种产品标签确定方法及装置,电子设备 | |
Reusch et al. | RecipeGM: a hierarchical recipe generation model | |
Jabeen et al. | AutoChef: Automated generation of cooking recipes | |
CN112951374B (zh) | 数据分析方法、系统、计算机设备及存储介质 | |
Katserelis et al. | Towards Fine-Dining Recipe Generation with Generative Pre-trained Transformers | |
Sanjo et al. | Towards recommending diverse seasonal cooking recipes: A preliminary study based on monthly view data | |
Chen et al. | A Wineinformatics Study for White-box Classification Algorithms to Understand and Evaluate Wine Judges. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |