System
A system that analyzes user meal data and coupon information to provide personalized meal suggestions, improving efficiency and reducing costs by leveraging feedback loops.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-19
- Publication Date
- 2026-03-04
AI Technical Summary
Individuals face difficulties in choosing meals that align with their preferences and economic options, leading to inefficiencies and increased costs due to the lack of systems that consider personal preferences and eating cycles.
A system where users post daily meals, which are analyzed by a server to generate personalized meal suggestions based on preferences and coupon information, with feedback loops to improve the suggestion algorithm.
Reduces the time and effort required for meal selection, provides appropriate meal suggestions, and offers economic benefits by utilizing the latest coupon information.
Smart Images

Figure 2026035238000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] The problem that this invention aims to solve is that many people face the problem of "what to eat" in their daily lives and find it difficult to make that choice. There are also situations where people are unable to maximize their economical options when eating out or purchasing ingredients. This creates a hassle and economic burden when choosing meals. Another problem is the lack of systems that can suggest appropriate meals that take into account individual preferences and eating cycles. [Means for solving the problem]
[0005] In order to solve the above problems, the present invention provides the following means. A user posts their daily meals, and the data is sent from their device to a server. The server stores the received meal data and has means for analyzing it. The server also has means for externally collecting the latest coupon information and discount information. The server has means for generating appropriate meal suggestions based on the user's preference data, meal history, and collected coupon information. These meal suggestions are sent to the user's device, and the user's reactions are sent again from the device to the server. The server has means for analyzing the user's reaction data and improving the suggestion algorithm. This system makes it easier for users to select meals that suit their preferences and enables economical choices that take advantage of the latest coupon information.
[0006] A "user" is a user of the system who posts daily meals, receives suggestions, and responds.
[0007] "Meal data" is data that includes information such as photos of meals posted by users, meal names, comments, and dates and times.
[0008] "Server" is a computer system that receives, stores, and analyzes meal data, collects coupon information, and generates and transmits meal suggestions.
[0009] A "meal suggestion" is a suitable meal suggestion for a user that is generated by the server based on the user's preference data and coupon information.
[0010] "Coupon information" is information describing discounts and special offers that the server collects from external sources.
[0011] "Preference data" is information derived from the user's preferences and eating habits based on meal data posted by the user in the past.
[0012] A "terminal" is a device used by a user that has the function of posting meal data and receiving suggestions from the server.
[0013] "Response data" is data regarding the choices made by the user in response to a proposal, such as "go" or "don't go."
[0014] The "analysis means" is a means by which the server analyzes dietary data and reaction data to improve the user's preferences, dietary cycle, and proposed algorithms. [Brief explanation of the drawings]
[0015] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0016] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0017] First, the terms used in the following description will be explained.
[0018] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0019] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0020] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0021] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0022] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0023] [First embodiment]
[0024] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0025] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0026] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0027] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0028] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0029] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0030] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0031] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0032] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0033] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0034] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0035] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0036] The present invention is a system in which a user posts daily meals, and a server analyzes the data and provides appropriate meal suggestions. Specific embodiments are described below.
[0037] Processing meal posts
[0038] Users post their daily meals through an application or website they use. For example, a user takes a photo of their lunch using their smartphone camera and uploads it to the application with the description "shrimp tomato cream pasta."
[0039] Sending data
[0040] The device sends the posted meal data (photo, meal name, comment, date and time, etc.) to the server. At this time, the device converts the data into JSON format and sends it to the server's API endpoint using an HTTP request.
[0041] Data storage and analysis
[0042] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[0043] Collect the latest coupon information
[0044] The server periodically retrieves the latest coupon and discount information through APIs from partner restaurants and coupon-providing sites, and stores it in an internal database, so that the latest deals can be provided to users.
[0045] Generating meal suggestions
[0046] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. For example, if it is known that the user likes pasta, the server generates a suggestion message of "Seafood pasta with a 20% off coupon from Italian Restaurant A."
[0047] Sending a proposal message
[0048] The server generates a meal suggestion and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0049] Record of responses to the proposal
[0050] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[0051] Sending reaction data
[0052] The terminal transmits the user's reaction data to the server in response to the suggestion. For example, information indicating that the user selected "Go" is transmitted from the terminal to the server.
[0053] Improvement of the proposed algorithm
[0054] The server analyzes the user's reaction data and updates the algorithm to refine future meal recommendations. Specifically, the server feeds the reaction data back into the machine learning model to retrain or adjust the parameters of the recommendation algorithm.
[0055] By using this system, users can reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. They can also enjoy economic benefits by taking advantage of the latest coupon information.
[0056] The processing flow will be explained below.
[0057] Step 1:
[0058] The user launches the application, takes a photo of the meal, and enters the meal description (for example, "shrimp tomato cream pasta") and a comment.
[0059] Step 2:
[0060] The device converts the input meal data (photo, meal name, comment, date and time) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0061] Step 3:
[0062] The server stores the received meal data in a database, and inserts the data into the corresponding table using a database language (e.g., SQL).
[0063] Step 4:
[0064] The server analyzes the stored meal data using machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[0065] Step 5:
[0066] The server retrieves the latest coupon and discount information through the APIs of partner restaurants and coupon providers, and stores it in an internal database. The server periodically makes API calls to retrieve new coupon information.
[0067] Step 6:
[0068] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. For example, if it is known that the user likes pasta, the server will generate a suggestion message of "Seafood pasta with a 20% off coupon from Italian Restaurant A."
[0069] Step 7:
[0070] The server generates a suggestion message and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0071] Step 8:
[0072] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[0073] Step 9:
[0074] The device converts the response data to the user's suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[0075] Step 10:
[0076] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain or adjust the parameters of the recommendation algorithm.
[0077] Example 1
[0078] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0079] In today's world, many people lead busy lives that make it difficult to devote time and effort to daily meal selection. Furthermore, it is rare for users to receive recommendations that best suit their individual preferences and eating patterns, and it is difficult to efficiently utilize coupon and discount information. Therefore, there is a need for a system that allows users to more easily select appropriate meals while simultaneously enjoying economic benefits.
[0080] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0081] In this invention, the server includes: a means for users to post their daily meals; a means for transmitting the posted meal data to the server via a terminal; a means for the server to store the received meal data and analyze it using a machine learning model; a means for the server to collect the latest coupon information and discount information; a means for the server to generate meal suggestions based on the user's preference data, meal history, and collected coupon information; a means for the server to transmit the meal suggestions to the user's terminal; a means for the terminal to record the user's reactions to the suggestions and transmit them to the server; and a means for the server to analyze the user's reaction data and improve the suggestion algorithm based on the machine learning model. This allows users to reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. Furthermore, users can enjoy economic benefits by utilizing the latest coupon information.
[0082] "User" refers to an individual who uses the system to receive meal submissions and suggestions.
[0083] "Means for posting" refers to means that provides a function for users to record meal data (photos, meal names, comments, date and time) and send it to the server via the application.
[0084] A "terminal" is an electronic device (such as a smartphone, PC, or tablet) that a user uses to post their daily meals and send them to the server.
[0085] The "server" is a central management system that stores meal data, analyzes it using machine learning models, and makes recommendations.
[0086] A "machine learning model" is an algorithm or method that uses data to learn and predict and analyze user preferences and behavioral patterns.
[0087] The "analyzing means" is a means for processing the meal data received by the server and providing a function for analyzing the user's preferences and meal cycles.
[0088] "Coupon information" is information about discounts and special offers available to users.
[0089] The "collection means" is a means for providing a function for obtaining coupon information and discount information from information sources affiliated with the server.
[0090] "Meal suggestions" are specific meal or restaurant information recommended to the user based on the data analyzed and collected information by the server.
[0091] The "means for generating meal suggestions" refers to a means for providing a function for the server to form optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[0092] The "means for sending meal suggestions" refers to a means for providing a function for sending meal suggestions generated by the server to the user's device as push notifications or in-app messages.
[0093] The "means for recording a reaction to a suggestion" is a means for providing a function for recording on the terminal whether or not the user is interested in a meal suggestion.
[0094] "Response data" is information regarding the user's choice, such as "go" or "don't go," in response to a meal suggestion.
[0095] A "suggestion algorithm" is a calculation method for making optimal meal suggestions to users.
[0096] The "means for improving the proposed algorithm" is a means for providing a function for updating the proposed algorithm based on a machine learning model using user response data.
[0097] MODE FOR CARRYING OUT THE INVENTION
[0098] The present invention is a system in which a user posts daily meals, and a server analyzes the data and provides appropriate meal suggestions. Specific embodiments are described below.
[0099] Hardware used
[0100] This system requires a device (smartphone, PC, tablet, etc.) for use by the user and a server for analyzing and storing the data. The server should ideally be a computer equipped with a high-performance processor and large-capacity storage.
[0101] Software used
[0102] User interface for applications or websites
[0103] HTTP request library used to send data
[0104] Database management system (e.g., MySQL (registered trademark), PostgreSQL)
[0105] Machine learning models (e.g., TENSORFLOW(registered trademark), PyTorch)
[0106] Detailed processing instructions
[0107] Processing meal posts
[0108] Users post their meals using a dedicated application or website. For example, they can take a photo of "shrimp tomato cream pasta" with their smartphone camera and post it with the comment "It was delicious." Below is an example of a prompt sentence to be input to the generative AI model.
[0109] Example prompt:
[0110] "After users post photos and comments about their meals using their smartphones, what kind of data processing is done and how are optimal meal suggestions generated?"
[0111] Sending data
[0112] The device converts the food data posted by the user into JSON format and sends it to the server's API endpoint using the HTTPS protocol. For example, the device sends data to the "POST / api / fooddata" endpoint.
[0113] Data storage and analysis
[0114] The server stores the received meal data in a database and analyzes it using a machine learning model. During this analysis, the server learns the user's preferences and eating habits. For example, by analyzing data from the past month, the server can determine the user's preference for pasta and Italian food.
[0115] Collect the latest coupon information
[0116] The server periodically calls the APIs of partner restaurants and coupon providers to retrieve the latest coupon and discount information and store it in the database. For example, the server accesses the "GET / api / coupons" endpoint to retrieve new coupon information.
[0117] Generating meal suggestions
[0118] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. Specifically, it uses a machine learning algorithm to suggest "seafood pasta with a 20% off coupon from Italian Restaurant A."
[0119] Sending a proposal message
[0120] The server sends the generated meal suggestions to the user's device as a push notification or in-app message. For example, it sends a message saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0121] Record of responses to the proposal
[0122] The user receives the suggestion message and selects "Go" or "Don't go." This selection is recorded in the terminal.
[0123] Sending reaction data
[0124] The terminal converts the user's selection data into JSON format and sends it to the server's API endpoint using the HTTPS protocol. For example, the terminal sends data to the "POST / api / reaction" endpoint.
[0125] Improvement of the proposed algorithm
[0126] The server analyzes the received user reaction data and improves the algorithm by retraining the machine learning model, using the new reaction data to adjust the model's parameters and improve future accuracy.
[0127] Overall, by using this system, users can reduce the time and effort required for daily meal selection, receive appropriate and satisfying meal suggestions, and enjoy economic benefits by taking advantage of the latest coupon information.
[0128] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0129] Step 1:
[0130] A user posts a meal through an application or website.
[0131] Input: Data entered by the user, such as a photo of the meal, the name of the meal, comments, and the date and time
[0132] Specific operation: The user takes a photo of "Shrimp Tomato Cream Pasta" with the smartphone camera and enters the comment "It was delicious."
[0133] Output: Digital data (photo files, text information) temporarily stored on the user's device
[0134] Step 2:
[0135] The device sends the meal data to the server.
[0136] Input: Meal data (photo files, text information) temporarily saved on the user's device
[0137] Specific operation: The device converts this data into JSON format and sends it to the "POST / api / fooddata" endpoint via an HTTP request.
[0138] Output: JSON formatted meal data received by the server
[0139] Step 3:
[0140] The server stores the received meal data and analyzes it using machine learning models.
[0141] Input: JSON formatted meal data received by the server
[0142] Specific operation: The server saves the data in a database (e.g., MySQL), analyzes the user's preferences and eating habits using a machine learning model (e.g., TensorFlow), and executes an SQL query to insert the data into the database.
[0143] Output: Food data stored in a database and analysis results showing the user's preferences
[0144] Step 4:
[0145] The server collects the latest coupon and discount information.
[0146] Input: Information collected from coupon providing sites and APIs of partner restaurants
[0147] Specific operation: The server periodically accesses the "GET / api / coupons" endpoint and saves the obtained coupon information in an internal database.
[0148] Output: Latest coupon and discount information stored in the database
[0149] Step 5:
[0150] The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[0151] Input: User preference data stored on the server, meal history, latest coupon information
[0152] Specific operation: Using machine learning algorithms, it generates meal suggestions suitable for the user. For example, if the user likes pasta, it generates "Seafood pasta with a 20% off coupon from Italian restaurant A."
[0153] Output: Message data as generated meal suggestions
[0154] Step 6:
[0155] The server sends the generated meal suggestions to the user's terminal.
[0156] Input: A meal suggestion message generated within the server
[0157] Specific behavior: The server uses the push notification API or in-app messaging function to send a message saying, "Today, Italian Restaurant A is offering 20% off seafood pasta. Why not come and try it?"
[0158] Output: Meal suggestion message received on user's device
[0159] Step 7:
[0160] The user records their reaction to the suggestion message.
[0161] Input: User's "Go" or "Don't Go" choice
[0162] Specific operation: The user presses the "Go" button within the application, and the selection is recorded and saved on the device.
[0163] Output: Reaction data recorded on the user's terminal
[0164] Step 8:
[0165] The terminal transmits the user's reaction data to the server.
[0166] Input: Response data recorded on the user's device (e.g., "Go" or "Don't go")
[0167] Specific operation: The terminal converts the reaction data into JSON format and sends it to the "POST / api / reaction" endpoint.
[0168] Output: Reaction data that reaches the server
[0169] Step 9:
[0170] The server analyzes user response data and improves the proposed algorithm based on machine learning models.
[0171] Input: Reaction data arriving at the server
[0172] What it does: The server feeds new reaction data back into the machine learning model (e.g., TensorFlow) to retrain and adjust the model parameters.
[0173] Output: Improved proposed algorithm
[0174] (Application example 1)
[0175] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0176] Conventional meal management systems simply store a user's daily meal data and are unable to analyze and utilize the user's preferences or eating patterns. They also struggle to provide appropriate meal suggestions to users, and lack a mechanism for learning from the user's reactions to suggestions to improve the system's accuracy. Furthermore, it is difficult to obtain coupon and discount information in real time and make suggestions based on that information. This means that users are unable to receive effective meal suggestions and are unable to enjoy economic benefits.
[0177] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0178] In this invention, the server includes: a means for users to post their daily meals; a means for transmitting the posted meal data to the server; a means for the server to store and analyze the received meal data; a means for the server to collect the latest coupon information and discount information; a means for the server to generate meal suggestions based on the user's preference data, meal history, and the collected coupon information; a means for the server to periodically obtain the latest coupon information and discount information through the API of an online service affiliated with the server; a means for the server to send the meal suggestions to the user's mobile device as a push notification or in-app message; a means for the device to record the user's responses to the suggestions and transmit them to the server; and a means for the server to analyze the user's response data and improve the suggestion algorithm. This enables appropriate meal suggestions based on the user's preferences and eating patterns, and provides economic benefits to the user by obtaining the latest coupon information in real time. Furthermore, the accuracy of the suggestions can be improved by analyzing the user's response data and improving the suggestion algorithm.
[0179] A "user" is an individual or group who posts their daily meals and receives meal suggestions from the system.
[0180] "Meal data" is data that includes information such as photos of meals posted by users, meal names, comments, and dates and times.
[0181] "Server" refers to an information processing system that receives, stores, and analyzes meal data, collects coupon information, and generates meal suggestions.
[0182] "Coupon information" refers to advantageous information provided by affiliated online services, including discount information and special offer information.
[0183] "Dining suggestions" are specific suggestions about meals generated by the server based on the user's preference data, meal history, and coupon information.
[0184] "Preference data" is data that indicates the types and patterns of meals that a user prefers.
[0185] "Diet history" is a collection of meal data posted by a user in the past.
[0186] A "terminal" is a portable information terminal or computer device that a user uses to access the system.
[0187] "Response data" is data indicating the user's response to a meal suggestion (for example, "order," "skip," etc.).
[0188] A "suggestion algorithm" is a set of computational methods and rules for generating optimal meal suggestions to send to users.
[0189] "Push Notifications" or "In-App Messages" are real-time notifications or messages sent from a server to a user's device.
[0190] An "online service API" is a program interface for connecting with external online services.
[0191] The present invention provides a system that allows users to post daily meals and receive meal suggestions. Specific embodiments are described below.
[0192] User Interface Design
[0193] Users post their daily meals using a smartphone app. The app provides an interface for taking photos of meals and entering descriptions (e.g., "cheeseburger"). The meal data entered by the user is converted into JSON format and sent to the server using an HTTP request.
[0194] Server Configuration
[0195] The server is a high-performance information processing system that provides the following main functions:
[0196] 1. Data storage: The server stores the meal data received from the user in a database (e.g., MySQL).
[0197] 2. Data analysis: The server uses machine learning models (e.g., TensorFlow or PyTorch) to analyze the user's dietary data and understand the user's preferences and eating cycles.
[0198] 3. Obtaining coupon information: The server periodically collects the latest coupon and discount information through the APIs of affiliated online services and stores it in an internal database.
[0199] 4. Generating meal suggestions: The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information. For example, if a user likes "cheeseburgers," the server can suggest "restaurants that offer cheeseburgers at a 20% discount."
[0200] 5. Notification function: The server sends meal suggestions to the user's mobile device as push notifications or in-app messages.
[0201] User response and algorithm improvements
[0202] When a user responds to a suggestion by choosing "order" or "skip," the data is recorded on the device and sent to the server, which analyzes the response data to improve the suggestion algorithm, resulting in more refined suggestions for future orders.
[0203] Specific examples
[0204] For example, if a user has a preference for "cheeseburgers" and "pizza," the server can analyze this and, based on relevant coupon information, send a suggestion such as "Cheeseburgers are 20% off today at Restaurant X!" Whether the user accepts the suggestion is recorded on the device and reflected in the next suggestion.
[0205] Hardware / Software used
[0206] Hardware: Smartphone (iOS, ANDROID (registered trademark))
[0207] Software: Python, TensorFlow, PyTorch, MySQL, Flask (API server)
[0208] Prompt Sentence Examples
[0209] "Please create an app that allows users to post photos and names of their daily meals. The system will send the data to a server, perform machine learning analysis, obtain coupon information, and provide personalized meal suggestions."
[0210] This invention allows users to receive meal suggestions based on their preferences and enjoy economic benefits by utilizing coupon information. In addition, the suggestion algorithm is continuously improved based on user response data, thereby improving the accuracy of suggestions.
[0211] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0212] Step 1:
[0213] Users post their daily meals using a smartphone app.
[0214] Input: Meal photo, meal name, comment, date and time
[0215] Processing: Meal information is entered through the user interface and converted into JSON format.
[0216] Output: Meal data (JSON format)
[0217] Step 2:
[0218] The terminal transmits the posted meal data to the server.
[0219] Input: Meal data (JSON format)
[0220] Processing: Send an HTTP request to the server's API endpoint
[0221] Output: Meal data sent to the server
[0222] Step 3:
[0223] The server stores the received meal data in a database.
[0224] Input: Meal data sent to the server
[0225] Processing: Data storage in a database (e.g. MySQL)
[0226] Output: Meal data stored in a database
[0227] Step 4:
[0228] The server analyzes the stored meal data to understand the user's preferences and eating cycles.
[0229] Input: Food data stored in a database
[0230] Processing: Data analysis using machine learning models (e.g., TensorFlow, PyTorch)
[0231] Output: User preference data, eating patterns
[0232] Step 5:
[0233] The server regularly obtains the latest coupon and discount information through the API of affiliated online services.
[0234] Input: Coupon API endpoint information
[0235] Processing: Call an external API to get the latest coupon information and save it in the database
[0236] Output: Coupon information stored in the database
[0237] Step 6:
[0238] The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[0239] Input: User preference data, meal history, coupon information
[0240] Processing: Match user data with coupon information to generate personalized meal suggestions
[0241] Output: Meal suggestion message
[0242] Step 7:
[0243] The server generates meal suggestions and sends them to the user's mobile device as push notifications or in-app messages.
[0244] Input: Meal suggestion message
[0245] Processing: Send as a push notification or in-app message
[0246] Output: Meal suggestions displayed on the user's mobile device
[0247] Step 8:
[0248] The user selects "Order" or "Skip" in response to the suggestion message.
[0249] Input: Meal suggestion message, user choice (order / skip)
[0250] Action: Record user responses through the user interface
[0251] Output: User response data
[0252] Step 9:
[0253] The terminal transmits the user's reaction data to the server.
[0254] Input: User response data
[0255] Processing: Send an HTTP request to the server's API endpoint
[0256] Output: Response data sent to the server
[0257] Step 10:
[0258] The server analyzes user response data and improves the suggestion algorithm.
[0259] Input: Reaction data sent to the server
[0260] Processing: Feedback of reaction data to machine learning models to retrain algorithms or adjust parameters
[0261] Output: Improved proposed algorithm
[0262] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0263] The present invention is a system in which a user posts daily meals, a server analyzes the data, and provides appropriate meal suggestions, and by combining it with an emotion engine that recognizes the user's emotions, more personalized suggestions can be made. Specific embodiments are described below.
[0264] Processing meal posts
[0265] Users post their daily meals through an application or website they use. For example, a user takes a photo of their lunch using their smartphone camera and uploads it to the application with the description "shrimp tomato cream pasta."
[0266] Sending data
[0267] The device converts the posted meal data (photo, meal name, comment, date and time, etc.) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0268] Data storage and analysis
[0269] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[0270] Collect the latest coupon information
[0271] The server periodically retrieves the latest coupon and discount information through APIs from partner restaurants and coupon-providing sites, and stores it in an internal database, so that the latest deals can be provided to users.
[0272] Collecting and analyzing emotional data
[0273] The server uses an emotion engine to analyze users' emotions based on their posting data and reaction data. For example, if a user comments on a meal as "very delicious," the server recognizes this positive emotion. The emotion engine can also identify users' emotions through voice input and text analysis.
[0274] Generating meal suggestions
[0275] The server generates optimal meal suggestions based on the user's preference data, past meal history, collected coupon information, and emotional data. For example, if the user likes pasta and is expressing positive emotions, the server generates a suggested message: "Seafood pasta with a 20% off coupon from Italian Restaurant A." If the user is expressing negative emotions, the server makes suggestions to improve the user's mood.
[0276] Sending a proposal message
[0277] The server generates a meal suggestion and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0278] Record of responses to the proposal
[0279] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[0280] Sending reaction data
[0281] The device converts the response data to the user's suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[0282] Improvement of the proposed algorithm
[0283] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The emotion engine is also periodically updated to achieve more accurate emotion recognition.
[0284] By using this system, users can reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. In addition, by receiving suggestions based on the user's emotional state, it is possible to provide a more satisfying dining experience.
[0285] The processing flow will be explained below.
[0286] Step 1:
[0287] A user launches the application, takes a photo of the meal, and inputs the meal description (e.g., "shrimp tomato cream pasta") and a comment. The user's feelings may also be input through the comment.
[0288] Step 2:
[0289] The device converts the input food data (photo, food name, comment, date and time, and emotion) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0290] Step 3:
[0291] The server stores the received meal data in a database, and inserts the data into the corresponding table using a database language (e.g., SQL).
[0292] Step 4:
[0293] The server analyzes the stored food and emotional data using machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food. It also analyzes the user's emotional state.
[0294] Step 5:
[0295] The server retrieves the latest coupon and discount information through the APIs of partner restaurants and coupon providers, and stores it in an internal database. The server periodically makes API calls to retrieve new coupon information.
[0296] Step 6:
[0297] The server generates optimal meal suggestions based on the user's preference data, past meal history, collected coupon information, and emotional data. For example, if the user likes pasta and is expressing positive emotions, the server generates a suggested message: "Seafood pasta with a 20% off coupon from Italian Restaurant A." If the user is expressing negative emotions, the server makes suggestions to improve their mood.
[0298] Step 7:
[0299] The server generates a suggestion message and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0300] Step 8:
[0301] When the user receives the proposal message, if they are interested, they select "Go"; if they are not interested, they select "Don't go." This selection is recorded in the device. The user's emotions may also be recorded again.
[0302] Step 9:
[0303] The device converts the user's reaction data (selections and emotions) to the suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[0304] Step 10:
[0305] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The emotion engine is also periodically updated to achieve more accurate emotion recognition.
[0306] This series of processes allows users to reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. In addition, by receiving suggestions based on the user's emotional state, it is possible to provide a more personalized dining experience.
[0307] Example 2
[0308] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0309] In modern society, users must spend a lot of time and effort on daily meal choices. To solve this problem, a system is needed that can provide more personalized and appropriate meal suggestions based on the user's individual preferences and past meal history. However, existing systems lack the ability to take user emotions into consideration when making suggestions, which hinders further improvement of user satisfaction. Another challenge is providing the latest coupon and discount information in a timely manner.
[0310] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for recognizing emotions using user posted data, means for collecting and storing the latest coupon information and discount information, and means for generating meal suggestions based on the user's preference data, meal history, emotion data, and the collected coupon information. This enables more personalized meal suggestions that take the user's emotions into consideration, which not only improves user satisfaction but also makes it possible to provide the latest discount information in a timely manner.
[0311] "User" refers to an individual who uses this system to post daily meal data and receive meal suggestions.
[0312] "Terminal" refers to a device used by a user, including a smartphone, tablet, or PC.
[0313] "Server" refers to a central processing unit for receiving, storing, and analyzing data from users and generating meal recommendations.
[0314] "Meal data" includes information such as photos of meals posted by users, descriptions, comments, dates and times.
[0315] "Emotion engine" refers to software or algorithms for identifying and analyzing emotions from user-submitted data.
[0316] "Coupon information" refers to information that represents economic benefits provided to users, such as discount coupons and promotional codes.
[0317] "Preference data" is data related to the user's food preferences, including past eating history and favorite dishes.
[0318] "Meal suggestions" refer to specific meal recommendations generated by the server based on the user's meal history, preference data, emotion data, and coupon information.
[0319] "Response Data" refers to data including the selections and feedback provided by a user in response to meal suggestions from the server.
[0320] "Suggestion Algorithm" refers to a set of computational methods or models for generating optimal meal suggestions for a user.
[0321] This system allows users to post their daily meals, and the server analyzes the data to provide optimal meal suggestions. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, more personalized suggestions can be made.
[0322] Hardware and Software Configuration
[0323] Users use devices such as smartphones, tablets, and PCs to access applications or websites. The devices must have a camera and internet connection.
[0324] The server can use cloud-based services, using MySQL or PostgreSQL as the database, Python and its libraries (e.g., Scikit-learn, TensorFlow) to run the machine learning model, and Google® Cloud Natural Language API and NLTK library as the emotion engine.
[0325] Processing flow and specific examples
[0326] 1. When a user logs in to the application or website and posts meal data, they take a photo of the meal with their smartphone camera and post it with the description "Shrimp tomato cream pasta."
[0327] 2. The device converts this posted data (photo, meal name, comment, date and time, etc.) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0328] 3. The server stores the received meal data in a database and uses a machine learning model to analyze the user's preferences and meal cycles. By analyzing data from the past month, the server recognizes the user's tendency to like pasta and Italian food.
[0329] 4. The server periodically retrieves the latest coupon and discount information from the APIs of partner restaurants and coupon providers, and stores it in an internal database. This information is used to provide users with the latest deals.
[0330] 5. The server performs sentiment analysis on the user's posted data using the Google Cloud Natural Language API and NLTK library. For example, if a user comments "It was very delicious," the server recognizes the positive sentiment.
[0331] 6. The server generates optimal meal suggestions based on the user's preference data, past meal history, emotion data, and collected coupon information. For example, if the user likes pasta and has positive emotions, it will suggest "seafood pasta with a 20% off coupon at an Italian restaurant."
[0332] 7. The server generates a suggestion message and sends it to the user's device as a push notification or in-app message. For example, a message like "Seafood pasta is 20% off at the Italian restaurant today. Why don't you come and try it?" is sent to the user's smartphone.
[0333] 8. The user receives this suggestion message and selects "Go" or "Don't go." This selection is recorded in the terminal.
[0334] 9. The device converts the user's reaction data into JSON format and sends it to the server's API endpoint using an HTTP request.
[0335] 10. The server collects this reaction data and retrains the machine learning model to improve the recommendation algorithm, resulting in more accurate meal recommendations.
[0336] Prompt Sentence Examples
[0337] When a user inputs into the app, "I'm not sure what to eat today," the server references the user's past data and current emotional state to generate optimal meal suggestions. In this way, users can receive personalized suggestions based on their preferences and moods.
[0338] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0339] Step 1:
[0340] A user logs in to an application or website and posts meal data. The user takes a photo of their lunch using their smartphone camera, enters the meal name and a comment, and taps the "Post" button with the description "Shrimp tomato cream pasta." The inputs are the photo, meal name, comment, and date and time, and are sent to the device as output.
[0341] Step 2:
[0342] The device converts the posted meal data into JSON format and sends it to the server's API endpoint using an HTTP request. For example, it generates JSON data including a photo, meal name, comment, and date and time, and sends it to the server as an HTTP POST request. The input is the meal data received from the user, and the output is JSON format data.
[0343] Step 3:
[0344] The server receives the HTTP request and stores it in a database. The server converts the received data into an appropriate structure to efficiently store the data in the database (e.g. MySQL or PostgreSQL). The input is JSON data and the output is the data stored in the database.
[0345] Step 4:
[0346] The server analyzes the meal data stored in the database using a machine learning model. It uses Python's Scikit-learn and TensorFlow to perform analysis to understand the user's preferences and meal cycles. For example, it analyzes the user's preferences using data from the past month. The input is the stored meal data, and the output is the analysis results regarding preference data and meal cycles.
[0347] Step 5:
[0348] The server sends queries to the APIs of partner restaurants and coupon providers to obtain the latest coupon and discount information. Coupon information is periodically obtained via the API and stored in an internal database. The input is the API query, and the output is the obtained coupon information.
[0349] Step 6:
[0350] The server passes user posted data to the emotion engine, which analyzes the user's emotions. The Google Cloud Natural Language API and NLTK library are used to identify emotions from posted comments. Positive comments such as "It was very delicious" are input into the emotion engine, which outputs the emotion data.
[0351] Step 7:
[0352] The server generates meal suggestions based on the user's preference data, meal history, emotion data, and collected coupon information. For example, if the user likes pasta and has positive emotions, the server will suggest "seafood pasta with a 20% off coupon at an Italian restaurant." The inputs are the user's preference data, past meal history, emotion data, and coupon information, and the output is meal suggestions.
[0353] Step 8:
[0354] The server generates meal suggestions and sends them to the user's device as push notifications or in-app messages. Using Firebase Cloud Messaging or Apple Push Notification Service, the suggestion message is sent, saying, "Seafood pasta is 20% off today at the Italian restaurant. Why not go?" The input is the generated meal suggestions, and the output is a notification sent to the user's smartphone.
[0355] Step 9:
[0356] The user receives the suggestion message and selects "Go" or "Don't go." The user's choice of "Go" or "Don't go" is recorded on the terminal. The input is the suggestion message, and the output is the user's choice.
[0357] Step 10:
[0358] The device converts the user's reaction data into JSON format and sends it to the server's API endpoint using an HTTP request. The device prepares the selection results in JSON format and sends them to the server as an HTTP POST request. The input is the user's reaction data, and the output is JSON format data.
[0359] Step 11:
[0360] The server receives the user's reaction data, retrains the machine learning model, and improves the proposed algorithm. Using Scikit-learn and TensorFlow, the accuracy of the algorithm is improved based on the reaction data. The input is the reaction data, and the output is an improved proposed algorithm.
[0361] (Application example 2)
[0362] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0363] Conventional meal recommendation systems make suggestions based only on a user's preference data and meal history, but because they do not consider the user's emotional state, they have the problem of not necessarily being able to make suggestions that will increase the user's satisfaction. Furthermore, if the suggested meal does not match the user's current mood, the effectiveness of the suggestion may be diminished, and the user may avoid using it. Furthermore, if coupon information or discount information is not up-to-date, the value to the user may be reduced.
[0364] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0365] In this invention, the server includes means for collecting and analyzing user emotion data, means for collecting the latest coupon information and discount information, and means for generating meal suggestions based on the user's preference data, emotion data, meal history, and the collected coupon information, thereby enabling more personalized meal suggestions that take the user's emotional state into consideration.
[0366] "User" means an individual or corporation that uses the system.
[0367] "Meal data" is information about daily meals posted by users, and specifically includes photos of the meals, names of the meals, comments, and dates and times.
[0368] A "server" is a computer system that receives, stores, and analyzes data sent by users.
[0369] "Emotional data" refers to information about a user's emotional state that is analyzed based on their posts and reaction data.
[0370] "Coupon information" is information about discounts and special offers at dining establishments.
[0371] "Preference data" is data relating to a user's past eating history and preferences.
[0372] "Dining suggestions" refer to suggestions about suitable meals and restaurants that the server generates based on the user's preference data, emotion data, dining history, and coupon information.
[0373] A "terminal" is a device used by a user, such as a smartphone or computer, that communicates with a server.
[0374] "Response data" is information regarding the choices and feedback a user makes in response to meal suggestions.
[0375] A "suggestion algorithm" is a computational method by which the server generates meal suggestions for the user.
[0376] The system for carrying out the invention allows users to post their daily meals and provides personalized meal suggestions based on these. Specific embodiments are described below.
[0377] Processing meal posts
[0378] Users use their smartphones to post photos of their daily meals. For example, when a user eats "katsu curry," they take a photo and enter a comment such as "I'm feeling great today!"
[0379] Sending data
[0380] The device converts the posted meal data (photo, meal name, comment, date and time) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0381] Data storage and analysis
[0382] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and meal cycles. For example, the server could analyze data from the past month and determine whether the user has a preference for curry.
[0383] Collecting and analyzing emotional data
[0384] The server uses an emotion engine to analyze the user's emotions based on the user's posting data and reaction data. If a user writes "I'm in a good mood today!" in a comment, the server recognizes this as a positive emotion.
[0385] Collect the latest coupon information
[0386] The server regularly obtains the latest coupon and discount information through the APIs of affiliated dining establishments and coupon websites and stores it in an internal database.
[0387] Generating meal suggestions
[0388] The server generates optimal meal suggestions based on the user's preference data, emotional data, past meal history, and collected coupon information. For example, if the user likes curry and has positive emotions, it generates a suggestion of "20% off curry plate at curry restaurant A."
[0389] Sending a proposal message
[0390] The server sends the generated meal suggestions to the user's device as a push notification or an in-app message. For example, it could send a message saying, "Today, curry plates at curry restaurant A are 20% off. Why not try it?"
[0391] Record of responses to the proposal
[0392] The user receives the proposal message and selects "Go" if he is interested, or "Don't go" if he is not interested. This selection is recorded in the terminal.
[0393] Sending reaction data
[0394] The device converts the user's response data to the suggestion into JSON format and sends it to the server's API endpoint using an HTTP request.
[0395] Improvement of the proposed algorithm
[0396] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The server also periodically updates the emotion engine to achieve more accurate emotion recognition.
[0397] The hardware used includes smartphones (camera, microphone, notification function) and cloud servers (Amazon Web Services, Google Cloud Platform, Microsoft® Azure®). The software used includes smartphone apps (iOS / Android) used on the client side, React Native, Swift, and Kotlin, and Python, Django / Flask, TensorFlow / PyTorch (machine learning models), Natural Language Toolkit (NLP processing), and Firebase Realtime Database used on the server side.
[0398] Example prompt sentence:
[0399] Recognize emotions from users' meal posting data (photos, meal names, comments, date and time), and combine those emotions with past meal history and the latest coupon information to create appropriate meal suggestions. Example:
[0400] Meal name: Pork cutlet curry
[0401] Comment: I feel great today!
[0402] The result: positive emotions
[0403] Suggestion: Get 20% off a delicious curry plate at a nearby restaurant!
[0404] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0405] Step 1:
[0406] Users post their daily meals using their smartphones. The input is a photo of the meal, the name of the meal, a comment, and the date and time, and then uploads this to the application. The output of this step is the posted data.
[0407] Step 2:
[0408] The device converts the posted meal data into JSON format. The input is the meal data posted by the user, and the output is JSON format data. Specifically, the device encodes the photo data into a binary format and packages it as a JSON object along with the meal name, comment, and date and time.
[0409] Step 3:
[0410] The terminal sends the converted JSON-formatted data to the server's API endpoint using an HTTP request. The input is JSON-formatted data, and the output is a successful transmission status. Specifically, an HTTP POST request is sent to the API endpoint and a response is received.
[0411] Step 4:
[0412] The server stores the received meal data in a database. The input is JSON data sent as an HTTP request, and the output is records stored in the database. Specifically, it connects to the database and executes SQL queries to insert records.
[0413] Step 5:
[0414] The server uses the stored meal data to analyze the user's preferences and meal cycle. The input is the meal data stored in the database, and the output is the preference and cycle analysis results. Specifically, it analyzes past meal history and analyzes frequently occurring meals and patterns based on a machine learning model.
[0415] Step 6:
[0416] The server collects and analyzes emotional data based on user posted data. The input is user comments and past reaction data, and the output is the result of the emotional analysis. Specifically, a text analysis engine is used to classify emotions using natural language processing technology.
[0417] Step 7:
[0418] The server obtains the latest coupon and discount information through the APIs of affiliated dining establishments and coupon websites. The input is the API request, and the output is the retrieved coupon information. Specifically, the server periodically calls the API, extracts coupon information from the response, and stores it in a database.
[0419] Step 8:
[0420] The server generates optimal meal suggestions based on the user's preference data, emotion data, past meal history, and collected coupon information. The inputs are preference data, emotion data, meal history, and coupon information, and the output is personalized meal suggestions. Specifically, this data is integrated and optimal suggestions are generated for the user through a recommendation algorithm.
[0421] Step 9:
[0422] The server sends the generated meal suggestions to the user's device as a push notification or an in-app message. The input is the meal suggestion data, and the output is a notification to the user's device. Specifically, a push notification is sent through the notification server or the message function within the application is used.
[0423] Step 10:
[0424] The user receives the suggestion message and selects "Go" if they are interested, or "Don't go" if they are not interested. The input is the meal suggestion message, and the output is the choice response data. Specifically, options are presented through a user interface, and the user's response is obtained.
[0425] Step 11:
[0426] The terminal records the user's reaction to the suggestion and sends it to the server. The input is the user's selection reaction data, and the output is the reaction data sent as an HTTP request.
[0427] Step 12:
[0428] The server collects and analyzes user reaction data to improve the proposal algorithm. The input is the reaction data, and the output is an improved proposal algorithm. Specifically, the reaction data is fed back into the machine learning model to readjust or retrain the algorithm parameters.
[0429] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0430] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0431] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0432] [Second embodiment]
[0433] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0434] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0435] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0436] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0437] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0438] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0439] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0440] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0441] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0442] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0443] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0444] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."
[0445] The present invention is a system in which a user posts daily meals, and a server analyzes the data and provides appropriate meal suggestions. Specific embodiments are described below.
[0446] Processing meal posts
[0447] Users post their daily meals through an application or website they use. For example, a user takes a photo of their lunch using their smartphone camera and uploads it to the application with the description "shrimp tomato cream pasta."
[0448] Sending data
[0449] The device sends the posted meal data (photo, meal name, comment, date and time, etc.) to the server. At this time, the device converts the data into JSON format and sends it to the server's API endpoint using an HTTP request.
[0450] Data storage and analysis
[0451] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[0452] Collect the latest coupon information
[0453] The server periodically retrieves the latest coupon and discount information through APIs from partner restaurants and coupon-providing sites, and stores it in an internal database, so that the latest deals can be provided to users.
[0454] Generating meal suggestions
[0455] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. For example, if it is known that the user likes pasta, the server generates a suggestion message of "Seafood pasta with a 20% off coupon from Italian Restaurant A."
[0456] Sending a proposal message
[0457] The server generates a meal suggestion and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0458] Record of responses to the proposal
[0459] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[0460] Sending reaction data
[0461] The terminal transmits the user's reaction data to the server in response to the suggestion. For example, information indicating that the user selected "Go" is transmitted from the terminal to the server.
[0462] Improvement of the proposed algorithm
[0463] The server analyzes the user's reaction data and updates the algorithm to refine future meal recommendations. Specifically, the server feeds the reaction data back into the machine learning model to retrain or adjust the parameters of the recommendation algorithm.
[0464] By using this system, users can reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. They can also enjoy economic benefits by taking advantage of the latest coupon information.
[0465] The processing flow will be explained below.
[0466] Step 1:
[0467] The user launches the application, takes a photo of the meal, and enters the meal description (for example, "shrimp tomato cream pasta") and a comment.
[0468] Step 2:
[0469] The device converts the input meal data (photo, meal name, comment, date and time) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0470] Step 3:
[0471] The server stores the received meal data in a database, and inserts the data into the corresponding table using a database language (e.g., SQL).
[0472] Step 4:
[0473] The server analyzes the stored meal data using machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[0474] Step 5:
[0475] The server retrieves the latest coupon and discount information through the APIs of partner restaurants and coupon providers, and stores it in an internal database. The server periodically makes API calls to retrieve new coupon information.
[0476] Step 6:
[0477] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. For example, if it is known that the user likes pasta, the server will generate a suggestion message of "Seafood pasta with a 20% off coupon from Italian Restaurant A."
[0478] Step 7:
[0479] The server generates a suggestion message and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0480] Step 8:
[0481] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[0482] Step 9:
[0483] The device converts the response data to the user's suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[0484] Step 10:
[0485] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain or adjust the parameters of the recommendation algorithm.
[0486] Example 1
[0487] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0488] In today's world, many people lead busy lives that make it difficult to devote time and effort to daily meal selection. Furthermore, it is rare for users to receive recommendations that best suit their individual preferences and eating patterns, and it is difficult to efficiently utilize coupon and discount information. Therefore, there is a need for a system that allows users to more easily select appropriate meals while simultaneously enjoying economic benefits.
[0489] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0490] In this invention, the server includes: a means for users to post their daily meals; a means for transmitting the posted meal data to the server via a terminal; a means for the server to store the received meal data and analyze it using a machine learning model; a means for the server to collect the latest coupon information and discount information; a means for the server to generate meal suggestions based on the user's preference data, meal history, and collected coupon information; a means for the server to transmit the meal suggestions to the user's terminal; a means for the terminal to record the user's reactions to the suggestions and transmit them to the server; and a means for the server to analyze the user's reaction data and improve the suggestion algorithm based on the machine learning model. This allows users to reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. Furthermore, users can enjoy economic benefits by utilizing the latest coupon information.
[0491] "User" refers to an individual who uses the system to receive meal submissions and suggestions.
[0492] "Means for posting" refers to means that provides a function for users to record meal data (photos, meal names, comments, date and time) and send it to the server via the application.
[0493] A "terminal" is an electronic device (such as a smartphone, PC, or tablet) that a user uses to post their daily meals and send them to the server.
[0494] The "server" is a central management system that stores meal data, analyzes it using machine learning models, and makes recommendations.
[0495] A "machine learning model" is an algorithm or method that uses data to learn and predict and analyze user preferences and behavioral patterns.
[0496] The "analyzing means" is a means for processing the meal data received by the server and providing a function for analyzing the user's preferences and meal cycles.
[0497] "Coupon information" is information about discounts and special offers available to users.
[0498] The "collection means" is a means for providing a function for obtaining coupon information and discount information from information sources affiliated with the server.
[0499] "Meal suggestions" are specific meal or restaurant information recommended to the user based on the data analyzed and collected information by the server.
[0500] The "means for generating meal suggestions" refers to a means for providing a function for the server to form optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[0501] The "means for sending meal suggestions" refers to a means for providing a function for sending meal suggestions generated by the server to the user's device as push notifications or in-app messages.
[0502] The "means for recording a reaction to a suggestion" is a means for providing a function for recording on the terminal whether or not the user is interested in a meal suggestion.
[0503] "Response data" is information regarding the user's choice, such as "go" or "don't go," in response to a meal suggestion.
[0504] A "suggestion algorithm" is a calculation method for making optimal meal suggestions to users.
[0505] The "means for improving the proposed algorithm" is a means for providing a function for updating the proposed algorithm based on a machine learning model using user response data.
[0506] MODE FOR CARRYING OUT THE INVENTION
[0507] The present invention is a system in which a user posts daily meals, and a server analyzes the data and provides appropriate meal suggestions. Specific embodiments are described below.
[0508] Hardware used
[0509] This system requires a device (smartphone, PC, tablet, etc.) for use by the user and a server for analyzing and storing the data. The server should ideally be a computer equipped with a high-performance processor and large-capacity storage.
[0510] Software used
[0511] User interface for applications or websites
[0512] HTTP request library used to send data
[0513] Database management systems (e.g. MySQL, PostgreSQL)
[0514] Machine learning models (e.g. TensorFlow, PyTorch)
[0515] Detailed processing instructions
[0516] Processing meal posts
[0517] Users post their meals using a dedicated application or website. For example, they can take a photo of "shrimp tomato cream pasta" with their smartphone camera and post it with the comment "It was delicious." Below is an example of a prompt sentence to be input to the generative AI model.
[0518] Example prompt:
[0519] "After users post photos and comments about their meals using their smartphones, what kind of data processing is done and how are optimal meal suggestions generated?"
[0520] Sending data
[0521] The device converts the food data posted by the user into JSON format and sends it to the server's API endpoint using the HTTPS protocol. For example, the device sends data to the "POST / api / fooddata" endpoint.
[0522] Data storage and analysis
[0523] The server stores the received meal data in a database and analyzes it using a machine learning model. During this analysis, the server learns the user's preferences and eating habits. For example, by analyzing data from the past month, the server can determine the user's preference for pasta and Italian food.
[0524] Collect the latest coupon information
[0525] The server periodically calls the APIs of partner restaurants and coupon providers to retrieve the latest coupon and discount information and store it in the database. For example, the server accesses the "GET / api / coupons" endpoint to retrieve new coupon information.
[0526] Generating meal suggestions
[0527] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. Specifically, it uses a machine learning algorithm to suggest "seafood pasta with a 20% off coupon from Italian Restaurant A."
[0528] Sending a proposal message
[0529] The server sends the generated meal suggestions to the user's device as a push notification or in-app message. For example, it sends a message saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0530] Record of responses to the proposal
[0531] The user receives the suggestion message and selects "Go" or "Don't go." This selection is recorded in the terminal.
[0532] Sending reaction data
[0533] The terminal converts the user's selection data into JSON format and sends it to the server's API endpoint using the HTTPS protocol. For example, the terminal sends data to the "POST / api / reaction" endpoint.
[0534] Improvement of the proposed algorithm
[0535] The server analyzes the received user reaction data and improves the algorithm by retraining the machine learning model, using the new reaction data to adjust the model's parameters and improve future accuracy.
[0536] Overall, by using this system, users can reduce the time and effort required for daily meal selection, receive appropriate and satisfying meal suggestions, and enjoy economic benefits by taking advantage of the latest coupon information.
[0537] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0538] Step 1:
[0539] A user posts a meal through an application or website.
[0540] Input: Data entered by the user, such as a photo of the meal, the name of the meal, comments, and the date and time
[0541] Specific operation: The user takes a photo of "Shrimp Tomato Cream Pasta" with the smartphone camera and enters the comment "It was delicious."
[0542] Output: Digital data (photo files, text information) temporarily stored on the user's device
[0543] Step 2:
[0544] The device sends the meal data to the server.
[0545] Input: Meal data (photo files, text information) temporarily saved on the user's device
[0546] Specific operation: The device converts this data into JSON format and sends it to the "POST / api / fooddata" endpoint via an HTTP request.
[0547] Output: JSON formatted meal data received by the server
[0548] Step 3:
[0549] The server stores the received meal data and analyzes it using machine learning models.
[0550] Input: JSON formatted meal data received by the server
[0551] Specific operation: The server saves the data in a database (e.g., MySQL), analyzes the user's preferences and eating habits using a machine learning model (e.g., TensorFlow), and executes an SQL query to insert the data into the database.
[0552] Output: Food data stored in a database and analysis results showing the user's preferences
[0553] Step 4:
[0554] The server collects the latest coupon and discount information.
[0555] Input: Information collected from coupon providing sites and APIs of partner restaurants
[0556] Specific operation: The server periodically accesses the "GET / api / coupons" endpoint and saves the obtained coupon information in an internal database.
[0557] Output: Latest coupon and discount information stored in the database
[0558] Step 5:
[0559] The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[0560] Input: User preference data stored on the server, meal history, latest coupon information
[0561] Specific operation: Using machine learning algorithms, it generates meal suggestions suitable for the user. For example, if the user likes pasta, it generates "Seafood pasta with a 20% off coupon from Italian restaurant A."
[0562] Output: Message data as generated meal suggestions
[0563] Step 6:
[0564] The server sends the generated meal suggestions to the user's terminal.
[0565] Input: A meal suggestion message generated within the server
[0566] Specific behavior: The server uses the push notification API or in-app messaging function to send a message saying, "Today, Italian Restaurant A is offering 20% off seafood pasta. Why not come and try it?"
[0567] Output: Meal suggestion message received on user's device
[0568] Step 7:
[0569] The user records their reaction to the suggestion message.
[0570] Input: User's "Go" or "Don't Go" choice
[0571] Specific operation: The user presses the "Go" button within the application, and the selection is recorded and saved on the device.
[0572] Output: Reaction data recorded on the user's terminal
[0573] Step 8:
[0574] The terminal transmits the user's reaction data to the server.
[0575] Input: Response data recorded on the user's device (e.g., "Go" or "Don't go")
[0576] Specific operation: The terminal converts the reaction data into JSON format and sends it to the "POST / api / reaction" endpoint.
[0577] Output: Reaction data that reaches the server
[0578] Step 9:
[0579] The server analyzes user response data and improves the proposed algorithm based on machine learning models.
[0580] Input: Reaction data arriving at the server
[0581] What it does: The server feeds new reaction data back into the machine learning model (e.g., TensorFlow) to retrain and adjust the model parameters.
[0582] Output: Improved proposed algorithm
[0583] (Application example 1)
[0584] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0585] Conventional meal management systems simply store a user's daily meal data and are unable to analyze and utilize the user's preferences or eating patterns. They also struggle to provide appropriate meal suggestions to users, and lack a mechanism for learning from the user's reactions to suggestions to improve the system's accuracy. Furthermore, it is difficult to obtain coupon and discount information in real time and make suggestions based on that information. This means that users are unable to receive effective meal suggestions and are unable to enjoy economic benefits.
[0586] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0587] In this invention, the server includes: a means for users to post their daily meals; a means for transmitting the posted meal data to the server; a means for the server to store and analyze the received meal data; a means for the server to collect the latest coupon information and discount information; a means for the server to generate meal suggestions based on the user's preference data, meal history, and the collected coupon information; a means for the server to periodically obtain the latest coupon information and discount information through the API of an online service affiliated with the server; a means for the server to send the meal suggestions to the user's mobile device as a push notification or in-app message; a means for the device to record the user's responses to the suggestions and transmit them to the server; and a means for the server to analyze the user's response data and improve the suggestion algorithm. This enables appropriate meal suggestions based on the user's preferences and eating patterns, and provides economic benefits to the user by obtaining the latest coupon information in real time. Furthermore, the accuracy of the suggestions can be improved by analyzing the user's response data and improving the suggestion algorithm.
[0588] A "user" is an individual or group who posts their daily meals and receives meal suggestions from the system.
[0589] "Meal data" is data that includes information such as photos of meals posted by users, meal names, comments, and dates and times.
[0590] "Server" refers to an information processing system that receives, stores, and analyzes meal data, collects coupon information, and generates meal suggestions.
[0591] "Coupon information" refers to advantageous information provided by affiliated online services, including discount information and special offer information.
[0592] "Dining suggestions" are specific suggestions about meals generated by the server based on the user's preference data, meal history, and coupon information.
[0593] "Preference data" is data that indicates the types and patterns of meals that a user prefers.
[0594] "Diet history" is a collection of meal data posted by a user in the past.
[0595] A "terminal" is a portable information terminal or computer device that a user uses to access the system.
[0596] "Response data" is data indicating the user's response to a meal suggestion (for example, "order," "skip," etc.).
[0597] A "suggestion algorithm" is a set of computational methods and rules for generating optimal meal suggestions to send to users.
[0598] "Push Notifications" or "In-App Messages" are real-time notifications or messages sent from a server to a user's device.
[0599] An "online service API" is a program interface for connecting with external online services.
[0600] The present invention provides a system that allows users to post daily meals and receive meal suggestions. Specific embodiments are described below.
[0601] User Interface Design
[0602] Users post their daily meals using a smartphone app. The app provides an interface for taking photos of meals and entering descriptions (e.g., "cheeseburger"). The meal data entered by the user is converted into JSON format and sent to the server using an HTTP request.
[0603] Server Configuration
[0604] The server is a high-performance information processing system that provides the following main functions:
[0605] 1. Data storage: The server stores the meal data received from the user in a database (e.g., MySQL).
[0606] 2. Data analysis: The server uses machine learning models (e.g., TensorFlow or PyTorch) to analyze the user's dietary data and understand the user's preferences and eating cycles.
[0607] 3. Obtaining coupon information: The server periodically collects the latest coupon and discount information through the APIs of affiliated online services and stores it in an internal database.
[0608] 4. Generating meal suggestions: The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information. For example, if a user likes "cheeseburgers," the server can suggest "restaurants that offer cheeseburgers at a 20% discount."
[0609] 5. Notification function: The server sends meal suggestions to the user's mobile device as push notifications or in-app messages.
[0610] User response and algorithm improvements
[0611] When a user responds to a suggestion by choosing "order" or "skip," the data is recorded on the device and sent to the server, which analyzes the response data to improve the suggestion algorithm, resulting in more refined suggestions for future orders.
[0612] Specific examples
[0613] For example, if a user has a preference for "cheeseburgers" and "pizza," the server can analyze this and, based on relevant coupon information, send a suggestion such as "Cheeseburgers are 20% off today at Restaurant X!" Whether the user accepts the suggestion is recorded on the device and reflected in the next suggestion.
[0614] Hardware / Software used
[0615] Hardware: Smartphone (iOS, Android)
[0616] Software: Python, TensorFlow, PyTorch, MySQL, Flask (API server)
[0617] Prompt Sentence Examples
[0618] "Please create an app that allows users to post photos and names of their daily meals. The system will send the data to a server, perform machine learning analysis, obtain coupon information, and provide personalized meal suggestions."
[0619] This invention allows users to receive meal suggestions based on their preferences and enjoy economic benefits by utilizing coupon information. In addition, the suggestion algorithm is continuously improved based on user response data, thereby improving the accuracy of suggestions.
[0620] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0621] Step 1:
[0622] Users post their daily meals using a smartphone app.
[0623] Input: Meal photo, meal name, comment, date and time
[0624] Processing: Meal information is entered through the user interface and converted into JSON format.
[0625] Output: Meal data (JSON format)
[0626] Step 2:
[0627] The terminal transmits the posted meal data to the server.
[0628] Input: Meal data (JSON format)
[0629] Processing: Send an HTTP request to the server's API endpoint
[0630] Output: Meal data sent to the server
[0631] Step 3:
[0632] The server stores the received meal data in a database.
[0633] Input: Meal data sent to the server
[0634] Processing: Data storage in a database (e.g. MySQL)
[0635] Output: Meal data stored in a database
[0636] Step 4:
[0637] The server analyzes the stored meal data to understand the user's preferences and eating cycles.
[0638] Input: Food data stored in a database
[0639] Processing: Data analysis using machine learning models (e.g., TensorFlow, PyTorch)
[0640] Output: User preference data, eating patterns
[0641] Step 5:
[0642] The server regularly obtains the latest coupon and discount information through the API of affiliated online services.
[0643] Input: Coupon API endpoint information
[0644] Processing: Call an external API to get the latest coupon information and save it in the database
[0645] Output: Coupon information stored in the database
[0646] Step 6:
[0647] The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[0648] Input: User preference data, meal history, coupon information
[0649] Processing: Match user data with coupon information to generate personalized meal suggestions
[0650] Output: Meal suggestion message
[0651] Step 7:
[0652] The server generates meal suggestions and sends them to the user's mobile device as push notifications or in-app messages.
[0653] Input: Meal suggestion message
[0654] Processing: Send as a push notification or in-app message
[0655] Output: Meal suggestions displayed on the user's mobile device
[0656] Step 8:
[0657] The user selects "Order" or "Skip" in response to the suggestion message.
[0658] Input: Meal suggestion message, user choice (order / skip)
[0659] Action: Record user responses through the user interface
[0660] Output: User response data
[0661] Step 9:
[0662] The terminal transmits the user's reaction data to the server.
[0663] Input: User response data
[0664] Processing: Send an HTTP request to the server's API endpoint
[0665] Output: Response data sent to the server
[0666] Step 10:
[0667] The server analyzes user response data and improves the suggestion algorithm.
[0668] Input: Reaction data sent to the server
[0669] Processing: Feedback of reaction data to machine learning models to retrain algorithms or adjust parameters
[0670] Output: Improved proposed algorithm
[0671] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0672] The present invention is a system in which a user posts daily meals, a server analyzes the data, and provides appropriate meal suggestions, and by combining it with an emotion engine that recognizes the user's emotions, more personalized suggestions can be made. Specific embodiments are described below.
[0673] Processing meal posts
[0674] Users post their daily meals through an application or website they use. For example, a user takes a photo of their lunch using their smartphone camera and uploads it to the application with the description "shrimp tomato cream pasta."
[0675] Sending data
[0676] The device converts the posted meal data (photo, meal name, comment, date and time, etc.) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0677] Data storage and analysis
[0678] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[0679] Collect the latest coupon information
[0680] The server periodically retrieves the latest coupon and discount information through APIs from partner restaurants and coupon-providing sites, and stores it in an internal database, so that the latest deals can be provided to users.
[0681] Collecting and analyzing emotional data
[0682] The server uses an emotion engine to analyze users' emotions based on their posting data and reaction data. For example, if a user comments on a meal as "very delicious," the server recognizes this positive emotion. The emotion engine can also identify users' emotions through voice input and text analysis.
[0683] Generating meal suggestions
[0684] The server generates optimal meal suggestions based on the user's preference data, past meal history, collected coupon information, and emotional data. For example, if the user likes pasta and is expressing positive emotions, the server generates a suggested message: "Seafood pasta with a 20% off coupon from Italian Restaurant A." If the user is expressing negative emotions, the server makes suggestions to improve the user's mood.
[0685] Sending a proposal message
[0686] The server generates a meal suggestion and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0687] Record of responses to the proposal
[0688] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[0689] Sending reaction data
[0690] The device converts the response data to the user's suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[0691] Improvement of the proposed algorithm
[0692] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The emotion engine is also periodically updated to achieve more accurate emotion recognition.
[0693] By using this system, users can reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. In addition, by receiving suggestions based on the user's emotional state, it is possible to provide a more satisfying dining experience.
[0694] The processing flow will be explained below.
[0695] Step 1:
[0696] A user launches the application, takes a photo of the meal, and inputs the meal description (e.g., "shrimp tomato cream pasta") and a comment. The user's feelings may also be input through the comment.
[0697] Step 2:
[0698] The device converts the input food data (photo, food name, comment, date and time, and emotion) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0699] Step 3:
[0700] The server stores the received meal data in a database, and inserts the data into the corresponding table using a database language (e.g., SQL).
[0701] Step 4:
[0702] The server analyzes the stored food and emotional data using machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food. It also analyzes the user's emotional state.
[0703] Step 5:
[0704] The server retrieves the latest coupon and discount information through the APIs of partner restaurants and coupon providers, and stores it in an internal database. The server periodically makes API calls to retrieve new coupon information.
[0705] Step 6:
[0706] The server generates optimal meal suggestions based on the user's preference data, past meal history, collected coupon information, and emotional data. For example, if the user likes pasta and is expressing positive emotions, the server generates a suggested message: "Seafood pasta with a 20% off coupon from Italian Restaurant A." If the user is expressing negative emotions, the server makes suggestions to improve their mood.
[0707] Step 7:
[0708] The server generates a suggestion message and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0709] Step 8:
[0710] When the user receives the proposal message, if they are interested, they select "Go"; if they are not interested, they select "Don't go." This selection is recorded in the device. The user's emotions may also be recorded again.
[0711] Step 9:
[0712] The device converts the user's reaction data (selections and emotions) to the suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[0713] Step 10:
[0714] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The emotion engine is also periodically updated to achieve more accurate emotion recognition.
[0715] This series of processes allows users to reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. In addition, by receiving suggestions based on the user's emotional state, it is possible to provide a more personalized dining experience.
[0716] Example 2
[0717] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0718] In modern society, users must spend a lot of time and effort on daily meal choices. To solve this problem, a system is needed that can provide more personalized and appropriate meal suggestions based on the user's individual preferences and past meal history. However, existing systems lack the ability to take user emotions into consideration when making suggestions, which hinders further improvement of user satisfaction. Another challenge is providing the latest coupon and discount information in a timely manner.
[0719] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for recognizing emotions using user posted data, means for collecting and storing the latest coupon information and discount information, and means for generating meal suggestions based on the user's preference data, meal history, emotion data, and the collected coupon information. This enables more personalized meal suggestions that take the user's emotions into consideration, which not only improves user satisfaction but also makes it possible to provide the latest discount information in a timely manner.
[0720] "User" refers to an individual who uses this system to post daily meal data and receive meal suggestions.
[0721] "Terminal" refers to a device used by a user, including a smartphone, tablet, or PC.
[0722] "Server" refers to a central processing unit for receiving, storing, and analyzing data from users and generating meal recommendations.
[0723] "Meal data" includes information such as photos of meals posted by users, descriptions, comments, dates and times.
[0724] "Emotion engine" refers to software or algorithms for identifying and analyzing emotions from user-submitted data.
[0725] "Coupon information" refers to information that represents economic benefits provided to users, such as discount coupons and promotional codes.
[0726] "Preference data" is data related to the user's food preferences, including past eating history and favorite dishes.
[0727] "Meal suggestions" refer to specific meal recommendations generated by the server based on the user's meal history, preference data, emotion data, and coupon information.
[0728] "Response Data" refers to data including the selections and feedback provided by a user in response to meal suggestions from the server.
[0729] "Suggestion Algorithm" refers to a set of computational methods or models for generating optimal meal suggestions for a user.
[0730] This system allows users to post their daily meals, and the server analyzes the data to provide optimal meal suggestions. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, more personalized suggestions can be made.
[0731] Hardware and Software Configuration
[0732] Users use devices such as smartphones, tablets, and PCs to access applications or websites. The devices must have a camera and internet connection.
[0733] The server can use cloud-based services, using MySQL or PostgreSQL as the database, Python and its libraries (e.g., Scikit-learn, TensorFlow) to run the machine learning model, and Google Cloud Natural Language API and NLTK library as the emotion engine.
[0734] Processing flow and specific examples
[0735] 1. When a user logs in to the application or website and posts meal data, they take a photo of the meal with their smartphone camera and post it with the description "Shrimp tomato cream pasta."
[0736] 2. The device converts this posted data (photo, meal name, comment, date and time, etc.) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0737] 3. The server stores the received meal data in a database and uses a machine learning model to analyze the user's preferences and meal cycles. By analyzing data from the past month, the server recognizes the user's tendency to like pasta and Italian food.
[0738] 4. The server periodically retrieves the latest coupon and discount information from the APIs of partner restaurants and coupon providers, and stores it in an internal database. This information is used to provide users with the latest deals.
[0739] 5. The server performs sentiment analysis on the user's posted data using the Google Cloud Natural Language API and NLTK library. For example, if a user comments "It was very delicious," the server recognizes the positive sentiment.
[0740] 6. The server generates optimal meal suggestions based on the user's preference data, past meal history, emotion data, and collected coupon information. For example, if the user likes pasta and has positive emotions, it will suggest "seafood pasta with a 20% off coupon at an Italian restaurant."
[0741] 7. The server generates a suggestion message and sends it to the user's device as a push notification or in-app message. For example, a message like "Seafood pasta is 20% off at the Italian restaurant today. Why don't you come and try it?" is sent to the user's smartphone.
[0742] 8. The user receives this suggestion message and selects "Go" or "Don't go." This selection is recorded in the terminal.
[0743] 9. The device converts the user's reaction data into JSON format and sends it to the server's API endpoint using an HTTP request.
[0744] 10. The server collects this reaction data and retrains the machine learning model to improve the recommendation algorithm, resulting in more accurate meal recommendations.
[0745] Prompt Sentence Examples
[0746] When a user inputs into the app, "I'm not sure what to eat today," the server references the user's past data and current emotional state to generate optimal meal suggestions. In this way, users can receive personalized suggestions based on their preferences and moods.
[0747] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0748] Step 1:
[0749] A user logs in to an application or website and posts meal data. The user takes a photo of their lunch using their smartphone camera, enters the meal name and a comment, and taps the "Post" button with the description "Shrimp tomato cream pasta." The inputs are the photo, meal name, comment, and date and time, and are sent to the device as output.
[0750] Step 2:
[0751] The device converts the posted meal data into JSON format and sends it to the server's API endpoint using an HTTP request. For example, it generates JSON data including a photo, meal name, comment, and date and time, and sends it to the server as an HTTP POST request. The input is the meal data received from the user, and the output is JSON format data.
[0752] Step 3:
[0753] The server receives the HTTP request and stores it in a database. The server converts the received data into an appropriate structure to efficiently store the data in the database (e.g. MySQL or PostgreSQL). The input is JSON data and the output is the data stored in the database.
[0754] Step 4:
[0755] The server analyzes the meal data stored in the database using a machine learning model. It uses Python's Scikit-learn and TensorFlow to perform analysis to understand the user's preferences and meal cycles. For example, it analyzes the user's preferences using data from the past month. The input is the stored meal data, and the output is the analysis results regarding preference data and meal cycles.
[0756] Step 5:
[0757] The server sends queries to the APIs of partner restaurants and coupon providers to obtain the latest coupon and discount information. Coupon information is periodically obtained via the API and stored in an internal database. The input is the API query, and the output is the obtained coupon information.
[0758] Step 6:
[0759] The server passes user posted data to the emotion engine, which analyzes the user's emotions. The Google Cloud Natural Language API and NLTK library are used to identify emotions from posted comments. Positive comments such as "It was very delicious" are input into the emotion engine, which outputs the emotion data.
[0760] Step 7:
[0761] The server generates meal suggestions based on the user's preference data, meal history, emotion data, and collected coupon information. For example, if the user likes pasta and has positive emotions, the server will suggest "seafood pasta with a 20% off coupon at an Italian restaurant." The inputs are the user's preference data, past meal history, emotion data, and coupon information, and the output is meal suggestions.
[0762] Step 8:
[0763] The server generates meal suggestions and sends them to the user's device as push notifications or in-app messages. Using Firebase Cloud Messaging or Apple Push Notification Service, the suggestion message is sent, saying, "Seafood pasta is 20% off today at the Italian restaurant. Why not go?" The input is the generated meal suggestions, and the output is a notification sent to the user's smartphone.
[0764] Step 9:
[0765] The user receives the suggestion message and selects "Go" or "Don't go." The user's choice of "Go" or "Don't go" is recorded on the terminal. The input is the suggestion message, and the output is the user's choice.
[0766] Step 10:
[0767] The device converts the user's reaction data into JSON format and sends it to the server's API endpoint using an HTTP request. The device prepares the selection results in JSON format and sends them to the server as an HTTP POST request. The input is the user's reaction data, and the output is JSON format data.
[0768] Step 11:
[0769] The server receives the user's reaction data, retrains the machine learning model, and improves the proposed algorithm. Using Scikit-learn and TensorFlow, the accuracy of the algorithm is improved based on the reaction data. The input is the reaction data, and the output is an improved proposed algorithm.
[0770] (Application example 2)
[0771] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0772] Conventional meal recommendation systems make suggestions based only on a user's preference data and meal history, but because they do not consider the user's emotional state, they have the problem of not necessarily being able to make suggestions that will increase the user's satisfaction. Furthermore, if the suggested meal does not match the user's current mood, the effectiveness of the suggestion may be diminished, and the user may avoid using it. Furthermore, if coupon information or discount information is not up-to-date, the value to the user may be reduced.
[0773] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0774] In this invention, the server includes means for collecting and analyzing user emotion data, means for collecting the latest coupon information and discount information, and means for generating meal suggestions based on the user's preference data, emotion data, meal history, and the collected coupon information, thereby enabling more personalized meal suggestions that take the user's emotional state into consideration.
[0775] "User" means an individual or corporation that uses the system.
[0776] "Meal data" is information about daily meals posted by users, and specifically includes photos of the meals, names of the meals, comments, and dates and times.
[0777] A "server" is a computer system that receives, stores, and analyzes data sent by users.
[0778] "Emotional data" refers to information about a user's emotional state that is analyzed based on their posts and reaction data.
[0779] "Coupon information" is information about discounts and special offers at dining establishments.
[0780] "Preference data" is data relating to a user's past eating history and preferences.
[0781] "Dining suggestions" refer to suggestions about suitable meals and restaurants that the server generates based on the user's preference data, emotion data, dining history, and coupon information.
[0782] A "terminal" is a device used by a user, such as a smartphone or computer, that communicates with a server.
[0783] "Response data" is information regarding the choices and feedback a user makes in response to meal suggestions.
[0784] A "suggestion algorithm" is a computational method by which the server generates meal suggestions for the user.
[0785] The system for carrying out the invention allows users to post their daily meals and provides personalized meal suggestions based on these. Specific embodiments are described below.
[0786] Processing meal posts
[0787] Users use their smartphones to post photos of their daily meals. For example, when a user eats "katsu curry," they take a photo and enter a comment such as "I'm feeling great today!"
[0788] Sending data
[0789] The device converts the posted meal data (photo, meal name, comment, date and time) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0790] Data storage and analysis
[0791] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and meal cycles. For example, the server could analyze data from the past month and determine whether the user has a preference for curry.
[0792] Collecting and analyzing emotional data
[0793] The server uses an emotion engine to analyze the user's emotions based on the user's posting data and reaction data. If a user writes "I'm in a good mood today!" in a comment, the server recognizes this as a positive emotion.
[0794] Collect the latest coupon information
[0795] The server regularly obtains the latest coupon and discount information through the APIs of affiliated dining establishments and coupon websites and stores it in an internal database.
[0796] Generating meal suggestions
[0797] The server generates optimal meal suggestions based on the user's preference data, emotional data, past meal history, and collected coupon information. For example, if the user likes curry and has positive emotions, it generates a suggestion of "20% off curry plate at curry restaurant A."
[0798] Sending a proposal message
[0799] The server sends the generated meal suggestions to the user's device as a push notification or an in-app message. For example, it could send a message saying, "Today, curry plates at curry restaurant A are 20% off. Why not try it?"
[0800] Record of responses to the proposal
[0801] The user receives the proposal message and selects "Go" if he is interested, or "Don't go" if he is not interested. This selection is recorded in the terminal.
[0802] Sending reaction data
[0803] The device converts the user's response data to the suggestion into JSON format and sends it to the server's API endpoint using an HTTP request.
[0804] Improvement of the proposed algorithm
[0805] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The server also periodically updates the emotion engine to achieve more accurate emotion recognition.
[0806] The hardware used includes smartphones (camera, microphone, notification function) and cloud servers (Amazon Web Services, Google Cloud Platform, Microsoft Azure).The software used includes smartphone apps (iOS / Android) used on the client side, React Native, Swift, Kotlin, and Python, Django / Flask, TensorFlow / PyTorch (machine learning models), Natural Language Toolkit (NLP processing), and Firebase Realtime Database used on the server side.
[0807] Example prompt sentence:
[0808] Recognize emotions from users' meal posting data (photos, meal names, comments, date and time), and combine those emotions with past meal history and the latest coupon information to create appropriate meal suggestions. Example:
[0809] Meal name: Pork cutlet curry
[0810] Comment: I feel great today!
[0811] The result: positive emotions
[0812] Suggestion: Get 20% off a delicious curry plate at a nearby restaurant!
[0813] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0814] Step 1:
[0815] Users post their daily meals using their smartphones. The input is a photo of the meal, the name of the meal, a comment, and the date and time, and then uploads this to the application. The output of this step is the posted data.
[0816] Step 2:
[0817] The device converts the posted meal data into JSON format. The input is the meal data posted by the user, and the output is JSON format data. Specifically, the device encodes the photo data into a binary format and packages it as a JSON object along with the meal name, comment, and date and time.
[0818] Step 3:
[0819] The terminal sends the converted JSON-formatted data to the server's API endpoint using an HTTP request. The input is JSON-formatted data, and the output is a successful transmission status. Specifically, an HTTP POST request is sent to the API endpoint and a response is received.
[0820] Step 4:
[0821] The server stores the received meal data in a database. The input is JSON data sent as an HTTP request, and the output is records stored in the database. Specifically, it connects to the database and executes SQL queries to insert records.
[0822] Step 5:
[0823] The server uses the stored meal data to analyze the user's preferences and meal cycle. The input is the meal data stored in the database, and the output is the preference and cycle analysis results. Specifically, it analyzes past meal history and analyzes frequently occurring meals and patterns based on a machine learning model.
[0824] Step 6:
[0825] The server collects and analyzes emotional data based on user posted data. The input is user comments and past reaction data, and the output is the result of the emotional analysis. Specifically, a text analysis engine is used to classify emotions using natural language processing technology.
[0826] Step 7:
[0827] The server obtains the latest coupon and discount information through the APIs of affiliated dining establishments and coupon websites. The input is the API request, and the output is the retrieved coupon information. Specifically, the server periodically calls the API, extracts coupon information from the response, and stores it in a database.
[0828] Step 8:
[0829] The server generates optimal meal suggestions based on the user's preference data, emotion data, past meal history, and collected coupon information. The inputs are preference data, emotion data, meal history, and coupon information, and the output is personalized meal suggestions. Specifically, this data is integrated and optimal suggestions are generated for the user through a recommendation algorithm.
[0830] Step 9:
[0831] The server sends the generated meal suggestions to the user's device as a push notification or an in-app message. The input is the meal suggestion data, and the output is a notification to the user's device. Specifically, a push notification is sent through the notification server or the message function within the application is used.
[0832] Step 10:
[0833] The user receives the suggestion message and selects "Go" if they are interested, or "Don't go" if they are not interested. The input is the meal suggestion message, and the output is the choice response data. Specifically, options are presented through a user interface, and the user's response is obtained.
[0834] Step 11:
[0835] The terminal records the user's reaction to the suggestion and sends it to the server. The input is the user's selection reaction data, and the output is the reaction data sent as an HTTP request.
[0836] Step 12:
[0837] The server collects and analyzes user reaction data to improve the proposal algorithm. The input is the reaction data, and the output is an improved proposal algorithm. Specifically, the reaction data is fed back into the machine learning model to readjust or retrain the algorithm parameters.
[0838] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0839] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0840] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[0841] [Third embodiment]
[0842] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0843] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[0844] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0845] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[0846] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0847] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0848] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0849] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0850] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0851] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0852] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0853] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."
[0854] The present invention is a system in which a user posts daily meals, and a server analyzes the data and provides appropriate meal suggestions. Specific embodiments are described below.
[0855] Processing meal posts
[0856] Users post their daily meals through an application or website they use. For example, a user takes a photo of their lunch using their smartphone camera and uploads it to the application with the description "shrimp tomato cream pasta."
[0857] Sending data
[0858] The device sends the posted meal data (photo, meal name, comment, date and time, etc.) to the server. At this time, the device converts the data into JSON format and sends it to the server's API endpoint using an HTTP request.
[0859] Data storage and analysis
[0860] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[0861] Collect the latest coupon information
[0862] The server periodically retrieves the latest coupon and discount information through APIs from partner restaurants and coupon-providing sites, and stores it in an internal database, so that the latest deals can be provided to users.
[0863] Generating meal suggestions
[0864] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. For example, if it is known that the user likes pasta, the server generates a suggestion message of "Seafood pasta with a 20% off coupon from Italian Restaurant A."
[0865] Sending a proposal message
[0866] The server generates a meal suggestion and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0867] Record of responses to the proposal
[0868] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[0869] Sending reaction data
[0870] The terminal transmits the user's reaction data to the server in response to the suggestion. For example, information indicating that the user selected "Go" is transmitted from the terminal to the server.
[0871] Improvement of the proposed algorithm
[0872] The server analyzes the user's reaction data and updates the algorithm to refine future meal recommendations. Specifically, the server feeds the reaction data back into the machine learning model to retrain or adjust the parameters of the recommendation algorithm.
[0873] By using this system, users can reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. They can also enjoy economic benefits by taking advantage of the latest coupon information.
[0874] The processing flow will be explained below.
[0875] Step 1:
[0876] The user launches the application, takes a photo of the meal, and enters the meal description (for example, "shrimp tomato cream pasta") and a comment.
[0877] Step 2:
[0878] The device converts the input meal data (photo, meal name, comment, date and time) into JSON format and sends it to the server's API endpoint using an HTTP request.
[0879] Step 3:
[0880] The server stores the received meal data in a database, and inserts the data into the corresponding table using a database language (e.g., SQL).
[0881] Step 4:
[0882] The server analyzes the stored meal data using machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[0883] Step 5:
[0884] The server retrieves the latest coupon and discount information through the APIs of partner restaurants and coupon providers, and stores it in an internal database. The server periodically makes API calls to retrieve new coupon information.
[0885] Step 6:
[0886] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. For example, if it is known that the user likes pasta, the server will generate a suggestion message of "Seafood pasta with a 20% off coupon from Italian Restaurant A."
[0887] Step 7:
[0888] The server generates a suggestion message and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0889] Step 8:
[0890] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[0891] Step 9:
[0892] The device converts the response data to the user's suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[0893] Step 10:
[0894] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain or adjust the parameters of the recommendation algorithm.
[0895] Example 1
[0896] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0897] In today's world, many people lead busy lives that make it difficult to devote time and effort to daily meal selection. Furthermore, it is rare for users to receive recommendations that best suit their individual preferences and eating patterns, and it is difficult to efficiently utilize coupon and discount information. Therefore, there is a need for a system that allows users to more easily select appropriate meals while simultaneously enjoying economic benefits.
[0898] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0899] In this invention, the server includes: a means for users to post their daily meals; a means for transmitting the posted meal data to the server via a terminal; a means for the server to store the received meal data and analyze it using a machine learning model; a means for the server to collect the latest coupon information and discount information; a means for the server to generate meal suggestions based on the user's preference data, meal history, and collected coupon information; a means for the server to transmit the meal suggestions to the user's terminal; a means for the terminal to record the user's reactions to the suggestions and transmit them to the server; and a means for the server to analyze the user's reaction data and improve the suggestion algorithm based on the machine learning model. This allows users to reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. Furthermore, users can enjoy economic benefits by utilizing the latest coupon information.
[0900] "User" refers to an individual who uses the system to receive meal submissions and suggestions.
[0901] "Means for posting" refers to means that provides a function for users to record meal data (photos, meal names, comments, date and time) and send it to the server via the application.
[0902] A "terminal" is an electronic device (such as a smartphone, PC, or tablet) that a user uses to post their daily meals and send them to the server.
[0903] The "server" is a central management system that stores meal data, analyzes it using machine learning models, and makes recommendations.
[0904] A "machine learning model" is an algorithm or method that uses data to learn and predict and analyze user preferences and behavioral patterns.
[0905] The "analyzing means" is a means for processing the meal data received by the server and providing a function for analyzing the user's preferences and meal cycles.
[0906] "Coupon information" is information about discounts and special offers available to users.
[0907] The "collection means" is a means for providing a function for obtaining coupon information and discount information from information sources affiliated with the server.
[0908] "Meal suggestions" are specific meal or restaurant information recommended to the user based on the data analyzed and collected information by the server.
[0909] The "means for generating meal suggestions" refers to a means for providing a function for the server to form optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[0910] The "means for sending meal suggestions" refers to a means for providing a function for sending meal suggestions generated by the server to the user's device as push notifications or in-app messages.
[0911] The "means for recording a reaction to a suggestion" is a means for providing a function for recording on the terminal whether or not the user is interested in a meal suggestion.
[0912] "Response data" is information regarding the user's choice, such as "go" or "don't go," in response to a meal suggestion.
[0913] A "suggestion algorithm" is a calculation method for making optimal meal suggestions to users.
[0914] The "means for improving the proposed algorithm" is a means for providing a function for updating the proposed algorithm based on a machine learning model using user response data.
[0915] MODE FOR CARRYING OUT THE INVENTION
[0916] The present invention is a system in which a user posts daily meals, and a server analyzes the data and provides appropriate meal suggestions. Specific embodiments are described below.
[0917] Hardware used
[0918] This system requires a device (smartphone, PC, tablet, etc.) for use by the user and a server for analyzing and storing the data. The server should ideally be a computer equipped with a high-performance processor and large-capacity storage.
[0919] Software used
[0920] User interface for applications or websites
[0921] HTTP request library used to send data
[0922] Database management systems (e.g. MySQL, PostgreSQL)
[0923] Machine learning models (e.g. TensorFlow, PyTorch)
[0924] Detailed processing instructions
[0925] Processing meal posts
[0926] Users post their meals using a dedicated application or website. For example, they can take a photo of "shrimp tomato cream pasta" with their smartphone camera and post it with the comment "It was delicious." Below is an example of a prompt sentence to be input to the generative AI model.
[0927] Example prompt:
[0928] "After users post photos and comments about their meals using their smartphones, what kind of data processing is done and how are optimal meal suggestions generated?"
[0929] Sending data
[0930] The device converts the food data posted by the user into JSON format and sends it to the server's API endpoint using the HTTPS protocol. For example, the device sends data to the "POST / api / fooddata" endpoint.
[0931] Data storage and analysis
[0932] The server stores the received meal data in a database and analyzes it using a machine learning model. During this analysis, the server learns the user's preferences and eating habits. For example, by analyzing data from the past month, the server can determine the user's preference for pasta and Italian food.
[0933] Collect the latest coupon information
[0934] The server periodically calls the APIs of partner restaurants and coupon providers to retrieve the latest coupon and discount information and store it in the database. For example, the server accesses the "GET / api / coupons" endpoint to retrieve new coupon information.
[0935] Generating meal suggestions
[0936] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. Specifically, it uses a machine learning algorithm to suggest "seafood pasta with a 20% off coupon from Italian Restaurant A."
[0937] Sending a proposal message
[0938] The server sends the generated meal suggestions to the user's device as a push notification or in-app message. For example, it sends a message saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[0939] Record of responses to the proposal
[0940] The user receives the suggestion message and selects "Go" or "Don't go." This selection is recorded in the terminal.
[0941] Sending reaction data
[0942] The terminal converts the user's selection data into JSON format and sends it to the server's API endpoint using the HTTPS protocol. For example, the terminal sends data to the "POST / api / reaction" endpoint.
[0943] Improvement of the proposed algorithm
[0944] The server analyzes the received user reaction data and improves the algorithm by retraining the machine learning model, using the new reaction data to adjust the model's parameters and improve future accuracy.
[0945] Overall, by using this system, users can reduce the time and effort required for daily meal selection, receive appropriate and satisfying meal suggestions, and enjoy economic benefits by taking advantage of the latest coupon information.
[0946] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0947] Step 1:
[0948] A user posts a meal through an application or website.
[0949] Input: Data entered by the user, such as a photo of the meal, the name of the meal, comments, and the date and time
[0950] Specific operation: The user takes a photo of "Shrimp Tomato Cream Pasta" with the smartphone camera and enters the comment "It was delicious."
[0951] Output: Digital data (photo files, text information) temporarily stored on the user's device
[0952] Step 2:
[0953] The device sends the meal data to the server.
[0954] Input: Meal data (photo files, text information) temporarily saved on the user's device
[0955] Specific operation: The device converts this data into JSON format and sends it to the "POST / api / fooddata" endpoint via an HTTP request.
[0956] Output: JSON formatted meal data received by the server
[0957] Step 3:
[0958] The server stores the received meal data and analyzes it using machine learning models.
[0959] Input: JSON formatted meal data received by the server
[0960] Specific operation: The server saves the data in a database (e.g., MySQL), analyzes the user's preferences and eating habits using a machine learning model (e.g., TensorFlow), and executes an SQL query to insert the data into the database.
[0961] Output: Food data stored in a database and analysis results showing the user's preferences
[0962] Step 4:
[0963] The server collects the latest coupon and discount information.
[0964] Input: Information collected from coupon providing sites and APIs of partner restaurants
[0965] Specific operation: The server periodically accesses the "GET / api / coupons" endpoint and saves the obtained coupon information in an internal database.
[0966] Output: Latest coupon and discount information stored in the database
[0967] Step 5:
[0968] The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[0969] Input: User preference data stored on the server, meal history, latest coupon information
[0970] Specific operation: Using machine learning algorithms, it generates meal suggestions suitable for the user. For example, if the user likes pasta, it generates "Seafood pasta with a 20% off coupon from Italian restaurant A."
[0971] Output: Message data as generated meal suggestions
[0972] Step 6:
[0973] The server sends the generated meal suggestions to the user's terminal.
[0974] Input: A meal suggestion message generated within the server
[0975] Specific behavior: The server uses the push notification API or in-app messaging function to send a message saying, "Today, Italian Restaurant A is offering 20% off seafood pasta. Why not come and try it?"
[0976] Output: Meal suggestion message received on user's device
[0977] Step 7:
[0978] The user records their reaction to the suggestion message.
[0979] Input: User's "Go" or "Don't Go" choice
[0980] Specific operation: The user presses the "Go" button within the application, and the selection is recorded and saved on the device.
[0981] Output: Reaction data recorded on the user's terminal
[0982] Step 8:
[0983] The terminal transmits the user's reaction data to the server.
[0984] Input: Response data recorded on the user's device (e.g., "Go" or "Don't go")
[0985] Specific operation: The terminal converts the reaction data into JSON format and sends it to the "POST / api / reaction" endpoint.
[0986] Output: Reaction data that reaches the server
[0987] Step 9:
[0988] The server analyzes user response data and improves the proposed algorithm based on machine learning models.
[0989] Input: Reaction data arriving at the server
[0990] What it does: The server feeds new reaction data back into the machine learning model (e.g., TensorFlow) to retrain and adjust the model parameters.
[0991] Output: Improved proposed algorithm
[0992] (Application example 1)
[0993] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0994] Conventional meal management systems simply store a user's daily meal data and are unable to analyze and utilize the user's preferences or eating patterns. They also struggle to provide appropriate meal suggestions to users, and lack a mechanism for learning from the user's reactions to suggestions to improve the system's accuracy. Furthermore, it is difficult to obtain coupon and discount information in real time and make suggestions based on that information. This means that users are unable to receive effective meal suggestions and are unable to enjoy economic benefits.
[0995] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0996] In this invention, the server includes: a means for users to post their daily meals; a means for transmitting the posted meal data to the server; a means for the server to store and analyze the received meal data; a means for the server to collect the latest coupon information and discount information; a means for the server to generate meal suggestions based on the user's preference data, meal history, and the collected coupon information; a means for the server to periodically obtain the latest coupon information and discount information through the API of an online service affiliated with the server; a means for the server to send the meal suggestions to the user's mobile device as a push notification or in-app message; a means for the device to record the user's responses to the suggestions and transmit them to the server; and a means for the server to analyze the user's response data and improve the suggestion algorithm. This enables appropriate meal suggestions based on the user's preferences and eating patterns, and provides economic benefits to the user by obtaining the latest coupon information in real time. Furthermore, the accuracy of the suggestions can be improved by analyzing the user's response data and improving the suggestion algorithm.
[0997] A "user" is an individual or group who posts their daily meals and receives meal suggestions from the system.
[0998] "Meal data" is data that includes information such as photos of meals posted by users, meal names, comments, and dates and times.
[0999] "Server" refers to an information processing system that receives, stores, and analyzes meal data, collects coupon information, and generates meal suggestions.
[1000] "Coupon information" refers to advantageous information provided by affiliated online services, including discount information and special offer information.
[1001] "Dining suggestions" are specific suggestions about meals generated by the server based on the user's preference data, meal history, and coupon information.
[1002] "Preference data" is data that indicates the types and patterns of meals that a user prefers.
[1003] "Diet history" is a collection of meal data posted by a user in the past.
[1004] A "terminal" is a portable information terminal or computer device that a user uses to access the system.
[1005] "Response data" is data indicating the user's response to a meal suggestion (for example, "order," "skip," etc.).
[1006] A "suggestion algorithm" is a set of computational methods and rules for generating optimal meal suggestions to send to users.
[1007] "Push Notifications" or "In-App Messages" are real-time notifications or messages sent from a server to a user's device.
[1008] An "online service API" is a program interface for connecting with external online services.
[1009] The present invention provides a system that allows users to post daily meals and receive meal suggestions. Specific embodiments are described below.
[1010] User Interface Design
[1011] Users post their daily meals using a smartphone app. The app provides an interface for taking photos of meals and entering descriptions (e.g., "cheeseburger"). The meal data entered by the user is converted into JSON format and sent to the server using an HTTP request.
[1012] Server Configuration
[1013] The server is a high-performance information processing system that provides the following main functions:
[1014] 1. Data storage: The server stores the meal data received from the user in a database (e.g., MySQL).
[1015] 2. Data analysis: The server uses machine learning models (e.g., TensorFlow or PyTorch) to analyze the user's dietary data and understand the user's preferences and eating cycles.
[1016] 3. Obtaining coupon information: The server periodically collects the latest coupon and discount information through the APIs of affiliated online services and stores it in an internal database.
[1017] 4. Generating meal suggestions: The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information. For example, if a user likes "cheeseburgers," the server can suggest "restaurants that offer cheeseburgers at a 20% discount."
[1018] 5. Notification function: The server sends meal suggestions to the user's mobile device as push notifications or in-app messages.
[1019] User response and algorithm improvements
[1020] When a user responds to a suggestion by choosing "order" or "skip," the data is recorded on the device and sent to the server, which analyzes the response data to improve the suggestion algorithm, resulting in more refined suggestions for future orders.
[1021] Specific examples
[1022] For example, if a user has a preference for "cheeseburgers" and "pizza," the server can analyze this and, based on relevant coupon information, send a suggestion such as "Cheeseburgers are 20% off today at Restaurant X!" Whether the user accepts the suggestion is recorded on the device and reflected in the next suggestion.
[1023] Hardware / Software used
[1024] Hardware: Smartphone (iOS, Android)
[1025] Software: Python, TensorFlow, PyTorch, MySQL, Flask (API server)
[1026] Prompt Sentence Examples
[1027] "Please create an app that allows users to post photos and names of their daily meals. The system will send the data to a server, perform machine learning analysis, obtain coupon information, and provide personalized meal suggestions."
[1028] This invention allows users to receive meal suggestions based on their preferences and enjoy economic benefits by utilizing coupon information. In addition, the suggestion algorithm is continuously improved based on user response data, thereby improving the accuracy of suggestions.
[1029] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1030] Step 1:
[1031] Users post their daily meals using a smartphone app.
[1032] Input: Meal photo, meal name, comment, date and time
[1033] Processing: Meal information is entered through the user interface and converted into JSON format.
[1034] Output: Meal data (JSON format)
[1035] Step 2:
[1036] The terminal transmits the posted meal data to the server.
[1037] Input: Meal data (JSON format)
[1038] Processing: Send an HTTP request to the server's API endpoint
[1039] Output: Meal data sent to the server
[1040] Step 3:
[1041] The server stores the received meal data in a database.
[1042] Input: Meal data sent to the server
[1043] Processing: Data storage in a database (e.g. MySQL)
[1044] Output: Meal data stored in a database
[1045] Step 4:
[1046] The server analyzes the stored meal data to understand the user's preferences and eating cycles.
[1047] Input: Food data stored in a database
[1048] Processing: Data analysis using machine learning models (e.g., TensorFlow, PyTorch)
[1049] Output: User preference data, eating patterns
[1050] Step 5:
[1051] The server regularly obtains the latest coupon and discount information through the API of affiliated online services.
[1052] Input: Coupon API endpoint information
[1053] Processing: Call an external API to get the latest coupon information and save it in the database
[1054] Output: Coupon information stored in the database
[1055] Step 6:
[1056] The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[1057] Input: User preference data, meal history, coupon information
[1058] Processing: Match user data with coupon information to generate personalized meal suggestions
[1059] Output: Meal suggestion message
[1060] Step 7:
[1061] The server generates meal suggestions and sends them to the user's mobile device as push notifications or in-app messages.
[1062] Input: Meal suggestion message
[1063] Processing: Send as a push notification or in-app message
[1064] Output: Meal suggestions displayed on the user's mobile device
[1065] Step 8:
[1066] The user selects "Order" or "Skip" in response to the suggestion message.
[1067] Input: Meal suggestion message, user choice (order / skip)
[1068] Action: Record user responses through the user interface
[1069] Output: User response data
[1070] Step 9:
[1071] The terminal transmits the user's reaction data to the server.
[1072] Input: User response data
[1073] Processing: Send an HTTP request to the server's API endpoint
[1074] Output: Response data sent to the server
[1075] Step 10:
[1076] The server analyzes user response data and improves the suggestion algorithm.
[1077] Input: Reaction data sent to the server
[1078] Processing: Feedback of reaction data to machine learning models to retrain algorithms or adjust parameters
[1079] Output: Improved proposed algorithm
[1080] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1081] The present invention is a system in which a user posts daily meals, a server analyzes the data, and provides appropriate meal suggestions, and by combining it with an emotion engine that recognizes the user's emotions, more personalized suggestions can be made. Specific embodiments are described below.
[1082] Processing meal posts
[1083] Users post their daily meals through an application or website they use. For example, a user takes a photo of their lunch using their smartphone camera and uploads it to the application with the description "shrimp tomato cream pasta."
[1084] Sending data
[1085] The device converts the posted meal data (photo, meal name, comment, date and time, etc.) into JSON format and sends it to the server's API endpoint using an HTTP request.
[1086] Data storage and analysis
[1087] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[1088] Collect the latest coupon information
[1089] The server periodically retrieves the latest coupon and discount information through APIs from partner restaurants and coupon-providing sites, and stores it in an internal database, so that the latest deals can be provided to users.
[1090] Collecting and analyzing emotional data
[1091] The server uses an emotion engine to analyze users' emotions based on their posting data and reaction data. For example, if a user comments on a meal as "very delicious," the server recognizes this positive emotion. The emotion engine can also identify users' emotions through voice input and text analysis.
[1092] Generating meal suggestions
[1093] The server generates optimal meal suggestions based on the user's preference data, past meal history, collected coupon information, and emotional data. For example, if the user likes pasta and is expressing positive emotions, the server generates a suggested message: "Seafood pasta with a 20% off coupon from Italian Restaurant A." If the user is expressing negative emotions, the server makes suggestions to improve the user's mood.
[1094] Sending a proposal message
[1095] The server generates a meal suggestion and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[1096] Record of responses to the proposal
[1097] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[1098] Sending reaction data
[1099] The device converts the response data to the user's suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[1100] Improvement of the proposed algorithm
[1101] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The emotion engine is also periodically updated to achieve more accurate emotion recognition.
[1102] By using this system, users can reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. In addition, by receiving suggestions based on the user's emotional state, it is possible to provide a more satisfying dining experience.
[1103] The processing flow will be explained below.
[1104] Step 1:
[1105] A user launches the application, takes a photo of the meal, and inputs the meal description (e.g., "shrimp tomato cream pasta") and a comment. The user's feelings may also be input through the comment.
[1106] Step 2:
[1107] The device converts the input food data (photo, food name, comment, date and time, and emotion) into JSON format and sends it to the server's API endpoint using an HTTP request.
[1108] Step 3:
[1109] The server stores the received meal data in a database, and inserts the data into the corresponding table using a database language (e.g., SQL).
[1110] Step 4:
[1111] The server analyzes the stored food and emotional data using machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food. It also analyzes the user's emotional state.
[1112] Step 5:
[1113] The server retrieves the latest coupon and discount information through the APIs of partner restaurants and coupon providers, and stores it in an internal database. The server periodically makes API calls to retrieve new coupon information.
[1114] Step 6:
[1115] The server generates optimal meal suggestions based on the user's preference data, past meal history, collected coupon information, and emotional data. For example, if the user likes pasta and is expressing positive emotions, the server generates a suggested message: "Seafood pasta with a 20% off coupon from Italian Restaurant A." If the user is expressing negative emotions, the server makes suggestions to improve their mood.
[1116] Step 7:
[1117] The server generates a suggestion message and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[1118] Step 8:
[1119] When the user receives the proposal message, if they are interested, they select "Go"; if they are not interested, they select "Don't go." This selection is recorded in the device. The user's emotions may also be recorded again.
[1120] Step 9:
[1121] The device converts the user's reaction data (selections and emotions) to the suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[1122] Step 10:
[1123] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The emotion engine is also periodically updated to achieve more accurate emotion recognition.
[1124] This series of processes allows users to reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. In addition, by receiving suggestions based on the user's emotional state, it is possible to provide a more personalized dining experience.
[1125] Example 2
[1126] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1127] In modern society, users must spend a lot of time and effort on daily meal choices. To solve this problem, a system is needed that can provide more personalized and appropriate meal suggestions based on the user's individual preferences and past meal history. However, existing systems lack the ability to take user emotions into consideration when making suggestions, which hinders further improvement of user satisfaction. Another challenge is providing the latest coupon and discount information in a timely manner.
[1128] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for recognizing emotions using user posted data, means for collecting and storing the latest coupon information and discount information, and means for generating meal suggestions based on the user's preference data, meal history, emotion data, and the collected coupon information. This enables more personalized meal suggestions that take the user's emotions into consideration, which not only improves user satisfaction but also makes it possible to provide the latest discount information in a timely manner.
[1129] "User" refers to an individual who uses this system to post daily meal data and receive meal suggestions.
[1130] "Terminal" refers to a device used by a user, including a smartphone, tablet, or PC.
[1131] "Server" refers to a central processing unit for receiving, storing, and analyzing data from users and generating meal recommendations.
[1132] "Meal data" includes information such as photos of meals posted by users, descriptions, comments, dates and times.
[1133] "Emotion engine" refers to software or algorithms for identifying and analyzing emotions from user-submitted data.
[1134] "Coupon information" refers to information that represents economic benefits provided to users, such as discount coupons and promotional codes.
[1135] "Preference data" is data related to the user's food preferences, including past eating history and favorite dishes.
[1136] "Meal suggestions" refer to specific meal recommendations generated by the server based on the user's meal history, preference data, emotion data, and coupon information.
[1137] "Response Data" refers to data including the selections and feedback provided by a user in response to meal suggestions from the server.
[1138] "Suggestion Algorithm" refers to a set of computational methods or models for generating optimal meal suggestions for a user.
[1139] This system allows users to post their daily meals, and the server analyzes the data to provide optimal meal suggestions. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, more personalized suggestions can be made.
[1140] Hardware and Software Configuration
[1141] Users use devices such as smartphones, tablets, and PCs to access applications or websites. The devices must have a camera and internet connection.
[1142] The server can use cloud-based services, using MySQL or PostgreSQL as the database, Python and its libraries (e.g., Scikit-learn, TensorFlow) to run the machine learning model, and Google Cloud Natural Language API and NLTK library as the emotion engine.
[1143] Processing flow and specific examples
[1144] 1. When a user logs in to the application or website and posts meal data, they take a photo of the meal with their smartphone camera and post it with the description "Shrimp tomato cream pasta."
[1145] 2. The device converts this posted data (photo, meal name, comment, date and time, etc.) into JSON format and sends it to the server's API endpoint using an HTTP request.
[1146] 3. The server stores the received meal data in a database and uses a machine learning model to analyze the user's preferences and meal cycles. By analyzing data from the past month, the server recognizes the user's tendency to like pasta and Italian food.
[1147] 4. The server periodically retrieves the latest coupon and discount information from the APIs of partner restaurants and coupon providers, and stores it in an internal database. This information is used to provide users with the latest deals.
[1148] 5. The server performs sentiment analysis on the user's posted data using the Google Cloud Natural Language API and NLTK library. For example, if a user comments "It was very delicious," the server recognizes the positive sentiment.
[1149] 6. The server generates optimal meal suggestions based on the user's preference data, past meal history, emotion data, and collected coupon information. For example, if the user likes pasta and has positive emotions, it will suggest "seafood pasta with a 20% off coupon at an Italian restaurant."
[1150] 7. The server generates a suggestion message and sends it to the user's device as a push notification or in-app message. For example, a message like "Seafood pasta is 20% off at the Italian restaurant today. Why don't you come and try it?" is sent to the user's smartphone.
[1151] 8. The user receives this suggestion message and selects "Go" or "Don't go." This selection is recorded in the terminal.
[1152] 9. The device converts the user's reaction data into JSON format and sends it to the server's API endpoint using an HTTP request.
[1153] 10. The server collects this reaction data and retrains the machine learning model to improve the recommendation algorithm, resulting in more accurate meal recommendations.
[1154] Prompt Sentence Examples
[1155] When a user inputs into the app, "I'm not sure what to eat today," the server references the user's past data and current emotional state to generate optimal meal suggestions. In this way, users can receive personalized suggestions based on their preferences and moods.
[1156] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1157] Step 1:
[1158] A user logs in to an application or website and posts meal data. The user takes a photo of their lunch using their smartphone camera, enters the meal name and a comment, and taps the "Post" button with the description "Shrimp tomato cream pasta." The inputs are the photo, meal name, comment, and date and time, and are sent to the device as output.
[1159] Step 2:
[1160] The device converts the posted meal data into JSON format and sends it to the server's API endpoint using an HTTP request. For example, it generates JSON data including a photo, meal name, comment, and date and time, and sends it to the server as an HTTP POST request. The input is the meal data received from the user, and the output is JSON format data.
[1161] Step 3:
[1162] The server receives the HTTP request and stores it in a database. The server converts the received data into an appropriate structure to efficiently store the data in the database (e.g. MySQL or PostgreSQL). The input is JSON data and the output is the data stored in the database.
[1163] Step 4:
[1164] The server analyzes the meal data stored in the database using a machine learning model. It uses Python's Scikit-learn and TensorFlow to perform analysis to understand the user's preferences and meal cycles. For example, it analyzes the user's preferences using data from the past month. The input is the stored meal data, and the output is the analysis results regarding preference data and meal cycles.
[1165] Step 5:
[1166] The server sends queries to the APIs of partner restaurants and coupon providers to obtain the latest coupon and discount information. Coupon information is periodically obtained via the API and stored in an internal database. The input is the API query, and the output is the obtained coupon information.
[1167] Step 6:
[1168] The server passes user posted data to the emotion engine, which analyzes the user's emotions. The Google Cloud Natural Language API and NLTK library are used to identify emotions from posted comments. Positive comments such as "It was very delicious" are input into the emotion engine, which outputs the emotion data.
[1169] Step 7:
[1170] The server generates meal suggestions based on the user's preference data, meal history, emotion data, and collected coupon information. For example, if the user likes pasta and has positive emotions, the server will suggest "seafood pasta with a 20% off coupon at an Italian restaurant." The inputs are the user's preference data, past meal history, emotion data, and coupon information, and the output is meal suggestions.
[1171] Step 8:
[1172] The server generates meal suggestions and sends them to the user's device as push notifications or in-app messages. Using Firebase Cloud Messaging or Apple Push Notification Service, the suggestion message is sent, saying, "Seafood pasta is 20% off today at the Italian restaurant. Why not go?" The input is the generated meal suggestions, and the output is a notification sent to the user's smartphone.
[1173] Step 9:
[1174] The user receives the suggestion message and selects "Go" or "Don't go." The user's choice of "Go" or "Don't go" is recorded on the terminal. The input is the suggestion message, and the output is the user's choice.
[1175] Step 10:
[1176] The device converts the user's reaction data into JSON format and sends it to the server's API endpoint using an HTTP request. The device prepares the selection results in JSON format and sends them to the server as an HTTP POST request. The input is the user's reaction data, and the output is JSON format data.
[1177] Step 11:
[1178] The server receives the user's reaction data, retrains the machine learning model, and improves the proposed algorithm. Using Scikit-learn and TensorFlow, the accuracy of the algorithm is improved based on the reaction data. The input is the reaction data, and the output is an improved proposed algorithm.
[1179] (Application example 2)
[1180] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1181] Conventional meal recommendation systems make suggestions based only on a user's preference data and meal history, but because they do not consider the user's emotional state, they have the problem of not necessarily being able to make suggestions that will increase the user's satisfaction. Furthermore, if the suggested meal does not match the user's current mood, the effectiveness of the suggestion may be diminished, and the user may avoid using it. Furthermore, if coupon information or discount information is not up-to-date, the value to the user may be reduced.
[1182] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1183] In this invention, the server includes means for collecting and analyzing user emotion data, means for collecting the latest coupon information and discount information, and means for generating meal suggestions based on the user's preference data, emotion data, meal history, and the collected coupon information, thereby enabling more personalized meal suggestions that take the user's emotional state into consideration.
[1184] "User" means an individual or corporation that uses the system.
[1185] "Meal data" is information about daily meals posted by users, and specifically includes photos of the meals, names of the meals, comments, and dates and times.
[1186] A "server" is a computer system that receives, stores, and analyzes data sent by users.
[1187] "Emotional data" refers to information about a user's emotional state that is analyzed based on their posts and reaction data.
[1188] "Coupon information" is information about discounts and special offers at dining establishments.
[1189] "Preference data" is data relating to a user's past eating history and preferences.
[1190] "Dining suggestions" refer to suggestions about suitable meals and restaurants that the server generates based on the user's preference data, emotion data, dining history, and coupon information.
[1191] A "terminal" is a device used by a user, such as a smartphone or computer, that communicates with a server.
[1192] "Response data" is information regarding the choices and feedback a user makes in response to meal suggestions.
[1193] A "suggestion algorithm" is a computational method by which the server generates meal suggestions for the user.
[1194] The system for carrying out the invention allows users to post their daily meals and provides personalized meal suggestions based on these. Specific embodiments are described below.
[1195] Processing meal posts
[1196] Users use their smartphones to post photos of their daily meals. For example, when a user eats "katsu curry," they take a photo and enter a comment such as "I'm feeling great today!"
[1197] Sending data
[1198] The device converts the posted meal data (photo, meal name, comment, date and time) into JSON format and sends it to the server's API endpoint using an HTTP request.
[1199] Data storage and analysis
[1200] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and meal cycles. For example, the server could analyze data from the past month and determine whether the user has a preference for curry.
[1201] Collecting and analyzing emotional data
[1202] The server uses an emotion engine to analyze the user's emotions based on the user's posting data and reaction data. If a user writes "I'm in a good mood today!" in a comment, the server recognizes this as a positive emotion.
[1203] Collect the latest coupon information
[1204] The server regularly obtains the latest coupon and discount information through the APIs of affiliated dining establishments and coupon websites and stores it in an internal database.
[1205] Generating meal suggestions
[1206] The server generates optimal meal suggestions based on the user's preference data, emotional data, past meal history, and collected coupon information. For example, if the user likes curry and has positive emotions, it generates a suggestion of "20% off curry plate at curry restaurant A."
[1207] Sending a proposal message
[1208] The server sends the generated meal suggestions to the user's device as a push notification or an in-app message. For example, it could send a message saying, "Today, curry plates at curry restaurant A are 20% off. Why not try it?"
[1209] Record of responses to the proposal
[1210] The user receives the proposal message and selects "Go" if he is interested, or "Don't go" if he is not interested. This selection is recorded in the terminal.
[1211] Sending reaction data
[1212] The device converts the user's response data to the suggestion into JSON format and sends it to the server's API endpoint using an HTTP request.
[1213] Improvement of the proposed algorithm
[1214] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The server also periodically updates the emotion engine to achieve more accurate emotion recognition.
[1215] The hardware used includes smartphones (camera, microphone, notification function) and cloud servers (Amazon Web Services, Google Cloud Platform, Microsoft Azure).The software used includes smartphone apps (iOS / Android) used on the client side, React Native, Swift, Kotlin, and Python, Django / Flask, TensorFlow / PyTorch (machine learning models), Natural Language Toolkit (NLP processing), and Firebase Realtime Database used on the server side.
[1216] Example prompt sentence:
[1217] Recognize emotions from users' meal posting data (photos, meal names, comments, date and time), and combine those emotions with past meal history and the latest coupon information to create appropriate meal suggestions. Example:
[1218] Meal name: Pork cutlet curry
[1219] Comment: I feel great today!
[1220] The result: positive emotions
[1221] Suggestion: Get 20% off a delicious curry plate at a nearby restaurant!
[1222] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1223] Step 1:
[1224] Users post their daily meals using their smartphones. The input is a photo of the meal, the name of the meal, a comment, and the date and time, and then uploads this to the application. The output of this step is the posted data.
[1225] Step 2:
[1226] The device converts the posted meal data into JSON format. The input is the meal data posted by the user, and the output is JSON format data. Specifically, the device encodes the photo data into a binary format and packages it as a JSON object along with the meal name, comment, and date and time.
[1227] Step 3:
[1228] The terminal sends the converted JSON-formatted data to the server's API endpoint using an HTTP request. The input is JSON-formatted data, and the output is a successful transmission status. Specifically, an HTTP POST request is sent to the API endpoint and a response is received.
[1229] Step 4:
[1230] The server stores the received meal data in a database. The input is JSON data sent as an HTTP request, and the output is records stored in the database. Specifically, it connects to the database and executes SQL queries to insert records.
[1231] Step 5:
[1232] The server uses the stored meal data to analyze the user's preferences and meal cycle. The input is the meal data stored in the database, and the output is the preference and cycle analysis results. Specifically, it analyzes past meal history and analyzes frequently occurring meals and patterns based on a machine learning model.
[1233] Step 6:
[1234] The server collects and analyzes emotional data based on user posted data. The input is user comments and past reaction data, and the output is the result of the emotional analysis. Specifically, a text analysis engine is used to classify emotions using natural language processing technology.
[1235] Step 7:
[1236] The server obtains the latest coupon and discount information through the APIs of affiliated dining establishments and coupon websites. The input is the API request, and the output is the retrieved coupon information. Specifically, the server periodically calls the API, extracts coupon information from the response, and stores it in a database.
[1237] Step 8:
[1238] The server generates optimal meal suggestions based on the user's preference data, emotion data, past meal history, and collected coupon information. The inputs are preference data, emotion data, meal history, and coupon information, and the output is personalized meal suggestions. Specifically, this data is integrated and optimal suggestions are generated for the user through a recommendation algorithm.
[1239] Step 9:
[1240] The server sends the generated meal suggestions to the user's device as a push notification or an in-app message. The input is the meal suggestion data, and the output is a notification to the user's device. Specifically, a push notification is sent through the notification server or the message function within the application is used.
[1241] Step 10:
[1242] The user receives the suggestion message and selects "Go" if they are interested, or "Don't go" if they are not interested. The input is the meal suggestion message, and the output is the choice response data. Specifically, options are presented through a user interface, and the user's response is obtained.
[1243] Step 11:
[1244] The terminal records the user's reaction to the suggestion and sends it to the server. The input is the user's selection reaction data, and the output is the reaction data sent as an HTTP request.
[1245] Step 12:
[1246] The server collects and analyzes user reaction data to improve the proposal algorithm. The input is the reaction data, and the output is an improved proposal algorithm. Specifically, the reaction data is fed back into the machine learning model to readjust or retrain the algorithm parameters.
[1247] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1248] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1249] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1250] [Fourth embodiment]
[1251] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1252] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1253] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1254] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1255] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1256] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1257] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1258] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1259] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1260] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1261] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1262] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1263] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1264] The present invention is a system in which a user posts daily meals, and a server analyzes the data and provides appropriate meal suggestions. Specific embodiments are described below.
[1265] Processing meal posts
[1266] Users post their daily meals through an application or website they use. For example, a user takes a photo of their lunch using their smartphone camera and uploads it to the application with the description "shrimp tomato cream pasta."
[1267] Sending data
[1268] The device sends the posted meal data (photo, meal name, comment, date and time, etc.) to the server. At this time, the device converts the data into JSON format and sends it to the server's API endpoint using an HTTP request.
[1269] Data storage and analysis
[1270] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[1271] Collect the latest coupon information
[1272] The server periodically retrieves the latest coupon and discount information through APIs from partner restaurants and coupon-providing sites, and stores it in an internal database, so that the latest deals can be provided to users.
[1273] Generating meal suggestions
[1274] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. For example, if it is known that the user likes pasta, the server generates a suggestion message of "Seafood pasta with a 20% off coupon from Italian Restaurant A."
[1275] Sending a proposal message
[1276] The server generates a meal suggestion and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[1277] Record of responses to the proposal
[1278] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[1279] Sending reaction data
[1280] The terminal transmits the user's reaction data to the server in response to the suggestion. For example, information indicating that the user selected "Go" is transmitted from the terminal to the server.
[1281] Improvement of the proposed algorithm
[1282] The server analyzes the user's reaction data and updates the algorithm to refine future meal recommendations. Specifically, the server feeds the reaction data back into the machine learning model to retrain or adjust the parameters of the recommendation algorithm.
[1283] By using this system, users can reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. They can also enjoy economic benefits by taking advantage of the latest coupon information.
[1284] The processing flow will be explained below.
[1285] Step 1:
[1286] The user launches the application, takes a photo of the meal, and enters the meal description (for example, "shrimp tomato cream pasta") and a comment.
[1287] Step 2:
[1288] The device converts the input meal data (photo, meal name, comment, date and time) into JSON format and sends it to the server's API endpoint using an HTTP request.
[1289] Step 3:
[1290] The server stores the received meal data in a database, and inserts the data into the corresponding table using a database language (e.g., SQL).
[1291] Step 4:
[1292] The server analyzes the stored meal data using machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[1293] Step 5:
[1294] The server retrieves the latest coupon and discount information through the APIs of partner restaurants and coupon providers, and stores it in an internal database. The server periodically makes API calls to retrieve new coupon information.
[1295] Step 6:
[1296] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. For example, if it is known that the user likes pasta, the server will generate a suggestion message of "Seafood pasta with a 20% off coupon from Italian Restaurant A."
[1297] Step 7:
[1298] The server generates a suggestion message and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[1299] Step 8:
[1300] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[1301] Step 9:
[1302] The device converts the response data to the user's suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[1303] Step 10:
[1304] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain or adjust the parameters of the recommendation algorithm.
[1305] Example 1
[1306] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1307] In today's world, many people lead busy lives that make it difficult to devote time and effort to daily meal selection. Furthermore, it is rare for users to receive recommendations that best suit their individual preferences and eating patterns, and it is difficult to efficiently utilize coupon and discount information. Therefore, there is a need for a system that allows users to more easily select appropriate meals while simultaneously enjoying economic benefits.
[1308] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1309] In this invention, the server includes: a means for users to post their daily meals; a means for transmitting the posted meal data to the server via a terminal; a means for the server to store the received meal data and analyze it using a machine learning model; a means for the server to collect the latest coupon information and discount information; a means for the server to generate meal suggestions based on the user's preference data, meal history, and collected coupon information; a means for the server to transmit the meal suggestions to the user's terminal; a means for the terminal to record the user's reactions to the suggestions and transmit them to the server; and a means for the server to analyze the user's reaction data and improve the suggestion algorithm based on the machine learning model. This allows users to reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. Furthermore, users can enjoy economic benefits by utilizing the latest coupon information.
[1310] "User" refers to an individual who uses the system to receive meal submissions and suggestions.
[1311] "Means for posting" refers to means that provides a function for users to record meal data (photos, meal names, comments, date and time) and send it to the server via the application.
[1312] A "terminal" is an electronic device (such as a smartphone, PC, or tablet) that a user uses to post their daily meals and send them to the server.
[1313] The "server" is a central management system that stores meal data, analyzes it using machine learning models, and makes recommendations.
[1314] A "machine learning model" is an algorithm or method that uses data to learn and predict and analyze user preferences and behavioral patterns.
[1315] The "analyzing means" is a means for processing the meal data received by the server and providing a function for analyzing the user's preferences and meal cycles.
[1316] "Coupon information" is information about discounts and special offers available to users.
[1317] The "collection means" is a means for providing a function for obtaining coupon information and discount information from information sources affiliated with the server.
[1318] "Meal suggestions" are specific meal or restaurant information recommended to the user based on the data analyzed and collected information by the server.
[1319] The "means for generating meal suggestions" refers to a means for providing a function for the server to form optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[1320] The "means for sending meal suggestions" refers to a means for providing a function for sending meal suggestions generated by the server to the user's device as push notifications or in-app messages.
[1321] The "means for recording a reaction to a suggestion" is a means for providing a function for recording on the terminal whether or not the user is interested in a meal suggestion.
[1322] "Response data" is information regarding the user's choice, such as "go" or "don't go," in response to a meal suggestion.
[1323] A "suggestion algorithm" is a calculation method for making optimal meal suggestions to users.
[1324] The "means for improving the proposed algorithm" is a means for providing a function for updating the proposed algorithm based on a machine learning model using user response data.
[1325] MODE FOR CARRYING OUT THE INVENTION
[1326] The present invention is a system in which a user posts daily meals, and a server analyzes the data and provides appropriate meal suggestions. Specific embodiments are described below.
[1327] Hardware used
[1328] This system requires a device (smartphone, PC, tablet, etc.) for use by the user and a server for analyzing and storing the data. The server should ideally be a computer equipped with a high-performance processor and large-capacity storage.
[1329] Software used
[1330] User interface for applications or websites
[1331] HTTP request library used to send data
[1332] Database management systems (e.g. MySQL, PostgreSQL)
[1333] Machine learning models (e.g. TensorFlow, PyTorch)
[1334] Detailed processing instructions
[1335] Processing meal posts
[1336] Users post their meals using a dedicated application or website. For example, they can take a photo of "shrimp tomato cream pasta" with their smartphone camera and post it with the comment "It was delicious." Below is an example of a prompt sentence to be input to the generative AI model.
[1337] Example prompt:
[1338] "After users post photos and comments about their meals using their smartphones, what kind of data processing is done and how are optimal meal suggestions generated?"
[1339] Sending data
[1340] The device converts the food data posted by the user into JSON format and sends it to the server's API endpoint using the HTTPS protocol. For example, the device sends data to the "POST / api / fooddata" endpoint.
[1341] Data storage and analysis
[1342] The server stores the received meal data in a database and analyzes it using a machine learning model. During this analysis, the server learns the user's preferences and eating habits. For example, by analyzing data from the past month, the server can determine the user's preference for pasta and Italian food.
[1343] Collect the latest coupon information
[1344] The server periodically calls the APIs of partner restaurants and coupon providers to retrieve the latest coupon and discount information and store it in the database. For example, the server accesses the "GET / api / coupons" endpoint to retrieve new coupon information.
[1345] Generating meal suggestions
[1346] The server generates optimal meal suggestions based on the user's preference data, past meal history, and collected coupon information. Specifically, it uses a machine learning algorithm to suggest "seafood pasta with a 20% off coupon from Italian Restaurant A."
[1347] Sending a proposal message
[1348] The server sends the generated meal suggestions to the user's device as a push notification or in-app message. For example, it sends a message saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[1349] Record of responses to the proposal
[1350] The user receives the suggestion message and selects "Go" or "Don't go." This selection is recorded in the terminal.
[1351] Sending reaction data
[1352] The terminal converts the user's selection data into JSON format and sends it to the server's API endpoint using the HTTPS protocol. For example, the terminal sends data to the "POST / api / reaction" endpoint.
[1353] Improvement of the proposed algorithm
[1354] The server analyzes the received user reaction data and improves the algorithm by retraining the machine learning model, using the new reaction data to adjust the model's parameters and improve future accuracy.
[1355] Overall, by using this system, users can reduce the time and effort required for daily meal selection, receive appropriate and satisfying meal suggestions, and enjoy economic benefits by taking advantage of the latest coupon information.
[1356] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1357] Step 1:
[1358] A user posts a meal through an application or website.
[1359] Input: Data entered by the user, such as a photo of the meal, the name of the meal, comments, and the date and time
[1360] Specific operation: The user takes a photo of "Shrimp Tomato Cream Pasta" with the smartphone camera and enters the comment "It was delicious."
[1361] Output: Digital data (photo files, text information) temporarily stored on the user's device
[1362] Step 2:
[1363] The device sends the meal data to the server.
[1364] Input: Meal data (photo files, text information) temporarily saved on the user's device
[1365] Specific operation: The device converts this data into JSON format and sends it to the "POST / api / fooddata" endpoint via an HTTP request.
[1366] Output: JSON formatted meal data received by the server
[1367] Step 3:
[1368] The server stores the received meal data and analyzes it using machine learning models.
[1369] Input: JSON formatted meal data received by the server
[1370] Specific operation: The server saves the data in a database (e.g., MySQL), analyzes the user's preferences and eating habits using a machine learning model (e.g., TensorFlow), and executes an SQL query to insert the data into the database.
[1371] Output: Food data stored in a database and analysis results showing the user's preferences
[1372] Step 4:
[1373] The server collects the latest coupon and discount information.
[1374] Input: Information collected from coupon providing sites and APIs of partner restaurants
[1375] Specific operation: The server periodically accesses the "GET / api / coupons" endpoint and saves the obtained coupon information in an internal database.
[1376] Output: Latest coupon and discount information stored in the database
[1377] Step 5:
[1378] The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[1379] Input: User preference data stored on the server, meal history, latest coupon information
[1380] Specific operation: Using machine learning algorithms, it generates meal suggestions suitable for the user. For example, if the user likes pasta, it generates "Seafood pasta with a 20% off coupon from Italian restaurant A."
[1381] Output: Message data as generated meal suggestions
[1382] Step 6:
[1383] The server sends the generated meal suggestions to the user's terminal.
[1384] Input: A meal suggestion message generated within the server
[1385] Specific behavior: The server uses the push notification API or in-app messaging function to send a message saying, "Today, Italian Restaurant A is offering 20% off seafood pasta. Why not come and try it?"
[1386] Output: Meal suggestion message received on user's device
[1387] Step 7:
[1388] The user records their reaction to the suggestion message.
[1389] Input: User's "Go" or "Don't Go" choice
[1390] Specific operation: The user presses the "Go" button within the application, and the selection is recorded and saved on the device.
[1391] Output: Reaction data recorded on the user's terminal
[1392] Step 8:
[1393] The terminal transmits the user's reaction data to the server.
[1394] Input: Response data recorded on the user's device (e.g., "Go" or "Don't go")
[1395] Specific operation: The terminal converts the reaction data into JSON format and sends it to the "POST / api / reaction" endpoint.
[1396] Output: Reaction data that reaches the server
[1397] Step 9:
[1398] The server analyzes user response data and improves the proposed algorithm based on machine learning models.
[1399] Input: Reaction data arriving at the server
[1400] What it does: The server feeds new reaction data back into the machine learning model (e.g., TensorFlow) to retrain and adjust the model parameters.
[1401] Output: Improved proposed algorithm
[1402] (Application example 1)
[1403] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1404] Conventional meal management systems simply store a user's daily meal data and are unable to analyze and utilize the user's preferences or eating patterns. They also struggle to provide appropriate meal suggestions to users, and lack a mechanism for learning from the user's reactions to suggestions to improve the system's accuracy. Furthermore, it is difficult to obtain coupon and discount information in real time and make suggestions based on that information. This means that users are unable to receive effective meal suggestions and are unable to enjoy economic benefits.
[1405] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1406] In this invention, the server includes: a means for users to post their daily meals; a means for transmitting the posted meal data to the server; a means for the server to store and analyze the received meal data; a means for the server to collect the latest coupon information and discount information; a means for the server to generate meal suggestions based on the user's preference data, meal history, and the collected coupon information; a means for the server to periodically obtain the latest coupon information and discount information through the API of an online service affiliated with the server; a means for the server to send the meal suggestions to the user's mobile device as a push notification or in-app message; a means for the device to record the user's responses to the suggestions and transmit them to the server; and a means for the server to analyze the user's response data and improve the suggestion algorithm. This enables appropriate meal suggestions based on the user's preferences and eating patterns, and provides economic benefits to the user by obtaining the latest coupon information in real time. Furthermore, the accuracy of the suggestions can be improved by analyzing the user's response data and improving the suggestion algorithm.
[1407] A "user" is an individual or group who posts their daily meals and receives meal suggestions from the system.
[1408] "Meal data" is data that includes information such as photos of meals posted by users, meal names, comments, and dates and times.
[1409] "Server" refers to an information processing system that receives, stores, and analyzes meal data, collects coupon information, and generates meal suggestions.
[1410] "Coupon information" refers to advantageous information provided by affiliated online services, including discount information and special offer information.
[1411] "Dining suggestions" are specific suggestions about meals generated by the server based on the user's preference data, meal history, and coupon information.
[1412] "Preference data" is data that indicates the types and patterns of meals that a user prefers.
[1413] "Diet history" is a collection of meal data posted by a user in the past.
[1414] A "terminal" is a portable information terminal or computer device that a user uses to access the system.
[1415] "Response data" is data indicating the user's response to a meal suggestion (for example, "order," "skip," etc.).
[1416] A "suggestion algorithm" is a set of computational methods and rules for generating optimal meal suggestions to send to users.
[1417] "Push Notifications" or "In-App Messages" are real-time notifications or messages sent from a server to a user's device.
[1418] An "online service API" is a program interface for connecting with external online services.
[1419] The present invention provides a system that allows users to post daily meals and receive meal suggestions. Specific embodiments are described below.
[1420] User Interface Design
[1421] Users post their daily meals using a smartphone app. The app provides an interface for taking photos of meals and entering descriptions (e.g., "cheeseburger"). The meal data entered by the user is converted into JSON format and sent to the server using an HTTP request.
[1422] Server Configuration
[1423] The server is a high-performance information processing system that provides the following main functions:
[1424] 1. Data storage: The server stores the meal data received from the user in a database (e.g., MySQL).
[1425] 2. Data analysis: The server uses machine learning models (e.g., TensorFlow or PyTorch) to analyze the user's dietary data and understand the user's preferences and eating cycles.
[1426] 3. Obtaining coupon information: The server periodically collects the latest coupon and discount information through the APIs of affiliated online services and stores it in an internal database.
[1427] 4. Generating meal suggestions: The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information. For example, if a user likes "cheeseburgers," the server can suggest "restaurants that offer cheeseburgers at a 20% discount."
[1428] 5. Notification function: The server sends meal suggestions to the user's mobile device as push notifications or in-app messages.
[1429] User response and algorithm improvements
[1430] When a user responds to a suggestion by choosing "order" or "skip," the data is recorded on the device and sent to the server, which analyzes the response data to improve the suggestion algorithm, resulting in more refined suggestions for future orders.
[1431] Specific examples
[1432] For example, if a user has a preference for "cheeseburgers" and "pizza," the server can analyze this and, based on relevant coupon information, send a suggestion such as "Cheeseburgers are 20% off today at Restaurant X!" Whether the user accepts the suggestion is recorded on the device and reflected in the next suggestion.
[1433] Hardware / Software used
[1434] Hardware: Smartphone (iOS, Android)
[1435] Software: Python, TensorFlow, PyTorch, MySQL, Flask (API server)
[1436] Prompt Sentence Examples
[1437] "Please create an app that allows users to post photos and names of their daily meals. The system will send the data to a server, perform machine learning analysis, obtain coupon information, and provide personalized meal suggestions."
[1438] This invention allows users to receive meal suggestions based on their preferences and enjoy economic benefits by utilizing coupon information. In addition, the suggestion algorithm is continuously improved based on user response data, thereby improving the accuracy of suggestions.
[1439] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1440] Step 1:
[1441] Users post their daily meals using a smartphone app.
[1442] Input: Meal photo, meal name, comment, date and time
[1443] Processing: Meal information is entered through the user interface and converted into JSON format.
[1444] Output: Meal data (JSON format)
[1445] Step 2:
[1446] The terminal transmits the posted meal data to the server.
[1447] Input: Meal data (JSON format)
[1448] Processing: Send an HTTP request to the server's API endpoint
[1449] Output: Meal data sent to the server
[1450] Step 3:
[1451] The server stores the received meal data in a database.
[1452] Input: Meal data sent to the server
[1453] Processing: Data storage in a database (e.g. MySQL)
[1454] Output: Meal data stored in a database
[1455] Step 4:
[1456] The server analyzes the stored meal data to understand the user's preferences and eating cycles.
[1457] Input: Food data stored in a database
[1458] Processing: Data analysis using machine learning models (e.g., TensorFlow, PyTorch)
[1459] Output: User preference data, eating patterns
[1460] Step 5:
[1461] The server regularly obtains the latest coupon and discount information through the API of affiliated online services.
[1462] Input: Coupon API endpoint information
[1463] Processing: Call an external API to get the latest coupon information and save it in the database
[1464] Output: Coupon information stored in the database
[1465] Step 6:
[1466] The server generates optimal meal suggestions based on the user's preference data, meal history, and collected coupon information.
[1467] Input: User preference data, meal history, coupon information
[1468] Processing: Match user data with coupon information to generate personalized meal suggestions
[1469] Output: Meal suggestion message
[1470] Step 7:
[1471] The server generates meal suggestions and sends them to the user's mobile device as push notifications or in-app messages.
[1472] Input: Meal suggestion message
[1473] Processing: Send as a push notification or in-app message
[1474] Output: Meal suggestions displayed on the user's mobile device
[1475] Step 8:
[1476] The user selects "Order" or "Skip" in response to the suggestion message.
[1477] Input: Meal suggestion message, user choice (order / skip)
[1478] Action: Record user responses through the user interface
[1479] Output: User response data
[1480] Step 9:
[1481] The terminal transmits the user's reaction data to the server.
[1482] Input: User response data
[1483] Processing: Send an HTTP request to the server's API endpoint
[1484] Output: Response data sent to the server
[1485] Step 10:
[1486] The server analyzes user response data and improves the suggestion algorithm.
[1487] Input: Reaction data sent to the server
[1488] Processing: Feedback of reaction data to machine learning models to retrain algorithms or adjust parameters
[1489] Output: Improved proposed algorithm
[1490] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1491] The present invention is a system in which a user posts daily meals, a server analyzes the data, and provides appropriate meal suggestions, and by combining it with an emotion engine that recognizes the user's emotions, more personalized suggestions can be made. Specific embodiments are described below.
[1492] Processing meal posts
[1493] Users post their daily meals through an application or website they use. For example, a user takes a photo of their lunch using their smartphone camera and uploads it to the application with the description "shrimp tomato cream pasta."
[1494] Sending data
[1495] The device converts the posted meal data (photo, meal name, comment, date and time, etc.) into JSON format and sends it to the server's API endpoint using an HTTP request.
[1496] Data storage and analysis
[1497] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food.
[1498] Collect the latest coupon information
[1499] The server periodically retrieves the latest coupon and discount information through APIs from partner restaurants and coupon-providing sites, and stores it in an internal database, so that the latest deals can be provided to users.
[1500] Collecting and analyzing emotional data
[1501] The server uses an emotion engine to analyze users' emotions based on their posting data and reaction data. For example, if a user comments on a meal as "very delicious," the server recognizes this positive emotion. The emotion engine can also identify users' emotions through voice input and text analysis.
[1502] Generating meal suggestions
[1503] The server generates optimal meal suggestions based on the user's preference data, past meal history, collected coupon information, and emotional data. For example, if the user likes pasta and is expressing positive emotions, the server generates a suggested message: "Seafood pasta with a 20% off coupon from Italian Restaurant A." If the user is expressing negative emotions, the server makes suggestions to improve the user's mood.
[1504] Sending a proposal message
[1505] The server generates a meal suggestion and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[1506] Record of responses to the proposal
[1507] When the user receives the proposal message, if the user is interested, he / she selects "Go" or if the user is not interested, he / she selects "Don't go." This selection is recorded in the terminal.
[1508] Sending reaction data
[1509] The device converts the response data to the user's suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[1510] Improvement of the proposed algorithm
[1511] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The emotion engine is also periodically updated to achieve more accurate emotion recognition.
[1512] By using this system, users can reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. In addition, by receiving suggestions based on the user's emotional state, it is possible to provide a more satisfying dining experience.
[1513] The processing flow will be explained below.
[1514] Step 1:
[1515] A user launches the application, takes a photo of the meal, and inputs the meal description (e.g., "shrimp tomato cream pasta") and a comment. The user's feelings may also be input through the comment.
[1516] Step 2:
[1517] The device converts the input food data (photo, food name, comment, date and time, and emotion) into JSON format and sends it to the server's API endpoint using an HTTP request.
[1518] Step 3:
[1519] The server stores the received meal data in a database, and inserts the data into the corresponding table using a database language (e.g., SQL).
[1520] Step 4:
[1521] The server analyzes the stored food and emotional data using machine learning models and rule-based analysis methods to understand the user's preferences and eating cycles. For example, the server analyzes data from the past month and recognizes that the user tends to like pasta and Italian food. It also analyzes the user's emotional state.
[1522] Step 5:
[1523] The server retrieves the latest coupon and discount information through the APIs of partner restaurants and coupon providers, and stores it in an internal database. The server periodically makes API calls to retrieve new coupon information.
[1524] Step 6:
[1525] The server generates optimal meal suggestions based on the user's preference data, past meal history, collected coupon information, and emotional data. For example, if the user likes pasta and is expressing positive emotions, the server generates a suggested message: "Seafood pasta with a 20% off coupon from Italian Restaurant A." If the user is expressing negative emotions, the server makes suggestions to improve their mood.
[1526] Step 7:
[1527] The server generates a suggestion message and sends it to the user's device as a push notification or an in-app message. For example, the server might send a suggestion message to the user's smartphone saying, "Today, Italian Restaurant A is offering a 20% discount on seafood pasta. Why not try it?"
[1528] Step 8:
[1529] When the user receives the proposal message, if they are interested, they select "Go"; if they are not interested, they select "Don't go." This selection is recorded in the device. The user's emotions may also be recorded again.
[1530] Step 9:
[1531] The device converts the user's reaction data (selections and emotions) to the suggestions into JSON format and sends it to the server's API endpoint using an HTTP request.
[1532] Step 10:
[1533] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The emotion engine is also periodically updated to achieve more accurate emotion recognition.
[1534] This series of processes allows users to reduce the time and effort required for daily meal selection and receive appropriate and satisfying meal suggestions. In addition, by receiving suggestions based on the user's emotional state, it is possible to provide a more personalized dining experience.
[1535] Example 2
[1536] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1537] In modern society, users must spend a lot of time and effort on daily meal choices. To solve this problem, a system is needed that can provide more personalized and appropriate meal suggestions based on the user's individual preferences and past meal history. However, existing systems lack the ability to take user emotions into consideration when making suggestions, which hinders further improvement of user satisfaction. Another challenge is providing the latest coupon and discount information in a timely manner.
[1538] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for recognizing emotions using user posted data, means for collecting and storing the latest coupon information and discount information, and means for generating meal suggestions based on the user's preference data, meal history, emotion data, and the collected coupon information. This enables more personalized meal suggestions that take the user's emotions into consideration, which not only improves user satisfaction but also makes it possible to provide the latest discount information in a timely manner.
[1539] "User" refers to an individual who uses this system to post daily meal data and receive meal suggestions.
[1540] "Terminal" refers to a device used by a user, including a smartphone, tablet, or PC.
[1541] "Server" refers to a central processing unit for receiving, storing, and analyzing data from users and generating meal recommendations.
[1542] "Meal data" includes information such as photos of meals posted by users, descriptions, comments, dates and times.
[1543] "Emotion engine" refers to software or algorithms for identifying and analyzing emotions from user-submitted data.
[1544] "Coupon information" refers to information that represents economic benefits provided to users, such as discount coupons and promotional codes.
[1545] "Preference data" is data related to the user's food preferences, including past eating history and favorite dishes.
[1546] "Meal suggestions" refer to specific meal recommendations generated by the server based on the user's meal history, preference data, emotion data, and coupon information.
[1547] "Response Data" refers to data including the selections and feedback provided by a user in response to meal suggestions from the server.
[1548] "Suggestion Algorithm" refers to a set of computational methods or models for generating optimal meal suggestions for a user.
[1549] This system allows users to post their daily meals, and the server analyzes the data to provide optimal meal suggestions. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, more personalized suggestions can be made.
[1550] Hardware and Software Configuration
[1551] Users use devices such as smartphones, tablets, and PCs to access applications or websites. The devices must have a camera and internet connection.
[1552] The server can use cloud-based services, using MySQL or PostgreSQL as the database, Python and its libraries (e.g., Scikit-learn, TensorFlow) to run the machine learning model, and Google Cloud Natural Language API and NLTK library as the emotion engine.
[1553] Processing flow and specific examples
[1554] 1. When a user logs in to the application or website and posts meal data, they take a photo of the meal with their smartphone camera and post it with the description "Shrimp tomato cream pasta."
[1555] 2. The device converts this posted data (photo, meal name, comment, date and time, etc.) into JSON format and sends it to the server's API endpoint using an HTTP request.
[1556] 3. The server stores the received meal data in a database and uses a machine learning model to analyze the user's preferences and meal cycles. By analyzing data from the past month, the server recognizes the user's tendency to like pasta and Italian food.
[1557] 4. The server periodically retrieves the latest coupon and discount information from the APIs of partner restaurants and coupon providers, and stores it in an internal database. This information is used to provide users with the latest deals.
[1558] 5. The server performs sentiment analysis on the user's posted data using the Google Cloud Natural Language API and NLTK library. For example, if a user comments "It was very delicious," the server recognizes the positive sentiment.
[1559] 6. The server generates optimal meal suggestions based on the user's preference data, past meal history, emotion data, and collected coupon information. For example, if the user likes pasta and has positive emotions, it will suggest "seafood pasta with a 20% off coupon at an Italian restaurant."
[1560] 7. The server generates a suggestion message and sends it to the user's device as a push notification or in-app message. For example, a message like "Seafood pasta is 20% off at the Italian restaurant today. Why don't you come and try it?" is sent to the user's smartphone.
[1561] 8. The user receives this suggestion message and selects "Go" or "Don't go." This selection is recorded in the terminal.
[1562] 9. The device converts the user's reaction data into JSON format and sends it to the server's API endpoint using an HTTP request.
[1563] 10. The server collects this reaction data and retrains the machine learning model to improve the recommendation algorithm, resulting in more accurate meal recommendations.
[1564] Prompt Sentence Examples
[1565] When a user inputs into the app, "I'm not sure what to eat today," the server references the user's past data and current emotional state to generate optimal meal suggestions. In this way, users can receive personalized suggestions based on their preferences and moods.
[1566] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1567] Step 1:
[1568] A user logs in to an application or website and posts meal data. The user takes a photo of their lunch using their smartphone camera, enters the meal name and a comment, and taps the "Post" button with the description "Shrimp tomato cream pasta." The inputs are the photo, meal name, comment, and date and time, and are sent to the device as output.
[1569] Step 2:
[1570] The device converts the posted meal data into JSON format and sends it to the server's API endpoint using an HTTP request. For example, it generates JSON data including a photo, meal name, comment, and date and time, and sends it to the server as an HTTP POST request. The input is the meal data received from the user, and the output is JSON format data.
[1571] Step 3:
[1572] The server receives the HTTP request and stores it in a database. The server converts the received data into an appropriate structure to efficiently store the data in the database (e.g. MySQL or PostgreSQL). The input is JSON data and the output is the data stored in the database.
[1573] Step 4:
[1574] The server analyzes the meal data stored in the database using a machine learning model. It uses Python's Scikit-learn and TensorFlow to perform analysis to understand the user's preferences and meal cycles. For example, it analyzes the user's preferences using data from the past month. The input is the stored meal data, and the output is the analysis results regarding preference data and meal cycles.
[1575] Step 5:
[1576] The server sends queries to the APIs of partner restaurants and coupon providers to obtain the latest coupon and discount information. Coupon information is periodically obtained via the API and stored in an internal database. The input is the API query, and the output is the obtained coupon information.
[1577] Step 6:
[1578] The server passes user posted data to the emotion engine, which analyzes the user's emotions. The Google Cloud Natural Language API and NLTK library are used to identify emotions from posted comments. Positive comments such as "It was very delicious" are input into the emotion engine, which outputs the emotion data.
[1579] Step 7:
[1580] The server generates meal suggestions based on the user's preference data, meal history, emotion data, and collected coupon information. For example, if the user likes pasta and has positive emotions, the server will suggest "seafood pasta with a 20% off coupon at an Italian restaurant." The inputs are the user's preference data, past meal history, emotion data, and coupon information, and the output is meal suggestions.
[1581] Step 8:
[1582] The server generates meal suggestions and sends them to the user's device as push notifications or in-app messages. Using Firebase Cloud Messaging or Apple Push Notification Service, the suggestion message is sent, saying, "Seafood pasta is 20% off today at the Italian restaurant. Why not go?" The input is the generated meal suggestions, and the output is a notification sent to the user's smartphone.
[1583] Step 9:
[1584] The user receives the suggestion message and selects "Go" or "Don't go." The user's choice of "Go" or "Don't go" is recorded on the terminal. The input is the suggestion message, and the output is the user's choice.
[1585] Step 10:
[1586] The device converts the user's reaction data into JSON format and sends it to the server's API endpoint using an HTTP request. The device prepares the selection results in JSON format and sends them to the server as an HTTP POST request. The input is the user's reaction data, and the output is JSON format data.
[1587] Step 11:
[1588] The server receives the user's reaction data, retrains the machine learning model, and improves the proposed algorithm. Using Scikit-learn and TensorFlow, the accuracy of the algorithm is improved based on the reaction data. The input is the reaction data, and the output is an improved proposed algorithm.
[1589] (Application example 2)
[1590] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1591] Conventional meal recommendation systems make suggestions based only on a user's preference data and meal history, but because they do not consider the user's emotional state, they have the problem of not necessarily being able to make suggestions that will increase the user's satisfaction. Furthermore, if the suggested meal does not match the user's current mood, the effectiveness of the suggestion may be diminished, and the user may avoid using it. Furthermore, if coupon information or discount information is not up-to-date, the value to the user may be reduced.
[1592] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1593] In this invention, the server includes means for collecting and analyzing user emotion data, means for collecting the latest coupon information and discount information, and means for generating meal suggestions based on the user's preference data, emotion data, meal history, and the collected coupon information, thereby enabling more personalized meal suggestions that take the user's emotional state into consideration.
[1594] "User" means an individual or corporation that uses the system.
[1595] "Meal data" is information about daily meals posted by users, and specifically includes photos of the meals, names of the meals, comments, and dates and times.
[1596] A "server" is a computer system that receives, stores, and analyzes data sent by users.
[1597] "Emotional data" refers to information about a user's emotional state that is analyzed based on their posts and reaction data.
[1598] "Coupon information" is information about discounts and special offers at dining establishments.
[1599] "Preference data" is data relating to a user's past eating history and preferences.
[1600] "Dining suggestions" refer to suggestions about suitable meals and restaurants that the server generates based on the user's preference data, emotion data, dining history, and coupon information.
[1601] A "terminal" is a device used by a user, such as a smartphone or computer, that communicates with a server.
[1602] "Response data" is information regarding the choices and feedback a user makes in response to meal suggestions.
[1603] A "suggestion algorithm" is a computational method by which the server generates meal suggestions for the user.
[1604] The system for carrying out the invention allows users to post their daily meals and provides personalized meal suggestions based on these. Specific embodiments are described below.
[1605] Processing meal posts
[1606] Users use their smartphones to post photos of their daily meals. For example, when a user eats "katsu curry," they take a photo and enter a comment such as "I'm feeling great today!"
[1607] Sending data
[1608] The device converts the posted meal data (photo, meal name, comment, date and time) into JSON format and sends it to the server's API endpoint using an HTTP request.
[1609] Data storage and analysis
[1610] The server stores the received meal data in a database and uses machine learning models and rule-based analysis methods to understand the user's preferences and meal cycles. For example, the server could analyze data from the past month and determine whether the user has a preference for curry.
[1611] Collecting and analyzing emotional data
[1612] The server uses an emotion engine to analyze the user's emotions based on the user's posting data and reaction data. If a user writes "I'm in a good mood today!" in a comment, the server recognizes this as a positive emotion.
[1613] Collect the latest coupon information
[1614] The server regularly obtains the latest coupon and discount information through the APIs of affiliated dining establishments and coupon websites and stores it in an internal database.
[1615] Generating meal suggestions
[1616] The server generates optimal meal suggestions based on the user's preference data, emotional data, past meal history, and collected coupon information. For example, if the user likes curry and has positive emotions, it generates a suggestion of "20% off curry plate at curry restaurant A."
[1617] Sending a proposal message
[1618] The server sends the generated meal suggestions to the user's device as a push notification or an in-app message. For example, it could send a message saying, "Today, curry plates at curry restaurant A are 20% off. Why not try it?"
[1619] Record of responses to the proposal
[1620] The user receives the proposal message and selects "Go" if he is interested, or "Don't go" if he is not interested. This selection is recorded in the terminal.
[1621] Sending reaction data
[1622] The device converts the user's response data to the suggestion into JSON format and sends it to the server's API endpoint using an HTTP request.
[1623] Improvement of the proposed algorithm
[1624] The server collects and analyzes user reaction data to improve the recommendation algorithm. Specifically, the server feeds the reaction data back into the machine learning model to retrain the recommendation algorithm or adjust its parameters. The server also periodically updates the emotion engine to achieve more accurate emotion recognition.
[1625] The hardware used includes smartphones (camera, microphone, notification function) and cloud servers (Amazon Web Services, Google Cloud Platform, Microsoft Azure).The software used includes smartphone apps (iOS / Android) used on the client side, React Native, Swift, Kotlin, and Python, Django / Flask, TensorFlow / PyTorch (machine learning models), Natural Language Toolkit (NLP processing), and Firebase Realtime Database used on the server side.
[1626] Example prompt sentence:
[1627] Recognize emotions from users' meal posting data (photos, meal names, comments, date and time), and combine those emotions with past meal history and the latest coupon information to create appropriate meal suggestions. Example:
[1628] Meal name: Pork cutlet curry
[1629] Comment: I feel great today!
[1630] The result: positive emotions
[1631] Suggestion: Get 20% off a delicious curry plate at a nearby restaurant!
[1632] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1633] Step 1:
[1634] Users post their daily meals using their smartphones. The input is a photo of the meal, the name of the meal, a comment, and the date and time, and then uploads this to the application. The output of this step is the posted data.
[1635] Step 2:
[1636] The device converts the posted meal data into JSON format. The input is the meal data posted by the user, and the output is JSON format data. Specifically, the device encodes the photo data into a binary format and packages it as a JSON object along with the meal name, comment, and date and time.
[1637] Step 3:
[1638] The terminal sends the converted JSON-formatted data to the server's API endpoint using an HTTP request. The input is JSON-formatted data, and the output is a successful transmission status. Specifically, an HTTP POST request is sent to the API endpoint and a response is received.
[1639] Step 4:
[1640] The server stores the received meal data in a database. The input is JSON data sent as an HTTP request, and the output is records stored in the database. Specifically, it connects to the database and executes SQL queries to insert records.
[1641] Step 5:
[1642] The server uses the stored meal data to analyze the user's preferences and meal cycle. The input is the meal data stored in the database, and the output is the preference and cycle analysis results. Specifically, it analyzes past meal history and analyzes frequently occurring meals and patterns based on a machine learning model.
[1643] Step 6:
[1644] The server collects and analyzes emotional data based on user posted data. The input is user comments and past reaction data, and the output is the result of the emotional analysis. Specifically, a text analysis engine is used to classify emotions using natural language processing technology.
[1645] Step 7:
[1646] The server obtains the latest coupon and discount information through the APIs of affiliated dining establishments and coupon websites. The input is the API request, and the output is the retrieved coupon information. Specifically, the server periodically calls the API, extracts coupon information from the response, and stores it in a database.
[1647] Step 8:
[1648] The server generates optimal meal suggestions based on the user's preference data, emotion data, past meal history, and collected coupon information. The inputs are preference data, emotion data, meal history, and coupon information, and the output is personalized meal suggestions. Specifically, this data is integrated and optimal suggestions are generated for the user through a recommendation algorithm.
[1649] Step 9:
[1650] The server sends the generated meal suggestions to the user's device as a push notification or an in-app message. The input is the meal suggestion data, and the output is a notification to the user's device. Specifically, a push notification is sent through the notification server or the message function within the application is used.
[1651] Step 10:
[1652] The user receives the suggestion message and selects "Go" if they are interested, or "Don't go" if they are not interested. The input is the meal suggestion message, and the output is the choice response data. Specifically, options are presented through a user interface, and the user's response is obtained.
[1653] Step 11:
[1654] The terminal records the user's reaction to the suggestion and sends it to the server. The input is the user's selection reaction data, and the output is the reaction data sent as an HTTP request.
[1655] Step 12:
[1656] The server collects and analyzes user reaction data to improve the proposal algorithm. The input is the reaction data, and the output is an improved proposal algorithm. Specifically, the reaction data is fed back into the machine learning model to readjust or retrain the algorithm parameters.
[1657] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[1658] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1659] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1660] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1661] FIG. 9 illustrates an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and behaviors arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1662] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1663] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1664] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1665] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1666] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1667] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1668] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1669] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1670] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1671] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1672] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1673] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1674] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1675] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1676] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1677] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1678] The following is further disclosed regarding the above embodiment.
[1679] (Claim 1)
[1680] A means for users to post their daily meals;
[1681] A means for transmitting the posted meal data to a server;
[1682] means for storing and analyzing the meal data received by the server;
[1683] A means for the server to collect the latest coupon information and discount information;
[1684] means for generating meal suggestions based on the user's preference data, meal history, and collected coupon information;
[1685] means for the server to send meal suggestions to a user's terminal;
[1686] means for the terminal to record the user's reaction to the suggestions and transmit the recorded reaction to the server;
[1687] A means for the server to analyze user response data and improve the suggestion algorithm;
[1688] A system including:
[1689] (Claim 2)
[1690] The system according to claim 1, wherein the server includes an analysis means for understanding the user's preferences and eating cycles using the dietary data.
[1691] (Claim 3)
[1692] 2. The system according to claim 1, further comprising means for automatically obtaining the latest coupon information, discount information and popular store data collected by said server from an external information source.
[1693] "Example 1"
[1694] (Claim 1)
[1695] A means for users to post their daily meals;
[1696] means for transmitting the posted meal data to a server via a terminal;
[1697] A means for storing the meal data received by the server and analyzing it using a machine learning model;
[1698] A means for the server to collect the latest coupon information and discount information;
[1699] means for generating meal suggestions based on the user's preference data, meal history, and collected coupon information;
[1700] means for the server to send meal suggestions to a user's terminal;
[1701] means for the terminal to record the user's reaction to the suggestions and transmit the recorded reaction to the server;
[1702] A means for the server to analyze user response data and improve the proposed algorithm based on a machine learning model;
[1703] A system including:
[1704] (Claim 2)
[1705] The system according to claim 1, wherein the server includes means for understanding the user's preferences and eating cycles using the meal data.
[1706] (Claim 3)
[1707] 2. The system according to claim 1, further comprising means for automatically obtaining the latest coupon information, discount information and popular store data collected by said server from an external information source.
[1708] "Application Example 1"
[1709] (Claim 1)
[1710] A means for users to post their daily meals;
[1711] A means for transmitting the posted meal data to a server;
[1712] means for storing and analyzing the meal data received by the server;
[1713] A means for the server to collect the latest coupon information and discount information;
[1714] means for generating meal suggestions based on the user's preference data, meal history, and collected coupon information;
[1715] A means for periodically obtaining the latest coupon information and discount information through an API of an online service that the server is affiliated with;
[1716] means for the server to send meal suggestions to the user's mobile device as push notifications or in-app messages;
[1717] means for the terminal to record the user's reaction to the suggestions and transmit the recorded reaction to the server;
[1718] A means for the server to analyze user response data and improve the suggestion algorithm;
[1719] A system including:
[1720] (Claim 2)
[1721] The system according to claim 1, wherein the server includes an analysis means for understanding the user's preferences and eating cycles using the dietary data.
[1722] (Claim 3)
[1723] 2. The system according to claim 1, further comprising means for automatically obtaining the latest coupon information, discount information and popular store data collected by said server from an external information source.
[1724] "Example 2: Combining Emotion Engines"
[1725] (Claim 1)
[1726] A means for users to post their daily meals;
[1727] A means for transmitting the posted meal data to a server;
[1728] means for storing and analyzing the meal data received by the server;
[1729] A means for the server to recognize emotions using user posted data;
[1730] A means for the server to collect and store the latest coupon information and discount information;
[1731] a means for generating meal suggestions based on the user's preference data, meal history, emotion data, and collected coupon information;
[1732] means for the server to send meal suggestions to a user's terminal;
[1733] means for the terminal to record the user's reaction to the suggestions and transmit the recorded reaction to the server;
[1734] A means for the server to analyze user response data and improve the suggestion algorithm;
[1735] A system including:
[1736] (Claim 2)
[1737] 2. The system according to claim 1, wherein the server includes an analysis means for understanding a user's preferences and eating cycles using the dietary data and emotion data.
[1738] (Claim 3)
[1739] 10. The system of claim 1, further comprising means for automatically obtaining the latest coupon and discount information collected by said server from an external source.
[1740] "Application example 2 when combining emotion engines"
[1741] (Claim 1)
[1742] A means for users to post their daily meals;
[1743] A means for transmitting the posted meal data to a server;
[1744] means for storing and analyzing the meal data received by the server;
[1745] means for the server to collect and analyze user emotion data;
[1746] A means for the server to collect the latest coupon information and discount information;
[1747] a means for generating meal suggestions based on the user's preference data, emotion data, meal history, and collected coupon information;
[1748] means for the server to send meal suggestions to a user's terminal;
[1749] means for the terminal to record the user's reaction to the suggestions and transmit the recorded reaction to the server;
[1750] A means for the server to analyze user response data and improve the suggestion algorithm;
[1751] A system including:
[1752] (Claim 2)
[1753] 2. The system according to claim 1, wherein the server includes an analysis means for understanding the user's preferences, emotional state, and eating cycle using the dietary data and emotional data.
[1754] (Claim 3)
[1755] 10. The system of claim 1, further comprising means for automatically obtaining the latest coupon information, discount information and dining establishment data collected by said server from an external source. [Explanation of symbols]
[1756] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. A means for users to post their daily meals; A means for transmitting the posted meal data to a server; means for storing and analyzing the meal data received by the server; A means for the server to collect the latest coupon information and discount information; means for generating meal suggestions based on the user's preference data, meal history, and collected coupon information; means for the server to send meal suggestions to a user's terminal; means for the terminal to record the user's reaction to the suggestions and transmit the recorded reaction to the server; A means for the server to analyze user response data and improve the suggestion algorithm; A system including:
2. The system according to claim 1 , wherein the server includes an analysis means for understanding the user's preferences and eating cycles using the meal data.
3. 2. The system according to claim 1, further comprising means for automatically obtaining the latest coupon information, discount information and data on popular stores collected by said server from an external information source.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A