system
The system addresses inefficient matchmaking by analyzing user history to generate match candidates and prioritizing marriage interests, facilitating efficient and accurate partner matching.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-26
- Publication Date
- 2026-03-10
AI Technical Summary
Conventional matchmaking systems require users to register detailed conditions, which is time-consuming, and often fail to accurately match users with their preferences, especially for those seeking marriage partners, leading to inefficient matchmaking.
A system that allows users to log in with authentication information, analyzes past search and usage history to generate match candidates, and provides a matchmaking mode to prioritize users interested in marriage, enabling efficient and accurate matching without detailed condition registration.
The system enables users to find the perfect match with the most suitable match with the most suitable partner based on their past behavioral history and start a real-time conversation, while prioritizing users interested in marriage.
Smart Images

Figure 2026041379000001_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] Conventional matching systems require users to register their desired conditions in detail, which is time-consuming, and the registered conditions may not necessarily reflect the user's actual preferences. It is also difficult to achieve highly accurate matching, and the probability of matching with a partner who meets the user's needs is low. Furthermore, for users looking for a partner, confirmation of their intention to marry and preferential matching are not provided, resulting in a problem of inefficient matchmaking. [Means for solving the problem]
[0005] The present invention provides a means for a user to input authentication information, and a server to verify the authentication information and acquire the user's past search history and usage history. The server provides a system including a means for analyzing the acquired data, generating a list of match candidates based on the user's preferences, and displaying this on the user's terminal. The system also includes a means for the user to select a candidate of interest from the displayed match candidates and begin chatting with the candidate. Furthermore, the system provides a means for the user to select a matchmaking mode, and the server to check whether or not the user who selected the matchmaking mode is interested in marriage, and to preferentially display users who are interested in marriage as matchmaking candidates, thereby improving the efficiency of matchmaking. This enables highly accurate matching without the user having to register their detailed desired conditions, supporting efficient matchmaking.
[0006] A "user" is a person who uses the system, authenticates, and inputs and searches information.
[0007] "Authentication information" refers to information such as ID and password that a user enters to log in to a system.
[0008] A "server" is a central processing unit that verifies user authentication information, obtains past search and usage history, and analyzes the data to generate matching candidates.
[0009] "Search history" is historical information about keywords and conditions that a user has searched for in the past.
[0010] "Usage history" refers to historical information about operations and pages that a user has viewed in the past while using the system.
[0011] "Analysis" is a process for deriving user preferences and behavioral patterns based on data acquired by the server.
[0012] "Matching candidates" is a list of suitable partners for the user that the server proposes based on the analysis results.
[0013] A "user terminal" is a device such as a computer or smartphone that a user uses to access the system.
[0014] "Chat" is a function that allows users to exchange messages in real time with matching candidates selected by the user.
[0015] The "matchmaking mode" is a setting that indicates that the user is using the system for the purpose of finding a partner.
[0016] "Intention to marry" refers to the intention to consider marriage in the future through matching. [Brief explanation of the drawings]
[0017] [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
[0018] 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.
[0019] First, the terms used in the following description will be explained.
[0020] 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).
[0021] 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.
[0022] 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.
[0023] 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.
[0024] 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."
[0025] [First embodiment]
[0026] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0027] 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.
[0028] 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).
[0029] 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.
[0030] 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.
[0031] 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.
[0032] 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.
[0033] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0034] 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.
[0035] 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.
[0036] 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.
[0037] 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."
[0038] The matching system according to the present invention provides advanced matching simply by the user logging in. Details of the program processing of the system and specific examples based on it will be described below.
[0039] Overall system flow
[0040] 1. User login
[0041] The user accesses the system's login screen and enters their user ID and password.
[0042] The server receives the entered authentication information and collates it with a database to authenticate the user. If authentication is successful, the server obtains the user's past search history and usage history.
[0043] 2. Data collection and analysis
[0044] The server analyzes the acquired search history and usage history, for example, analyzing what keywords were searched and which profiles were viewed.
[0045] The server uses machine learning algorithms to analyze user preferences and patterns and compile a list of potential matches based on the user's interests.
[0046] 3. Display of match candidates
[0047] The server scores the matching candidates based on the analysis results, lists them in descending order of score, and sends this to the device.
[0048] The device displays a list of recommended users' profiles, and the user can select the person they are interested in from the displayed candidates.
[0049] 4. Start chatting
[0050] The user selects the person they are interested in from the matching candidates and clicks the "Start Chat" button.
[0051] The server creates a chat session and sends a chat request to the selected party.
[0052] When the other user accepts the chat request, a chat screen will appear on the device and you will be able to exchange messages in real time.
[0053] 5. Matchmaking support function
[0054] The user selects the matchmaking mode on the setting screen.
[0055] The server confirms the selection of the matchmaking mode and provides a function to confirm whether the user who desires to find a match has an intention to get married.
[0056] The server preferentially adds users who are willing to marry to a matching candidate list, and displays this on the terminal.
[0057] Specific examples
[0058] An example of when user A logs in to the system is shown below.
[0059] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[0060] 2. The server receives User A's authentication information, compares it with the database, and authentication is successful.
[0061] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[0062] 4. The server analyzes this history using a machine learning algorithm and extracts a pattern that indicates that User A is looking for people who like movies.
[0063] 5. The server lists and scores other movie-loving users B, C, and D from the database.
[0064] 6. The server generates a list of candidates in descending order of score and sends it to the terminal.
[0065] 7. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[0066] 8. The server creates a chat session and sends a chat request to User B.
[0067] 9. User B approves the request and the chat screen appears on the device.
[0068] 10. User A and User B exchange messages in real time.
[0069] In this way, User A can easily match with the most suitable partner based on their past behavioral history and start a conversation in real time without having to register their detailed requirements. Furthermore, by turning on the matchmaking mode, they can be efficiently matched with people who are interested in marriage.
[0070] The processing flow will be explained below.
[0071] Step 1:
[0072] The user enters their user ID and password on the login screen and clicks the "Login" button.
[0073] Step 2:
[0074] The server receives the entered user ID and password and authenticates them by checking them against the database.
[0075] Step 3:
[0076] If the server is successful in authentication, it retrieves the user's past search history and usage history from the database.
[0077] Step 4:
[0078] The search history and usage history acquired by the server is input into a machine learning algorithm to analyze the user's preferences.
[0079] Step 5:
[0080] Based on the analyzed user preferences, the server generates a list of suitable matching candidate users from the database and scores them.
[0081] Step 6:
[0082] The server sorts the list of matching candidates in order of score and sends it to the user terminal.
[0083] Step 7:
[0084] A list of potential matches for the user is displayed on the device, and the user can select the person they are interested in.
[0085] Step 8:
[0086] The user clicks the "Start Chat" button for the selected person.
[0087] Step 9:
[0088] The server creates a chat session and sends a chat request to the selected other user.
[0089] Step 10:
[0090] When the other user accepts the chat request, the chat screen will appear on the device.
[0091] Step 11:
[0092] A user and another user exchange messages in real time.
[0093] Step 12:
[0094] The user selects the matchmaking mode on the setting screen.
[0095] Step 13:
[0096] The server confirms the selection of the matchmaking mode and asks the user who selected the matchmaking mode whether or not he or she has an intention to get married.
[0097] Step 14:
[0098] The server gives priority to users who are willing to get married and adds them to a matching candidate list, which is displayed on the terminal.
[0099] Step 15:
[0100] The profiles of users who are prioritized on the device are displayed in a list format, and the user can select the person they are interested in.
[0101] Step 16:
[0102] The user starts chatting with the person selected for the purpose of finding a partner.
[0103] Example 1
[0104] 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."
[0105] Conventional matching systems have the problem that users must set detailed conditions, which is time-consuming. Also, finding suitable match candidates requires a lot of manual work, which is inefficient. Furthermore, the matching function with users who are interested in marriage is limited, which is inconvenient for users looking for a marriage partner.
[0106] 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.
[0107] In this invention, the server includes: a means for a user to input authentication information; a means for the server to verify the authentication information and acquire the user's past behavioral history and usage history; a means for the server to analyze the acquired data and generate match candidates based on the user's preferences using an advanced analytical algorithm; a means for the server to display the generated match candidates on the user's operating terminal; and a means for the user to select a match candidate of interest from the displayed match candidates and start real-time communication with the match candidate. This allows the user to efficiently present optimal match candidates based on their past behavioral history and engage in real-time dialogue without having to set detailed conditions. Furthermore, by including a means for selecting a match-hunting mode and a means for the server to confirm whether a user who selected the match-hunting mode intends to marry and prioritize users who have such intentions as match candidates, it is possible to provide matching that is suitable for users who are looking for marriage.
[0108] "Authentication information" is information required to verify a user's identity, and typically includes a username and password.
[0109] "Behavioral history" refers to records of searches, clicks, views, etc. that a user performs on the system.
[0110] "Usage history" refers to a record of a series of operations and usage patterns when a user uses a system.
[0111] "Analysis algorithms" refer to mathematical techniques and machine learning models used to analyze acquired data and extract specific patterns and preferences.
[0112] "Matching candidates" refer to candidates of other users who are predicted to be compatible with the user, selected based on the user's preferences and behavioral history.
[0113] An "operation terminal" refers to hardware or devices that allow a user to access and operate the system.
[0114] "Real-time communication" refers to a communication method in which data is sent and received instantaneously via the Internet.
[0115] The "marriage hunting mode" refers to a special setting mode that prioritizes matching users who are interested in getting married.
[0116] The matching system according to the present invention provides advanced matching simply by the user logging in. Details of the program processing of the system and specific examples based on it will be described below.
[0117] Hardware and software used
[0118] First, this system uses the following hardware and software:
[0119] Hardware:
[0120] Database Server
[0121] Web Server
[0122] User device (smartphone, PC, etc.)
[0123] software:
[0124] Database management system (MySQL (registered trademark))
[0125] Authentication API (OAuth 2.0)
[0126] Machine learning platform (TENSORFLOW (registered trademark))
[0127] Data analysis tools (Python, Pandas)
[0128] Front-end frameworks (React, Angular)
[0129] Communication protocol (HTTP / HTTPS)
[0130] Chat server (WebSocket)
[0131] Real-time communication framework (Socket.IO)
[0132] Config Management
[0133] System Program Processing
[0134] The specific program processing is described below.
[0135] The user accesses the login screen and enters their user ID and password. The server receives the entered authentication information and authenticates the user by comparing it with the database. If authentication is successful, the server retrieves the user's past behavioral history and usage history from the database.
[0136] The server analyzes the acquired search history and usage history. It uses Python's Pandas library to create a history data frame. It then uses machine learning algorithms (using TensorFlow and Scikit-Learn) to extract user preferences and patterns and create a list of suitable matching candidates.
[0137] The server scores the candidates based on the analysis results and lists them in descending order. This scoring takes into account factors such as common interests and profile similarities. The server then sends the list of candidates to the device, where a user interface using React or Angular is displayed.
[0138] When a user selects a match from the candidates and clicks the "Start Chat" button, the server creates a chat session and sends a chat request to the selected match. If the chat request is accepted, a chat screen will appear on the user's device, enabling real-time communication.
[0139] When a user selects the matchmaking mode, the server confirms the selection and activates the mode. In this state, the server displays users who are willing to get married as match candidates with priority.
[0140] Specific examples
[0141] For example, when user A logs in to the system, the process is as follows:
[0142] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[0143] 2. The server receives User A's authentication information, checks it against the database, and authentication is successful.
[0144] 3. The server obtains User A's past search history and usage history (for example, search history for "movie lover").
[0145] 4. The server analyzes these histories using a machine learning algorithm and extracts patterns that indicate that User A likes movies.
[0146] 5. The server lists and scores other movie-loving users B, C, and D from the database.
[0147] 6. The server generates a list of candidates in descending order of score and sends it to the terminal.
[0148] 7. The profiles of users B, C, and D are displayed in a list on the device, and user A selects user B and clicks the "Start Chat" button.
[0149] 8. The server creates a chat session and sends a chat request to User B.
[0150] 9. User B approves the request and the chat screen appears on the device.
[0151] 10. User A and User B exchange messages in real time.
[0152] This system allows users to easily find the perfect match based on their preferences and start communicating in real time. The matchmaking mode also allows users to efficiently match with potential partners who are interested in marriage.
[0153] Prompt Sentence Examples
[0154] "Please generate a program that lists and scores the best matches based on the past search history of user A, who wants to match with people who like movies."
[0155] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0156] Step 1:
[0157] The user enters the user ID and password on the login screen and clicks the "Login" button. The user ID and password are sent as input.
[0158] Specific behavior:
[0159] The user accesses the login page in a browser, enters the user ID and password in the login form, and clicks the "Login" button.
[0160] Step 2:
[0161] The server receives the entered authentication information and compares it with the database to authenticate the user. If authentication is successful, past behavioral and usage history is retrieved from the database. The retrieved data is search history and click history based on the user ID.
[0162] Specific behavior:
[0163] The server authenticates the user ID and password received at the POST / api / login endpoint using OAuth 2.0, and executes an SQL query to retrieve past search history and behavioral history from the database based on the user ID.
[0164] Step 3:
[0165] The server analyzes the data it acquires and extracts user preferences and patterns. Search history and behavioral history are given as input, and the analysis results are obtained as output. The analysis is performed using Python's Pandas library and a machine learning algorithm (TensorFlow).
[0166] Specific behavior:
[0167] The server converts the search history and behavioral history obtained into a data frame, and performs data manipulation using Python and Pandas. Furthermore, TensorFlow is used to apply a machine learning model to analyze and cluster user preferences.
[0168] Step 4:
[0169] The server scores the match candidates based on the analysis results and lists them in descending order. It takes the analysis results as input and obtains a scored list of match candidates as output. Scoring takes into account factors such as common interests and profile similarity.
[0170] Specific behavior:
[0171] The server uses a personalization algorithm to convert the analysis results into a matching score, generates a list of match candidates based on the user's preferences, and assigns a score to each.
[0172] Step 5:
[0173] The server sends the scored match candidate list to the terminal, taking the match candidate list as input and generating data for displaying the list as output.
[0174] Specific behavior:
[0175] The server sends the list of matching candidates to the API endpoint for displaying the list (e.g., GET / api / matchCandidates), and the front-end displays the received data in list format using a React component.
[0176] Step 6:
[0177] The user selects a candidate they are interested in from the displayed matching candidates and clicks the "Start Chat" button. The user sends the user ID of the selected candidate as input.
[0178] Specific behavior:
[0179] When the user clicks the "Start Chat" button, JavaScript™ calls the POST / api / startChat endpoint and sends the user ID of the selected candidate.
[0180] Step 7:
[0181] The server creates a chat session and sends a chat request to the selected person. It receives a chat start request as input, generates a chat session ID as output, and sends the request to the person.
[0182] Specific behavior:
[0183] The server creates a chat session in the database and sends a notification to the other user via WebSocket.
[0184] Step 8:
[0185] When the other user accepts the chat request, the chat screen is displayed on the device. The system receives the acceptance request as input and updates the chat screen display as output.
[0186] Specific behavior:
[0187] When the other user clicks the accept button, a request is sent to the server, and the server updates the chat session, notifying both devices that they are ready for real-time communication.
[0188] Step 9:
[0189] User A and the other user exchange messages in real time. Chat messages are sent and received intermittently as input, and the conversation content is displayed as output.
[0190] Specific behavior:
[0191] User A and the other user use a real-time communication framework (Socket.IO) to send and receive messages via WebSocket, and new messages are displayed immediately on the chat screen.
[0192] Step 10:
[0193] When a user selects the matchmaking mode, the server confirms this selection, checks whether the user who is looking for a marriage partner has an intention to marry, and displays users who have such intention preferentially. The selection of the matchmaking mode is transmitted as input, and a list of matchmaking candidates for the purpose of matchmaking is generated as output.
[0194] Specific behavior:
[0195] The user selects "Marriage Hunting Mode" on the settings screen and submits the form. The server receives the POST / api / settings, records the marriage hunting mode setting in the database, changes the priority of the users who are looking for marriage, and reflects this in the matching algorithm.
[0196] Through the above processing steps, users can efficiently find the best match candidates and communicate with them in real time. In addition, by using the matchmaking mode, users can smoothly match with people who are interested in marriage.
[0197] (Application example 1)
[0198] 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."
[0199] On conventional online shopping sites, users had to spend a lot of time and effort to find individual products, making it difficult to efficiently find products that matched their preferences.In addition, they were unable to effectively combine real-time reviews from other users and chat functions to increase purchasing motivation.
[0200] 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.
[0201] In this invention, the server includes: means for a user to input authentication information; means for the server to verify the authentication information and acquire the user's past purchase history and browsing history; means for the server to analyze the acquired data and generate recommendation candidates based on the user's preferences; means for the server to display the generated recommendation candidates on a user terminal; means for the user to select a product of interest from the displayed recommendation candidates and view product information; and means for the server to generate a chat session based on reviews from other users and for users to share product reviews in real time. This enables users to efficiently receive product recommendations based on their past purchase history and browsing history, and to increase their desire to purchase while referring to real-time feedback from other users.
[0202] "Authentication information" refers to the identification information a user uses to log in to a system, typically a user ID and password.
[0203] "Purchase history" is a record of products purchased by a user in the past, and is data indicating the user's consumption behavior.
[0204] "Browsing history" is a record of which pages or products a user has viewed within a website or application.
[0205] "Recommendation candidates" are a list of products and services recommended to the user based on the analyzed data.
[0206] A "user terminal" is a device used by a user to access the system, such as a smartphone or computer.
[0207] A "chat session" is a communication session in which users can exchange messages in real time.
[0208] A "machine learning algorithm" is a computational method for learning from large amounts of data and generating specific patterns and predictions.
[0209] A "generative AI model" is an artificial intelligence system that generates or improves recommendation candidates based on prompts entered by the user.
[0210] A "prompt" is a command or question that a user inputs to a generative AI model.
[0211] The embodiments of the present invention will be specifically described, so that other engineers can practice the invention.
[0212] System Configuration
[0213] The system consists of the following major components:
[0214] Hardware
[0215] Server: Responsible for data collection, analysis, and recommendation generation. For example, a cloud-based server such as Amazon EC2 is used.
[0216] User device: The device through which the user accesses the system and views the recommendations, such as a smartphone, tablet, or PC.
[0217] software
[0218] Flask: A Python web framework that handles communication between the server and the client.
[0219] scikit-learn: A Python library for running machine learning algorithms.
[0220] pandas: A Python library for collecting and preprocessing data.
[0221] Generative AI model: An artificial intelligence system for generating and improving recommendations based on user prompts.
[0222] System Operation
[0223] User authentication and data collection
[0224] 1. When a user logs in to the system, they are authenticated by entering their user ID and password, and the authentication information is sent to the server.
[0225] 2. The server compares the authentication information with the database and, if authentication is successful, retrieves the user's past purchase and browsing history.
[0226] Analyzing data and generating recommendations
[0227] 3. The server preprocesses the acquired purchase history and browsing history using the pandas library and converts it into a format suitable for analysis.
[0228] 4. The server runs a machine learning algorithm using scikit-learn to analyze user preferences.
[0229] 5. Based on the results of the analysis, the system generates and scores recommended products and services that are best suited to the user.
[0230] Display of recommended candidates and real-time chat
[0231] 6. The server sends the generated recommendation candidates to the user terminal and displays them in list form on the user terminal.
[0232] 7. The user selects a product of interest from the displayed recommended candidates and views detailed product information.
[0233] 8. The server generates a chat session based on other users' reviews of the selected product, providing a means for sharing review information in real time.
[0234] Specific examples
[0235] For example, if a user logs in and has frequently purchased "smartphone accessories" in the past, the server will analyze their purchasing history. Based on the results of this analysis, the server will recommend the user the latest smartphone case or a highly rated charging cable. Users can browse these recommended items and check other users' reviews of products they are interested in in real time. This will increase their motivation to purchase and enable them to select the best product.
[0236] An example prompt for a generative AI model is, "Recommend new products to the user based on their past purchases and browsing history. Please create a simple example that includes user authentication, data collection, a machine learning recommendation system, and product recommendation display functionality."
[0237] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0238] Step 1:
[0239] The user opens the system's login screen and enters their user ID and password. The user ID and password are received as input data and sent to the server. The server then collates the received authentication information with a database to authenticate the user. If authentication is successful, the user's past purchase history and browsing history are retrieved from the database.
[0240] Step 2:
[0241] The server uses the pandas library to store the acquired purchase history and browsing history in a data frame and perform preprocessing. For example, it removes duplicate data and fills in missing values. It receives purchase history and browsing history as input data and outputs a preprocessed data frame.
[0242] Step 3:
[0243] The server analyzes the preprocessed data using scikit-learn. Specifically, it analyzes user preferences using clustering algorithms and generates a recommendation model. In this process, it receives the preprocessed data frame as input data and outputs a recommendation model based on the user preferences as the analysis result.
[0244] Step 4:
[0245] The server generates product and service recommendation candidates based on the generated recommendation model. For example, it calculates and scores the user's preference score for each candidate. It receives the recommendation model as input data and outputs a scored list of recommendation candidates.
[0246] Step 5:
[0247] The server sends the scored recommendation candidate list to the user's device, which displays a list of products and services as recommendation candidates.The server receives the recommendation candidate list as input data and generates a list to be displayed on the user's device as output data.
[0248] Step 6:
[0249] The user selects a product or service of interest from the list of recommended candidates and views detailed information. The system receives the list of recommended candidates as input data and displays detailed information about the selected product.
[0250] Step 7:
[0251] The server generates a chat session based on other users' reviews of the selected product. It allows users to share review information in real time and exchange questions and comments about the product with other users. It receives the selected product information as input data, generates a chat session as output data, and displays it on the user's terminal.
[0252] Step 8:
[0253] The server uses the generative AI model to further optimize the recommendation candidate list based on the prompt entered by the user. For example, if the user enters "Please recommend the latest smartphone case," the AI model will add the most suitable smartphone case to the recommendation candidate list. It receives the prompt as input data and outputs an optimized recommendation candidate list.
[0254] 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.
[0255] The matching system based on this invention provides advanced matching simply by the user logging in, and by combining it with an emotion engine, it recognizes the user's emotions and achieves more accurate matching and communication. Below, we will explain the details of the system's program processing and specific examples based on it.
[0256] Overall system flow
[0257] 1. User login
[0258] The user accesses the system's login screen and enters their user ID and password.
[0259] The server receives the entered authentication information and collates it with a database to authenticate the user. If authentication is successful, the server obtains the user's past search history and usage history.
[0260] 2. Data collection and analysis
[0261] The server inputs the acquired search history and usage history into a machine learning algorithm to analyze the user's preferences.
[0262] The server also analyzes the user's emotions using an emotion engine and integrates this data to develop a more detailed understanding of the user's preferences.
[0263] 3. Display of match candidates
[0264] The server scores the matching candidates based on the analysis results, lists them in descending order of score, and sends this to the device.
[0265] The device displays a list of recommended users' profiles, and the user can select the person they are interested in from the displayed candidates.
[0266] 4. Start chatting
[0267] The user selects the person they are interested in from the matching candidates and clicks the "Start Chat" button.
[0268] The server creates a chat session and sends a chat request to the selected party.
[0269] When the other user accepts the chat request, the chat screen will appear on the device.
[0270] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content. It also suggests advice and responses according to changes in emotions.
[0271] 5. Matchmaking support function
[0272] The user selects the matchmaking mode on the setting screen.
[0273] The server confirms the selection of the matchmaking mode and provides a function to confirm whether the user who selected the wedding mode intends to get married.The server also analyzes the user's emotions using an emotion engine and takes the emotion analysis result into consideration when confirming the intention to get married.
[0274] The server preferentially adds users who are willing to marry to a matching candidate list, and displays this on the terminal.
[0275] Specific examples
[0276] An example of when user A logs in to the system is shown below.
[0277] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[0278] 2. The server receives User A's authentication information, compares it with the database, and authentication is successful.
[0279] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[0280] 4. The server analyzes this history using a machine learning algorithm and extracts a pattern that indicates that User A is looking for people who like movies.
[0281] 5. The server uses the emotion engine to analyze the emotions of User A's past behavior, for example, analyzing the positive emotions during movie-related searches.
[0282] 6. The server lists and scores other movie-loving users B, C, and D from the database.
[0283] 7. The server generates a list of candidates in descending order of score and sends it to the terminal.
[0284] 8. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[0285] 9. The server creates a chat session and sends a chat request to User B.
[0286] 10. User B approves the request and the chat screen appears on the device.
[0287] 11. The emotion engine recognizes the emotions of users A and B during chat in real time and suggests advice and responses based on their emotions.
[0288] 12. User A and User B exchange messages in real time, promoting emotion-based communication.
[0289] In this way, User A can easily match with the most suitable partner based on their past behavioral history and emotional analysis, and begin a conversation in real time, without having to register their detailed requirements. Furthermore, by turning on the matchmaking mode, efficient communication based on emotional analysis with potential marriage partners becomes possible.
[0290] The processing flow will be explained below.
[0291] Step 1:
[0292] The user enters their user ID and password on the login screen and clicks the "Login" button.
[0293] Step 2:
[0294] The server receives the entered user ID and password and authenticates them by checking them against the database.
[0295] Step 3:
[0296] If the server is successful in authentication, it retrieves the user's past search history and usage history from the database.
[0297] Step 4:
[0298] The search history and usage history acquired by the server is input into a machine learning algorithm to analyze the user's preferences.
[0299] Step 5:
[0300] The server uses an emotion engine to analyze the emotions of the user's past actions and adds them to the preference analysis results.
[0301] Step 6:
[0302] The server generates a list of suitable match candidate users from the database based on the analyzed user preferences and emotions, and scores them.
[0303] Step 7:
[0304] The server sorts the list of matching candidates in order of score and sends it to the user terminal.
[0305] Step 8:
[0306] A list of potential matches for the user is displayed on the device, and the user can select the person they are interested in.
[0307] Step 9:
[0308] The user clicks the "Start Chat" button for the selected person.
[0309] Step 10:
[0310] The server creates a chat session and sends a chat request to the selected other user.
[0311] Step 11:
[0312] When the other user accepts the chat request, the chat screen will appear on the device.
[0313] Step 12:
[0314] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content. For example, if the user is nervous, a message encouraging them to relax will be displayed.
[0315] Step 13:
[0316] The emotion engine suggests advice and responses based on the user's emotional changes. For example, if the user's emotions change suddenly, it suggests "Let's talk calmly."
[0317] Step 14:
[0318] The user selects the matchmaking mode on the setting screen.
[0319] Step 15:
[0320] The server confirms the selection of the matchmaking mode and asks the user who selected the matchmaking mode whether or not he or she has an intention to get married.
[0321] Step 16:
[0322] The server uses an emotion engine to analyze the user's emotions and takes the emotion analysis result into consideration when confirming the intention to marry.
[0323] Step 17:
[0324] The server gives priority to users who are willing to get married and adds them to a matching candidate list, which is then sent to the user terminal.
[0325] Step 18:
[0326] The profiles of users who are prioritized on the device are displayed in a list format, and the user can select the person they are interested in.
[0327] Step 19:
[0328] The user starts chatting with the person selected for the purpose of finding a partner.
[0329] Step 20:
[0330] The emotion engine recognizes users' emotions in real time during chats while searching for a partner, and suggests advice and responses to facilitate smooth communication.
[0331] Example 2
[0332] 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."
[0333] Conventional matching systems present match candidates based only on the user's past behavioral history and preferences, making it difficult to achieve highly accurate matching that takes into account the user's current emotions and psychological state. It was also difficult to accurately grasp the user's intentions to marry and provide appropriate match candidates. This resulted in low user satisfaction and reduced motivation to use the system.
[0334] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0335] In this invention, the server includes: means for a user to input authentication information; means for the server to verify the authentication information and acquire the user's past behavioral history and usage history; means for the server to analyze the acquired data using a machine learning algorithm and analyze the user's preferences and emotions; means for the server to analyze the user's emotions using an emotion engine and integrate it with the preference data; means for the server to score the match candidates generated based on the analysis results and display them on the user terminal in a list in descending order of score; means for the user to select a partner of interest from the displayed match candidates and start chatting with that partner; and means for the emotion engine to recognize the user's emotions in real time during chat and reflect them in the chat content. This enables highly accurate matching that takes into account the user's emotions and intentions to marry, thereby increasing user satisfaction and increasing their willingness to use the service.
[0336] "Authentication Information" refers to the identification information and confidential information used by a user to log in to a system, including, for example, a user ID and password.
[0337] "Machine learning algorithms" refer to mathematical methods and models that analyze data and find patterns and relationships, enabling predictions and classifications.
[0338] An "emotion engine" refers to software or algorithms that analyze and identify emotions from a user's text, voice, etc., allowing for real-time recognition of the user's emotional state.
[0339] "Scoring" refers to the process of assigning scores to items according to specific criteria or indicators based on the analysis results, which allows for a clear prioritization of items.
[0340] "Matching candidates" refer to other users selected based on the user's preferences and feelings. This creates a list of people who are likely to be compatible with each other.
[0341] "Chat session" refers to a series of processes and connections for real-time communication between users via text messages, voice, video, etc.
[0342] "Marriage hunting mode" refers to a special setting for providing matching for the purpose of marriage. By selecting this mode, users who are interested in marriage will be given priority in matching.
[0343] "Marriage intention confirmation" refers to the process in which the server confirms whether the user intends to get married, thereby identifying users who intend to get married.
[0344] "Preference data" refers to information indicating a user's preferences and interests obtained based on the user's past behavioral history and usage history. This information is used to generate matching candidates that are suitable for the user.
[0345] "Terminal" refers to an electronic device that allows a user to access the system and operate the interface. Specifically, this includes personal computers and smartphones.
[0346] The matching system based on this invention provides advanced matching simply by the user logging in, and by combining it with an emotion engine, it recognizes the user's emotions and achieves more accurate matching and communication. Below, we will explain the details of the system's program processing and specific examples based on it.
[0347] System Configuration
[0348] This system uses the following major hardware and software:
[0349] Hardware:
[0350] server
[0351] Client terminal (PC, smartphone)
[0352] software:
[0353] Database (MySQL, PostgreSQL)
[0354] Machine learning libraries (TensorFlow, PyTorch)
[0355] Emotion engine (IBM Watson(R), Azure(R) Emotion API)
[0356] Program Processing Details
[0357] 1. The user accesses the system login screen and enters their user ID and password.
[0358] The user accesses the login screen using the client terminal.
[0359] The server receives the entered authentication information and compares it with a database to authenticate the user.
[0360] 2. If authentication is successful, the server retrieves the user's past search history and usage history.
[0361] The server retrieves the behavior history of the successfully authenticated user from the database.
[0362] 3. The server inputs the acquired data into a machine learning algorithm to analyze the user's preferences and emotions.
[0363] The server uses TensorFlow and PyTorch to analyze users' search and usage histories and extract preference patterns.
[0364] 4. Use the emotion engine to analyze user emotions and integrate this data.
[0365] The server uses IBM Watson and Azure Emotion APIs to analyze the user's emotional state in real time.
[0366] 5. The server scores the matching candidates based on the analysis results and displays them on the user's device in a list in descending order of score.
[0367] Based on the analysis results, the server scores the best matching candidates and sends a list of candidates to the client terminal.
[0368] 6. The user selects the person they are interested in from the displayed match candidates and starts chatting with that person.
[0369] When the user clicks the "Start Chat" button, the server creates a chat session and sends a chat request to the selected person.
[0370] 7. The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content.
[0371] The emotion engine analyzes messages during chat and provides advice and responses based on the user's emotions in real time.
[0372] Specific examples
[0373] Below is an example of how User A logs into the system, finds a suitable match, and starts chatting.
[0374] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[0375] 2. The server receives User A's authentication information, checks it against the database, and successfully authenticates him.
[0376] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[0377] 4. The server analyzes this history using a machine learning algorithm and identifies a pattern that User A is looking for people who like movies.
[0378] 5. The server uses the emotion engine to analyze the emotions of User A's past behavior, for example, analyzing the positive emotions during movie-related searches.
[0379] 6. The server lists and scores other movie-loving users B, C, and D from the database.
[0380] 7. The server generates a list of candidates in descending order of score and sends it to the terminal.
[0381] 8. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[0382] 9. The server creates a chat session and sends a chat request to User B.
[0383] 10. User B approves the request and the chat screen appears on the device.
[0384] 11. The emotion engine recognizes the emotions of users A and B during chat in real time and provides emotion-based advice and responses.
[0385] 12. User A and User B exchange messages in real time, promoting emotion-based communication.
[0386] Prompt Sentence Examples
[0387] "Please generate a scenario in which User A accesses the login screen and attempts to log in."
[0388] "Describe a scenario where User A's past search history is related to movies."
[0389] "Please explain the process by which user A matches with other movie-loving users."
[0390] Through this system and concrete examples, users can experience advanced emotion-based matching and communication.
[0391] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0392] Step 1:
[0393] The user accesses the system login screen and enters their user ID and password.
[0394] Input: User ID, Password
[0395] Output: User credentials
[0396] The user accesses the login screen using a client terminal and enters the necessary authentication information, which is received by the server.
[0397] Step 2:
[0398] The server receives the entered authentication information and compares it with a database to authenticate the user.
[0399] Input: User credentials
[0400] Output: Authentication result (success / failure)
[0401] The server uses SQL queries to match the authentication information with records in a database and generates an authentication result.
[0402] Step 3:
[0403] If the server is successful in authenticating the user, it obtains the user's past search history and usage history.
[0404] Input: Authentication result (success)
[0405] Output: Search history, usage history
[0406] The server executes queries to retrieve past search and usage history from the user's database records.
[0407] Step 4:
[0408] The server inputs the acquired data into a machine learning algorithm to analyze the user's preferences and emotions.
[0409] Input: Search history, usage history
[0410] Output: Preference patterns, emotion data
[0411] The server analyzes the data using TensorFlow and PyTorch to extract user preference patterns and emotional data.
[0412] Step 5:
[0413] The server uses an emotion engine to analyze the user's emotions and integrates this data.
[0414] Input: Search history, usage history, preference patterns
[0415] Output: Integrated data (preferences + emotions)
[0416] The server uses IBM Watson and Azure Emotion APIs to analyze emotional data and integrate it with user preference data.
[0417] Step 6:
[0418] The server scores the matching candidates based on the analysis results and displays them on the user's device in a list in order of highest score.
[0419] Input: Integrated data
[0420] Output: A list of possible matches
[0421] The server uses a scoring algorithm to rank the potential matches and sends the list to the client terminal.
[0422] Step 7:
[0423] The user selects the person of interest from the displayed match candidates and starts chatting with that person.
[0424] Input: Match candidate list
[0425] Output: Selected candidates
[0426] The user operates the interface of the client terminal to select matching candidates of interest.
[0427] Step 8:
[0428] The server creates a chat session and sends a chat request to the selected person.
[0429] Input: Selected candidate
[0430] Output: Chat session
[0431] The server initiates the chat session and sends a chat request to the selected other user.
[0432] Step 9:
[0433] When the other user accepts the chat request, the chat screen will appear on the device.
[0434] Input: Chat request
[0435] Output: Chat screen
[0436] The other user accepts the chat request on the client terminal, and the chat screen is displayed.
[0437] Step 10:
[0438] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content.
[0439] Input: Chat content
[0440] Output: Emotion-based advice and suggested actions
[0441] The emotion engine analyzes chat messages and suggests advice and responses based on the user's emotions.
[0442] (Application example 2)
[0443] 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."
[0444] Conventional matching systems can analyze users' preferences and present recommended match candidates, but the accuracy of matching and communication that takes into account the user's emotional state and real-time feedback is limited. Furthermore, while the matchmaking mode can confirm the user's intention to marry, it does not reflect the user's emotional state, making it difficult to fully meet the user's needs. Therefore, there is a need for an advanced matching and communication system that takes into account not only the user's preferences but also their emotional state.
[0445] 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.
[0446] In this invention, the server includes means for a user to input authentication information, means for the server to verify the authentication information and acquire the user's past search history and usage history, means for the server to analyze the acquired data and generate match candidates based on the user's preferences, means for analyzing the user's emotions in real time using an emotion engine, means for the server to display the generated match candidates on a user terminal, means for the user to select a match candidate of interest from the displayed match candidates and start a chat with the candidate, and means for suggesting advice and responses during the chat based on the user's emotions. This enables highly accurate analysis of user preferences and emotions, and enables matching and effective communication based on the analysis.
[0447] "Authentication information" refers to the information a user enters to log in to a system, and typically includes a user ID and password.
[0448] "Server" refers to a computer system that stores, processes, and transmits data.
[0449] "Search History" refers to a record of searches a User has previously conducted on the System.
[0450] "Usage history" refers to a record of a user's actions and operations when using the system.
[0451] "Preferences" refer to the things and product trends that a user particularly likes.
[0452] "Matching candidates" refer to people the system recommends based on an analysis of the user's preferences and emotions.
[0453] "Emotion engine" refers to a software or hardware system that recognizes and analyzes a user's emotional state.
[0454] "Real-time" refers to data collection and analysis occurring immediately, without delay.
[0455] "Marriage hunting mode" refers to a special setting in the system for matching with the aim of marriage.
[0456] "Confirming intention to marry" refers to the process in which the server confirms whether the user is willing to marry.
[0457] "Scoring" refers to the process of evaluating and prioritizing potential matches based on specific criteria.
[0458] "Chat" refers to a means of interaction that allows users to exchange messages in real time.
[0459] "Advice" refers to advice or suggestions provided by the system based on the user's emotions and behavior.
[0460] As an embodiment of this invention, we will first explain the system program, which is an important element. The server verifies the authentication information entered by the user and acquires the user's past search history and usage history. The server also analyzes this data and generates matching candidates based on the user's preferences. It then uses an emotion engine to analyze the user's emotions in real time and reflects this in the matching candidates.
[0461] The generated matching candidates are then displayed on the user's device, and the user can select a partner they are interested in from the displayed candidates and start chatting. Even during the chat, the emotion engine recognizes the user's emotions in real time and suggests advice and responses based on their emotions.
[0462] Furthermore, in the matchmaking mode, the server checks whether the user has intentions to get married and displays them as match candidates with priority. In this case, the emotion engine is also used to support the confirmation of intentions to get married.
[0463] The main hardware and software used are user devices (such as smartphones and head-mounted displays), servers, emotion engines, and machine learning algorithms (e.g., logistic regression), which enable real-time data processing and advanced analysis.
[0464] For example, if a user has watched a lot of "dramas" in the past and is currently feeling "tired" as a result of the emotion engine's analysis, the server will recommend relaxing "comedy movies" or "soothing music." When the user then selects someone they are interested in and starts chatting, the emotion engine will analyze their emotions in real time and promote communication based on that.
[0465] Here are some examples of specific prompts to implement this system:
[0466] "Please obtain user data: User ID: sample_user_id Past viewing history: 1. Movies: 'Drama' (view count: 5) 2. Movies: 'Action' (view count: 2) Current emotion: 'Tired' Based on this data, please generate a code that will recommend the most suitable content for that user."
[0467] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0468] Step 1:
[0469] The user enters their authentication information.
[0470] Input: User ID, Password
[0471] Output: Credentials
[0472] Specific operation: The user accesses the system's login screen and enters the user ID and password.
[0473] Step 2:
[0474] The server verifies the authentication information and retrieves the user's past search history and usage history.
[0475] Input: Authentication information (user ID, password)
[0476] Output: User search history, usage history
[0477] Specific operation: The server receives the entered authentication information and authenticates the user by comparing it with the database. If authentication is successful, the server retrieves the user's past search history and usage history from the database.
[0478] Step 3:
[0479] The server analyzes the acquired data and generates matching candidates based on the user's preferences.
[0480] Input: User search history, usage history
[0481] Output: User preference patterns, matching candidates
[0482] How it works: The server analyzes the acquired data using machine learning algorithms (e.g., logistic regression) to extract user preference patterns, and then lists candidates with matching preferences from the database.
[0483] Step 4:
[0484] Analyze user emotions in real time using an emotion engine.
[0485] Input: User's current behavior data, voice, and facial expression data
[0486] Output: User sentiment analysis results
[0487] Specific operation: The server uses the EmotionEngine to analyze the user's current behavioral data (e.g., voice and facial expressions) in real time and classify their current emotional state.
[0488] Step 5:
[0489] The server displays the generated match candidates on the user terminal.
[0490] Input: Matching candidate list, sentiment analysis results
[0491] Output: Candidate list displayed on the user's terminal
[0492] Specific operation: Based on the results of the emotion analysis, the server modifies the scoring of the matching candidate list and displays it on the user's device in the optimal order.
[0493] Step 6:
[0494] The user selects a candidate that interests them from the displayed matching candidates and starts chatting with that person.
[0495] Input: Match candidate list, user selection
[0496] Output: Chat session started
[0497] Specific operation: The user selects a match candidate from the list displayed on the device and clicks the "Start Chat" button. The server then creates a chat session and sends a chat request to the selected match candidate.
[0498] Step 7:
[0499] Suggest advice and responses during chat based on the user's emotions.
[0500] Input: Real-time sentiment analysis results, chat content
[0501] Output: Advice and suggestions
[0502] Specific behavior: The server uses the emotion engine to analyze the user's emotions in real time during the chat and provides advice and responses according to changes in emotions, such as specific questions and communication tips related to the content the other person is interested in.
[0503] Step 8:
[0504] In the matchmaking mode, the server confirms the user's intention to marry and displays match candidates on a priority basis.
[0505] Input: Matchmaking mode settings, marriage intention confirmation result
[0506] Output: A prioritized list of possible matches
[0507] Specific operation: When the user turns on the matchmaking mode, the server displays a prompt to confirm whether or not the user is interested in marriage. Based on the user's response, if the user is interested in marriage, the server prioritizes this and re-scores the list of match candidates and displays it on the user's device.
[0508] 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.
[0509] 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.
[0510] 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.
[0511] [Second embodiment]
[0512] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0513] 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.
[0514] 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).
[0515] 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.
[0516] 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.
[0517] 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).
[0518] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[0519] 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.
[0520] 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.
[0521] 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.
[0522] In the smart glasses 214, 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.
[0523] 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."
[0524] The matching system according to the present invention provides advanced matching simply by the user logging in. Details of the program processing of the system and specific examples based on it will be described below.
[0525] Overall system flow
[0526] 1. User login
[0527] The user accesses the system's login screen and enters their user ID and password.
[0528] The server receives the entered authentication information and collates it with a database to authenticate the user. If authentication is successful, the server obtains the user's past search history and usage history.
[0529] 2. Data collection and analysis
[0530] The server analyzes the acquired search history and usage history, for example, analyzing what keywords were searched and which profiles were viewed.
[0531] The server uses machine learning algorithms to analyze user preferences and patterns and compile a list of potential matches based on the user's interests.
[0532] 3. Display of match candidates
[0533] The server scores the matching candidates based on the analysis results, lists them in descending order of score, and sends this to the device.
[0534] The device displays a list of recommended users' profiles, and the user can select the person they are interested in from the displayed candidates.
[0535] 4. Start chatting
[0536] The user selects the person they are interested in from the matching candidates and clicks the "Start Chat" button.
[0537] The server creates a chat session and sends a chat request to the selected party.
[0538] When the other user accepts the chat request, a chat screen will appear on the device and you will be able to exchange messages in real time.
[0539] 5. Matchmaking support function
[0540] The user selects the matchmaking mode on the setting screen.
[0541] The server confirms the selection of the matchmaking mode and provides a function to confirm whether the user who desires to find a match has an intention to get married.
[0542] The server preferentially adds users who are willing to marry to a matching candidate list, and displays this on the terminal.
[0543] Specific examples
[0544] An example of when user A logs in to the system is shown below.
[0545] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[0546] 2. The server receives User A's authentication information, compares it with the database, and authentication is successful.
[0547] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[0548] 4. The server analyzes this history using a machine learning algorithm and extracts a pattern that indicates that User A is looking for people who like movies.
[0549] 5. The server lists and scores other movie-loving users B, C, and D from the database.
[0550] 6. The server generates a list of candidates in descending order of score and sends it to the terminal.
[0551] 7. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[0552] 8. The server creates a chat session and sends a chat request to User B.
[0553] 9. User B approves the request and the chat screen appears on the device.
[0554] 10. User A and User B exchange messages in real time.
[0555] In this way, User A can easily match with the most suitable partner based on their past behavioral history and start a conversation in real time without having to register their detailed requirements. Furthermore, by turning on the matchmaking mode, they can be efficiently matched with people who are interested in marriage.
[0556] The processing flow will be explained below.
[0557] Step 1:
[0558] The user enters their user ID and password on the login screen and clicks the "Login" button.
[0559] Step 2:
[0560] The server receives the entered user ID and password and authenticates them by checking them against the database.
[0561] Step 3:
[0562] If the server is successful in authentication, it retrieves the user's past search history and usage history from the database.
[0563] Step 4:
[0564] The search history and usage history acquired by the server is input into a machine learning algorithm to analyze the user's preferences.
[0565] Step 5:
[0566] Based on the analyzed user preferences, the server generates a list of suitable matching candidate users from the database and scores them.
[0567] Step 6:
[0568] The server sorts the list of matching candidates in order of score and sends it to the user terminal.
[0569] Step 7:
[0570] A list of potential matches for the user is displayed on the device, and the user can select the person they are interested in.
[0571] Step 8:
[0572] The user clicks the "Start Chat" button for the selected person.
[0573] Step 9:
[0574] The server creates a chat session and sends a chat request to the selected other user.
[0575] Step 10:
[0576] When the other user accepts the chat request, the chat screen will appear on the device.
[0577] Step 11:
[0578] A user and another user exchange messages in real time.
[0579] Step 12:
[0580] The user selects the matchmaking mode on the setting screen.
[0581] Step 13:
[0582] The server confirms the selection of the matchmaking mode and asks the user who selected the matchmaking mode whether or not he or she has an intention to get married.
[0583] Step 14:
[0584] The server gives priority to users who are willing to get married and adds them to a matching candidate list, which is displayed on the terminal.
[0585] Step 15:
[0586] The profiles of users who are prioritized on the device are displayed in a list format, and the user can select the person they are interested in.
[0587] Step 16:
[0588] The user starts chatting with the person selected for the purpose of finding a partner.
[0589] Example 1
[0590] 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."
[0591] Conventional matching systems have the problem that users must set detailed conditions, which is time-consuming. Also, finding suitable match candidates requires a lot of manual work, which is inefficient. Furthermore, the matching function with users who are interested in marriage is limited, which is inconvenient for users looking for a marriage partner.
[0592] 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.
[0593] In this invention, the server includes: a means for a user to input authentication information; a means for the server to verify the authentication information and acquire the user's past behavioral history and usage history; a means for the server to analyze the acquired data and generate match candidates based on the user's preferences using an advanced analytical algorithm; a means for the server to display the generated match candidates on the user's operating terminal; and a means for the user to select a match candidate of interest from the displayed match candidates and start real-time communication with the match candidate. This allows the user to efficiently present optimal match candidates based on their past behavioral history and engage in real-time dialogue without having to set detailed conditions. Furthermore, by including a means for selecting a match-hunting mode and a means for the server to confirm whether a user who selected the match-hunting mode intends to marry and prioritize users who have such intentions as match candidates, it is possible to provide matching that is suitable for users who are looking for marriage.
[0594] "Authentication information" is information required to verify a user's identity, and typically includes a username and password.
[0595] "Behavioral history" refers to records of searches, clicks, views, etc. that a user performs on the system.
[0596] "Usage history" refers to a record of a series of operations and usage patterns when a user uses a system.
[0597] "Analysis algorithms" refer to mathematical techniques and machine learning models used to analyze acquired data and extract specific patterns and preferences.
[0598] "Matching candidates" refer to candidates of other users who are predicted to be compatible with the user, selected based on the user's preferences and behavioral history.
[0599] An "operation terminal" refers to hardware or devices that allow a user to access and operate the system.
[0600] "Real-time communication" refers to a communication method in which data is sent and received instantaneously via the Internet.
[0601] The "marriage hunting mode" refers to a special setting mode that prioritizes matching users who are interested in getting married.
[0602] The matching system according to the present invention provides advanced matching simply by the user logging in. Details of the program processing of the system and specific examples based on it will be described below.
[0603] Hardware and software used
[0604] First, this system uses the following hardware and software:
[0605] Hardware:
[0606] Database Server
[0607] Web Server
[0608] User device (smartphone, PC, etc.)
[0609] software:
[0610] Database management system (MySQL)
[0611] Authentication API (OAuth 2.0)
[0612] Machine learning platform (TensorFlow)
[0613] Data analysis tools (Python, Pandas)
[0614] Front-end frameworks (React, Angular)
[0615] Communication protocol (HTTP / HTTPS)
[0616] Chat server (WebSocket)
[0617] Real-time communication framework (Socket.IO)
[0618] Config Management
[0619] System Program Processing
[0620] The specific program processing is described below.
[0621] The user accesses the login screen and enters their user ID and password. The server receives the entered authentication information and authenticates the user by comparing it with the database. If authentication is successful, the server retrieves the user's past behavioral history and usage history from the database.
[0622] The server analyzes the acquired search history and usage history. It uses Python's Pandas library to create a history data frame. It then uses machine learning algorithms (using TensorFlow and Scikit-Learn) to extract user preferences and patterns and create a list of suitable matching candidates.
[0623] The server scores the candidates based on the analysis results and lists them in descending order. This scoring takes into account factors such as common interests and profile similarities. The server then sends the list of candidates to the device, where a user interface using React or Angular is displayed.
[0624] When a user selects a match from the candidates and clicks the "Start Chat" button, the server creates a chat session and sends a chat request to the selected match. If the chat request is accepted, a chat screen will appear on the user's device, enabling real-time communication.
[0625] When a user selects the matchmaking mode, the server confirms the selection and activates the mode. In this state, the server displays users who are willing to get married as match candidates with priority.
[0626] Specific examples
[0627] For example, when user A logs in to the system, the process is as follows:
[0628] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[0629] 2. The server receives User A's authentication information, checks it against the database, and authentication is successful.
[0630] 3. The server obtains User A's past search history and usage history (for example, search history for "movie lover").
[0631] 4. The server analyzes these histories using a machine learning algorithm and extracts patterns that indicate that User A likes movies.
[0632] 5. The server lists and scores other movie-loving users B, C, and D from the database.
[0633] 6. The server generates a list of candidates in descending order of score and sends it to the terminal.
[0634] 7. The profiles of users B, C, and D are displayed in a list on the device, and user A selects user B and clicks the "Start Chat" button.
[0635] 8. The server creates a chat session and sends a chat request to User B.
[0636] 9. User B approves the request and the chat screen appears on the device.
[0637] 10. User A and User B exchange messages in real time.
[0638] This system allows users to easily find the perfect match based on their preferences and start communicating in real time. The matchmaking mode also allows users to efficiently match with potential partners who are interested in marriage.
[0639] Prompt Sentence Examples
[0640] "Please generate a program that lists and scores the best matches based on the past search history of user A, who wants to match with people who like movies."
[0641] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0642] Step 1:
[0643] The user enters the user ID and password on the login screen and clicks the "Login" button. The user ID and password are sent as input.
[0644] Specific behavior:
[0645] The user accesses the login page in a browser, enters the user ID and password in the login form, and clicks the "Login" button.
[0646] Step 2:
[0647] The server receives the entered authentication information and compares it with the database to authenticate the user. If authentication is successful, past behavioral and usage history is retrieved from the database. The retrieved data is search history and click history based on the user ID.
[0648] Specific behavior:
[0649] The server authenticates the user ID and password received at the POST / api / login endpoint using OAuth 2.0, and executes an SQL query to retrieve past search history and behavioral history from the database based on the user ID.
[0650] Step 3:
[0651] The server analyzes the data it acquires and extracts user preferences and patterns. Search history and behavioral history are given as input, and the analysis results are obtained as output. The analysis is performed using Python's Pandas library and a machine learning algorithm (TensorFlow).
[0652] Specific behavior:
[0653] The server converts the search history and behavioral history obtained into a data frame, and performs data manipulation using Python and Pandas. Furthermore, TensorFlow is used to apply a machine learning model to analyze and cluster user preferences.
[0654] Step 4:
[0655] The server scores the match candidates based on the analysis results and lists them in descending order. It takes the analysis results as input and obtains a scored list of match candidates as output. Scoring takes into account factors such as common interests and profile similarity.
[0656] Specific behavior:
[0657] The server uses a personalization algorithm to convert the analysis results into a matching score, generates a list of match candidates based on the user's preferences, and assigns a score to each.
[0658] Step 5:
[0659] The server sends the scored match candidate list to the terminal, taking the match candidate list as input and generating data for displaying the list as output.
[0660] Specific behavior:
[0661] The server sends the list of matching candidates to the API endpoint for displaying the list (e.g., GET / api / matchCandidates), and the front-end displays the received data in list format using a React component.
[0662] Step 6:
[0663] The user selects a candidate they are interested in from the displayed matching candidates and clicks the "Start Chat" button. The user sends the user ID of the selected candidate as input.
[0664] Specific behavior:
[0665] When the user clicks the "Start Chat" button, JavaScript calls the POST / api / startChat endpoint and sends the user ID of the selected candidate.
[0666] Step 7:
[0667] The server creates a chat session and sends a chat request to the selected person. It receives a chat start request as input, generates a chat session ID as output, and sends the request to the person.
[0668] Specific behavior:
[0669] The server creates a chat session in the database and sends a notification to the other user via WebSocket.
[0670] Step 8:
[0671] When the other user accepts the chat request, the chat screen is displayed on the device. The system receives the acceptance request as input and updates the chat screen display as output.
[0672] Specific behavior:
[0673] When the other user clicks the accept button, a request is sent to the server, and the server updates the chat session, notifying both devices that they are ready for real-time communication.
[0674] Step 9:
[0675] User A and the other user exchange messages in real time. Chat messages are sent and received intermittently as input, and the conversation content is displayed as output.
[0676] Specific behavior:
[0677] User A and the other user use a real-time communication framework (Socket.IO) to send and receive messages via WebSocket, and new messages are displayed immediately on the chat screen.
[0678] Step 10:
[0679] When a user selects the matchmaking mode, the server confirms this selection, checks whether the user who is looking for a marriage partner has an intention to marry, and displays users who have such intention preferentially. The selection of the matchmaking mode is transmitted as input, and a list of matchmaking candidates for the purpose of matchmaking is generated as output.
[0680] Specific behavior:
[0681] The user selects "Marriage Hunting Mode" on the settings screen and submits the form. The server receives the POST / api / settings, records the marriage hunting mode setting in the database, changes the priority of the users who are looking for marriage, and reflects this in the matching algorithm.
[0682] Through the above processing steps, users can efficiently find the best match candidates and communicate with them in real time. In addition, by using the matchmaking mode, users can smoothly match with people who are interested in marriage.
[0683] (Application example 1)
[0684] 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."
[0685] On conventional online shopping sites, users had to spend a lot of time and effort to find individual products, making it difficult to efficiently find products that matched their preferences.In addition, they were unable to effectively combine real-time reviews from other users and chat functions to increase purchasing motivation.
[0686] 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.
[0687] In this invention, the server includes: means for a user to input authentication information; means for the server to verify the authentication information and acquire the user's past purchase history and browsing history; means for the server to analyze the acquired data and generate recommendation candidates based on the user's preferences; means for the server to display the generated recommendation candidates on a user terminal; means for the user to select a product of interest from the displayed recommendation candidates and view product information; and means for the server to generate a chat session based on reviews from other users and for users to share product reviews in real time. This enables users to efficiently receive product recommendations based on their past purchase history and browsing history, and to increase their desire to purchase while referring to real-time feedback from other users.
[0688] "Authentication information" refers to the identification information a user uses to log in to a system, typically a user ID and password.
[0689] "Purchase history" is a record of products purchased by a user in the past, and is data indicating the user's consumption behavior.
[0690] "Browsing history" is a record of which pages or products a user has viewed within a website or application.
[0691] "Recommendation candidates" are a list of products and services recommended to the user based on the analyzed data.
[0692] A "user terminal" is a device used by a user to access the system, such as a smartphone or computer.
[0693] A "chat session" is a communication session in which users can exchange messages in real time.
[0694] A "machine learning algorithm" is a computational method for learning from large amounts of data and generating specific patterns and predictions.
[0695] A "generative AI model" is an artificial intelligence system that generates or improves recommendation candidates based on prompts entered by the user.
[0696] A "prompt" is a command or question that a user inputs to a generative AI model.
[0697] The embodiments of the present invention will be specifically described, so that other engineers can practice the invention.
[0698] System Configuration
[0699] The system consists of the following major components:
[0700] Hardware
[0701] Server: Responsible for data collection, analysis, and recommendation generation. For example, a cloud-based server such as Amazon EC2 is used.
[0702] User device: The device through which the user accesses the system and views the recommendations, such as a smartphone, tablet, or PC.
[0703] software
[0704] Flask: A Python web framework that handles communication between the server and the client.
[0705] scikit-learn: A Python library for running machine learning algorithms.
[0706] pandas: A Python library for collecting and preprocessing data.
[0707] Generative AI model: An artificial intelligence system for generating and improving recommendations based on user prompts.
[0708] System Operation
[0709] User authentication and data collection
[0710] 1. When a user logs in to the system, they are authenticated by entering their user ID and password, and the authentication information is sent to the server.
[0711] 2. The server compares the authentication information with the database and, if authentication is successful, retrieves the user's past purchase and browsing history.
[0712] Analyzing data and generating recommendations
[0713] 3. The server preprocesses the acquired purchase history and browsing history using the pandas library and converts it into a format suitable for analysis.
[0714] 4. The server runs a machine learning algorithm using scikit-learn to analyze user preferences.
[0715] 5. Based on the results of the analysis, the system generates and scores recommended products and services that are best suited to the user.
[0716] Display of recommended candidates and real-time chat
[0717] 6. The server sends the generated recommendation candidates to the user terminal and displays them in list form on the user terminal.
[0718] 7. The user selects a product of interest from the displayed recommended candidates and views detailed product information.
[0719] 8. The server generates a chat session based on other users' reviews of the selected product, providing a means for sharing review information in real time.
[0720] Specific examples
[0721] For example, if a user logs in and has frequently purchased "smartphone accessories" in the past, the server will analyze their purchasing history. Based on the results of this analysis, the server will recommend the user the latest smartphone case or a highly rated charging cable. Users can browse these recommended items and check other users' reviews of products they are interested in in real time. This will increase their motivation to purchase and enable them to select the best product.
[0722] An example prompt for a generative AI model is, "Recommend new products to the user based on their past purchases and browsing history. Please create a simple example that includes user authentication, data collection, a machine learning recommendation system, and product recommendation display functionality."
[0723] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0724] Step 1:
[0725] The user opens the system's login screen and enters their user ID and password. The user ID and password are received as input data and sent to the server. The server then collates the received authentication information with a database to authenticate the user. If authentication is successful, the user's past purchase history and browsing history are retrieved from the database.
[0726] Step 2:
[0727] The server uses the pandas library to store the acquired purchase history and browsing history in a data frame and perform preprocessing. For example, it removes duplicate data and fills in missing values. It receives purchase history and browsing history as input data and outputs a preprocessed data frame.
[0728] Step 3:
[0729] The server analyzes the preprocessed data using scikit-learn. Specifically, it analyzes user preferences using clustering algorithms and generates a recommendation model. In this process, it receives the preprocessed data frame as input data and outputs a recommendation model based on the user preferences as the analysis result.
[0730] Step 4:
[0731] The server generates product and service recommendation candidates based on the generated recommendation model. For example, it calculates and scores the user's preference score for each candidate. It receives the recommendation model as input data and outputs a scored list of recommendation candidates.
[0732] Step 5:
[0733] The server sends the scored recommendation candidate list to the user's device, which displays a list of products and services as recommendation candidates.The server receives the recommendation candidate list as input data and generates a list to be displayed on the user's device as output data.
[0734] Step 6:
[0735] The user selects a product or service of interest from the list of recommended candidates and views detailed information. The system receives the list of recommended candidates as input data and displays detailed information about the selected product.
[0736] Step 7:
[0737] The server generates a chat session based on other users' reviews of the selected product. It allows users to share review information in real time and exchange questions and comments about the product with other users. It receives the selected product information as input data, generates a chat session as output data, and displays it on the user's terminal.
[0738] Step 8:
[0739] The server uses the generative AI model to further optimize the recommendation candidate list based on the prompt entered by the user. For example, if the user enters "Please recommend the latest smartphone case," the AI model will add the most suitable smartphone case to the recommendation candidate list. It receives the prompt as input data and outputs an optimized recommendation candidate list.
[0740] 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.
[0741] The matching system based on this invention provides advanced matching simply by the user logging in, and by combining it with an emotion engine, it recognizes the user's emotions and achieves more accurate matching and communication. Below, we will explain the details of the system's program processing and specific examples based on it.
[0742] Overall system flow
[0743] 1. User login
[0744] The user accesses the system's login screen and enters their user ID and password.
[0745] The server receives the entered authentication information and collates it with a database to authenticate the user. If authentication is successful, the server obtains the user's past search history and usage history.
[0746] 2. Data collection and analysis
[0747] The server inputs the acquired search history and usage history into a machine learning algorithm to analyze the user's preferences.
[0748] The server also analyzes the user's emotions using an emotion engine and integrates this data to develop a more detailed understanding of the user's preferences.
[0749] 3. Display of match candidates
[0750] The server scores the matching candidates based on the analysis results, lists them in descending order of score, and sends this to the device.
[0751] The device displays a list of recommended users' profiles, and the user can select the person they are interested in from the displayed candidates.
[0752] 4. Start chatting
[0753] The user selects the person they are interested in from the matching candidates and clicks the "Start Chat" button.
[0754] The server creates a chat session and sends a chat request to the selected party.
[0755] When the other user accepts the chat request, the chat screen will appear on the device.
[0756] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content. It also suggests advice and responses according to changes in emotions.
[0757] 5. Matchmaking support function
[0758] The user selects the matchmaking mode on the setting screen.
[0759] The server confirms the selection of the matchmaking mode and provides a function to confirm whether the user who selected the wedding mode intends to get married.The server also analyzes the user's emotions using an emotion engine and takes the emotion analysis result into consideration when confirming the intention to get married.
[0760] The server preferentially adds users who are willing to marry to a matching candidate list, and displays this on the terminal.
[0761] Specific examples
[0762] An example of when user A logs in to the system is shown below.
[0763] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[0764] 2. The server receives User A's authentication information, compares it with the database, and authentication is successful.
[0765] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[0766] 4. The server analyzes this history using a machine learning algorithm and extracts a pattern that indicates that User A is looking for people who like movies.
[0767] 5. The server uses the emotion engine to analyze the emotions of User A's past behavior, for example, analyzing the positive emotions during movie-related searches.
[0768] 6. The server lists and scores other movie-loving users B, C, and D from the database.
[0769] 7. The server generates a list of candidates in descending order of score and sends it to the terminal.
[0770] 8. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[0771] 9. The server creates a chat session and sends a chat request to User B.
[0772] 10. User B approves the request and the chat screen appears on the device.
[0773] 11. The emotion engine recognizes the emotions of users A and B during chat in real time and suggests advice and responses based on their emotions.
[0774] 12. User A and User B exchange messages in real time, promoting emotion-based communication.
[0775] In this way, User A can easily match with the most suitable partner based on their past behavioral history and emotional analysis, and begin a conversation in real time, without having to register their detailed requirements. Furthermore, by turning on the matchmaking mode, efficient communication based on emotional analysis with potential marriage partners becomes possible.
[0776] The processing flow will be explained below.
[0777] Step 1:
[0778] The user enters their user ID and password on the login screen and clicks the "Login" button.
[0779] Step 2:
[0780] The server receives the entered user ID and password and authenticates them by checking them against the database.
[0781] Step 3:
[0782] If the server is successful in authentication, it retrieves the user's past search history and usage history from the database.
[0783] Step 4:
[0784] The search history and usage history acquired by the server is input into a machine learning algorithm to analyze the user's preferences.
[0785] Step 5:
[0786] The server uses an emotion engine to analyze the emotions of the user's past actions and adds them to the preference analysis results.
[0787] Step 6:
[0788] The server generates a list of suitable match candidate users from the database based on the analyzed user preferences and emotions, and scores them.
[0789] Step 7:
[0790] The server sorts the list of matching candidates in order of score and sends it to the user terminal.
[0791] Step 8:
[0792] A list of potential matches for the user is displayed on the device, and the user can select the person they are interested in.
[0793] Step 9:
[0794] The user clicks the "Start Chat" button for the selected person.
[0795] Step 10:
[0796] The server creates a chat session and sends a chat request to the selected other user.
[0797] Step 11:
[0798] When the other user accepts the chat request, the chat screen will appear on the device.
[0799] Step 12:
[0800] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content. For example, if the user is nervous, a message encouraging them to relax will be displayed.
[0801] Step 13:
[0802] The emotion engine suggests advice and responses based on the user's emotional changes. For example, if the user's emotions change suddenly, it suggests "Let's talk calmly."
[0803] Step 14:
[0804] The user selects the matchmaking mode on the setting screen.
[0805] Step 15:
[0806] The server confirms the selection of the matchmaking mode and asks the user who selected the matchmaking mode whether or not he or she has an intention to get married.
[0807] Step 16:
[0808] The server uses an emotion engine to analyze the user's emotions and takes the emotion analysis result into consideration when confirming the intention to marry.
[0809] Step 17:
[0810] The server gives priority to users who are willing to get married and adds them to a matching candidate list, which is then sent to the user terminal.
[0811] Step 18:
[0812] The profiles of users who are prioritized on the device are displayed in a list format, and the user can select the person they are interested in.
[0813] Step 19:
[0814] The user starts chatting with the person selected for the purpose of finding a partner.
[0815] Step 20:
[0816] The emotion engine recognizes users' emotions in real time during chats while searching for a partner, and suggests advice and responses to facilitate smooth communication.
[0817] Example 2
[0818] 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."
[0819] Conventional matching systems present match candidates based only on the user's past behavioral history and preferences, making it difficult to achieve highly accurate matching that takes into account the user's current emotions and psychological state. It was also difficult to accurately grasp the user's intentions to marry and provide appropriate match candidates. This resulted in low user satisfaction and reduced motivation to use the system.
[0820] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0821] In this invention, the server includes: means for a user to input authentication information; means for the server to verify the authentication information and acquire the user's past behavioral history and usage history; means for the server to analyze the acquired data using a machine learning algorithm and analyze the user's preferences and emotions; means for the server to analyze the user's emotions using an emotion engine and integrate it with the preference data; means for the server to score the match candidates generated based on the analysis results and display them on the user terminal in a list in descending order of score; means for the user to select a partner of interest from the displayed match candidates and start chatting with that partner; and means for the emotion engine to recognize the user's emotions in real time during chat and reflect them in the chat content. This enables highly accurate matching that takes into account the user's emotions and intentions to marry, thereby increasing user satisfaction and increasing their willingness to use the service.
[0822] "Authentication Information" refers to the identification information and confidential information used by a user to log in to a system, including, for example, a user ID and password.
[0823] "Machine learning algorithms" refer to mathematical methods and models that analyze data and find patterns and relationships, enabling predictions and classifications.
[0824] An "emotion engine" refers to software or algorithms that analyze and identify emotions from a user's text, voice, etc., allowing for real-time recognition of the user's emotional state.
[0825] "Scoring" refers to the process of assigning scores to items according to specific criteria or indicators based on the analysis results, which allows for a clear prioritization of items.
[0826] "Matching candidates" refer to other users selected based on the user's preferences and feelings. This creates a list of people who are likely to be compatible with each other.
[0827] "Chat session" refers to a series of processes and connections for real-time communication between users via text messages, voice, video, etc.
[0828] "Marriage hunting mode" refers to a special setting for providing matching for the purpose of marriage. By selecting this mode, users who are interested in marriage will be given priority in matching.
[0829] "Marriage intention confirmation" refers to the process in which the server confirms whether the user intends to get married, thereby identifying users who intend to get married.
[0830] "Preference data" refers to information indicating a user's preferences and interests obtained based on the user's past behavioral history and usage history. This information is used to generate matching candidates that are suitable for the user.
[0831] "Terminal" refers to an electronic device that allows a user to access the system and operate the interface. Specifically, this includes personal computers and smartphones.
[0832] The matching system based on this invention provides advanced matching simply by the user logging in, and by combining it with an emotion engine, it recognizes the user's emotions and achieves more accurate matching and communication. Below, we will explain the details of the system's program processing and specific examples based on it.
[0833] System Configuration
[0834] This system uses the following major hardware and software:
[0835] Hardware:
[0836] server
[0837] Client terminal (PC, smartphone)
[0838] software:
[0839] Database (MySQL, PostgreSQL)
[0840] Machine learning libraries (TensorFlow, PyTorch)
[0841] Emotion engine (IBM Watson, Azure Emotion API)
[0842] Program Processing Details
[0843] 1. The user accesses the system login screen and enters their user ID and password.
[0844] The user accesses the login screen using the client terminal.
[0845] The server receives the entered authentication information and compares it with a database to authenticate the user.
[0846] 2. If authentication is successful, the server retrieves the user's past search history and usage history.
[0847] The server retrieves the behavior history of the successfully authenticated user from the database.
[0848] 3. The server inputs the acquired data into a machine learning algorithm to analyze the user's preferences and emotions.
[0849] The server uses TensorFlow and PyTorch to analyze users' search and usage histories and extract preference patterns.
[0850] 4. Use the emotion engine to analyze user emotions and integrate this data.
[0851] The server uses IBM Watson and Azure Emotion APIs to analyze the user's emotional state in real time.
[0852] 5. The server scores the matching candidates based on the analysis results and displays them on the user's device in a list in descending order of score.
[0853] Based on the analysis results, the server scores the best matching candidates and sends a list of candidates to the client terminal.
[0854] 6. The user selects the person they are interested in from the displayed match candidates and starts chatting with that person.
[0855] When the user clicks the "Start Chat" button, the server creates a chat session and sends a chat request to the selected person.
[0856] 7. The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content.
[0857] The emotion engine analyzes messages during chat and provides advice and responses based on the user's emotions in real time.
[0858] Specific examples
[0859] Below is an example of how User A logs into the system, finds a suitable match, and starts chatting.
[0860] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[0861] 2. The server receives User A's authentication information, checks it against the database, and successfully authenticates him.
[0862] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[0863] 4. The server analyzes this history using a machine learning algorithm and identifies a pattern that User A is looking for people who like movies.
[0864] 5. The server uses the emotion engine to analyze the emotions of User A's past behavior, for example, analyzing the positive emotions during movie-related searches.
[0865] 6. The server lists and scores other movie-loving users B, C, and D from the database.
[0866] 7. The server generates a list of candidates in descending order of score and sends it to the terminal.
[0867] 8. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[0868] 9. The server creates a chat session and sends a chat request to User B.
[0869] 10. User B approves the request and the chat screen appears on the device.
[0870] 11. The emotion engine recognizes the emotions of users A and B during chat in real time and provides emotion-based advice and responses.
[0871] 12. User A and User B exchange messages in real time, promoting emotion-based communication.
[0872] Prompt Sentence Examples
[0873] "Please generate a scenario in which User A accesses the login screen and attempts to log in."
[0874] "Describe a scenario where User A's past search history is related to movies."
[0875] "Please explain the process by which user A matches with other movie-loving users."
[0876] Through this system and concrete examples, users can experience advanced emotion-based matching and communication.
[0877] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0878] Step 1:
[0879] The user accesses the system login screen and enters their user ID and password.
[0880] Input: User ID, Password
[0881] Output: User credentials
[0882] The user accesses the login screen using a client terminal and enters the necessary authentication information, which is received by the server.
[0883] Step 2:
[0884] The server receives the entered authentication information and compares it with a database to authenticate the user.
[0885] Input: User credentials
[0886] Output: Authentication result (success / failure)
[0887] The server uses SQL queries to match the authentication information with records in a database and generates an authentication result.
[0888] Step 3:
[0889] If the server is successful in authenticating the user, it obtains the user's past search history and usage history.
[0890] Input: Authentication result (success)
[0891] Output: Search history, usage history
[0892] The server executes queries to retrieve past search and usage history from the user's database records.
[0893] Step 4:
[0894] The server inputs the acquired data into a machine learning algorithm to analyze the user's preferences and emotions.
[0895] Input: Search history, usage history
[0896] Output: Preference patterns, emotion data
[0897] The server analyzes the data using TensorFlow and PyTorch to extract user preference patterns and emotional data.
[0898] Step 5:
[0899] The server uses an emotion engine to analyze the user's emotions and integrates this data.
[0900] Input: Search history, usage history, preference patterns
[0901] Output: Integrated data (preferences + emotions)
[0902] The server uses IBM Watson and Azure Emotion APIs to analyze emotional data and integrate it with user preference data.
[0903] Step 6:
[0904] The server scores the matching candidates based on the analysis results and displays them on the user's device in a list in order of highest score.
[0905] Input: Integrated data
[0906] Output: A list of possible matches
[0907] The server uses a scoring algorithm to rank the potential matches and sends the list to the client terminal.
[0908] Step 7:
[0909] The user selects the person of interest from the displayed match candidates and starts chatting with that person.
[0910] Input: Match candidate list
[0911] Output: Selected candidates
[0912] The user operates the interface of the client terminal to select matching candidates of interest.
[0913] Step 8:
[0914] The server creates a chat session and sends a chat request to the selected person.
[0915] Input: Selected candidate
[0916] Output: Chat session
[0917] The server initiates the chat session and sends a chat request to the selected other user.
[0918] Step 9:
[0919] When the other user accepts the chat request, the chat screen will appear on the device.
[0920] Input: Chat request
[0921] Output: Chat screen
[0922] The other user accepts the chat request on the client terminal, and the chat screen is displayed.
[0923] Step 10:
[0924] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content.
[0925] Input: Chat content
[0926] Output: Emotion-based advice and suggested actions
[0927] The emotion engine analyzes chat messages and suggests advice and responses based on the user's emotions.
[0928] (Application example 2)
[0929] 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."
[0930] Conventional matching systems can analyze users' preferences and present recommended match candidates, but the accuracy of matching and communication that takes into account the user's emotional state and real-time feedback is limited. Furthermore, while the matchmaking mode can confirm the user's intention to marry, it does not reflect the user's emotional state, making it difficult to fully meet the user's needs. Therefore, there is a need for an advanced matching and communication system that takes into account not only the user's preferences but also their emotional state.
[0931] 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.
[0932] In this invention, the server includes means for a user to input authentication information, means for the server to verify the authentication information and acquire the user's past search history and usage history, means for the server to analyze the acquired data and generate match candidates based on the user's preferences, means for analyzing the user's emotions in real time using an emotion engine, means for the server to display the generated match candidates on a user terminal, means for the user to select a match candidate of interest from the displayed match candidates and start a chat with the candidate, and means for suggesting advice and responses during the chat based on the user's emotions. This enables highly accurate analysis of user preferences and emotions, and enables matching and effective communication based on the analysis.
[0933] "Authentication information" refers to the information a user enters to log in to a system, and typically includes a user ID and password.
[0934] "Server" refers to a computer system that stores, processes, and transmits data.
[0935] "Search History" refers to a record of searches a User has previously conducted on the System.
[0936] "Usage history" refers to a record of a user's actions and operations when using the system.
[0937] "Preferences" refer to the things and product trends that a user particularly likes.
[0938] "Matching candidates" refer to people the system recommends based on an analysis of the user's preferences and emotions.
[0939] "Emotion engine" refers to a software or hardware system that recognizes and analyzes a user's emotional state.
[0940] "Real-time" refers to data collection and analysis occurring immediately, without delay.
[0941] "Marriage hunting mode" refers to a special setting in the system for matching with the aim of marriage.
[0942] "Confirming intention to marry" refers to the process in which the server confirms whether the user is willing to marry.
[0943] "Scoring" refers to the process of evaluating and prioritizing potential matches based on specific criteria.
[0944] "Chat" refers to a means of interaction that allows users to exchange messages in real time.
[0945] "Advice" refers to advice or suggestions provided by the system based on the user's emotions and behavior.
[0946] As an embodiment of this invention, we will first explain the system program, which is an important element. The server verifies the authentication information entered by the user and acquires the user's past search history and usage history. The server also analyzes this data and generates matching candidates based on the user's preferences. It then uses an emotion engine to analyze the user's emotions in real time and reflects this in the matching candidates.
[0947] The generated matching candidates are then displayed on the user's device, and the user can select a partner they are interested in from the displayed candidates and start chatting. Even during the chat, the emotion engine recognizes the user's emotions in real time and suggests advice and responses based on their emotions.
[0948] Furthermore, in the matchmaking mode, the server checks whether the user has intentions to get married and displays them as match candidates with priority. In this case, the emotion engine is also used to support the confirmation of intentions to get married.
[0949] The main hardware and software used are user devices (such as smartphones and head-mounted displays), servers, emotion engines, and machine learning algorithms (e.g., logistic regression), which enable real-time data processing and advanced analysis.
[0950] For example, if a user has watched a lot of "dramas" in the past and is currently feeling "tired" as a result of the emotion engine's analysis, the server will recommend relaxing "comedy movies" or "soothing music." When the user then selects someone they are interested in and starts chatting, the emotion engine will analyze their emotions in real time and promote communication based on that.
[0951] Here are some examples of specific prompts to implement this system:
[0952] "Please obtain user data: User ID: sample_user_id Past viewing history: 1. Movies: 'Drama' (view count: 5) 2. Movies: 'Action' (view count: 2) Current emotion: 'Tired' Based on this data, please generate a code that will recommend the most suitable content for that user."
[0953] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0954] Step 1:
[0955] The user enters their authentication information.
[0956] Input: User ID, Password
[0957] Output: Credentials
[0958] Specific operation: The user accesses the system's login screen and enters the user ID and password.
[0959] Step 2:
[0960] The server verifies the authentication information and retrieves the user's past search history and usage history.
[0961] Input: Authentication information (user ID, password)
[0962] Output: User search history, usage history
[0963] Specific operation: The server receives the entered authentication information and authenticates the user by comparing it with the database. If authentication is successful, the server retrieves the user's past search history and usage history from the database.
[0964] Step 3:
[0965] The server analyzes the acquired data and generates matching candidates based on the user's preferences.
[0966] Input: User search history, usage history
[0967] Output: User preference patterns, matching candidates
[0968] How it works: The server analyzes the acquired data using machine learning algorithms (e.g., logistic regression) to extract user preference patterns, and then lists candidates with matching preferences from the database.
[0969] Step 4:
[0970] Analyze user emotions in real time using an emotion engine.
[0971] Input: User's current behavior data, voice, and facial expression data
[0972] Output: User sentiment analysis results
[0973] Specific operation: The server uses the EmotionEngine to analyze the user's current behavioral data (e.g., voice and facial expressions) in real time and classify their current emotional state.
[0974] Step 5:
[0975] The server displays the generated match candidates on the user terminal.
[0976] Input: Matching candidate list, sentiment analysis results
[0977] Output: Candidate list displayed on the user's terminal
[0978] Specific operation: Based on the results of the emotion analysis, the server modifies the scoring of the matching candidate list and displays it on the user's device in the optimal order.
[0979] Step 6:
[0980] The user selects a candidate that interests them from the displayed matching candidates and starts chatting with that person.
[0981] Input: Match candidate list, user selection
[0982] Output: Chat session started
[0983] Specific operation: The user selects a match candidate from the list displayed on the device and clicks the "Start Chat" button. The server then creates a chat session and sends a chat request to the selected match candidate.
[0984] Step 7:
[0985] Suggest advice and responses during chat based on the user's emotions.
[0986] Input: Real-time sentiment analysis results, chat content
[0987] Output: Advice and suggestions
[0988] Specific behavior: The server uses the emotion engine to analyze the user's emotions in real time during the chat and provides advice and responses according to changes in emotions, such as specific questions and communication tips related to the content the other person is interested in.
[0989] Step 8:
[0990] In the matchmaking mode, the server confirms the user's intention to marry and displays match candidates on a priority basis.
[0991] Input: Matchmaking mode settings, marriage intention confirmation result
[0992] Output: A prioritized list of possible matches
[0993] Specific operation: When the user turns on the matchmaking mode, the server displays a prompt to confirm whether or not the user is interested in marriage. Based on the user's response, if the user is interested in marriage, the server prioritizes this and re-scores the list of match candidates and displays it on the user's device.
[0994] 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.
[0995] 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.
[0996] 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.
[0997] [Third embodiment]
[0998] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0999] 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.
[1000] 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).
[1001] 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.
[1002] 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.
[1003] 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).
[1004] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[1005] 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.
[1006] 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.
[1007] 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.
[1008] 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.
[1009] 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."
[1010] The matching system according to the present invention provides advanced matching simply by the user logging in. Details of the program processing of the system and specific examples based on it will be described below.
[1011] Overall system flow
[1012] 1. User login
[1013] The user accesses the system's login screen and enters their user ID and password.
[1014] The server receives the entered authentication information and collates it with a database to authenticate the user. If authentication is successful, the server obtains the user's past search history and usage history.
[1015] 2. Data collection and analysis
[1016] The server analyzes the acquired search history and usage history, for example, analyzing what keywords were searched and which profiles were viewed.
[1017] The server uses machine learning algorithms to analyze user preferences and patterns and compile a list of potential matches based on the user's interests.
[1018] 3. Display of match candidates
[1019] The server scores the matching candidates based on the analysis results, lists them in descending order of score, and sends this to the device.
[1020] The device displays a list of recommended users' profiles, and the user can select the person they are interested in from the displayed candidates.
[1021] 4. Start chatting
[1022] The user selects the person they are interested in from the matching candidates and clicks the "Start Chat" button.
[1023] The server creates a chat session and sends a chat request to the selected party.
[1024] When the other user accepts the chat request, a chat screen will appear on the device and you will be able to exchange messages in real time.
[1025] 5. Matchmaking support function
[1026] The user selects the matchmaking mode on the setting screen.
[1027] The server confirms the selection of the matchmaking mode and provides a function to confirm whether the user who desires to find a match has an intention to get married.
[1028] The server preferentially adds users who are willing to marry to a matching candidate list, and displays this on the terminal.
[1029] Specific examples
[1030] An example of when user A logs in to the system is shown below.
[1031] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[1032] 2. The server receives User A's authentication information, compares it with the database, and authentication is successful.
[1033] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[1034] 4. The server analyzes this history using a machine learning algorithm and extracts a pattern that indicates that User A is looking for people who like movies.
[1035] 5. The server lists and scores other movie-loving users B, C, and D from the database.
[1036] 6. The server generates a list of candidates in descending order of score and sends it to the terminal.
[1037] 7. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[1038] 8. The server creates a chat session and sends a chat request to User B.
[1039] 9. User B approves the request and the chat screen appears on the device.
[1040] 10. User A and User B exchange messages in real time.
[1041] In this way, User A can easily match with the most suitable partner based on their past behavioral history and start a conversation in real time without having to register their detailed requirements. Furthermore, by turning on the matchmaking mode, they can be efficiently matched with people who are interested in marriage.
[1042] The processing flow will be explained below.
[1043] Step 1:
[1044] The user enters their user ID and password on the login screen and clicks the "Login" button.
[1045] Step 2:
[1046] The server receives the entered user ID and password and authenticates them by checking them against the database.
[1047] Step 3:
[1048] If the server is successful in authentication, it retrieves the user's past search history and usage history from the database.
[1049] Step 4:
[1050] The search history and usage history acquired by the server is input into a machine learning algorithm to analyze the user's preferences.
[1051] Step 5:
[1052] Based on the analyzed user preferences, the server generates a list of suitable matching candidate users from the database and scores them.
[1053] Step 6:
[1054] The server sorts the list of matching candidates in order of score and sends it to the user terminal.
[1055] Step 7:
[1056] A list of potential matches for the user is displayed on the device, and the user can select the person they are interested in.
[1057] Step 8:
[1058] The user clicks the "Start Chat" button for the selected person.
[1059] Step 9:
[1060] The server creates a chat session and sends a chat request to the selected other user.
[1061] Step 10:
[1062] When the other user accepts the chat request, the chat screen will appear on the device.
[1063] Step 11:
[1064] A user and another user exchange messages in real time.
[1065] Step 12:
[1066] The user selects the matchmaking mode on the setting screen.
[1067] Step 13:
[1068] The server confirms the selection of the matchmaking mode and asks the user who selected the matchmaking mode whether or not he or she has an intention to get married.
[1069] Step 14:
[1070] The server gives priority to users who are willing to get married and adds them to a matching candidate list, which is displayed on the terminal.
[1071] Step 15:
[1072] The profiles of users who are prioritized on the device are displayed in a list format, and the user can select the person they are interested in.
[1073] Step 16:
[1074] The user starts chatting with the person selected for the purpose of finding a partner.
[1075] Example 1
[1076] 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."
[1077] Conventional matching systems have the problem that users must set detailed conditions, which is time-consuming. Also, finding suitable match candidates requires a lot of manual work, which is inefficient. Furthermore, the matching function with users who are interested in marriage is limited, which is inconvenient for users looking for a marriage partner.
[1078] 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.
[1079] In this invention, the server includes: a means for a user to input authentication information; a means for the server to verify the authentication information and acquire the user's past behavioral history and usage history; a means for the server to analyze the acquired data and generate match candidates based on the user's preferences using an advanced analytical algorithm; a means for the server to display the generated match candidates on the user's operating terminal; and a means for the user to select a match candidate of interest from the displayed match candidates and start real-time communication with the match candidate. This allows the user to efficiently present optimal match candidates based on their past behavioral history and engage in real-time dialogue without having to set detailed conditions. Furthermore, by including a means for selecting a match-hunting mode and a means for the server to confirm whether a user who selected the match-hunting mode intends to marry and prioritize users who have such intentions as match candidates, it is possible to provide matching that is suitable for users who are looking for marriage.
[1080] "Authentication information" is information required to verify a user's identity, and typically includes a username and password.
[1081] "Behavioral history" refers to records of searches, clicks, views, etc. that a user performs on the system.
[1082] "Usage history" refers to a record of a series of operations and usage patterns when a user uses a system.
[1083] "Analysis algorithms" refer to mathematical techniques and machine learning models used to analyze acquired data and extract specific patterns and preferences.
[1084] "Matching candidates" refer to candidates of other users who are predicted to be compatible with the user, selected based on the user's preferences and behavioral history.
[1085] An "operation terminal" refers to hardware or devices that allow a user to access and operate the system.
[1086] "Real-time communication" refers to a communication method in which data is sent and received instantaneously via the Internet.
[1087] The "marriage hunting mode" refers to a special setting mode that prioritizes matching users who are interested in getting married.
[1088] The matching system according to the present invention provides advanced matching simply by the user logging in. Details of the program processing of the system and specific examples based on it will be described below.
[1089] Hardware and software used
[1090] First, this system uses the following hardware and software:
[1091] Hardware:
[1092] Database Server
[1093] Web Server
[1094] User device (smartphone, PC, etc.)
[1095] software:
[1096] Database management system (MySQL)
[1097] Authentication API (OAuth 2.0)
[1098] Machine learning platform (TensorFlow)
[1099] Data analysis tools (Python, Pandas)
[1100] Front-end frameworks (React, Angular)
[1101] Communication protocol (HTTP / HTTPS)
[1102] Chat server (WebSocket)
[1103] Real-time communication framework (Socket.IO)
[1104] Config Management
[1105] System Program Processing
[1106] The specific program processing is described below.
[1107] The user accesses the login screen and enters their user ID and password. The server receives the entered authentication information and authenticates the user by comparing it with the database. If authentication is successful, the server retrieves the user's past behavioral history and usage history from the database.
[1108] The server analyzes the acquired search history and usage history. It uses Python's Pandas library to create a history data frame. It then uses machine learning algorithms (using TensorFlow and Scikit-Learn) to extract user preferences and patterns and create a list of suitable matching candidates.
[1109] The server scores the candidates based on the analysis results and lists them in descending order. This scoring takes into account factors such as common interests and profile similarities. The server then sends the list of candidates to the device, where a user interface using React or Angular is displayed.
[1110] When a user selects a match from the candidates and clicks the "Start Chat" button, the server creates a chat session and sends a chat request to the selected match. If the chat request is accepted, a chat screen will appear on the user's device, enabling real-time communication.
[1111] When a user selects the matchmaking mode, the server confirms the selection and activates the mode. In this state, the server displays users who are willing to get married as match candidates with priority.
[1112] Specific examples
[1113] For example, when user A logs in to the system, the process is as follows:
[1114] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[1115] 2. The server receives User A's authentication information, checks it against the database, and authentication is successful.
[1116] 3. The server obtains User A's past search history and usage history (for example, search history for "movie lover").
[1117] 4. The server analyzes these histories using a machine learning algorithm and extracts patterns that indicate that User A likes movies.
[1118] 5. The server lists and scores other movie-loving users B, C, and D from the database.
[1119] 6. The server generates a list of candidates in descending order of score and sends it to the terminal.
[1120] 7. The profiles of users B, C, and D are displayed in a list on the device, and user A selects user B and clicks the "Start Chat" button.
[1121] 8. The server creates a chat session and sends a chat request to User B.
[1122] 9. User B approves the request and the chat screen appears on the device.
[1123] 10. User A and User B exchange messages in real time.
[1124] This system allows users to easily find the perfect match based on their preferences and start communicating in real time. The matchmaking mode also allows users to efficiently match with potential partners who are interested in marriage.
[1125] Prompt Sentence Examples
[1126] "Please generate a program that lists and scores the best matches based on the past search history of user A, who wants to match with people who like movies."
[1127] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1128] Step 1:
[1129] The user enters the user ID and password on the login screen and clicks the "Login" button. The user ID and password are sent as input.
[1130] Specific behavior:
[1131] The user accesses the login page in a browser, enters the user ID and password in the login form, and clicks the "Login" button.
[1132] Step 2:
[1133] The server receives the entered authentication information and compares it with the database to authenticate the user. If authentication is successful, past behavioral and usage history is retrieved from the database. The retrieved data is search history and click history based on the user ID.
[1134] Specific behavior:
[1135] The server authenticates the user ID and password received at the POST / api / login endpoint using OAuth 2.0, and executes an SQL query to retrieve past search history and behavioral history from the database based on the user ID.
[1136] Step 3:
[1137] The server analyzes the data it acquires and extracts user preferences and patterns. Search history and behavioral history are given as input, and the analysis results are obtained as output. The analysis is performed using Python's Pandas library and a machine learning algorithm (TensorFlow).
[1138] Specific behavior:
[1139] The server converts the search history and behavioral history obtained into a data frame, and performs data manipulation using Python and Pandas. Furthermore, TensorFlow is used to apply a machine learning model to analyze and cluster user preferences.
[1140] Step 4:
[1141] The server scores the match candidates based on the analysis results and lists them in descending order. It takes the analysis results as input and obtains a scored list of match candidates as output. Scoring takes into account factors such as common interests and profile similarity.
[1142] Specific behavior:
[1143] The server uses a personalization algorithm to convert the analysis results into a matching score, generates a list of match candidates based on the user's preferences, and assigns a score to each.
[1144] Step 5:
[1145] The server sends the scored match candidate list to the terminal, taking the match candidate list as input and generating data for displaying the list as output.
[1146] Specific behavior:
[1147] The server sends the list of matching candidates to the API endpoint for displaying the list (e.g., GET / api / matchCandidates), and the front-end displays the received data in list format using a React component.
[1148] Step 6:
[1149] The user selects a candidate they are interested in from the displayed matching candidates and clicks the "Start Chat" button. The user sends the user ID of the selected candidate as input.
[1150] Specific behavior:
[1151] When the user clicks the "Start Chat" button, JavaScript calls the POST / api / startChat endpoint and sends the user ID of the selected candidate.
[1152] Step 7:
[1153] The server creates a chat session and sends a chat request to the selected person. It receives a chat start request as input, generates a chat session ID as output, and sends the request to the person.
[1154] Specific behavior:
[1155] The server creates a chat session in the database and sends a notification to the other user via WebSocket.
[1156] Step 8:
[1157] When the other user accepts the chat request, the chat screen is displayed on the device. The system receives the acceptance request as input and updates the chat screen display as output.
[1158] Specific behavior:
[1159] When the other user clicks the accept button, a request is sent to the server, and the server updates the chat session, notifying both devices that they are ready for real-time communication.
[1160] Step 9:
[1161] User A and the other user exchange messages in real time. Chat messages are sent and received intermittently as input, and the conversation content is displayed as output.
[1162] Specific behavior:
[1163] User A and the other user use a real-time communication framework (Socket.IO) to send and receive messages via WebSocket, and new messages are displayed immediately on the chat screen.
[1164] Step 10:
[1165] When a user selects the matchmaking mode, the server confirms this selection, checks whether the user who is looking for a marriage partner has an intention to marry, and displays users who have such intention preferentially. The selection of the matchmaking mode is transmitted as input, and a list of matchmaking candidates for the purpose of matchmaking is generated as output.
[1166] Specific behavior:
[1167] The user selects "Marriage Hunting Mode" on the settings screen and submits the form. The server receives the POST / api / settings, records the marriage hunting mode setting in the database, changes the priority of the users who are looking for marriage, and reflects this in the matching algorithm.
[1168] Through the above processing steps, users can efficiently find the best match candidates and communicate with them in real time. In addition, by using the matchmaking mode, users can smoothly match with people who are interested in marriage.
[1169] (Application example 1)
[1170] 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."
[1171] On conventional online shopping sites, users had to spend a lot of time and effort to find individual products, making it difficult to efficiently find products that matched their preferences.In addition, they were unable to effectively combine real-time reviews from other users and chat functions to increase purchasing motivation.
[1172] 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.
[1173] In this invention, the server includes: means for a user to input authentication information; means for the server to verify the authentication information and acquire the user's past purchase history and browsing history; means for the server to analyze the acquired data and generate recommendation candidates based on the user's preferences; means for the server to display the generated recommendation candidates on a user terminal; means for the user to select a product of interest from the displayed recommendation candidates and view product information; and means for the server to generate a chat session based on reviews from other users and for users to share product reviews in real time. This enables users to efficiently receive product recommendations based on their past purchase history and browsing history, and to increase their desire to purchase while referring to real-time feedback from other users.
[1174] "Authentication information" refers to the identification information a user uses to log in to a system, typically a user ID and password.
[1175] "Purchase history" is a record of products purchased by a user in the past, and is data indicating the user's consumption behavior.
[1176] "Browsing history" is a record of which pages or products a user has viewed within a website or application.
[1177] "Recommendation candidates" are a list of products and services recommended to the user based on the analyzed data.
[1178] A "user terminal" is a device used by a user to access the system, such as a smartphone or computer.
[1179] A "chat session" is a communication session in which users can exchange messages in real time.
[1180] A "machine learning algorithm" is a computational method for learning from large amounts of data and generating specific patterns and predictions.
[1181] A "generative AI model" is an artificial intelligence system that generates or improves recommendation candidates based on prompts entered by the user.
[1182] A "prompt" is a command or question that a user inputs to a generative AI model.
[1183] The embodiments of the present invention will be specifically described, so that other engineers can practice the invention.
[1184] System Configuration
[1185] The system consists of the following major components:
[1186] Hardware
[1187] Server: Responsible for data collection, analysis, and recommendation generation. For example, a cloud-based server such as Amazon EC2 is used.
[1188] User device: The device through which the user accesses the system and views the recommendations, such as a smartphone, tablet, or PC.
[1189] software
[1190] Flask: A Python web framework that handles communication between the server and the client.
[1191] scikit-learn: A Python library for running machine learning algorithms.
[1192] pandas: A Python library for collecting and preprocessing data.
[1193] Generative AI model: An artificial intelligence system for generating and improving recommendations based on user prompts.
[1194] System Operation
[1195] User authentication and data collection
[1196] 1. When a user logs in to the system, they are authenticated by entering their user ID and password, and the authentication information is sent to the server.
[1197] 2. The server compares the authentication information with the database and, if authentication is successful, retrieves the user's past purchase and browsing history.
[1198] Analyzing data and generating recommendations
[1199] 3. The server preprocesses the acquired purchase history and browsing history using the pandas library and converts it into a format suitable for analysis.
[1200] 4. The server runs a machine learning algorithm using scikit-learn to analyze user preferences.
[1201] 5. Based on the results of the analysis, the system generates and scores recommended products and services that are best suited to the user.
[1202] Display of recommended candidates and real-time chat
[1203] 6. The server sends the generated recommendation candidates to the user terminal and displays them in list form on the user terminal.
[1204] 7. The user selects a product of interest from the displayed recommended candidates and views detailed product information.
[1205] 8. The server generates a chat session based on other users' reviews of the selected product, providing a means for sharing review information in real time.
[1206] Specific examples
[1207] For example, if a user logs in and has frequently purchased "smartphone accessories" in the past, the server will analyze their purchasing history. Based on the results of this analysis, the server will recommend the user the latest smartphone case or a highly rated charging cable. Users can browse these recommended items and check other users' reviews of products they are interested in in real time. This will increase their motivation to purchase and enable them to select the best product.
[1208] An example prompt for a generative AI model is, "Recommend new products to the user based on their past purchases and browsing history. Please create a simple example that includes user authentication, data collection, a machine learning recommendation system, and product recommendation display functionality."
[1209] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1210] Step 1:
[1211] The user opens the system's login screen and enters their user ID and password. The user ID and password are received as input data and sent to the server. The server then collates the received authentication information with a database to authenticate the user. If authentication is successful, the user's past purchase history and browsing history are retrieved from the database.
[1212] Step 2:
[1213] The server uses the pandas library to store the acquired purchase history and browsing history in a data frame and perform preprocessing. For example, it removes duplicate data and fills in missing values. It receives purchase history and browsing history as input data and outputs a preprocessed data frame.
[1214] Step 3:
[1215] The server analyzes the preprocessed data using scikit-learn. Specifically, it analyzes user preferences using clustering algorithms and generates a recommendation model. In this process, it receives the preprocessed data frame as input data and outputs a recommendation model based on the user preferences as the analysis result.
[1216] Step 4:
[1217] The server generates product and service recommendation candidates based on the generated recommendation model. For example, it calculates and scores the user's preference score for each candidate. It receives the recommendation model as input data and outputs a scored list of recommendation candidates.
[1218] Step 5:
[1219] The server sends the scored recommendation candidate list to the user's device, which displays a list of products and services as recommendation candidates.The server receives the recommendation candidate list as input data and generates a list to be displayed on the user's device as output data.
[1220] Step 6:
[1221] The user selects a product or service of interest from the list of recommended candidates and views detailed information. The system receives the list of recommended candidates as input data and displays detailed information about the selected product.
[1222] Step 7:
[1223] The server generates a chat session based on other users' reviews of the selected product. It allows users to share review information in real time and exchange questions and comments about the product with other users. It receives the selected product information as input data, generates a chat session as output data, and displays it on the user's terminal.
[1224] Step 8:
[1225] The server uses the generative AI model to further optimize the recommendation candidate list based on the prompt entered by the user. For example, if the user enters "Please recommend the latest smartphone case," the AI model will add the most suitable smartphone case to the recommendation candidate list. It receives the prompt as input data and outputs an optimized recommendation candidate list.
[1226] 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.
[1227] The matching system based on this invention provides advanced matching simply by the user logging in, and by combining it with an emotion engine, it recognizes the user's emotions and achieves more accurate matching and communication. Below, we will explain the details of the system's program processing and specific examples based on it.
[1228] Overall system flow
[1229] 1. User login
[1230] The user accesses the system's login screen and enters their user ID and password.
[1231] The server receives the entered authentication information and collates it with a database to authenticate the user. If authentication is successful, the server obtains the user's past search history and usage history.
[1232] 2. Data collection and analysis
[1233] The server inputs the acquired search history and usage history into a machine learning algorithm to analyze the user's preferences.
[1234] The server also analyzes the user's emotions using an emotion engine and integrates this data to develop a more detailed understanding of the user's preferences.
[1235] 3. Display of match candidates
[1236] The server scores the matching candidates based on the analysis results, lists them in descending order of score, and sends this to the device.
[1237] The device displays a list of recommended users' profiles, and the user can select the person they are interested in from the displayed candidates.
[1238] 4. Start chatting
[1239] The user selects the person they are interested in from the matching candidates and clicks the "Start Chat" button.
[1240] The server creates a chat session and sends a chat request to the selected party.
[1241] When the other user accepts the chat request, the chat screen will appear on the device.
[1242] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content. It also suggests advice and responses according to changes in emotions.
[1243] 5. Matchmaking support function
[1244] The user selects the matchmaking mode on the setting screen.
[1245] The server confirms the selection of the matchmaking mode and provides a function to confirm whether the user who selected the wedding mode intends to get married.The server also analyzes the user's emotions using an emotion engine and takes the emotion analysis result into consideration when confirming the intention to get married.
[1246] The server preferentially adds users who are willing to marry to a matching candidate list, and displays this on the terminal.
[1247] Specific examples
[1248] An example of when user A logs in to the system is shown below.
[1249] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[1250] 2. The server receives User A's authentication information, compares it with the database, and authentication is successful.
[1251] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[1252] 4. The server analyzes this history using a machine learning algorithm and extracts a pattern that indicates that User A is looking for people who like movies.
[1253] 5. The server uses the emotion engine to analyze the emotions of User A's past behavior, for example, analyzing the positive emotions during movie-related searches.
[1254] 6. The server lists and scores other movie-loving users B, C, and D from the database.
[1255] 7. The server generates a list of candidates in descending order of score and sends it to the terminal.
[1256] 8. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[1257] 9. The server creates a chat session and sends a chat request to User B.
[1258] 10. User B approves the request and the chat screen appears on the device.
[1259] 11. The emotion engine recognizes the emotions of users A and B during chat in real time and suggests advice and responses based on their emotions.
[1260] 12. User A and User B exchange messages in real time, promoting emotion-based communication.
[1261] In this way, User A can easily match with the most suitable partner based on their past behavioral history and emotional analysis, and begin a conversation in real time, without having to register their detailed requirements. Furthermore, by turning on the matchmaking mode, efficient communication based on emotional analysis with potential marriage partners becomes possible.
[1262] The processing flow will be explained below.
[1263] Step 1:
[1264] The user enters their user ID and password on the login screen and clicks the "Login" button.
[1265] Step 2:
[1266] The server receives the entered user ID and password and authenticates them by checking them against the database.
[1267] Step 3:
[1268] If the server is successful in authentication, it retrieves the user's past search history and usage history from the database.
[1269] Step 4:
[1270] The search history and usage history acquired by the server is input into a machine learning algorithm to analyze the user's preferences.
[1271] Step 5:
[1272] The server uses an emotion engine to analyze the emotions of the user's past actions and adds them to the preference analysis results.
[1273] Step 6:
[1274] The server generates a list of suitable match candidate users from the database based on the analyzed user preferences and emotions, and scores them.
[1275] Step 7:
[1276] The server sorts the list of matching candidates in order of score and sends it to the user terminal.
[1277] Step 8:
[1278] A list of potential matches for the user is displayed on the device, and the user can select the person they are interested in.
[1279] Step 9:
[1280] The user clicks the "Start Chat" button for the selected person.
[1281] Step 10:
[1282] The server creates a chat session and sends a chat request to the selected other user.
[1283] Step 11:
[1284] When the other user accepts the chat request, the chat screen will appear on the device.
[1285] Step 12:
[1286] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content. For example, if the user is nervous, a message encouraging them to relax will be displayed.
[1287] Step 13:
[1288] The emotion engine suggests advice and responses based on the user's emotional changes. For example, if the user's emotions change suddenly, it suggests "Let's talk calmly."
[1289] Step 14:
[1290] The user selects the matchmaking mode on the setting screen.
[1291] Step 15:
[1292] The server confirms the selection of the matchmaking mode and asks the user who selected the matchmaking mode whether or not he or she has an intention to get married.
[1293] Step 16:
[1294] The server uses an emotion engine to analyze the user's emotions and takes the emotion analysis result into consideration when confirming the intention to marry.
[1295] Step 17:
[1296] The server gives priority to users who are willing to get married and adds them to a matching candidate list, which is then sent to the user terminal.
[1297] Step 18:
[1298] The profiles of users who are prioritized on the device are displayed in a list format, and the user can select the person they are interested in.
[1299] Step 19:
[1300] The user starts chatting with the person selected for the purpose of finding a partner.
[1301] Step 20:
[1302] The emotion engine recognizes users' emotions in real time during chats while searching for a partner, and suggests advice and responses to facilitate smooth communication.
[1303] Example 2
[1304] 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."
[1305] Conventional matching systems present match candidates based only on the user's past behavioral history and preferences, making it difficult to achieve highly accurate matching that takes into account the user's current emotions and psychological state. It was also difficult to accurately grasp the user's intentions to marry and provide appropriate match candidates. This resulted in low user satisfaction and reduced motivation to use the system.
[1306] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1307] In this invention, the server includes: means for a user to input authentication information; means for the server to verify the authentication information and acquire the user's past behavioral history and usage history; means for the server to analyze the acquired data using a machine learning algorithm and analyze the user's preferences and emotions; means for the server to analyze the user's emotions using an emotion engine and integrate it with the preference data; means for the server to score the match candidates generated based on the analysis results and display them on the user terminal in a list in descending order of score; means for the user to select a partner of interest from the displayed match candidates and start chatting with that partner; and means for the emotion engine to recognize the user's emotions in real time during chat and reflect them in the chat content. This enables highly accurate matching that takes into account the user's emotions and intentions to marry, thereby increasing user satisfaction and increasing their willingness to use the service.
[1308] "Authentication Information" refers to the identification information and confidential information used by a user to log in to a system, including, for example, a user ID and password.
[1309] "Machine learning algorithms" refer to mathematical methods and models that analyze data and find patterns and relationships, enabling predictions and classifications.
[1310] An "emotion engine" refers to software or algorithms that analyze and identify emotions from a user's text, voice, etc., allowing for real-time recognition of the user's emotional state.
[1311] "Scoring" refers to the process of assigning scores to items according to specific criteria or indicators based on the analysis results, which allows for a clear prioritization of items.
[1312] "Matching candidates" refer to other users selected based on the user's preferences and feelings. This creates a list of people who are likely to be compatible with each other.
[1313] "Chat session" refers to a series of processes and connections for real-time communication between users via text messages, voice, video, etc.
[1314] "Marriage hunting mode" refers to a special setting for providing matching for the purpose of marriage. By selecting this mode, users who are interested in marriage will be given priority in matching.
[1315] "Marriage intention confirmation" refers to the process in which the server confirms whether the user intends to get married, thereby identifying users who intend to get married.
[1316] "Preference data" refers to information indicating a user's preferences and interests obtained based on the user's past behavioral history and usage history. This information is used to generate matching candidates that are suitable for the user.
[1317] "Terminal" refers to an electronic device that allows a user to access the system and operate the interface. Specifically, this includes personal computers and smartphones.
[1318] The matching system based on this invention provides advanced matching simply by the user logging in, and by combining it with an emotion engine, it recognizes the user's emotions and achieves more accurate matching and communication. Below, we will explain the details of the system's program processing and specific examples based on it.
[1319] System Configuration
[1320] This system uses the following major hardware and software:
[1321] Hardware:
[1322] server
[1323] Client terminal (PC, smartphone)
[1324] software:
[1325] Database (MySQL, PostgreSQL)
[1326] Machine learning libraries (TensorFlow, PyTorch)
[1327] Emotion engine (IBM Watson, Azure Emotion API)
[1328] Program Processing Details
[1329] 1. The user accesses the system login screen and enters their user ID and password.
[1330] The user accesses the login screen using the client terminal.
[1331] The server receives the entered authentication information and compares it with a database to authenticate the user.
[1332] 2. If authentication is successful, the server retrieves the user's past search history and usage history.
[1333] The server retrieves the behavior history of the successfully authenticated user from the database.
[1334] 3. The server inputs the acquired data into a machine learning algorithm to analyze the user's preferences and emotions.
[1335] The server uses TensorFlow and PyTorch to analyze users' search and usage histories and extract preference patterns.
[1336] 4. Use the emotion engine to analyze user emotions and integrate this data.
[1337] The server uses IBM Watson and Azure Emotion APIs to analyze the user's emotional state in real time.
[1338] 5. The server scores the matching candidates based on the analysis results and displays them on the user's device in a list in descending order of score.
[1339] Based on the analysis results, the server scores the best matching candidates and sends a list of candidates to the client terminal.
[1340] 6. The user selects the person they are interested in from the displayed match candidates and starts chatting with that person.
[1341] When the user clicks the "Start Chat" button, the server creates a chat session and sends a chat request to the selected person.
[1342] 7. The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content.
[1343] The emotion engine analyzes messages during chat and provides advice and responses based on the user's emotions in real time.
[1344] Specific examples
[1345] Below is an example of how User A logs into the system, finds a suitable match, and starts chatting.
[1346] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[1347] 2. The server receives User A's authentication information, checks it against the database, and successfully authenticates him.
[1348] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[1349] 4. The server analyzes this history using a machine learning algorithm and identifies a pattern that User A is looking for people who like movies.
[1350] 5. The server uses the emotion engine to analyze the emotions of User A's past behavior, for example, analyzing the positive emotions during movie-related searches.
[1351] 6. The server lists and scores other movie-loving users B, C, and D from the database.
[1352] 7. The server generates a list of candidates in descending order of score and sends it to the terminal.
[1353] 8. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[1354] 9. The server creates a chat session and sends a chat request to User B.
[1355] 10. User B approves the request and the chat screen appears on the device.
[1356] 11. The emotion engine recognizes the emotions of users A and B during chat in real time and provides emotion-based advice and responses.
[1357] 12. User A and User B exchange messages in real time, promoting emotion-based communication.
[1358] Prompt Sentence Examples
[1359] "Please generate a scenario in which User A accesses the login screen and attempts to log in."
[1360] "Describe a scenario where User A's past search history is related to movies."
[1361] "Please explain the process by which user A matches with other movie-loving users."
[1362] Through this system and concrete examples, users can experience advanced emotion-based matching and communication.
[1363] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1364] Step 1:
[1365] The user accesses the system login screen and enters their user ID and password.
[1366] Input: User ID, Password
[1367] Output: User credentials
[1368] The user accesses the login screen using a client terminal and enters the necessary authentication information, which is received by the server.
[1369] Step 2:
[1370] The server receives the entered authentication information and compares it with a database to authenticate the user.
[1371] Input: User credentials
[1372] Output: Authentication result (success / failure)
[1373] The server uses SQL queries to match the authentication information with records in a database and generates an authentication result.
[1374] Step 3:
[1375] If the server is successful in authenticating the user, it obtains the user's past search history and usage history.
[1376] Input: Authentication result (success)
[1377] Output: Search history, usage history
[1378] The server executes queries to retrieve past search and usage history from the user's database records.
[1379] Step 4:
[1380] The server inputs the acquired data into a machine learning algorithm to analyze the user's preferences and emotions.
[1381] Input: Search history, usage history
[1382] Output: Preference patterns, emotion data
[1383] The server analyzes the data using TensorFlow and PyTorch to extract user preference patterns and emotional data.
[1384] Step 5:
[1385] The server uses an emotion engine to analyze the user's emotions and integrates this data.
[1386] Input: Search history, usage history, preference patterns
[1387] Output: Integrated data (preferences + emotions)
[1388] The server uses IBM Watson and Azure Emotion APIs to analyze emotional data and integrate it with user preference data.
[1389] Step 6:
[1390] The server scores the matching candidates based on the analysis results and displays them on the user's device in a list in order of highest score.
[1391] Input: Integrated data
[1392] Output: A list of possible matches
[1393] The server uses a scoring algorithm to rank the potential matches and sends the list to the client terminal.
[1394] Step 7:
[1395] The user selects the person of interest from the displayed match candidates and starts chatting with that person.
[1396] Input: Match candidate list
[1397] Output: Selected candidates
[1398] The user operates the interface of the client terminal to select matching candidates of interest.
[1399] Step 8:
[1400] The server creates a chat session and sends a chat request to the selected person.
[1401] Input: Selected candidate
[1402] Output: Chat session
[1403] The server initiates the chat session and sends a chat request to the selected other user.
[1404] Step 9:
[1405] When the other user accepts the chat request, the chat screen will appear on the device.
[1406] Input: Chat request
[1407] Output: Chat screen
[1408] The other user accepts the chat request on the client terminal, and the chat screen is displayed.
[1409] Step 10:
[1410] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content.
[1411] Input: Chat content
[1412] Output: Emotion-based advice and suggested actions
[1413] The emotion engine analyzes chat messages and suggests advice and responses based on the user's emotions.
[1414] (Application example 2)
[1415] 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."
[1416] Conventional matching systems can analyze users' preferences and present recommended match candidates, but the accuracy of matching and communication that takes into account the user's emotional state and real-time feedback is limited. Furthermore, while the matchmaking mode can confirm the user's intention to marry, it does not reflect the user's emotional state, making it difficult to fully meet the user's needs. Therefore, there is a need for an advanced matching and communication system that takes into account not only the user's preferences but also their emotional state.
[1417] 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.
[1418] In this invention, the server includes means for a user to input authentication information, means for the server to verify the authentication information and acquire the user's past search history and usage history, means for the server to analyze the acquired data and generate match candidates based on the user's preferences, means for analyzing the user's emotions in real time using an emotion engine, means for the server to display the generated match candidates on a user terminal, means for the user to select a match candidate of interest from the displayed match candidates and start a chat with the candidate, and means for suggesting advice and responses during the chat based on the user's emotions. This enables highly accurate analysis of user preferences and emotions, and enables matching and effective communication based on the analysis.
[1419] "Authentication information" refers to the information a user enters to log in to a system, and typically includes a user ID and password.
[1420] "Server" refers to a computer system that stores, processes, and transmits data.
[1421] "Search History" refers to a record of searches a User has previously conducted on the System.
[1422] "Usage history" refers to a record of a user's actions and operations when using the system.
[1423] "Preferences" refer to the things and product trends that a user particularly likes.
[1424] "Matching candidates" refer to people the system recommends based on an analysis of the user's preferences and emotions.
[1425] "Emotion engine" refers to a software or hardware system that recognizes and analyzes a user's emotional state.
[1426] "Real-time" refers to data collection and analysis occurring immediately, without delay.
[1427] "Marriage hunting mode" refers to a special setting in the system for matching with the aim of marriage.
[1428] "Confirming intention to marry" refers to the process in which the server confirms whether the user is willing to marry.
[1429] "Scoring" refers to the process of evaluating and prioritizing potential matches based on specific criteria.
[1430] "Chat" refers to a means of interaction that allows users to exchange messages in real time.
[1431] "Advice" refers to advice or suggestions provided by the system based on the user's emotions and behavior.
[1432] As an embodiment of this invention, we will first explain the system program, which is an important element. The server verifies the authentication information entered by the user and acquires the user's past search history and usage history. The server also analyzes this data and generates matching candidates based on the user's preferences. It then uses an emotion engine to analyze the user's emotions in real time and reflects this in the matching candidates.
[1433] The generated matching candidates are then displayed on the user's device, and the user can select a partner they are interested in from the displayed candidates and start chatting. Even during the chat, the emotion engine recognizes the user's emotions in real time and suggests advice and responses based on their emotions.
[1434] Furthermore, in the matchmaking mode, the server checks whether the user has intentions to get married and displays them as match candidates with priority. In this case, the emotion engine is also used to support the confirmation of intentions to get married.
[1435] The main hardware and software used are user devices (such as smartphones and head-mounted displays), servers, emotion engines, and machine learning algorithms (e.g., logistic regression), which enable real-time data processing and advanced analysis.
[1436] For example, if a user has watched a lot of "dramas" in the past and is currently feeling "tired" as a result of the emotion engine's analysis, the server will recommend relaxing "comedy movies" or "soothing music." When the user then selects someone they are interested in and starts chatting, the emotion engine will analyze their emotions in real time and promote communication based on that.
[1437] Here are some examples of specific prompts to implement this system:
[1438] "Please obtain user data: User ID: sample_user_id Past viewing history: 1. Movies: 'Drama' (view count: 5) 2. Movies: 'Action' (view count: 2) Current emotion: 'Tired' Based on this data, please generate a code that will recommend the most suitable content for that user."
[1439] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1440] Step 1:
[1441] The user enters their authentication information.
[1442] Input: User ID, Password
[1443] Output: Credentials
[1444] Specific operation: The user accesses the system's login screen and enters the user ID and password.
[1445] Step 2:
[1446] The server verifies the authentication information and retrieves the user's past search history and usage history.
[1447] Input: Authentication information (user ID, password)
[1448] Output: User search history, usage history
[1449] Specific operation: The server receives the entered authentication information and authenticates the user by comparing it with the database. If authentication is successful, the server retrieves the user's past search history and usage history from the database.
[1450] Step 3:
[1451] The server analyzes the acquired data and generates matching candidates based on the user's preferences.
[1452] Input: User search history, usage history
[1453] Output: User preference patterns, matching candidates
[1454] How it works: The server analyzes the acquired data using machine learning algorithms (e.g., logistic regression) to extract user preference patterns, and then lists candidates with matching preferences from the database.
[1455] Step 4:
[1456] Analyze user emotions in real time using an emotion engine.
[1457] Input: User's current behavior data, voice, and facial expression data
[1458] Output: User sentiment analysis results
[1459] Specific operation: The server uses the EmotionEngine to analyze the user's current behavioral data (e.g., voice and facial expressions) in real time and classify their current emotional state.
[1460] Step 5:
[1461] The server displays the generated match candidates on the user terminal.
[1462] Input: Matching candidate list, sentiment analysis results
[1463] Output: Candidate list displayed on the user's terminal
[1464] Specific operation: Based on the results of the emotion analysis, the server modifies the scoring of the matching candidate list and displays it on the user's device in the optimal order.
[1465] Step 6:
[1466] The user selects a candidate that interests them from the displayed matching candidates and starts chatting with that person.
[1467] Input: Match candidate list, user selection
[1468] Output: Chat session started
[1469] Specific operation: The user selects a match candidate from the list displayed on the device and clicks the "Start Chat" button. The server then creates a chat session and sends a chat request to the selected match candidate.
[1470] Step 7:
[1471] Suggest advice and responses during chat based on the user's emotions.
[1472] Input: Real-time sentiment analysis results, chat content
[1473] Output: Advice and suggestions
[1474] Specific behavior: The server uses the emotion engine to analyze the user's emotions in real time during the chat and provides advice and responses according to changes in emotions, such as specific questions and communication tips related to the content the other person is interested in.
[1475] Step 8:
[1476] In the matchmaking mode, the server confirms the user's intention to marry and displays match candidates on a priority basis.
[1477] Input: Matchmaking mode settings, marriage intention confirmation result
[1478] Output: A prioritized list of possible matches
[1479] Specific operation: When the user turns on the matchmaking mode, the server displays a prompt to confirm whether or not the user is interested in marriage. Based on the user's response, if the user is interested in marriage, the server prioritizes this and re-scores the list of match candidates and displays it on the user's device.
[1480] 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.
[1481] 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.
[1482] 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.
[1483] [Fourth embodiment]
[1484] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1485] 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.
[1486] 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).
[1487] 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.
[1488] 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.
[1489] 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).
[1490] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[1491] 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.
[1492] 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.
[1493] 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.
[1494] 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.
[1495] 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.
[1496] 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."
[1497] The matching system according to the present invention provides advanced matching simply by the user logging in. Details of the program processing of the system and specific examples based on it will be described below.
[1498] Overall system flow
[1499] 1. User login
[1500] The user accesses the system's login screen and enters their user ID and password.
[1501] The server receives the entered authentication information and collates it with a database to authenticate the user. If authentication is successful, the server obtains the user's past search history and usage history.
[1502] 2. Data collection and analysis
[1503] The server analyzes the acquired search history and usage history, for example, analyzing what keywords were searched and which profiles were viewed.
[1504] The server uses machine learning algorithms to analyze user preferences and patterns and compile a list of potential matches based on the user's interests.
[1505] 3. Display of match candidates
[1506] The server scores the matching candidates based on the analysis results, lists them in descending order of score, and sends this to the device.
[1507] The device displays a list of recommended users' profiles, and the user can select the person they are interested in from the displayed candidates.
[1508] 4. Start chatting
[1509] The user selects the person they are interested in from the matching candidates and clicks the "Start Chat" button.
[1510] The server creates a chat session and sends a chat request to the selected party.
[1511] When the other user accepts the chat request, a chat screen will appear on the device and you will be able to exchange messages in real time.
[1512] 5. Matchmaking support function
[1513] The user selects the matchmaking mode on the setting screen.
[1514] The server confirms the selection of the matchmaking mode and provides a function to confirm whether the user who desires to find a match has an intention to get married.
[1515] The server preferentially adds users who are willing to marry to a matching candidate list, and displays this on the terminal.
[1516] Specific examples
[1517] An example of when user A logs in to the system is shown below.
[1518] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[1519] 2. The server receives User A's authentication information, compares it with the database, and authentication is successful.
[1520] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[1521] 4. The server analyzes this history using a machine learning algorithm and extracts a pattern that indicates that User A is looking for people who like movies.
[1522] 5. The server lists and scores other movie-loving users B, C, and D from the database.
[1523] 6. The server generates a list of candidates in descending order of score and sends it to the terminal.
[1524] 7. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[1525] 8. The server creates a chat session and sends a chat request to User B.
[1526] 9. User B approves the request and the chat screen appears on the device.
[1527] 10. User A and User B exchange messages in real time.
[1528] In this way, User A can easily match with the most suitable partner based on their past behavioral history and start a conversation in real time without having to register their detailed requirements. Furthermore, by turning on the matchmaking mode, they can be efficiently matched with people who are interested in marriage.
[1529] The processing flow will be explained below.
[1530] Step 1:
[1531] The user enters their user ID and password on the login screen and clicks the "Login" button.
[1532] Step 2:
[1533] The server receives the entered user ID and password and authenticates them by checking them against the database.
[1534] Step 3:
[1535] If the server is successful in authentication, it retrieves the user's past search history and usage history from the database.
[1536] Step 4:
[1537] The search history and usage history acquired by the server is input into a machine learning algorithm to analyze the user's preferences.
[1538] Step 5:
[1539] Based on the analyzed user preferences, the server generates a list of suitable matching candidate users from the database and scores them.
[1540] Step 6:
[1541] The server sorts the list of matching candidates in order of score and sends it to the user terminal.
[1542] Step 7:
[1543] A list of potential matches for the user is displayed on the device, and the user can select the person they are interested in.
[1544] Step 8:
[1545] The user clicks the "Start Chat" button for the selected person.
[1546] Step 9:
[1547] The server creates a chat session and sends a chat request to the selected other user.
[1548] Step 10:
[1549] When the other user accepts the chat request, the chat screen will appear on the device.
[1550] Step 11:
[1551] A user and another user exchange messages in real time.
[1552] Step 12:
[1553] The user selects the matchmaking mode on the setting screen.
[1554] Step 13:
[1555] The server confirms the selection of the matchmaking mode and asks the user who selected the matchmaking mode whether or not he or she has an intention to get married.
[1556] Step 14:
[1557] The server gives priority to users who are willing to get married and adds them to a matching candidate list, which is displayed on the terminal.
[1558] Step 15:
[1559] The profiles of users who are prioritized on the device are displayed in a list format, and the user can select the person they are interested in.
[1560] Step 16:
[1561] The user starts chatting with the person selected for the purpose of finding a partner.
[1562] Example 1
[1563] 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."
[1564] Conventional matching systems have the problem that users must set detailed conditions, which is time-consuming. Also, finding suitable match candidates requires a lot of manual work, which is inefficient. Furthermore, the matching function with users who are interested in marriage is limited, which is inconvenient for users looking for a marriage partner.
[1565] 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.
[1566] In this invention, the server includes: a means for a user to input authentication information; a means for the server to verify the authentication information and acquire the user's past behavioral history and usage history; a means for the server to analyze the acquired data and generate match candidates based on the user's preferences using an advanced analytical algorithm; a means for the server to display the generated match candidates on the user's operating terminal; and a means for the user to select a match candidate of interest from the displayed match candidates and start real-time communication with the match candidate. This allows the user to efficiently present optimal match candidates based on their past behavioral history and engage in real-time dialogue without having to set detailed conditions. Furthermore, by including a means for selecting a match-hunting mode and a means for the server to confirm whether a user who selected the match-hunting mode intends to marry and prioritize users who have such intentions as match candidates, it is possible to provide matching that is suitable for users who are looking for marriage.
[1567] "Authentication information" is information required to verify a user's identity, and typically includes a username and password.
[1568] "Behavioral history" refers to records of searches, clicks, views, etc. that a user performs on the system.
[1569] "Usage history" refers to a record of a series of operations and usage patterns when a user uses a system.
[1570] "Analysis algorithms" refer to mathematical techniques and machine learning models used to analyze acquired data and extract specific patterns and preferences.
[1571] "Matching candidates" refer to candidates of other users who are predicted to be compatible with the user, selected based on the user's preferences and behavioral history.
[1572] An "operation terminal" refers to hardware or devices that allow a user to access and operate the system.
[1573] "Real-time communication" refers to a communication method in which data is sent and received instantaneously via the Internet.
[1574] The "marriage hunting mode" refers to a special setting mode that prioritizes matching users who are interested in getting married.
[1575] The matching system according to the present invention provides advanced matching simply by the user logging in. Details of the program processing of the system and specific examples based on it will be described below.
[1576] Hardware and software used
[1577] First, this system uses the following hardware and software:
[1578] Hardware:
[1579] Database Server
[1580] Web Server
[1581] User device (smartphone, PC, etc.)
[1582] software:
[1583] Database management system (MySQL)
[1584] Authentication API (OAuth 2.0)
[1585] Machine learning platform (TensorFlow)
[1586] Data analysis tools (Python, Pandas)
[1587] Front-end frameworks (React, Angular)
[1588] Communication protocol (HTTP / HTTPS)
[1589] Chat server (WebSocket)
[1590] Real-time communication framework (Socket.IO)
[1591] Config Management
[1592] System Program Processing
[1593] The specific program processing is described below.
[1594] The user accesses the login screen and enters their user ID and password. The server receives the entered authentication information and authenticates the user by comparing it with the database. If authentication is successful, the server retrieves the user's past behavioral history and usage history from the database.
[1595] The server analyzes the acquired search history and usage history. It uses Python's Pandas library to create a history data frame. It then uses machine learning algorithms (using TensorFlow and Scikit-Learn) to extract user preferences and patterns and create a list of suitable matching candidates.
[1596] The server scores the candidates based on the analysis results and lists them in descending order. This scoring takes into account factors such as common interests and profile similarities. The server then sends the list of candidates to the device, where a user interface using React or Angular is displayed.
[1597] When a user selects a match from the candidates and clicks the "Start Chat" button, the server creates a chat session and sends a chat request to the selected match. If the chat request is accepted, a chat screen will appear on the user's device, enabling real-time communication.
[1598] When a user selects the matchmaking mode, the server confirms the selection and activates the mode. In this state, the server displays users who are willing to get married as match candidates with priority.
[1599] Specific examples
[1600] For example, when user A logs in to the system, the process is as follows:
[1601] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[1602] 2. The server receives User A's authentication information, checks it against the database, and authentication is successful.
[1603] 3. The server obtains User A's past search history and usage history (for example, search history for "movie lover").
[1604] 4. The server analyzes these histories using a machine learning algorithm and extracts patterns that indicate that User A likes movies.
[1605] 5. The server lists and scores other movie-loving users B, C, and D from the database.
[1606] 6. The server generates a list of candidates in descending order of score and sends it to the terminal.
[1607] 7. The profiles of users B, C, and D are displayed in a list on the device, and user A selects user B and clicks the "Start Chat" button.
[1608] 8. The server creates a chat session and sends a chat request to User B.
[1609] 9. User B approves the request and the chat screen appears on the device.
[1610] 10. User A and User B exchange messages in real time.
[1611] This system allows users to easily find the perfect match based on their preferences and start communicating in real time. The matchmaking mode also allows users to efficiently match with potential partners who are interested in marriage.
[1612] Prompt Sentence Examples
[1613] "Please generate a program that lists and scores the best matches based on the past search history of user A, who wants to match with people who like movies."
[1614] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1615] Step 1:
[1616] The user enters the user ID and password on the login screen and clicks the "Login" button. The user ID and password are sent as input.
[1617] Specific behavior:
[1618] The user accesses the login page in a browser, enters the user ID and password in the login form, and clicks the "Login" button.
[1619] Step 2:
[1620] The server receives the entered authentication information and compares it with the database to authenticate the user. If authentication is successful, past behavioral and usage history is retrieved from the database. The retrieved data is search history and click history based on the user ID.
[1621] Specific behavior:
[1622] The server authenticates the user ID and password received at the POST / api / login endpoint using OAuth 2.0, and executes an SQL query to retrieve past search history and behavioral history from the database based on the user ID.
[1623] Step 3:
[1624] The server analyzes the data it acquires and extracts user preferences and patterns. Search history and behavioral history are given as input, and the analysis results are obtained as output. The analysis is performed using Python's Pandas library and a machine learning algorithm (TensorFlow).
[1625] Specific behavior:
[1626] The server converts the search history and behavioral history obtained into a data frame, and performs data manipulation using Python and Pandas. Furthermore, TensorFlow is used to apply a machine learning model to analyze and cluster user preferences.
[1627] Step 4:
[1628] The server scores the match candidates based on the analysis results and lists them in descending order. It takes the analysis results as input and obtains a scored list of match candidates as output. Scoring takes into account factors such as common interests and profile similarity.
[1629] Specific behavior:
[1630] The server uses a personalization algorithm to convert the analysis results into a matching score, generates a list of match candidates based on the user's preferences, and assigns a score to each.
[1631] Step 5:
[1632] The server sends the scored match candidate list to the terminal, taking the match candidate list as input and generating data for displaying the list as output.
[1633] Specific behavior:
[1634] The server sends the list of matching candidates to the API endpoint for displaying the list (e.g., GET / api / matchCandidates), and the front-end displays the received data in list format using a React component.
[1635] Step 6:
[1636] The user selects a candidate they are interested in from the displayed matching candidates and clicks the "Start Chat" button. The user sends the user ID of the selected candidate as input.
[1637] Specific behavior:
[1638] When the user clicks the "Start Chat" button, JavaScript calls the POST / api / startChat endpoint and sends the user ID of the selected candidate.
[1639] Step 7:
[1640] The server creates a chat session and sends a chat request to the selected person. It receives a chat start request as input, generates a chat session ID as output, and sends the request to the person.
[1641] Specific behavior:
[1642] The server creates a chat session in the database and sends a notification to the other user via WebSocket.
[1643] Step 8:
[1644] When the other user accepts the chat request, the chat screen is displayed on the device. The system receives the acceptance request as input and updates the chat screen display as output.
[1645] Specific behavior:
[1646] When the other user clicks the accept button, a request is sent to the server, and the server updates the chat session, notifying both devices that they are ready for real-time communication.
[1647] Step 9:
[1648] User A and the other user exchange messages in real time. Chat messages are sent and received intermittently as input, and the conversation content is displayed as output.
[1649] Specific behavior:
[1650] User A and the other user use a real-time communication framework (Socket.IO) to send and receive messages via WebSocket, and new messages are displayed immediately on the chat screen.
[1651] Step 10:
[1652] When a user selects the matchmaking mode, the server confirms this selection, checks whether the user who is looking for a marriage partner has an intention to marry, and displays users who have such intention preferentially. The selection of the matchmaking mode is transmitted as input, and a list of matchmaking candidates for the purpose of matchmaking is generated as output.
[1653] Specific behavior:
[1654] The user selects "Marriage Hunting Mode" on the settings screen and submits the form. The server receives the POST / api / settings, records the marriage hunting mode setting in the database, changes the priority of the users who are looking for marriage, and reflects this in the matching algorithm.
[1655] Through the above processing steps, users can efficiently find the best match candidates and communicate with them in real time. In addition, by using the matchmaking mode, users can smoothly match with people who are interested in marriage.
[1656] (Application example 1)
[1657] 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."
[1658] On conventional online shopping sites, users had to spend a lot of time and effort to find individual products, making it difficult to efficiently find products that matched their preferences.In addition, they were unable to effectively combine real-time reviews from other users and chat functions to increase purchasing motivation.
[1659] 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.
[1660] In this invention, the server includes: means for a user to input authentication information; means for the server to verify the authentication information and acquire the user's past purchase history and browsing history; means for the server to analyze the acquired data and generate recommendation candidates based on the user's preferences; means for the server to display the generated recommendation candidates on a user terminal; means for the user to select a product of interest from the displayed recommendation candidates and view product information; and means for the server to generate a chat session based on reviews from other users and for users to share product reviews in real time. This enables users to efficiently receive product recommendations based on their past purchase history and browsing history, and to increase their desire to purchase while referring to real-time feedback from other users.
[1661] "Authentication information" refers to the identification information a user uses to log in to a system, typically a user ID and password.
[1662] "Purchase history" is a record of products purchased by a user in the past, and is data indicating the user's consumption behavior.
[1663] "Browsing history" is a record of which pages or products a user has viewed within a website or application.
[1664] "Recommendation candidates" are a list of products and services recommended to the user based on the analyzed data.
[1665] A "user terminal" is a device used by a user to access the system, such as a smartphone or computer.
[1666] A "chat session" is a communication session in which users can exchange messages in real time.
[1667] A "machine learning algorithm" is a computational method for learning from large amounts of data and generating specific patterns and predictions.
[1668] A "generative AI model" is an artificial intelligence system that generates or improves recommendation candidates based on prompts entered by the user.
[1669] A "prompt" is a command or question that a user inputs to a generative AI model.
[1670] The embodiments of the present invention will be specifically described, so that other engineers can practice the invention.
[1671] System Configuration
[1672] The system consists of the following major components:
[1673] Hardware
[1674] Server: Responsible for data collection, analysis, and recommendation generation. For example, a cloud-based server such as Amazon EC2 is used.
[1675] User device: The device through which the user accesses the system and views the recommendations, such as a smartphone, tablet, or PC.
[1676] software
[1677] Flask: A Python web framework that handles communication between the server and the client.
[1678] scikit-learn: A Python library for running machine learning algorithms.
[1679] pandas: A Python library for collecting and preprocessing data.
[1680] Generative AI model: An artificial intelligence system for generating and improving recommendations based on user prompts.
[1681] System Operation
[1682] User authentication and data collection
[1683] 1. When a user logs in to the system, they are authenticated by entering their user ID and password, and the authentication information is sent to the server.
[1684] 2. The server compares the authentication information with the database and, if authentication is successful, retrieves the user's past purchase and browsing history.
[1685] Analyzing data and generating recommendations
[1686] 3. The server preprocesses the acquired purchase history and browsing history using the pandas library and converts it into a format suitable for analysis.
[1687] 4. The server runs a machine learning algorithm using scikit-learn to analyze user preferences.
[1688] 5. Based on the results of the analysis, the system generates and scores recommended products and services that are best suited to the user.
[1689] Display of recommended candidates and real-time chat
[1690] 6. The server sends the generated recommendation candidates to the user terminal and displays them in list form on the user terminal.
[1691] 7. The user selects a product of interest from the displayed recommended candidates and views detailed product information.
[1692] 8. The server generates a chat session based on other users' reviews of the selected product, providing a means for sharing review information in real time.
[1693] Specific examples
[1694] For example, if a user logs in and has frequently purchased "smartphone accessories" in the past, the server will analyze their purchasing history. Based on the results of this analysis, the server will recommend the user the latest smartphone case or a highly rated charging cable. Users can browse these recommended items and check other users' reviews of products they are interested in in real time. This will increase their motivation to purchase and enable them to select the best product.
[1695] An example prompt for a generative AI model is, "Recommend new products to the user based on their past purchases and browsing history. Please create a simple example that includes user authentication, data collection, a machine learning recommendation system, and product recommendation display functionality."
[1696] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1697] Step 1:
[1698] The user opens the system's login screen and enters their user ID and password. The user ID and password are received as input data and sent to the server. The server then collates the received authentication information with a database to authenticate the user. If authentication is successful, the user's past purchase history and browsing history are retrieved from the database.
[1699] Step 2:
[1700] The server uses the pandas library to store the acquired purchase history and browsing history in a data frame and perform preprocessing. For example, it removes duplicate data and fills in missing values. It receives purchase history and browsing history as input data and outputs a preprocessed data frame.
[1701] Step 3:
[1702] The server analyzes the preprocessed data using scikit-learn. Specifically, it analyzes user preferences using clustering algorithms and generates a recommendation model. In this process, it receives the preprocessed data frame as input data and outputs a recommendation model based on the user preferences as the analysis result.
[1703] Step 4:
[1704] The server generates product and service recommendation candidates based on the generated recommendation model. For example, it calculates and scores the user's preference score for each candidate. It receives the recommendation model as input data and outputs a scored list of recommendation candidates.
[1705] Step 5:
[1706] The server sends the scored recommendation candidate list to the user's device, which displays a list of products and services as recommendation candidates.The server receives the recommendation candidate list as input data and generates a list to be displayed on the user's device as output data.
[1707] Step 6:
[1708] The user selects a product or service of interest from the list of recommended candidates and views detailed information. The system receives the list of recommended candidates as input data and displays detailed information about the selected product.
[1709] Step 7:
[1710] The server generates a chat session based on other users' reviews of the selected product. It allows users to share review information in real time and exchange questions and comments about the product with other users. It receives the selected product information as input data, generates a chat session as output data, and displays it on the user's terminal.
[1711] Step 8:
[1712] The server uses the generative AI model to further optimize the recommendation candidate list based on the prompt entered by the user. For example, if the user enters "Please recommend the latest smartphone case," the AI model will add the most suitable smartphone case to the recommendation candidate list. It receives the prompt as input data and outputs an optimized recommendation candidate list.
[1713] 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.
[1714] The matching system based on this invention provides advanced matching simply by the user logging in, and by combining it with an emotion engine, it recognizes the user's emotions and achieves more accurate matching and communication. Below, we will explain the details of the system's program processing and specific examples based on it.
[1715] Overall system flow
[1716] 1. User login
[1717] The user accesses the system's login screen and enters their user ID and password.
[1718] The server receives the entered authentication information and collates it with a database to authenticate the user. If authentication is successful, the server obtains the user's past search history and usage history.
[1719] 2. Data collection and analysis
[1720] The server inputs the acquired search history and usage history into a machine learning algorithm to analyze the user's preferences.
[1721] The server also analyzes the user's emotions using an emotion engine and integrates this data to develop a more detailed understanding of the user's preferences.
[1722] 3. Display of match candidates
[1723] The server scores the matching candidates based on the analysis results, lists them in descending order of score, and sends this to the device.
[1724] The device displays a list of recommended users' profiles, and the user can select the person they are interested in from the displayed candidates.
[1725] 4. Start chatting
[1726] The user selects the person they are interested in from the matching candidates and clicks the "Start Chat" button.
[1727] The server creates a chat session and sends a chat request to the selected party.
[1728] When the other user accepts the chat request, the chat screen will appear on the device.
[1729] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content. It also suggests advice and responses according to changes in emotions.
[1730] 5. Matchmaking support function
[1731] The user selects the matchmaking mode on the setting screen.
[1732] The server confirms the selection of the matchmaking mode and provides a function to confirm whether the user who selected the wedding mode intends to get married.The server also analyzes the user's emotions using an emotion engine and takes the emotion analysis result into consideration when confirming the intention to get married.
[1733] The server preferentially adds users who are willing to marry to a matching candidate list, and displays this on the terminal.
[1734] Specific examples
[1735] An example of when user A logs in to the system is shown below.
[1736] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[1737] 2. The server receives User A's authentication information, compares it with the database, and authentication is successful.
[1738] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[1739] 4. The server analyzes this history using a machine learning algorithm and extracts a pattern that indicates that User A is looking for people who like movies.
[1740] 5. The server uses the emotion engine to analyze the emotions of User A's past behavior, for example, analyzing the positive emotions during movie-related searches.
[1741] 6. The server lists and scores other movie-loving users B, C, and D from the database.
[1742] 7. The server generates a list of candidates in descending order of score and sends it to the terminal.
[1743] 8. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[1744] 9. The server creates a chat session and sends a chat request to User B.
[1745] 10. User B approves the request and the chat screen appears on the device.
[1746] 11. The emotion engine recognizes the emotions of users A and B during chat in real time and suggests advice and responses based on their emotions.
[1747] 12. User A and User B exchange messages in real time, promoting emotion-based communication.
[1748] In this way, User A can easily match with the most suitable partner based on their past behavioral history and emotional analysis, and begin a conversation in real time, without having to register their detailed requirements. Furthermore, by turning on the matchmaking mode, efficient communication based on emotional analysis with potential marriage partners becomes possible.
[1749] The processing flow will be explained below.
[1750] Step 1:
[1751] The user enters their user ID and password on the login screen and clicks the "Login" button.
[1752] Step 2:
[1753] The server receives the entered user ID and password and authenticates them by checking them against the database.
[1754] Step 3:
[1755] If the server is successful in authentication, it retrieves the user's past search history and usage history from the database.
[1756] Step 4:
[1757] The search history and usage history acquired by the server is input into a machine learning algorithm to analyze the user's preferences.
[1758] Step 5:
[1759] The server uses an emotion engine to analyze the emotions of the user's past actions and adds them to the preference analysis results.
[1760] Step 6:
[1761] The server generates a list of suitable match candidate users from the database based on the analyzed user preferences and emotions, and scores them.
[1762] Step 7:
[1763] The server sorts the list of matching candidates in order of score and sends it to the user terminal.
[1764] Step 8:
[1765] A list of potential matches for the user is displayed on the device, and the user can select the person they are interested in.
[1766] Step 9:
[1767] The user clicks the "Start Chat" button for the selected person.
[1768] Step 10:
[1769] The server creates a chat session and sends a chat request to the selected other user.
[1770] Step 11:
[1771] When the other user accepts the chat request, the chat screen will appear on the device.
[1772] Step 12:
[1773] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content. For example, if the user is nervous, a message encouraging them to relax will be displayed.
[1774] Step 13:
[1775] The emotion engine suggests advice and responses based on the user's emotional changes. For example, if the user's emotions change suddenly, it suggests "Let's talk calmly."
[1776] Step 14:
[1777] The user selects the matchmaking mode on the setting screen.
[1778] Step 15:
[1779] The server confirms the selection of the matchmaking mode and asks the user who selected the matchmaking mode whether or not he or she has an intention to get married.
[1780] Step 16:
[1781] The server uses an emotion engine to analyze the user's emotions and takes the emotion analysis result into consideration when confirming the intention to marry.
[1782] Step 17:
[1783] The server gives priority to users who are willing to get married and adds them to a matching candidate list, which is then sent to the user terminal.
[1784] Step 18:
[1785] The profiles of users who are prioritized on the device are displayed in a list format, and the user can select the person they are interested in.
[1786] Step 19:
[1787] The user starts chatting with the person selected for the purpose of finding a partner.
[1788] Step 20:
[1789] The emotion engine recognizes users' emotions in real time during chats while searching for a partner, and suggests advice and responses to facilitate communication.
[1790] Example 2
[1791] 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."
[1792] Conventional matching systems present match candidates based only on the user's past behavioral history and preferences, making it difficult to achieve highly accurate matching that takes into account the user's current emotions and psychological state. It was also difficult to accurately grasp the user's intentions to marry and provide appropriate match candidates. This resulted in low user satisfaction and reduced motivation to use the system.
[1793] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1794] In this invention, the server includes: means for a user to input authentication information; means for the server to verify the authentication information and acquire the user's past behavioral history and usage history; means for the server to analyze the acquired data using a machine learning algorithm and analyze the user's preferences and emotions; means for the server to analyze the user's emotions using an emotion engine and integrate it with the preference data; means for the server to score the match candidates generated based on the analysis results and display them on the user terminal in a list in descending order of score; means for the user to select a partner of interest from the displayed match candidates and start chatting with that partner; and means for the emotion engine to recognize the user's emotions in real time during chat and reflect them in the chat content. This enables highly accurate matching that takes into account the user's emotions and intentions to marry, thereby increasing user satisfaction and increasing their willingness to use the service.
[1795] "Authentication Information" refers to the identification information and confidential information used by a user to log in to a system, including, for example, a user ID and password.
[1796] "Machine learning algorithms" refer to mathematical methods and models that analyze data and find patterns and relationships, enabling predictions and classifications.
[1797] An "emotion engine" refers to software or algorithms that analyze and identify emotions from a user's text, voice, etc., allowing for real-time recognition of the user's emotional state.
[1798] "Scoring" refers to the process of assigning scores to items according to specific criteria or indicators based on the analysis results, which allows for a clear prioritization of items.
[1799] "Matching candidates" refer to other users selected based on the user's preferences and feelings. This creates a list of people who are likely to be compatible with each other.
[1800] "Chat session" refers to a series of processes and connections for real-time communication between users via text messages, voice, video, etc.
[1801] "Marriage hunting mode" refers to a special setting for providing matching for the purpose of marriage. By selecting this mode, users who are interested in marriage will be given priority in matching.
[1802] "Marriage intention confirmation" refers to the process in which the server confirms whether the user intends to get married, thereby identifying users who intend to get married.
[1803] "Preference data" refers to information indicating a user's preferences and interests obtained based on the user's past behavioral history and usage history. This information is used to generate matching candidates that are suitable for the user.
[1804] "Terminal" refers to an electronic device that allows a user to access the system and operate the interface. Specifically, this includes personal computers and smartphones.
[1805] The matching system based on this invention provides advanced matching simply by the user logging in, and by combining it with an emotion engine, it recognizes the user's emotions and achieves more accurate matching and communication. Below, we will explain the details of the system's program processing and specific examples based on it.
[1806] System Configuration
[1807] This system uses the following major hardware and software:
[1808] Hardware:
[1809] server
[1810] Client terminal (PC, smartphone)
[1811] software:
[1812] Database (MySQL, PostgreSQL)
[1813] Machine learning libraries (TensorFlow, PyTorch)
[1814] Emotion engine (IBM Watson, Azure Emotion API)
[1815] Program Processing Details
[1816] 1. The user accesses the system login screen and enters their user ID and password.
[1817] The user accesses the login screen using the client terminal.
[1818] The server receives the entered authentication information and compares it with a database to authenticate the user.
[1819] 2. If authentication is successful, the server retrieves the user's past search history and usage history.
[1820] The server retrieves the behavior history of the successfully authenticated user from the database.
[1821] 3. The server inputs the acquired data into a machine learning algorithm to analyze the user's preferences and emotions.
[1822] The server uses TensorFlow and PyTorch to analyze users' search and usage histories and extract preference patterns.
[1823] 4. Use the emotion engine to analyze user emotions and integrate this data.
[1824] The server uses IBM Watson and Azure Emotion APIs to analyze the user's emotional state in real time.
[1825] 5. The server scores the matching candidates based on the analysis results and displays them on the user's device in a list in descending order of score.
[1826] Based on the analysis results, the server scores the best matching candidates and sends a list of candidates to the client terminal.
[1827] 6. The user selects the person they are interested in from the displayed match candidates and starts chatting with that person.
[1828] When the user clicks the "Start Chat" button, the server creates a chat session and sends a chat request to the selected person.
[1829] 7. The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content.
[1830] The emotion engine analyzes messages during chat and provides advice and responses based on the user's emotions in real time.
[1831] Specific examples
[1832] Below is an example of how User A logs into the system, finds a suitable match, and starts chatting.
[1833] 1. User A enters their user ID and password on the login screen and clicks the "Login" button.
[1834] 2. The server receives User A's authentication information, checks it against the database, and successfully authenticates him.
[1835] 3. The server obtains User A's past search history (for example, search history for "movie lover") and usage history.
[1836] 4. The server analyzes this history using a machine learning algorithm and identifies a pattern that User A is looking for people who like movies.
[1837] 5. The server uses the emotion engine to analyze the emotions of User A's past behavior, for example, analyzing the positive emotions during movie-related searches.
[1838] 6. The server lists and scores other movie-loving users B, C, and D from the database.
[1839] 7. The server generates a list of candidates in descending order of score and sends it to the terminal.
[1840] 8. The profiles of users B, C, and D are displayed on the device, and user A selects user B and clicks the "Start Chat" button.
[1841] 9. The server creates a chat session and sends a chat request to User B.
[1842] 10. User B approves the request and the chat screen appears on the device.
[1843] 11. The emotion engine recognizes the emotions of users A and B during chat in real time and provides emotion-based advice and responses.
[1844] 12. User A and User B exchange messages in real time, promoting emotion-based communication.
[1845] Prompt Sentence Examples
[1846] "Please generate a scenario in which User A accesses the login screen and attempts to log in."
[1847] "Describe a scenario where User A's past search history is related to movies."
[1848] "Please explain the process by which user A matches with other movie-loving users."
[1849] Through this system and concrete examples, users can experience advanced emotion-based matching and communication.
[1850] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1851] Step 1:
[1852] The user accesses the system login screen and enters their user ID and password.
[1853] Input: User ID, Password
[1854] Output: User credentials
[1855] The user accesses the login screen using a client terminal and enters the necessary authentication information, which is received by the server.
[1856] Step 2:
[1857] The server receives the entered authentication information and compares it with a database to authenticate the user.
[1858] Input: User credentials
[1859] Output: Authentication result (success / failure)
[1860] The server uses SQL queries to match the authentication information with records in a database and generates an authentication result.
[1861] Step 3:
[1862] If the server is successful in authenticating the user, it obtains the user's past search history and usage history.
[1863] Input: Authentication result (success)
[1864] Output: Search history, usage history
[1865] The server executes queries to retrieve past search and usage history from the user's database records.
[1866] Step 4:
[1867] The server inputs the acquired data into a machine learning algorithm to analyze the user's preferences and emotions.
[1868] Input: Search history, usage history
[1869] Output: Preference patterns, emotion data
[1870] The server analyzes the data using TensorFlow and PyTorch to extract user preference patterns and emotional data.
[1871] Step 5:
[1872] The server uses an emotion engine to analyze the user's emotions and integrates this data.
[1873] Input: Search history, usage history, preference patterns
[1874] Output: Integrated data (preferences + emotions)
[1875] The server uses IBM Watson and Azure Emotion APIs to analyze emotional data and integrate it with user preference data.
[1876] Step 6:
[1877] The server scores the matching candidates based on the analysis results and displays them on the user's device in a list in order of highest score.
[1878] Input: Integrated data
[1879] Output: A list of possible matches
[1880] The server uses a scoring algorithm to rank the potential matches and sends the list to the client terminal.
[1881] Step 7:
[1882] The user selects the person of interest from the displayed match candidates and starts chatting with that person.
[1883] Input: Match candidate list
[1884] Output: Selected candidates
[1885] The user operates the interface of the client terminal to select matching candidates of interest.
[1886] Step 8:
[1887] The server creates a chat session and sends a chat request to the selected person.
[1888] Input: Selected candidate
[1889] Output: Chat session
[1890] The server initiates the chat session and sends a chat request to the selected other user.
[1891] Step 9:
[1892] When the other user accepts the chat request, the chat screen will appear on the device.
[1893] Input: Chat request
[1894] Output: Chat screen
[1895] The other user accepts the chat request on the client terminal, and the chat screen is displayed.
[1896] Step 10:
[1897] The emotion engine recognizes the user's emotions in real time during chat and reflects them in the chat content.
[1898] Input: Chat content
[1899] Output: Emotion-based advice and suggested actions
[1900] The emotion engine analyzes chat messages and suggests advice and responses based on the user's emotions.
[1901] (Application example 2)
[1902] 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."
[1903] Conventional matching systems can analyze users' preferences and present recommended match candidates, but the accuracy of matching and communication that takes into account the user's emotional state and real-time feedback is limited. Furthermore, while the matchmaking mode can confirm the user's intention to marry, it does not reflect the user's emotional state, making it difficult to fully meet the user's needs. Therefore, there is a need for an advanced matching and communication system that takes into account not only the user's preferences but also their emotional state.
[1904] 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.
[1905] In this invention, the server includes means for a user to input authentication information, means for the server to verify the authentication information and acquire the user's past search history and usage history, means for the server to analyze the acquired data and generate match candidates based on the user's preferences, means for analyzing the user's emotions in real time using an emotion engine, means for the server to display the generated match candidates on a user terminal, means for the user to select a match candidate of interest from the displayed match candidates and start a chat with the candidate, and means for suggesting advice and responses during the chat based on the user's emotions. This enables highly accurate analysis of user preferences and emotions, and enables matching and effective communication based on the analysis.
[1906] "Authentication information" refers to the information a user enters to log in to a system, and typically includes a user ID and password.
[1907] "Server" refers to a computer system that stores, processes, and transmits data.
[1908] "Search History" refers to a record of searches a User has previously conducted on the System.
[1909] "Usage history" refers to a record of a user's actions and operations when using the system.
[1910] "Preferences" refer to the things and product trends that a user particularly likes.
[1911] "Matching candidates" refer to people the system recommends based on an analysis of the user's preferences and emotions.
[1912] "Emotion engine" refers to a software or hardware system that recognizes and analyzes a user's emotional state.
[1913] "Real-time" refers to data collection and analysis occurring immediately, without delay.
[1914] "Marriage hunting mode" refers to a special setting in the system for matching with the aim of marriage.
[1915] "Confirming intention to marry" refers to the process in which the server confirms whether the user is willing to marry.
[1916] "Scoring" refers to the process of evaluating and prioritizing potential matches based on specific criteria.
[1917] "Chat" refers to a means of interaction that allows users to exchange messages in real time.
[1918] "Advice" refers to advice or suggestions provided by the system based on the user's emotions and behavior.
[1919] As an embodiment of this invention, we will first explain the system program, which is an important element. The server verifies the authentication information entered by the user and acquires the user's past search history and usage history. The server also analyzes this data and generates matching candidates based on the user's preferences. It then uses an emotion engine to analyze the user's emotions in real time and reflects this in the matching candidates.
[1920] The generated matching candidates are then displayed on the user's device, and the user can select a partner they are interested in from the displayed candidates and start chatting. Even during the chat, the emotion engine recognizes the user's emotions in real time and suggests advice and responses based on their emotions.
[1921] Furthermore, in the matchmaking mode, the server checks whether the user has intentions to get married and displays them as match candidates with priority. In this case, the emotion engine is also used to support the confirmation of intentions to get married.
[1922] The main hardware and software used are user devices (such as smartphones and head-mounted displays), servers, emotion engines, and machine learning algorithms (e.g., logistic regression), which enable real-time data processing and advanced analysis.
[1923] For example, if a user has watched a lot of "dramas" in the past and is currently feeling "tired" as a result of the emotion engine's analysis, the server will recommend relaxing "comedy movies" or "soothing music." When the user then selects someone they are interested in and starts chatting, the emotion engine will analyze their emotions in real time and promote communication based on that.
[1924] Here are some examples of specific prompts to implement this system:
[1925] "Please obtain user data: User ID: sample_user_id Past viewing history: 1. Movies: 'Drama' (view count: 5) 2. Movies: 'Action' (view count: 2) Current emotion: 'Tired' Based on this data, please generate a code that will recommend the most suitable content for that user."
[1926] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1927] Step 1:
[1928] The user enters their authentication information.
[1929] Input: User ID, Password
[1930] Output: Credentials
[1931] Specific operation: The user accesses the system's login screen and enters the user ID and password.
[1932] Step 2:
[1933] The server verifies the authentication information and retrieves the user's past search history and usage history.
[1934] Input: Authentication information (user ID, password)
[1935] Output: User search history, usage history
[1936] Specific operation: The server receives the entered authentication information and authenticates the user by comparing it with the database. If authentication is successful, the server retrieves the user's past search history and usage history from the database.
[1937] Step 3:
[1938] The server analyzes the acquired data and generates matching candidates based on the user's preferences.
[1939] Input: User search history, usage history
[1940] Output: User preference patterns, matching candidates
[1941] How it works: The server analyzes the acquired data using machine learning algorithms (e.g., logistic regression) to extract user preference patterns, and then lists candidates with matching preferences from the database.
[1942] Step 4:
[1943] Analyze user emotions in real time using an emotion engine.
[1944] Input: User's current behavior data, voice, and facial expression data
[1945] Output: User sentiment analysis results
[1946] Specific operation: The server uses the EmotionEngine to analyze the user's current behavioral data (e.g., voice and facial expressions) in real time and classify their current emotional state.
[1947] Step 5:
[1948] The server displays the generated match candidates on the user terminal.
[1949] Input: Matching candidate list, sentiment analysis results
[1950] Output: Candidate list displayed on the user's terminal
[1951] Specific operation: Based on the results of the emotion analysis, the server modifies the scoring of the matching candidate list and displays it on the user's device in the optimal order.
[1952] Step 6:
[1953] The user selects a candidate that interests them from the displayed matching candidates and starts chatting with that person.
[1954] Input: Match candidate list, user selection
[1955] Output: Chat session started
[1956] Specific operation: The user selects a match candidate from the list displayed on the device and clicks the "Start Chat" button. The server then creates a chat session and sends a chat request to the selected match candidate.
[1957] Step 7:
[1958] Suggest advice and responses during chat based on the user's emotions.
[1959] Input: Real-time sentiment analysis results, chat content
[1960] Output: Advice and suggestions
[1961] Specific behavior: The server uses the emotion engine to analyze the user's emotions in real time during the chat and provides advice and responses according to changes in emotions, such as specific questions and communication tips related to the content the other person is interested in.
[1962] Step 8:
[1963] In the matchmaking mode, the server confirms the user's intention to marry and displays match candidates on a priority basis.
[1964] Input: Matchmaking mode settings, marriage intention confirmation result
[1965] Output: A prioritized list of possible matches
[1966] Specific operation: When the user turns on the matchmaking mode, the server displays a prompt to confirm whether or not the user is interested in marriage. Based on the user's response, if the user is interested in marriage, the server prioritizes this and re-scores the list of match candidates and displays it on the user's device.
[1967] 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.
[1968] 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.
[1969] 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.
[1970] 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.
[1971] 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.
[1972] 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.
[1973] 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).
[1974] 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.
[1975] 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."
[1976] 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.
[1977] 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).
[1978] 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.
[1979] 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.
[1980] 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.
[1981] 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.
[1982] 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.
[1983] 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.
[1984] 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.
[1985] 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.
[1986] 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.
[1987] 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.
[1988] The following is further disclosed regarding the above embodiment.
[1989] (Claim 1)
[1990] a means for a user to enter authentication information;
[1991] A means for the server to verify the authentication information and acquire the user's past search history and usage history;
[1992] A means for the server to analyze the acquired data and generate matching candidates based on the user's preferences;
[1993] a means for displaying the generated match candidates on a user terminal by the server;
[1994] A means for the user to select a candidate of interest from the displayed match candidates and start chatting with the candidate;
[1995] A system including:
[1996] (Claim 2)
[1997] A means for a user to select a matchmaking mode;
[1998] A means for the server to confirm whether or not a user who has selected the matchmaking mode intends to get married;
[1999] A means for preferentially displaying users who are willing to get married as match candidates;
[2000] 10. The system of claim 1, comprising:
[2001] (Claim 3)
[2002] a means for the server to analyze user preferences using machine learning algorithms;
[2003] means for generating a match candidate list scored based on user preferences;
[2004] 10. The system of claim 1, comprising:
[2005] "Example 1"
[2006] (Claim 1)
[2007] a means for a user to enter authentication information;
[2008] A means for the server to verify the authentication information and acquire the user's past behavior history and usage history;
[2009] A means for the server to analyze the acquired data and generate matching candidates based on the user's preferences using an advanced analysis algorithm;
[2010] a means for displaying the match candidates generated by the server on a user's operating terminal;
[2011] A means for a user to select a candidate of interest from the displayed matching candidates and start real-time communication with the candidate;
[2012] A system including:
[2013] (Claim 2)
[2014] A means for a user to select a matchmaking mode;
[2015] A means for the server to check whether or not a user who has selected the matchmaking mode intends to get married, and to preferentially display users who have such intention as matchmaking candidates;
[2016] 10. The system of claim 1, comprising:
[2017] (Claim 3)
[2018] a means for the server to analyze user preferences using machine learning algorithms;
[2019] means for generating a match candidate list scored based on user preferences;
[2020] 10. The system of claim 1, comprising:
[2021] "Application Example 1"
[2022] (Claim 1)
[2023] a means for a user to enter authentication information;
[2024] A server verifies the authentication information and acquires the user's past purchase history and browsing history;
[2025] A means for the server to analyze the acquired data and generate recommendation candidates based on the user's preferences;
[2026] a means for displaying the recommendation candidates generated by the server on a user terminal;
[2027] A means for the user to select a product of interest from the displayed recommended candidates and view product information;
[2028] A server generates a chat session based on reviews of other users, allowing users to share reviews of products in real time;
[2029] A system including:
[2030] (Claim 2)
[2031] A means for users to confirm their willingness to purchase;
[2032] a means for the server to provide promotion information regarding a specific product to a user who has shown an intention to purchase;
[2033] 10. The system of claim 1, comprising:
[2034] (Claim 3)
[2035] a means for the server to analyze user preferences using machine learning algorithms;
[2036] A means for generating a list of recommended candidates scored based on user preferences;
[2037] a means for further improving the list of candidate recommendations based on user prompts using a generative AI model; and
[2038] 10. The system of claim 1, comprising:
[2039] "Example 2: Combining Emotion Engines"
[2040] (Claim 1)
[2041] a means for a user to enter authentication information;
[2042] A means for the server to verify the authentication information and acquire the user's past behavior history and usage history;
[2043] A means for the server to analyze the acquired data using a machine learning algorithm to analyze the preferences and emotions of the user;
[2044] a means for the server to analyze the user's emotions using an emotion engine and integrate the analyzed emotions with the preference data;
[2045] a means for the server to score the matching candidates generated based on the analysis results and display them on the user's terminal in a list in descending order of score;
[2046] A means for the user to select a person of interest from the displayed match candidates and start chatting with that person;
[2047] A means for the emotion engine to recognize the user's emotions in real time during chat and reflect them in the chat content;
[2048] A system including:
[2049] (Claim 2)
[2050] A means for a user to select a matchmaking mode;
[2051] A means for the server to confirm whether or not a user who has selected the matchmaking mode intends to get married;
[2052] A means for the server to analyze the emotions of users using an emotion engine and give priority to scoring to users who have intentions to get married as matching candidates;
[2053] A means for preferentially displaying users who are willing to get married as match candidates;
[2054] 10. The system of claim 1, comprising:
[2055] (Claim 3)
[2056] means for the server to analyze user preferences and emotions using machine learning algorithms;
[2057] means for generating a match candidate list scored based on user preferences and emotions;
[2058] The emotion engine recognizes the user's emotions in real time and reflects them in the chat content.
[2059] 10. The system of claim 1, comprising:
[2060] "Application example 2 when combining emotion engines"
[2061] (Claim 1)
[2062] a means for a user to enter authentication information;
[2063] A means for the server to verify the authentication information and acquire the user's past search history and usage history;
[2064] A means for the server to analyze the acquired data and generate matching candidates based on the user's preferences;
[2065] a means for analyzing user emotions in real time using an emotion engine;
[2066] a means for displaying the generated match candidates on a user terminal by the server;
[2067] A means for the user to select a candidate of interest from the displayed match candidates and start chatting with the candidate;
[2068] A means of suggesting advice or responses during chat based on the user's emotions;
[2069] A system including:
[2070] (Claim 2)
[2071] A means for a user to select a matchmaking mode;
[2072] A means for the server to confirm whether or not a user who has selected the matchmaking mode intends to get married;
[2073] A means for preferentially displaying users who are willing to get married as match candidates;
[2074] A means to support marriage intention confirmation using an emotion engine;
[2075] 10. The system of claim 1, comprising:
[2076] (Claim 3)
[2077] a means for the server to analyze user preferences using machine learning algorithms;
[2078] means for generating a scored list of match candidates based on user preferences;
[2079] a means for integrating sentiment analysis data to score candidate matches;
[2080] 10. The system of claim 1, comprising: [Explanation of symbols]
[2081] 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 a user to enter authentication information; A means for the server to verify the authentication information and acquire the user's past search history and usage history; A means for the server to analyze the acquired data and generate matching candidates based on the user's preferences; a means for displaying the generated match candidates on a user terminal by the server; A means for the user to select a candidate of interest from the displayed match candidates and start chatting with the candidate; A system including:
2. A means for a user to select a matchmaking mode; A means for the server to confirm whether or not a user who has selected the matchmaking mode intends to get married; A means for preferentially displaying users who are willing to get married as match candidates; The system of claim 1 , comprising:
3. a means for the server to analyze user preferences using machine learning algorithms; means for generating a match candidate list scored based on user preferences; The system of claim 1 , comprising:
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A