KR102415373B1 - 사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품 - Google Patents

사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품 Download PDF

Info

Publication number
KR102415373B1
KR102415373B1 KR1020210156796A KR20210156796A KR102415373B1 KR 102415373 B1 KR102415373 B1 KR 102415373B1 KR 1020210156796 A KR1020210156796 A KR 1020210156796A KR 20210156796 A KR20210156796 A KR 20210156796A KR 102415373 B1 KR102415373 B1 KR 102415373B1
Authority
KR
South Korea
Prior art keywords
vector model
food
vector
user
model
Prior art date
Application number
KR1020210156796A
Other languages
English (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 KR1020210156796A priority Critical patent/KR102415373B1/ko
Application granted granted Critical
Publication of KR102415373B1 publication Critical patent/KR102415373B1/ko

Links

Images

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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/12Hotels or restaurants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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/0613Third-party assisted
    • G06Q30/0619Neutral agent

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Development Economics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품을 제공할 수 있다.
본 발명에서는, 음식의 맛, 냄새 또는 식감과 관련하여 사용자의 기호를 나타내는 제 1 벡터 모델을 생성하고, 복수의 음식들 각각에 대하여 맛, 냄새 또는 식감과 관련된 복수의 제 2 벡터 모델들을 생성하고, 제 1 벡터 모델 및 제 2 벡터 모델들에 기초하여 복수의 음식들 중 사용자의 기호에 맞는 적어도 하나의 음식을 추천하고, 추천한 적어도 하나의 음식에 대한 사용자의 피드백에 기초하여 제 1 벡터 모델을 업데이트할 수 있다.

Description

사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품{METHOD, DEVICE AND COMPUTER PROGRAM PRODUCT FOR RECOMMENDING FOOD TAILORED TO THE USER'S TASTE}
본 개시는 사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품을 제공한다.
최근 사용자에게 음식이나 맛집을 추천하는 서비스가 다양하게 개발되고 있다. 기존의 음식이나 맛집을 추천하는 서비스는 모든 사용자들의 입맛이 보편적이고 동일하다는 가정 하에 음식이나 맛집을 추천하고 있다. 그러나, 사용자들 개개인의 입맛 또는 취향은 매우 다양하므로 사용자들 개개인의 입맛 또는 취향을 고려하지 않고 사용자에게 음식이나 맛집을 추천하는 경우에는, 사용자의 기호에 맞는 음식이나 맛집을 추천하지 못할 가능성이 높다.
따라서, 사용자들 개개인의 입맛 또는 취향을 고려하여 음식이나 맛집을 추천할 수 있는 서비스가 요구된다.
전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
본 발명은 사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품을 제공하는데 있다. 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 이하의 실시예들로부터 또 다른 기술적 과제들이 유추될 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제1 측면은, 사용자의 기호에 맞는 음식을 추천하는 방법에 있어서, 음식의 맛, 냄새 또는 식감과 관련하여 사용자의 기호를 나타내는 제 1 벡터 모델을 생성하는 단계; 복수의 음식들 각각에 대하여 맛, 냄새 또는 식감과 관련된 복수의 제 2 벡터 모델들을 생성하는 단계; 및 상기 제 1 벡터 모델 및 상기 제 2 벡터 모델들에 기초하여 상기 복수의 음식들 중 상기 사용자의 기호에 맞는 적어도 하나의 음식을 추천하는 단계; 및 상기 추천한 적어도 하나의 음식에 대한 사용자의 피드백에 기초하여 상기 제 1 벡터 모델을 업데이트하는 단계; 를 포함할 수 있다.
또한, 상기 추천하는 단계는, 상기 제 2 벡터 모델들 중 상기 제 1 벡터 모델과의 유사도가 기 설정된 값 이상인 벡터 모델에 해당하는 적어도 하나의 제 1 음식을 도출하는 단계; 및 상기 적어도 하나의 제 1 음식을 추천하는 단계; 를 포함할 수 있다.
또한, 상기 추천하는 단계는, 상기 제 1 벡터 모델에 포함된 비트값들 중 적어도 하나를 변경하여 사용자의 기호와 일치하지 않는 제 3 벡터 모델을 생성하는 단계; 상기 제 2 벡터 모델들 중 상기 제 3 벡터 모델과의 유사도가 기 설정된 값 이상인 벡터 모델에 해당하는 적어도 하나의 제 2 음식을 도출하는 단계; 및 상기 적어도 하나의 제 2 음식을 추천하는 단계;를 포함할 수 있다.
또한, 상기 업데이트하는 단계는, 상기 적어도 하나의 제 1 음식 중에서 상기 사용자가 불만족한 음식에 해당하는 제 4 벡터 모델을 도출하는 단계; 및 상기 제 4 벡터 모델 및 상기 제 1 벡터 모델과의 비유사도가 기 설정된 값 이상인 경우, 상기 제 4 벡터 모델에 포함된 비트값들과 다른 값을 갖는 제 1 벡터 모델의 비트값들을 변경하여 상기 제 1 벡터 모델을 업데이트하는 단계; 를 포함할 수 있다.
또한, 상기 업데이트하는 단계는, 상기 적어도 하나의 제 2 음식 중에서 상기 사용자가 만족한 음식에 해당하는 제 5 벡터 모델을 도출하는 단계; 및 상기 제 5 벡터 모델 및 상기 제 1 벡터 모델과의 비유사도가 기 설정된 값 이상인 경우, 상기 제 5 벡터 모델에 포함된 비트값들과 다른 값을 갖는 제 1 벡터 모델의 비트값들을 변경하여 상기 제 1 벡터 모델을 업데이트하는 단계; 를 포함할 수 있다.
본 개시의 제 2 측면은, 사용자의 기호에 맞는 음식을 추천하는 장치에 있어서,
적어도 하나의 프로그램이 저장된 메모리; 및 상기 적어도 하나의 프로그램을 실행함으로써 연산을 수행하는 프로세서를 포함하고, 상기 프로세서는, 음식의 맛, 냄새 또는 식감과 관련하여 사용자의 기호를 나타내는 제 1 벡터 모델을 생성하고, 복수의 음식들 각각에 대하여 맛, 냄새 또는 식감과 관련된 복수의 제 2 벡터 모델들을 생성하고, 상기 제 1 벡터 모델 및 상기 제 2 벡터 모델들에 기초하여 상기 복수의 음식들 중 상기 사용자의 기호에 맞는 적어도 하나의 음식을 추천하고, 상기 추천한 적어도 하나의 음식에 대한 사용자의 피드백에 기초하여 상기 제 1 벡터 모델을 업데이트할 수 있다.
본 개시의 제 3 측면은, 음식의 맛, 냄새 또는 식감과 관련하여 사용자의 기호를 나타내는 제 1 벡터 모델을 생성하는 단계; 복수의 음식들 각각에 대하여 맛, 냄새 또는 식감과 관련된 복수의 제 2 벡터 모델들을 생성하는 단계; 상기 제 1 벡터 모델 및 상기 제 2 벡터 모델들에 기초하여 상기 복수의 음식들 중 상기 사용자의 기호에 맞는 적어도 하나의 음식을 추천하는 단계; 및 상기 추천한 적어도 하나의 음식에 대한 사용자의 피드백에 기초하여 상기 제 1 벡터 모델을 업데이트하는 단계; 를 수행하도록 하는 프로그램이 저장된 하나 이상의 컴퓨터로 읽을 수 있는 기록매체를 포함하는 컴퓨터 프로그램 제품을 제공할 수 있다.
전술한 본 개시의 과제 해결 수단 중 하나에 의하면, 음식의 맛, 냄새 또는 식감과 관련하여 사용자의 기호를 고려하여 음식을 추천할 수 있다.
도 1은 음식 추천 서버 및 사용자 단말을 포함하는 음식을 추천하는 시스템의 블록도이다.
도 2는 일 실시예에 따른 사용자의 기호에 맞는 음식을 추천하는 방법의 흐름도이다.
도 3은 일 실시예에 따른 제 1 벡터 모델 및 제 2 벡터 모델을 생성하는 것을 나타내는 도면이다.
도 4는 일 실시예에 따른 제 1 벡터 모델을 업데이트하는 방법의 흐름도이다.
도 5는 일 실시예에 따른 음식 추천 장치의 블록도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 설명되는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 아래에서 제시되는 실시 예들로 한정되는 것이 아니라, 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 아래에 제시되는 실시 예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시의 일부 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들의 일부 또는 전부는, 특정 기능들을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 또한, 예를 들어, 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다."매커니즘", "요소", "수단" 및 "구성"등과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다.
또한, 도면에 도시된 구성 요소들 간의 연결 선 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것일 뿐이다. 실제 장치에서는 대체 가능하거나 추가된 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들에 의해 구성 요소들 간의 연결이 나타내어질 수 있다.
이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다. 이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
도 1은 음식 추천 서버 및 사용자 단말을 포함하는 음식을 추천하는 시스템의 블록도이다.
일 실시예에 따른 음식을 추천하는 시스템(1000)은 음식 추천 서버(100) 및 사용자 단말(110)을 포함할 수 있다. 한편, 도 1에 도시된 음식을 추천하는 시스템(1000)에는 일 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 음식을 추천하는 시스템(1000)에는 도 1에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음은 당해 기술분야의 통상의 기술자에게 자명하다.
사용자 단말(110)은 사용자의 기호와 관련된 정보를 음식 추천 서버(100)에 송신할 수 있다. 사용자의 기호와 관련된 정보는 음식의 맛, 냄새, 식감 및 재료의 성분 등과 관련하여 사용자의 기호를 나타내는 정보에 해당할 수 있다.
음식 추천 서버(100)는 사용자 단말(110)로부터 수신한 사용자의 기호와 관련된 정보에 기초하여 사용자의 기호에 맞는 음식을 추천할 수 있다. 예를 들어, 음식 추천 서버(100)는 사용자의 기호와 관련된 정보에 기초하여 사용자의 기호를 나타내는 제 1 벡터 모델을 생성할 수 있다. 또한, 음식 추천 서버(100)는 복수의 음식들 각각에 대하여 맛, 냄새, 식감 및 재료의 성분을 나타내는 제 2 벡터 모델들을 생성할 수 있다. 음식 추천 서버(100)는 제 1 벡터 모델 및 제 2 벡터 모델들에 기초하여 복수의 음식들 중 사용자의 기호에 맞는 적어도 하나의 음식을 선택할 수 있고, 적어도 하나의 음식에 관한 정보를 사용자 단말(100)로 송신할 수 있다. 즉, 음식 추천 서버(100)는 사용자의 기호에 맞는 적어도 하나의 음식을 사용자 단말(100)에 추천할 수 있다.
또한, 음식 추천 서버(100)는 사용자의 기호와 관련된 정보에 기초하여 생성한 제 1 벡터 모델을 업데이트할 수 있다. 예를 들어, 음식 추천 서버(100)는 저장하고 있는 사용자의 기호와 관련된 정보가 실제 사용자의 기호와 다를 수 있으므로, 추천한 적어도 하나의 음식에 대한 사용자의 피드백에 기초하여 제 1 벡터 모델을 지속적으로 업데이트할 수 있다.
한편, 음식 추천 서버(100) 및 사용자 단말(110)은 네트워크를 이용하여 통신을 수행할 수 있다. 예를 들어, 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 이동 통신망(mobile radio communication network), 위성 통신망 및 이들의 상호 조합을 포함하며, 각 네트워크 구성 주체가 서로 원활하게 통신을 할 수 있도록 하는 포괄적인 의미의 데이터 통신망이며, 유선 인터넷, 무선 인터넷 및 모바일 무선 통신망을 포함할 수 있다. 또한, 무선 통신은 예를 들어, 무선 랜(Wi-Fi), 블루투스, 블루투스 저 에너지(Bluetooth low energy), 지그비, WFD(Wi-Fi Direct), UWB(ultra wideband), 적외선 통신(IrDA, infrared Data Association), NFC(Near Field Communication) 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
예를 들어, 음식 추천 서버(100)는 네트워크를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들 구현될 수 있다.
도 2는 일 실시예에 따른 사용자의 기호에 맞는 음식을 추천하는 방법의 흐름도이다.
도 2를 참고하면, 단계 210에서 음식 추천 서버(100)는 음식의 맛, 냄새 또는 식감과 관련한 사용자의 기호를 나타내는 제 1 벡터 모델을 생성할 수 있다.
예를 들어, 제 1 벡터 모델은 음식의 맛, 냄새 또는 식감과 관련한 복수의 항목들 각각에 관하여 사용자가 해당 항목을 선호하는지 여부를 나타내는 벡터 모델에 해당할 수 있다. 예를 들어, 제 1 벡터 모델은 0 또는 1로 이루어진 이진수의 데이터에 해당할 수 있으나, 이에 제한되는 것은 아니다.
단계 220에서, 음식 추천 서버(100)는 복수의 음식들 각각에 대하여 맛, 냄새 또는 식감을 나타내는 복수의 제 2 벡터 모델들을 생성할 수 있다.
예를 들어, 제 2 벡터 모델들은 맛, 냄새 또는 식감과 관련한 복수의 항목들 각각에 관하여 해당 음식이 해당되는지 여부를 나타내는 벡터 모델에 해당할 수 있다. 예를 들어, 제 2 벡터 모델은 0 또는 1로 이루어진 이진수의 데이터에 해당할 수 있으나, 이에 제한되는 것은 아니다.
도 3은 일 실시예에 따른 제 1 벡터 모델 및 제 2 벡터 모델을 생성하는 것을 나타내는 도면이다.
도 3을 참고하면, 음식 추천 서버(100)는 음식의 맛, 냄새 또는 식감과 관련한 복수의 항목들을 설정할 수 있다. 예를 들어, 복수의 항목들은 미각에 관한 항목들(단맛, 짠맛, 신맛, 쓴맛, 감칠맛 등), 후각에 관한 항목들(꽃향기, 나무 냄새, 화학물질 냄새, 박하 냄새, 단내, 레몬 냄새, 썩은 냄새, 비린 냄새 등), 촉각에 관한 항목들(딱딱한, 부드러운, 물컹물컹한 등), 시각에 관한 항목들(빨간색, 녹색, 파란색 등) 및 청각에 관한 항목들(먹을 때 소리가 나는, 먹을 때 소리가 나지 않는 등) 중 적어도 하나의 항목을 포함할 수 있다.
사용자 단말(110)은 복수의 항목들 각각에 대하여 사용자가 해당 항목을 선호하는 지에 관한 정보를 음식 추천 서버(100)로 송신할 수 있고, 음식 추천 서버(100)는 복수의 항목들 각각에 대하여 사용자가 해당 항목을 선호하는 지에 관한 정보에 기초하여 제 1 벡터 모델 K를 생성할 수 있다. 도 3을 참고하면, '김영수'라는 사용자는 짠맛 및 감칠맛을 선호하고, 단맛, 신맛 및 쓴맛은 선호하지 않는다는 정보에 기초하여, 음식 추천 서버(100)는 짠맛 및 감칠맛 항목에 대하여는 1을 부여하고 단맛, 신맛 및 쓴맛 항목에 대하여는 0을 부여할 수 있다. 이에 따라, 음식 추천 서버(100)는 제 1 벡터 모델 K를 생성할 수 있으며, K는 {0,1,0,0,1...}에 해당할 수 있다. 도 3에서는 편의상 복수의 항목들 중 미각에 관한 항목들에 대해서만 표시하였으나, 제 1 벡터 모델 K는 상술한 후각에 관한 항목들, 촉각에 관한 항목들, 시각에 관한 항목들 및 청각에 관한 항목들을 더 포함할 수 있다.
또한, 음식 추천 서버(100)는 복수의 음식들 각각에 대하여 해당 음식이 상술한 복수의 항목들 각각에 해당되는 지에 관한 정보에 기초하여 제 2 벡터 모델 M을 생성할 수 있다. 도 3을 참고하면, 복수의 음식들 중 '멸치 칼국수'는 짠맛 및 감칠맛에 해당하고 단맛, 신맛 및 쓴맛에 해당하지는 않으므로, 음식 추천 서버(100)는 짠맛 및 감칠맛 항목에 대하여는 1을 부여하고 단맛, 신맛 및 쓴맛 항목에 대하여는 0을 부여할 수 있다. 이에 따라, 음식 추천 서버(100)는 제 2 벡터 모델 M을 생성할 수 있으며, M은 {0,1,0,0,1...}에 해당할 수 있다. 도 3에서는 편의상 복수의 항목들 중 미각에 관한 항목들에 대해서만 표시하였으나, 제 2 벡터 모델 M은 상술한 후각에 관한 항목들, 촉각에 관한 항목들, 시각에 관한 항목들 및 청각에 관한 항목들을 더 포함할 수 있다.
정리하면, 제 1 벡터 모델 K 및 제 2 벡터 모델 M은 각각 하기 수학식 1 및 수학식 2와 같이 나타낼 수 있다.
Figure 112021131516419-pat00001
Figure 112021131516419-pat00002
상기 수학식 1에서, k1 내지 kn은 상술한 복수의 항목들 각각에 대하여 사용자가 해당 항목을 선호하는 지 여부를 나타낼 수 있으며, 사용자가 해당 항목을 선호하는 경우에는 1 이고, 사용자가 해당 항목을 선호하지 않는 경우에는 0에 해당할 수 있다. 또한, 상기 수학식 2에서 m1 내지 mn은 음식이 상술한 복수의 항목들 각각에 해당하는 지 여부를 나타낼 수 있으며, 음식이 특정 항목에 해당하는 경우에는 1 이고, 특정 항목에 해당하지 않는 경우에는 0에 해당할 수 있다. n은 상술한 복수의 항목들의 개수에 해당할 수 있다.
단계 230에서, 음식 추천 서버(100)는 제 1 벡터 모델 및 제 2 벡터 모델들에 기초하여 복수의 음식들 중 사용자의 기호에 맞는 적어도 하나의 음식을 추천할 수 있다.
일 실시예에서, 음식 추천 서버(100)는 제 2 벡터 모델들 각각을 제 1 벡터 모델과 비교할 수 있다. 음식 추천 서버(100)는 제 2 벡터 모델들 중 제 1 벡터 모델과의 유사도가 기 설정된 값 이상인 벡터 모델에 해당하는 적어도 하나의 제 1 음식을 도출할 수 있고, 적어도 하나의 제 1 음식을 사용자 단말(110)에 추천할 수 있다.
예를 들어, 음식 추천 서버(100)는 제 1 벡터 모델 K 및 제 2 벡터 모델 M의 유사도를 하기 수학식 3 내지 수학식 5에 기초하여 판단할 수 있다.
Figure 112021131516419-pat00003
Figure 112021131516419-pat00004
Figure 112021131516419-pat00005
즉, 수학식 3에 따르면 제 1 벡터 모델 K 및 제 2 벡터 모델 M의 유사도를 나타내는 J는 제 1 벡터 모델에 포함된 복수의 항목들 각각에 대한 비트값과 제 2 벡터 모델에 포함된 복수의 항목들 각각에 대한 비트값의 유사성이 클수록 큰 값에 해당될 수 있다. 예를 들어, 제 1 벡터 모델 K 및 제 2 벡터 모델 M가 완전히 동일한 경우에는 J는 1의 값을 가질 수 있다. 한편, J의 분모에 해당하는
Figure 112021131516419-pat00006
가 0에 해당하는 경우에는, 제 1 벡터 모델 K 및 제 2 벡터 모델 M에 포함된 비트값들이 모두 0에 해당되는 경우이므로 음식 추천 서버(100)는 '추천할 수 없음'으로 처리할 수 있다.
음식 추천 서버(100)는 제 2 벡터 모델들 중 제 1 벡터 모델 K와의 유사도(J)가 기 설정된 값 이상인 벡터 모델에 해당하는 적어도 하나의 제 1 음식을 도출할 수 있고, 적어도 하나의 제 1 음식은 사용자의 기호에 맞는 음식이라고 판단할 수 있다. 또는, 음식 추천 서버(100)는 제 2 벡터 모델들 중 제 1 벡터 모델 K와의 유사도(J)가 높은 순서대로 상위 L(L은 1 이상)개의 제 1 음식을 도출할 수 있다.
한편, 음식 추천 서버(100)는 사용자의 기호와 관련된 정보가 실제 사용자의 기호와 다를 수 있으므로, 제 1 벡터 모델을 지속적으로 업데이트할 수 있다. 제 1 벡터 모델의 업데이트를 위해, 음식 추천 서버(100)는 상술한 바와 같이 사용자의 기호에 맞는 음식이라고 판단되는 음식뿐만 아니라 사용자의 기호에 맞지 않는 음식도 추천할 수 있다. 이에 따라, 음식 추천 서버(100)는 사용자의 기호에 맞는 음식이라고 판단되는 음식 및 사용자의 기호에 맞지 않는 음식 모두에 대한 사용자의 피드백에 기초하여 제 1 벡터 모델을 사용자의 실제 기호에 맞도록 업데이트할 수 있다.
도 4는 일 실시예에 따른 제 1 벡터 모델을 업데이트하는 방법의 흐름도이다.
도 4를 참고하면, 단계 401에서 음식 추천 서버(100)는 음식의 맛, 냄새 또는 식감과 관련하여 사용자의 기호를 나타내는 제 1 벡터 모델을 생성할 수 있다.
단계 402에서, 음식 추천 서버(100)는 복수의 음식들 각각에 대하여 맛, 냄새 또는 식감과 관련된 복수의 제 2 벡터 모델들을 생성할 수 있다.
단계 403에서, 음식 추천 서버(100)는 제 2 벡터 모델들 중 제 1 벡터 모델과의 유사도가 기 설정된 값 이상인 벡터 모델에 해당하는 적어도 하나의 제 1 음식을 도출할 수 있다. 단계 401 내지 단계 403과 관련해서는 도 1 내지 도 3에서 상술한 바와 동일하다.
단계 404에서, 음식 추천 서버(100)는 제 1 벡터 모델에 포함된 비트값들 중 일부를 변경하여 사용자의 기호와 일치하지 않는 제 3 벡터 모델을 생성할 수 있다. 예를 들어, 제 1 벡터 모델이 {0,1,0,0,1...}에 해당하는 경우, 제 1 벡터 모델 K에 포함된 비트값들 중 적어도 하나의 값을 반전시켜 제 3 벡터 모델을 생성할 수 있다. 예를 들어, 제 3 벡터 모델은 제 1 벡터 모델 K에 포함된 비트값들 중 첫번째 비트값을 0에서 1로 반전시킨 {1,1,0,0,1...}에 해당할 수 있다.
단계 405에서, 음식 추천 서버(100)는 제 2 벡터 모델들 중 제 3 벡터 모델과의 유사도가 기 설정된 값 이상인 벡터 모델에 해당하는 적어도 하나의 제 2 음식을 도출할 수 있다. 제 3 벡터 모델 및 제 2 벡터 모델의 유사도는 도 2에서 상술한 바와 같이 수학식 2에 기초하여 판단할 수 있다.
단계 406에서, 음식 추천 서버(100)는 적어도 하나의 제 1 음식 및 적어도 하나의 제 2 음식을 사용자 단말(110)에 추천할 수 있다.
단계 407에서, 음식 추천 서버(100)는 적어도 하나의 제 1 음식 중에서 사용자가 불만족한 음식에 해당하는 제 4 벡터 모델을 도출할 수 있다. 제 4 벡터 모델은 적어도 하나의 제 1 음식 중에서 사용자가 불만족한다는 피드백을 받은 음식들 중 어느 하나의 음식의 맛, 냄새 또는 식감과 관련된 벡터 모델일 수 있다.
단계 408에서, 음식 추천 서버(100)는 적어도 하나의 제 2 음식 중에서 사용자가 만족한 음식에 해당하는 제 5 벡터 모델을 도출할 수 있다. 제 5 벡터 모델은 적어도 하나의 제 2 음식 중에서 사용자가 만족한다는 피드백을 받은 음식들 중 어느 하나의 음식의 맛, 냄새 또는 식감과 관련된 벡터 모델일 수 있다.
단계 409에서, 음식 추천 서버(100)는 제 4 벡터 모델 또는 제 5 벡터 모델에 기초하여 제 1 벡터 모델을 업데이트할 수 있다. 예를 들어, 음식 추천 서버(100)는 제 4 벡터 모델 및 제 1 벡터 모델과의 비유사도가 기 설정된 값 이상인 경우, 제 4 벡터 모델에 포함된 비트값들과 다른 값을 갖는 제 1 벡터 모델의 비트값들을 변경하여 제 1 벡터 모델을 업데이트할 수 있다. 또한 예를 들어, 음식 추천 서버(100)는 제 5 벡터 모델 및 제 1 벡터 모델과의 비유사도가 기 설정된 값 이상인 경우, 상기 제 5 벡터 모델에 포함된 비트값들과 다른 값을 갖는 제 1 벡터 모델의 비트값들을 변경하여 제 1 벡터 모델을 업데이트할 수 있다.
예를 들어, 음식 추천 서버(100)는 제 1 벡터 모델 및 제 4 벡터 모델의 비유사도 또는 제 1 벡터 모델 및 제 5 벡터 모델의 비유사도를 하기 수학식 6 내지 수학식 10에 기초하여 판단할 수 있다.
Figure 112021131516419-pat00007
Figure 112021131516419-pat00008
Figure 112021131516419-pat00009
Figure 112021131516419-pat00010
Figure 112021131516419-pat00011
상기 수학식 6에서,
Figure 112021131516419-pat00012
는 벡터
Figure 112021131516419-pat00013
내지
Figure 112021131516419-pat00014
를 원소로 갖는 집합이다. 벡터
Figure 112021131516419-pat00015
내지
Figure 112021131516419-pat00016
은 제 4 벡터 모델의 집합 또는 제 5 벡터 모델의 집합에 포함된 벡터 모델들 각각에 해당할 수 있다. 수학식 7에서,
Figure 112021131516419-pat00017
내지
Figure 112021131516419-pat00018
Figure 112021131516419-pat00019
에 포함된 비트값들에 해당할 수 있다. 수학식 7에서,
Figure 112021131516419-pat00020
는 제 1 벡터 모델 k에 포함된 비트값에 해당할 수 있다. n은 음식의 맛, 냄새 또는 식감과 관련한 복수의 항목들의 개수에 해당할 수 있다. 또한, m은 제 4 벡터 모델의 집합 또는 제 5 벡터 모델의 집합에 포함된 벡터 모델들의 개수에 해당할 수 있다. 상기 수학식 8은, 제 4 벡터 모델의 집합 또는 제 5 벡터 모델의 집합에 포함된 벡터 모델들 각각에 대하여 수학식 7의 연산을 적용하여 도출한 집합 S를 나타낸다. 상기 수학식 9는, 수학식 8의 집합의 모든 원소들을 합한 벡터
Figure 112021131516419-pat00021
을 나타낸다.
Figure 112021131516419-pat00022
은 제 4 벡터 모델의 집합 또는 제 5 벡터 모델의 집합에 포함된 벡터 모델들 및 제 1 벡터 모델 간의 비유사도를 나타낸다.
Figure 112021131516419-pat00023
은 제 1 벡터 모델에 포함된 복수의 항목들 각각에 대한 비트값과 제 4 벡터 모델 또는 제 5 벡터 모델에 포함된 복수의 항목들 각각에 대한 비트값의 비유사성이 클수록 큰 값의 원소들을 갖는 벡터에 해당될 수 있다. 즉, 비유사도를 나타내는 S는 S는 제 1 벡터 모델에 포함된 복수의 항목들 각각에 대한 비트값과 제 4 벡터 모델 또는 제 5 벡터 모델에 포함된 복수의 항목들 각각에 대한 비트값이 서로 다른 경우의 값들만을 더한 결과값에 해당할 수 있다.
또한, 음식 추천 서버(100)는 하기 수학식 11을 통해
Figure 112021131516419-pat00024
을 도출할 수 있다.
Figure 112021131516419-pat00025
상기 수학식 11에서 m은 제 4 벡터 모델의 집합 또는 제 5 벡터 모델의 집합에 포함된 벡터 모델들의 개수에 해당할 수 있다. 이 때,
Figure 112021131516419-pat00026
에 포함된 모든 원소들의 값은 0과 1 사이의 값에 해당할 수 있다.
Figure 112021131516419-pat00027
에 포함된 원소들의 값 각각에 대하여, 원소의 값이 기 설정된 값 이상인 경우에는 제 1 벡터 모델에서 해당 원소에 대응되는 비트값을 업데이트할 수 있다. 예를 들어,
Figure 112021131516419-pat00028
에 포함된 원소의 값이 기 설정된 값 이상인 경우에, 제 1 벡터 모델에서 해당 원소에 대응되는 비트값을 변경하여 제 1 벡터 모델을 업데이트할 수 있다. 즉, 제 1 벡터 모델의 비트값을 0에서 1로 또는 1에서 0으로 변경하여 제 1 벡터 모델을 업데이트할 수 있다.
도 5는 일 실시예에 따른 음식 추천 장치의 블록도이다.
도 5를 참고하면, 음식 추천 장치(500)는 통신부(510), 프로세서(520) 및 DB(530)를 포함할 수 있다. 도 5의 음식 추천 장치(500)에는 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 5에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 당해 기술분야의 통상의 기술자라면 이해할 수 있다.
통신부(510)는 음식 추천 장치(500)와 유선/무선 통신을 하게 하는 하나 이상의 구성 요소를 포함할 수 있다. 예를 들어, 통신부(510)는, 근거리 통신부(미도시), 이동 통신부(미도시) 및 방송 수신부(미도시) 중 적어도 하나를 포함할 수 있다.
DB(530)는 음식 추천 장치(500) 내에서 처리되는 각종 데이터들을 저장하는 하드웨어로서, 프로세서(520)의 처리 및 제어를 위한 프로그램을 저장할 수 있다.
DB(530)는 DRAM(dynamic random access memory), SRAM(static random access memory) 등과 같은 RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), CD-ROM, 블루레이 또는 다른 광학 디스크 스토리지, HDD(hard disk drive), SSD(solid state drive), 또는 플래시 메모리를 포함할 수 있다. 프로세서(520)는 음식 추천 장치(500)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(520)는 DB(530)에 저장된 프로그램들을 실행함으로써, 입력부(미도시), 디스플레이(미도시), 통신부(510), DB(530) 등을 전반적으로 제어할 수 있다. 프로세서(520)는, DB(530)에 저장된 프로그램들을 실행함으로써, 음식 추천 장치(500)의 동작을 제어할 수 있다.
프로세서(520)는 ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다.
본 개시의 다양한 실시예들은 기기(machine) 의해 읽을 수 있는 저장 매체(storage medium)에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램))로서 구현될 수 있다. 예를 들면, 기기의 프로세서는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시예에 따르면, 본 개시의 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
또한, 본 명세서에서, "부"는 프로세서 또는 회로와 같은 하드웨어 구성(hardware component), 및/또는 프로세서와 같은 하드웨어 구성에 의해 실행되는 소프트웨어 구성(software component)일 수 있다.
본 실시예의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 포함되는 것으로 해석되어야 한다.

Claims (6)

  1. 사용자의 기호에 맞는 음식을 추천하는 방법에 있어서,
    음식 추천 서버가 음식의 맛, 냄새 또는 식감과 관련하여 사용자의 기호를 나타내는 제 1 벡터 모델을 생성하는 단계;
    복수의 음식들 각각에 대하여 맛, 냄새 또는 식감과 관련된 복수의 제 2 벡터 모델들을 생성하는 단계;
    상기 제 1 벡터 모델 및 상기 제 2 벡터 모델들에 기초하여 상기 복수의 음식들 중 상기 사용자의 기호에 맞는 적어도 하나의 음식을 추천하는 단계; 및
    상기 추천한 적어도 하나의 음식에 대한 사용자의 피드백에 기초하여 상기 제 1 벡터 모델을 업데이트하는 단계;
    를 포함하고,
    상기 추천하는 단계는,
    상기 제 2 벡터 모델들 중 상기 제 1 벡터 모델과의 유사도가 기 설정된 값 이상인 벡터 모델에 해당하는 적어도 하나의 제 1 음식, 또는 상기 1 벡터 모델에 포함된 비트값들 중 적어도 하나를 변경하여 사용자의 기호와 일치하지 않는 제 3 벡터 모델을 생성하고 상기 제 2 벡터 모델들 중 상기 제 3 벡터 모델과의 유사도가 기 설정된 값 이상인 벡터 모델에 해당하는 적어도 하나의 제 2 음식을 도출하는 단계; 및
    상기 적어도 하나의 제 1 음식 또는 적어도 하나의 제 2 음식을 추천하는 단계;
    를 포함하고,
    상기 업데이트하는 단계는,
    상기 적어도 하나의 제 1 음식 중에서 상기 사용자가 불만족한 음식에 해당하는 제 4 벡터 모델 또는 상기 적어도 하나의 제 2 음식 중에서 상기 사용자가 만족한 음식에 해당하는 제 5 벡터 모델을 도출하는 단계; 및
    상기 제 4 벡터 모델 및 상기 제 1 벡터 모델과의 비유사도 또는 제 5 벡터 모델 및 상기 제 1 벡터 모델과의 비유사도가 기 설정된 값 이상인 경우, 상기 제 1 벡터 모델의 비트값들을 변경하여 상기 제 1 벡터 모델을 업데이트하는 단계;
    를 포함하고,
    상기 제 1 벡터 모델 및 상기 제 4 벡터 모델의 비유사도 또는 상기 제 1 벡터 모델 및 상기 제 5 벡터 모델의 비유사도는 수학식 1 내지 수학식 6에 기초하여 도출되고,
    상기 수학식 1은,
    Figure 112022029030888-pat00034
    이고,
    상기 수학식 2는,
    Figure 112022029030888-pat00035
    이고,
    상기 수학식 3은,
    Figure 112022029030888-pat00036
    이고,
    상기 수학식 4는,
    Figure 112022029030888-pat00037
    이고,
    상기 수학식 5는,
    Figure 112022029030888-pat00038
    이고,
    상기 수학식 6은,
    Figure 112022029030888-pat00039
    이고,
    상기 수학식 1에서, 벡터
    Figure 112022029030888-pat00040
    내지
    Figure 112022029030888-pat00041
    은 상기 제 4 벡터 모델의 집합 또는 상기 제 5 벡터 모델의 집합에 포함된 벡터 모델들 각각에 해당하고, m은 상기 제 4 벡터 모델의 집합 또는 상기 제 5 벡터 모델의 집합에 포함된 벡터 모델들의 개수에 해당하고, 수학식 2에서
    Figure 112022029030888-pat00042
    내지
    Figure 112022029030888-pat00043
    Figure 112022029030888-pat00044
    에 포함된 비트값들에 해당하고,
    Figure 112022029030888-pat00045
    내지
    Figure 112022029030888-pat00046
    은 상기 제 1 벡터 모델 k에 포함된 비트값들에 해당하고, n은 상기 음식의 맛, 냄새 또는 식감과 관련한 복수의 항목들의 개수에 해당하고,
    상기
    Figure 112022029030888-pat00047
    에 포함된 원소의 값이 기 설정된 값 이상인 경우에, 제 1 벡터 모델에서 해당 원소에 대응되는 비트값을 변경하여 제 1 벡터 모델을 업데이트하는, 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 사용자의 기호에 맞는 음식을 추천하는 장치에 있어서,
    적어도 하나의 프로그램이 저장된 메모리; 및
    상기 적어도 하나의 프로그램을 실행함으로써 연산을 수행하는 프로세서를 포함하고,
    상기 프로세서는,
    음식의 맛, 냄새 또는 식감과 관련하여 사용자의 기호를 나타내는 제 1 벡터 모델을 생성하고,
    복수의 음식들 각각에 대하여 맛, 냄새 또는 식감과 관련된 복수의 제 2 벡터 모델들을 생성하고,
    상기 제 1 벡터 모델 및 상기 제 2 벡터 모델들에 기초하여 상기 복수의 음식들 중 상기 사용자의 기호에 맞는 적어도 하나의 음식을 추천하고,
    상기 추천한 적어도 하나의 음식에 대한 사용자의 피드백에 기초하여 상기 제 1 벡터 모델을 업데이트하고,
    상기 프로세서는,
    상기 제 2 벡터 모델들 중 상기 제 1 벡터 모델과의 유사도가 기 설정된 값 이상인 벡터 모델에 해당하는 적어도 하나의 제 1 음식, 또는 상기 1 벡터 모델에 포함된 비트값들 중 적어도 하나를 변경하여 사용자의 기호와 일치하지 않는 제 3 벡터 모델을 생성하고 상기 제 2 벡터 모델들 중 상기 제 3 벡터 모델과의 유사도가 기 설정된 값 이상인 벡터 모델에 해당하는 적어도 하나의 제 2 음식을 도출하고,
    상기 적어도 하나의 제 1 음식 또는 적어도 하나의 제 2 음식을 추천하고,
    상기 프로세서는,
    상기 적어도 하나의 제 1 음식 중에서 상기 사용자가 불만족한 음식에 해당하는 제 4 벡터 모델 또는 상기 적어도 하나의 제 2 음식 중에서 상기 사용자가 만족한 음식에 해당하는 제 5 벡터 모델을 도출하고,
    상기 제 4 벡터 모델 및 상기 제 1 벡터 모델과의 비유사도 또는 제 5 벡터 모델 및 상기 제 1 벡터 모델과의 비유사도가 기 설정된 값 이상인 경우, 상기 제 1 벡터 모델의 비트값들을 변경하여 상기 제 1 벡터 모델을 업데이트하고,
    상기 제 1 벡터 모델 및 상기 제 4 벡터 모델의 비유사도 또는 상기 제 1 벡터 모델 및 상기 제 5 벡터 모델의 비유사도는 수학식 1 내지 수학식 6에 기초하여 도출되고,
    상기 수학식 1은,
    Figure 112022029030888-pat00048
    이고,
    상기 수학식 2는,
    Figure 112022029030888-pat00049
    이고,
    상기 수학식 3은,
    Figure 112022029030888-pat00050
    이고,
    상기 수학식 4는,
    Figure 112022029030888-pat00051
    이고,
    상기 수학식 5는,
    Figure 112022029030888-pat00052
    이고,
    상기 수학식 6은,
    Figure 112022029030888-pat00053
    이고,
    상기 수학식 1에서, 벡터
    Figure 112022029030888-pat00054
    내지
    Figure 112022029030888-pat00055
    은 상기 제 4 벡터 모델의 집합 또는 상기 제 5 벡터 모델의 집합에 포함된 벡터 모델들 각각에 해당하고, m은 상기 제 4 벡터 모델의 집합 또는 상기 제 5 벡터 모델의 집합에 포함된 벡터 모델들의 개수에 해당하고, 수학식 2에서
    Figure 112022029030888-pat00056
    내지
    Figure 112022029030888-pat00057
    Figure 112022029030888-pat00058
    에 포함된 비트값들에 해당하고,
    Figure 112022029030888-pat00059
    내지
    Figure 112022029030888-pat00060
    은 상기 제 1 벡터 모델 k에 포함된 비트값들에 해당하고, n은 상기 음식의 맛, 냄새 또는 식감과 관련한 복수의 항목들의 개수에 해당하고,
    상기 프로세서는,
    상기
    Figure 112022029030888-pat00061
    에 포함된 원소의 값이 기 설정된 값 이상인 경우에, 제 1 벡터 모델에서 해당 원소에 대응되는 비트값을 변경하여 제 1 벡터 모델을 업데이트하는, 장치.
KR1020210156796A 2021-11-15 2021-11-15 사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품 KR102415373B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210156796A KR102415373B1 (ko) 2021-11-15 2021-11-15 사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210156796A KR102415373B1 (ko) 2021-11-15 2021-11-15 사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품

Publications (1)

Publication Number Publication Date
KR102415373B1 true KR102415373B1 (ko) 2022-07-01

Family

ID=82397273

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210156796A KR102415373B1 (ko) 2021-11-15 2021-11-15 사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품

Country Status (1)

Country Link
KR (1) KR102415373B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102540268B1 (ko) * 2022-07-26 2023-06-07 주식회사 팜킷 트리를 이용하여 개인화 음식 추천을 위한 음식의 유사도를 측정하는 방법 및 장치
KR102565403B1 (ko) 2022-11-29 2023-08-10 주식회사 팜킷 온톨로지 및 머신러닝을 이용한 사용자 음식취향 분석기반 개인화 추천 방법 및 장치
KR102572228B1 (ko) * 2022-11-14 2023-08-31 이민석 음식 취향 관리 서버
KR102607701B1 (ko) * 2023-05-03 2023-11-30 주식회사 팜킷 사용자 음식 프로파일 구축을 위한 설문 리스트를 생성하는 방법 및 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010096930A (ko) * 2000-04-19 2001-11-08 정만원 개인화된 메뉴추천 방법 및 그 시스템
KR20190031001A (ko) * 2017-09-15 2019-03-25 조선대학교산학협력단 사용자 선호 음식점 추천 방법 및 컴퓨터 프로그램
JP2020119346A (ja) * 2019-01-25 2020-08-06 株式会社Aivick お勧め提示装置、お勧め提示システム、お勧め提示方法、お勧め提示プログラム
KR102227552B1 (ko) * 2020-06-08 2021-03-15 주식회사 그로우키친 상황인지 알고리즘 기반 리뷰 카테고리를 이용한 음식점 노출 개인화 서비스 제공 시스템
KR20210032759A (ko) * 2019-09-17 2021-03-25 손서영 개인 입맛의 주관성 분석을 이용한 음식 추천 시스템 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010096930A (ko) * 2000-04-19 2001-11-08 정만원 개인화된 메뉴추천 방법 및 그 시스템
KR20190031001A (ko) * 2017-09-15 2019-03-25 조선대학교산학협력단 사용자 선호 음식점 추천 방법 및 컴퓨터 프로그램
JP2020119346A (ja) * 2019-01-25 2020-08-06 株式会社Aivick お勧め提示装置、お勧め提示システム、お勧め提示方法、お勧め提示プログラム
KR20210032759A (ko) * 2019-09-17 2021-03-25 손서영 개인 입맛의 주관성 분석을 이용한 음식 추천 시스템 및 방법
KR102227552B1 (ko) * 2020-06-08 2021-03-15 주식회사 그로우키친 상황인지 알고리즘 기반 리뷰 카테고리를 이용한 음식점 노출 개인화 서비스 제공 시스템

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102540268B1 (ko) * 2022-07-26 2023-06-07 주식회사 팜킷 트리를 이용하여 개인화 음식 추천을 위한 음식의 유사도를 측정하는 방법 및 장치
KR102572228B1 (ko) * 2022-11-14 2023-08-31 이민석 음식 취향 관리 서버
KR102565403B1 (ko) 2022-11-29 2023-08-10 주식회사 팜킷 온톨로지 및 머신러닝을 이용한 사용자 음식취향 분석기반 개인화 추천 방법 및 장치
KR102607701B1 (ko) * 2023-05-03 2023-11-30 주식회사 팜킷 사용자 음식 프로파일 구축을 위한 설문 리스트를 생성하는 방법 및 장치

Similar Documents

Publication Publication Date Title
KR102415373B1 (ko) 사용자의 기호에 맞는 음식을 추천하는 방법, 장치 및 컴퓨터 프로그램 제품
US20190021144A1 (en) Method for voice control on microwave oven, and microwave oven
US11093537B2 (en) Information processing method, information processing apparatus, and non-transitory recording medium
US10984794B1 (en) Information processing system, information processing apparatus, information processing method, and recording medium
TWI493484B (zh) 自動化判斷消費者偏好程度的方法與電腦裝置
US11954536B2 (en) Data engine
KR102464240B1 (ko) 상품의 브랜드 정보를 제공하는 방법 및 이를 위한 전자 장치
US11144982B1 (en) System for recommending a meal kit based upon use-by dates and related methods
JP7435447B2 (ja) 情報処理システム、情報処理方法、および、記録媒体
KR20210086008A (ko) 컨텐츠 추천 모델을 개인화하는 방법 및 장치
JP6865705B2 (ja) 画像生成装置、画像生成方法および画像生成プログラム
US20230144241A1 (en) Electronic device and control method thereof
JP6482512B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP2020013461A (ja) 情報処理方法、情報処理装置及びプログラム
CN115146600A (zh) 表单的生成方法、装置、存储介质及计算机设备
KR102028820B1 (ko) 요리정보 제공 방법 및 장치, 이를 포함하는 요리정보 제공 시스템
TW202226111A (zh) 學習裝置、程式產品及學習方法
JP7003504B2 (ja) 情報処理装置及びプログラム
JP6480900B2 (ja) 生成装置、生成方法、及び生成プログラム
WO2023042286A1 (ja) 食品開発支援装置、食品開発支援方法、及び食品開発支援プログラム
WO2007052205A1 (en) Setting a device in a network
JP6995034B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
US11915691B2 (en) Electronic apparatus and controlling method thereof
JP7280923B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
KR102485807B1 (ko) 사용자를 위한 주방 용품 추천 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant