KR102609726B1 - System for recommending personalized fruit and vegetables based on artificial intelligence - Google Patents

System for recommending personalized fruit and vegetables based on artificial intelligence Download PDF

Info

Publication number
KR102609726B1
KR102609726B1 KR1020210136588A KR20210136588A KR102609726B1 KR 102609726 B1 KR102609726 B1 KR 102609726B1 KR 1020210136588 A KR1020210136588 A KR 1020210136588A KR 20210136588 A KR20210136588 A KR 20210136588A KR 102609726 B1 KR102609726 B1 KR 102609726B1
Authority
KR
South Korea
Prior art keywords
fruit
vegetable
vegetables
fruits
matrix
Prior art date
Application number
KR1020210136588A
Other languages
Korean (ko)
Other versions
KR20230053253A (en
Inventor
박은정
Original Assignee
㈜진짜맛있는과일
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ㈜진짜맛있는과일 filed Critical ㈜진짜맛있는과일
Priority to KR1020210136588A priority Critical patent/KR102609726B1/en
Publication of KR20230053253A publication Critical patent/KR20230053253A/en
Application granted granted Critical
Publication of KR102609726B1 publication Critical patent/KR102609726B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/02Agriculture; Fishing; Forestry; Mining
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Optimization (AREA)
  • Strategic Management (AREA)
  • Medical Informatics (AREA)
  • Primary Health Care (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Evolutionary Computation (AREA)
  • Computational Mathematics (AREA)
  • Economics (AREA)
  • Mathematical Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Pure & Applied Mathematics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Databases & Information Systems (AREA)
  • Tourism & Hospitality (AREA)
  • Agronomy & Crop Science (AREA)
  • Marine Sciences & Fisheries (AREA)
  • Algebra (AREA)
  • Development Economics (AREA)
  • Mining & Mineral Resources (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Resources & Organizations (AREA)
  • Animal Husbandry (AREA)
  • Epidemiology (AREA)
  • Public Health (AREA)
  • Biomedical Technology (AREA)

Abstract

인공지능 기반의 개인 맞춤형 과채 추천 시스템이 개시된다. 상기 인공지능 기반의 개인 맞춤형 과채 추천 시스템은, 사용자의 라이프로그(lifelog)를 수집하여 클라우드 서버에 제공하고, 상기 클라우드 서버로부터 획득된 개인화된 과채-유전자 활성 정보를 기초로 개인 맞춤형 과채를 선정하는 사용자 단말; 및 미리 구축된 과채 데이터베이스와 영양소 데이터베이스 및 외부 서버와 연동하여 개인화된 과채-유전자 활성 정보를 생성하는 클라우드 서버를 포함한다.An artificial intelligence-based personalized fruit and vegetable recommendation system is launched. The artificial intelligence-based personalized fruit and vegetable recommendation system collects the user's lifelog, provides it to a cloud server, and selects personalized fruit and vegetables based on personalized fruit and vegetable-gene activity information obtained from the cloud server. user terminal; and a cloud server that generates personalized fruit-vegetable-gene activity information by linking with a pre-built fruit and vegetable database, a nutrient database, and an external server.

Description

인공지능 기반의 개인 맞춤형 과채 추천 시스템{SYSTEM FOR RECOMMENDING PERSONALIZED FRUIT AND VEGETABLES BASED ON ARTIFICIAL INTELLIGENCE}Personalized fruit and vegetable recommendation system based on artificial intelligence {SYSTEM FOR RECOMMENDING PERSONALIZED FRUIT AND VEGETABLES BASED ON ARTIFICIAL INTELLIGENCE}

본 발명은 과채 추천 기술에 관한 것으로, 더욱 상세하게는 인공지능 기반의 개인 맞춤형 과채 추천 시스템에 관한 것이다.The present invention relates to fruit and vegetable recommendation technology, and more specifically, to a personalized fruit and vegetable recommendation system based on artificial intelligence.

식생활 문화가 고도화되고 건강에 대한 사람들의 관심과 인식이 크게 높아짐에 따라 건강한 식품을 섭취하고자 하는 사람들의 니즈가 크게 증가하고 있다.As dietary culture has become more sophisticated and people's interest in and awareness of health have increased significantly, the needs of people who want to eat healthy food are increasing significantly.

특히, 과일이나 야채, 채소 등과 같은 과채는 자연 그대로의 식품임과 동시에 다양한 비타민과 영양소들을 골고루 섭취할 수 있는 식품이며 맛까지 좋아 많은 사람들이 섭취하고 다양하게 찾고 있다.In particular, fruits and vegetables such as fruits, vegetables, and greens are natural foods, and at the same time, they are foods that can be consumed in a balanced manner with various vitamins and nutrients, and they also taste good, so many people consume them and look for them in various ways.

그런데, 이러한 과채는 각각의 과채마다 주로 나는 계절과 시기, 장소 등이 상이할 뿐만 아니라, 과채가 갖는 고유한 비타민을 비롯한 각종 영양소들이 모두 조금씩 달라 소비자가 원하는 영양소의 과채를 적절한 시기에 섭취하기는 어려운 문제가 있다.However, not only do these fruits and vegetables mainly grow in different seasons, times, and places for each fruit and vegetable, but the various nutrients, including the unique vitamins, are all slightly different for each fruit and vegetable, making it difficult for consumers to consume fruits and vegetables with the desired nutrients at the appropriate time. There is a difficult problem.

이러한 문제를 해결하기 위한 방안으로, 개인의 신체적 특성이나 질환 등의 간단한 정보들을 기초로 그와 관련하여 널리 알려진 영양소가 함유된 식품을 선정하는 형태의 맞춤형 식품 추천 기술이 연구되고 있다.As a way to solve this problem, research is being conducted on customized food recommendation technology that selects foods containing widely known nutrients based on simple information such as an individual's physical characteristics or disease.

그러나 종래의 맞춤형 식품 추천 기술의 경우, 개인의 간단한 신체적 특성이나 질환을 기반으로 이와 매칭되는 영양소 및 함유량 등을 단순 데이터베이스 형태로 구축해놓고 서로 매칭되는 식품을 선정하는 것이 대부분이기 때문에, 개인마다 다른 신체적 특성과 유전적 소양 등이 있는 경우에 이를 모두 고려하기 어려운 문제가 있다.However, in the case of conventional customized food recommendation technology, most of the matching nutrients and contents are built in a simple database based on the individual's simple physical characteristics or diseases and then select matching foods, so each individual has different physical characteristics. When there are characteristics and genetic predispositions, it is difficult to take them all into consideration.

한편, 최근에는 머신러닝(machine learning) 기술에 대한 관심과 연구가 증가하고 있고, 머신러닝의 한 분야인 딥러닝(deep learning) 기반의 인공신경망에 대한 연구가 활발하다.Meanwhile, interest in and research on machine learning technology is increasing recently, and research on artificial neural networks based on deep learning, a field of machine learning, is active.

이러한 인공신경망은 미리 제공된 학습 데이터를 기반으로 입력 데이터의 클래스(class)를 분류하는 형태로 동작하는 것이 일반적이나, 인공신경망을 적절하게 동작시키고 학습시키기 위한 데이터의 구성 및 학습 방법에 따라 큰폭으로 인공신경망의 분류 성능에 차이가 있어 개발자의 설계 역량이 무엇보다 중요하다.These artificial neural networks generally operate by classifying classes of input data based on pre-provided learning data, but artificial neural networks can vary significantly depending on the composition and learning method of data to properly operate and learn the artificial neural network. Because there are differences in the classification performance of neural networks, the developer's design capabilities are more important than anything else.

그런데, 종래의 맞춤형 식품 추천 기술은 널리 알려진 인공신경망을 단순 사용하는 수준에 불과하여 해당 인공신경망의 데이터 형태와 구조에 맞는 학습 데이터와 입력 데이터를 개별적으로 수집하고 활용해야 하는 문제가 있어 원하는 형태의 데이터를 학습 시키고 입력 데이터로 활용하여 목적한 수준의 성능을 발휘하도록 구현하는 데에는 어려움이 많다. However, the conventional customized food recommendation technology is only at the level of simple use of a widely known artificial neural network, and there is a problem in that learning data and input data that match the data type and structure of the artificial neural network must be individually collected and utilized. There are many difficulties in learning data and using it as input data to achieve the desired level of performance.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 인공지능 기반의 개인 맞춤형 과채 추천 시스템을 제공하는데 있다.The purpose of the present invention to solve the above problems is to provide a personalized fruit and vegetable recommendation system based on artificial intelligence.

상기 목적을 달성하기 위한 본 발명은, 인공지능 기반의 개인 맞춤형 과채 추천 시스템을 제공한다.To achieve the above object, the present invention provides a personalized fruit and vegetable recommendation system based on artificial intelligence.

상기 인공지능 기반의 개인 맞춤형 과채 추천 시스템은, 사용자의 라이프로그(lifelog)를 수집하여 클라우드 서버에 제공하고, 상기 클라우드 서버로부터 획득된 개인화된 과채-유전자 활성 정보를 기초로 개인 맞춤형 과채를 선정하는 사용자 단말; 및 미리 구축된 과채 데이터베이스와 영양소 데이터베이스 및 외부 서버와 연동하여 개인화된 과채-유전자 활성 정보를 생성하는 클라우드 서버를 포함한다.The artificial intelligence-based personalized fruit and vegetable recommendation system collects the user's lifelog, provides it to a cloud server, and selects personalized fruit and vegetables based on personalized fruit and vegetable-gene activity information obtained from the cloud server. user terminal; and a cloud server that generates personalized fruit-vegetable-gene activity information by linking with a pre-built fruit and vegetable database, a nutrient database, and an external server.

상기 사용자 단말은, 상기 과채-유전자 활성 정보를 이용하여 다수의 입력 벡터들을 생성하고, 생성된 상기 다수의 입력 벡터들을 순차적으로 미리 지도학습된(supervised learning) 인공신경망에 입력하고, 상기 인공신경망의 출력값에 기초하여 사용자에게 추천하기 위한 다수의 과채들을 선정한다.The user terminal generates a plurality of input vectors using the fruit and vegetable-gene activity information, sequentially inputs the plurality of generated input vectors into a supervised learning artificial neural network, and Based on the output values, a number of fruits and vegetables are selected to recommend to the user.

상기 과채 데이터베이스는, 과채들 각각이 함유하는 다양한 영양소들의 함유량을 나타내는 함유량 정보를 저장한다.The fruit and vegetable database stores content information indicating the content of various nutrients contained in each fruit and vegetable.

상기 영양소 데이터베이스는, 영양소들 각각이 신체의 대사작용에 의해 대사되어 신체로 흡수되는 대사량을 나타내는 대사량 정보; 및 대사물질들 각각이 신체에 흡수되었을 때 유전자의 변이 또는 유전자의 발현을 억제 또는 활성화하는 정도를 나타내는 활성도 정보;를 저장한다.The nutrient database includes metabolic amount information indicating the amount of nutrients each nutrient is metabolized by the body's metabolic process and absorbed into the body; and activity information indicating the degree to which each metabolite inhibits or activates gene mutation or gene expression when absorbed into the body.

상기 클라우드 서버는, 상기 외부 서버와 연동하여 의료 정보를 획득하고, 상기 의료 정보 및 상기 라이프로그를 기반으로 상기 사용자와 대응하는 유전자들 각각의 가중치값들을 결정하고, 결정된 상기 가중치값들을 나타내는 유전자 가중치 정보를 생성한다.The cloud server acquires medical information in conjunction with the external server, determines weight values for each gene corresponding to the user based on the medical information and the life log, and generates a gene weight indicating the determined weight values. generate information.

상기 클라우드 서버는, 상기 함유량 정보를 이용하여 제1 행렬을 생성하고, 상기 대사량 정보를 이용하여 제2 행렬을 생성하고, 상기 활성도 정보를 이용하여 제3 행렬을 생성하고, 상기 유전자 가중치 정보를 이용하여 제4 행렬을 생성하고, 상기 제1 행렬 내지 상기 제4 행렬 사이의 행렬곱 연산을 통해 상기 과채-유전자 활성 정보와 대응하는 제5 행렬을 획득한다.The cloud server generates a first matrix using the content information, generates a second matrix using the metabolic amount information, generates a third matrix using the activity information, and uses the gene weight information. A fourth matrix is generated, and a fifth matrix corresponding to the fruit and vegetable-gene activity information is obtained through a matrix multiplication operation between the first matrix and the fourth matrix.

상기 인공 신경망은, 미리 수집된 훈련 데이터를 이용하여 미리 지도학습된다.The artificial neural network is supervised in advance using training data collected in advance.

상기 훈련 데이터는, 상기 사용자 이외의 다수의 다른 사용자들을 대상으로 얻어진 과채-유전자 활성 정보들 각각과 대응하는 상기 제5 행렬의 행들로부터 얻어지는 입력 벡터들을 상기 인공신경망에 대한 훈련 입력값으로 하고, 상기 다수의 다른 사용자들이 가장 많이 구매 또는 열람한 과채와 대응하는 목표 출력 벡터를 상기 인공신경망에 대한 훈련 출력값으로 하는 데이터의 집합이다.The training data uses input vectors obtained from the rows of the fifth matrix corresponding to each of the fruit-gene activity information obtained for a number of users other than the user as training input values for the artificial neural network, and It is a set of data in which the target output vector corresponding to the fruits and vegetables most purchased or viewed by a large number of other users is used as a training output value for the artificial neural network.

상기 사용자 단말은, 선정된 상기 다수의 과채들을 2개부터 n(n은 선정된 상기 다수의 과채들의 총 개수)개 사이의 과채들로 이루어진 집합들로 그룹핑하고, 집합들 각각에 속하는 과채들 사이의 궁합도들을 상기 집합들 각각마다 산출하고, 산출된 궁합도가 미리 설정된 임계값 이상인 상기 집합들 중에서, 미리 설정된 기준에 따라 선택된 집합 내의 과채들을 구독형 서비스를 위한 과채들로서 상기 사용자에게 제공한다.The user terminal groups the selected plurality of fruits and vegetables into sets of fruits and vegetables ranging from 2 to n (n is the total number of the selected plurality of fruits and vegetables), and between the fruits and vegetables belonging to each of the sets The compatibility degrees are calculated for each of the sets, and among the sets for which the calculated compatibility degree is higher than a preset threshold, the fruits and vegetables in the set selected according to the preset criteria are provided to the user as fruits and vegetables for the subscription service.

상기와 같은 본 발명에 따른 인공지능 기반의 개인 맞춤형 과채 추천 시스템을 이용할 경우에는 사용자의 라이프로그 뿐만 아니라 과채별 갖는 영양소 함유량, 영양소에 따른 대사물질의 대사량, 대사물질이 흡수됨에 따른 유전자 활성도, 개인 별 유전자 보유 여부 등을 모두 종합적으로 고려하여 개인에게 최적화된 과채를 추천할 수 있다.When using the artificial intelligence-based personalized fruit and vegetable recommendation system according to the present invention as described above, not only the user's life log, but also the nutrient content of each fruit and vegetable, the amount of metabolism of metabolites according to nutrients, gene activity due to absorption of metabolites, and personal It is possible to recommend fruits and vegetables optimized for an individual by comprehensively considering whether or not they possess specific genes.

또한, 과채에 대응하는 목표 출력 벡터를 과채 고유의 특성에 따라 설정함으로서 인공신경망의 학습 성능을 향상시키고, 과채들 각각에 대응하는 목표 출력 벡터들을 모두 고려하여 손실 함수를 정의함으로써 지도학습에 따른 인공신경망의 출력 정확도를 추가로 향상시킬 수 있는 장점이 있다.In addition, the learning performance of the artificial neural network is improved by setting the target output vector corresponding to the fruit and vegetable according to the unique characteristics of the fruit and vegetable, and the loss function is defined by considering all target output vectors corresponding to each fruit and vegetable, thereby improving the artificial neural network according to supervised learning. It has the advantage of further improving the output accuracy of the neural network.

도 1은 일 실시예에 따른 인공지능 기반의 개인 맞춤형 과채 추천 시스템에 대한 개념도이다.
도 2는 도 1에 따른 클라우드 서버의 기능적 구성요소들을 나타낸 블록도이다.
도 3은 도 2에 따른 과채-유전자 활성 정보 생성부의 동작을 설명하기 위한 개념도이다.
도 4는 도 1에 따른 사용자 단말의 기능적 구성요소들을 나타낸 블록도이다.
도 5는 도 1에 따른 사용자 단말과 연동된 인공신경망의 구조를 나타낸 도면이다.
도 6은 일 실시예에 따른 인공지능 기반의 개인 맞춤형 과채 추천 시스템에 의해 사용자 단말에서 동작하는 애플리케이션을 나타낸 제1 도면이다.
도 7은 일 실시예에 따른 인공지능 기반의 개인 맞춤형 과채 추천 시스템에 의해 사용자 단말에서 동작하는 애플리케이션을 나타낸 제2 도면이다.
도 8은 도 1에 따른 사용자 단말의 하드웨어 구성을 예시적으로 나타낸 도면이다.
Figure 1 is a conceptual diagram of an artificial intelligence-based personalized fruit and vegetable recommendation system according to an embodiment.
FIG. 2 is a block diagram showing functional components of the cloud server according to FIG. 1.
FIG. 3 is a conceptual diagram for explaining the operation of the fruit and vegetable-gene activity information generation unit according to FIG. 2.
FIG. 4 is a block diagram showing functional components of the user terminal according to FIG. 1.
FIG. 5 is a diagram showing the structure of an artificial neural network linked to the user terminal according to FIG. 1.
Figure 6 is a first diagram showing an application operating on a user terminal by an artificial intelligence-based personalized fruit and vegetable recommendation system according to an embodiment.
Figure 7 is a second diagram showing an application operating on a user terminal by an artificial intelligence-based personalized fruit and vegetable recommendation system according to an embodiment.
FIG. 8 is a diagram illustrating an exemplary hardware configuration of the user terminal according to FIG. 1.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. Since the present invention can make various changes and have various embodiments, specific embodiments will be illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all changes, equivalents, and substitutes included in the spirit and technical scope of the present invention. While describing each drawing, similar reference numerals are used for similar components.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, a first component may be named a second component, and similarly, the second component may also be named a first component without departing from the scope of the present invention. The term and/or includes any of a plurality of related stated items or a combination of a plurality of related stated items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is said to be "connected" or "connected" to another component, it is understood that it may be directly connected to or connected to the other component, but that other components may exist in between. It should be. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in this application are only used to describe specific embodiments and are not intended to limit the invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as “comprise” or “have” are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are not intended to indicate the presence of one or more other features. It should be understood that this does not exclude in advance the possibility of the existence or addition of elements, numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person of ordinary skill in the technical field to which the present invention pertains. Terms defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and unless explicitly defined in the present application, should not be interpreted in an ideal or excessively formal sense. No.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the attached drawings.

도 1은 일 실시예에 따른 인공지능 기반의 개인 맞춤형 과채 추천 시스템에 대한 개념도이다.Figure 1 is a conceptual diagram of an artificial intelligence-based personalized fruit and vegetable recommendation system according to an embodiment.

도 1을 참조하면, 일 실시예에 따른 인공지능 기반의 개인 맞춤형 과채 추천 시스템(1000)은, 사용자의 라이프로그(lifelog)를 수집하여 클라우드 서버(300)에 제공하고, 클라우드 서버(300)로부터 획득된 개인화된 과채-유전자 활성 정보를 기초로 개인 맞춤형 과채를 선정하는 사용자 단말(100), 및 미리 구축된 과채 데이터베이스(310)와 영양소 데이터베이스(320) 및 외부 서버(400)와 연동하여 개인화된 과채-유전자 활성 정보를 생성하는 클라우드 서버(300)를 포함할 수 있다.Referring to FIG. 1, the artificial intelligence-based personalized fruit and vegetable recommendation system 1000 according to an embodiment collects the user's lifelog and provides it to the cloud server 300, and collects the user's lifelog from the cloud server 300. A user terminal 100 that selects personalized fruit and vegetables based on the acquired personalized fruit and vegetable-gene activity information, and a personalized fruit and vegetable database 310 linked with a pre-built fruit and vegetable database 310 and a nutrient database 320 and an external server 400. It may include a cloud server 300 that generates fruit and vegetable-gene activity information.

사용자 단말(100)은, 적어도 하나의 웨어러블 기기(200)와 연동하여 사용자의 라이프로그를 수집할 수 있다. 여기서 라이프로그(lifelog)는 사용자가 일상 생활을 하는 동안 수집될 수 있는 다양한 형태의 생활 습관이나 생활 상태를 나타내는 지표들로서 예를 들면 심박수, 체온, 수면시간, 걸음수, 심박수, 체중 등을 포함할 수 있다.The user terminal 100 may collect the user's lifelog in conjunction with at least one wearable device 200. Here, lifelog refers to indicators representing various types of lifestyle habits or living conditions that can be collected during the user's daily life and may include, for example, heart rate, body temperature, sleep time, number of steps, heart rate, and weight. You can.

사용자 단말(100)의 예를 들면, 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 노트북(notebook), 스마트폰(smart phone), 태블릿 PC(tablet PC), 모바일폰(mobile phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB(digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), PDA(Personal Digital Assistant) 등일 수 있다.Examples of the user terminal 100 include a desktop computer, laptop computer, laptop, smart phone, tablet PC, and mobile phone capable of communication. ), smart watch, smart glass, e-book reader, PMP (portable multimedia player), portable game console, navigation device, digital camera, DMB (digital multimedia broadcasting) It may be a player, a digital audio recorder, a digital audio player, a digital video recorder, a digital video player, a PDA (Personal Digital Assistant), etc.

또한, 사용자 단말(100)은, 사용자로부터 입력받는 방식으로 라이프로그를 수집할 수도 있다. 예를 들어, 사용자로부터 입력되는 라이프로그는 하루 동안 섭취한 음식의 종류와 양, 식사한 시간 등을 포함할 수 있다.Additionally, the user terminal 100 may collect lifelogs by receiving input from the user. For example, the lifelog input from the user may include the type and amount of food consumed during the day, the time at which the meal was eaten, etc.

사용자 단말(100)은, 사용자로부터 개인 식별정보를 입력받을 수 있다. 여기서, 개인 식별정보는, 사용자의 나이, 성별, 출생지역, 주민등록번호 등을 포함할 수 있다. 개인 식별정보는 비식별화되어 사용자 단말(100)에 저장될 수 있다.The user terminal 100 may receive personal identification information from the user. Here, personal identification information may include the user's age, gender, region of birth, resident registration number, etc. Personal identification information may be de-identified and stored in the user terminal 100.

사용자 단말(100)은, 여기서 수집된 라이프로그와 개인 식별정보를 클라우드 서버(300)에 전송할 수 있다.The user terminal 100 may transmit the lifelog and personal identification information collected here to the cloud server 300.

클라우드 서버(300)는, 라이프로그와 개인식별정보를 기반으로 사용자에 대하여 개인화된 과채-유전자 활성정보를 생성할 수 있다. 여기서, 과채-유전자 활성 정보는, 해당 사용자에 대하여 고유하게 다수의 과채들과 다수의 유전자들 사이에 상관 관계를 나타내는 데이터일 수 있다.The cloud server 300 can generate personalized fruit and vegetable-gene activity information for the user based on the life log and personal identification information. Here, the fruit and vegetable-gene activity information may be data that uniquely represents the correlation between a number of fruits and vegetables and a number of genes for the user.

일 실시예에서 과채는, 사과, 귤, 오렌지, 포도 등을 비롯한 과일 뿐만 아니라 양파, 마늘, 상추, 시금치 등과 같은 야채나 채소를 모두 포함하는 것으로 해석될 수 있다.In one embodiment, fruits and vegetables may be interpreted as including not only fruits such as apples, tangerines, oranges, and grapes, but also vegetables such as onions, garlic, lettuce, and spinach.

일 실시예에서 유전자는, 염색체를 구성하는 특정한 게놈 서열들로 정의되거나, 그러한 게놈 서열들에 의해 발현되는 단백질(protein)을 의미하는 것으로 해석될 수 있다.In one embodiment, a gene may be defined as specific genomic sequences constituting a chromosome, or may be interpreted to mean a protein expressed by such genomic sequences.

특히, 일 실시예에서 유전자는 당뇨나 고혈압 등과 같은 다양한 형태의 질병과 연관이 있는 것으로 알려진 유전자를 포함할 수 있다.In particular, in one embodiment, the genes may include genes known to be associated with various types of diseases such as diabetes or high blood pressure.

예를 들어, 당뇨병의 경우 인슐린을 분비하는 췌장 베타세포 분화에 관여하는 PAX4 (paired box 4) 유전자의 변이와 당뇨병 주사 치료제로 사용되는 인크레틴 호르몬 수용체인 GLP1R (glucagon-like peptide 1 receptor) 유전자의 변이가 발병에 주요한 영향을 주는 것으로 알려져있다.For example, in the case of diabetes, mutations in the PAX4 (paired box 4) gene, which is involved in the differentiation of pancreatic beta cells that secrete insulin, and mutations in the GLP1R (glucagon-like peptide 1 receptor) gene, an incretin hormone receptor used as a diabetes injection treatment, Mutations are known to have a major impact on disease development.

예를 들어, PAX4 유전자에 변이가 있는 경우 당뇨병 발병 연령이 낮아지고 당뇨병 위험이 1.5배 가량 증가하며 한국인 등의 아시아인에게 특이적으로 나타나는 것으로 알려져있다.For example, if there is a mutation in the PAX4 gene, the age of onset of diabetes is lowered and the risk of diabetes increases by about 1.5 times, and it is known to occur specifically in Asians such as Koreans.

또한, GLP1R 유전자에 변이가 있는 경우, 당뇨병 위험이 0.86배 감소하며 당뇨병 환자의 심뇌혈관 위험이 감소하고, 아시아인에게 특이적으로 나타난다고 알려져있다.In addition, if there is a mutation in the GLP1R gene, the risk of diabetes is reduced by 0.86 times, and the cardiovascular risk of diabetic patients is reduced, and it is known to occur specifically in Asians.

당뇨병 뿐만 아니라, 고혈압의 경우에는 EML6 유전자, MYL2 유전자, JAG1 유전자의 변이에 따라 고혈압 위험도가 달라지는 것으로 알려져있다.In the case of hypertension as well as diabetes, it is known that the risk of hypertension varies depending on mutations in the EML6 gene, MYL2 gene, and JAG1 gene.

예를 들어, 1일 2g 미만의 나트륨을 섭취한 집단 중에서도 EML6 유전자 변이가 있으면 고혈압 위험이 1.2배 높아지는 것으로 나타났고, MYL2 유전자와 JAG1 유전자의 변이가 있는 집단에서는 소금 섭취량이 많더라도 고혈압 위험도가 일반인 대비 0.8배로 낮게 나타났다고 한다.For example, among the group that consumed less than 2g of sodium per day, the risk of hypertension was found to be 1.2 times higher if there was an EML6 gene mutation, and in the group with mutations in the MYL2 gene and JAG1 gene, the risk of hypertension was lower than that of the general population even if salt intake was high. It is said that it was 0.8 times lower than that.

따라서, 일 실시예에서 유전자는, 상술한 PAX4, GLP1R, EML6 유전자를 비롯하여 다양한 형태의 질병이나 동공의 색상이나 머리색 등과 같이 신체적 특징에 영향을 주는 유전자들을 모두 포함하는 것으로 해석될 수 있다.Therefore, in one embodiment, genes can be interpreted as including all genes that affect physical characteristics, such as various types of diseases or pupil color or hair color, including the above-mentioned PAX4, GLP1R, and EML6 genes.

클라우드 서버(300)는, 개인화된 과채-유전자 활성 정보를 생성하기 위하여 과채 DB(310) 및 영양소 DB(320)와 연동하여 동작할 수 있다. 과채 DB(310)와 영양소 DB(320)는 클라우드 서버(300)와 유선 또는 무선 네트워크를 통해 연결되는 분산 데이터베이스 형태로 구현되거나, 클라우드 서버(300)의 내부 저장소를 이용한 데이터베이스 형태로 구현될 수도 있다.The cloud server 300 may operate in conjunction with the fruit and vegetable DB 310 and the nutrient DB 320 to generate personalized fruit and vegetable-gene activity information. The fruit and vegetable DB 310 and the nutrient DB 320 may be implemented in the form of a distributed database connected to the cloud server 300 via a wired or wireless network, or may be implemented in the form of a database using the internal storage of the cloud server 300. .

구체적으로, 과채 DB(310)와 영양소 DB(320)는, 다수의 물리적인 컴퓨팅 디바이스들 각각을 저장소로하여 데이터를 물리적으로 분산하여 저장하되, 논리적으로는 하나의 저장소 형태로 클라우드 서버(300)에 의해 관리될 수 있다. 예를 들어, 과채 DB(310)와 영양소 DB(320)는, 자바 기반의 대용량데이터 분산 처리 시스템으로서 HDFS(Hadoop Distributed File System)에 데이터를 저장하고, 맵리듀스(MapReduce)를 이용하여 데이터를 처리하는 하둡(Hadoop)으로 구현될 수 있다.Specifically, the fruit and vegetable DB 310 and the nutrient DB 320 use each of a plurality of physical computing devices as storage to physically distribute and store data, but logically store the data in the form of a single storage cloud server 300. It can be managed by . For example, the fruit and vegetable DB 310 and the nutrient DB 320 are Java-based large data distributed processing systems that store data in HDFS (Hadoop Distributed File System) and process data using MapReduce. It can be implemented with Hadoop.

과채 DB(310)는, 다양한 과채들이 함유하는 각종 영양소들에 대한 정보를 저장할 수 있다. 구체적으로, 과채 DB(310)는, 과채들 각각이 함유하는 다양한 영양소들의 함유량을 나타내는 함유량 정보를 저장할 수 있다. 여기서, 영양소는, 과채들에 함유된 비타민C, 칼슘, 칼륨, 철분, 지방산 등을 비롯한 각종 미네랄 등을 의미할 수 있다.The fruit and vegetable DB 310 can store information about various nutrients contained in various fruits and vegetables. Specifically, the fruit and vegetable DB 310 can store content information indicating the content of various nutrients contained in each fruit and vegetable. Here, nutrients may refer to various minerals including vitamin C, calcium, potassium, iron, fatty acids, etc. contained in fruits and vegetables.

영양소 DB(320)는, 다수의 영양소들과 다수의 대사물질들 사이의 연관관계를 나타내는 정보 및 대사물질들과 다수의 유전자들 사이의 연관관계를 나타내는 정보를 저장할 수 있다. 여기서, 대사물질이란 영양소가 신체에 흡수되었을 때 신체의 대사작용으로 얻어지는 물질들로서, 아미노산, 콜레스테롤, 알칼로이드, 안료 등일 수 있다.The nutrient DB 320 may store information representing the association between multiple nutrients and multiple metabolites and information representing the association between metabolites and multiple genes. Here, metabolites are substances obtained through the body's metabolism when nutrients are absorbed into the body, and may be amino acids, cholesterol, alkaloids, pigments, etc.

구체적으로, 영양소 DB(320)는, 영양소들 각각이 신체의 대사작용에 의해 대사되어 신체로 흡수되는 대사량을 나타내는 대사량 정보를 저장할 수 있다. 또한, 영양소 DB(320)는, 대사물질들 각각이 신체에 흡수되었을 때 유전자의 변이 또는 유전자의 발현을 억제 또는 활성화하는 정도를 나타내는 활성도 정보를 저장할 수 있다.Specifically, the nutrient DB 320 may store metabolic amount information indicating the amount of nutrients each nutrient is metabolized by the body's metabolic process and absorbed into the body. Additionally, the nutrient DB 320 may store activity information indicating the degree to which each metabolite suppresses or activates gene mutation or gene expression when absorbed into the body.

이때, 대상물질들 중 적어도 일부는 영양소들과 중복될 수 있다. 예를 들어, 영양소들 중 적어도 일부는 신체 대사작용을 통해 변화없이 그대로 흡수될 수도 있으며, 이러한 경우에는 대사물질임과 동시에 영양소로서 취급될 수 있다.At this time, at least some of the target substances may overlap with nutrients. For example, at least some of the nutrients may be absorbed without change through body metabolism, and in this case, they may be treated as metabolites and nutrients at the same time.

또한, 클라우드 서버(300)는, 외부 서버(400)와 연동하여 의료 정보를 획득할 수 있다. 예를 들어, 클라우드 서버(300)는, 사용자 단말(100)로부터 획득한 개인 식별정보를 이용하여 외부 서버(400)로부터 사용자와 대응하는 의료 정보를 획득할 수 있다. 의료 정보는, 사용자가 의료기관에서 진료받은 진료 기록, 건강검진기록, 또는 유전자 검사 기록 등을 포함할 수 있다.Additionally, the cloud server 300 can acquire medical information by linking with the external server 400. For example, the cloud server 300 may obtain medical information corresponding to the user from the external server 400 using personal identification information obtained from the user terminal 100. Medical information may include medical records, health examination records, or genetic test records of the user receiving treatment at a medical institution.

클라우드 서버(300)는, 이러한 의료 정보 및 사용자 단말(100)로부터 획득한 라이프로그를 기반으로 사용자와 대응하는 유전자들 각각의 가중치값들을 결정하고, 결정된 가중치값들을 나타내는 유전자 가중치 정보를 생성할 수 있다.The cloud server 300 may determine weight values for each of the genes corresponding to the user based on the medical information and the lifelog obtained from the user terminal 100 and generate gene weight information representing the determined weight values. there is.

즉, 유전자 가중치 정보는, 해당 사용자가 갖고 있거나(유전자 검사 기록을 통해) 해당 사용자가 갖고 있을 것으로 추정(진료기록 또는 건강검진기록 등을 통해)되고, 라이프로그에 따른 해당 유전자의 발현 가능성을 높이는 효과가 있는 경우, 해당 유전자와 대응하는 가중치값을 높게 설정하고, 해당 사용자가 갖고 있지 않거나, 해당 사용자가 갖고 있지 않을 것으로 추정되는 유전자들에 대해 낮은 가중치값을 낮게 설정할 수 있다.In other words, gene weight information is either possessed by the user (through genetic test records) or presumed to be possessed by the user (through medical records or health check-up records, etc.), and is used to increase the likelihood of expression of the gene according to the life log. If there is an effect, the weight value corresponding to the corresponding gene can be set high, and the low weight value can be set low for genes that the user does not have or are estimated to not have.

이러한 유전자 가중치 정보를 생성하기 위하여, 각종 진료기록이나 라이프로그, 건강검진기록 등을 기반으로 다양한 형태의 통계적인 분석 방법이나 확률 분석 방법 등이 사용될 수 있다. 예를 들어, 사용자의 진료기록을 토대로 해당 사용자와 유사한 진료기록이나 병력을 가진 사람들을 탐색하고, 탐색된 사람들의 유전자 검사 기록 상 해당 유전자를 보유한 사람의 수가 많을수록, 해당 유전자에 대응하는 사용자의 가중치값을 높게 설정할 수 있다.To generate such genetic weight information, various types of statistical analysis methods or probability analysis methods can be used based on various medical records, life logs, health examination records, etc. For example, based on the user's medical record, people with similar medical records or medical history are searched, and the greater the number of people with the gene in the genetic test records of the searched people, the weight of the user corresponding to the gene is increased. The value can be set high.

즉, 유전자 가중치 정보는, 개인마다 각각 고유하게 발현되었거나 보유 또는 변이되어있는 유전자들에 대한 가중치값을 나타내는 정보로서 활용됨으로써, 사람마다 근본적으로 가지고 있는 유전자 레벨에서 가장 적합한 과채를 추천할 수 있는 정보로서 활용된다.In other words, gene weight information is used as information representing the weight value of genes that are uniquely expressed, possessed, or mutated for each individual, and is information that can recommend the most suitable fruits and vegetables at the level of genes fundamentally possessed by each person. It is used as.

클라우드 서버(300)는, 함유량 정보, 대사량 정보, 활성도 정보, 및 유전자 가중치 정보를 종합적으로 이용함으로써, 사용자에 대하여 개인화된 과채-유전자 활성 정보를 생성할 수 있다.The cloud server 300 can generate personalized fruit-gene activity information for the user by comprehensively using content information, metabolism information, activity information, and gene weight information.

클라우드 서버(300)는, 생성된 과채-유전자 활성 정보를 사용자 단말(100)에 제공할 수 있다.The cloud server 300 may provide the generated fruit and vegetable-gene activity information to the user terminal 100.

사용자 단말(100)은, 과채-유전자 활성 정보를 이용하여 다수의 입력 벡터들을 생성하고, 생성된 다수의 입력 벡터들을 순차적으로 미리 지도학습된(supervised learning) 인공신경망(10)에 입력하고, 인공신경망(10)의 출력값에 기초하여 사용자에게 추천하기 위한 과채를 선정할 수 있다. 사용자 단말(100)은, 선정된 과채를 사용자에게 표시할 수 있다. The user terminal 100 generates a plurality of input vectors using fruit-gene activity information, sequentially inputs the generated plurality of input vectors into the supervised learning artificial neural network 10, and artificially Based on the output value of the neural network 10, fruits and vegetables to recommend to the user can be selected. The user terminal 100 may display the selected fruits and vegetables to the user.

이때, 사용자 단말(100)은, 사용자에게 추천하기 위한 과채를 복수개 선정하고, 선정된 복수개의 과채들 사이의 궁합도를 산출할 수 있다. 예를 들어, 사용자 단말(100)은, 복수의 과채들을 2개부터 n(n은 선정된 과채들의 총 개수)개 사이의 수를 갖는 집합들로 그룹핑하고, 각 집합들 내에 속하는 과채들 사이의 궁합도들을 산출하고, 산출된 궁합도가 미리 설정된 임계값 이상인 과채들의 집합들 중에서, 미리 설정된 기준에 따라 선택된 집합 내의 과채들을 구독형 서비스를 위한 과채들로서, 사용자에게 제공할 수 있다.At this time, the user terminal 100 may select a plurality of fruits and vegetables to recommend to the user and calculate the degree of compatibility between the selected fruits and vegetables. For example, the user terminal 100 groups a plurality of fruits and vegetables into sets with a number between 2 and n (where n is the total number of selected fruits and vegetables), and sets a number between the fruits and vegetables within each set. Compatibility levels are calculated, and among a set of fruits and vegetables whose calculated compatibility level is greater than or equal to a preset threshold, fruits and vegetables in the set selected according to preset criteria can be provided to the user as fruits and vegetables for a subscription service.

여기서, 구독형 서비스는 복수의 과채들을 매주마다 또는 매월마다 순차적으로 자동구매하도록 제공하는 서비스로서, 사용자 단말(100)의 사용자들 중에서 이러한 구독형 서비스에 가입한 사용자의 사용자 단말(100)은, 구독형 서비스를 위한 과채들을 미리 지정된 구독 시기마다 클라우드 서버(300)와 연동하여 자동 주문할 수 있다. Here, the subscription service is a service that provides automatic purchase of a plurality of fruits and vegetables sequentially every week or every month. Among the users of the user terminal 100, the user terminal 100 of the user who has subscribed to this subscription service, Fruits and vegetables for the subscription-type service can be automatically ordered by linking with the cloud server 300 at each pre-designated subscription period.

이를 위해, 클라우드 서버(300)는, 사용자 단말(100)과 서로 통신하여 미리 등록된 과채들에 대한 주문과 결제, 및 배송을 위한 절차를 수행할 수 있다. 예를 들어, 클라우드 서버(300)는, 사용자 단말(100)로부터 주문 요청을 수신하고, 사용자 단말(100)에 결제 요청을 전송하고, 사용자 단말(100)로부터 결제 승인을 수신하고, 주문 요청과 대응하는 과채들에 대한 배송 요청을 외부의 배송 서비스를 제공하는 배송 회사의 운영 서버에 전송할 수 있다.To this end, the cloud server 300 may communicate with the user terminal 100 to perform procedures for ordering, payment, and delivery of pre-registered fruits and vegetables. For example, the cloud server 300 receives an order request from the user terminal 100, transmits a payment request to the user terminal 100, receives payment approval from the user terminal 100, and sends an order request and A delivery request for the corresponding fruits and vegetables can be transmitted to the operation server of a delivery company that provides an external delivery service.

도 2는 도 1에 따른 클라우드 서버의 기능적 구성요소들을 나타낸 블록도이다. 도 3은 도 2에 따른 과채-유전자 활성 정보 생성부의 동작을 설명하기 위한 개념도이다.FIG. 2 is a block diagram showing functional components of the cloud server according to FIG. 1. FIG. 3 is a conceptual diagram for explaining the operation of the fruit and vegetable-gene activity information generation unit according to FIG. 2.

도 2를 참조하면, 클라우드 서버(300)는, 사용자 단말(100)과 연동하여 라이프로그 및 개인식별정보를 획득하는 개인정보 획득부(301); 과채 DB(310) 및 영양소 DB(320)와 연동하여 함유량 정보, 대사량 정보, 활성도 정보를 획득하는 DB 관리부(302); 외부 서버(400)와 연동하여 획득한 의료 정보 및 라이프로그를 이용하여 사용자에 대응하는 유전자 가중치 정보를 생성하는 유전자 가중치 정보 생성부(303); 및 함유량 정보, 대사량 정보, 활성도 정보, 및 유전자 가중치 정보를 이용하여 과채-유전자 활성 정보를 생성하는 과채-유전자 활성 정보 생성부(304)를 포함할 수 있다.Referring to FIG. 2, the cloud server 300 includes a personal information acquisition unit 301 that acquires life logs and personal identification information in conjunction with the user terminal 100; A DB management unit (302) that acquires content information, metabolic rate information, and activity information in conjunction with the fruit and vegetable DB (310) and the nutrient DB (320); a gene weight information generator 303 that generates gene weight information corresponding to the user using medical information and life logs obtained in conjunction with the external server 400; and a fruit-vegetable-gene activity information generation unit 304 that generates fruit-vegetable-gene activity information using content information, metabolic amount information, activity information, and gene weight information.

DB 관리부(302)는, 과채 DB(310)에 접근(access)하여 함유량 정보를 획득하고, 영양소 DB(320)에 접근하여 대사량 정보 및 활성도 정보를 획득할 수 있다.The DB management unit 302 may access the fruit and vegetable DB 310 to obtain content information and access the nutrient DB 320 to obtain metabolic information and activity information.

유전자 가중치 정보 생성부(303)는, 외부 서버(400)와 연동하여 의료 정보를 획득하고, 획득된 의료 정보 및 사용자 단말(100)로부터 획득한 라이프로그를 기반으로 사용자와 대응하는 유전자들 각각의 가중치값들을 결정하고, 결정된 가중치값들을 나타내는 유전자 가중치 정보를 생성할 수 있다.The genetic weight information generator 303 acquires medical information in conjunction with the external server 400, and generates each of the genes corresponding to the user based on the obtained medical information and the lifelog obtained from the user terminal 100. Weight values can be determined, and gene weight information representing the determined weight values can be generated.

과채-유전자 활성 정보 생성부(304)는, 함유량 정보를 이용하여 제1 행렬을 생성하고, 대사량 정보를 이용하여 제2 행렬을 생성하고, 활성도 정보를 이용하여 제3 행렬을 생성하고, 유전자 가중치 정보를 이용하여 제4 행렬을 생성하고, 제1 내지 제4 행렬을 이용한 행렬 연산을 통해 과채-유전자 활성 정보와 대응하는 제5 행렬을 획득할 수 있다.The fruit and vegetable-gene activity information generation unit 304 generates a first matrix using content information, a second matrix using metabolic information, a third matrix using activity information, and gene weights. A fourth matrix can be generated using the information, and a fifth matrix corresponding to the fruit and vegetable-gene activity information can be obtained through matrix operations using the first to fourth matrices.

예를 들어, 도 3을 참조하면, 제1 행렬은, 과채들 각각을 행(row)으로 갖고, 과채들 각각이 함유하는 영양소들을 열(column)로 가지며, 과채들 각각이 함유하는 영양소의 함유량을 성분값으로 하는 행렬일 수 있다. 이때, 제1 행렬을 구성하는 성분값들은 성분값들 전체의 평균값과 분산값을 이용하여 표준화되는 것이 바람직할 수 있다.For example, referring to Figure 3, the first matrix has each of the fruits and vegetables as a row, the nutrients contained by each fruit and vegetables as a column, and the content of the nutrients contained by each of the fruits and vegetables. It may be a matrix with component values. At this time, it may be desirable to standardize the component values constituting the first matrix using the average and variance values of all component values.

제2 행렬은, 영양소들 각각을 행으로 갖고, 영양소들 각각이 대사되는 대사물질들을 열로 가지며, 영양소들 각각이 대사되어 흡수되는 대사량을 성분값으로 하는 행렬일 수 있다. 이때, 제2 행렬을 구성하는 성분값들은 성분값들 전체의 평균값과 분산값을 이용하여 표준화되는 것이 바람직할 수 있다.The second matrix may be a matrix that has each nutrient as a row, metabolites metabolized by each nutrient as columns, and the amount of each nutrient metabolized and absorbed as a component value. At this time, it may be desirable to standardize the component values constituting the second matrix using the average and variance values of all component values.

제3 행렬은, 대사물질들 각각을 행으로 갖고, 대사물질들 각각이 신체에 흡수되었을 때 활성 또는 억제되는 유전자들을 열로 가지며, 대사물질들 각각에 의해 활성 또는 억제되는 정도를 성분값으로 하는 행렬일 수 있다. 예를 들어, 제3 행렬은, 특정 대사물질에 의해 활성화되는 유전자들 각각에 대응하는 열의 성분값들을 +1로, 특정 대사물질에 의해 억제되는 유전자들 각각에 대응하는 열의 성분값들을 -1로 가질 수 있다. The third matrix is a matrix that has each metabolite as a row, genes that are activated or suppressed when each metabolite is absorbed into the body as columns, and the component value is the degree of activation or suppression by each metabolite. It can be. For example, in the third matrix, the component values of the column corresponding to each of the genes activated by a specific metabolite are assigned +1, and the component values of the column corresponding to each of the genes repressed by a specific metabolite are assigned to -1. You can have it.

제4 행렬은, 행과 열 각각에 서로 동일한 순서로 배열되는 유전자들을 갖고, 대각선 성분값으로 개인마다 갖는 유전자들에 대응하는 가중치값을 갖는 대각 행렬(diagonal matrix)일 수 있다. 즉, 사용자가 임의의 i번째 행과 i번째 열에 배치된 유전자를 갖고 있거나, 갖고 있는 것으로 추정되는 경우 i번째 행과 i번째 열에 대응하는 가중치값은 0보다 큰 값일 수 있고, 라이프로그에 따른 사용자의 활동기록을 반영하여 그 가중치값의 크기가 결정될 수 있다. 예를 들어, 특정 유전자가 당뇨의 발현을 높이도록 작용하는 것이 알려져있고, 해당 당뇨의 발병을 줄이는데 많이 걷는 것이 유리하다면, 라이프로그에 따른 걸음수가 높을수록 해당 유전자와 대응하는 가중치값의 크기가 높게 설정될 수 있다. The fourth matrix may be a diagonal matrix with genes arranged in the same order in each row and column, and diagonal component values with weight values corresponding to the genes for each individual. In other words, if the user has, or is presumed to have, a gene placed in any i-th row and i-th column, the weight value corresponding to the i-th row and i-th column may be a value greater than 0, and the user according to the lifelog The size of the weight value can be determined by reflecting the activity record. For example, if it is known that a specific gene acts to increase the expression of diabetes, and it is advantageous to walk a lot to reduce the incidence of diabetes, the higher the number of steps according to the life log, the higher the size of the weight value corresponding to the gene. can be set.

또한, 사용자가 임의의 i번째 행과 i번째 열에 배치된 유전자를 갖고 있지 않거나, 갖고 있지 않는 것으로 추정되는 경우 i번째 행과 i번째 열에 대응하는 가중치값은 0일 수도 있다.Additionally, if the user does not have, or is presumed not to have, a gene placed in any i-th row and i-th column, the weight value corresponding to the i-th row and i-th column may be 0.

이때, 제4 행렬을 구성하는 성분값들은 표준화되지 않도록 구성함으로써 개인에 따른 유전자의 발현이나 보유가 가장 잘 반영되도록 하는 것이 바람직할 수 있다.At this time, it may be desirable to structure the component values constituting the fourth matrix so that they are not standardized so that the expression or retention of genes according to each individual is best reflected.

과채-유전자 활성 정보 생성부(304)는, 제1 행렬 내지 제4 행렬을 순차적으로 행렬곱 연산하고, 행렬곱 연산의 결과로서 과채-유전자 활성 정보와 대응하는 제5 행렬을 획득할 수 있다. The vegetable-gene activity information generating unit 304 may sequentially perform a matrix multiplication operation on the first to fourth matrices, and obtain a fifth matrix corresponding to the fruit vegetable-gene activity information as a result of the matrix multiplication operation.

도 3을 참조하면, 제5 행렬은, 특정 사용자에 대하여, 과채들 각각을 행으로 갖고, 유전자들 각각을 열로 갖고, 과채들 각각에 대응하는 유전자들의 연관관계를 나타내는 값을 성분값으로 할 수 있다. 즉, 상술한 제1 내지 제4 행렬 사이의 행렬곱 연산을 통해, 과채들 각각에 대응하는 유전자들의 연관관계를 나타내는 값이 결정될 수 있다.Referring to FIG. 3, the fifth matrix has, for a specific user, each of the fruits and vegetables as a row, each of the genes as a column, and a value representing the correlation between genes corresponding to each of the fruits and vegetables as component values. there is. That is, a value representing the correlation between genes corresponding to each fruit or vegetable can be determined through a matrix multiplication operation between the first to fourth matrices described above.

과채-유전자 활성 정보 생성부(304)는, 제5 행렬로서 획득된 과채-유전자 활성 정보를 사용자 단말(100)에 제공할 수 있다.The fruit and vegetable-gene activity information generating unit 304 may provide the fruit and vegetable-gene activity information obtained as the fifth matrix to the user terminal 100.

도 4는 도 1에 따른 사용자 단말의 기능적 구성요소들을 나타낸 블록도이다.FIG. 4 is a block diagram showing functional components of the user terminal according to FIG. 1.

도 4를 참조하면, 사용자 단말(100)은, 적어도 하나의 웨어러블 기기(200)와 연동하거나 사용자 입력을 통해 라이프로그(lifelog)를 수집하고, 수집된 라이프로그를 클라우드 서버(300)에 제공하는 라이프로그 수집부(101); 클라우드 서버(300)와 무선 네트워크를 통해 통신함으로써 과채-유전자 활성 정보를 획득하는 활성정보 획득부(102); 미리 수집된 훈련 데이터를 이용하여 인공신경망(10)을 지도학습시키는 인공신경망 학습부(103); 지도학습된 인공신경망(10)에 과채-유전자 활성 정보로부터 획득된 다수의 입력 벡터들을 입력하고, 인공신경망(10)의 출력에 기초하여 사용자에게 추천할 다수의 과채들을 선정하는 과채 추천부(104); 및 선정된 다수의 과채들 사이의 궁합을 결정하고 결정된 궁합에 따라 구독 서비스를 사용자에게 제공하는 과채 궁합 결정부(105)를 포함할 수 있다.Referring to FIG. 4, the user terminal 100 collects a lifelog by linking with at least one wearable device 200 or through user input, and provides the collected lifelog to the cloud server 300. Lifelog collection unit 101; an activity information acquisition unit 102 that acquires fruit and vegetable-gene activity information by communicating with the cloud server 300 over a wireless network; an artificial neural network learning unit 103 that supervised learning of the artificial neural network 10 using pre-collected training data; A fruit and vegetable recommendation unit (104) that inputs a number of input vectors obtained from fruit and vegetable-gene activity information into the supervised learning artificial neural network (10) and selects a number of fruits and vegetables to recommend to the user based on the output of the artificial neural network (10). ); and a fruit and vegetable compatibility determination unit 105 that determines compatibility between a plurality of selected fruits and vegetables and provides a subscription service to the user according to the determined compatibility.

여기서, 훈련 데이터는 다수의 다른 사용자들을 대상으로 얻어진 개인화된 과채-유전자 활성 정보들 각각을 인공신경망(10)에 대한 입력데이터로 하고, 상기 다수의 다른 사용자들이 가장 많이 구매했거나 열람한 과채를 인공신경망(10)에 대한 출력데이터로 할 수 있다.Here, the training data uses each of the personalized fruit and vegetable-gene activity information obtained from a large number of different users as input data to the artificial neural network 10, and artificially selects the fruit and vegetable most purchased or viewed by the large number of other users. It can be used as output data for the neural network (10).

과채 추천부(104)는, 과채-유전자 활성 정보와 대응하는 제5 행렬을 구성하는 각 행(row)들을 입력 벡터들로서 순차적으로 인공신경망(10)에 입력하고, 입력된 입력 벡터들 각각에 대하여 인공신경망(10)의 출력값들을 획득할 수 있다. The fruit and vegetable recommendation unit 104 sequentially inputs each row constituting the fifth matrix corresponding to the fruit and vegetable-gene activity information as input vectors to the artificial neural network 10, and for each of the input input vectors, Output values of the artificial neural network 10 can be obtained.

여기서, 제5 행렬을 구성하는 각 행들은 과채들 각각에 대한 유전자 연관관계를 나타내기 때문에 과채들 각각과 대응한다. 따라서, 인공신경망(10)의 출력으로 획득되는 출력값들은 입력 벡터로서 입력된 각 행과 대응하는 과채를 추천하기 위한 확률에 해당할 수 있다.Here, each row constituting the fifth matrix corresponds to each fruit and vegetable because it represents the genetic relationship for each fruit and vegetable. Therefore, the output values obtained as the output of the artificial neural network 10 may correspond to the probability of recommending the fruit or vegetable corresponding to each row input as the input vector.

종합하면, 과채 추천부(104)는, 획득되는 출력값들 중에서 크기가 가장 큰 순서대로 미리 설정된 개수만큼의 출력값과 대응하는 과채들을 사용자에게 추천할 과채들로서 선정할 수 있다.In summary, the fruit and vegetable recommendation unit 104 can select fruits and vegetables corresponding to a preset number of output values in order of largest size among the obtained output values as fruits and vegetables to be recommended to the user.

과채 궁합 결정부(105)는, 선정된 복수개의 과채들 사이의 궁합도를 산출할 수 있다. 예를 들어, 사용자 단말(100)은, 선정된 복수의 과채들을 2개 내지 n(n은 선정된 과채들의 총 개수)개 사이의 과채들로 이루어진 집합들로 그룹핑하고, 각 집합들 내에 속하는 과채들 사이의 궁합도들을 집합들 마다 산출하고, 산출된 궁합도가 미리 설정된 임계값 이상인 집합들 중에서, 미리 설정된 기준에 따라 선택된 집합 내의 과채들을 구독형 서비스를 위한 과채들로서, 사용자에게 제공할 수 있다.The fruit and vegetable compatibility determination unit 105 can calculate the degree of compatibility between a plurality of selected fruits and vegetables. For example, the user terminal 100 groups a plurality of selected fruits and vegetables into sets consisting of between 2 and n (n is the total number of selected fruits and vegetables) fruits and vegetables, and groups the fruits and vegetables within each set. The compatibility between the two is calculated for each set, and among the sets where the calculated compatibility is above a preset threshold, the fruits and vegetables in the set selected according to the preset criteria can be provided to the user as fruits and vegetables for the subscription service. .

궁합도를 산출하기 위해 과채 궁합 결정부(105)는, 과채들 각각을 행으로 갖고, 색상, 제철시기, 수확량, 판매가격 각각을 열로 갖고, 색상을 나타내는 RGB 화소값, 제철시기에 대응하는 월(month)을 나타내는 시기값, 수확량, 및 판매 가격을 성분값으로 갖는 제6 행렬을 생성할 수 있다.In order to calculate the compatibility, the fruit and vegetable compatibility determination unit 105 has each fruit and vegetable as a row, each color, seasonal period, harvest amount, and sales price as a column, and an RGB pixel value representing the color and a month corresponding to the seasonal period. A sixth matrix can be created whose component values include the timing value representing (month), harvest amount, and sales price.

이때, 제6 행렬을 구성하는 각 열들은 각 열을 구성하는 성분들 각각의 평균들과 표준편차들을 이용하여 열 단위로 표준화되는 것이 바람직하다.At this time, it is desirable that each column constituting the sixth matrix be standardized on a per-column basis using the averages and standard deviations of the components constituting each column.

다음으로, 과채 궁합 결정부(105)는, 함유량 정보와 대응하는 제1 행렬의 후단 열에 제6 행렬을 구성하는 열들을 추가하여 과채 특성 행렬을 생성할 수 있다. 즉, 과채 특성 행렬은 각 행이 과채 하나와 대응하고, 각 열들이 영양소들의 함유량, 색상, 제철시기, 수확량, 판매가격 각각과 대응한다.Next, the fruit and vegetable compatibility determination unit 105 may generate a fruit and vegetable characteristic matrix by adding the columns constituting the sixth matrix to the rear column of the first matrix corresponding to the content information. In other words, in the fruit and vegetable characteristic matrix, each row corresponds to one fruit and vegetable, and each column corresponds to nutrient content, color, season, harvest, and selling price.

과채 궁합 결정부(105)는 이와 같은 방식으로 생성된 과채 특성 행렬을 이용하여 과채들 사이의 궁합도를 산출할 수 있다.The fruit and vegetable compatibility determination unit 105 can calculate the compatibility between fruits and vegetables using the fruit and vegetable characteristic matrix generated in this manner.

예를 들어, 제1 과채와 제2 과채 사이의 궁합도를 산출하는 경우, 과채 궁합 결정부(105)는, 과채 특성 행렬에서 제1 과채와 대응하는 제1 행 벡터와 제2 과채와 대응하는 제2 행 벡터를 추출하고, 제1 행 벡터와 제2 행 벡터를 아래의 수학식 1에 따라 연산함으로써 궁합도를 산출할 수 있다.For example, when calculating the compatibility between a first fruit and vegetable and a second fruit and vegetable, the fruit and vegetable compatibility determination unit 105 selects a first row vector corresponding to the first fruit and vegetable and a first row vector corresponding to the second fruit and vegetable in the fruit and vegetable characteristic matrix. Compatibility can be calculated by extracting the second row vector and calculating the first row vector and the second row vector according to Equation 1 below.

같은 방식으로, 제1 과채 내지 제q 과채 사이의 궁합도를 산출하는 경우(q개의 과채들 사이의 궁합도), 과채 특성 행렬에서 제1 과채 내지 제q 과채와 대응하는 제1 행 벡터 내지 제q 행 벡터를 추출하고, 다음의 수학식 1에 따라 궁합도를 산출할 수 있다.In the same way, when calculating the compatibility between the first to qth fruits and vegetables (compatibility between q fruits and vegetables), the first to qth row vectors corresponding to the first to qth fruits and vegetables in the fruit and vegetable characteristic matrix The q row vector can be extracted and the compatibility degree calculated according to Equation 1 below.

수학식 1에서, Vi와 Vj는 제1 행 벡터 내지 제q 행 벡터 중에서 선택된 i번째 및 j번째 행 벡터일 수 있다. In Equation 1, Vi and Vj may be the i-th and j-th row vectors selected from the first to q-th row vectors.

과채 궁합 결정부(105)는, 미리 설정된 기준에 따라 집합을 선정할 수 있다. 예를 들어, 집합 내에서 제철 시기에 해당하는 과채들의 수와 판매 가격이 평균 구매 가격과 미리 설정된 오차 범위 내에 있는 과채들의 수의 합산값이 가장 큰 집합을 선정할 수 있다. The fruit and vegetable compatibility determination unit 105 may select a set according to preset criteria. For example, within the set, the set that has the largest sum of the number of fruits and vegetables that are in season and the number of fruits and vegetables whose sales price is within the average purchase price and a preset error range can be selected.

도 5는 도 1에 따른 사용자 단말과 연동된 인공신경망의 구조를 나타낸 도면이다.FIG. 5 is a diagram showing the structure of an artificial neural network linked to the user terminal according to FIG. 1.

도 5를 참조하면, 인공 신경망(10)은, 입력 벡터들 각각을 순차적으로 입력받고, 입력 벡터들 각각의 성분값 개수와 동일한 개수(n)의 입력 노드들로 구성되는 입력층(11), 입력층(11)으로부터 전달받은 출력값들을 이용하여 얻어지는 출력 벡터(Y`)를 출력층(13)에 전달하는 은닉층(12), 및 출력 벡터(Y`)에 활성화 함수를 적용하여 출력 벡터(Y`)에 대응하는 확률(p)을 출력하는 출력층(13)을 포함할 수 있다.Referring to FIG. 5, the artificial neural network 10 includes an input layer 11 that sequentially receives each of the input vectors and consists of a number (n) of input nodes equal to the number of component values of each of the input vectors. A hidden layer 12 that transmits the output vector (Y') obtained using the output values received from the input layer 11 to the output layer 13, and an activation function is applied to the output vector (Y') to generate the output vector (Y') ) may include an output layer 13 that outputs a probability (p) corresponding to ).

이때, 인공 신경망(10)은, 미리 수집된 훈련 데이터를 이용하여 미리 지도학습되며, 전술한 바와 같이 훈련 데이터 셋은, 다수의 다른 사용자들을 대상으로 얻어진 과채-유전자 활성 정보들 각각과 대응하는 제5 행렬의 행들로부터 얻어지는 입력 벡터들을 인공신경망(10)에 대한 훈련 입력값으로 하고, 상기 다수의 다른 사용자들이 가장 많이 구매했거나 열람한 과채와 대응하는 목표 출력 벡터(Y)를 인공신경망(10)에 대한 훈련 출력값으로 하는 데이터의 집합일 수 있다. 즉, 목표 출력 벡터(Y)는, 과채들 각각에 대하여 고유하게 설정되는 벡터일 수 있다.At this time, the artificial neural network 10 is supervised in advance using pre-collected training data, and as described above, the training data set is the first corresponding to each of the fruit and vegetable-gene activity information obtained for a number of different users. 5 The input vectors obtained from the rows of the matrix are used as training inputs for the artificial neural network (10), and the target output vector (Y) corresponding to the fruits and vegetables most purchased or viewed by the majority of other users is used as the training input for the artificial neural network (10). It may be a set of data used as training output for . That is, the target output vector (Y) may be a vector that is uniquely set for each fruit and vegetable.

이때, 목표 출력 벡터(Y)가 과채들 각각에 대하여 구분없이 단순하게 1:1 매칭하는 방식으로 설정되는 경우, 서로 매우 다른 종류나 함유량을 갖는 과채들이라도 비슷한 목표 출력 벡터(Y)의 형태를 갖게 되기 때문에 훈련 데이터가 부족했을 때 매우 큰 예측 오류를 갖게 된다.At this time, when the target output vector (Y) is set in a simple 1:1 matching method for each fruit and vegetable without distinction, even fruits and vegetables with very different types or contents have a similar target output vector (Y) form. This results in very large prediction errors when training data is insufficient.

이러한 문제를 해결하기 위하여, 인공신경망 학습부(103)는, 함유량 정보를 참조하여, 과채들 각각에 대응하는 목표 출력 벡터(Y)를 미리 설정할 수 있다. 예를 들어, 인공신경망 학습부(103)는, 함유량 정보와 대응하는 제1 행렬(K)을 대각화하여 아래의 수학식 2를 만족하는 제1 대각 행렬(F)을 생성할 수 있다.To solve this problem, the artificial neural network learning unit 103 may refer to content information and previously set a target output vector (Y) corresponding to each fruit or vegetable. For example, the artificial neural network learning unit 103 can generate a first diagonal matrix (F) that satisfies Equation 2 below by diagonalizing the first matrix (K) corresponding to the content information.

수학식 2에서, Q는 제1 대각 행렬(F)과 제1 행렬(K) 사이에 수학식 2에 따른 관계를 가역적으로 만족시키는 행렬로서, 좌표변환행렬에 해당한다. 수학식 2에 따른 연산은 대각화 연산의 하나로 지칭될 수 있으며, 통상의 기술자에게 쉽게 이해될 수 있으므로 구체적인 설명은 생략한다.In Equation 2, Q is a matrix that reversibly satisfies the relationship according to Equation 2 between the first diagonal matrix (F) and the first matrix (K), and corresponds to a coordinate transformation matrix. The operation according to Equation 2 may be referred to as one of the diagonalization operations, and since it can be easily understood by those skilled in the art, detailed description will be omitted.

다음으로, 인공신경망 학습부(103)는, 제1 대각 행렬(F)의 대각선 성분을 구성하는 대각 성분값들 중에서 최대값과 최소값을 선정하고, 선정된 최대값과 최소값 사이의 구간(interval)을 대각 행렬(F)의 행의 개수와 동일한 다수의 구간들로 균등 분할할 수 있다.Next, the artificial neural network learning unit 103 selects the maximum and minimum values among the diagonal component values constituting the diagonal component of the first diagonal matrix F, and sets an interval between the selected maximum and minimum values. can be equally divided into a number of sections equal to the number of rows of the diagonal matrix (F).

다음으로, 인공신경망 학습부(103)는, 앞서 균등 분할된 다수의 구간들 중 대각 성분들 각각이 속하는 구간의 최소값으로, 대각 성분들 각각을 치환함으로써 제1 대각 행렬(F)을 제2 대각 행렬로 변환하고, 변환된 제2 대각 행렬을 구성하는 행들 각각에 대응하는 행 벡터를 과채들 각각에 대응하는 목표 출력 벡터로 설정할 수 있다.Next, the artificial neural network learning unit 103 converts the first diagonal matrix F into the second diagonal matrix by replacing each of the diagonal components with the minimum value of the section to which each of the diagonal components belongs among the multiple equally divided sections. It can be converted into a matrix, and the row vector corresponding to each of the rows constituting the converted second diagonal matrix can be set as the target output vector corresponding to each of the fruits and vegetables.

상술한 방식으로 목표 출력 벡터를 설정하는 경우 함유량에 따라 과채들 각각의 목표 출력 벡터가 달리 설정됨과 동시에 최대한 균등한 간격으로 목표 출력 벡터의 성분값이 결정되므로 인공신경망(10)의 예측 정확도가 빠르게 향상되는 장점을 갖는다.When setting the target output vector in the above-described manner, the target output vector for each fruit or vegetable is set differently depending on the content, and at the same time, the component values of the target output vector are determined at as evenly spaced as possible, so the prediction accuracy of the artificial neural network (10) can be quickly improved. It has the advantage of improving.

한편, 다시 인공신경망(10)의 동작을 설명하면, 인공 신경망(10)은, 훈련 입력값으로 제공된 입력 벡터들(D1~DN)을 순차적으로 입력받으면, 은닉층(12)의 출력으로서 획득되는 출력 벡터(Y`)와 훈련 출력값으로 제공받은 목표 출력 벡터(Y)를 이용하여 손실함수(loss function)을 연산하고, 연산된 손실함수의 결과값이 최소화되도록 지도학습된다.Meanwhile, if we explain the operation of the artificial neural network 10 again, when the artificial neural network 10 sequentially receives input vectors (D1 to DN) provided as training input values, the output obtained as the output of the hidden layer 12 A loss function is calculated using the vector (Y') and the target output vector (Y) provided as the training output value, and supervised learning is performed to minimize the result of the calculated loss function.

예를 들어, 손실 함수(H(Y,Y`))는, 크로스 엔트로피(Cross Entropy) 함수일 수 있다. 출력 벡터(Y`)와 목표 출력 벡터(Y) 사이의 크로스 엔트로피(H(Y,Y`))는 다음의 수학식 3과 같이 정의될 수 있다.For example, the loss function (H(Y,Y')) may be a cross entropy function. The cross entropy (H(Y,Y')) between the output vector (Y') and the target output vector (Y) can be defined as Equation 3 below.

수학식 3에서 Ym은 목표 출력 벡터(Y)의 m(m은 1 이상의 자연수)번째 성분이고, Y`m은 출력 벡터(Y`)의 m번째 성분일 수 있다.In Equation 3, Ym may be the mth component (m is a natural number greater than or equal to 1) of the target output vector (Y), and Y'm may be the mth component of the output vector (Y').

한편, 크로스 엔트로피 함수는 통상적인 인공 신경망(10)의 손실함수로서 많이 사용되나 본 발명에서와 같이 목표 출력 벡터(Y)를 과채들 각각과 대응시켜 구성하는 경우에는 그 대응관계가 손실함수에 반영되지 않아 학습 효과가 떨어지는 문제점이 발생할 수 있다.Meanwhile, the cross entropy function is widely used as a loss function in a typical artificial neural network (10), but when the target output vector (Y) is configured to correspond to each fruit and vegetable as in the present invention, the correspondence relationship is reflected in the loss function. If this is not done, problems may arise that reduce learning effectiveness.

이러한 문제를 보완하기 위하여, 본 발명의 일 실시예에서 손실 함수는 다음의 수학식 4와 같이 새롭게 정의될 수 있다.In order to compensate for this problem, in one embodiment of the present invention, the loss function can be newly defined as in Equation 4 below.

수학식 4에서, Y``는 목표 출력 벡터(Y)와 대응하는 과채 이외에 나머지 다른 과채들 각각에 대응하도록 미리 정의된 목표 출력 벡터로서, Y1 내지 Yj(j는 과채들 전체의 수보다 1 작은 값) 중 하나일 수 있다. 또한, N은 목표 출력 벡터의 성분값 개수를 의미할 수 있고, Ym은 목표 출력 벡터(Y)의 m(m은 1 이상의 자연수)번째 성분이고, Y`m은 출력 벡터(Y`)의 m번째 성분일 수 있다. 또한, 수학식 3에서, UL(Y, Y``)는, 목표 출력 벡터(Y) 및 나머지 다른 과채들 각각에 대응하도록 미리 정의된 목표 출력 벡터(Y``) 사이의 유클리디안 거리(Euclidian distance)일 수 있다.In Equation 4, Y`` is a target output vector predefined to correspond to each of the remaining fruits and vegetables in addition to the fruit and vegetable corresponding to the target output vector (Y), Y1 to Yj (j is 1 smaller than the total number of fruits and vegetables) value). In addition, N may mean the number of component values of the target output vector, Ym is the m (m is a natural number greater than or equal to 1) component of the target output vector (Y), and Y'm is the m component of the output vector (Y'). It may be the second ingredient. Additionally, in Equation 3, UL(Y, Y``) is the Euclidean distance ( Euclidian distance).

즉, 손실 함수에서 과채들 각각에 대응하는 목표 출력 벡터들 사이의 유클리디안 거리를 연산하여 이를 반영하기 때문에, 과채들 각각에 대응하는 목표 출력 벡터들 사이의 대응 관계가 손실함수에 고려되어 지도 학습에 따른 출력 정확도가 추가적으로 향상되는 효과가 있다.That is, because the loss function calculates and reflects the Euclidean distance between the target output vectors corresponding to each fruit and vegetable, the correspondence relationship between the target output vectors corresponding to each fruit and vegetable is taken into consideration in the loss function. There is an effect of additionally improving output accuracy due to learning.

입력층(11)은 입력 벡터들(D1~Dn)을 순차적으로 입력받고, 입력받은 입력 벡터의 성분값들에 대하여, 입력 노드들과 대응하는 하나 이상의 연결 강도값들을 적용하여 은닉층(12)에 전달할 수 있다.The input layer 11 sequentially receives input vectors D1 to Dn, and applies one or more connection strength values corresponding to the input nodes to the component values of the input vectors to the hidden layer 12. It can be delivered.

예를 들어, 입력 노드들 각각에 대응하는 하나 이상의 연결 강도값들은 NХn의 크기를 갖는 제1 연결강도 행렬(WNХn)로 표현할 수 있다. 이때, N은 입력노드들과 동일한 개수인 N일 수 있고, n은 입력 벡터(D1~Dn)의 성분 개수인 n과 동일하게 설정된다. 제1 연결강도 행렬(WNХn)은 임의의 초기값으로 설정된 후 지도학습을 통해 지속적으로 갱신될 수 있다.For example, one or more connection strength values corresponding to each of the input nodes can be expressed as a first connection strength matrix (W NХn ) with a size of NХn. At this time, N may be the same number as the input nodes, and n is set equal to n, which is the number of components of the input vectors (D1 to Dn). The first connection strength matrix (W NХn ) can be set to a random initial value and then continuously updated through supervised learning.

종합하면, 입력층(11)은 순차적으로 입력받은 입력 벡터(D1~Dn)에 제1 연결강도 행렬(WNХn)을 행렬곱 연산하여 얻어진 중간 연산 벡터(X)을 은닉층(12)에 전달할 수 있다.In summary, the input layer 11 can transmit the intermediate operation vector ( there is.

은닉층(12)은, 입력층(11)으로부터 전달받은 중간 연산 벡터(X)에 은닉 노드들 각각에 대응하는 하나 이상의 연결 강도를 적용하여 출력 벡터(Y`)를 생성하고, 생성된 출력 벡터(Y`)를 출력층(13)에 전달할 수 있다. The hidden layer 12 generates an output vector (Y′) by applying one or more connection strengths corresponding to each of the hidden nodes to the intermediate operation vector (X) received from the input layer 11, and the generated output vector ( Y`) can be transmitted to the output layer 13.

이때, 은닉 노드들 각각에 대응하는 하나 이상의 연결 강도값들은 nХN의 크기를 갖는 제2 연결강도 행렬(UnХN)로 표현할 수 있다. 즉, 제2 연결강도 행렬(UnХN)은 n개의 차원으로 사상된 중간 연산 벡터(X)를 다시 N개의 차원으로 복원한다.At this time, one or more connection strength values corresponding to each of the hidden nodes can be expressed as a second connection strength matrix (U nХN ) with a size of nХN. That is, the second connection strength matrix (U nХN ) restores the intermediate operation vector (X) mapped into n dimensions back to N dimensions.

한편, 제2 연결강도 행렬(UnХN)의 초기값은 임의의 값으로 설정된 후, 출력 벡터(Y`)가 훈련 출력값인 목표 출력 벡터(Y)가 되도록 지속적으로 갱신될 수 있다. 즉, 제2 연결강도 행렬(UnХN)은 학습 데이터를 지속적으로 지도학습함에 따라 갱신될 수 있다.Meanwhile, the initial value of the second connection strength matrix (U nХN ) may be set to an arbitrary value, and then continuously updated so that the output vector (Y') becomes the target output vector (Y), which is a training output value. In other words, the second connection strength matrix (U nХN ) can be updated as the learning data is continuously supervised.

출력층(13)은, 은닉층(12)으로부터 전달받은 출력 벡터(Y`)에 활성화 함수를 적용함으로써 출력 벡터(Y`)에 대응하는 확률(p)을 출력할 수 있다. 활성화 함수는 다양한 범위를 가지는 값들을 0과 1 사이의 값으로 확대 또는 축소함으로써 확률로 변환하는 효과가 있다. 예를 들어, 활성화 함수는, LeRU 함수 또는 Softmax 함수일 수 있으나 이에 한정되는 것은 아니다.The output layer 13 can output a probability (p) corresponding to the output vector (Y') by applying an activation function to the output vector (Y') received from the hidden layer (12). The activation function has the effect of converting values with various ranges into probabilities by expanding or reducing them to values between 0 and 1. For example, the activation function may be a LeRU function or a Softmax function, but is not limited thereto.

예를 들어, 인공신경망(10)은 RNN, CNN, Fast RNN, AutoEncoder 등일 수 있으나 이에 한정되는 것은 아니다.For example, the artificial neural network 10 may be RNN, CNN, Fast RNN, AutoEncoder, etc., but is not limited thereto.

도 6은 일 실시예에 따른 인공지능 기반의 개인 맞춤형 과채 추천 시스템에 의해 사용자 단말에서 동작하는 애플리케이션을 나타낸 제1 도면이다. 도 7은 일 실시예에 따른 인공지능 기반의 개인 맞춤형 과채 추천 시스템에 의해 사용자 단말에서 동작하는 애플리케이션을 나타낸 제2 도면이다.Figure 6 is a first diagram showing an application operating on a user terminal by an artificial intelligence-based personalized fruit and vegetable recommendation system according to an embodiment. Figure 7 is a second diagram showing an application operating on a user terminal by an artificial intelligence-based personalized fruit and vegetable recommendation system according to an embodiment.

도 6 내지 도 7을 참조하면, 전술한 사용자 단말(100)은 미리 클라우드 서버(300)를 통해 온라인 상에서 배포되거나 그밖에 외부의 공개 서버를 통해 온라인 상에서 배포된 애플리케이션이 미리 설치되어 구동될 수 있고, 전술한 동작이나 기능은 이러한 애플리케이션의 동작으로 해석될 수 있다.Referring to Figures 6 and 7, the above-described user terminal 100 may be run with an application distributed online in advance through the cloud server 300 or online through another external public server installed in advance, The above-described operations or functions may be interpreted as the operations of these applications.

구체적으로, 도 7을 참조하면, 사용자 단말(100)은 선정된 다수의 과채들을 확률값에 따른 순위대로 사용자에게 표시할 수 있으며, 이때 사용자를 위한 과채들 뿐만 아니라, 사용자가 미리 등록한 가족이나 친구들 각각을 위한 과채들을 선정하여 사용자에게 표시할 수도 있다. 이를 위해 사용자 단말(100)은 가족이나 친구들 각각의 사용자 단말과 연동하여 가족이나 친구들의 라이프로그를 획득하여 클라우드 서버(300)에 제공할 수 있다.Specifically, referring to FIG. 7, the user terminal 100 can display a plurality of selected fruits and vegetables to the user in order of ranking according to probability values. At this time, not only the fruits and vegetables for the user, but also each of the family members or friends registered in advance by the user Fruits and vegetables can also be selected and displayed to the user. To this end, the user terminal 100 can obtain the life logs of family members or friends by linking with each user terminal of the family members or friends and provide them to the cloud server 300.

또한, 과채에 대한 섭취량이나 섭취 종류 등을 개인별, 또는 가족이나 친구들에 대해 설정하거나 수정할 수 있다.In addition, the intake or type of fruit and vegetable intake can be set or modified for each individual or for family or friends.

또한, 사용자 단말(100)에 표시되는 선정 과채들 중에서 하나를 선택하는 경우, 선택된 과채의 생산자, 생산지, 효능, 영양소(영양성분)에 관한 정보 뿐만 아니라 해당 과채의 취급이나 선택과 관련하여 유용한 생활 정보 또는 전문가 큐레이션된 정보를 사용자에게 표시할 수 있다.In addition, when selecting one of the selected fruits and vegetables displayed on the user terminal 100, not only information about the producer, production area, efficacy, and nutrients (nutritional components) of the selected fruit or vegetable is provided, but also useful life information related to the handling or selection of the fruit or vegetable. Information or expert-curated information can be displayed to users.

또한, 선택된 과채가 유기농, 무농약, HACCP 인증, 애완동물 섭취가부, 아기 섭취 가부 등을 나타내는 아이콘을 표시하여 사용자가 쉽게 해당 과채의 섭취에 관한 정보를 식별할 수 있도록 보조할 수 있다.In addition, icons indicating whether the selected fruit or vegetable are organic, pesticide-free, HACCP certified, suitable for consumption by pets, or suitable for consumption by babies can be displayed to help users easily identify information about the consumption of the fruit or vegetable.

도 8은 도 1에 따른 사용자 단말의 하드웨어 구성을 예시적으로 나타낸 도면이다.FIG. 8 is a diagram illustrating an exemplary hardware configuration of the user terminal according to FIG. 1.

도 8을 참조하면, 사용자 단말(100)은 적어도 하나의 프로세서(110); 및 상기 적어도 하나의 프로세서(110)가 적어도 하나의 동작(operation)을 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(120)를 포함할 수 있다.Referring to Figure 8, the user terminal 100 includes at least one processor 110; And it may include a memory 120 that stores instructions that instruct the at least one processor 110 to perform at least one operation.

여기서 적어도 하나의 동작은 전술한 사용자 단말(100)의 동작이나 기능부들의 기능들 중 적어도 일부를 포함하는 것으로 해석된다.Here, at least one operation is interpreted as including at least some of the operations of the user terminal 100 or the functions of the functional units described above.

여기서 적어도 하나의 프로세서(110)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다.Here, the at least one processor 110 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to embodiments of the present invention are performed. You can.

메모리(120)는 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(120)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중에서 적어도 하나로 구성될 수 있다.The memory 120 may be comprised of at least one of a volatile storage medium and a non-volatile storage medium. For example, the memory 120 may be comprised of at least one of read only memory (ROM) and random access memory (RAM).

사용자 단말(100)은, 전술한 동작들을 수행하는 동안 얻어지는 중간 처리 데이터, 결과 데이터, 임시 데이터 등을 저장하는 저장 장치(160)를 포함할 수 있다. 예를 들어, 저장 장치(160)는, HDD(hard disk drive), SSD(solid state drive) 등일 수 있다.The user terminal 100 may include a storage device 160 that stores intermediate processing data, result data, temporary data, etc. obtained while performing the above-described operations. For example, the storage device 160 may be a hard disk drive (HDD), a solid state drive (SSD), or the like.

또한, 사용자 단말(100)는, 무선 네트워크를 통해 통신을 수행하는 송수신 장치(transceiver)(130)를 포함할 수 있다. 또한, 사용자 단말(100)는 입력 인터페이스 장치(140), 출력 인터페이스 장치(150) 등을 더 포함할 수 있다. 사용자 단말(100)에 포함된 각각의 구성 요소들은 버스(bus)(170)에 의해 연결되어 서로 통신을 수행할 수 있다.Additionally, the user terminal 100 may include a transceiver 130 that performs communication through a wireless network. Additionally, the user terminal 100 may further include an input interface device 140, an output interface device 150, etc. Each component included in the user terminal 100 is connected by a bus 170 and can communicate with each other.

본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.Methods according to the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. Computer-readable media may include program instructions, data files, data structures, etc., singly or in combination. Program instructions recorded on a computer-readable medium may be specially designed and constructed for the present invention or may be known and usable by those skilled in the computer software art.

컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer-readable media may include hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions may include machine language code such as that created by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The above-described hardware device may be configured to operate with at least one software module to perform the operations of the present invention, and vice versa.

또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다. Additionally, the above-described method or device may be implemented by combining all or part of its components or functions, or may be implemented separately.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. Although the present invention has been described above with reference to preferred embodiments, those skilled in the art may make various modifications and changes to the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. You will understand that you can do it.

10: 인공신경망
100: 사용자 단말
200: 웨어러블 기기
300: 클라우드 서버
310: 과채 DB
320: 영양소 DB
400: 외부 서버
1000: 인공지능 기반의 개인 맞춤형 과채 추천 시스템
10: Artificial neural network
100: user terminal
200: Wearable device
300: Cloud server
310: Fruit and vegetable DB
320: Nutrient DB
400: external server
1000: Personalized fruit and vegetable recommendation system based on artificial intelligence

Claims (6)

인공지능 기반의 개인 맞춤형 과채 추천 시스템으로서,
사용자의 라이프로그(lifelog)를 수집하여 클라우드 서버에 제공하고, 상기 클라우드 서버로부터 획득된 개인화된 과채-유전자 활성 정보를 기초로 개인 맞춤형 과채를 선정하는 사용자 단말; 및
미리 구축된 과채 데이터베이스와 영양소 데이터베이스 및 외부 서버와 연동하여 개인화된 과채-유전자 활성 정보를 생성하는 클라우드 서버를 포함하고,
상기 사용자 단말은,
상기 과채-유전자 활성 정보를 이용하여 다수의 입력 벡터들을 생성하고, 생성된 상기 다수의 입력 벡터들을 순차적으로 미리 지도학습된(supervised learning) 인공신경망에 입력하고, 상기 인공신경망의 출력값에 기초하여 사용자에게 추천하기 위한 다수의 과채들을 선정하고,
상기 과채 데이터베이스는, 과채들 각각이 함유하는 다양한 영양소들의 함유량을 나타내는 함유량 정보를 저장하고,
상기 영양소 데이터베이스는, 영양소들 각각이 신체의 대사작용에 의해 대사되어 신체로 흡수되는 대사량을 나타내는 대사량 정보; 및
대사물질들 각각이 신체에 흡수되었을 때 유전자의 변이 또는 유전자의 발현을 억제 또는 활성화하는 정도를 나타내는 활성도 정보;를 저장하고,
상기 클라우드 서버는,
상기 외부 서버와 연동하여 의료 정보를 획득하고, 상기 의료 정보 및 상기 라이프로그를 기반으로 상기 사용자와 대응하는 유전자들 각각의 가중치값들을 결정하고, 결정된 상기 가중치값들을 나타내는 유전자 가중치 정보를 생성하고,
상기 클라우드 서버는,
상기 함유량 정보를 이용하여 제1 행렬을 생성하고, 상기 대사량 정보를 이용하여 제2 행렬을 생성하고, 상기 활성도 정보를 이용하여 제3 행렬을 생성하고, 상기 유전자 가중치 정보를 이용하여 제4 행렬을 생성하고, 상기 제1 행렬 내지 상기 제4 행렬 사이의 행렬곱 연산을 통해 상기 과채-유전자 활성 정보와 대응하는 제5 행렬을 획득하고,
상기 사용자 단말은,
선정된 상기 다수의 과채들을 2개부터 n(n은 선정된 상기 다수의 과채들의 총 개수)개 사이의 과채들로 이루어진 집합들로 그룹핑하고, 집합들 각각에 속하는 과채들 사이의 궁합도들을 상기 집합들 각각마다 산출하고, 산출된 궁합도가 미리 설정된 임계값 이상인 상기 집합들 중에서, 미리 설정된 기준에 따라 선택된 집합 내의 과채들을 구독형 서비스를 위한 과채들로서 상기 사용자에게 제공하는, 인공지능 기반의 개인 맞춤형 과채 추천 시스템.
As an artificial intelligence-based personalized fruit and vegetable recommendation system,
A user terminal that collects the user's lifelog, provides it to a cloud server, and selects personalized fruits and vegetables based on personalized fruit and vegetable-gene activity information obtained from the cloud server; and
It includes a cloud server that generates personalized fruit and vegetable-gene activity information by linking with a pre-built fruit and vegetable database, a nutrient database, and an external server,
The user terminal is,
A plurality of input vectors are generated using the fruit and vegetable-gene activity information, the generated plurality of input vectors are sequentially input into a pre-supervised learning artificial neural network, and the user is generated based on the output value of the artificial neural network. Select a number of fruits and vegetables to recommend to
The fruit and vegetable database stores content information indicating the content of various nutrients contained in each fruit and vegetable,
The nutrient database includes metabolic amount information indicating the amount of nutrients each nutrient is metabolized by the body's metabolic process and absorbed into the body; and
Stores activity information indicating the degree to which each metabolite suppresses or activates gene mutation or gene expression when absorbed into the body;
The cloud server is,
Obtain medical information by linking with the external server, determine weight values for each gene corresponding to the user based on the medical information and the life log, and generate gene weight information representing the determined weight values,
The cloud server is,
A first matrix is generated using the content information, a second matrix is generated using the metabolic amount information, a third matrix is generated using the activity information, and a fourth matrix is created using the gene weight information. Generating and obtaining a fifth matrix corresponding to the fruit and vegetable-gene activity information through a matrix multiplication operation between the first matrix to the fourth matrix,
The user terminal is,
The selected plurality of fruits and vegetables are grouped into sets of fruits and vegetables ranging from 2 to n (n is the total number of the selected plurality of fruits and vegetables), and the compatibility between the fruits and vegetables belonging to each of the sets is calculated. An artificial intelligence-based individual that calculates for each set and provides fruits and vegetables in the set selected according to preset criteria among the sets where the calculated compatibility is more than a preset threshold to the user as fruits and vegetables for a subscription service. Customized fruit and vegetable recommendation system.
삭제delete 삭제delete 삭제delete 청구항 1에서,
상기 인공 신경망은, 미리 수집된 훈련 데이터를 이용하여 미리 지도학습되며,
상기 훈련 데이터는, 상기 사용자 이외의 다수의 다른 사용자들을 대상으로 얻어진 과채-유전자 활성 정보들 각각과 대응하는 상기 제5 행렬의 행들로부터 얻어지는 입력 벡터들을 상기 인공신경망에 대한 훈련 입력값으로 하고, 상기 다수의 다른 사용자들이 가장 많이 구매 또는 열람한 과채와 대응하는 목표 출력 벡터를 상기 인공신경망에 대한 훈련 출력값으로 하는 데이터의 집합인, 인공지능 기반의 개인 맞춤형 과채 추천 시스템.
In claim 1,
The artificial neural network is supervised in advance using training data collected in advance,
The training data uses input vectors obtained from the rows of the fifth matrix corresponding to each of the fruit-gene activity information obtained for a number of users other than the user as training input values for the artificial neural network, and An artificial intelligence-based personalized fruit and vegetable recommendation system that is a set of data that uses the target output vector corresponding to the fruit and vegetable most purchased or viewed by multiple other users as a training output for the artificial neural network.
삭제delete
KR1020210136588A 2021-10-14 2021-10-14 System for recommending personalized fruit and vegetables based on artificial intelligence KR102609726B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210136588A KR102609726B1 (en) 2021-10-14 2021-10-14 System for recommending personalized fruit and vegetables based on artificial intelligence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210136588A KR102609726B1 (en) 2021-10-14 2021-10-14 System for recommending personalized fruit and vegetables based on artificial intelligence

Publications (2)

Publication Number Publication Date
KR20230053253A KR20230053253A (en) 2023-04-21
KR102609726B1 true KR102609726B1 (en) 2023-12-06

Family

ID=86098660

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210136588A KR102609726B1 (en) 2021-10-14 2021-10-14 System for recommending personalized fruit and vegetables based on artificial intelligence

Country Status (1)

Country Link
KR (1) KR102609726B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020160544A (en) * 2019-03-25 2020-10-01 ファナック株式会社 Food providing system, food providing method, and program
KR102278646B1 (en) * 2020-08-12 2021-07-19 주식회사 디이프 Customized food recommendation system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102292344B1 (en) * 2019-08-07 2021-08-25 왓비타 주식회사 Personalized nutritional ingredient recommendation method and server
KR20210052122A (en) * 2019-10-31 2021-05-10 주식회사 삼양사 System and method for providing user-customized food information service

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020160544A (en) * 2019-03-25 2020-10-01 ファナック株式会社 Food providing system, food providing method, and program
KR102278646B1 (en) * 2020-08-12 2021-07-19 주식회사 디이프 Customized food recommendation system

Also Published As

Publication number Publication date
KR20230053253A (en) 2023-04-21

Similar Documents

Publication Publication Date Title
Bushamuka et al. Impact of a homestead gardening program on household food security and empowerment of women in Bangladesh
Dulal et al. Homestead food production and maternal and child dietary diversity in Nepal: variations in association by season and agroecological zone
Van Hook et al. Healthy eating among Mexican immigrants: migration in childhood and time in the United States
CN112951430A (en) Multiple chronic disease joint management apparatus and computer-readable storage medium
Dalky et al. Eating habits and associated factors among adolescent students in Jordan
US20220198338A1 (en) Method for and system for predicting alimentary element ordering based on biological extraction
US12009085B2 (en) Systems and methods for scheduling alimentary combinations
US20210057077A1 (en) Systems and methods for arranging transport of adapted nutrimental artifacts with user-defined restriction requirements using artificial intelligence
KR20230056533A (en) Method and device for providing salad menu recommendation service
KR20220011867A (en) Apparatus and method for providing agricultural products
KR20230065146A (en) Method and apparatus for providing customized product information based on pet information
Gustafson et al. High BMI predicts attention to less healthy product sets: can a prompt lead to consideration of healthier sets of products?
KR102609726B1 (en) System for recommending personalized fruit and vegetables based on artificial intelligence
US20230230674A1 (en) Systems and methods for arranging transport of adapted nutrimental artifacts with user-defined restriction requirements using artificial intelligence
Gouthami et al. Nutrition diet recommendation system using user’s interest
Bandyopadhyay et al. Analyzing the drivers of household dietary diversity: Evidence from Burkina Faso
Martos-Barrachina et al. A novel cost-palatability bi-objective approach to the menu planning problem with an innovative similarity metric using a path relinking algorithm
US20240087719A1 (en) Methods and systems for calculating an edible score in a display interface
US11211158B1 (en) System and method for representing an arranged list of provider aliment possibilities
Bhandari et al. Sustaining agriculture and nutrition interventions: Continued engagement of village model farmers in Nepal
KR102631340B1 (en) Product recommendation method and device
US11393572B2 (en) System and method for modifying a nutrition requirement
Cavallo et al. A knowledge-based system for personalised lifestyle recommendations: Design and simulation of potential effectiveness on the UK Biobank data
US20230274812A1 (en) Methods and systems for calculating an edible score in a display interface
US20220138629A1 (en) Method for and system for arranging consumable elements within a display interface

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right