KR102615749B1 - Method, device and system for providing diet management service and mental health care service using it and automated processing of user customized diet management consulting information creation using artificial intelligence model - Google Patents

Method, device and system for providing diet management service and mental health care service using it and automated processing of user customized diet management consulting information creation using artificial intelligence model Download PDF

Info

Publication number
KR102615749B1
KR102615749B1 KR1020230095831A KR20230095831A KR102615749B1 KR 102615749 B1 KR102615749 B1 KR 102615749B1 KR 1020230095831 A KR1020230095831 A KR 1020230095831A KR 20230095831 A KR20230095831 A KR 20230095831A KR 102615749 B1 KR102615749 B1 KR 102615749B1
Authority
KR
South Korea
Prior art keywords
user
period
diet
artificial intelligence
intelligence model
Prior art date
Application number
KR1020230095831A
Other languages
Korean (ko)
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 KR1020230095831A priority Critical patent/KR102615749B1/en
Application granted granted Critical
Publication of KR102615749B1 publication Critical patent/KR102615749B1/en

Links

Classifications

    • 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
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/60ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to nutrition control, e.g. diets
    • 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
    • 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
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/70ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to mental therapies, e.g. psychological therapy or autogenous training
    • 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
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • Epidemiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Biomedical Technology (AREA)
  • Child & Adolescent Psychology (AREA)
  • Developmental Disabilities (AREA)
  • Hospice & Palliative Care (AREA)
  • Psychiatry (AREA)
  • Psychology (AREA)
  • Social Psychology (AREA)
  • Nutrition Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Pathology (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

일실시예에 따르면, 장치에 의해 수행되는, 인공지능 모델을 활용한 사용자 맞춤형 식단 관리 컨설팅 정보 생성의 자동화 처리 및 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스 제공 방법에 있어서, 제1 사용자의 신체 변화에 대한 모니터링 정보를 기초로, 미리 정해진 제1 기간 동안 상기 제1 사용자의 신체 변화를 분석하는 단계; 상기 제1 기간 동안 상기 제1 사용자의 신체 변화를 분석한 결과를 기반으로, 상기 제1 기간의 신체 변화량을 추정하는 단계; 상기 제1 기간의 신체 변화량 및 미리 설정된 상기 제1 사용자의 목표치를 기반으로, 상기 제1 기간의 목표 달성률을 산정하는 단계; 상기 제1 기간의 목표 달성률을 기초로, 상기 제1 사용자의 식단 난이도를 제1 등급으로 설정하는 단계; 상기 제1 기간 이후인 제2 기간이 제1 계절에 속하는 것으로 확인하고, 상기 제1 사용자가 선호하는 음식의 카테고리를 제1 카테고리로 확인하는 단계; 상기 제1 등급, 상기 제1 계절 및 상기 제1 카테고리를 매칭하여 제1 매칭 정보를 생성하는 단계; 상기 제1 매칭 정보를 인코딩 하여 제1 입력 신호를 생성하는 단계; 식단 난이도, 계절 및 선호 음식 카테고리의 분석으로 추천 식단을 선정하도록 학습된 제1 인공지능 모델에 상기 제1 입력 신호를 입력하는 단계; 상기 제1 입력 신호를 통해 상기 제1 사용자의 추천 식단이 선정되면, 상기 제1 인공지능 모델로부터 상기 제1 사용자의 추천 식단을 나타내는 제1 출력 신호를 획득하는 단계; 상기 제1 출력 신호를 기초로, 상기 제1 사용자의 추천 식단을 제1 식단으로 설정하는 단계; 상기 제2 기간 동안 상기 제1 사용자의 맞춤형 식단으로 상기 제1 식단을 추천하는 제1 컨설팅 정보를 생성하는 단계; 및 상기 제1 컨설팅 정보를 제1 사용자 단말로 전송하는 단계를 포함하는, 인공지능 모델을 활용한 사용자 맞춤형 식단 관리 컨설팅 정보 생성의 자동화 처리 및 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스 제공 방법이 제공된다.According to one embodiment, in the method of automatically processing the generation of customized diet management consulting information using an artificial intelligence model performed by a device and providing diet management services and mental health care services using the same, changes in the first user's body analyzing physical changes of the first user during a first predetermined period based on monitoring information; estimating the amount of physical change in the first period based on a result of analyzing the physical change of the first user during the first period; calculating a goal achievement rate in the first period based on the amount of physical change in the first period and a preset target value of the first user; setting the diet difficulty level of the first user to a first level based on the goal achievement rate of the first period; Confirming that the second period after the first period belongs to the first season, and confirming that the food category preferred by the first user is the first category; Generating first matching information by matching the first grade, the first season, and the first category; Generating a first input signal by encoding the first matching information; Inputting the first input signal to a first artificial intelligence model trained to select a recommended diet through analysis of diet difficulty, season, and preferred food category; When the recommended diet for the first user is selected through the first input signal, obtaining a first output signal representing the recommended diet for the first user from the first artificial intelligence model; Setting the recommended diet of the first user as a first diet based on the first output signal; generating first consulting information recommending the first diet as a customized diet for the first user during the second period; And providing a method for automatically processing the creation of user-tailored diet management consulting information using an artificial intelligence model and providing a diet management service and mental health care service using the same, including the step of transmitting the first consulting information to the first user terminal. do.

Description

인공지능 모델을 활용한 사용자 맞춤형 식단 관리 컨설팅 정보 생성의 자동화 처리 및 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스 제공 방법, 장치 및 시스템 {METHOD, DEVICE AND SYSTEM FOR PROVIDING DIET MANAGEMENT SERVICE AND MENTAL HEALTH CARE SERVICE USING IT AND AUTOMATED PROCESSING OF USER CUSTOMIZED DIET MANAGEMENT CONSULTING INFORMATION CREATION USING ARTIFICIAL INTELLIGENCE MODEL}Method, device, and system for automatically processing user-tailored diet management consulting information creation using an artificial intelligence model and providing diet management services and mental health care services using the same {METHOD, DEVICE AND SYSTEM FOR PROVIDING DIET MANAGEMENT SERVICE AND MENTAL HEALTH CARE SERVICE USING IT AND AUTOMATED PROCESSING OF USER CUSTOMIZED DIET MANAGEMENT CONSULTING INFORMATION CREATION USING ARTIFICIAL INTELLIGENCE MODEL}

아래 실시예들은 인공지능 모델을 활용하여 사용자 맞춤형 식단 관리 컨설팅 정보 생성을 자동화하여 처리하고 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스를 제공하기 위한 기술에 관한 것이다.The following embodiments relate to technology for automatically processing the creation of customized diet management consulting information using an artificial intelligence model and providing diet management services and mental health care services using this.

현대 사회가 점차 서구화 및 산업화됨에 따라 과체중이나 비만으로 고통받는 사람들이 점차 증가하고 있다. 이러한 과체중이나 비만은 개인에게 있어서도 성인병 등 각종 질환의 원인이 되는 심각한 문제지만, 사회적으로도 그에 따른 엄청난 사회적 비용을 발생시키므로 현대의 심각한 사회 문제 중 하나가 되고 있다.As modern society becomes increasingly westernized and industrialized, the number of people suffering from overweight or obesity is gradually increasing. Overweight or obesity is a serious problem for individuals that causes various diseases such as adult diseases, but it also causes enormous social costs to society, making it one of the serious social problems of modern times.

따라서, 이와 같은 과체중이나 비만을 해결하기 위해 다이어트가 현대인들에게는 필수라고 할 만큼 광범위하게 실시되고 있다. 또한, 최근에는 사람들의 아름다움에 대한 욕구가 증가됨에 따라 다이어트가 과체중이나 비만 해결 방법 뿐만 아니라 아름다운 몸매와 건강을 유지하기 위한 수단으로 각광받고 있다.Therefore, in order to solve overweight or obesity, dieting is widely practiced to the extent that it is considered essential for modern people. Additionally, recently, as people's desire for beauty has increased, diet has been in the spotlight not only as a solution to overweight or obesity, but also as a means to maintain a beautiful body and health.

이러한 다이어트를 위해서는 식단 관리가 필수적이지만, 사용자가 자신에게 맞는 식단 정보를 찾는데 어려움이 있다.Dietary management is essential for such diets, but it is difficult for users to find diet information that suits them.

따라서, 사용자에 따라 맞춤형 식단을 추천하여 식단을 관리하는 사용자에게 도움을 줄 수 있는 기술에 대한 연구개발이 요구되고 있다.Therefore, there is a need for research and development on technology that can help users manage their diet by recommending a customized diet according to the user.

추가적으로, 다이어트 중에는 멘탈이 붕괴되어 식이장애, 우울증, 자살 충동 등과 같은 멘탈 문제가 있을 확률이 증가하기 때문에, 멘탈 헬스 케어와 관련된 서비스의 요구가 증대되고 있으며, 이와 관련된 기술의 구현이 요구되고 있다.Additionally, because the probability of mental problems such as eating disorders, depression, and suicidal thoughts increases due to mental breakdown during dieting, the demand for services related to mental health care is increasing, and the implementation of related technologies is required.

한국공개특허 제10-2023-0109455호Korean Patent Publication No. 10-2023-0109455 한국등록특허 제10-2371787호Korean Patent No. 10-2371787 한국등록특허 제10-2459892호Korean Patent No. 10-2459892 한국등록특허 제10-2197102호Korean Patent No. 10-2197102

일실시예에 따르면, 인공지능 모델을 활용하여 사용자 맞춤형 식단 관리 컨설팅 정보 생성을 자동화하여 처리하고 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스를 제공하기 위한 것을 그 목적으로 한다.According to one embodiment, the purpose is to use an artificial intelligence model to automatically process the creation of customized diet management consulting information and provide diet management services and mental health care services using this.

본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.The object of the present invention is not limited to the object mentioned above, and other objects not mentioned can be clearly understood from the description below.

일실시예에 따르면, 장치에 의해 수행되는, 인공지능 모델을 활용한 사용자 맞춤형 식단 관리 컨설팅 정보 생성의 자동화 처리 및 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스 제공 방법에 있어서, 제1 사용자의 신체 변화에 대한 모니터링 정보를 기초로, 미리 정해진 제1 기간 동안 상기 제1 사용자의 신체 변화를 분석하는 단계; 상기 제1 기간 동안 상기 제1 사용자의 신체 변화를 분석한 결과를 기반으로, 상기 제1 기간의 신체 변화량을 추정하는 단계; 상기 제1 기간의 신체 변화량 및 미리 설정된 상기 제1 사용자의 목표치를 기반으로, 상기 제1 기간의 목표 달성률을 산정하는 단계; 상기 제1 기간의 목표 달성률을 기초로, 상기 제1 사용자의 식단 난이도를 제1 등급으로 설정하는 단계; 상기 제1 기간 이후인 제2 기간이 제1 계절에 속하는 것으로 확인하고, 상기 제1 사용자가 선호하는 음식의 카테고리를 제1 카테고리로 확인하는 단계; 상기 제1 등급, 상기 제1 계절 및 상기 제1 카테고리를 매칭하여 제1 매칭 정보를 생성하는 단계; 상기 제1 매칭 정보를 인코딩 하여 제1 입력 신호를 생성하는 단계; 식단 난이도, 계절 및 선호 음식 카테고리의 분석으로 추천 식단을 선정하도록 학습된 제1 인공지능 모델에 상기 제1 입력 신호를 입력하는 단계; 상기 제1 입력 신호를 통해 상기 제1 사용자의 추천 식단이 선정되면, 상기 제1 인공지능 모델로부터 상기 제1 사용자의 추천 식단을 나타내는 제1 출력 신호를 획득하는 단계; 상기 제1 출력 신호를 기초로, 상기 제1 사용자의 추천 식단을 제1 식단으로 설정하는 단계; 상기 제2 기간 동안 상기 제1 사용자의 맞춤형 식단으로 상기 제1 식단을 추천하는 제1 컨설팅 정보를 생성하는 단계; 및 상기 제1 컨설팅 정보를 제1 사용자 단말로 전송하는 단계를 포함하는, 인공지능 모델을 활용한 사용자 맞춤형 식단 관리 컨설팅 정보 생성의 자동화 처리 및 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스 제공 방법이 제공된다.According to one embodiment, in the method of automatically processing the generation of customized diet management consulting information using an artificial intelligence model performed by a device and providing diet management services and mental health care services using the same, changes in the first user's body analyzing physical changes of the first user during a first predetermined period based on monitoring information; estimating the amount of physical change in the first period based on a result of analyzing the physical change of the first user during the first period; calculating a goal achievement rate in the first period based on the amount of physical change in the first period and a preset target value of the first user; setting the diet difficulty level of the first user to a first level based on the goal achievement rate of the first period; Confirming that the second period after the first period belongs to the first season, and confirming that the food category preferred by the first user is the first category; Generating first matching information by matching the first grade, the first season, and the first category; Generating a first input signal by encoding the first matching information; Inputting the first input signal to a first artificial intelligence model trained to select a recommended diet through analysis of diet difficulty, season, and preferred food category; When the recommended diet for the first user is selected through the first input signal, obtaining a first output signal representing the recommended diet for the first user from the first artificial intelligence model; Setting the recommended diet of the first user as a first diet based on the first output signal; generating first consulting information recommending the first diet as a customized diet for the first user during the second period; And providing a method for automatically processing the creation of user-tailored diet management consulting information using an artificial intelligence model and providing a diet management service and mental health care service using the same, including the step of transmitting the first consulting information to the first user terminal. do.

상기 인공지능 모델을 활용한 사용자 맞춤형 식단 관리 컨설팅 정보 생성의 자동화 처리 및 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스 제공 방법은, 상기 제1 컨설팅 정보를 제1 사용자 단말로 전송하는 단계 이후, 상기 제1 사용자의 신체 변화에 대한 모니터링 정보를 기초로, 상기 제2 기간 동안 상기 제1 사용자의 신체 변화를 분석하는 단계; 상기 제2 기간 동안 상기 제1 사용자의 신체 변화를 분석한 결과를 기반으로, 상기 제2 기간의 신체 변화량을 추정하는 단계; 상기 제2 기간의 신체 변화량과 상기 제1 사용자의 목표치를 기반으로, 상기 제2 기간의 목표 달성률을 산정하는 단계; 상기 제2 기간의 목표 달성률이 상기 제1 기간의 목표 달성률 보다 높은 것으로 확인되면, 상기 제1 사용자의 목표치까지 남아있는 잔여 수치를 확인하는 단계; 상기 잔여 수치가 미리 설정된 기준치 보다 큰 것으로 확인되면, 상기 제1 사용자의 식단 난이도를 상기 제1 등급으로 유지하는 단계; 상기 잔여 수치가 상기 기준치 보다 작은 것으로 확인되면, 상기 제1 사용자의 식단 난이도를 상기 제1 등급 보다 쉬운 레벨인 제2 등급으로 변경하는 단계; 상기 제2 기간의 목표 달성률이 상기 제1 기간의 목표 달성률 보다 낮은 것으로 확인되면, 상기 제1 사용자의 식단 난이도를 상기 제1 등급 보다 어려운 레벨인 제3 등급으로 변경하는 단계; 상기 제2 기간 이후인 제3 기간이 제2 계절에 속하는 것으로 확인하는 단계; 상기 제1 사용자의 식단 난이도가 상기 제1 등급으로 유지된 경우, 상기 제1 등급, 상기 제2 계절 및 상기 제1 카테고리를 매칭하여 제2 매칭 정보를 생성하고, 상기 제1 사용자의 식단 난이도가 상기 제2 등급으로 변경된 경우, 상기 제2 등급, 상기 제2 계절 및 상기 제1 카테고리를 매칭하여 제2 매칭 정보를 생성하고, 상기 제1 사용자의 식단 난이도가 제3 등급으로 변경된 경우, 상기 제3 등급, 상기 제2 계절 및 상기 제1 카테고리를 매칭하여 제2 매칭 정보를 생성하는 단계; 상기 제2 매칭 정보를 인코딩 하여 제2 입력 신호를 생성하는 단계; 상기 제1 인공지능 모델에 상기 제2 입력 신호를 입력하는 단계; 상기 제2 입력 신호를 통해 상기 제1 사용자의 추천 식단이 선정되면, 상기 제1 인공지능 모델로부터 상기 제1 사용자의 추천 식단을 나타내는 제2 출력 신호를 획득하는 단계; 상기 제2 출력 신호를 기초로, 상기 제1 사용자의 추천 식단을 제2 식단으로 설정하는 단계; 상기 제3 기간 동안 상기 제1 사용자의 맞춤형 식단으로 상기 제2 식단을 추천하는 제2 컨설팅 정보를 생성하는 단계; 및 상기 제2 컨설팅 정보를 상기 제1 사용자 단말로 전송하는 단계를 더 포함할 수 있다.The method of automatically processing the generation of user-tailored diet management consulting information using the artificial intelligence model and providing diet management services and mental health care services using the same includes, after the step of transmitting the first consulting information to the first user terminal, the first Analyzing a change in the body of the first user during the second period based on monitoring information about the change in the body of the first user; estimating the amount of physical change in the second period based on a result of analyzing the physical change of the first user during the second period; calculating a goal achievement rate in the second period based on the amount of physical change in the second period and the target value of the first user; If it is confirmed that the goal achievement rate of the second period is higher than the goal achievement rate of the first period, checking the remaining value remaining up to the target value of the first user; If the remaining value is confirmed to be greater than a preset standard value, maintaining the diet difficulty level of the first user at the first level; If the remaining value is confirmed to be less than the reference value, changing the difficulty level of the first user's diet to a second level that is easier than the first level; If it is confirmed that the goal achievement rate of the second period is lower than the goal achievement rate of the first period, changing the diet difficulty level of the first user to a third level that is more difficult than the first level; confirming that a third period after the second period belongs to a second season; When the first user's diet difficulty level is maintained at the first level, second matching information is generated by matching the first grade, the second season, and the first category, and the first user's diet difficulty level is When changed to the second grade, second matching information is generated by matching the second grade, the second season, and the first category, and when the diet difficulty of the first user is changed to the third grade, the first user's diet difficulty level is changed to the third grade. Generating second matching information by matching 3 grades, the second season, and the first category; Generating a second input signal by encoding the second matching information; Inputting the second input signal to the first artificial intelligence model; When the recommended diet for the first user is selected through the second input signal, obtaining a second output signal representing the recommended diet for the first user from the first artificial intelligence model; setting the recommended diet of the first user as a second diet based on the second output signal; generating second consulting information recommending the second diet as a customized diet for the first user during the third period; And it may further include transmitting the second consulting information to the first user terminal.

상기 인공지능 모델을 활용한 사용자 맞춤형 식단 관리 컨설팅 정보 생성의 자동화 처리 및 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스 제공 방법은, 상기 제2 기간의 목표 달성률이 상기 제1 기간의 목표 달성률 보다 낮은 것으로 확인된 경우, 상기 제1 사용자의 멘탈 헬스 점검이 필요한 것으로 판단하는 단계; 상기 제1 사용자의 게시물 업로드 내역, 상기 제1 사용자의 위치 이동 내역, 상기 제1 사용자의 음악 청취 내역, 상기 제1 사용자의 영상 시청 내역 및 상기 제1 사용자의 게시글 조회 내역 중 적어도 하나를 포함하는 상기 제1 사용자의 활동 자료를 수집하는 단계; 상기 제1 사용자의 활동 자료에서 상기 제2 기간 동안 수행한 활동 내역을 제1 활동 자료로 추출하는 단계; 상기 제1 활동 자료를 기반으로, 상기 제2 기간 동안의 활동 상태를 나타내는 활동 키워드를 분석하는 단계; 상기 활동 키워드에 기초하여, 미리 설정된 분류 기준에 따라 상기 제1 사용자의 멘탈 헬스에 문제가 있는지 여부를 진단하는 단계; 및 상기 제1 사용자의 멘탈 헬스에 제1 유형의 문제가 있는 것으로 진단되면, 상기 제1 유형의 문제에 대한 상담을 권유하는 알림 메시지를 상기 제1 사용자 단말로 전송하는 단계를 더 포함할 수 있다.The method of automatically processing the creation of customized diet management consulting information using the artificial intelligence model and providing diet management services and mental health care services using the same is such that the goal achievement rate in the second period is lower than the goal achievement rate in the first period. If confirmed, determining that a mental health check of the first user is necessary; Containing at least one of the first user's posting upload history, the first user's location movement history, the first user's music listening history, the first user's video viewing history, and the first user's post viewing history collecting activity data of the first user; extracting activity details performed during the second period from the activity data of the first user as first activity data; Analyzing activity keywords indicating an activity state during the second period based on the first activity data; Based on the activity keyword, diagnosing whether there is a problem with the first user's mental health according to a preset classification standard; And when it is diagnosed that the first user has a first type of mental health problem, it may further include transmitting a notification message recommending consultation for the first type of problem to the first user terminal. .

일실시예에 따르면, 인공지능 모델을 활용하여 사용자의 맞춤형 식단을 추천하는 컨설팅 정보를 제공함으로써, 식단을 관리하는 사용자에게 도움을 줄 수 있는 효과가 있다.According to one embodiment, there is an effect of helping users manage their diet by providing consulting information that recommends a user's customized diet using an artificial intelligence model.

또한, 일실시예에 따르면, 멘탈 헬스 케어 서비스를 제공함으로써, 식단 관리중인 사용자의 멘탈 상태를 관리하는데 도움을 줄 수 있는 효과가 있다.Additionally, according to one embodiment, by providing a mental health care service, there is an effect of helping to manage the mental state of a user who is managing a diet.

한편, 실시예들에 따른 효과들은 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 해당 기술 분야의 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.Meanwhile, the effects according to the embodiments are not limited to those mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the description below.

도 1은 일실시예에 따른 시스템의 구성을 개략적으로 나타낸 도면이다.
도 2는 일실시예에 따른 인공지능 모델을 활용하여 식단 관리 서비스를 제공하는 과정을 설명하기 위한 순서도이다.
도 3 내지 도 4는 일실시예에 따른 컨설팅 결과를 추적하여 사용자의 추천 식단을 조정한 컨설팅 정보를 제공하는 과정을 설명하기 위한 순서도이다.
도 5는 일실시예에 따른 멘탈 헬스 케어 서비스를 제공하는 과정을 설명하기 위한 순서도이다.
도 6은 일실시예에 따른 사용자의 신체 변화를 분석하는 과정을 설명하기 위한 순서도이다.
도 7은 일실시예에 따른 섭취 칼로리를 추정하여 총 칼로리 섭취량에 추가하는 과정을 설명하기 위한 순서도이다.
도 8은 일실시예에 따른 실제 먹은 양을 확인하여 사용자의 섭취 칼로리를 추정하는 과정을 설명하기 위한 순서도이다.
도 9는 일실시예에 따른 장치의 구성의 예시도이다.
1 is a diagram schematically showing the configuration of a system according to an embodiment.
Figure 2 is a flow chart to explain the process of providing a diet management service using an artificial intelligence model according to an embodiment.
Figures 3 and 4 are flowcharts illustrating a process for providing consulting information that adjusts a user's recommended diet by tracking consulting results according to an embodiment.
Figure 5 is a flowchart for explaining the process of providing mental health care services according to an embodiment.
Figure 6 is a flowchart for explaining the process of analyzing changes in the user's body according to one embodiment.
Figure 7 is a flowchart for explaining the process of estimating calorie intake and adding it to total calorie intake according to one embodiment.
Figure 8 is a flow chart for explaining the process of estimating the user's calorie intake by confirming the actual amount eaten according to one embodiment.
Figure 9 is an exemplary diagram of the configuration of a device according to an embodiment.

이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, embodiments will be described in detail with reference to the attached drawings. However, various changes can be made to the embodiments, so the scope of the patent application is not limited or limited by these embodiments. It should be understood that all changes, equivalents, or substitutes for the embodiments are included in the scope of rights.

실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Specific structural or functional descriptions of the embodiments are disclosed for illustrative purposes only and may be modified and implemented in various forms. Accordingly, the embodiments are not limited to the specific disclosed form, and the scope of the present specification includes changes, equivalents, or substitutes included in the technical spirit.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various components, but these terms should be interpreted only for the purpose of distinguishing one component from another component. For example, a first component may be named a second component, and similarly, the second component may also be named a first component.

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

실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are for descriptive purposes only and should not be construed as limiting. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, 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 generally understood by a person of ordinary skill in the technical field to which the embodiments belong. 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.

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, when describing with reference to the accompanying drawings, identical components will be assigned the same reference numerals regardless of the reference numerals, and overlapping descriptions thereof will be omitted. In describing the embodiments, if it is determined that detailed descriptions of related known technologies may unnecessarily obscure the gist of the embodiments, the detailed descriptions are omitted.

실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다.Embodiments may be implemented in various types of products such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent vehicles, kiosks, and wearable devices.

실시예에서 인공지능(Artificial Intelligence, AI) 시스템은 인간 수준의 지능을 구현하는 컴퓨터 시스템이며, 기존 규칙(Rule) 기반의 스마트 시스템과 달리 기계가 스스로 학습하고 판단하는 시스템이다. 인공지능 시스템은 사용할수록 인식률이 향상되고 판매자 취향을 보다 정확하게 이해할 수 있게 되어, 기존 규칙 기반의 스마트 시스템은 점차 심층 학습(Deep Learning) 기반 인공지능 시스템으로 대체되고 있다.In an embodiment, an artificial intelligence (AI) system is a computer system that implements human-level intelligence, and unlike existing rule-based smart systems, it is a system in which machines learn and make decisions on their own. As artificial intelligence systems are used, recognition rates improve and sellers' tastes can be more accurately understood, and existing rule-based smart systems are gradually being replaced by deep learning-based artificial intelligence systems.

인공지능 기술은 기계 학습 및 기계 학습을 활용한 요소기술들로 구성된다. 기계 학습은 입력 데이터들의 특징을 스스로 분류/학습하는 알고리즘 기술이며, 요소기술은 심층 학습 등의 기계 학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술로서, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야로 구성된다.Artificial intelligence technology consists of machine learning and element technologies using machine learning. Machine learning is an algorithmic technology that classifies/learns the characteristics of input data on its own, and elemental technology is a technology that mimics the functions of the human brain such as cognition and judgment by utilizing machine learning algorithms such as deep learning, including linguistic understanding and visual It consists of technical areas such as understanding, reasoning/prediction, knowledge expression, and motion control.

인공지능 기술이 응용되는 다양한 분야는 다음과 같다. 언어적 이해는 인간의 언어/문자를 인식하고 응용/처리하는 기술로서, 자연어 처리, 기계 번역, 대화시스템, 질의 응답, 음성 인식/합성 등을 포함한다. 시각적 이해는 사물을 인간의 시각처럼 인식하여 처리하는 기술로서, 객체 인식, 객체 추적, 영상 검색, 사람 인식, 장면 이해, 공간 이해, 영상 개선 등을 포함한다. 추론 예측은 정보를 판단하여 논리적으로 추론하고 예측하는 기술로서, 지식/확률 기반 추론, 최적화 예측, 선호 기반 계획, 추천 등을 포함한다. 지식 표현은 인간의 경험정보를 지식데이터로 자동화 처리하는 기술로서, 지식 구축(데이터 생성/분류), 지식 관리(데이터 활용) 등을 포함한다. 동작 제어는 차량의 자율 주행, 로봇의 움직임을 제어하는 기술로서, 움직임 제어(항법, 충돌, 주행), 조작 제어(행동 제어) 등을 포함한다.The various fields where artificial intelligence technology is applied are as follows. Linguistic understanding is a technology that recognizes and applies/processes human language/characters and includes natural language processing, machine translation, conversation systems, question and answer, and voice recognition/synthesis. Visual understanding is a technology that recognizes and processes objects like human vision, and includes object recognition, object tracking, image search, person recognition, scene understanding, spatial understanding, and image improvement. Inferential prediction is a technology that judges information to make logical inferences and predictions, and includes knowledge/probability-based reasoning, optimization prediction, preference-based planning, and recommendations. Knowledge expression is a technology that automatically processes human experience information into knowledge data, and includes knowledge construction (data creation/classification) and knowledge management (data utilization). Motion control is a technology that controls the autonomous driving of vehicles and the movement of robots, and includes motion control (navigation, collision, driving), operation control (behavior control), etc.

일반적으로 기계 학습 알고리즘을 실생활에 적용하기 위해서는 기계 학습의 기본 방법론의 특성상 Trial and Error 방식으로 학습을 수행하게 된다. 특히, 심층 학습의 경우 수십만 번의 반복 실행을 필요로 한다. 이를 실제 물리적인 외부 환경에서 실행하기는 불가능하여 대신 실제 물리적인 외부 환경을 컴퓨터상에서 가상으로 구현하여 시뮬레이션을 통해 학습을 수행한다.Generally, in order to apply machine learning algorithms to real life, learning is performed using a trial and error method due to the nature of the basic methodology of machine learning. In particular, deep learning requires hundreds of thousands of iterations. It is impossible to execute this in an actual physical external environment, so instead, the actual physical external environment is virtually implemented on a computer and learning is performed through simulation.

도 1은 일실시예에 따른 시스템의 구성을 개략적으로 나타낸 도면이다.1 is a diagram schematically showing the configuration of a system according to an embodiment.

도 1을 참조하면, 일실시예에 따른 시스템은 통신망을 통해 서로 통신 가능한 복수의 사용자 단말(100) 및 장치(200)를 포함할 수 있다.Referring to FIG. 1, a system according to an embodiment may include a plurality of user terminals 100 and devices 200 that can communicate with each other through a communication network.

먼저, 통신망은 유선 및 무선 등과 같이 그 통신 양태를 가리지 않고 구성될 수 있으며, 서버와 서버 간의 통신과 서버와 단말 간의 통신이 수행되도록 다양한 형태로 구현될 수 있다.First, a communication network can be configured regardless of the communication mode, such as wired or wireless, and can be implemented in various forms to enable communication between servers and between servers and terminals.

복수의 사용자 단말(100) 각각은 통신 기능을 갖춘 연산 장치로 구현될 수 있으며, 예를 들면, 휴대전화기, 데스크톱 PC, 랩탑 PC, 태블릿 PC, 스마트폰 등으로 구현될 수 있으나, 이에 제한되지는 않으며, 외부 서버와 연결될 수 있는 다양한 형태의 통신 장치로 구현될 수도 있다.Each of the plurality of user terminals 100 may be implemented as a computing device with a communication function, and may be implemented as, for example, a mobile phone, a desktop PC, a laptop PC, a tablet PC, a smartphone, etc., but is not limited thereto. It can also be implemented as various types of communication devices that can be connected to external servers.

복수의 사용자 단말(100)은 사용자 맞춤형의 식단 관리 서비스를 제공받고자 하는 사용자들이 사용하는 단말로, 제1 사용자가 사용하는 제1 사용자 단말(110), 제2 사용자가 사용하는 제2 사용자 단말(120) 등을 포함할 수 있다.The plurality of user terminals 100 are terminals used by users who wish to receive customized diet management services, including a first user terminal 110 used by the first user, and a second user terminal used by the second user ( 120), etc. may be included.

복수의 사용자 단말(100) 각각은 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 복수의 사용자 단말(100)은 장치(200)와 유무선으로 통신하도록 구성될 수 있다.Each of the plurality of user terminals 100 may be configured to perform all or part of the calculation function, storage/reference function, input/output function, and control function of a typical computer. A plurality of user terminals 100 may be configured to communicate with the device 200 in a wired or wireless manner.

복수의 사용자 단말(100) 각각은 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 운영하는 웹 페이지에 접속되거나, 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 개발·배포한 애플리케이션이 설치될 수 있다. 복수의 사용자 단말(100) 각각은 웹 페이지 또는 애플리케이션을 통해 장치(200)와 연동될 수 있다.Each of the plurality of user terminals 100 is connected to a web page operated by a person or organization providing services using the device 200, or is developed and distributed by a person or organization providing services using the device 200. An application can be installed. Each of the plurality of user terminals 100 may be linked to the device 200 through a web page or application.

복수의 사용자 단말(100) 각각은 장치(200)에서 제공하는 웹 페이지, 애플리케이션을 등을 통해 장치(200)에 접속할 수 있다.Each of the plurality of user terminals 100 may access the device 200 through a web page or application provided by the device 200.

이하에서는 설명의 편의상, 제1 사용자 단말(110)의 동작을 위주로 설명하지만, 제2 사용자 단말(120) 등의 다른 사용자 단말에서 제1 사용자 단말(110)의 동작을 대신 수행할 수 있는 것은 물론이다.Hereinafter, for convenience of explanation, the operation of the first user terminal 110 will be mainly described, but of course, other user terminals such as the second user terminal 120 can perform the operation of the first user terminal 110 instead. am.

장치(200)는 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 보유한 자체 서버일수도 있고, 클라우드 서버일 수도 있고, 분산된 노드(node)들의 p2p(peer-to-peer) 집합일 수도 있다. 장치(200)는 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 장치(200)는 추론 기능을 수행하는 적어도 하나 이상의 인공지능 모델을 구비할 수 있다.The device 200 may be its own server owned by a person or organization that provides services using the device 200, a cloud server, or a p2p (peer-to-peer) set of distributed nodes. It may be possible. The device 200 may be configured to perform all or part of the calculation function, storage/reference function, input/output function, and control function of a typical computer. The device 200 may be equipped with at least one artificial intelligence model that performs an inference function.

장치(200)는 복수의 사용자 단말(100)과 유무선으로 통신하도록 구성될 수 있으며, 복수의 사용자 단말(100) 각각의 동작을 제어하고, 복수의 사용자 단말(100) 각각의 화면에 어느 정보를 표시할 것인지에 대해 제어할 수 있다.The device 200 may be configured to communicate wired or wirelessly with a plurality of user terminals 100, control the operation of each of the plurality of user terminals 100, and display certain information on the screen of each of the plurality of user terminals 100. You can control whether to display it or not.

장치(200)는 사용자 맞춤형으로 식단 관리를 위한 컨설팅 정보의 생성을 자동화 처리하고, 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스를 제공하는 서버로 구현되어, 식단 관리 서비스 및 멘탈 헬스 케어 서비스를 위한 플랫폼을 제공할 수 있다.The device 200 is implemented as a server that automatically processes the creation of consulting information for diet management customized to the user and provides diet management services and mental health care services using this, forming a platform for diet management services and mental health care services. can be provided.

한편, 설명의 편의를 위해 도 1에서는 복수의 사용자 단말(100) 중 제1 사용자 단말(110) 및 제2 사용자 단말(120)만을 도시하였으나, 단말들의 수는 실시예에 따라 얼마든지 달라질 수 있다. 장치(200)의 처리 용량이 허용하는 한, 단말들의 수는 특별한 제한이 없다.Meanwhile, for convenience of explanation, only the first user terminal 110 and the second user terminal 120 are shown in FIG. 1 among the plurality of user terminals 100, but the number of terminals may vary depending on the embodiment. . As long as the processing capacity of the device 200 allows, the number of terminals is not particularly limited.

일실시예에 따르면, 장치(200)는 인공지능을 활용하여 사용자의 추천 식단을 선정하고, 이를 통해, 사용자 맞춤형의 식단을 추천하는 컨설팅 정보를 제공할 수 있다. 이와 관련된 자세한 설명은 도 2를 참조하여 후술하기로 한다.According to one embodiment, the device 200 may utilize artificial intelligence to select a recommended diet for the user and, through this, provide consulting information recommending a customized diet for the user. A detailed description regarding this will be provided later with reference to FIG. 2 .

또한, 장치(200)는 컨설팅 정보의 제공 이후, 컨설팅 결과를 추적하여 사용자의 추천 식단을 선정하고, 이를 통해, 사용자의 추천 식단을 조정한 컨설팅 정보를 제공할 수 있다. 이와 관련된 자세한 설명은 도 3 내지 도 4를 참조하여 후술하기로 한다.Additionally, after providing consulting information, the device 200 tracks the consulting results to select a recommended diet for the user and, through this, provides consulting information adjusting the user's recommended diet. A detailed description related to this will be described later with reference to FIGS. 3 and 4.

또한, 장치(200)는 식단 중인 사용자들의 멘탈 관리를 위해, 사용자의 멘탈 헬스에 문제가 있는지 여부를 진단하고, 이를 통해, 사용자에게 멘탈 헬스 케어 서비스를 제공할 수 있다. 이와 관련된 자세한 설명은 도 5를 참조하여 후술하기로 한다.Additionally, in order to manage the mental health of users who are on a diet, the device 200 can diagnose whether there is a problem with the user's mental health and, through this, provide mental health care services to the user. A detailed description regarding this will be provided later with reference to FIG. 5 .

본 발명에서, 인공지능(Artificial Intelligence, AI)은 인간의 학습능력, 추론능력, 지각능력 등을 모방하고, 이를 컴퓨터로 구현하는 기술을 의미하고, 기계 학습, 심볼릭 로직(Symbolic Logic) 등의 개념을 포함할 수 있다. 기계 학습(Machine Learning, ML)은 입력 데이터들의 특징을 스스로 분류 또는 학습하는 알고리즘 기술이다. 인공지능의 기술은 기계 학습의 알고리즘으로써 입력 데이터를 분석하고, 그 분석의 결과를 학습하며, 그 학습의 결과에 기초하여 판단이나 예측을 할 수 있다. 또한, 기계 학습의 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술들 역시 인공지능의 범주로 이해될 수 있다. 예를 들어, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야가 포함될 수 있다.In the present invention, artificial intelligence (AI) refers to technology that imitates human learning ability, reasoning ability, perception ability, etc. and implements this with a computer, and includes concepts such as machine learning and symbolic logic. may include. Machine Learning (ML) is an algorithmic technology that classifies or learns the characteristics of input data on its own. Artificial intelligence technology is a machine learning algorithm that analyzes input data, learns the results of the analysis, and makes judgments or predictions based on the results of the learning. Additionally, technologies that mimic the functions of the human brain, such as cognition and judgment, using machine learning algorithms can also be understood as the category of artificial intelligence. For example, technical fields such as verbal understanding, visual understanding, reasoning/prediction, knowledge representation, and motion control may be included.

기계 학습은 데이터를 처리한 경험을 이용해 신경망 모델을 훈련시키는 처리를 의미할 수 있다. 기계 학습을 통해 컴퓨터 소프트웨어는 스스로 데이터 처리 능력을 향상시키는 것을 의미할 수 있다. 신경망 모델은 데이터 사이의 상관 관계를 모델링하여 구축된 것으로서, 그 상관 관계는 복수의 파라미터에 의해 표현될 수 있다. 신경망 모델은 주어진 데이터로부터 특징들을 추출하고 분석하여 데이터 간의 상관 관계를 도출하는데, 이러한 과정을 반복하여 신경망 모델의 파라미터를 최적화해 나가는 것이 기계 학습이라고 할 수 있다. 예를 들어, 신경망 모델은 입출력 쌍으로 주어지는 데이터에 대하여, 입력과 출력 사이의 매핑(상관 관계)을 학습할 수 있다. 또는, 신경망 모델은 입력 데이터만 주어지는 경우에도 주어진 데이터 사이의 규칙성을 도출하여 그 관계를 학습할 수도 있다.Machine learning can refer to the process of training a neural network model using experience processing data. Machine learning can mean that computer software improves its own data processing capabilities. A neural network model is built by modeling the correlation between data, and the correlation can be expressed by a plurality of parameters. A neural network model extracts and analyzes features from given data to derive correlations between data. Repeating this process to optimize the parameters of the neural network model can be called machine learning. For example, a neural network model can learn the mapping (correlation) between input and output for data given as input-output pairs. Alternatively, a neural network model may learn the relationships by deriving regularities between given data even when only input data is given.

인공지능 학습모델 또는 신경망 모델은 인간의 뇌 구조를 컴퓨터 상에서 구현하도록 설계될 수 있으며, 인간의 신경망의 뉴런(neuron)을 모의하며 가중치를 가지는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 노드들은 뉴런이 시냅스(synapse)를 통하여 신호를 주고받는 뉴런의 시냅틱(synaptic) 활동을 모의하여, 서로 간의 연결 관계를 가질 수 있다. 인공지능 학습모델에서 복수의 네트워크 노드들은 서로 다른 깊이의 레이어에 위치하면서 컨볼루션(convolution) 연결 관계에 따라 데이터를 주고받을 수 있다. 인공지능 학습모델은, 예를 들어, 인공 신경망 모델(Artificial Neural Network), 컨볼루션 신경망 모델(Convolution Neural Network: CNN) 등일 수 있다. 일 실시예로서, 인공지능 학습모델은, 지도학습(Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning) 등의 방식에 따라 기계 학습될 수 있다. 기계 학습을 수행하기 위한 기계 학습 알고리즘에는, 의사결정트리(Decision Tree), 베이지안 망(Bayesian Network), 서포트 벡터 머신(Support Vector Machine), 인공 신경망(Artificial Neural Network), 에이다부스트(Ada-boost), 퍼셉트론(Perceptron), 유전자 프로그래밍(Genetic Programming), 군집화(Clustering) 등이 사용될 수 있다.An artificial intelligence learning model or neural network model may be designed to implement the human brain structure on a computer, and may include a plurality of network nodes with weights that simulate neurons of a human neural network. A plurality of network nodes may have a connection relationship with each other by simulating the synaptic activity of neurons in which neurons exchange signals through synapses. In an artificial intelligence learning model, multiple network nodes are located in layers of different depths and can exchange data according to convolutional connection relationships. The artificial intelligence learning model may be, for example, an artificial neural network model (Artificial Neural Network), a convolution neural network (CNN) model, etc. As an example, an artificial intelligence learning model may be machine-learned according to methods such as supervised learning, unsupervised learning, and reinforcement learning. Machine learning algorithms for performing machine learning include Decision Tree, Bayesian Network, Support Vector Machine, Artificial Neural Network, and Ada-boost. , Perceptron, Genetic Programming, Clustering, etc. can be used.

이중, CNN은 최소한의 전처리(preprocess)를 사용하도록 설계된 다계층 퍼셉트론(multilayer perceptrons)의 한 종류이다. CNN은 하나 또는 여러 개의 합성곱 계층과 그 위에 올려진 일반적인 인공 신경망 계층들로 이루어져 있으며, 가중치와 통합 계층(pooling layer)들을 추가로 활용한다. 이러한 구조 덕분에 CNN은 2차원 구조의 입력 데이터를 충분히 활용할 수 있다. 다른 딥러닝 구조들과 비교해서, CNN은 영상, 음성 분야 모두에서 좋은 성능을 보여준다. CNN은 또한 표준 역전달을 통해 훈련될 수 있다. CNN은 다른 피드포워드 인공신경망 기법들보다 쉽게 훈련되는 편이고 적은 수의 매개변수를 사용한다는 이점이 있다.Among them, CNN is a type of multilayer perceptrons designed to use minimal preprocessing. CNN consists of one or several convolution layers and general artificial neural network layers on top of them, and additionally utilizes weights and pooling layers. Thanks to this structure, CNN can fully utilize input data with a two-dimensional structure. Compared to other deep learning structures, CNN shows good performance in both video and audio fields. CNNs can also be trained via standard back propagation. CNNs have the advantage of being easier to train and using fewer parameters than other feedforward artificial neural network techniques.

컨볼루션 네트워크는 묶인 파라미터들을 가지는 노드들의 집합들을 포함하는 신경 네트워크들이다. 사용 가능한 트레이닝 데이터의 크기 증가와 연산 능력의 가용성이, 구분적 선형 단위 및 드롭아웃 트레이닝과 같은 알고리즘 발전과 결합되어, 많은 컴퓨터 비전 작업들이 크게 개선되었다. 오늘날 많은 작업에 사용할 수 있는 데이터 세트들과 같은 엄청난 양의 데이터 세트에서는 초과 맞춤(outfitting)이 중요하지 않으며, 네트워크의 크기를 늘리면 테스트 정확도가 향상된다. 컴퓨팅 리소스들의 최적 사용은 제한 요소가 된다. 이를 위해, 심층 신경 네트워크들의 분산된, 확장 가능한 구현예가 사용될 수 있다.Convolutional networks are neural networks that contain sets of nodes with bound parameters. The increasing size of available training data and the availability of computational power, combined with algorithmic advances such as piecewise linear unit and dropout training, have led to significant improvements in many computer vision tasks. For extremely large data sets, such as those available for many tasks today, overfitting is not critical, and increasing the size of the network improves test accuracy. Optimal use of computing resources becomes a limiting factor. For this purpose, distributed, scalable implementations of deep neural networks can be used.

도 2는 일실시예에 따른 인공지능 모델을 활용하여 식단 관리 서비스를 제공하는 과정을 설명하기 위한 순서도이다.Figure 2 is a flow chart to explain the process of providing a diet management service using an artificial intelligence model according to an embodiment.

도 2를 참조하면, 먼저, S201 단계에서, 장치(200)는 제1 사용자의 신체 변화에 대한 모니터링 정보를 기초로, 제1 기간 동안 제1 사용자의 신체 변화를 분석할 수 있다. 여기서, 제1 기간은 미리 정해진 기간으로, 실시예에 따라 상이하게 설정될 수 있다.Referring to FIG. 2 , first, in step S201, the device 200 may analyze changes in the first user's body during a first period based on monitoring information about changes in the first user's body. Here, the first period is a predetermined period and may be set differently depending on the embodiment.

일실시예에 따르면, 제1 사용자의 신체 변화에 대한 모니터링 정보는 제1 사용자의 신체가 어떻게 변화했는지에 대해 모니터링 한 정보로, 제1 사용자 단말(110)로부터 획득될 수 있다.According to one embodiment, the monitoring information on changes in the first user's body is information monitored on how the first user's body has changed, and may be obtained from the first user terminal 110.

제1 사용자의 신체 변화에 대한 모니터링 정보는 제1 사용자의 섭취 칼로리 내역, 제1 사용자의 소모 칼로리 내역, 제1 사용자의 신체 상태 내역 등을 포함할 수 있다.Monitoring information on physical changes of the first user may include details of calories consumed by the first user, details of calories consumed by the first user, details of the first user's physical condition, etc.

제1 사용자의 섭취 칼로리 내역은 제1 사용자가 언제 얼마만큼의 칼로리를 섭취하였는지 나타내는 내역으로, 먹은 음식, 섭취 칼로리, 섭취 시간 등에 대한 정보가 리스트로 구성될 수 있으며, 제1 사용자가 음식을 먹을 때마다 섭취 칼로리가 수동으로 입력되면, 섭취 칼로리가 입력될 때마다 제1 사용자의 섭취 칼로리 내역에 추가될 수 있고, 음식을 촬영한 사진의 분석으로 섭취 칼로리가 추정되면, 섭취 칼로리가 추정될 때마다 제1 사용자의 섭취 칼로리 내역에 추가될 수 있다.The first user's intake calorie history is a history indicating when and how many calories the first user consumed, and may consist of a list of information about the food eaten, calories consumed, intake time, etc., and the first user can eat the food. If the calorie intake is manually entered each time, the calorie intake may be added to the first user's calorie intake history each time the calorie intake is entered, and if the calorie intake is estimated by analysis of a photo of food, the calorie intake may be estimated. Each time may be added to the first user's calorie intake history.

제1 사용자의 소모 칼로리 내역은 제1 사용자가 언제 얼마만큼의 칼로리를 소모하였는지 나타내는 내역으로, 수행한 운동, 소모 칼로리, 운동 시간 등에 대한 정보가 리스트로 구성될 수 있으며, 제1 사용자가 운동을 수행할 때마다 소모 칼로리가 수동으로 입력되면, 소모 칼로리가 입력될 때마다 제1 사용자의 소모 칼로리 내역에 추가될 수 있고, 사용자가 수행한 운동의 종류 분석으로 소모 칼로리가 추정되면, 소모 칼로리가 추정될 때마다 제1 사용자의 소모 칼로리 내역에 추가될 수 있다.The calorie consumption history of the first user is a history indicating when and how many calories the first user consumed, and may consist of a list of information about the exercise performed, calories burned, exercise time, etc., and the first user is exercising. If the calories burned are manually entered each time the calories burned are entered, they can be added to the first user's calories burned history, and if the calories burned are estimated by analyzing the type of exercise performed by the user, the calories burned are Each time an estimate is made, it may be added to the first user's calories burned history.

제1 사용자의 신체 상태 내역은 제1 사용자의 신체 상태를 나타내는 내역으로, 제1 사용자의 키, 체중, 근육량, 체지방율 등의 신체 상태에 대한 정보가 리스트로 구성될 수 있으며, 제1 사용자가 신체 상태를 측정할 때마다 측정 결과가 수동으로 입력되면, 측정 결과가 입력될 때마다 제1 사용자의 신체 상태 내역에 추가될 수 있고, 제1 사용자의 신체 상태를 측정한 측정기와 제1 사용자 단말(110)가 연결되어 있는 경우, 제1 사용자가 신체 상태를 측정할 때마다 측정 결과가 자동으로 제1 사용자의 신체 상태 내역에 추가될 수 있다.The body condition details of the first user are details indicating the body condition of the first user, and may consist of a list of information about the body condition such as the first user's height, weight, muscle mass, and body fat percentage, and the first user may be If the measurement result is manually entered each time the condition is measured, it may be added to the body condition history of the first user each time the measurement result is entered, and the meter that measured the body condition of the first user and the first user terminal ( If 110) is connected, each time the first user measures the physical condition, the measurement result may be automatically added to the first user's physical condition history.

즉, 제1 사용자 단말(110)은 제1 사용자의 섭취 칼로리 내역, 제1 사용자의 소모 칼로리 내역 및 제1 사용자의 신체 상태 내역 각각에 대해, 추가되는 정보를 계속 누적하여 갱신할 수 있고, 제1 사용자의 섭취 칼로리 내역, 제1 사용자의 소모 칼로리 내역 및 제1 사용자의 신체 상태 내역을 기반으로, 제1 사용자의 신체 변화에 대한 모니터링 정보를 생성할 수 있고, 장치(200)는 제1 사용자 단말(110)로부터 제1 사용자의 신체 변화에 대한 모니터링 정보를 수신하고, 수신된 제1 사용자의 신체 변화에 대한 모니터링 정보를 기초로, 제1 기간 동안 제1 사용자의 신체 변화를 분석할 수 있다.That is, the first user terminal 110 may continuously accumulate and update the added information for each of the first user's calorie intake details, the first user's consumed calories details, and the first user's physical condition details, and the first user terminal 110 may continuously accumulate and update the added information. Based on the 1 user's calorie intake history, the first user's consumed calorie history, and the first user's physical condition history, monitoring information about the first user's body change may be generated, and the device 200 may generate monitoring information about the first user's body change. Monitoring information on physical changes of the first user may be received from the terminal 110, and based on the received monitoring information on physical changes of the first user, the physical changes of the first user may be analyzed during the first period. .

예를 들어, 장치(200)는 제1 사용자의 신체 변화에 대한 모니터링 정보를 기초로, 제1 기간 동안 제1 사용자의 신체 변화가 어떻게 변화하였는지 분석하여, 제1 사용자의 신체 변화를 현상 유지, 체중 감소, 체중 증가, 근육량 감소 및 근육량 증가 중 어느 하나로 확인할 수 있고, 체중 감소인 경우, 제1 기간 동안 체중이 얼마나 감소되었는지 확인하고, 체중 증가인 경우, 제1 기간 동안 체중이 얼마나 증가되었는지 확인하고, 근육량 감소인 경우, 제1 기간 동안 근육량이 얼마나 감소되었는지 확인하고, 근육량 증가인 경우, 제1 기간 동안 근육량이 얼마나 증가되었는지 확인할 수 있다.For example, the device 200 analyzes how the first user's body change has changed during a first period based on monitoring information about the first user's body change, and maintains the status quo of the first user's body change. It can be checked as one of weight loss, weight gain, muscle mass loss, and muscle mass increase. In the case of weight loss, check how much weight was lost during the first period. If it is weight gain, check how much weight was gained during the first period. In the case of a decrease in muscle mass, it is possible to check how much the muscle mass was reduced during the first period, and in the case of an increase in muscle mass, it is possible to check how much the muscle mass was increased during the first period.

일실시예에 따르면, 제1 사용자의 신체 변화에 대한 모니터링 정보를 기초로, 제1 기간 동안 제1 사용자의 섭취 칼로리와 제1 기간 동안 제1 사용자의 소모 칼로리를 확인한 후, 이를 통해, 제1 사용자의 신체 변화를 분석할 수 있다. 이와 관련된 자세한 설명은 도 6을 참조하여 후술하기로 한다. According to one embodiment, based on monitoring information on physical changes of the first user, the calorie intake of the first user during the first period and the calorie consumption of the first user during the first period are confirmed, and through this, the first user Changes in the user's body can be analyzed. A detailed description regarding this will be provided later with reference to FIG. 6 .

S202 단계에서, 장치(200)는 제1 기간 동안 제1 사용자의 신체 변화를 분석한 결과를 기반으로, 제1 기간의 신체 변화량을 추정할 수 있다.In step S202, the device 200 may estimate the amount of physical change in the first period based on a result of analyzing the physical change of the first user during the first period.

예를 들어, 장치(200)는 제1 기간 동안 제1 사용자의 신체 변화가 현상 유지로 확인되면, 제1 기간의 신체 변화량을 0으로 추정할 수 있고, 제1 기간 동안 제1 사용자의 신체 변화가 1kg 체중 감소로 확인되면, 제1 기간의 신체 변화량을 체중 1kg 감소로 추정할 수 있고, 제1 기간 동안 제1 사용자의 신체 변화가 1kg 체중 증가로 확인되면, 제1 기간의 신체 변화량을 체중 1kg 증가로 추정할 수 있고, 제1 기간 동안 제1 사용자의 신체 변화가 1kg 근육량 감소로 확인되면, 제1 기간의 신체 변화량을 근육량 1kg 감소로 추정할 수 있고, 제1 기간 동안 제1 사용자의 신체 변화가 1kg 근육량 증가로 확인되면, 제1 기간의 신체 변화량을 근육량 1kg 증가로 추정할 수 있다.For example, if the physical change of the first user during the first period is confirmed to be the status quo, the device 200 may estimate the amount of physical change in the first period as 0, and the physical change of the first user during the first period may be estimated as 0. If the body change in the first period is confirmed to be a 1kg weight loss, the amount of physical change in the first period can be estimated as a 1kg weight loss, and if the physical change of the first user during the first period is confirmed to be a 1kg weight gain, the amount of physical change in the first period can be estimated as the body weight. It can be estimated as an increase of 1kg, and if the physical change of the first user during the first period is confirmed to be a decrease in muscle mass by 1kg, the amount of physical change in the first period can be estimated as a decrease in muscle mass by 1kg, and the physical change of the first user during the first period can be estimated as a decrease of 1kg in muscle mass. If the physical change is confirmed as an increase in muscle mass by 1kg, the amount of physical change in the first period can be estimated as an increase in muscle mass by 1kg.

S203 단계에서, 장치(200)는 제1 기간의 신체 변화량 및 제1 사용자의 목표치를 기반으로, 제1 기간의 목표 달성률을 산정할 수 있다. 여기서, 제1 사용자의 목표치는 제1 사용자에 의해 미리 설정되어 등록될 수 있다.In step S203, the device 200 may calculate the goal achievement rate in the first period based on the amount of physical change in the first period and the target value of the first user. Here, the first user's target value may be preset and registered by the first user.

예를 들어, 제1 기간의 신체 변화량이 1kg 체중 감소로 추정되고, 제1 사용자의 목표치가 10kg 체중 감소로 설정되어 있는 경우, 장치(200)는 1kg 체중 감소와 10kg 체중 감소를 비교하여, 제1 기간의 목표 달성률을 10%로 산정할 수 있다.For example, if the amount of physical change in the first period is estimated to be 1 kg weight loss, and the first user's target value is set to 10 kg weight loss, the device 200 compares the 1 kg weight loss and the 10 kg weight loss, The goal achievement rate for period 1 can be calculated as 10%.

또한, 제1 기간의 신체 변화량이 1kg 체중 증가로 추정되고, 제1 사용자의 목표치가 10kg 체중 감소로 설정되어 있는 경우, 장치(200)는 1kg 체중 증가와 10kg 체중 감소를 비교하여, 제1 기간의 목표 달성률을 -10%로 산정할 수 있다.In addition, when the amount of physical change in the first period is estimated to be 1 kg weight gain and the first user's target value is set to 10 kg weight loss, the device 200 compares the 1 kg weight gain and the 10 kg weight loss, and The goal achievement rate can be calculated as -10%.

S204 단계에서, 장치(200)는 제1 기간의 목표 달성률을 기초로, 제1 사용자의 식단 난이도를 제1 등급으로 설정할 수 있다. 이때, 장치(200)는 제1 기간의 목표 달성률이 낮을수록 더 어려운 레벨로 제1 등급을 설정할 수 있다.In step S204, the device 200 may set the diet difficulty level of the first user to the first level based on the goal achievement rate of the first period. At this time, the device 200 may set the first grade to a level that is more difficult as the goal achievement rate in the first period is lower.

예를 들어, 장치(200)는 제1 기간의 목표 달성률이 50% 이상인 경우, 제1 사용자의 식단 난이도를 가장 쉬운 레벨인 1등급으로 설정하고, 제1 기간의 목표 달성률이 0% 이상이고 50% 미만인 경우, 제1 사용자의 식단 난이도를 2등급으로 설정하고, 제1 기간의 목표 달성률이 0% 미만인 경우, 제1 사용자의 식단 난이도를 3등급으로 설정할 수 있다.For example, if the goal achievement rate in the first period is 50% or more, the device 200 sets the diet difficulty level of the first user to grade 1, which is the easiest level, and if the goal achievement rate in the first period is 0% or more and 50%. If it is less than %, the first user's diet difficulty can be set to level 2, and if the goal achievement rate in the first period is less than 0%, the first user's diet difficulty can be set to level 3.

S205 단계에서, 장치(200)는 제1 기간 이후인 제2 기간이 제1 계절에 속하는 것으로 확인할 수 있다. 이때, 제2 기간은 제1 기간과 동일한 기간으로 설정될 수 있으며, 예를 들어, 제1 기간이 1월인 경우, 제2 기간은 2월로 설정될 수 있고, 제2 기간이 2월로 설정된 경우, 제1 계절은 겨울로 확인될 수 있다.In step S205, the device 200 may confirm that the second period after the first period belongs to the first season. At this time, the second period may be set to the same period as the first period. For example, if the first period is January, the second period may be set to February, and if the second period is set to February, The first season can be identified as winter.

S206 단계에서, 장치(200)는 제1 사용자가 선호하는 음식의 카테고리를 제1 카테고리로 확인할 수 있다. 이때, 음식의 카테고리는 한식, 일식, 중식, 양식 등으로 구분되거나, 찌개, 볶음, 무침 등으로 구분될 수 있으며, 이외에도 다양한 기준을 통해 음식 카테고리가 구분될 수 있다.In step S206, the device 200 may identify the food category preferred by the first user as the first category. At this time, food categories can be divided into Korean, Japanese, Chinese, Western, etc., stew, stir-fry, seasoned, etc. In addition, food categories can be divided based on various criteria.

장치(200)는 제1 사용자 정보를 기초로, 제1 사용자가 선호하는 음식의 카테고리를 확인하고, 제1 사용자가 선호하는 음식의 카테고리가 제1 카테고리인 것을 확인할 수 있다. 여기서, 제1 사용자 정보는 데이터베이스 또는 제1 사용자 단말(110)을 통해 획득될 수 있다.Based on the first user information, the device 200 may check the food category preferred by the first user and confirm that the food category preferred by the first user is the first category. Here, the first user information may be obtained through a database or the first user terminal 110.

S207 단계에서, 장치(200)는 제1 등급, 제1 계절 및 제1 카테고리를 매칭하여 제1 매칭 정보를 생성할 수 있다.In step S207, the device 200 may generate first matching information by matching the first grade, first season, and first category.

S208 단계에서, 장치(200)는 제1 매칭 정보를 인코딩 하여 제1 입력 신호를 생성할 수 있다.In step S208, the device 200 may generate a first input signal by encoding the first matching information.

구체적으로, 장치(200)는 제1 매칭 정보를 인공지능 모델의 입력으로 사용하기 위해, 제1 매칭 정보에 대해 통상의 정보 처리를 수행하여, 제1 입력 신호를 생성할 수 있다. Specifically, in order to use the first matching information as input to an artificial intelligence model, the device 200 may perform normal information processing on the first matching information and generate a first input signal.

S209 단계에서, 장치(200)는 미리 학습된 제1 인공지능 모델에 제1 입력 신호를 입력할 수 있다. 여기서, 제1 인공지능 모델은 식단 난이도, 계절 및 선호 음식 카테고리의 분석으로 추천 식단을 선정하도록 학습된 상태일 수 있다.In step S209, the device 200 may input a first input signal to the first artificial intelligence model learned in advance. Here, the first artificial intelligence model may be trained to select a recommended diet through analysis of diet difficulty, season, and preferred food category.

제1 인공지능 모델은 식단 난이도, 계절 및 선호 음식 카테고리를 매칭한 매칭 정보를 인코딩 하여 생성된 입력 신호를 입력 받은 후, 입력 신호를 통해 사용자의 추천 식단을 선정하여, 선정된 결과를 나타내는 출력 신호를 출력하는 알고리즘일 수 있다.The first artificial intelligence model receives an input signal generated by encoding matching information matching diet difficulty, season, and preferred food category, then selects the user's recommended diet through the input signal, and produces an output signal representing the selected result. It may be an algorithm that outputs .

즉, 제1 인공지능 모델은 식단 난이도, 계절 및 선호 음식 카테고리를 고려하여, 사용자가 어느 음식을 먹으면 좋을 것인지 분석하고, 분석된 결과를 기반으로 추천 식단을 생성하고, 생성된 추천 식단을 나타내는 출력 신호를 출력할 수 있다.In other words, the first artificial intelligence model analyzes which foods would be good for the user to eat, considering diet difficulty, season, and preferred food category, generates a recommended diet based on the analyzed results, and outputs representing the generated recommended diet. A signal can be output.

S210 단계에서, 장치(200)는 제1 입력 신호를 통해 제1 사용자의 추천 식단이 선정되면, 제1 인공지능 모델로부터 제1 사용자의 추천 식단을 나타내는 제1 출력 신호를 획득할 수 있다.In step S210, when the recommended diet for the first user is selected through the first input signal, the device 200 may obtain a first output signal representing the recommended diet for the first user from the first artificial intelligence model.

예를 들어, 장치(200)는 제1 인공지능 모델에 제1 입력 신호를 입력하면, 제1 입력 신호를 통해 제1 사용자의 추천 식단이 아침에 제1 음식, 점심에 제2 음식, 저녁에 제3 음식을 먹는 것으로 선정되면, 제1 인공지능 모델로부터 (제1 음식, 제2 음식, 제3 음식)을 나타내는 제1 출력 신호를 획득할 수 있다. 이때, 제1 사용자의 추천 식단은 미리 정해진 기간 동안 일자별로 아침, 점심, 저녁에 무슨 음식을 먹는지가 선정될 수 있다.For example, when the device 200 inputs a first input signal to the first artificial intelligence model, the first user's recommended diet is the first food for breakfast, the second food for lunch, and the recommended diet for the first user through the first input signal. If it is selected to eat the third food, a first output signal representing (first food, second food, third food) can be obtained from the first artificial intelligence model. At this time, the first user's recommended diet may be selected as what foods to eat for breakfast, lunch, and dinner for each day during a predetermined period.

즉, 제1 인공지능 모델은 입력 신호를 통해 사용자에게 일자별로 아침, 점심, 저녁에 어느 음식을 먹을지 선정하고, 선정된 음식들을 취합하여 추천 식단을 생성하고, 생성된 추천 식단을 나타내는 출력 신호를 출력할 수 있다. 이를 위해, 제1 인공지능 모델은 데이터베이스에 저장되어 있는 등급별로 구분된 음식 정보, 계절별로 구분된 음식 정보, 카테고리별 구분된 음식 정보 등에 기초하여, 사용자에게 어느 음식을 선정하여 추천 식단을 생성할 것인지 분석하도록 미리 학습된 상태일 수 있다.In other words, the first artificial intelligence model allows the user to select which foods to eat for breakfast, lunch, and dinner for each day through input signals, generates a recommended diet by collecting the selected foods, and generates an output signal representing the generated recommended diet. Can be printed. To this end, the first artificial intelligence model allows the user to select a food and generate a recommended diet based on food information classified by grade, food information classified by season, food information classified by category, etc. stored in the database. It may be in a pre-trained state to analyze whether

제1 인공지능 모델의 학습이 이루어지는 학습 장치는 학습된 제1 인공지능 모델을 활용하여 식단 난이도, 계절 및 선호 음식 카테고리의 분석으로 추천 식단을 선정하는 장치(200)와 동일한 장치일 수 있고, 별개의 장치일 수도 있다. 이하에서는 제1 인공지능 모델이 학습되는 과정을 설명한다.The learning device in which learning of the first artificial intelligence model is performed may be the same device as the device 200 that selects a recommended diet through analysis of diet difficulty, season, and preferred food category using the learned first artificial intelligence model, or may be a separate device. It may be a device of Below, the process by which the first artificial intelligence model is learned is explained.

먼저, 학습 장치는 식단 난이도, 계절 및 선호 음식 카테고리를 매칭한 매칭 정보를 기초로 입력을 생성할 수 있다. First, the learning device can generate input based on matching information that matches diet difficulty, season, and preferred food categories.

구체적으로, 학습 장치는 식단 난이도, 계절 및 선호 음식 카테고리를 매칭한 매칭 정보에 대해 전처리하는 과정을 수행할 수 있다. 전처리가 수행된 매칭 정보를 제1 인공지능 모델의 입력으로 그대로 사용하거나, 불필요한 정보를 제거하는 통상의 처리를 거쳐 입력을 생성할 수 있다.Specifically, the learning device may perform a preprocessing process on matching information that matches diet difficulty, season, and preferred food categories. The pre-processed matching information can be used as an input to the first artificial intelligence model, or the input can be generated through normal processing to remove unnecessary information.

다음으로, 학습 장치는 제1 인공지능 모델에 입력을 적용할 수 있다. 제1 인공지능 모델은 강화 학습(reinforcement learning)에 따라 학습되는 인공 신경망일 수 있다. 제1 인공지능 모델은 강화 학습을 통해 추상적 추론을 출력하는데 적합한 Q-Network, DQN(Depp Q-Network), 또는 관계형 네트워크(relation network, RL) 구조일 수 있다.Next, the learning device can apply input to the first artificial intelligence model. The first artificial intelligence model may be an artificial neural network learned according to reinforcement learning. The first artificial intelligence model may be a Q-Network, DQN (Depp Q-Network), or relational network (RL) structure suitable for outputting abstract inference through reinforcement learning.

강화 학습에 따라 학습되는 제1 인공지능 모델은 다양한 보상에 평가를 반영하여 갱신 및 최적화될 수 있다.The first artificial intelligence model learned according to reinforcement learning can be updated and optimized by reflecting the evaluation of various rewards.

예를 들어, 제1 보상은 식단 난이도가 어려운 레벨일수록 다이어트 음식을 식단에 포함시켜 추천 식단을 선정하면 보상값이 높아질 수 있고, 제2 보상은 계절에 맞는 제철 음식을 식단에 포함시켜 추천 식단을 선정하면 보상값이 높아질 수 있고, 제3 보상은 선호 음식 카테고리에 속하는 음식을 식단에 포함시켜 추천 식단을 선정하면 보상값이 높아질 수 있다.For example, for the first reward, the more difficult the level of diet difficulty is, the higher the reward value can be when selecting a recommended diet by including diet foods in the menu, and for the second reward, the reward value can be increased by including seasonal foods in the menu and selecting a recommended diet. If selected, the reward value can be increased, and as a third reward, the reward value can be increased if a recommended diet is selected by including foods belonging to the preferred food category in the diet.

다음으로, 학습 장치는 제1 인공지능 모델로부터 출력을 획득할 수 있다. 이때, 제1 인공지능 모델의 출력은, 사용자의 추천 식단을 나타내는 정보일 수 있다. 즉, 제1 인공지능 모델은 식단 난이도, 계절 및 선호 음식 카테고리를 매칭한 매칭 정보의 분석으로 사용자의 추천 식단을 선정하고, 선정된 추천 식단에 대한 정보를 출력할 수 있다. 이때, 추천 식단에 대한 정보는 미리 정해진 기간 동안 아침, 점심, 저녁에 무슨 음식을 먹는지 나타내는 정보를 포함할 수 있다.Next, the learning device may obtain an output from the first artificial intelligence model. At this time, the output of the first artificial intelligence model may be information indicating the user's recommended diet. In other words, the first artificial intelligence model can select the user's recommended diet by analyzing matching information that matches diet difficulty, season, and preferred food categories, and output information about the selected recommended diet. At this time, information about the recommended diet may include information indicating what food to eat for breakfast, lunch, and dinner during a predetermined period.

다음으로, 학습 장치는 제1 인공지능 모델의 출력을 평가하여 보상을 지급할 수 있다.Next, the learning device may evaluate the output of the first artificial intelligence model and pay a reward.

예를 들어, 학습 장치는 식단 난이도가 어려운 레벨일수록 다이어트 음식을 식단에 포함시켜 추천 식단을 선정하면 제1 보상을 많이 수여하고, 계절에 맞는 제철 음식을 식단에 포함시켜 추천 식단을 선정하면 제2 보상을 많이 수여하고, 선호 음식 카테고리에 속하는 음식을 식단에 포함시켜 추천 식단을 선정하면 제3 보상을 많이 수여할 수 있다.For example, the learning device awards more first rewards when the recommended diet is selected by including diet foods in the menu as the diet difficulty level becomes more difficult, and second rewards are awarded when the recommended diet is selected by including seasonal foods appropriate for the season in the menu. If you award a lot of rewards and select a recommended diet by including foods belonging to the preferred food category in the diet, you can award a lot of third rewards.

다음으로, 학습 장치는 평가를 기초로 제1 인공지능 모델을 갱신할 수 있다.Next, the learning device may update the first artificial intelligence model based on the evaluation.

구체적으로, 학습 장치는 제1 인공지능 모델이 사용자의 신체 변화를 분석하는 환경(environment)에서, 보상값(reward)들의 합의 기대값(expectation)이 최대화되도록, 특정한 상태(state)들에서 취할 행동(action)들을 결정하는 정책(policy)을 최적화하는 과정을 통해 제1 인공지능 모델을 갱신할 수 있다.Specifically, the learning device determines actions to be taken in specific states so that the expected value of the sum of rewards is maximized in an environment where the first artificial intelligence model analyzes changes in the user's body. The first artificial intelligence model can be updated through the process of optimizing the policy that determines actions.

예를 들어, 학습 장치는 제1 등급, 제1 계절 및 제1 카테고리를 매칭하여 제1 매칭 정보를 기초로 제1 사용자의 추천 식단을 선정한 결과에 대해 문제가 없는 경우, 제1 사용자의 추천 식단을 선정한 결과에 대해 문제가 없음을 나타내는 제1 학습 신호를 생성하고, 제1 학습 신호를 제1 인공지능 모델에 적용하여, 제1 등급, 제1 계절 및 제1 카테고리와 유사한 값을 가지는 입력 신호가 입력될 때, 제1 사용자의 추천 식단과 유사하게 추천 식단을 선정하도록, 제1 인공지능 모델을 학습시키는 과정을 통해, 제1 인공지능 모델을 갱신할 수 있다.For example, the learning device matches the first grade, first season, and first category, and if there is no problem with the result of selecting the first user's recommended diet based on the first matching information, the learning device selects the first user's recommended diet. Generate a first learning signal indicating that there is no problem with the selected result, apply the first learning signal to the first artificial intelligence model, and input signals having similar values to the first grade, first season, and first category. When is input, the first artificial intelligence model can be updated through a process of training the first artificial intelligence model to select a recommended diet similar to the first user's recommended diet.

한편, 정책을 최적화하는 과정은 보상들의 합의 기대값의 최대값 또는 Q-함수의 최대값을 추정하거나, Q-함수의 손실 함수(loss function)의 최소값을 추정하는 과정을 통해 이루어질 수 있다. 손실함수의 최소값의 추정은 확률적 경사하강법(stochastic gradient descent, SGD) 등을 통해 이루어질 수 있다. 정책을 최적화하는 과정은 이에 제한되는 것은 아니며, 강화 학습에서 사용하는 다양한 최적화 알고리즘들이 이용될 수 있다.Meanwhile, the process of optimizing the policy can be accomplished through estimating the maximum expected value of the sum of rewards or the maximum value of the Q-function, or estimating the minimum value of the loss function of the Q-function. Estimation of the minimum value of the loss function can be done through stochastic gradient descent (SGD), etc. The process of optimizing the policy is not limited to this, and various optimization algorithms used in reinforcement learning can be used.

학습 장치는 상술한 제1 인공지능 모델의 학습 과정을 반복함으로써, 제1 인공지능 모델을 점진적으로 갱신시킬 수 있다. 이를 통해, 학습 장치는 사용자의 추천 식단을 선정하여 출력하는 제1 인공지능 모델을 학습시킬 수 있다.The learning device can gradually update the first artificial intelligence model by repeating the learning process of the first artificial intelligence model described above. Through this, the learning device can learn the first artificial intelligence model that selects and outputs the user's recommended diet.

즉, 학습 장치는 사용자의 추천 식단을 선정할 때, 제1 보상 내지 제3 보상 등을 통한 강화 학습을 반영하여, 분석 기준을 조정함으로써, 제1 인공지능 모델을 학습시킬 수 있다.That is, when selecting a user's recommended diet, the learning device can learn the first artificial intelligence model by reflecting reinforcement learning through the first to third rewards, etc. and adjusting the analysis standard.

S211 단계에서, 장치(200)는 제1 출력 신호를 기초로, 제1 사용자의 추천 식단을 제1 식단으로 설정할 수 있다.In step S211, the device 200 may set the recommended diet of the first user as the first diet based on the first output signal.

즉, 장치(200)는 제1 사용자의 추천 식단을 나타내는 제1 출력 신호가 획득되면, 제1 출력 신호를 기초로, 제2 기간 동안 제1 사용자가 아침, 점심, 저녁에 무슨 음식을 먹으면 좋을지 확인한 후, 확인된 음식들을 기준으로 제1 식단을 설정할 수 있다.That is, when the first output signal representing the recommended diet of the first user is obtained, the device 200 determines what foods the first user should eat for breakfast, lunch, and dinner during the second period, based on the first output signal. After confirmation, the first diet can be set based on the confirmed foods.

S212 단계에서, 장치(200)는 제2 기간 동안 제1 사용자의 맞춤형 식단으로 제1 식단을 추천하는 제1 컨설팅 정보를 생성할 수 있다. 여기서, 제1 컨설팅 정보는 제2 기간 동안 제1 사용자가 아침, 점심, 저녁에 무슨 음식을 먹는지 나타내는 정보를 포함할 수 있다.In step S212, the device 200 may generate first consulting information recommending the first diet as the first user's customized diet for the second period. Here, the first consulting information may include information indicating what food the first user eats for breakfast, lunch, and dinner during the second period.

S213 단계에서, 장치(200)는 제1 컨설팅 정보를 제1 사용자 단말(110)로 전송할 수 있다.In step S213, the device 200 may transmit first consulting information to the first user terminal 110.

도 3 내지 도 4는 일실시예에 따른 컨설팅 결과를 추적하여 사용자의 추천 식단을 조정한 컨설팅 정보를 제공하는 과정을 설명하기 위한 순서도이다.Figures 3 and 4 are flowcharts illustrating a process for providing consulting information that adjusts a user's recommended diet by tracking consulting results according to an embodiment.

일실시예에 따르면, 도 3에 도시된 각 단계는 도 2에 도시된 각 단계가 수행된 이후에 수행될 수 있고, 도 4에 도시된 각 단계는 도 3에 도시된 각 단계가 수행된 이후에 수행될 수 있다.According to one embodiment, each step shown in FIG. 3 may be performed after each step shown in FIG. 2 is performed, and each step shown in FIG. 4 may be performed after each step shown in FIG. 3 is performed. can be performed.

도 3을 참조하면, 먼저, S301 단계에서, 장치(200)는 제1 사용자의 신체 변화에 대한 모니터링 정보를 기초로, 제2 기간 동안 제1 사용자의 신체 변화를 분석할 수 있다.Referring to FIG. 3 , first, in step S301, the device 200 may analyze changes in the body of the first user during a second period based on monitoring information about changes in the body of the first user.

S302 단계에서, 장치(200)는 제2 기간 동안 제1 사용자의 신체 변화를 분석한 결과를 기반으로, 제2 기간의 신체 변화량을 추정할 수 있다.In step S302, the device 200 may estimate the amount of physical change in the second period based on a result of analyzing the physical change of the first user during the second period.

S303 단계에서, 장치(200)는 제2 기간의 신체 변화량 및 제1 사용자의 목표치를 기반으로, 제2 기간의 목표 달성률을 산정할 수 있다.In step S303, the device 200 may calculate the goal achievement rate in the second period based on the amount of physical change in the second period and the first user's goal value.

S304 단계에서, 장치(200)는 제2 기간의 목표 달성률이 제1 기간의 목표 달성률 보다 높은지 여부를 확인할 수 있다.In step S304, the device 200 may check whether the goal achievement rate of the second period is higher than the goal achievement rate of the first period.

S304 단계에서 제2 기간의 목표 달성률이 제1 기간의 목표 달성률 보다 높은 것으로 확인되면, S305 단계에서, 장치(200)는 제1 사용자의 목표치까지 남아있는 잔여 수치를 확인할 수 있다.If it is confirmed in step S304 that the goal achievement rate of the second period is higher than the goal achievement rate of the first period, in step S305, the device 200 may check the remaining value up to the first user's goal.

예를 들어, 제1 사용자의 목표가 70kg에서 60kg로 체중을 감소하는 것인 경우, 제1 사용자의 목표치는 10kg 체중 감소로 설정될 수 있고, 장치(200)는 제1 기간의 신체 변화량이 1kg 체중 감소로 추정되면, 제1 기간의 목표 달성률을 10%로 산정하고, 제2 기간의 신체 변화량이 2kg 체중 감소로 추정되면, 제2 기간의 목표 달성률을 20%로 산정한 후, 제1 기간부터 제2 기간까지 신체 변화량을 총 3kg 체중 감소로 추정할 수 있고, 3kg 체중 감소와 10kg 체중 감소를 비교하여, 제1 사용자의 목표치까지 남아있는 잔여 수치를 7kg로 확인할 수 있다.For example, if the first user's goal is to reduce body weight from 70 kg to 60 kg, the first user's goal value may be set to 10 kg weight loss, and the device 200 may determine that the body change in the first period is 1 kg body weight. If a decrease is estimated, the goal achievement rate in the first period is calculated as 10%, and if the body change in the second period is estimated to be a 2kg weight loss, the goal achievement rate in the second period is calculated as 20%, and then from the first period, the goal achievement rate is calculated as 20%. The amount of physical change until the second period can be estimated as a total weight loss of 3kg, and by comparing the 3kg weight loss and the 10kg weight loss, the remaining value remaining up to the first user's target can be confirmed to be 7kg.

S306 단계에서, 장치(200)는 잔여 수치가 기준치 보다 큰지 여부를 확인할 수 있다. 여기서, 기준치는 실시예에 따라 상이하게 설정될 수 있다.In step S306, the device 200 can check whether the remaining value is greater than the reference value. Here, the reference value may be set differently depending on the embodiment.

S306 단계에서 잔여 수치가 기준치 보다 큰 것으로 확인되면, S307 단계에서, 장치(200)는 제1 사용자의 식단 난이도를 제1 등급으로 유지할 수 있다.If the remaining value is confirmed to be greater than the reference value in step S306, the device 200 may maintain the first user's diet difficulty level at the first level in step S307.

즉, 장치(200)는 제2 기간이 목표 달성률 보다 제1 기간의 목표 달성률이 높으면서, 잔여 수치가 기준치 보다 큰 것으로 확인되면, 추천 식단을 통한 효과가 충분히 있으나, 아직 목표치까지 많이 남아있어, 제1 사용자의 식단 난이도를 기존의 제1 등급으로 유지할 수 있다.In other words, if the device 200 confirms that the target achievement rate of the first period is higher than the target achievement rate of the second period and the remaining value is greater than the reference value, the recommended diet is sufficiently effective, but there is still a lot left to reach the target value, so the remaining value is greater than the reference value. 1 The user's diet difficulty level can be maintained at the existing first level.

S306 단계에서 잔여 수치가 기준치 보다 작은 것으로 확인되면, S308 단계에서, 제1 사용자의 식단 난이도를 제1 등급 보다 쉬운 레벨인 제2 등급으로 변경할 수 있다.If the remaining value is confirmed to be less than the reference value in step S306, the difficulty level of the first user's diet may be changed to a second level that is easier than the first level in step S308.

예를 들어, 제1 사용자의 식단 난이도가 3등급으로 설정되어 있는 경우, 장치(200)는 제1 사용자의 식단 난이도를 3등급에서 2등급으로 변경할 수 있다.For example, if the first user's diet difficulty level is set to level 3, the device 200 may change the first user's diet level of difficulty from level 3 to level 2.

즉, 장치(200)는 제2 기간이 목표 달성률 보다 제1 기간의 목표 달성률이 높으면서, 잔여 수치가 기준치 보다 작은 것으로 확인되면, 추천 식단을 통한 효과가 충분히 있으며, 목표치까지 얼마 남아있지 않아, 제1 사용자의 식단 난이도를 기존 레벨에서 좀 더 쉬운 레벨의 등급으로 변경할 수 있다.In other words, if the device 200 determines that the goal achievement rate of the first period is higher than the goal achievement rate of the second period and the remaining value is less than the reference value, the recommended diet is effective enough and there is not much left to reach the target value, so the 1 The user's diet difficulty level can be changed from the existing level to an easier level.

한편, S304 단계에서 제2 기간의 목표 달성률이 제1 기간의 목표 달성률 보다 낮은 것으로 확인되면, S309 단계에서, 장치(200)는 제1 사용자의 식단 난이도를 제1 등급 보다 어려운 레벨인 제3 등급으로 변경할 수 있다.Meanwhile, if it is confirmed in step S304 that the goal achievement rate of the second period is lower than the goal achievement rate of the first period, in step S309, the device 200 adjusts the difficulty level of the first user's diet to a third level that is more difficult than the first level. It can be changed to .

예를 들어, 제1 사용자의 식단 난이도가 1등급으로 설정되어 있는 경우, 장치(200)는 제1 사용자의 식단 난이도를 1등급에서 2등급으로 변경할 수 있다.For example, if the first user's diet difficulty level is set to level 1, the device 200 may change the first user's diet difficulty level from level 1 to level 2.

즉, 장치(200)는 제2 기간이 목표 달성률 보다 제1 기간의 목표 달성률이 낮은 것으로 확인되면, 추천 식단을 통한 효과가 없어, 제1 사용자의 식단 난이도를 기존 레벨에서 좀 더 어려운 레벨의 등급으로 변경할 수 있다.That is, if the device 200 determines that the goal achievement rate of the first period is lower than the goal achievement rate of the second period, the recommended diet has no effect, and the difficulty level of the first user's diet is graded from the existing level to a more difficult level. It can be changed to .

S307 단계, S308 단계 및 S309 단계 중 어느 하나의 단계가 수행된 이후, S401 단계에서, 장치(200)는 제2 기간 이후인 제3 기간이 제2 계절에 속하는 것으로 확인할 수 있다. 이때, 제3 기간은 제1 기간 및 제2 기간과 동일한 기간으로 설정될 수 있으며, 예를 들어, 제1 기간이 1월이고 제2 기간이 2월인 경우, 제3 기간은 3월로 설정될 수 있고, 제3 기간이 3월로 설정된 경우, 제2 계절은 봄으로 확인될 수 있다.After any one of steps S307, S308, and S309 is performed, in step S401, the device 200 may confirm that the third period after the second period belongs to the second season. At this time, the third period may be set to the same period as the first period and the second period. For example, if the first period is January and the second period is February, the third period may be set to March. And, if the third period is set to March, the second season can be confirmed as spring.

S402 단계에서, 장치(200)는 제1 사용자의 식단 난이도가 제1 등급으로 유지된 경우, 제1 등급, 제2 계절 및 제1 카테고리를 매칭하여 제2 매칭 정보를 생성할 수 있다.In step S402, when the first user's diet difficulty level is maintained at the first level, the device 200 may generate second matching information by matching the first level, the second season, and the first category.

S403 단계에서, 장치(200)는 제1 사용자의 식단 난이도가 제2 등급으로 변경된 경우, 제2 등급, 제2 계절 및 제1 카테고리를 매칭하여 제2 매칭 정보를 생성할 수 있다.In step S403, when the first user's diet difficulty level changes to the second level, the device 200 may generate second matching information by matching the second level, the second season, and the first category.

S404 단계에서, 장치(200)는 제1 사용자의 식단 난이도가 제3 등급으로 변경된 경우, 제3 등급, 제2 계절 및 제1 카테고리를 매칭하여 제2 매칭 정보를 생성할 수 있다.In step S404, when the first user's diet difficulty level changes to the third level, the device 200 may generate second matching information by matching the third level, the second season, and the first category.

S405 단계에서, 장치(200)는 제2 매칭 정보를 인코딩 하여 제2 입력 신호를 생성할 수 있다.In step S405, the device 200 may generate a second input signal by encoding the second matching information.

S406 단계에서, 장치(200)는 제1 인공지능 모델에 제2 입력 신호를 입력할 수 있다.In step S406, the device 200 may input a second input signal to the first artificial intelligence model.

S407 단계에서, 장치(200)는 제2 입력 신호를 통해 제1 사용자의 추천 식단이 선정되면, 제1 인공지능 모델로부터 제1 사용자의 추천 식단을 나타내는 제2 출력 신호를 획득할 수 있다.In step S407, when the recommended diet for the first user is selected through the second input signal, the device 200 may obtain a second output signal representing the recommended diet for the first user from the first artificial intelligence model.

S408 단계에서, 장치(200)는 제2 출력 신호를 기초로, 제1 사용자의 추천 식단을 제2 식단으로 설정할 수 있다.In step S408, the device 200 may set the first user's recommended diet as the second diet based on the second output signal.

S409 단계에서, 장치(200)는 제3 기간 동안 제1 사용자의 맞춤형 식단으로 제2 식단을 추천하는 제2 컨설팅 정보를 생성할 수 있다. 여기서, 제2 컨설팅 정보는 제3 기간 동안 제1 사용자가 아침, 점심, 저녁에 무슨 음식을 먹는지 나타내는 정보를 포함할 수 있다.In step S409, the device 200 may generate second consulting information recommending the second diet as the first user's customized diet for the third period. Here, the second consulting information may include information indicating what food the first user eats for breakfast, lunch, and dinner during the third period.

S410 단계에서, 장치(200)는 제2 컨설팅 정보를 제1 사용자 단말(110)로 전송할 수 있다.In step S410, the device 200 may transmit the second consulting information to the first user terminal 110.

도 5는 일실시예에 따른 멘탈 헬스 케어 서비스를 제공하는 과정을 설명하기 위한 순서도이다.Figure 5 is a flowchart for explaining the process of providing mental health care services according to an embodiment.

도 5를 참조하면, 먼저, S501 단계에서, 장치(200)는 제2 기간의 목표 달성률이 제1 기간의 목표 달성률 보다 낮은 것으로 확인된 경우, 제1 사용자의 멘탈 헬스 점검이 필요한 것으로 판단할 수 있다.Referring to FIG. 5, first, in step S501, if it is confirmed that the goal achievement rate of the second period is lower than the goal achievement rate of the first period, the device 200 may determine that a mental health check of the first user is necessary. there is.

S502 단계에서, 장치(200)는 제1 사용자의 게시물 업로드 내역, 제1 사용자의 위치 이동 내역, 제1 사용자의 음악 청취 내역, 제1 사용자의 영상 시청 내역 및 제1 사용자의 게시글 조회 내역 중 적어도 하나를 포함하는 제1 사용자의 활동 자료를 수집할 수 있다.In step S502, the device 200 records at least one of the first user's posting upload history, the first user's location movement history, the first user's music listening history, the first user's video viewing history, and the first user's posting viewing history. Activity data of the first user, including one, may be collected.

장치(200)는 제1 사용자의 활동 자료를 수집하는데 있어, 크롤링(Crawling), 빅데이터 수집 등 다양한 기법을 통해, 제1 사용자의 활동 자료를 수집할 수 있다.The device 200 may collect activity data of the first user through various techniques such as crawling and big data collection.

구체적으로, 장치(200)는 SNS 서버와 연동되어, SNS 서버로부터 제1 사용자의 게시물 업로드 내역을 수집할 수 있고, 제1 사용자 단말(110)로부터 제1 사용자의 위치 이동을 추적하여 기록된 위치 이동 내역을 수집할 수 있고, 음악 서비스 제공 서버와 연동되어, 음악 서비스 제공 서버로부터 제1 사용자의 음악 청취 내역을 수집할 수 있고, 동영상 서비스 제공 서버와 연동되어, 동영상 서비스 제공 서버로부터 제1 사용자의 영상 시청 내역을 수집할 수 있고, 게시판 서비스 제공 서버와 연동되어, 게시판 서비스 제공 서버로부터 제1 사용자의 게시글 조회 내역을 수집할 수 있다.Specifically, the device 200 is linked to an SNS server, can collect the first user's posting upload history from the SNS server, and tracks the location movement of the first user from the first user terminal 110 to the recorded location. Movement history can be collected, linked to the music service providing server, and the first user's music listening history can be collected from the music service providing server. Linked to the video service providing server, the first user can be linked to the video service providing server. The video viewing history can be collected, and by linking with the bulletin board service providing server, the first user's posting viewing history can be collected from the bulletin board service providing server.

S503 단계에서, 장치(200)는 제1 사용자의 활동 자료에서 제2 기간 동안 수행한 활동 내역을 제1 활동 자료로 추출할 수 있다.In step S503, the device 200 may extract activity details performed during the second period from the activity data of the first user as first activity data.

즉, 장치(200)는 제1 사용자의 활동 자료를 기반으로, 제1 사용자의 활동 내역을 일자 별로 확인한 후, 제2 기간 동안 수행한 활동 내역을 제1 활동 자료로 추출할 수 있다.That is, the device 200 may check the activity details of the first user by date based on the activity data of the first user and then extract the activity details performed during the second period as the first activity data.

구체적으로, 장치(200)는 제1 사용자의 게시물 업로드 내역에서 제2 기간 동안의 게시물 업로드 내역을 추출할 수 있고, 제1 사용자의 위치 이동 내역에서 제2 기간 동안의 위치 이동 내역을 추출할 수 있고, 제1 사용자의 음악 청취 내역에서 제2 기간 동안의 음악 청취 내역을 추출할 수 있고, 제1 사용자의 영상 시청 내역에서 제2 기간 동안의 영상 시청 내역을 추출할 수 있고, 제1 사용자의 게시글 조회 내역에서 제2 기간 동안의 게시글 조회 내역을 추출할 수 있다.Specifically, the device 200 may extract post upload details during a second period from the post upload details of the first user, and extract location movement details during a second period from the first user's location movement details. Music listening history during a second period can be extracted from the first user's music listening history, video viewing history during a second period can be extracted from the first user's video viewing history, and the first user's video viewing history can be extracted from the first user's music listening history during a second period. The post view details for the second period can be extracted from the post view details.

S504 단계에서, 장치(200)는 제1 활동 자료를 기반으로, 제2 기간 동안의 활동 상태를 나타내는 활동 키워드를 분석할 수 있다.In step S504, the device 200 may analyze an activity keyword indicating an activity state during the second period based on the first activity data.

구체적으로, 장치(200)는 제1 활동 자료를 기반으로, 제2 기간 동안의 업로드 게시물 내역, 제2 기간 동안의 위치 이동 내역, 제2 기간 동안의 음악 청취 내역, 제2 기간 동안의 영상 시청 내역 및 제2 기간 동안의 게시글 조회 내역 중 적어도 하나를 확인하여, 제2 기간 동안의 활동 상태를 나타내는 활동 키워드를 분석할 수 있다.Specifically, based on the first activity data, the device 200 includes upload post history during the second period, location movement history during the second period, music listening history during the second period, and video viewing during the second period. By checking at least one of the history and the post view history during the second period, activity keywords indicating the activity state during the second period can be analyzed.

예를 들어, 장치(200)는 제2 기간 동안의 업로드 게시물 내역을 기반으로, 제2 기간 동안 업로드한 게시물에 등록되어 있는 해시 태그를 확인하고, 확인된 해시 태그를 활동 키워드로 분석할 수 있다.For example, the device 200 may check the hashtags registered in posts uploaded during the second period based on the uploaded post history during the second period and analyze the confirmed hashtags as activity keywords. .

또한, 장치(200)는 제2 기간 동안의 위치 이동 내역을 기반으로, 제2 기간 동안 방문한 장소를 확인하고, 확인된 장소가 무엇을 하는 장소인지 장소 카테고리를 확인하고, 확인된 장소 카테고리를 활동 키워드로 분석할 수 있다. 여기서, 장소 카테고리는 집, 식당, 백화점, 극장 등으로 분류될 수 있다.In addition, the device 200 confirms the places visited during the second period based on the location movement history during the second period, confirms the place category of what the confirmed place does, and performs activities in the confirmed place category. It can be analyzed by keyword. Here, the place category can be classified into home, restaurant, department store, theater, etc.

또한, 장치(200)는 제2 기간 동안의 음악 청취 내역을 기반으로, 제2 기간 동안 청취한 음악을 확인하고, 청취한 음악이 어느 장르의 음악인지 음악 카테고리를 확인하고, 확인된 음악 카테고리를 활동 키워드로 분석할 수 있다. 여기서, 음악 카테고리는 발라드, 댄스, 트로트 등으로 분류될 수 있다.In addition, based on the music listening history during the second period, the device 200 confirms the music listened to during the second period, determines the music category of which genre of music the listened to music is, and selects the confirmed music category. It can be analyzed by activity keywords. Here, the music category can be classified into ballad, dance, trot, etc.

또한, 장치(200)는 제2 기간 동안의 영상 시청 내역을 기반으로, 제2 기간 동안 시청한 영상을 확인하고, 시청한 영상이 어느 장르의 영상인지 영상 카테고리를 확인하고, 확인된 영상 카테고리를 활동 키워드로 분석할 수 있다. 여기서, 영상 카테고리는 멜로, 액션, 스릴러, 코미디 등으로 분류될 수 있다.In addition, based on the video viewing history during the second period, the device 200 confirms the video watched during the second period, determines the genre of the video and the video category of the video watched, and selects the confirmed video category. It can be analyzed by activity keywords. Here, video categories can be classified into romance, action, thriller, comedy, etc.

또한, 장치(200)는 제2 기간 동안의 게시글 조회 내역을 기반으로, 제2 기간 동안 조회한 게시글을 확인하고, 확인된 게시글이 어느 게시판에 게시된 글인지 확인하고, 확인된 게시판을 활동 키워드로 분석할 수 있다. 여기서, 게시판은 상담, 건강, 뷰티, 유머 등으로 분류될 수 있다.In addition, the device 200 checks the posts viewed during the second period based on the post view history during the second period, determines which bulletin board the confirmed post was posted on, and selects the confirmed bulletin board as an activity keyword. It can be analyzed as: Here, bulletin boards can be classified into consultation, health, beauty, humor, etc.

S505 단계에서, 장치(200)는 활동 키워드에 기초하여, 미리 설정된 분류 기준에 따라 제1 사용자의 멘탈 헬스에 문제가 있는지 여부를 진단할 수 있다. 이를 위해, 멘탈 헬스 문제의 유형 별로 문제 키워드가 설정되어 있으며, 문제 키워드과 활동 키워드 간의 비교를 통해, 멘탈 헬스에 문제가 있는지 여부를 진단할 수 있다. 여기서, 멘탈 헬스의 문제는 식단으로 발생하는 문제로, 식이장애, 우울증, 자살충동 등 다양한 유형으로 구분될 수 있다.In step S505, the device 200 may diagnose whether there is a problem with the first user's mental health according to a preset classification standard based on the activity keyword. For this purpose, problem keywords are set for each type of mental health problem, and through comparison between problem keywords and activity keywords, it is possible to diagnose whether there is a problem with mental health. Here, mental health problems are problems caused by diet, and can be divided into various types such as eating disorders, depression, and suicidal impulses.

즉, 장치(200)는 활동 키워드와 유형 별로 설정되어 있는 문제 키워드를 비교하여, 특정 유형의 문제 키워드와 활동 키워드 간의 일치하는 키워드가 일정 수 이상으로 확인되면, 해당 유형의 문제가 있는 것으로 진단할 수 있다.That is, the device 200 compares activity keywords with problem keywords set for each type, and when a certain number of matching keywords between a specific type of problem keyword and an activity keyword are confirmed, it is diagnosed as having a problem of that type. You can.

예를 들어, 장치(200)는 활동 키워드와 제1 유형의 문제 키워드를 비교한 결과, 3개 이상의 키워드가 일치하는 것으로 확인되면, 제1 유형의 문제가 있는 것으로 진단할 수 있다.For example, the device 200 may diagnose that there is a first type of problem if it is confirmed that three or more keywords match as a result of comparing the activity keyword and the first type of problem keyword.

S506 단계에서, 장치(200)는 제1 사용자의 멘탈 헬스에 제1 유형의 문제가 있는 것으로 진단되면, 제1 유형의 문제에 대한 상담을 권유하는 알림 메시지를 제1 사용자 단말로 전송할 수 있다. 여기서, 알림 메시지는 제1 유형의 문제에 대해 상담이 가능한 상담 센터의 정보를 포함할 수 있다.In step S506, if it is diagnosed that the first user has a first type of mental health problem, the device 200 may transmit a notification message recommending consultation for the first type of problem to the first user terminal. Here, the notification message may include information about a counseling center where counseling is available for the first type of problem.

도 6은 일실시예에 따른 사용자의 신체 변화를 분석하는 과정을 설명하기 위한 순서도이다.Figure 6 is a flowchart for explaining the process of analyzing changes in the user's body according to one embodiment.

도 6을 참조하면, 먼저, S601 단계에서, 장치(200)는 제1 기간 동안 제1 사용자의 섭취 칼로리를 취합하여, 제1 기간의 총 칼로리 섭취량을 산출할 수 있다. 여기서, 제1 사용자의 섭취 칼로리는 제1 사용자가 음식을 먹을 때마다 입력하면, 입력된 섭취 칼로리가 제1 사용자의 섭취 칼로리 내역에 추가될 수 있고, 음식을 촬영한 사진의 분석으로 섭취 칼로리가 추정되면, 추정된 섭취 칼로리가 제1 사용자의 섭취 칼로리 내역에 추가될 수 있다. 음식을 촬영한 사진의 분석으로 섭취 칼로리를 추정하는 과정에 대한 자세한 설명은 도 7을 참조하여 후술하기로 한다.Referring to FIG. 6 , first, in step S601, the device 200 may collect the calorie intake of the first user during the first period and calculate the total calorie intake of the first period. Here, if the first user's calorie intake is entered every time the first user eats food, the input calorie intake can be added to the first user's calorie intake history, and the calorie intake can be calculated by analyzing the photo of the food. Once estimated, the estimated calorie intake may be added to the first user's calorie intake history. A detailed explanation of the process of estimating calorie intake by analyzing photos of food will be described later with reference to FIG. 7.

즉, 장치(200)는 제1 사용자 단말(110)로부터 제1 사용자의 섭취 칼로리 내역을 획득하고, 제1 사용자의 섭취 칼로리 내역을 기반으로, 제1 기간 동안 제1 사용자가 섭취한 칼로리를 확인하고, 확인된 칼로리를 취합하여, 제1 기간의 총 칼로리 섭취량을 산출할 수 있다.That is, the device 200 obtains the calorie intake details of the first user from the first user terminal 110 and determines the calories consumed by the first user during the first period based on the calorie intake details of the first user. And, by collecting the confirmed calories, the total calorie intake for the first period can be calculated.

S602 단계에서, 장치(200)는 제1 기간 동안 제1 사용자의 소모 칼로리를 취합하여, 제1 기간의 활동 대사량을 산출할 수 있다. 여기서, 제1 사용자의 소모 칼로리는 제1 사용자가 운동을 수행할 때마다 입력하면, 입력된 소모 칼로리가 제1 사용자의 소모 칼로리 내역에 추가될 수 있고, 사용자가 수행한 운동의 종류 분석으로 소모 칼로리가 추정되면, 추정된 소모 칼로리가 제1 사용자의 소모 칼로리 내역에 추가될 수 있다.In step S602, the device 200 may calculate the active metabolic rate of the first period by collecting calories consumed by the first user during the first period. Here, if the first user inputs the calories burned every time the first user performs exercise, the input calories burned can be added to the first user's calories burned, and the calories burned can be consumed by analyzing the type of exercise performed by the user. Once the calories are estimated, the estimated calories burned may be added to the first user's calories burned history.

즉, 장치(200)는 제1 사용자 단말(110)로부터 제1 사용자의 소모 칼로리 내역을 획득하고, 제1 사용자의 소모 칼로리 내역을 기반으로, 제1 기간 동안 제1 사용자가 소모한 칼로리를 확인하고, 확인된 칼로리를 취합하여, 제1 기간의 활동 대사량을 산출할 수 있다.That is, the device 200 obtains the details of calories consumed by the first user from the first user terminal 110 and determines the calories consumed by the first user during the first period based on the details of calories consumed by the first user. And, by collecting the confirmed calories, the active metabolic rate of the first period can be calculated.

S603 단계에서, 장치(200)는 제1 사용자의 성별, 나이, 체중 및 키를 기반으로, 제1 사용자의 기초 대사량을 산출할 수 있다. 이때, 장치(200)는 제1 사용자 정보를 기초로, 제1 사용자의 성별, 나이, 체중 및 키를 확인하여, 제1 사용자의 기초 대사량을 산출할 수 있다. 여기서, 제1 사용자 정보는 데이터베이스 또는 제1 사용자 단말(110)을 통해 획득될 수 있다.In step S603, the device 200 may calculate the basal metabolic rate of the first user based on the first user's gender, age, weight, and height. At this time, the device 200 may check the gender, age, weight, and height of the first user based on the first user information and calculate the basal metabolic rate of the first user. Here, the first user information may be obtained through a database or the first user terminal 110.

장치(200)는 제1 사용자의 기초 대사량을 산출할 때, 해리스 베네딕트 방정식, 미핀 세이트젤 방정식 등 공지된 다양한 방식을 통해, 제1 사용자의 기초 대사량을 산출할 수 있다.When calculating the basal metabolic rate of the first user, the device 200 may calculate the basal metabolic rate of the first user through various known methods, such as the Harris Benedict equation and the Miffin Sategel equation.

S604 단계에서, 장치(200)는 제1 기간의 총 칼로리 섭취량, 제1 기간의 활동 대사량 및 제1 사용자의 기초 대사량을 매칭하여, 제3 매칭 정보를 생성할 수 있다.In step S604, the device 200 may generate third matching information by matching the total calorie intake of the first period, the active metabolic rate of the first period, and the basal metabolic rate of the first user.

S605 단계에서, 장치(200)는 제3 매칭 정보를 인코딩 하여 제3 입력 신호를 생성할 수 있다.In step S605, the device 200 may generate a third input signal by encoding the third matching information.

구체적으로, 장치(200)는 제3 매칭 정보를 인공지능 모델의 입력으로 사용하기 위해, 제3 매칭 정보에 대해 통상의 정보 처리를 수행하여, 제3 입력 신호를 생성할 수 있다. Specifically, in order to use the third matching information as an input to an artificial intelligence model, the device 200 may perform normal information processing on the third matching information and generate a third input signal.

S606 단계에서, 장치(200)는 미리 학습된 제2 인공지능 모델에 제3 입력 신호를 입력할 수 있다. 여기서, 제2 인공지능 모델은 총 칼로리 섭취량, 활동 대사량 및 기초 대사량의 분석으로 신체 변화를 파악하도록 학습된 상태일 수 있다.In step S606, the device 200 may input a third input signal to the pre-trained second artificial intelligence model. Here, the second artificial intelligence model may be trained to identify physical changes through analysis of total calorie intake, active metabolic rate, and basal metabolic rate.

제2 인공지능 모델은 총 칼로리 섭취량, 활동 대사량 및 기초 대사량을 매칭한 매칭 정보를 인코딩 하여 생성된 입력 신호를 입력 받은 후, 입력 신호를 통해 사용자의 신체 변화를 분석하여, 분석한 결과를 나타내는 출력 신호를 출력하는 알고리즘일 수 있다.The second artificial intelligence model receives an input signal generated by encoding matching information matching total calorie intake, active metabolic rate, and basal metabolic rate, then analyzes the user's body changes through the input signal, and outputs the analysis result. It may be an algorithm that outputs a signal.

즉, 제2 인공지능 모델은 총 칼로리 섭취량, 활동 대사량 및 기초 대사량을 고려하여, 사용자의 신체가 어떻게 변화할 것인지 예측하여 분석하고, 분석된 결과를 나타내는 출력 신호를 출력할 수 있다.In other words, the second artificial intelligence model can predict and analyze how the user's body will change by considering total calorie intake, active metabolic rate, and basal metabolic rate, and output an output signal representing the analyzed result.

S607 단계에서, 장치(200)는 제3 입력 신호를 통해 제1 사용자의 신체 변화가 파악되면, 제2 인공지능 모델로부터 제1 사용자의 신체 변화를 나타내는 제3 출력 신호를 획득할 수 있다.In step S607, when the change in the first user's body is identified through the third input signal, the device 200 may obtain a third output signal representing the change in the first user's body from the second artificial intelligence model.

예를 들어, 장치(200)는 제2 인공지능 모델에 제3 입력 신호를 입력하고, 제3 입력 신호를 통해 제1 사용자의 신체 변화가 체중 감소로 분석되면, 제2 인공지능 모델로부터 체중 감소를 나타내는 제3 출력 신호를 획득할 수 있고, 제3 입력 신호를 통해 제1 사용자의 신체 변화가 근육량 증가로 분석되면, 제2 인공지능 모델로부터 근육량 증가를 나타내는 제3 출력 신호를 획득할 수 있다. 이때, 제3 출력 신호는 제1 사용자의 신체 변화가 체중 감소로 분석된 경우, 체중이 얼마나 감소될 것인지를 나타내는 정보를 포함할 수 있고, 제1 사용자의 신체 변화가 근육량 증가로 분석된 경우, 근육량이 얼마나 증가할 것인지를 나타내는 정보를 포함할 수 있다.For example, the device 200 inputs a third input signal to the second artificial intelligence model, and when the change in the first user's body is analyzed as weight loss through the third input signal, the device 200 determines the weight loss from the second artificial intelligence model. A third output signal indicating an increase in muscle mass can be obtained, and when the physical change of the first user is analyzed as an increase in muscle mass through the third input signal, a third output signal indicating an increase in muscle mass can be obtained from the second artificial intelligence model. . At this time, the third output signal may include information indicating how much the body weight will be reduced when the first user's physical change is analyzed as a weight loss, and when the first user's physical change is analyzed as an increase in muscle mass, the third output signal may include information indicating how much the body weight will be reduced. It may contain information indicating how much muscle mass will be increased.

즉, 제2 인공지능 모델은 입력 신호를 통해 사용자의 신체 변화를 파악하고, 파악된 신체 변화를 나타내는 출력 신호를 출력할 수 있다. 이를 위해, 제2 인공지능 모델은 데이터베이스에 저장되어 있는 상황별로 구분된 신체 변화 정보에 기초하여, 사용자의 신체가 어떻게 변화한 것인지 분석하도록 미리 학습된 상태일 수 있다.In other words, the second artificial intelligence model can identify changes in the user's body through input signals and output an output signal representing the identified body changes. To this end, the second artificial intelligence model may be pre-trained to analyze how the user's body has changed based on body change information classified by situation stored in the database.

제2 인공지능 모델의 학습이 이루어지는 학습 장치는 학습된 제2 인공지능 모델을 활용하여 총 칼로리 섭취량, 활동 대사량 및 기초 대사량의 분석으로 신체 변화를 파악하는 장치(200)와 동일한 장치일 수 있고, 별개의 장치일 수도 있다. 이하에서는 제2 인공지능 모델이 학습되는 과정을 설명한다.The learning device in which learning of the second artificial intelligence model is performed may be the same device as the device 200 that determines physical changes by analyzing total calorie intake, active metabolic rate, and basal metabolic rate using the learned second artificial intelligence model, It may be a separate device. Below, the process by which the second artificial intelligence model is learned is explained.

먼저, 학습 장치는 총 칼로리 섭취량, 활동 대사량 및 기초 대사량을 매칭한 매칭 정보를 기초로 입력을 생성할 수 있다. First, the learning device can generate input based on matching information that matches total calorie intake, active metabolic rate, and basal metabolic rate.

구체적으로, 학습 장치는 총 칼로리 섭취량, 활동 대사량 및 기초 대사량을 매칭한 매칭 정보에 대해 전처리하는 과정을 수행할 수 있다. 전처리가 수행된 매칭 정보를 제2 인공지능 모델의 입력으로 그대로 사용하거나, 불필요한 정보를 제거하는 통상의 처리를 거쳐 입력을 생성할 수 있다.Specifically, the learning device may perform a preprocessing process on matching information that matches total calorie intake, active metabolic rate, and basal metabolic rate. The pre-processed matching information can be used as is as an input to the second artificial intelligence model, or the input can be generated through normal processing to remove unnecessary information.

다음으로, 학습 장치는 제2 인공지능 모델에 입력을 적용할 수 있다. 제2 인공지능 모델은 강화 학습(reinforcement learning)에 따라 학습되는 인공 신경망일 수 있다. 제2 인공지능 모델은 강화 학습을 통해 추상적 추론을 출력하는데 적합한 Q-Network, DQN(Depp Q-Network), 또는 관계형 네트워크(relation network, RL) 구조일 수 있다.Next, the learning device can apply input to the second artificial intelligence model. The second artificial intelligence model may be an artificial neural network learned according to reinforcement learning. The second artificial intelligence model may be a Q-Network, DQN (Depp Q-Network), or relational network (RL) structure suitable for outputting abstract inference through reinforcement learning.

강화 학습에 따라 학습되는 제2 인공지능 모델은 다양한 보상에 평가를 반영하여 갱신 및 최적화될 수 있다.The second artificial intelligence model learned according to reinforcement learning can be updated and optimized by reflecting the evaluation of various rewards.

예를 들어, 제4 보상은 총 칼로리 섭취량이 활동 대사량 및 기초 대사량을 더한 값 보다 많을수록 체중이 더 많이 증가한 것으로 분석하면 보상값이 높아질 수 있고, 제5 보상은 총 칼로리 섭취량이 활동 대사량 및 기초 대사량을 더한 값 보다 적을수록 체중이 더 많이 감소한 것으로 분석하면 보상값이 높아질 수 있고, 제6 보상은 활동 대사량을 기초 대사량으로 나누어 산출된 활동 비율이 기준 비율 보다 높을수록 근육량이 더 많이 증가한 것으로 분석하면 보상값이 높아질 수 있고, 제7 보상은 활동 대사량을 기초 대사량으로 나누어 산출된 활동 비율이 기준 비율 보다 낮을수록 근육량이 더 많이 감소한 것으로 분석하면 보상값이 높아질 수 있다.For example, the 4th compensation can increase the compensation value by analyzing that the more the total calorie intake is greater than the sum of active metabolic rate and basal metabolic rate, the greater the weight gain, and the 5th compensation can increase the compensation value if the total calorie intake is greater than the active metabolic rate and basal metabolic rate. If the value is less than the added value, the compensation value can be higher if analyzed as a greater weight loss, and the sixth compensation is analyzed as a greater increase in muscle mass if the activity ratio calculated by dividing the active metabolic rate by the basal metabolic rate is higher than the reference rate. The compensation value may be higher, and the seventh compensation may be higher if the activity rate calculated by dividing the active metabolic rate by the basal metabolic rate is analyzed as a decrease in muscle mass as the activity rate is lower than the reference rate.

다음으로, 학습 장치는 제2 인공지능 모델로부터 출력을 획득할 수 있다. 이때, 제2 인공지능 모델의 출력은, 사용자의 신체 변화를 나타내는 정보일 수 있다. 즉, 제2 인공지능 모델은 총 칼로리 섭취량, 활동 대사량 및 기초 대사량을 매칭한 매칭 정보의 분석으로 사용자의 신체 변화를 파악하고, 파악된 신체 변화에 대한 정보를 출력할 수 있다. 이때, 신체 변화에 대한 정보는 현상 유지, 체중 감소, 체중 증가, 근육량 감소 및 근육량 증가 중 어느 하나를 포함할 수 있고, 체중 감소인 경우, 체중이 얼마나 감소될 것인지 나타내는 정보를 포함하고, 체중 증가인 경우, 체중이 얼마나 증가될 것인지 나타내는 정보를 포함하고, 근육량 감소인 경우, 근육량이 얼마나 감소될 것인지 나타내는 정보를 포함하고, 근육량 증가인 경우, 근육량이 얼마나 증가될 것인지 나타내는 정보를 포함할 수 있다.Next, the learning device can obtain an output from the second artificial intelligence model. At this time, the output of the second artificial intelligence model may be information indicating changes in the user's body. In other words, the second artificial intelligence model can identify changes in the user's body by analyzing matching information that matches total calorie intake, active metabolic rate, and basal metabolic rate, and output information about the identified physical changes. At this time, the information about the physical change may include any one of maintaining the status quo, weight loss, weight gain, muscle mass loss, and muscle mass increase. In the case of weight loss, it includes information indicating how much the weight will be reduced, and weight increase. In the case of a decrease in muscle mass, it includes information indicating how much the body weight will increase, in the case of a decrease in muscle mass, it includes information indicating how much the muscle mass will be decreased, and in the case of an increase in muscle mass, it may include information indicating how much the muscle mass will increase. .

다음으로, 학습 장치는 제2 인공지능 모델의 출력을 평가하여 보상을 지급할 수 있다.Next, the learning device can evaluate the output of the second artificial intelligence model and pay a reward.

예를 들어, 학습 장치는 총 칼로리 섭취량이 활동 대사량 및 기초 대사량을 더한 값 보다 많을수록 체중이 더 많이 증가한 것으로 분석하면 제4 보상을 많이 수여하고, 총 칼로리 섭취량이 활동 대사량 및 기초 대사량을 더한 값 보다 적을수록 체중이 더 많이 감소한 것으로 분석하면 제5 보상을 많이 수여하고, 활동 대사량을 기초 대사량으로 나누어 산출된 활동 비율이 기준 비율 보다 높을수록 근육량이 더 많이 증가한 것으로 분석하면 제6 보상을 많이 수여하고, 활동 대사량을 기초 대사량으로 나누어 산출된 활동 비율이 기준 비율 보다 낮을수록 근육량이 더 많이 감소한 것으로 분석하면 제7 보상을 많이 수여할 수 있다.For example, if the learning device analyzes that the total calorie intake is greater than the sum of the active metabolic rate and the basal metabolic rate, the greater the fourth reward is awarded, and if the total calorie intake is greater than the sum of the active metabolic rate and the basal metabolic rate, the learning device awards the fourth reward more. If it is analyzed that the lower the weight, the greater the weight loss, the 5th reward is awarded more, and if the activity ratio calculated by dividing the active metabolic rate by the basal metabolic rate is analyzed to be higher than the standard rate, the 6th reward is awarded more. , if the activity rate calculated by dividing the active metabolic rate by the basal metabolic rate is analyzed to be lower than the standard rate, the greater the decrease in muscle mass, the greater the seventh compensation can be awarded.

다음으로, 학습 장치는 평가를 기초로 제2 인공지능 모델을 갱신할 수 있다.Next, the learning device may update the second artificial intelligence model based on the evaluation.

구체적으로, 학습 장치는 제2 인공지능 모델이 사용자의 신체 변화를 분석하는 환경(environment)에서, 보상값(reward)들의 합의 기대값(expectation)이 최대화되도록, 특정한 상태(state)들에서 취할 행동(action)들을 결정하는 정책(policy)을 최적화하는 과정을 통해 제2 인공지능 모델을 갱신할 수 있다.Specifically, the learning device determines actions to be taken in specific states so that the expected value of the sum of rewards is maximized in an environment where the second artificial intelligence model analyzes changes in the user's body. The second artificial intelligence model can be updated through the process of optimizing the policy that determines actions.

예를 들어, 학습 장치는 제1 사용자의 총 칼로리 섭취량, 제1 사용자의 활동 대사량 및 제1 사용자의 기초 대사량을 매칭한 매칭 정보를 기초로 제1 사용자의 신체 변화를 분석한 결과에 대해 문제가 없는 경우, 제1 사용자의 신체 변화를 분석한 결과에 대해 문제가 없음을 나타내는 제2 학습 신호를 생성하고, 제2 학습 신호를 제2 인공지능 모델에 적용하여, 제1 사용자와 유사한 칼로리 섭취량, 활동 대사량 및 기초 대사량을 가지고 있는 제2 사용자에 대한 신체 변화를 분석할 때, 제2 사용자의 신체 변화를 제1 사용자의 신체 변화와 유사하게 분석하도록, 제2 인공지능 모델을 학습시키는 과정을 통해, 제2 인공지능 모델을 갱신할 수 있다.For example, the learning device has a problem with the results of analyzing the physical changes of the first user based on matching information that matches the first user's total calorie intake, the first user's active metabolic rate, and the first user's basal metabolic rate. If there is none, a second learning signal is generated indicating that there is no problem with the results of analyzing the first user's body changes, and the second learning signal is applied to the second artificial intelligence model to obtain a calorie intake similar to that of the first user; When analyzing the physical changes of a second user who has an active metabolic rate and basal metabolic rate, through the process of learning a second artificial intelligence model to analyze the physical changes of the second user similarly to the physical changes of the first user. , the second artificial intelligence model can be updated.

한편, 정책을 최적화하는 과정은 보상들의 합의 기대값의 최대값 또는 Q-함수의 최대값을 추정하거나, Q-함수의 손실 함수(loss function)의 최소값을 추정하는 과정을 통해 이루어질 수 있다. 손실함수의 최소값의 추정은 확률적 경사하강법(stochastic gradient descent, SGD) 등을 통해 이루어질 수 있다. 정책을 최적화하는 과정은 이에 제한되는 것은 아니며, 강화 학습에서 사용하는 다양한 최적화 알고리즘들이 이용될 수 있다.Meanwhile, the process of optimizing the policy can be accomplished through estimating the maximum expected value of the sum of rewards or the maximum value of the Q-function, or estimating the minimum value of the loss function of the Q-function. Estimation of the minimum value of the loss function can be done through stochastic gradient descent (SGD), etc. The process of optimizing the policy is not limited to this, and various optimization algorithms used in reinforcement learning can be used.

학습 장치는 상술한 제2 인공지능 모델의 학습 과정을 반복함으로써, 제2 인공지능 모델을 점진적으로 갱신시킬 수 있다. 이를 통해, 학습 장치는 사용자의 신체 변화를 분석하여 출력하는 제2 인공지능 모델을 학습시킬 수 있다.The learning device can gradually update the second artificial intelligence model by repeating the learning process of the second artificial intelligence model described above. Through this, the learning device can learn a second artificial intelligence model that analyzes and outputs changes in the user's body.

즉, 학습 장치는 사용자의 신체 변화를 분석할 때, 제4 보상 내지 제7 보상 등을 통한 강화 학습을 반영하여, 분석 기준을 조정함으로써, 제2 인공지능 모델을 학습시킬 수 있다.That is, when the learning device analyzes changes in the user's body, it can learn the second artificial intelligence model by reflecting reinforcement learning through the fourth to seventh rewards, etc. and adjusting the analysis standard.

S608 단계에서, 장치(200)는 제3 출력 신호를 기초로, 제1 기간 동안 제1 사용자의 신체 변화를 분석할 수 있다.In step S608, the device 200 may analyze changes in the first user's body during the first period based on the third output signal.

즉, 장치(200)는 제1 사용자의 신체 변화를 나타내는 제3 출력 신호가 획득되면, 제3 출력 신호를 기초로, 제1 사용자의 신체 변화가 어떻게 얼마나 많이 변화하였는지 확인하고, 이를 통해, 제1 기간 동안 제1 사용자의 신체 변화를 분석할 수 있다.That is, when the third output signal representing the change in the body of the first user is obtained, the device 200 determines how and how much the change in the body of the first user has changed based on the third output signal, and through this, Changes in the first user's body can be analyzed during one period.

예를 들어, 장치(200)는 제3 출력 신호를 기초로, 제1 기간 동안 제1 사용자의 신체 변화를 현상 유지, 체중 감소, 체중 증가, 근육량 감소 및 근육량 증가 중 어느 하나로 확인할 수 있고, 체중 감소인 경우, 기준 기간 동안 체중이 얼마나 감소되었는지 확인하고, 체중 증가인 경우, 기준 기간 동안 체중이 얼마나 증가되었는지 확인하고, 근육량 감소인 경우, 기준 기간 동안 근육량이 얼마나 감소되었는지 확인하고, 근육량 증가인 경우, 기준 기간 동안 근육량이 얼마나 증가되었는지 확인할 수 있다.For example, based on the third output signal, the device 200 may determine the physical change of the first user during the first period as one of maintaining status quo, weight loss, weight gain, muscle mass decrease, and muscle mass increase, and weight If it is a decrease, check how much body weight was lost during the baseline period. If it is a weight gain, check how much body weight was gained during the baseline period. If it is a loss of muscle mass, check how much muscle mass was lost during the baseline period. In this case, you can check how much muscle mass has increased during the reference period.

도 7은 일실시예에 따른 섭취 칼로리를 추정하여 총 칼로리 섭취량에 추가하는 과정을 설명하기 위한 순서도이다.Figure 7 is a flowchart for explaining the process of estimating calorie intake and adding it to total calorie intake according to one embodiment.

도 7을 참조하면, 먼저, S701 단계에서, 장치(200)는 제1 사용자 단말(110)로부터 제1 음식을 촬영하여 생성된 제1 이미지를 수신할 수 있다.Referring to FIG. 7 , first, in step S701, the device 200 may receive a first image generated by photographing the first food from the first user terminal 110.

구체적으로, 제1 사용자 단말(110)은 제1 사용자 단말(110)에 구비된 카메라를 이용하여 제1 사용자가 먹고자 하는 제1 음식에 대한 촬영을 수행하여 제1 이미지를 생성할 수 있으며, 장치(200)는 제1 사용자 단말(110)의 카메라를 이용하여 제1 사용자가 먹고자 하는 제1 음식에 대한 촬영이 수행되면, 제1 사용자 단말(110)로부터 제1 음식을 촬영하여 생성된 제1 이미지를 수신할 수 있다.Specifically, the first user terminal 110 may generate a first image by photographing the first food that the first user wants to eat using a camera provided in the first user terminal 110, and the device (200) When the first food that the first user wants to eat is photographed using the camera of the first user terminal 110, the first food generated by photographing the first food from the first user terminal 110 Images can be received.

S702 단계에서, 장치(200)는 제1 이미지를 인코딩 하여 제4 입력 신호를 생성할 수 있다.In step S702, the device 200 may generate a fourth input signal by encoding the first image.

구체적으로, 장치(200)는 제1 이미지의 픽셀을 색 정보로 인코딩 하여 제4 입력 신호를 생성할 수 있다. 색 정보는 RGB 색상 정보, 명도 정보, 채도 정보를 포함할 수 있으나, 이에 국한하지 않는다. 장치(200)는 색 정보를 수치화된 값으로 환산할 수 있으며, 이 값을 포함한 데이터 시트 형태로 이미지를 인코딩할 수 있다.Specifically, the device 200 may generate a fourth input signal by encoding pixels of the first image into color information. Color information may include, but is not limited to, RGB color information, brightness information, and saturation information. The device 200 can convert color information into a numerical value and encode an image in the form of a data sheet including this value.

S703 단계에서, 장치(200)는 제4 입력 신호를 미리 학습된 제3 인공지능 모델에 입력할 수 있다. 여기서, 제3 인공지능 모델은 이미지 분석으로 음식의 종류 및 양을 인식하도록 학습된 상태일 수 있다.In step S703, the device 200 may input the fourth input signal to the third artificial intelligence model learned in advance. Here, the third artificial intelligence model may be trained to recognize the type and amount of food through image analysis.

제3 인공지능 모델은 이미지를 인코딩 하여 생성된 입력 신호를 입력 받은 후, 입력 신호를 통해 이미지 내에서 음식의 종류 및 양을 인식하여, 인식된 음식의 종류 및 양을 나타내는 출력 신호를 출력하는 알고리즘일 수 있다.The third artificial intelligence model is an algorithm that receives an input signal generated by encoding an image, recognizes the type and amount of food in the image through the input signal, and outputs an output signal indicating the type and amount of the recognized food. It can be.

일실시예에 따른 제3 인공지능 모델은 컨볼루션 신경망으로 구현되어, 컨볼루션 신경망은 특징 추출 신경망과 분류 신경망으로 구성되어 있으며, 특징 추출 신경망은 입력 신호를 컨볼루션 계층과 풀링 계층을 차례로 쌓아 진행한다. 컨볼루션 계층은 컨볼루션 연산, 컨볼루션 필터 및 활성함수를 포함하고 있다. 컨볼루션 필터의 계산은 대상 입력의 행렬 크기에 따라 조절되나 일반적으로 9X9 행렬을 사용한다. 활성 함수는 일반적으로 ReLU 함수, 시그모이드 함수, 및 tanh 함수 등을 사용하나 이에 한정하지 않는다. 풀링 계층은 입력의 행렬 크기를 줄이는 역할을 하는 계층으로, 특정 영역의 픽셀을 묶어 대표값을 추출하는 방식을 사용한다. 풀링 계층의 연산에는 일반적으로 평균값이나 최대값을 많이 사용하나 이에 한정하지 않는다. 해당 연산은 정방 행렬을 사용하여 진행되는데, 일반적으로 9X9 행렬을 사용한다. 컨볼루션 계층과 풀링 계층은 해당 입력이 차이를 유지한 상태에서 충분히 작아질 때까지 번갈아 반복 진행된다.The third artificial intelligence model according to one embodiment is implemented as a convolutional neural network, and the convolutional neural network consists of a feature extraction neural network and a classification neural network, and the feature extraction neural network sequentially stacks the input signal into a convolutional layer and a pooling layer. do. The convolution layer contains convolution operations, convolution filters, and activation functions. The calculation of the convolution filter is adjusted according to the matrix size of the target input, but a 9X9 matrix is generally used. The activation function generally uses, but is not limited to, the ReLU function, sigmoid function, and tanh function. The pooling layer is a layer that reduces the size of the input matrix and uses a method of extracting representative values by grouping pixels in a specific area. The calculation of the pooling layer generally uses average or maximum values, but is not limited to these. The operation is performed using a square matrix, and a 9X9 matrix is generally used. The convolution layer and the pooling layer are alternately repeated until the input becomes sufficiently small while maintaining the difference.

일실시예에 따르면, 분류 신경망은 은닉층과 출력층을 가지고 있다. 제3 인공지능 모델로 구현된 컨볼루션 신경망에서는 일반적으로 은닉층이 3개 이상 존재하며, 각 은닉층의 노드는 100개로 지정하나 경우에 따라 그 이상으로 정할 수 있다. 은닉층의 활성함수는 ReLU 함수, 시그모이드 함수 및 tanh 함수 등을 사용하나 이에 한정하지 않는다. 컨볼루션 신경망의 출력층 노드는 총 2개이며, 2개의 출력층 노드를 통해 음식의 종류에 대한 출력값과 음식의 양에 대한 출력값을 각각 출력할 수 있다.According to one embodiment, a classification neural network has a hidden layer and an output layer. In a convolutional neural network implemented as a third artificial intelligence model, there are generally three or more hidden layers, and the number of nodes in each hidden layer is set to 100, but in some cases, it can be set to more. The activation function of the hidden layer uses the ReLU function, sigmoid function, and tanh function, but is not limited to these. There are a total of two output layer nodes in the convolutional neural network, and the output values for the type of food and the output value for the amount of food can be output through the two output layer nodes, respectively.

S704 단계에서, 장치(200)는 제4 입력 신호를 통해 음식의 종류가 제1 음식으로 인식되고 음식의 양이 제1 중량으로 인식되면, 제3 인공지능 모델로부터 제1 음식 및 제1 중량을 나타내는 제4 출력 신호를 획득할 수 있다.In step S704, when the type of food is recognized as the first food and the amount of food is recognized as the first weight through the fourth input signal, the device 200 selects the first food and the first weight from the third artificial intelligence model. A fourth output signal representing the signal can be obtained.

예를 들어, 장치(200)는 제3 인공지능 모델에 제4 입력 신호를 입력하고, 제4 입력 신호를 통해 음식의 종류가 햄버거로 인식되고 음식의 양이 500g으로 인식되면, 제3 인공지능 모델로부터 햄버거 및 500g을 나타내는 제4 출력 신호를 획득할 수 있다.For example, the device 200 inputs a fourth input signal to the third artificial intelligence model, and when the type of food is recognized as a hamburger and the amount of food is recognized as 500g through the fourth input signal, the third artificial intelligence model A fourth output signal representing hamburger and 500g can be obtained from the model.

즉, 제3 인공지능 모델은 이미지의 인코딩에 의해 생성된 입력 신호를 입력으로 하고, 음식의 종류 및 양을 나타내는 정보를 출력으로 할 수 있다.In other words, the third artificial intelligence model can use an input signal generated by encoding an image as input, and information indicating the type and amount of food as output.

일실시예에 따른 인코딩은 이미지의 픽셀 별 색 정보를 수치화된 데이터 시트 형태로 저장하는 방식으로 이뤄질 수 있는데, 색 정보는 하나의 픽셀이 가지고 있는 RGB 색상, 명도 정보, 채도 정보를 포함할 수 있으나, 이에 국한하지 않는다.Encoding according to one embodiment may be accomplished by storing color information for each pixel of an image in the form of a numerical data sheet. The color information may include RGB color, brightness information, and saturation information contained in one pixel. , but is not limited to this.

일실시예에 따르면, 제3 인공지능 모델은 특징 추출 신경망과 분류 신경망으로 구성될 수 있으며, 특징 추출 신경망은 음식을 촬영한 이미지에서 음식과 배경을 분리하는 작업을 수행할 수 있으며, 분류 신경망은 이미지에 있는 음식의 종류가 어느 종류인지 파악하고, 이미지 내에 있는 음식의 양이 어느 정도인지 파악하는 작업을 수행하도록 할 수 있다.According to one embodiment, the third artificial intelligence model may be composed of a feature extraction neural network and a classification neural network. The feature extraction neural network may perform the task of separating food and background in an image of food, and the classification neural network may perform the task of separating food and background from an image of food. You can perform the task of determining what type of food is in an image and how much food is in the image.

특징 추출 신경망이 음식과 배경을 구분하는 방법은, 이미지를 인코딩한 입력 신호의 데이터 시트로부터 색 정보의 각 값들의 변화가 한 픽셀을 포함하는 8개의 픽셀 중 6개 이상에서 30% 이상의 변화가 생긴 것으로 감지되는 픽셀들의 묶음을 음식과 배경의 경계로 삼을 수 있으나, 이에 국한하지 않는다. The method by which a feature extraction neural network distinguishes between food and background is based on the data sheet of the input signal encoding the image, where the change in each value of color information is more than 30% in 6 or more of the 8 pixels including one pixel. A group of pixels that are detected as objects can be used as the boundary between food and background, but are not limited to this.

특징 추출 신경망은 입력 신호를 컨볼루션 계층과 풀링 계층을 차례로 쌓아 진행한다. 컨볼루션 계층은 컨볼루션 연산, 컨볼루션 필터 및 활성함수를 포함하고 있다. 컨볼루션 필터의 계산은 대상 입력의 행렬 크기에 따라 조절되나 일반적으로 9X9 행렬을 사용한다. 활성 함수는 일반적으로 ReLU 함수, 시그모이드 함수, 및 tanh 함수 등을 사용하나 이에 한정하지 않는다. 풀링 계층은 입력의 행렬 크기를 줄이는 역할을 하는 계층으로, 특정 영역의 픽셀을 묶어 대표값을 추출하는 방식을 사용한다. 풀링 계층의 연산에는 일반적으로 평균값이나 최대값을 많이 사용하나 이에 한정하지 않는다. 해당 연산은 정방 행렬을 사용하여 진행되는데, 일반적으로 9X9 행렬을 사용한다. 컨볼루션 계층과 풀링 계층은 해당 입력이 차이를 유지한 상태에서 충분히 작아질 때까지 번갈아 반복 진행된다.The feature extraction neural network sequentially stacks the input signal into a convolutional layer and a pooling layer. The convolution layer contains convolution operations, convolution filters, and activation functions. The calculation of the convolution filter is adjusted according to the matrix size of the target input, but a 9X9 matrix is generally used. The activation function generally uses, but is not limited to, the ReLU function, sigmoid function, and tanh function. The pooling layer is a layer that reduces the size of the input matrix and uses a method of extracting representative values by grouping pixels in a specific area. The calculation of the pooling layer generally uses average or maximum values, but is not limited to these. The operation is performed using a square matrix, and a 9X9 matrix is generally used. The convolution layer and the pooling layer are alternately repeated until the input becomes sufficiently small while maintaining the difference.

분류 신경망은 특징 추출 신경망을 통해 배경으로부터 구분된 음식의 형태를 확인하고, 미리 정의된 음식별 대표 음식과 유사한지 여부를 확인하여 이미지에 있는 음식이 어느 종류의 음식인지 파악할 수 있다. 이때, 음식의 비교를 위해 데이터베이스에 저장된 정보들을 활용할 수 있다.The classification neural network can identify the type of food in the image by checking the shape of the food distinguished from the background through a feature extraction neural network and checking whether it is similar to a predefined representative food for each food. At this time, information stored in the database can be used to compare foods.

분류 신경망은 음식의 종류를 파악하는 작업을 우선으로 하며, 파악된 음식의 형태 및 크기에 따라 음식의 양까지 파악할 수 있다.The classification neural network prioritizes the task of identifying the type of food, and can even determine the amount of food depending on the shape and size of the identified food.

분류 신경망은 은닉층과 출력층을 가지고 있으며, 일반적으로 은닉층이 5개 이상 존재하며, 각 은닉층의 노드는 80개로 지정하나 경우에 따라 그 이상으로 정할 수 있다. 은닉층의 활성함수는 ReLU 함수, 시그모이드 함수 및 tanh 함수 등을 사용하나 이에 한정하지 않는다. 분류 신경망의 출력층 노드는 총 2개로 할 수 있다.A classification neural network has a hidden layer and an output layer. Generally, there are more than 5 hidden layers, and each hidden layer has 80 nodes, but in some cases, it can be set to more. The activation function of the hidden layer uses the ReLU function, sigmoid function, and tanh function, but is not limited to these. There can be a total of two output layer nodes in the classification neural network.

분류 신경망의 출력은 음식의 종류에 대한 출력값과 음식의 양에 대한 출력값으로, 음식의 종류가 어느 종류인지 지시하고, 음식의 양이 어느 정도인지 지시할 수 있다. 예를 들어, 출력값이 (1, 300)인 경우, 음식의 종류가 햄버거이고, 음식의 양이 300g인 것을 지시하고, 출력값이 (2, 500)인 경우, 음식의 종류가 피자이고, 음식의 양이 500g인 것을 지시할 수 있다.The output of the classification neural network is an output value for the type of food and an output value for the amount of food, which can indicate the type of food and the amount of food. For example, if the output value is (1, 300), the type of food is hamburger and the amount of food is 300g, and if the output value is (2, 500), the type of food is pizza and the amount of food is 300g. You can indicate that the amount is 500g.

일실시예에 따르면, 제3 인공지능 모델은 사용자가 제3 인공지능 모델을 통한 출력의 문제점 발견 시 사용자에 의해 입력된 수정 정답에 의해 생성되는 제3 학습 신호를 전달받아 학습할 수 있다. 제3 인공지능 모델을 통한 출력의 문제점은 음식의 종류를 다른 음식으로 지시하는 출력값을 출력한 경우이거나, 음식의 양을 다른 양으로 지시하는 출력값을 출력한 경우를 의미할 수 있다.According to one embodiment, the third artificial intelligence model can learn by receiving a third learning signal generated by the corrected answer input by the user when the user discovers a problem in the output through the third artificial intelligence model. Problems with output through the third artificial intelligence model may mean that an output value indicating a different type of food is output, or an output value indicating a different amount of food is output.

일실시예에 따른 제3 학습 신호는 정답과 출력값의 오차를 바탕으로 만들어지며, 경우에 따라 델타를 이용하는 SGD나 배치 방식 혹은 역전파 알고리즘을 따르는 방식을 사용할 수 있다. 제3 인공지능 모델은 제3 학습 신호에 의해 기존의 가중치를 수정해 학습을 수행하며, 경우에 따라 모멘텀을 사용할 수 있다. 오차의 계산에는 비용함수가 사용될 수 있는데, 비용함수로 Cross entropy 함수를 사용할 수 있다.The third learning signal according to one embodiment is created based on the error between the correct answer and the output value, and in some cases, SGD using delta, a batch method, or a method following a backpropagation algorithm may be used. The third artificial intelligence model performs learning by modifying the existing weights using the third learning signal, and in some cases, momentum can be used. A cost function can be used to calculate the error, and the Cross entropy function can be used as the cost function.

제3 인공지능 모델의 학습이 이루어지는 학습 장치는 학습된 제3 인공지능 모델을 활용하여 이미지 분석으로 음식의 종류 및 양을 인식하는 장치(200)와 동일한 장치일 수 있고, 별개의 장치일 수도 있다. 이하에서는 제3 인공지능 모델이 학습되는 과정을 설명한다.The learning device in which learning of the third artificial intelligence model is performed may be the same device as the device 200 that recognizes the type and amount of food through image analysis using the learned third artificial intelligence model, or may be a separate device. . Below, the process by which the third artificial intelligence model is learned is explained.

제3 인공지능 모델은 트레이닝 샘플들이 입력되는 입력 레이어와 트레이닝 출력들을 출력하는 출력 레이어를 포함하고, 트레이닝 출력들과 제1 레이블들 사이의 차이에 기초하여 학습될 수 있다. 여기서, 제1 레이블들은 음식의 종류별 대표 이미지와 각 음식의 중량별 대표 이미지에 기초하여 정의될 수 있다. 제3 인공지능 모델은 복수의 노드들의 그룹으로 연결되어 있고, 연결된 노드들 사이의 가중치들과 노드들을 활성화시키는 활성화 함수에 의해 정의된다. The third artificial intelligence model includes an input layer through which training samples are input and an output layer through which training outputs are output, and may be learned based on the difference between the training outputs and the first labels. Here, the first labels may be defined based on representative images for each type of food and representative images for each weight of each food. The third artificial intelligence model is connected to a group of multiple nodes, and is defined by weights between connected nodes and an activation function that activates the nodes.

학습 장치는 GD(Gradient Decent) 기법 또는 SGD(Stochastic Gradient Descent) 기법을 이용하여 제3 인공지능 모델을 학습시킬 수 있다. 학습 장치는 제3 인공지능 모델의 출력들 및 레이블들 의해 설계된 손실 함수를 이용할 수 있다.The learning device can learn a third artificial intelligence model using the GD (Gradient Descent) technique or the SGD (Stochastic Gradient Descent) technique. The learning device may use a loss function designed by the outputs and labels of the third artificial intelligence model.

학습 장치는 미리 정의된 손실 함수(loss function)을 이용하여 트레이닝 에러를 계산할 수 있다. 손실 함수는 레이블, 출력 및 파라미터를 입력 변수로 미리 정의될 수 있고, 여기서 파라미터는 제3 인공지능 모델 내 가중치들에 의해 설정될 수 있다. 예를 들어, 손실 함수는 MSE(Mean Square Error) 형태, 엔트로피(entropy) 형태 등으로 설계될 수 있는데, 손실 함수가 설계되는 실시예에는 다양한 기법 또는 방식이 채용될 수 있다.The learning device can calculate the training error using a predefined loss function. The loss function may be predefined with labels, outputs, and parameters as input variables, where the parameters may be set by weights in the third artificial intelligence model. For example, the loss function may be designed in the form of MSE (Mean Square Error), entropy, etc., and various techniques or methods may be employed in embodiments in which the loss function is designed.

학습 장치는 역전파(backpropagation) 기법을 이용하여 트레이닝 에러에 영향을 주는 가중치들을 찾아낼 수 있다. 여기서, 가중치들은 제3 인공지능 모델 내 노드들 사이의 관계들이다. 학습 장치는 역전파 기법을 통해 찾아낸 가중치들을 최적화시키기 위해 레이블들 및 출력들을 이용한 SGD 기법을 이용할 수 있다. 예를 들어, 학습 장치는 레이블들, 출력들 및 가중치들에 기초하여 정의된 손실 함수의 가중치들을 SGD 기법을 이용하여 갱신할 수 있다.The learning device can find weights that affect the training error using a backpropagation technique. Here, the weights are relationships between nodes in the third artificial intelligence model. The learning device can use the SGD technique using labels and outputs to optimize the weights found through the backpropagation technique. For example, the learning device can update the weights of the loss function defined based on the labels, outputs, and weights using the SGD technique.

일실시예에 따르면, 학습 장치는 데이터베이스로부터 레이블드 트레이닝 음식 이미지들을 획득할 수 있다. 학습 장치는 음식의 종류별로 설정된 음식 이미지들과 각 음식이 중량별로 설정된 음식 이미지들에 각각 미리 레이블링된 정보를 획득할 수 있는데, 음식 이미지들은 미리 분류된 음식의 종류 및 양에 따라 레이블링될 수 있다.According to one embodiment, the learning device may acquire labeled training food images from a database. The learning device can acquire pre-labeled information on food images set by type of food and food images set by weight of each food, and the food images can be labeled according to the type and amount of pre-classified food. .

일실시예에 따르면, 학습 장치는 1000개의 레이블드 트레이닝 음식 이미지들을 획득할 수 있으며, 레이블드 트레이닝 음식 이미지들에 기초하여 제1 트레이닝 음식 벡터들을 생성할 수 있다. 제1 트레이닝 음식 벡터들을 추출하는데는 다양한 방식이 채용될 수 있다.According to one embodiment, the learning device can acquire 1000 labeled training food images and generate first training food vectors based on the labeled training food images. Various methods can be employed to extract the first training food vectors.

일실시예에 따르면, 학습 장치는 제1 트레이닝 음식 벡터들을 제3 인공지능 모델에 적용하여 제1 트레이닝 출력들을 획득할 수 있다. 학습 장치는 제1 트레이닝 출력들과 제1 레이블들에 기초하여 제3 인공지능 모델을 학습시킬 수 있다. 학습 장치는 제1 트레이닝 출력들에 대응하는 트레이닝 에러들을 계산하고, 그 트레이닝 에러들을 최소화하기 위해 제3 인공지능 모델 내 노드들의 연결 관계를 최적화하여 제3 인공지능 모델을 학습시킬 수 있다. 이를 통해, 제3 인공지능 모델은 이미지 내에 있는 음식의 종류와 음식의 양을 인식할 수 있다.According to one embodiment, the learning device may obtain first training outputs by applying the first training food vectors to the third artificial intelligence model. The learning device may learn a third artificial intelligence model based on the first training outputs and first labels. The learning device may learn the third artificial intelligence model by calculating training errors corresponding to the first training outputs and optimizing the connection relationship of nodes in the third artificial intelligence model to minimize the training errors. Through this, the third artificial intelligence model can recognize the type and amount of food in the image.

S705 단계에서, 장치(200)는 제4 출력 신호를 기초로, 제1 사용자가 제1 중량의 제1 음식을 먹는 것으로 분석할 수 있다.In step S705, the device 200 may analyze that the first user eats the first food of the first weight based on the fourth output signal.

즉, 장치(200)는 제1 음식 및 제1 중량을 나타내는 제4 출력 신호가 획득되면, 제4 출력 신호를 기초로, 제1 음식 및 제1 중량을 확인하고, 이를 통해, 제1 사용자가 제1 중량의 제1 음식을 먹는 것으로 분석할 수 있다.That is, when the fourth output signal representing the first food and the first weight is obtained, the device 200 confirms the first food and the first weight based on the fourth output signal, and through this, the first user It can be analyzed as eating the first food of the first weight.

장치(200)는 제1 사용자가 제1 중량의 제1 음식을 먹기 위해 제1 음식을 촬영한 것을 알려주는 알림 메시지를 제1 사용자 단말(110)로 전송할 수 있다. 이때, 장치(200)는 알림 메시지 확인을 통해 제1 음식 및 제1 중량 중 적어도 하나에 대한 수정 요청이 수신되면, 수정 요청된 내용을 통해 제3 학습 신호를 생성하고, 제3 인공지능 모델에 제3 학습 신호를 입력하여, 제3 학습 신호를 통해 제3 인공지능 모델이 학습되어 갱신되도록 처리할 수 있다.The device 200 may transmit a notification message to the first user terminal 110 notifying that the first user has photographed the first food in order to eat the first food of the first weight. At this time, when a request for modification of at least one of the first food and the first weight is received through confirmation of the notification message, the device 200 generates a third learning signal through the contents of the modification request and sends it to the third artificial intelligence model. By inputting a third learning signal, the third artificial intelligence model can be learned and updated through the third learning signal.

S706 단계에서, 장치(200)는 제1 음식의 단위중량 당 칼로리를 제1 수치로 확인할 수 있다. 이때, 장치(200)는 제1 음식 정보를 기초로, 제1 음식의 단위중량 당 섭취 칼로리가 얼마인지 확인하여, 확인된 칼로리를 제1 수치로 설정할 수 있다. 여기서, 제1 음식 정보는 데이터베이스 또는 외부 서버를 통해 획득될 수 있다.In step S706, the device 200 may check the calories per unit weight of the first food as a first value. At this time, the device 200 may check how many calories are consumed per unit weight of the first food based on the first food information and set the confirmed calories as the first value. Here, the first food information may be obtained through a database or an external server.

S707 단계에서, 장치(200)는 제1 음식의 단위중량 당 칼로리가 제1 수치로 확인되면, 제1 수치 및 제1 중량을 곱한 값으로 제2 수치를 산출할 수 있다.In step S707, when the calories per unit weight of the first food are confirmed to be a first value, the device 200 may calculate a second value by multiplying the first value and the first weight.

예를 들어, 제1 음식의 단위중량 당 칼로리가 1g 당 2칼로리로 설정되어 있고, 제1 중량이 300g으로 확인된 경우, 장치(200)는 (2 X 300)을 통해 산출된 600칼로리를 제2 수치로 산출할 수 있다.For example, if the calories per unit weight of the first food are set to 2 calories per 1g and the first weight is confirmed to be 300g, the device 200 provides 600 calories calculated through (2 2 It can be calculated as a number.

S708 단계에서, 장치(200)는 제1 기간 내에 제1 사용자가 제1 음식을 먹은 것으로 확인되면, 제1 기간의 총 칼로리 섭취량에 제2 수치를 추가할 수 있다.In step S708, if it is confirmed that the first user ate the first food within the first period, the device 200 may add a second value to the total calorie intake of the first period.

구체적으로, 제1 사용자는 제1 사용자 단말(110)을 통해 제1 음식에 대한 촬영을 수행한 후 촬영한 제1 음식을 제1 기간 내에 먹은 경우, 제1 사용자 단말(110)의 화면에 표시된 제1 음식의 식사 완료 버튼이 제1 기간 내에 선택되면, 장치(200)는 제1 사용자 단말(110)로부터 제1 음식의 식사 완료 처리 요청을 수신할 수 있고, 제1 기간 내에 제1 음식의 식사 완료 처리 요청이 수신되면, 제1 기간 내에 제1 사용자가 제1 음식을 먹은 것으로 확인할 수 있고, 제1 기간 내에 제1 사용자가 제1 음식을 먹은 것으로 확인되면, 제1 기간의 총 칼로리 섭취량에 제2 수치를 추가할 수 있다.Specifically, if the first user captures the first food through the first user terminal 110 and then eats the captured first food within the first period, the image displayed on the screen of the first user terminal 110 If the meal completion button of the first food is selected within the first period, the device 200 may receive a request for processing the meal completion of the first food from the first user terminal 110, and the meal completion processing request of the first food may be completed within the first period. When a meal completion processing request is received, it can be confirmed that the first user ate the first food within the first period, and if it is confirmed that the first user ate the first food within the first period, the total calorie intake in the first period A second value can be added to .

도 8은 일실시예에 따른 실제 먹은 양을 확인하여 사용자의 섭취 칼로리를 추정하는 과정을 설명하기 위한 순서도이다.Figure 8 is a flow chart for explaining the process of estimating the user's calorie intake by confirming the actual amount eaten according to one embodiment.

도 8을 참조하면, 먼저, S801 단계에서, 장치(200)는 제1 사용자 단말(110)로부터 남아있는 제1 음식을 촬영하여 생성된 제2 이미지를 수신할 수 있다.Referring to FIG. 8 , first, in step S801, the device 200 may receive a second image generated by photographing the remaining first food from the first user terminal 110.

구체적으로, 제1 사용자 단말(110)은 제1 사용자 단말(110)에 구비된 카메라를 이용하여 제1 사용자가 제1 음식을 먹은 이후에 남아있는 제1 음식에 대한 촬영을 수행하여 제2 이미지를 생성할 수 있으며, 장치(200)는 제1 사용자 단말(110)의 카메라를 이용하여 제1 사용자가 제1 음식을 먹은 이후에 남아있는 제1 음식에 대한 촬영이 수행되면, 제1 사용자 단말(110)로부터 남아있는 제1 음식을 촬영하여 생성된 제2 이미지를 수신할 수 있다.Specifically, the first user terminal 110 uses a camera provided in the first user terminal 110 to photograph the first food remaining after the first user eats the first food to create a second image. Can be generated, and when the device 200 uses the camera of the first user terminal 110 to photograph the first food remaining after the first user eats the first food, the first user terminal 110 A second image generated by photographing the remaining first food may be received from 110 .

S802 단계에서, 장치(200)는 제2 이미지를 인코딩 하여 제5 입력 신호를 생성할 수 있다.In step S802, the device 200 may generate a fifth input signal by encoding the second image.

S803 단계에서, 장치(200)는 제5 입력 신호를 미리 학습된 제3 인공지능 모델에 입력할 수 있다.In step S803, the device 200 may input the fifth input signal to the third artificial intelligence model learned in advance.

S804 단계에서, 장치(200)는 제5 입력 신호를 통해 음식의 종류가 제1 음식으로 인식되고 음식의 양이 제2 중량으로 인식되면, 제3 인공지능 모델로부터 제1 음식 및 제2 중량을 나타내는 제5 출력 신호를 획득할 수 있다.In step S804, when the type of food is recognized as the first food and the amount of food is recognized as the second weight through the fifth input signal, the device 200 calculates the first food and the second weight from the third artificial intelligence model. A fifth output signal representing the signal can be obtained.

S805 단계에서, 장치(200)는 제5 출력 신호를 기초로, 제1 사용자가 제2 중량의 제1 음식을 남긴 것으로 분석할 수 있다.In step S805, the device 200 may analyze that the first user left the first food of the second weight based on the fifth output signal.

S806 단계에서, 장치(200)는 제1 중량에서 제2 중량을 차감하여 제3 중량을 산출할 수 있다.In step S806, the device 200 may calculate the third weight by subtracting the second weight from the first weight.

즉, 장치(200)는 먹기 전 제1 음식의 중량인 제1 중량에서, 먹은 후 남긴 제1 음식의 중량인 제2 중량을 차감하여, 제1 사용자가 실제 먹은 음식의 중량인 제3 중량을 산출할 수 있다.That is, the device 200 subtracts the second weight, which is the weight of the first food left after eating, from the first weight, which is the weight of the first food before eating, and calculates the third weight, which is the weight of the food actually eaten by the first user. It can be calculated.

S807 단계에서, 장치(200)는 제1 수치 및 제3 중량을 곱한 값으로 제3 수치를 산출할 수 있다.In step S807, the device 200 may calculate the third value by multiplying the first value and the third weight.

S808 단계에서, 장치(200)는 제1 기간의 총 칼로리 섭취량에 제3 수치를 추가할 수 있다.At step S808, device 200 may add a third number to the total calorie intake for the first period.

즉, 장치(200)는 제1 사용자가 실제 먹은 음식의 중량을 확인하여, 제1 기간의 총 칼로리 섭취량에 제2 수치가 아닌 제3 수치를 추가할 수 있다.That is, the device 200 may check the weight of food actually eaten by the first user and add a third value, rather than a second value, to the total calorie intake in the first period.

도 9는 일실시예에 따른 장치의 구성의 예시도이다.Figure 9 is an exemplary diagram of the configuration of a device according to an embodiment.

일실시예에 따른 장치(200)는 프로세서(210) 및 메모리(220)를 포함한다. 프로세서(210)는 도 1 내지 도 8을 참조하여 전술된 적어도 하나의 장치들을 포함하거나, 도 1 내지 도 8을 참조하여 전술된 적어도 하나의 방법을 수행할 수 있다. 장치(200)를 이용하는 자 또는 단체는 도 1 내지 도 8을 참조하여 전술된 방법들 일부 또는 전부와 관련된 서비스를 제공할 수 있다.Device 200 according to one embodiment includes a processor 210 and memory 220. The processor 210 may include at least one device described above with reference to FIGS. 1 to 8 or may perform at least one method described above with reference to FIGS. 1 to 8 . A person or organization using the device 200 may provide services related to some or all of the methods described above with reference to FIGS. 1 to 8 .

메모리(220)는 전술된 방법들과 관련된 정보를 저장하거나 후술되는 방법들이 구현된 프로그램을 저장할 수 있다. 메모리(220)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.The memory 220 may store information related to the methods described above or store a program in which methods described later are implemented. Memory 220 may be volatile memory or non-volatile memory.

프로세서(210)는 프로그램을 실행하고, 장치(200)를 제어할 수 있다. 프로세서(210)에 의하여 실행되는 프로그램의 코드는 메모리(220)에 저장될 수 있다. 장치(200)는 입출력 장치(도면 미 표시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 유무선 통신을 통해 데이터를 교환할 수 있다.The processor 210 can execute programs and control the device 200. The code of the program executed by the processor 210 may be stored in the memory 220. The device 200 is connected to an external device (eg, a personal computer or a network) through an input/output device (not shown) and can exchange data through wired or wireless communication.

장치(200)는 인공지능 모델을 학습시키거나, 학습된 인공지능 모델을 이용하는데 사용될 수 있다. 메모리(220)는 학습 중인 또는 학습된 인공지능 모델을 포함할 수 있다. 프로세서(210)는 메모리(220)에 저장된 인공지능 모델 알고리즘을 학습시키거나 실행시킬 수 있다. 인공지능 모델을 학습시키는 학습 장치와 학습된 인공지능 모델을 이용하는 장치(200)는 동일할 수도 있고 개별적일 수도 있다.The device 200 may be used to learn an artificial intelligence model or use a learned artificial intelligence model. Memory 220 may include a learning or learned artificial intelligence model. The processor 210 may learn or execute the artificial intelligence model algorithm stored in the memory 220. The learning device that trains the artificial intelligence model and the device 200 that uses the learned artificial intelligence model may be the same or may be separate.

이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented with hardware components, software components, and/or a combination of hardware components and software components. For example, the devices, methods, and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, and a field programmable gate (FPGA). It may be implemented using one or more general-purpose or special-purpose computers, such as an array, programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. A processing device may execute an operating system (OS) and one or more software applications that run on the operating system. Additionally, a processing device may access, store, manipulate, process, and generate data in response to the execution of software. For ease of understanding, a single processing device may be described as being used; however, those skilled in the art will understand that a processing device includes multiple processing elements and/or multiple types of processing elements. It can be seen that it may include. For example, a processing device may include a plurality of processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are possible.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination. Program instructions recorded on the medium may be specially designed and configured for the embodiment or may be known and available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -Includes optical media (magneto-optical media) and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing unit to operate as desired, or may be processed independently or collectively. You can command the device. Software and/or data may be used on any type of machine, component, physical device, virtual equipment, computer storage medium or device to be interpreted by or to provide instructions or data to a processing device. , or may be permanently or temporarily embodied in a transmitted signal wave. Software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described with limited drawings as described above, those skilled in the art can apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order than the described method, and/or components of the described system, structure, device, circuit, etc. are combined or combined in a different form than the described method, or other components are used. Alternatively, appropriate results may be achieved even if substituted or substituted by an equivalent.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims also fall within the scope of the following claims.

Claims (3)

장치에 의해 수행되는, 인공지능 모델을 활용한 사용자 맞춤형 식단 관리 컨설팅 정보 생성의 자동화 처리 및 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스 제공 방법에 있어서,
제1 사용자의 신체 변화에 대한 모니터링 정보를 기초로, 미리 정해진 제1 기간 동안 상기 제1 사용자의 신체 변화를 분석하는 단계;
상기 제1 기간 동안 상기 제1 사용자의 신체 변화를 분석한 결과를 기반으로, 상기 제1 기간의 신체 변화량을 추정하는 단계;
상기 제1 기간의 신체 변화량 및 미리 설정된 상기 제1 사용자의 목표치를 기반으로, 상기 제1 기간의 목표 달성률을 산정하는 단계;
상기 제1 기간의 목표 달성률을 기초로, 상기 제1 사용자의 식단 난이도를 제1 등급으로 설정하는 단계;
상기 제1 기간 이후인 제2 기간이 제1 계절에 속하는 것으로 확인하고, 상기 제1 사용자가 선호하는 음식의 카테고리를 제1 카테고리로 확인하는 단계;
상기 제1 등급, 상기 제1 계절 및 상기 제1 카테고리를 매칭하여 제1 매칭 정보를 생성하는 단계;
상기 제1 매칭 정보를 인코딩 하여 제1 입력 신호를 생성하는 단계;
식단 난이도, 계절 및 선호 음식 카테고리의 분석으로 추천 식단을 선정하도록 학습된 제1 인공지능 모델에 상기 제1 입력 신호를 입력하는 단계;
상기 제1 입력 신호를 통해 상기 제1 사용자의 추천 식단이 선정되면, 상기 제1 인공지능 모델로부터 상기 제1 사용자의 추천 식단을 나타내는 제1 출력 신호를 획득하는 단계;
상기 제1 출력 신호를 기초로, 상기 제1 사용자의 추천 식단을 제1 식단으로 설정하는 단계;
상기 제2 기간 동안 상기 제1 사용자의 맞춤형 식단으로 상기 제1 식단을 추천하는 제1 컨설팅 정보를 생성하는 단계;
상기 제1 컨설팅 정보를 제1 사용자 단말로 전송하는 단계;
상기 제1 사용자의 신체 변화에 대한 모니터링 정보를 기초로, 상기 제2 기간 동안 상기 제1 사용자의 신체 변화를 분석하는 단계;
상기 제2 기간 동안 상기 제1 사용자의 신체 변화를 분석한 결과를 기반으로, 상기 제2 기간의 신체 변화량을 추정하는 단계;
상기 제2 기간의 신체 변화량과 상기 제1 사용자의 목표치를 기반으로, 상기 제2 기간의 목표 달성률을 산정하는 단계;
상기 제2 기간의 목표 달성률이 상기 제1 기간의 목표 달성률 보다 높은 것으로 확인되면, 상기 제1 사용자의 목표치까지 남아있는 잔여 수치를 확인하는 단계;
상기 잔여 수치가 미리 설정된 기준치 보다 큰 것으로 확인되면, 상기 제1 사용자의 식단 난이도를 상기 제1 등급으로 유지하는 단계;
상기 잔여 수치가 상기 기준치 보다 작은 것으로 확인되면, 상기 제1 사용자의 식단 난이도를 상기 제1 등급 보다 쉬운 레벨인 제2 등급으로 변경하는 단계;
상기 제2 기간의 목표 달성률이 상기 제1 기간의 목표 달성률 보다 낮은 것으로 확인되면, 상기 제1 사용자의 식단 난이도를 상기 제1 등급 보다 어려운 레벨인 제3 등급으로 변경하는 단계;
상기 제2 기간 이후인 제3 기간이 제2 계절에 속하는 것으로 확인하는 단계;
상기 제1 사용자의 식단 난이도가 상기 제1 등급으로 유지된 경우, 상기 제1 등급, 상기 제2 계절 및 상기 제1 카테고리를 매칭하여 제2 매칭 정보를 생성하고, 상기 제1 사용자의 식단 난이도가 상기 제2 등급으로 변경된 경우, 상기 제2 등급, 상기 제2 계절 및 상기 제1 카테고리를 매칭하여 제2 매칭 정보를 생성하고, 상기 제1 사용자의 식단 난이도가 제3 등급으로 변경된 경우, 상기 제3 등급, 상기 제2 계절 및 상기 제1 카테고리를 매칭하여 제2 매칭 정보를 생성하는 단계;
상기 제2 매칭 정보를 인코딩 하여 제2 입력 신호를 생성하는 단계;
상기 제1 인공지능 모델에 상기 제2 입력 신호를 입력하는 단계;
상기 제2 입력 신호를 통해 상기 제1 사용자의 추천 식단이 선정되면, 상기 제1 인공지능 모델로부터 상기 제1 사용자의 추천 식단을 나타내는 제2 출력 신호를 획득하는 단계;
상기 제2 출력 신호를 기초로, 상기 제1 사용자의 추천 식단을 제2 식단으로 설정하는 단계;
상기 제3 기간 동안 상기 제1 사용자의 맞춤형 식단으로 상기 제2 식단을 추천하는 제2 컨설팅 정보를 생성하는 단계;
상기 제2 컨설팅 정보를 상기 제1 사용자 단말로 전송하는 단계;
상기 제2 기간의 목표 달성률이 상기 제1 기간의 목표 달성률 보다 낮은 것으로 확인된 경우, 상기 제1 사용자의 멘탈 헬스 점검이 필요한 것으로 판단하는 단계;
상기 제1 사용자의 게시물 업로드 내역, 상기 제1 사용자의 위치 이동 내역, 상기 제1 사용자의 음악 청취 내역, 상기 제1 사용자의 영상 시청 내역 및 상기 제1 사용자의 게시글 조회 내역 중 적어도 하나를 포함하는 상기 제1 사용자의 활동 자료를 수집하는 단계;
상기 제1 사용자의 활동 자료에서 상기 제2 기간 동안 수행한 활동 내역을 제1 활동 자료로 추출하는 단계;
상기 제1 활동 자료를 기반으로, 상기 제2 기간 동안의 활동 상태를 나타내는 활동 키워드를 분석하는 단계;
상기 활동 키워드에 기초하여, 미리 설정된 분류 기준에 따라 상기 제1 사용자의 멘탈 헬스에 문제가 있는지 여부를 진단하는 단계; 및
상기 제1 사용자의 멘탈 헬스에 제1 유형의 문제가 있는 것으로 진단되면, 상기 제1 유형의 문제에 대한 상담을 권유하는 알림 메시지를 상기 제1 사용자 단말로 전송하는 단계를 포함하고,
상기 제1 기간 동안 상기 제1 사용자의 신체 변화를 분석하는 단계는,
상기 제1 기간 동안 상기 제1 사용자의 섭취 칼로리를 취합하여, 상기 제1 기간의 총 칼로리 섭취량을 산출하는 단계;
상기 제1 기간 동안 상기 제1 사용자의 소모 칼로리를 취합하여, 상기 제1 기간의 활동 대사량을 산출하는 단계;
상기 제1 사용자의 성별, 나이, 체중 및 키를 기반으로, 상기 제1 사용자의 기초 대사량을 산출하는 단계;
상기 제1 기간의 총 칼로리 섭취량, 상기 제1 기간의 활동 대사량 및 상기 제1 사용자의 기초 대사량을 매칭하여, 제3 매칭 정보를 생성하는 단계;
상기 제3 매칭 정보를 인코딩 하여 제3 입력 신호를 생성하는 단계;
총 칼로리 섭취량, 활동 대사량 및 기초 대사량의 분석으로 신체 변화를 파악하도록 학습된 제2 인공지능 모델에 상기 제3 입력 신호를 입력하는 단계;
상기 제3 입력 신호를 통해 상기 제1 사용자의 신체 변화가 파악되면, 상기 제2 인공지능 모델로부터 상기 제1 사용자의 신체 변화를 나타내는 제3 출력 신호를 획득하는 단계; 및
상기 제3 출력 신호를 기초로, 상기 제1 기간 동안 상기 제1 사용자의 신체 변화를 분석하는 단계를 포함하는,
인공지능 모델을 활용한 사용자 맞춤형 식단 관리 컨설팅 정보 생성의 자동화 처리 및 이를 이용한 식단 관리 서비스 및 멘탈 헬스 케어 서비스 제공 방법.
In the method of automatically processing the creation of customized diet management consulting information using an artificial intelligence model performed by a device and providing diet management services and mental health care services using the same,
Analyzing a change in the body of the first user for a first predetermined period of time based on monitoring information about the change in the body of the first user;
estimating the amount of physical change in the first period based on a result of analyzing the physical change of the first user during the first period;
calculating a goal achievement rate in the first period based on the amount of physical change in the first period and a preset target value of the first user;
setting the diet difficulty level of the first user to a first level based on the goal achievement rate of the first period;
Confirming that the second period after the first period belongs to the first season, and confirming that the food category preferred by the first user is the first category;
Generating first matching information by matching the first grade, the first season, and the first category;
Generating a first input signal by encoding the first matching information;
Inputting the first input signal to a first artificial intelligence model trained to select a recommended diet through analysis of diet difficulty, season, and preferred food category;
When the recommended diet for the first user is selected through the first input signal, obtaining a first output signal representing the recommended diet for the first user from the first artificial intelligence model;
Setting the recommended diet of the first user as a first diet based on the first output signal;
generating first consulting information recommending the first diet as a customized diet for the first user during the second period;
Transmitting the first consulting information to a first user terminal;
Analyzing a change in the body of the first user during the second period based on monitoring information about the change in the body of the first user;
estimating the amount of physical change in the second period based on a result of analyzing the physical change of the first user during the second period;
calculating a goal achievement rate in the second period based on the amount of physical change in the second period and the target value of the first user;
If it is confirmed that the goal achievement rate of the second period is higher than the goal achievement rate of the first period, checking the remaining value remaining up to the target value of the first user;
If the remaining value is confirmed to be greater than a preset standard value, maintaining the diet difficulty level of the first user at the first level;
If the remaining value is confirmed to be less than the reference value, changing the difficulty level of the first user's diet to a second level that is easier than the first level;
If it is confirmed that the goal achievement rate of the second period is lower than the goal achievement rate of the first period, changing the diet difficulty level of the first user to a third level that is more difficult than the first level;
confirming that a third period after the second period belongs to a second season;
When the first user's diet difficulty level is maintained at the first level, second matching information is generated by matching the first grade, the second season, and the first category, and the first user's diet difficulty level is When changed to the second grade, second matching information is generated by matching the second grade, the second season, and the first category, and when the diet difficulty of the first user is changed to the third grade, the first user's diet difficulty level is changed to the third grade. Generating second matching information by matching 3 grades, the second season, and the first category;
Generating a second input signal by encoding the second matching information;
Inputting the second input signal to the first artificial intelligence model;
When the recommended diet for the first user is selected through the second input signal, obtaining a second output signal representing the recommended diet for the first user from the first artificial intelligence model;
setting the recommended diet of the first user as a second diet based on the second output signal;
generating second consulting information recommending the second diet as a customized diet for the first user during the third period;
Transmitting the second consulting information to the first user terminal;
When it is confirmed that the goal achievement rate of the second period is lower than the goal achievement rate of the first period, determining that a mental health check of the first user is necessary;
Containing at least one of the first user's posting upload history, the first user's location movement history, the first user's music listening history, the first user's video viewing history, and the first user's post viewing history collecting activity data of the first user;
extracting activity details performed during the second period from the activity data of the first user as first activity data;
Analyzing activity keywords indicating an activity state during the second period based on the first activity data;
Based on the activity keyword, diagnosing whether there is a problem with the first user's mental health according to a preset classification standard; and
When it is diagnosed that the first user has a first type of mental health problem, transmitting a notification message recommending consultation for the first type of problem to the first user terminal,
Analyzing changes in the body of the first user during the first period,
collecting the calories consumed by the first user during the first period and calculating the total calorie intake of the first period;
calculating an active metabolic rate for the first period by collecting calories consumed by the first user during the first period;
calculating the basal metabolic rate of the first user based on the gender, age, weight, and height of the first user;
Generating third matching information by matching the total calorie intake of the first period, the active metabolic rate of the first period, and the basal metabolic rate of the first user;
Generating a third input signal by encoding the third matching information;
Inputting the third input signal to a second artificial intelligence model learned to identify body changes through analysis of total calorie intake, active metabolic rate, and basal metabolic rate;
When the physical change of the first user is identified through the third input signal, obtaining a third output signal representing the physical change of the first user from the second artificial intelligence model; and
Based on the third output signal, analyzing a change in the body of the first user during the first period of time,
Automated processing of user-tailored diet management consulting information generation using an artificial intelligence model and a method of providing diet management services and mental health care services using this.
삭제delete 삭제delete
KR1020230095831A 2023-07-24 2023-07-24 Method, device and system for providing diet management service and mental health care service using it and automated processing of user customized diet management consulting information creation using artificial intelligence model KR102615749B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230095831A KR102615749B1 (en) 2023-07-24 2023-07-24 Method, device and system for providing diet management service and mental health care service using it and automated processing of user customized diet management consulting information creation using artificial intelligence model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230095831A KR102615749B1 (en) 2023-07-24 2023-07-24 Method, device and system for providing diet management service and mental health care service using it and automated processing of user customized diet management consulting information creation using artificial intelligence model

Publications (1)

Publication Number Publication Date
KR102615749B1 true KR102615749B1 (en) 2023-12-19

Family

ID=89385353

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230095831A KR102615749B1 (en) 2023-07-24 2023-07-24 Method, device and system for providing diet management service and mental health care service using it and automated processing of user customized diet management consulting information creation using artificial intelligence model

Country Status (1)

Country Link
KR (1) KR102615749B1 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102197102B1 (en) 2020-03-21 2020-12-30 (주)유도리 Diet mental care system
KR102371787B1 (en) 2021-01-25 2022-03-10 강병우 System for providing customized dietary management service
KR102467888B1 (en) * 2022-08-02 2022-11-16 윤태훈 A system and method for creating a customized diet
KR102459892B1 (en) 2020-04-28 2022-11-18 더보라수 주식회사 System and methode of personalized diet management based on personal health information
KR20230056533A (en) * 2021-07-23 2023-04-27 주식회사 샐러딧 Method and device for providing salad menu recommendation service
KR20230057610A (en) * 2021-10-22 2023-05-02 송영범 Meal recommendation system
KR20230109455A (en) 2022-01-13 2023-07-20 김다정 Management server, method for proving customized diet and recording medium

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102197102B1 (en) 2020-03-21 2020-12-30 (주)유도리 Diet mental care system
KR102459892B1 (en) 2020-04-28 2022-11-18 더보라수 주식회사 System and methode of personalized diet management based on personal health information
KR102371787B1 (en) 2021-01-25 2022-03-10 강병우 System for providing customized dietary management service
KR20230056533A (en) * 2021-07-23 2023-04-27 주식회사 샐러딧 Method and device for providing salad menu recommendation service
KR20230057610A (en) * 2021-10-22 2023-05-02 송영범 Meal recommendation system
KR20230109455A (en) 2022-01-13 2023-07-20 김다정 Management server, method for proving customized diet and recording medium
KR102467888B1 (en) * 2022-08-02 2022-11-16 윤태훈 A system and method for creating a customized diet

Similar Documents

Publication Publication Date Title
KR102404511B1 (en) Method, device and system for recommending customized product information based on artificial intelligence
KR102553041B1 (en) Method, device and system for providing matching platform service between user and interior supplier based on artificial intelligence model
Vidhya et al. Deep learning based big medical data analytic model for diabetes complication prediction
KR102506472B1 (en) Method, device and system for providing hyper-personalized customized food purchase recommendation service based on artificial intelligence
KR102546871B1 (en) Method, device and system for recommending order information through pattern analysis of order history regarding distribustion of food materials and subsidiary materials for business to business based on artificial intelligence model
KR102447426B1 (en) Method, device and system for recommending lifestyle guide information analyzing personal color and timeline based behavioral data for hyper personalization
KR102494380B1 (en) Method, apparatus and system for providing baby health diagnosis solution by using diaperstool image
KR102601446B1 (en) Method, device and system for providing sales product matching platform service based on influencer using artificial intelligence model
KR102530527B1 (en) Method, device and system for providing restaurant recommendation service based on health information
KR102564996B1 (en) Method, device and system for providing user customized health functional food curation service based on artificial intelligence
KR102612058B1 (en) Method, device and system for operating smart factory through prediction of defect rate based on artificial intelligence model
KR102463875B1 (en) Method, device and system for providing personalized psychotherapy content using big data
KR102552856B1 (en) Method, device and system for automating creation of content template and extracting keyword for platform service that provide content related to commerce
KR102508648B1 (en) Emergency monitoring method, device and system based on malfunction judgment of electric and firefighting equipment
KR102615749B1 (en) Method, device and system for providing diet management service and mental health care service using it and automated processing of user customized diet management consulting information creation using artificial intelligence model
KR102447046B1 (en) Method, device and system for designing clinical trial protocol based on artificial intelligence
Huang A mental disorder prediction model with the ability of deep information expression using convolution neural networks technology
KR102474974B1 (en) Method, device and system for analyzing brand based on artificial intelligence
KR102546807B1 (en) Method, apparatus and system for providing nutritional information based on fecal image analysis
KR102615747B1 (en) Method, device and system for providing food calorie estimation and user customized body change information visualization service using artificial intelligence model
KR102636797B1 (en) Method, device and system for providing solution for this analizing user psychological state through analysis of hashtag based note topic and note content using artificial intelligence
KR102669470B1 (en) Method, device and system for inventory management and demand forecasting for food material distribution processing
KR102563687B1 (en) Method, device and system for providing hearing aid management platform service for hearing aid user and guardian
KR102618066B1 (en) Method, device and system for strengthening military security based on natural language process and image compare in soldier based community application
KR102565229B1 (en) Method, apparatus and system for providing user-customized nutritional supplement food scheduling and ordering platform service using artificial intelligence model

Legal Events

Date Code Title Description
GRNT Written decision to grant