System
The system addresses the challenge of unreliable connections by collecting user data, clustering similar profiles, and using chatbots to facilitate conversations, ensuring users meet others with shared interests and values, thereby reducing loneliness and stress.
Patent Information
- Application Number
- JP2024124036
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-30
- Publication Date
- 2026-02-12
AI Technical Summary
Current platforms fail to effectively match individuals based on their values and interests, leading to difficulty in forming reliable connections and increasing feelings of loneliness and stress.
A system that collects user information, generates profiles, clusters similar users, and facilitates communication through a chatbot to promote conversations, while using feedback to improve the system.
Enables reliable encounters and trustworthy relationships by matching users based on shared values and interests, enhancing user satisfaction through real-time profile updates and conversation support.
Smart Images

Figure 2026022519000001_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] Meeting people plays an important role in work and life, but the current situation is that making good connections often depends on luck. Furthermore, current platforms such as social media give an advantage to those who actively use them, making it difficult to make reliable connections. This makes it difficult to find people who share your values and interests, which can lead to increased feelings of loneliness and stress. This project aims to solve these problems and turn chance encounters into inevitability. [Means for solving the problem]
[0005] This invention provides a means for collecting basic information entered by users and storing it in a database. It also includes a means for presenting questions about the user's interests, values, and hobbies and collecting the answers. It also provides a means for generating a user profile using the collected data and storing it in a database. It also includes a means for monitoring and collecting users' daily conversations and uploaded content, and a means for analyzing the collected data and updating the user profile. It also includes a means for clustering multiple user profiles and matching highly similar users, and a means for making meeting suggestions to matched users. If the suggestion is accepted, it also includes a means for providing an environment for users to communicate with each other, and a means for providing a chatbot to promote conversations between users. It also provides a means for collecting user satisfaction, analyzing feedback, and using the information to improve the system. This makes it easier for people who share values and interests to meet, creating an environment where trustworthy relationships can be built.
[0006] A "user" is an individual who uses the system, inputs basic information, interests, and values, and seeks to meet other users.
[0007] "Basic information" is basic data about a user, including name, email address, password, etc.
[0008] "Interests, values, and hobbies" refers to the themes and activities that interest a user, as well as the thoughts and beliefs that the person holds dear.
[0009] A "database" is a system for centrally managing and storing collected user information and generated profiles.
[0010] A "user profile" is a model of a user that is generated based on collected basic information, interests, values, and hobbies, and is used to match users with other users.
[0011] "Clustering" is a technique for analyzing multiple user profiles and grouping users who have high similarities.
[0012] "Matching" is the process of selecting the most compatible users from the clustered user profiles and proposing a meeting.
[0013] "Meeting suggestions" refers to providing matched users with opportunities to meet, such as events or activities based on shared interests or values.
[0014] "Communication environment" refers to providing a virtual space (e.g., chat room or messaging app) where matched users can interact with each other safely and effectively.
[0015] A "chatbot" is an automated response program that uses AI to facilitate conversations between users and keep them running smoothly.
[0016] "Feedback" refers to opinions and thoughts about satisfaction and areas for improvement obtained from users, and is used to help improve the system. [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] This invention relates to a system that utilizes AI to support users in finding reliable encounters based on their values and interests. Specific embodiments for carrying out the invention are described below.
[0039] 1. User registration and initial settings
[0040] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[0041] The server receives the user's basic information and stores it in a database. Passwords are hashed and stored securely.
[0042] 2. Create a user profile
[0043] The device will ask the user questions about their interests, values, and hobbies. Questions can be formatted in a variety of ways, including pull-down menus and text input.
[0044] The user enters an answer, which is then sent to the server.
[0045] The server receives the response and stores it in a database, which creates an initial user profile.
[0046] 3. Data collection and model updating
[0047] The device monitors users' everyday conversations, uploaded images, and shared content, collecting data in real time.
[0048] The server analyzes the collected data and updates the user profile daily. Text analysis technology is used to extract keywords and context from the conversation and incorporate them into the model.
[0049] 4. Clustering and Matching
[0050] The server performs a clustering process based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[0051] The server will select the best match within the cluster, and similarly for new users, they will be added to an existing cluster.
[0052] 5. Dating suggestions and setup
[0053] The server will then make suggestions for meeting users, using email and app notifications to suggest events and activities based on shared interests.
[0054] If the user approves the proposal, the device creates a communication environment (e.g., a private chat room), sets the date and time, and sends a confirmation message.
[0055] 6. Facilitating conversations and providing feedback
[0056] The chatbot AI will join the chat room and pose questions and topics at appropriate times to encourage conversation, such as suggesting, "Let's talk about your recent hobbies."
[0057] Users can chat and enjoy meeting each other.
[0058] After the conversation ends, the device displays a satisfaction survey and collects feedback from the user.
[0059] 7. Feedback and Improvement
[0060] The user answers the questionnaire and the answers are sent to the server.
[0061] The server analyzes the survey results and stores them in a database. Feedback is used to improve the algorithm and the overall system.
[0062] Specific examples
[0063] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then saved in the database. User A then answers a questionnaire stating that he / she likes movies, specifically horror movies. An initial user profile is generated based on this information.
[0064] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[0065] The server discovers that User B is also interested in zombie movies and matches User A and User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[0066] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" When the conversation ends, a survey will be displayed and users A and B will provide feedback on their satisfaction. This feedback will be stored on the server and used to improve the system.
[0067] The above is a specific embodiment for carrying out the invention. This system allows users to make reliable encounters with people who share their values and interests.
[0068] The processing flow will be explained below.
[0069] Step 1:
[0070] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[0071] The terminal collects the input information and sends it to the server.
[0072] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[0073] Step 2:
[0074] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[0075] The terminal displays a question form to the user and prompts the user to enter an answer.
[0076] The user answers the questions and submits the data.
[0077] The server receives the response data, generates an initial user profile, and stores it in a database.
[0078] Step 3:
[0079] The device collects the user's daily activities, such as chat content and uploaded content.
[0080] Every time a user chats or shares content, the device sends this data to the server.
[0081] The server analyzes the collected data in real time, extracts keywords and context using text analysis technology, and updates the user profile.
[0082] Step 4:
[0083] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[0084] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[0085] Step 5:
[0086] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[0087] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[0088] Step 6:
[0089] The server invites chatbot AI to join the chat room to promote conversations between users.
[0090] Chatbot AI prompts questions and topics at the right time to stimulate conversation.
[0091] For example, suggest, "Let's talk about a movie you recently saw."
[0092] Step 7:
[0093] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[0094] The user answers the questionnaire and the answers are sent to the server.
[0095] The server receives the survey results and stores them in a database. Analysis of the results will be used to improve the system.
[0096] Through these steps, the system helps users make reliable connections with people who share their values and interests.
[0097] Example 1
[0098] 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."
[0099] In modern society, there are many systems that allow users to find reliable encounters, but most of them do not adequately match users based on their interests and values, making it difficult for users to find satisfying encounters. Another problem is that user profiles are not updated in real time, making it difficult for them to reflect daily activities. Furthermore, there is a lack of support to smoothly advance conversations after matching, which can lead to a decrease in conversation satisfaction.
[0100] 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.
[0101] In this invention, the server includes means for collecting basic information entered by users and saving it in a database, means for asking users questions about their interests, values, and hobbies and collecting their responses, means for generating user profiles using the collected data and saving them in a database, means for monitoring and collecting users' daily conversations and uploaded content, means for analyzing the collected data and updating the user profiles, means for clustering multiple user profiles and matching highly similar users, means for making meeting suggestions to matched users, means for providing an environment for users to communicate with each other if the suggestions are accepted, means for providing an automatic conversation generation device to promote conversations between users, and means for collecting user satisfaction levels, analyzing feedback, and using the information to improve the system. This makes it possible to provide reliable encounters based on users' interests and values in real time, thereby improving the satisfaction of encounters.
[0102] "Basic information" refers to information used to identify an individual, such as a name, email address, and password, that a user enters when creating a new account.
[0103] "Database" refers to a large information collection system that the system uses to manage and store basic information and profile information of users.
[0104] "Interests, values, and hobbies" refers to personal information such as a user's particular interests, beliefs, and activities they enjoy in their leisure time.
[0105] "Presenting a question" refers to the act of displaying a question to prompt the user to input or select specific information.
[0106] "Collecting answers" refers to the act of obtaining data entered by users in response to questions presented to them.
[0107] A "user profile" is a collection of individual information data generated based on a user's basic information, interests, values, hobbies, activity history, and the like.
[0108] "Daily conversation" refers to communication activities that users engage in in their normal daily lives.
[0109] "Uploaded Content" is any digital data, such as images, text, or video, that a user uploads to the system.
[0110] "Monitoring" means that the system constantly observes the user's activities and input data and automatically collects the necessary data.
[0111] "Analyzing" means to analyze collected data in detail and process it to find specific patterns or meanings.
[0112] "Clustering" refers to the act of classifying multiple user profiles based on their mutual similarities and grouping them together.
[0113] "Similarity" refers to the degree of commonality between users in characteristics such as interests, values, and hobbies.
[0114] "Matching" refers to the act of selecting users who have high similarities as candidates for meeting.
[0115] "Making suggestions for meeting people" refers to the act of recommending events or activities to matched users to encourage new encounters.
[0116] A "communication environment" is an online platform or system that allows users to converse and exchange messages in real time.
[0117] The "automatic conversation generation device" is a function in which AI automatically generates and provides questions and topics to facilitate smooth conversations between users.
[0118] "Satisfaction" refers to the degree of satisfaction a user has with the service provided.
[0119] "Feedback" refers to evaluations and opinions about the system provided by users, and is data used for improvement and optimization.
[0120] This invention is a system that utilizes AI to help users find reliable encounters, and detailed implementation methods are described below.
[0121] Hardware and software used
[0122] To implement this system, a server, a terminal, a database, and a generative AI model are required. Specific software includes a natural language processing library, a machine learning algorithm (e.g., K-means clustering), a database management system (e.g., MySQL), and a chatbot AI.
[0123] System configuration description
[0124] 1. User registration and initial settings
[0125] A user accesses the system using a terminal and creates a new account by entering basic information such as name, email address, and password.
[0126] The server receives the user's basic information, hashes the password for safe storage, and stores it in a database, ensuring security against external attacks.
[0127] 2. Create a user profile
[0128] The device prompts the user with questions about their interests, values, and hobbies, which are presented in a variety of ways, including through pull-down menus and text input.
[0129] The user answers the questions and the answers are sent to the server.
[0130] The server stores the received answers in a database and generates a user profile.
[0131] 3. Data collection and model updating
[0132] The device monitors users' daily conversations, uploaded images, and shared content, collecting data such as chat logs and metadata about uploaded images.
[0133] The data collected by the server is analyzed using natural language processing technology to extract keywords and context.
[0134] The server updates user profiles daily based on the analysis results. For example, if a user frequently posts comments about movies, their interests will be reflected in their profile.
[0135] 4. Clustering and Matching
[0136] The server uses a machine learning algorithm to perform clustering based on all user profiles, which allows users with high similarities to be grouped into the same cluster.
[0137] The server selects the best matching candidate within each cluster and notifies the user of the result.
[0138] 5. Dating suggestions and setup
[0139] The server then suggests events and activities for matched users to meet, for example, sending a notification saying, "Would you like to join us at a movie screening this weekend?"
[0140] If the user approves the proposal, the server will create a dedicated chat room and set details such as the date, time, and topic.
[0141] 6. Facilitating conversations and providing feedback
[0142] The terminal invites users to join the chat room and prompts them to start a conversation.
[0143] The chatbot AI asks questions such as "Let's talk about your recent hobbies" during the conversation, allowing the conversation to progress naturally.
[0144] After users have enjoyed the conversation, a satisfaction survey is displayed when the chat room ends.
[0145] The user answers the questionnaire and the results are sent to the server.
[0146] Specific examples
[0147] For example, User A accesses the system and creates a new account. User A enters his / her name, email address, and password, which are saved on the server. Next, User A answers questions about his / her interests and enters that he / she likes movies.
[0148] Every day, when User A posts comments and reviews about movies, the server collects that data, analyzes it, and updates the profile of User A. Through the analysis, it is discovered that User A is particularly interested in zombie movies, and that User B has the same interest.
[0149] The server matches User A and User B and sends them a proposal saying, "Would you like to join us for a zombie movie screening this weekend?" If both parties accept the proposal, a private chat room is created and the chatbot AI prompts them with questions such as, "What zombie movie have you seen recently?" to encourage conversation.
[0150] The above is a specific embodiment for carrying out the present invention.
[0151] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0152] Step 1: User registration and initial setup
[0153] Input: The user enters their name, email address, and password through the terminal.
[0154] Specific operation: The user enters the basic information required to create a new account from the device and clicks the "Register" button.
[0155] Data processing: The server receives the entered data and hashes the password, for example using the bcrypt library.
[0156] Output: Hashed password and basic information stored securely in a database. User is sent a registration confirmation email.
[0157] Step 2: Create a user profile
[0158] Input: The user answers questions about their interests, values, and hobbies.
[0159] Specific operation: The user enters an answer to the question form presented by the terminal and clicks the "Submit" button.
[0160] Data processing: The server receives the user's answers and stores them in a database. The text data is converted into structured data.
[0161] Output: An initial user profile is generated and stored in the database.
[0162] Step 3: Data collection and model updating
[0163] Input: Data such as your everyday conversations, uploaded images, and shared content.
[0164] Specific operation: The device monitors and collects user activity data in real time.
[0165] Data processing: The data collected by the server is analyzed using natural language processing technology (e.g., spaCy or nltk library) to extract keywords and context.
[0166] Output: The analysis results are reflected in the user profile, and the updated profile is saved in the database.
[0167] Step 4: Clustering and matching
[0168] Input: All user profile data.
[0169] Specific operation: The server performs clustering based on the user profile. The clustering is performed using the K-means algorithm.
[0170] Data processing: Calculate similarity indices and classify users into appropriate clusters.
[0171] Output: Identify highly similar users within the cluster and select matching candidates.
[0172] Step 5: Propose and set up a meeting
[0173] Input: Matched user's profile data.
[0174] Specific behavior: The server will suggest events and activities to matched users. Suggestions will be sent via email and in-app notifications.
[0175] Data processing: A generative AI model is used to generate the proposals.
[0176] Output: If the user accepts the proposal, a private chat room will be created and the user will be notified with details.
[0177] Step 6: Facilitating conversation and feedback
[0178] Input: Chat data between matched users.
[0179] Specific behavior: The device invites the user to the generated chat room and starts chatting. The chatbot AI provides questions and topics to encourage the conversation.
[0180] Data processing: The chatbot analyzes the user's conversation and generates prompts at the appropriate time.
[0181] Output: The user enjoys the conversation and is shown a satisfaction survey after the conversation ends.
[0182] Step 7: Feedback and Improvement
[0183] Input: User satisfaction survey data.
[0184] Specific action: The user answers the survey and clicks the submit button.
[0185] Data processing: The server receives the survey results and stores them in a database. The feedback data is analyzed to identify areas for improvement in the system.
[0186] Output: The collected feedback is used to improve the system's algorithms and interface.
[0187] (Application example 1)
[0188] 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."
[0189] Conventional dating systems match users based on their interests and values, but especially in the food delivery field, they do not perform advanced matching that takes into account users' food preferences or restaurant information. This makes it difficult to provide users with truly satisfying encounters and dining experiences. There is also a lack of effective ways to promote communication between users.
[0190] 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.
[0191] In this invention, the server includes a means for collecting basic information entered by the user and storing it in a database, a means for asking questions about the user's interests, values, and hobbies and collecting the answers, and a means for creating a user profile using the collected data and storing it in a database, thereby enabling the user to have truly satisfying encounters and dining experiences.
[0192] The server also includes a means for monitoring and collecting users' daily conversations and uploaded content, a means for analyzing the collected data and updating user profiles, and a means for clustering multiple user profiles and matching users with high similarities, thereby enabling highly accurate matching.
[0193] The server also includes a means for suggesting dishes and restaurants to matched users based on the user's food preferences and interests, a means for providing an environment for users to communicate with each other if the suggestion is accepted, a means for providing a chatbot to promote conversations between users, and a means for collecting user satisfaction levels, analyzing feedback, and using the collected feedback to improve the system. This effectively promotes communication between users and increases overall satisfaction.
[0194] "Basic information" refers to basic identification information entered by the user, such as name, email address, and password.
[0195] "Interests and values" is information about a user's specific interests, beliefs, and preferences.
[0196] "Hobbies" are activities or interests that a user enjoys in their private time.
[0197] A "database" is a system for systematically storing and managing collected information.
[0198] A "user profile" is a collection of information including a user's interests, values, hobbies, basic information, and so on.
[0199] "Clustering" is a technical method for grouping similar data.
[0200] "Matching" is the process of connecting users who have similarities with each other.
[0201] "Food preferences" are specific cuisines or types of food that a user likes.
[0202] A "restaurant" is a commercial establishment that serves food and beverages.
[0203] A "communication environment" refers to an online space where users can interact and exchange information.
[0204] A "chatbot" is a program that uses AI to automatically converse with users.
[0205] "Satisfaction" refers to the degree of satisfaction a user feels with a service or proposal.
[0206] "Feedback" refers to reactions based on opinions and ratings provided by users.
[0207] The present invention provides a system that utilizes AI to support users in finding reliable encounters based on their values and interests. Specific embodiments for implementing the present invention are described below.
[0208] 1. Hardware and Software Used
[0209] Hardware: Server computers, smartphones
[0210] Software: Python, Flask (web framework), scikit-learn (machine learning library), database (e.g., Redis or MongoDB)
[0211] 2. System Overview
[0212] User device: The device that a user accesses and enters basic information and interests.
[0213] Server: A server computer that works with databases, analyzes data, and performs clustering and matching.
[0214] Database: A system for storing user information and profile data.
[0215] 3. Program processing explanation
[0216] The user uses the device to input basic information, hobbies, and interests, which is then sent to the server and stored in a database.
[0217] The server uses text analysis technology to extract keywords and context from user conversations and uploaded content, and uses this data to generate and update user profiles.
[0218] To generate and update user profiles, we use scikit-learn's KMeans to perform clustering and match users with high similarity.
[0219] Matched users will be offered suggestions for dishes and restaurants based on their food preferences and interests. The suggestions are sent from the server to the device, and if the user approves, a communication environment will be provided.
[0220] Chatbots join the conversation, offering questions and topics that will drive the conversation at the right time.
[0221] Finally, user satisfaction feedback is collected and stored in a database, which is used to improve the algorithm and the overall system.
[0222] 4. Specific Examples
[0223] For example, User A accesses the system and creates an account. User A specifies in his profile that he is interested in sushi and Japanese food. The system clusters User B, who is also interested in Japanese food, and performs matching. The server proposes a "dinner meeting at a nearby Japanese restaurant" to both users, and if Users A and B accept, a communication environment is created. A chatbot joins the conversation, asking questions such as "What Japanese food have you liked recently?" After the conversation ends, Users A and B provide feedback on their satisfaction, which is used to improve the system.
[0224] 5. Examples of prompts
[0225] "If a user is interested in Japanese food, how can we use that information to match them with other users who also love Japanese food and suggest nearby Japanese restaurants?"
[0226] The above is a specific embodiment for carrying out the present invention. This system allows users to make reliable encounters with people who share their values and interests.
[0227] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0228] Step 1:
[0229] The user enters basic information at the terminal.
[0230] What happens: A user enters basic information such as name, email address, and password, and submits the registration form.
[0231] Input: User's name, email address, and password
[0232] Output: Input is sent from the terminal to the server.
[0233] Data processing: The server hashes the received password and stores the user's basic information in the database.
[0234] Step 2:
[0235] The device asks the user questions about their interests, values, and hobbies.
[0236] Specific operation: The terminal displays questions in a questionnaire format, and the user enters answers.
[0237] Input: Answers about the user's interests, values, and hobbies
[0238] Output: The answer is sent from the device to the server.
[0239] Data processing: The server stores the received answers in a database and generates an initial user profile.
[0240] Step 3:
[0241] The server monitors and collects users' daily conversations and uploaded content.
[0242] What it does: When users chat or upload content, the server collects that data in real time.
[0243] Input: User conversation data, uploaded content
[0244] Output: The collected data is analyzed in the server.
[0245] Data processing: The server uses text analysis technology to extract keywords and context from the conversation and reflect this in the user profile.
[0246] Step 4:
[0247] The server clusters multiple user profiles and matches users with high similarities.
[0248] Specific operation: The server performs clustering processing based on all stored user profiles.
[0249] Input: All user profile data
[0250] Output: List of users in clusters with high similarity
[0251] Data processing: Use scikit-learn's KMeans to cluster and match user profiles.
[0252] Step 5:
[0253] The server will suggest dishes and restaurants to the matched user based on the user's food preferences and interests.
[0254] Specific operation: The server selects the appropriate restaurant and food, generates a notification message, and sends it to the user.
[0255] Input: Matched user profile, restaurant information
[0256] Output: Notifications suggesting dinner parties and restaurants
[0257] Data processing: Based on the suggestions, notifications will be sent via email or app notification functions.
[0258] Step 6:
[0259] If the proposal is approved, the server provides an environment for users to communicate with each other.
[0260] Specific behavior: When the user accepts the proposal, the server creates a dedicated chat room.
[0261] Input: User's proposal approval information
[0262] Output: Chat room URL and access information
[0263] Data processing: The server creates the chat room and provides access information to both users.
[0264] Step 7:
[0265] The server provides a chatbot to promote conversations between users.
[0266] What it does: The chatbot automatically joins the conversation, providing questions and topics at the right time.
[0267] Input: Chat room conversation data
[0268] Output: What the chatbot says
[0269] Data processing: The chatbot analyzes the conversation content and generates and poses appropriate questions and topics.
[0270] Step 8:
[0271] The server collects user satisfaction, analyzes the feedback, and uses it to improve the system.
[0272] Specific behavior: After the conversation ends, display a satisfaction survey and collect feedback from the user.
[0273] Input: User satisfaction survey responses
[0274] Output: Feedback result data
[0275] Data processing: The server analyzes the feedback and stores the results in a database to help improve the system and algorithms.
[0276] 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.
[0277] This invention relates to a system that utilizes AI to help users find trustworthy encounters and supports good encounters based on their values and interests. In particular, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state. Specific embodiments for implementing the invention are described below.
[0278] 1. User registration and initial settings
[0279] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[0280] The terminal collects the input information and sends it to the server.
[0281] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[0282] 2. Create a user profile
[0283] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[0284] The terminal displays a question form to the user and prompts the user to enter an answer.
[0285] The user answers the questions and submits the data.
[0286] The server receives the response data, generates an initial user profile, and stores it in a database.
[0287] 3. Data collection and model updating
[0288] The device collects the user's everyday conversations and uploaded content.
[0289] Every time a user chats or shares content, the device sends this data to the server.
[0290] The server analyzes the collected data in real time and uses text analysis technology to extract keywords and context.
[0291] The emotion engine recognizes the user's emotional state from the collected data and reflects it in the profile.
[0292] 4. Clustering and Matching
[0293] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[0294] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[0295] 5. Dating suggestions and setup
[0296] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[0297] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[0298] 6. Facilitating conversations and providing feedback
[0299] The server invites chatbot AI to join the chat room to promote conversations between users.
[0300] The chatbot AI poses questions and topics at the right time to stimulate conversation. It also takes into account the user's emotional state and makes suggestions such as, "You seem down lately. Shall we talk about your hobbies?"
[0301] Users can chat and enjoy meeting each other.
[0302] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[0303] 7. Feedback and Improvement
[0304] The user answers the questionnaire and the answers are sent to the server.
[0305] The server receives the survey results and stores them in a database. Analysis of the results will be used to improve the system.
[0306] Specific examples
[0307] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then saved in the database. User A then answers a questionnaire stating that he / she likes movies, specifically horror movies. An initial user profile is generated based on this information.
[0308] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[0309] The server discovers that User B is also interested in zombie movies and matches User A and User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[0310] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" Furthermore, if the emotion engine detects that User A has been feeling stressed recently, the chatbot AI will suggest, "I also recommend a relaxing movie."
[0311] After the conversation is over, a survey is displayed and users A and B provide feedback on their satisfaction. This feedback is stored on the server and used to improve the system.
[0312] The above is a concrete example of how to implement the invention by combining an emotion engine. This system allows users to connect with people who share their values and interests, and provides personalized approaches based on their emotional state.
[0313] The processing flow will be explained below.
[0314] Step 1:
[0315] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[0316] The terminal transmits the input information to the server.
[0317] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[0318] Step 2:
[0319] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[0320] The terminal displays a question form to the user and prompts the user to enter an answer.
[0321] The user answers the questions and submits the data.
[0322] The server receives the response data, generates an initial user profile, and stores it in a database.
[0323] Step 3:
[0324] The device collects the user's everyday conversations, uploaded images, and shared content.
[0325] The user generates these data and the terminal sends them to the server.
[0326] The server analyzes the collected data and uses text analysis techniques to extract keywords and contexts, updating the user profile.
[0327] Step 4:
[0328] The emotion engine recognizes the user's emotional state from the collected data, for example by extracting emotional indicators from text, voice, and image data and determining whether the emotion is positive or negative.
[0329] The server reflects the determined emotion information in the user profile and updates the profile.
[0330] Step 5:
[0331] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[0332] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[0333] Step 6:
[0334] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[0335] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[0336] Step 7:
[0337] The server invites chatbot AI to join the chat room to promote conversations between users.
[0338] The chatbot AI poses questions and topics at the right time to stimulate conversation. For example, if the user is feeling stressed, the emotion engine will suggest, "Why don't we talk about some hobbies that help you relax?"
[0339] Users can chat and enjoy meeting each other.
[0340] Step 8:
[0341] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[0342] The user answers the questionnaire and the answers are sent to the server.
[0343] The server receives the survey results and stores them in a database. The feedback is analyzed and used to improve the system.
[0344] Through these steps, the system helps users find reliable connections with people who share their values and interests, and the combination of an emotion engine enables personalized responses that take into account the user's emotional state.
[0345] Example 2
[0346] 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."
[0347] Conventional dating support systems often fail to fully consider the user's values and interests when matching, resulting in poor quality encounters. Furthermore, because they do not take into account the user's current emotional state, the user experience tends to be poor. This results in low user satisfaction. Furthermore, there are also problems with conversations not progressing smoothly after matching, or communication breaking down.
[0348] 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.
[0349] In this invention, the server includes means for collecting basic information entered by users and storing it in a database, means for presenting questions about the user's interests, values, and hobbies and collecting the answers, means for generating a user profile using the collected data and storing it in a database, means for monitoring and collecting users' daily conversations and uploaded content, means for analyzing the collected data and updating the user profile, means for clustering multiple user profiles and matching users with high similarities, means for making meeting suggestions to the matched users, means for providing an environment for users to communicate with each other if the suggestions are accepted, means for providing an interactive artificial intelligence for promoting conversations between users, means for collecting user satisfaction levels, analyzing the feedback, and using it to improve the system, means for including an emotion engine that recognizes emotional states, and means for personalizing conversations based on the emotional states. This enables high-quality meetings that take into account the user's values and interests and personalized communication according to the user's emotional states.
[0350] "Basic Information" refers to personal identification information such as name, email address, and password provided by a User when registering with the System.
[0351] "Questions" refers to a series of questions the system presents to understand the user's interests, values, and hobbies.
[0352] An "answer" refers to information provided by a user in response to a question.
[0353] "User Profile" refers to a data set that describes a user's characteristics, generated from collected basic information, interests, values, hobbies, and other data.
[0354] "Database" refers to data storage within a system for organizing and storing collected information.
[0355] "Daily conversation" refers to the daily text chat, message exchanges, and content sharing that users engage in within the system.
[0356] "Uploaded Content" refers to images, videos, text documents and other digital files that Users provide to the System.
[0357] "Monitoring" refers to the process by which the system automatically collects and analyzes users' everyday conversations and uploaded content.
[0358] "Clustering" refers to the process of calculating similarities based on multiple user profiles and grouping users.
[0359] "Matching" refers to the process of selecting highly compatible users from clustered user profiles and providing them with opportunities to meet.
[0360] "Suggestion" refers to an invitation to a matched user to participate in an event or activity based on a shared hobby or interest.
[0361] "Communication environments" refers to chat rooms and other digital communication tools that allow users to exchange messages with each other in real time.
[0362] "Conversational artificial intelligence" refers to a program that provides questions and topics at appropriate times to stimulate conversations between users.
[0363] "Satisfaction" refers to the degree of satisfaction a user feels with the system or encounters.
[0364] "Feedback" refers to evaluations and opinions about the system provided by users.
[0365] "Emotion engine" refers to a program that analyzes and recognizes the user's emotional state from collected data.
[0366] "Personalization" refers to the process of adjusting the functions and services provided by a system according to the characteristics and status of each individual user.
[0367] This invention is a system that utilizes artificial intelligence (AI) to support matching based on users' values and interests, so that users can find reliable encounters. Furthermore, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state.
[0368] User registration and initial settings
[0369] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password. This information is sent from the user's device to the server. The server stores the received information in a database. The password is hashed (e.g., using the bcrypt algorithm) and stored securely.
[0370] Creating a User Profile
[0371] The server generates a questionnaire about the interests, values, and hobbies of newly registered users and sends it to the terminal. The terminal displays the questionnaire to the user and prompts the user to enter answers. When the user answers the questions, the data is sent to the server. The server generates an initial user profile based on the received answer data and saves it in a database.
[0372] Data collection and model updates
[0373] Every time a user chats or shares content, the device collects this data and sends it to a server. The server analyzes the collected data in real time. Natural language processing (NLP) technology is used to extract keywords and context from the text, and an emotion engine recognizes the user's emotional state. This information is used to update the profile, enabling more accurate matching.
[0374] Clustering and Matching
[0375] The server performs a clustering process based on all user profiles. Specifically, it applies a clustering algorithm (e.g., k-means or DBSCAN) to group users based on similar characteristics. The best matching candidate within the cluster is selected, and new users are added to the cluster in the same way.
[0376] Dating suggestions and setup
[0377] The server sends matchmaking suggestions to potential users. Specifically, it uses email and app notifications to suggest events and activities based on mutual hobbies and interests. When a user accepts a suggestion, the information is sent to the user's device and a dedicated chat room is created.
[0378] Facilitating conversations and feedback
[0379] The server invites conversational artificial intelligence (AI) into the chat room to promote conversation between users. The chatbot AI provides questions and topics at appropriate times to stimulate conversation. For example, it might ask questions such as, "What movie have you seen recently?" The emotion engine also detects the user's emotional state and makes suggestions such as, "Are you feeling stressed lately? I recommend a relaxing movie." Once the conversation ends, the device displays a satisfaction survey to the user and collects feedback.
[0380] Feedback and Improvements
[0381] When a user answers a survey, the results are sent to a server, which receives the feedback and stores it in a database. This feedback can be analyzed to improve the system, for example, by adjusting the matching algorithm based on the feedback to improve the user experience.
[0382] Specific examples
[0383] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then stored in the database. User A then answers a questionnaire stating that he / she likes movies, and specifically enters that he / she likes horror movies. Based on this, an initial user profile is generated.
[0384] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[0385] The server discovers that User B is also interested in zombie movies and matches User A with User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[0386] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" Furthermore, if User A has been feeling stressed recently based on the emotion engine, the chatbot AI will suggest, "I also recommend a relaxing movie."
[0387] After the conversation ends, a survey is displayed and users A and B provide feedback on their level of satisfaction. This feedback is stored on the server and used to improve the system.
[0388] The system allows users to connect with people who share their values and interests with confidence, and provides a personalized approach based on their emotional state.
[0389] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0390] Step 1:
[0391] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password into an input form in a browser or mobile app (input: name, email address, password). The device collects this information and sends it to the server in an encrypted form using the HTTPS protocol (output: encrypted user information).
[0392] Step 2:
[0393] The server receives and parses the basic information sent by the user (input: encrypted user information, output: parsed user information), then hashes the password (e.g. using the bcrypt algorithm) and stores it in the database (input: parsed user information, output: hashed password and other registration information).
[0394] Step 3:
[0395] The server generates a question form for a newly registered user about their interests, values, and hobbies (input: newly registered user data, output: generated question form). The device displays the question form to the user and prompts them to answer (input: generated question form, output: displayed question form).
[0396] Step 4:
[0397] The user answers questions about their interests and values and sends the data (input: question form, output: answer data). The device then sends the collected answer data to the server (input: answer data, output: answer data sent to the server).
[0398] Step 5:
[0399] The server receives and analyzes the user's response data (input: response data sent to the server, output: analyzed response data). Based on that data, it generates an initial user profile and saves it in a database (input: analyzed response data, output: initial user profile).
[0400] Step 6:
[0401] The device collects the user's daily conversations and uploaded content in real time (input: daily conversation data, content data; output: collected data). Every time the user chats or shares content, the device sends this data to the server (input: collected data; output: data sent to the server).
[0402] Step 7:
[0403] The server receives the collected data and analyzes it using natural language processing (NLP) technology (input: data sent to the server, output: text analysis results). Next, the emotion engine recognizes the user's emotional state and reflects the results in the user profile (input: text analysis results, output: updated user profile).
[0404] Step 8:
[0405] The server performs clustering based on all user profiles (input: all user profiles, output: clustering results). It applies a clustering algorithm (e.g., k-means or DBSCAN) to group users based on similar characteristics (output: user data classified into each cluster).
[0406] Step 9:
[0407] The server matches highly compatible users within the cluster (input: clustering results, output: matching candidates). It evaluates compatibility using a machine learning model (e.g., Support Vector Machine or Random Forest) and selects the optimal combination (output: selected matching users).
[0408] Step 10:
[0409] The server proposes a meeting to the matched user and notifies them via email or the app's notification function (input: selected matched user, output: meeting proposal notification). When the user accepts the proposal, the information is sent to the device and a dedicated chat room is created (input: proposal acceptance notification, output: creation of dedicated chat room).
[0410] Step 11:
[0411] To promote conversations between users, the server invites conversational artificial intelligence (AI) to participate in the chat room (input: dedicated chat room, output: participation of conversational AI). The chatbot AI provides questions and topics at appropriate times to stimulate conversations (input: user-synchronized conversation data, output: questions and topics generated by the AI).
[0412] Step 12:
[0413] Conversational AI makes personalized suggestions based on the user's emotional state (input: emotional state data, output: personalized suggestions). For example, if the user is feeling stressed, it will make specific suggestions such as "I also recommend a relaxing movie" (output: specific suggestions).
[0414] Step 13:
[0415] When the conversation ends, the device displays a satisfaction survey to the user and collects feedback (input: conversation end data, output: satisfaction survey). When the user answers the survey, the results are sent to the server (input: survey responses, output: data sent to the server).
[0416] Step 14:
[0417] The server receives and analyzes the survey results (input: submitted data, output: analysis results). The feedback results are used to improve system performance and user experience (input: analysis results, output: system improvement proposals). For example, specific improvement measures are implemented, such as adjusting the matching algorithm based on the feedback (output: improved system).
[0418] (Application example 2)
[0419] 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."
[0420] Conventional dating services struggle to provide reliable matches based on users' values and interests. Furthermore, they lack a means to provide a personalized experience that takes into account the user's emotional state, making it difficult to increase user satisfaction. Furthermore, they lack effective communication promotion methods to facilitate smooth encounters in virtual spaces.
[0421] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes: means for collecting basic information entered by a user and storing it in a database; means for presenting questions about the user's interests, values, and hobbies and collecting the answers; means for generating a user profile using the collected data and storing it in a database; means for monitoring and collecting users' daily conversations and uploaded content; means for analyzing the collected data and updating the user profile; means for clustering multiple user profiles and matching highly similar users; means for proposing interactions in a virtual space and setting up virtual dating events; means for providing an environment for users to communicate with each other in a virtual space if the proposal is approved; means for providing a computer program for promoting conversations between users; and means for collecting user satisfaction levels, analyzing feedback, and using the results to improve the system. This allows users to have reliable encounters and provides a personalized experience that takes emotional states into account. It also promotes effective communication in a virtual space and increases user satisfaction.
[0422] "Basic information" refers to data used to identify an individual, such as name, email address, and password, that a user provides when registering.
[0423] "Questions" are provided in the form of a questionnaire or interview that the system presents to clarify the user's interests, values, and hobbies.
[0424] A "user profile" is information generated based on collected data that summarizes the characteristics of an individual user, reflecting their interests, values, and hobbies.
[0425] A "conversation" is a communication exchange using text messages or voice that a user engages in on a daily basis.
[0426] "Content" refers to media and text data such as photos, videos, and articles uploaded by users.
[0427] "Analysis" is the process of extracting and analyzing keywords and context from collected data using text analysis techniques.
[0428] "Clustering" is the process of grouping users with similar characteristics based on their user profiles.
[0429] "Matching" is the process of connecting highly similar users with each other through clustering.
[0430] A "virtual space" is a virtual environment on the Internet where users can interact with each other through avatars and other means.
[0431] A "virtual dating event" is an event held in a virtual space where users participate in activities based on common interests or hobbies.
[0432] A "computer program" is software that operates to facilitate conversations between users and has the ability to provide questions and topics.
[0433] "Feedback" refers to the impressions and evaluations that users provide to the system after use, and is data used to improve the system.
[0434] This invention utilizes AI to help users find trustworthy encounters and supports good encounters based on their values and interests. In particular, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state.
[0435] The system includes the following specific steps:
[0436] 1. Basic information collected and stored:
[0437] The user enters basic information such as name, email address, and password at the device, which is hashed and securely stored in a database.
[0438] 2. Posting questions and collecting answers:
[0439] The server asks new users questions about their interests, values, and hobbies, and the users answer the questions via their devices, and the data is sent to the server.
[0440] 3. Create and save your user profile:
[0441] Based on the collected data, the server generates a user profile and stores it in a database, which reflects the user's interests, values, and emotional state.
[0442] 4. Routine data collection and analysis:
[0443] The server monitors and collects users' daily conversations and uploaded content, and the collected data is processed using text analysis techniques to extract keywords and context.
[0444] 5. Clustering and Matching:
[0445] The server performs clustering based on all user profiles, groups users with high similarities, and then selects the most suitable match candidate within the cluster.
[0446] 6. Virtual dating event suggestions:
[0447] The server proposes to the matched users that they interact in a virtual space and sets up virtual meeting events.
[0448] 7. Providing a communication environment in virtual space:
[0449] If the proposal is approved, the server provides an environment for users to communicate with each other in a virtual space.
[0450] 8. Chatbots facilitate conversations:
[0451] The server uses chatbot AI to facilitate conversations between users, and the chatbot takes into account the user's emotional state and suggests appropriate questions and topics.
[0452] 9. Satisfaction data collection and system improvement:
[0453] After a user finishes a virtual dating event, the server displays and collects a satisfaction survey, which is then analyzed and used to improve the system.
[0454] Hardware and software used
[0455] Database: We use SQLite to store user information, profiles and feedback.
[0456] Text Analysis: Analyzes text for sentiment scores and keywords using Natural Language Toolkit (NLTK) and TextBlob.
[0457] Emotion Engine: Parses emotional state using TextBlob.
[0458] Communication: Data transmission from the device to the server using HTTP / HTTPS protocols.
[0459] Chatbot: A chatbot program implemented in Python is used.
[0460] Specific examples
[0461] For example, when User A accesses the system and creates an account, he or she enters his or her name, email address, and password. This information is stored in the database. User A then answers questions about his or her interests, values, and hobbies. An initial user profile is generated based on this information.
[0462] When User A uploads conversations and content on a daily basis, the data is analyzed in real time and their profile is updated. The server then matches User B with User A and proposes a virtual meeting event. If the proposal is approved, a dedicated chat room is created and a chatbot AI facilitates the conversation.
[0463] A concrete example of a conversation is as follows:
[0464] User A: "I love sports, especially soccer."
[0465] System: "I know someone who likes soccer too. Would you like to talk with me?"
[0466] User A: "I haven't been feeling very energetic lately."
[0467] System (Chatbot AI): "It's also a good idea to relax. What movie have you seen recently?"
[0468] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0469] Step 1:
[0470] Basic information collected and stored:
[0471] The user uses a device to enter basic information such as name, email address, and password. The device sends the entered information to the server. The server hashes the received information and stores it in a database. The input of this step is the user's basic information, and the output is the user information securely stored in the database.
[0472] Step 2:
[0473] Ask questions and collect answers:
[0474] The server generates questions for new users about their interests, values, and hobbies, and sends them to the device. The device displays a question form to the user, and the user enters their answers. The entered answer data is sent from the device to the server, which receives and stores it. The input of this step is the answer data to the question, and the output is the stored answer data.
[0475] Step 3:
[0476] Creating and saving a user profile:
[0477] The server uses the collected basic information and response data to generate a user profile. The generated profile is saved in a database. In this step, data processing and analysis are performed based on the input basic information and response data, and the user profile is output and saved.
[0478] Step 4:
[0479] Routine data collection and analysis:
[0480] Users upload everyday conversations and content to their devices. The devices then send this data to the server. The server analyzes the received data in real time and uses an emotion engine to extract emotional states and keywords. The user profile is updated based on the analysis results. The input of this step is everyday conversations and content data, and the output is an updated user profile.
[0481] Step 5:
[0482] Clustering and Matching:
[0483] The server performs a clustering process based on all stored user profiles. It calculates similarity indices using text analysis and other methods to group users. It then selects the best matching candidates within each cluster. The input to this step is each user's profile data, and the output is matched user pairs.
[0484] Step 6:
[0485] Virtual dating event suggestions:
[0486] The server proposes a virtual social event to the matched users. Information about the event is sent to the users through their device's notification function. The users then approve the proposal. The input of this step is the matched user pair and event information, and the output is the event that the users approve of.
[0487] Step 7:
[0488] Providing a communication environment in a virtual space:
[0489] After the proposal is approved, the server generates a dedicated chat room for users to communicate with each other in the virtual space and sends the information to the terminal. The user logs in to the virtual space and starts communicating in the chat room. The input of this step is the approved event information, and the output is the generated chat room.
[0490] Step 8:
[0491] Chatbots drive conversations:
[0492] The server uses chatbot AI to facilitate conversations between users. The chatbot takes into account the user's emotional state and provides appropriate questions and topics. For example, it provides prompts such as, "You seem to be feeling down lately. Would you like to talk about some of your hobbies?" The input for this step is the conversation data between users, and the output is a prompting message from the chatbot.
[0493] Step 9:
[0494] Satisfaction data collection and system improvement:
[0495] When a user finishes a virtual dating event, the server displays a satisfaction survey on the user's device and collects responses. The collected feedback data is analyzed by the server and used to improve the system. The input of this step is the satisfaction survey responses, and the output is the analyzed feedback results.
[0496] 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.
[0497] 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.
[0498] 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.
[0499] [Second embodiment]
[0500] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0501] 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.
[0502] 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).
[0503] 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.
[0504] 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.
[0505] 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).
[0506] 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.
[0507] 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.
[0508] 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.
[0509] 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.
[0510] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0511] 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."
[0512] This invention relates to a system that utilizes AI to support users in finding reliable encounters based on their values and interests. Specific embodiments for carrying out the invention are described below.
[0513] 1. User registration and initial settings
[0514] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[0515] The server receives the user's basic information and stores it in a database. Passwords are hashed and stored securely.
[0516] 2. Create a user profile
[0517] The device will ask the user questions about their interests, values, and hobbies. Questions can be formatted in a variety of ways, including pull-down menus and text input.
[0518] The user enters an answer, which is then sent to the server.
[0519] The server receives the response and stores it in a database, which creates an initial user profile.
[0520] 3. Data collection and model updating
[0521] The device monitors users' everyday conversations, uploaded images, and shared content, collecting data in real time.
[0522] The server analyzes the collected data and updates the user profile daily. Text analysis technology is used to extract keywords and context from the conversation and incorporate them into the model.
[0523] 4. Clustering and Matching
[0524] The server performs a clustering process based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[0525] The server will select the best match within the cluster, and similarly for new users, they will be added to an existing cluster.
[0526] 5. Dating suggestions and setup
[0527] The server will then make suggestions for meeting users, using email and app notifications to suggest events and activities based on shared interests.
[0528] If the user approves the proposal, the device creates a communication environment (e.g., a private chat room), sets the date and time, and sends a confirmation message.
[0529] 6. Facilitating conversations and providing feedback
[0530] The chatbot AI will join the chat room and pose questions and topics at appropriate times to encourage conversation, such as suggesting, "Let's talk about your recent hobbies."
[0531] Users can chat and enjoy meeting each other.
[0532] After the conversation ends, the device displays a satisfaction survey and collects feedback from the user.
[0533] 7. Feedback and Improvement
[0534] The user answers the questionnaire and the answers are sent to the server.
[0535] The server analyzes the survey results and stores them in a database. Feedback is used to improve the algorithm and the overall system.
[0536] Specific examples
[0537] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then saved in the database. User A then answers a questionnaire stating that he / she likes movies, specifically horror movies. An initial user profile is generated based on this information.
[0538] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[0539] The server discovers that User B is also interested in zombie movies and matches User A and User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[0540] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" When the conversation ends, a survey will be displayed and users A and B will provide feedback on their satisfaction. This feedback will be stored on the server and used to improve the system.
[0541] The above is a specific embodiment for carrying out the invention. This system allows users to make reliable encounters with people who share their values and interests.
[0542] The processing flow will be explained below.
[0543] Step 1:
[0544] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[0545] The terminal collects the input information and sends it to the server.
[0546] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[0547] Step 2:
[0548] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[0549] The terminal displays a question form to the user and prompts the user to enter an answer.
[0550] The user answers the questions and submits the data.
[0551] The server receives the response data, generates an initial user profile, and stores it in a database.
[0552] Step 3:
[0553] The device collects the user's daily activities, such as chat content and uploaded content.
[0554] Every time a user chats or shares content, the device sends this data to the server.
[0555] The server analyzes the collected data in real time, extracts keywords and context using text analysis technology, and updates the user profile.
[0556] Step 4:
[0557] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[0558] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[0559] Step 5:
[0560] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[0561] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[0562] Step 6:
[0563] The server invites chatbot AI to join the chat room to promote conversations between users.
[0564] Chatbot AI prompts questions and topics at the right time to stimulate conversation.
[0565] For example, suggest, "Let's talk about a movie you recently saw."
[0566] Step 7:
[0567] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[0568] The user answers the questionnaire and the answers are sent to the server.
[0569] The server receives the survey results and stores them in a database. Analysis of the results will be used to improve the system.
[0570] Through these steps, the system helps users make reliable connections with people who share their values and interests.
[0571] Example 1
[0572] 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."
[0573] In modern society, there are many systems that allow users to find reliable encounters, but most of them do not adequately match users based on their interests and values, making it difficult for users to find satisfying encounters. Another problem is that user profiles are not updated in real time, making it difficult for them to reflect daily activities. Furthermore, there is a lack of support to smoothly advance conversations after matching, which can lead to a decrease in conversation satisfaction.
[0574] 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.
[0575] In this invention, the server includes means for collecting basic information entered by users and saving it in a database, means for asking users questions about their interests, values, and hobbies and collecting their responses, means for generating user profiles using the collected data and saving them in a database, means for monitoring and collecting users' daily conversations and uploaded content, means for analyzing the collected data and updating the user profiles, means for clustering multiple user profiles and matching highly similar users, means for making meeting suggestions to matched users, means for providing an environment for users to communicate with each other if the suggestions are accepted, means for providing an automatic conversation generation device to promote conversations between users, and means for collecting user satisfaction levels, analyzing feedback, and using the information to improve the system. This makes it possible to provide reliable encounters based on users' interests and values in real time, thereby improving the satisfaction of encounters.
[0576] "Basic information" refers to information used to identify an individual, such as a name, email address, and password, that a user enters when creating a new account.
[0577] "Database" refers to a large information collection system that the system uses to manage and store basic information and profile information of users.
[0578] "Interests, values, and hobbies" refers to personal information such as a user's particular interests, beliefs, and activities they enjoy in their leisure time.
[0579] "Presenting a question" refers to the act of displaying a question to prompt the user to input or select specific information.
[0580] "Collecting answers" refers to the act of obtaining data entered by users in response to questions presented to them.
[0581] A "user profile" is a collection of individual information data generated based on a user's basic information, interests, values, hobbies, activity history, and the like.
[0582] "Daily conversation" refers to communication activities that users engage in in their normal daily lives.
[0583] "Uploaded Content" is any digital data, such as images, text, or video, that a user uploads to the system.
[0584] "Monitoring" means that the system constantly observes the user's activities and input data and automatically collects the necessary data.
[0585] "Analyzing" means to analyze collected data in detail and process it to find specific patterns or meanings.
[0586] "Clustering" refers to the act of classifying multiple user profiles based on their mutual similarities and grouping them together.
[0587] "Similarity" refers to the degree of commonality between users in characteristics such as interests, values, and hobbies.
[0588] "Matching" refers to the act of selecting users who have high similarities as candidates for meeting.
[0589] "Making suggestions for meeting people" refers to the act of recommending events or activities to matched users to encourage new encounters.
[0590] A "communication environment" is an online platform or system that allows users to converse and exchange messages in real time.
[0591] The "automatic conversation generation device" is a function in which AI automatically generates and provides questions and topics to facilitate smooth conversations between users.
[0592] "Satisfaction" refers to the degree of satisfaction a user has with the service provided.
[0593] "Feedback" refers to evaluations and opinions about the system provided by users, and is data used for improvement and optimization.
[0594] This invention is a system that utilizes AI to help users find reliable encounters, and detailed implementation methods are described below.
[0595] Hardware and software used
[0596] To implement this system, a server, a terminal, a database, and a generative AI model are required. Specific software includes a natural language processing library, a machine learning algorithm (e.g., K-means clustering), a database management system (e.g., MySQL), and a chatbot AI.
[0597] System configuration description
[0598] 1. User registration and initial settings
[0599] A user accesses the system using a terminal and creates a new account by entering basic information such as name, email address, and password.
[0600] The server receives the user's basic information, hashes the password for safe storage, and stores it in a database, ensuring security against external attacks.
[0601] 2. Create a user profile
[0602] The device prompts the user with questions about their interests, values, and hobbies, which are presented in a variety of ways, including through pull-down menus and text input.
[0603] The user answers the questions and the answers are sent to the server.
[0604] The server stores the received answers in a database and generates a user profile.
[0605] 3. Data collection and model updating
[0606] The device monitors users' daily conversations, uploaded images, and shared content, collecting data such as chat logs and metadata about uploaded images.
[0607] The data collected by the server is analyzed using natural language processing technology to extract keywords and context.
[0608] The server updates user profiles daily based on the analysis results. For example, if a user frequently posts comments about movies, their interests will be reflected in their profile.
[0609] 4. Clustering and Matching
[0610] The server uses a machine learning algorithm to perform clustering based on all user profiles, which allows users with high similarities to be grouped into the same cluster.
[0611] The server selects the best matching candidate within each cluster and notifies the user of the result.
[0612] 5. Dating suggestions and setup
[0613] The server then suggests events and activities for matched users to meet, for example, sending a notification saying, "Would you like to join us at a movie screening this weekend?"
[0614] If the user approves the proposal, the server will create a dedicated chat room and set details such as the date, time, and topic.
[0615] 6. Facilitating conversations and providing feedback
[0616] The terminal invites users to join the chat room and prompts them to start a conversation.
[0617] The chatbot AI asks questions such as "Let's talk about your recent hobbies" during the conversation, allowing the conversation to progress naturally.
[0618] After users have enjoyed the conversation, a satisfaction survey is displayed when the chat room ends.
[0619] The user answers the questionnaire and the results are sent to the server.
[0620] Specific examples
[0621] For example, User A accesses the system and creates a new account. User A enters his / her name, email address, and password, which are saved on the server. Next, User A answers questions about his / her interests and enters that he / she likes movies.
[0622] Every day, when User A posts comments and reviews about movies, the server collects that data, analyzes it, and updates the profile of User A. Through the analysis, it is discovered that User A is particularly interested in zombie movies, and that User B has the same interest.
[0623] The server matches User A and User B and sends them a proposal saying, "Would you like to join us for a zombie movie screening this weekend?" If both parties accept the proposal, a private chat room is created and the chatbot AI prompts them with questions such as, "What zombie movie have you seen recently?" to encourage conversation.
[0624] The above is a specific embodiment for carrying out the present invention.
[0625] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0626] Step 1: User registration and initial setup
[0627] Input: The user enters their name, email address, and password through the terminal.
[0628] Specific operation: The user enters the basic information required to create a new account from the device and clicks the "Register" button.
[0629] Data processing: The server receives the entered data and hashes the password, for example using the bcrypt library.
[0630] Output: Hashed password and basic information stored securely in a database. User is sent a registration confirmation email.
[0631] Step 2: Create a user profile
[0632] Input: The user answers questions about their interests, values, and hobbies.
[0633] Specific operation: The user enters an answer to the question form presented by the terminal and clicks the "Submit" button.
[0634] Data processing: The server receives the user's answers and stores them in a database. The text data is converted into structured data.
[0635] Output: An initial user profile is generated and stored in the database.
[0636] Step 3: Data collection and model updating
[0637] Input: Data such as your everyday conversations, uploaded images, and shared content.
[0638] Specific operation: The device monitors and collects user activity data in real time.
[0639] Data processing: The data collected by the server is analyzed using natural language processing technology (e.g., spaCy or nltk library) to extract keywords and context.
[0640] Output: The analysis results are reflected in the user profile, and the updated profile is saved in the database.
[0641] Step 4: Clustering and matching
[0642] Input: All user profile data.
[0643] Specific operation: The server performs clustering based on the user profile. The clustering is performed using the K-means algorithm.
[0644] Data processing: Calculate similarity indices and classify users into appropriate clusters.
[0645] Output: Identify highly similar users within the cluster and select matching candidates.
[0646] Step 5: Propose and set up a meeting
[0647] Input: Matched user's profile data.
[0648] Specific behavior: The server will suggest events and activities to matched users. Suggestions will be sent via email and in-app notifications.
[0649] Data processing: A generative AI model is used to generate the proposals.
[0650] Output: If the user accepts the proposal, a private chat room will be created and the user will be notified with details.
[0651] Step 6: Facilitating conversation and feedback
[0652] Input: Chat data between matched users.
[0653] Specific behavior: The device invites the user to the generated chat room and starts chatting. The chatbot AI provides questions and topics to encourage the conversation.
[0654] Data processing: The chatbot analyzes the user's conversation and generates prompts at the appropriate time.
[0655] Output: The user enjoys the conversation and is shown a satisfaction survey after the conversation ends.
[0656] Step 7: Feedback and Improvement
[0657] Input: User satisfaction survey data.
[0658] Specific action: The user answers the survey and clicks the submit button.
[0659] Data processing: The server receives the survey results and stores them in a database. The feedback data is analyzed to identify areas for improvement in the system.
[0660] Output: The collected feedback is used to improve the system's algorithms and interface.
[0661] (Application example 1)
[0662] 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."
[0663] Conventional dating systems match users based on their interests and values, but especially in the food delivery field, they do not perform advanced matching that takes into account users' food preferences or restaurant information. This makes it difficult to provide users with truly satisfying encounters and dining experiences. There is also a lack of effective ways to promote communication between users.
[0664] 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.
[0665] In this invention, the server includes a means for collecting basic information entered by the user and storing it in a database, a means for asking questions about the user's interests, values, and hobbies and collecting the answers, and a means for creating a user profile using the collected data and storing it in a database, thereby enabling the user to have truly satisfying encounters and dining experiences.
[0666] The server also includes a means for monitoring and collecting users' daily conversations and uploaded content, a means for analyzing the collected data and updating user profiles, and a means for clustering multiple user profiles and matching users with high similarities, thereby enabling highly accurate matching.
[0667] The server also includes a means for suggesting dishes and restaurants to matched users based on the user's food preferences and interests, a means for providing an environment for users to communicate with each other if the suggestion is accepted, a means for providing a chatbot to promote conversations between users, and a means for collecting user satisfaction levels, analyzing feedback, and using the collected feedback to improve the system. This effectively promotes communication between users and increases overall satisfaction.
[0668] "Basic information" refers to basic identification information entered by the user, such as name, email address, and password.
[0669] "Interests and values" is information about a user's specific interests, beliefs, and preferences.
[0670] "Hobbies" are activities or interests that a user enjoys in their private time.
[0671] A "database" is a system for systematically storing and managing collected information.
[0672] A "user profile" is a collection of information including a user's interests, values, hobbies, basic information, and so on.
[0673] "Clustering" is a technical method for grouping similar data.
[0674] "Matching" is the process of connecting users who have similarities with each other.
[0675] "Food preferences" are specific cuisines or types of food that a user likes.
[0676] A "restaurant" is a commercial establishment that serves food and beverages.
[0677] A "communication environment" refers to an online space where users can interact and exchange information.
[0678] A "chatbot" is a program that uses AI to automatically converse with users.
[0679] "Satisfaction" refers to the degree of satisfaction a user feels with a service or proposal.
[0680] "Feedback" refers to reactions based on opinions and ratings provided by users.
[0681] The present invention provides a system that utilizes AI to support users in finding reliable encounters based on their values and interests. Specific embodiments for implementing the present invention are described below.
[0682] 1. Hardware and Software Used
[0683] Hardware: Server computers, smartphones
[0684] Software: Python, Flask (web framework), scikit-learn (machine learning library), database (e.g., Redis or MongoDB)
[0685] 2. System Overview
[0686] User device: The device that a user accesses and enters basic information and interests.
[0687] Server: A server computer that works with databases, analyzes data, and performs clustering and matching.
[0688] Database: A system for storing user information and profile data.
[0689] 3. Program processing explanation
[0690] The user uses the device to input basic information, hobbies, and interests, which is then sent to the server and stored in a database.
[0691] The server uses text analysis technology to extract keywords and context from user conversations and uploaded content, and uses this data to generate and update user profiles.
[0692] To generate and update user profiles, we use scikit-learn's KMeans to perform clustering and match users with high similarity.
[0693] Matched users will be offered suggestions for dishes and restaurants based on their food preferences and interests. The suggestions are sent from the server to the device, and if the user approves, a communication environment will be provided.
[0694] Chatbots join the conversation, offering questions and topics that will drive the conversation at the right time.
[0695] Finally, user satisfaction feedback is collected and stored in a database, which is used to improve the algorithm and the overall system.
[0696] 4. Specific Examples
[0697] For example, User A accesses the system and creates an account. User A specifies in his profile that he is interested in sushi and Japanese food. The system clusters User B, who is also interested in Japanese food, and performs matching. The server proposes a "dinner meeting at a nearby Japanese restaurant" to both users, and if Users A and B accept, a communication environment is created. A chatbot joins the conversation, asking questions such as "What Japanese food have you liked recently?" After the conversation ends, Users A and B provide feedback on their satisfaction, which is used to improve the system.
[0698] 5. Examples of prompts
[0699] "If a user is interested in Japanese food, how can we use that information to match them with other users who also love Japanese food and suggest nearby Japanese restaurants?"
[0700] The above is a specific embodiment for carrying out the present invention. This system allows users to make reliable encounters with people who share their values and interests.
[0701] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0702] Step 1:
[0703] The user enters basic information at the terminal.
[0704] What happens: A user enters basic information such as name, email address, and password, and submits the registration form.
[0705] Input: User's name, email address, and password
[0706] Output: Input is sent from the terminal to the server.
[0707] Data processing: The server hashes the received password and stores the user's basic information in the database.
[0708] Step 2:
[0709] The device asks the user questions about their interests, values, and hobbies.
[0710] Specific operation: The terminal displays questions in a questionnaire format, and the user enters answers.
[0711] Input: Answers about the user's interests, values, and hobbies
[0712] Output: The answer is sent from the device to the server.
[0713] Data processing: The server stores the received answers in a database and generates an initial user profile.
[0714] Step 3:
[0715] The server monitors and collects users' daily conversations and uploaded content.
[0716] What it does: When users chat or upload content, the server collects that data in real time.
[0717] Input: User conversation data, uploaded content
[0718] Output: The collected data is analyzed in the server.
[0719] Data processing: The server uses text analysis technology to extract keywords and context from the conversation and reflect this in the user profile.
[0720] Step 4:
[0721] The server clusters multiple user profiles and matches users with high similarities.
[0722] Specific operation: The server performs clustering processing based on all stored user profiles.
[0723] Input: All user profile data
[0724] Output: List of users in clusters with high similarity
[0725] Data processing: Use scikit-learn's KMeans to cluster and match user profiles.
[0726] Step 5:
[0727] The server will suggest dishes and restaurants to the matched user based on the user's food preferences and interests.
[0728] Specific operation: The server selects the appropriate restaurant and food, generates a notification message, and sends it to the user.
[0729] Input: Matched user profile, restaurant information
[0730] Output: Notifications suggesting dinner parties and restaurants
[0731] Data processing: Based on the suggestions, notifications will be sent via email or app notification functions.
[0732] Step 6:
[0733] If the proposal is approved, the server provides an environment for users to communicate with each other.
[0734] Specific behavior: When the user accepts the proposal, the server creates a dedicated chat room.
[0735] Input: User's proposal approval information
[0736] Output: Chat room URL and access information
[0737] Data processing: The server creates the chat room and provides access information to both users.
[0738] Step 7:
[0739] The server provides a chatbot to promote conversations between users.
[0740] What it does: The chatbot automatically joins the conversation, providing questions and topics at the right time.
[0741] Input: Chat room conversation data
[0742] Output: What the chatbot says
[0743] Data processing: The chatbot analyzes the conversation content and generates and poses appropriate questions and topics.
[0744] Step 8:
[0745] The server collects user satisfaction, analyzes the feedback, and uses it to improve the system.
[0746] Specific behavior: After the conversation ends, display a satisfaction survey and collect feedback from the user.
[0747] Input: User satisfaction survey responses
[0748] Output: Feedback result data
[0749] Data processing: The server analyzes the feedback and stores the results in a database to help improve the system and algorithms.
[0750] 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.
[0751] This invention relates to a system that utilizes AI to help users find trustworthy encounters and supports good encounters based on their values and interests. In particular, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state. Specific embodiments for implementing the invention are described below.
[0752] 1. User registration and initial settings
[0753] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[0754] The terminal collects the input information and sends it to the server.
[0755] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[0756] 2. Create a user profile
[0757] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[0758] The terminal displays a question form to the user and prompts the user to enter an answer.
[0759] The user answers the questions and submits the data.
[0760] The server receives the response data, generates an initial user profile, and stores it in a database.
[0761] 3. Data collection and model updating
[0762] The device collects the user's everyday conversations and uploaded content.
[0763] Every time a user chats or shares content, the device sends this data to the server.
[0764] The server analyzes the collected data in real time and uses text analysis technology to extract keywords and context.
[0765] The emotion engine recognizes the user's emotional state from the collected data and reflects it in the profile.
[0766] 4. Clustering and Matching
[0767] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[0768] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[0769] 5. Dating suggestions and setup
[0770] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[0771] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[0772] 6. Facilitating conversations and providing feedback
[0773] The server invites chatbot AI to join the chat room to promote conversations between users.
[0774] The chatbot AI poses questions and topics at the right time to stimulate conversation. It also takes into account the user's emotional state and makes suggestions such as, "You seem down lately. Shall we talk about your hobbies?"
[0775] Users can chat and enjoy meeting each other.
[0776] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[0777] 7. Feedback and Improvement
[0778] The user answers the questionnaire and the answers are sent to the server.
[0779] The server receives the survey results and stores them in a database. Analysis of the results will be used to improve the system.
[0780] Specific examples
[0781] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then saved in the database. User A then answers a questionnaire stating that he / she likes movies, specifically horror movies. An initial user profile is generated based on this information.
[0782] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[0783] The server discovers that User B is also interested in zombie movies and matches User A and User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[0784] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" Furthermore, if the emotion engine detects that User A has been feeling stressed recently, the chatbot AI will suggest, "I also recommend a relaxing movie."
[0785] After the conversation is over, a survey is displayed and users A and B provide feedback on their satisfaction. This feedback is stored on the server and used to improve the system.
[0786] The above is a concrete example of how to implement the invention by combining an emotion engine. This system allows users to connect with people who share their values and interests, and provides personalized approaches based on their emotional state.
[0787] The processing flow will be explained below.
[0788] Step 1:
[0789] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[0790] The terminal transmits the input information to the server.
[0791] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[0792] Step 2:
[0793] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[0794] The terminal displays a question form to the user and prompts the user to enter an answer.
[0795] The user answers the questions and submits the data.
[0796] The server receives the response data, generates an initial user profile, and stores it in a database.
[0797] Step 3:
[0798] The device collects the user's everyday conversations, uploaded images, and shared content.
[0799] The user generates these data and the terminal sends them to the server.
[0800] The server analyzes the collected data and uses text analysis techniques to extract keywords and contexts, updating the user profile.
[0801] Step 4:
[0802] The emotion engine recognizes the user's emotional state from the collected data, for example by extracting emotional indicators from text, voice, and image data and determining whether the emotion is positive or negative.
[0803] The server reflects the determined emotion information in the user profile and updates the profile.
[0804] Step 5:
[0805] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[0806] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[0807] Step 6:
[0808] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[0809] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[0810] Step 7:
[0811] The server invites chatbot AI to join the chat room to promote conversations between users.
[0812] The chatbot AI poses questions and topics at the right time to stimulate conversation. For example, if the user is feeling stressed, the emotion engine will suggest, "Why don't we talk about some hobbies that help you relax?"
[0813] Users can chat and enjoy meeting each other.
[0814] Step 8:
[0815] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[0816] The user answers the questionnaire and the answers are sent to the server.
[0817] The server receives the survey results and stores them in a database. The feedback is analyzed and used to improve the system.
[0818] Through these steps, the system helps users find reliable connections with people who share their values and interests, and the combination of an emotion engine enables personalized responses that take into account the user's emotional state.
[0819] Example 2
[0820] 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."
[0821] Conventional dating support systems often fail to fully consider the user's values and interests when matching, resulting in poor quality encounters. Furthermore, because they do not take into account the user's current emotional state, the user experience tends to be poor. This results in low user satisfaction. Furthermore, there are also problems with conversations not progressing smoothly after matching, or communication breaking down.
[0822] 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.
[0823] In this invention, the server includes means for collecting basic information entered by users and storing it in a database, means for presenting questions about the user's interests, values, and hobbies and collecting the answers, means for generating a user profile using the collected data and storing it in a database, means for monitoring and collecting users' daily conversations and uploaded content, means for analyzing the collected data and updating the user profile, means for clustering multiple user profiles and matching users with high similarities, means for making meeting suggestions to the matched users, means for providing an environment for users to communicate with each other if the suggestions are accepted, means for providing an interactive artificial intelligence for promoting conversations between users, means for collecting user satisfaction levels, analyzing the feedback, and using it to improve the system, means for including an emotion engine that recognizes emotional states, and means for personalizing conversations based on the emotional states. This enables high-quality meetings that take into account the user's values and interests and personalized communication according to the user's emotional states.
[0824] "Basic Information" refers to personal identification information such as name, email address, and password provided by a User when registering with the System.
[0825] "Questions" refers to a series of questions the system presents to understand the user's interests, values, and hobbies.
[0826] An "answer" refers to information provided by a user in response to a question.
[0827] "User Profile" refers to a data set that describes a user's characteristics, generated from collected basic information, interests, values, hobbies, and other data.
[0828] "Database" refers to data storage within a system for organizing and storing collected information.
[0829] "Daily conversation" refers to the daily text chat, message exchanges, and content sharing that users engage in within the system.
[0830] "Uploaded Content" refers to images, videos, text documents and other digital files that Users provide to the System.
[0831] "Monitoring" refers to the process by which the system automatically collects and analyzes users' everyday conversations and uploaded content.
[0832] "Clustering" refers to the process of calculating similarities based on multiple user profiles and grouping users.
[0833] "Matching" refers to the process of selecting highly compatible users from clustered user profiles and providing them with opportunities to meet.
[0834] "Suggestion" refers to an invitation to a matched user to participate in an event or activity based on a shared hobby or interest.
[0835] "Communication environments" refers to chat rooms and other digital communication tools that allow users to exchange messages with each other in real time.
[0836] "Conversational artificial intelligence" refers to a program that provides questions and topics at appropriate times to stimulate conversations between users.
[0837] "Satisfaction" refers to the degree of satisfaction a user feels with the system or encounters.
[0838] "Feedback" refers to evaluations and opinions about the system provided by users.
[0839] "Emotion engine" refers to a program that analyzes and recognizes the user's emotional state from collected data.
[0840] "Personalization" refers to the process of adjusting the functions and services provided by a system according to the characteristics and status of each individual user.
[0841] This invention is a system that utilizes artificial intelligence (AI) to support matching based on users' values and interests, so that users can find reliable encounters. Furthermore, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state.
[0842] User registration and initial settings
[0843] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password. This information is sent from the user's device to the server. The server stores the received information in a database. The password is hashed (e.g., using the bcrypt algorithm) and stored securely.
[0844] Creating a User Profile
[0845] The server generates a questionnaire about the interests, values, and hobbies of newly registered users and sends it to the terminal. The terminal displays the questionnaire to the user and prompts the user to enter answers. When the user answers the questions, the data is sent to the server. The server generates an initial user profile based on the received answer data and saves it in a database.
[0846] Data collection and model updates
[0847] Every time a user chats or shares content, the device collects this data and sends it to a server. The server analyzes the collected data in real time. Natural language processing (NLP) technology is used to extract keywords and context from the text, and an emotion engine recognizes the user's emotional state. This information is used to update the profile, enabling more accurate matching.
[0848] Clustering and Matching
[0849] The server performs a clustering process based on all user profiles. Specifically, it applies a clustering algorithm (e.g., k-means or DBSCAN) to group users based on similar characteristics. The best matching candidate within the cluster is selected, and new users are added to the cluster in the same way.
[0850] Dating suggestions and setup
[0851] The server sends matchmaking suggestions to potential users. Specifically, it uses email and app notifications to suggest events and activities based on mutual hobbies and interests. When a user accepts a suggestion, the information is sent to the user's device and a dedicated chat room is created.
[0852] Facilitating conversations and feedback
[0853] The server invites conversational artificial intelligence (AI) into the chat room to promote conversation between users. The chatbot AI provides questions and topics at appropriate times to stimulate conversation. For example, it might ask questions such as, "What movie have you seen recently?" The emotion engine also detects the user's emotional state and makes suggestions such as, "Are you feeling stressed lately? I recommend a relaxing movie." Once the conversation ends, the device displays a satisfaction survey to the user and collects feedback.
[0854] Feedback and Improvements
[0855] When a user answers a survey, the results are sent to a server, which receives the feedback and stores it in a database. This feedback can be analyzed to improve the system, for example, by adjusting the matching algorithm based on the feedback to improve the user experience.
[0856] Specific examples
[0857] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then stored in the database. User A then answers a questionnaire stating that he / she likes movies, and specifically enters that he / she likes horror movies. Based on this, an initial user profile is generated.
[0858] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[0859] The server discovers that User B is also interested in zombie movies and matches User A with User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[0860] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" Furthermore, if User A has been feeling stressed recently based on the emotion engine, the chatbot AI will suggest, "I also recommend a relaxing movie."
[0861] After the conversation ends, a survey is displayed and users A and B provide feedback on their level of satisfaction. This feedback is stored on the server and used to improve the system.
[0862] The system allows users to connect with people who share their values and interests with confidence, and provides a personalized approach based on their emotional state.
[0863] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0864] Step 1:
[0865] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password into an input form in a browser or mobile app (input: name, email address, password). The device collects this information and sends it to the server in an encrypted form using the HTTPS protocol (output: encrypted user information).
[0866] Step 2:
[0867] The server receives and parses the basic information sent by the user (input: encrypted user information, output: parsed user information), then hashes the password (e.g. using the bcrypt algorithm) and stores it in the database (input: parsed user information, output: hashed password and other registration information).
[0868] Step 3:
[0869] The server generates a question form for a newly registered user about their interests, values, and hobbies (input: newly registered user data, output: generated question form). The device displays the question form to the user and prompts them to answer (input: generated question form, output: displayed question form).
[0870] Step 4:
[0871] The user answers questions about their interests and values and sends the data (input: question form, output: answer data). The device then sends the collected answer data to the server (input: answer data, output: answer data sent to the server).
[0872] Step 5:
[0873] The server receives and analyzes the user's response data (input: response data sent to the server, output: analyzed response data). Based on that data, it generates an initial user profile and saves it in a database (input: analyzed response data, output: initial user profile).
[0874] Step 6:
[0875] The device collects the user's daily conversations and uploaded content in real time (input: daily conversation data, content data; output: collected data). Every time the user chats or shares content, the device sends this data to the server (input: collected data; output: data sent to the server).
[0876] Step 7:
[0877] The server receives the collected data and analyzes it using natural language processing (NLP) technology (input: data sent to the server, output: text analysis results). Next, the emotion engine recognizes the user's emotional state and reflects the results in the user profile (input: text analysis results, output: updated user profile).
[0878] Step 8:
[0879] The server performs clustering based on all user profiles (input: all user profiles, output: clustering results). It applies a clustering algorithm (e.g., k-means or DBSCAN) to group users based on similar characteristics (output: user data classified into each cluster).
[0880] Step 9:
[0881] The server matches highly compatible users within the cluster (input: clustering results, output: matching candidates). It evaluates compatibility using a machine learning model (e.g., Support Vector Machine or Random Forest) and selects the optimal combination (output: selected matching users).
[0882] Step 10:
[0883] The server proposes a meeting to the matched user and notifies them via email or the app's notification function (input: selected matched user, output: meeting proposal notification). When the user accepts the proposal, the information is sent to the device and a dedicated chat room is created (input: proposal acceptance notification, output: creation of dedicated chat room).
[0884] Step 11:
[0885] To promote conversations between users, the server invites conversational artificial intelligence (AI) to participate in the chat room (input: dedicated chat room, output: participation of conversational AI). The chatbot AI provides questions and topics at appropriate times to stimulate conversations (input: user-synchronized conversation data, output: questions and topics generated by the AI).
[0886] Step 12:
[0887] Conversational AI makes personalized suggestions based on the user's emotional state (input: emotional state data, output: personalized suggestions). For example, if the user is feeling stressed, it will make specific suggestions such as "I also recommend a relaxing movie" (output: specific suggestions).
[0888] Step 13:
[0889] When the conversation ends, the device displays a satisfaction survey to the user and collects feedback (input: conversation end data, output: satisfaction survey). When the user answers the survey, the results are sent to the server (input: survey responses, output: data sent to the server).
[0890] Step 14:
[0891] The server receives and analyzes the survey results (input: submitted data, output: analysis results). The feedback results are used to improve system performance and user experience (input: analysis results, output: system improvement proposals). For example, specific improvement measures are implemented, such as adjusting the matching algorithm based on the feedback (output: improved system).
[0892] (Application example 2)
[0893] 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."
[0894] Conventional dating services struggle to provide reliable matches based on users' values and interests. Furthermore, they lack a means to provide a personalized experience that takes into account the user's emotional state, making it difficult to increase user satisfaction. Furthermore, they lack effective communication promotion methods to facilitate smooth encounters in virtual spaces.
[0895] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes: means for collecting basic information entered by a user and storing it in a database; means for presenting questions about the user's interests, values, and hobbies and collecting the answers; means for generating a user profile using the collected data and storing it in a database; means for monitoring and collecting users' daily conversations and uploaded content; means for analyzing the collected data and updating the user profile; means for clustering multiple user profiles and matching highly similar users; means for proposing interactions in a virtual space and setting up virtual dating events; means for providing an environment for users to communicate with each other in a virtual space if the proposal is approved; means for providing a computer program for promoting conversations between users; and means for collecting user satisfaction levels, analyzing feedback, and using the results to improve the system. This allows users to have reliable encounters and provides a personalized experience that takes emotional states into account. It also promotes effective communication in a virtual space and increases user satisfaction.
[0896] "Basic information" refers to data used to identify an individual, such as name, email address, and password, that a user provides when registering.
[0897] "Questions" are provided in the form of a questionnaire or interview that the system presents to clarify the user's interests, values, and hobbies.
[0898] A "user profile" is information generated based on collected data that summarizes the characteristics of an individual user, reflecting their interests, values, and hobbies.
[0899] A "conversation" is a communication exchange using text messages or voice that a user engages in on a daily basis.
[0900] "Content" refers to media and text data such as photos, videos, and articles uploaded by users.
[0901] "Analysis" is the process of extracting and analyzing keywords and context from collected data using text analysis techniques.
[0902] "Clustering" is the process of grouping users with similar characteristics based on their user profiles.
[0903] "Matching" is the process of connecting highly similar users with each other through clustering.
[0904] A "virtual space" is a virtual environment on the Internet where users can interact with each other through avatars and other means.
[0905] A "virtual dating event" is an event held in a virtual space where users participate in activities based on common interests or hobbies.
[0906] A "computer program" is software that operates to facilitate conversations between users and has the ability to provide questions and topics.
[0907] "Feedback" refers to the impressions and evaluations that users provide to the system after use, and is data used to improve the system.
[0908] This invention utilizes AI to help users find trustworthy encounters and supports good encounters based on their values and interests. In particular, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state.
[0909] The system includes the following specific steps:
[0910] 1. Basic information collected and stored:
[0911] The user enters basic information such as name, email address, and password at the device, which is hashed and securely stored in a database.
[0912] 2. Posting questions and collecting answers:
[0913] The server asks new users questions about their interests, values, and hobbies, and the users answer the questions via their devices, and the data is sent to the server.
[0914] 3. Create and save your user profile:
[0915] Based on the collected data, the server generates a user profile and stores it in a database, which reflects the user's interests, values, and emotional state.
[0916] 4. Routine data collection and analysis:
[0917] The server monitors and collects users' daily conversations and uploaded content, and the collected data is processed using text analysis techniques to extract keywords and context.
[0918] 5. Clustering and Matching:
[0919] The server performs clustering based on all user profiles, groups users with high similarities, and then selects the most suitable match candidate within the cluster.
[0920] 6. Virtual dating event suggestions:
[0921] The server proposes to the matched users that they interact in a virtual space and sets up virtual meeting events.
[0922] 7. Providing a communication environment in virtual space:
[0923] If the proposal is approved, the server provides an environment for users to communicate with each other in a virtual space.
[0924] 8. Chatbots facilitate conversations:
[0925] The server uses chatbot AI to facilitate conversations between users, and the chatbot takes into account the user's emotional state and suggests appropriate questions and topics.
[0926] 9. Satisfaction data collection and system improvement:
[0927] After a user finishes a virtual dating event, the server displays and collects a satisfaction survey, which is then analyzed and used to improve the system.
[0928] Hardware and software used
[0929] Database: We use SQLite to store user information, profiles and feedback.
[0930] Text Analysis: Analyzes text for sentiment scores and keywords using Natural Language Toolkit (NLTK) and TextBlob.
[0931] Emotion Engine: Parses emotional state using TextBlob.
[0932] Communication: Data transmission from the device to the server using HTTP / HTTPS protocols.
[0933] Chatbot: A chatbot program implemented in Python is used.
[0934] Specific examples
[0935] For example, when User A accesses the system and creates an account, he or she enters his or her name, email address, and password. This information is stored in the database. User A then answers questions about his or her interests, values, and hobbies. An initial user profile is generated based on this information.
[0936] When User A uploads conversations and content on a daily basis, the data is analyzed in real time and their profile is updated. The server then matches User B with User A and proposes a virtual meeting event. If the proposal is approved, a dedicated chat room is created and a chatbot AI facilitates the conversation.
[0937] A concrete example of a conversation is as follows:
[0938] User A: "I love sports, especially soccer."
[0939] System: "I know someone who likes soccer too. Would you like to talk with me?"
[0940] User A: "I haven't been feeling very energetic lately."
[0941] System (Chatbot AI): "It's also a good idea to relax. What movie have you seen recently?"
[0942] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0943] Step 1:
[0944] Basic information collected and stored:
[0945] The user uses a device to enter basic information such as name, email address, and password. The device sends the entered information to the server. The server hashes the received information and stores it in a database. The input of this step is the user's basic information, and the output is the user information securely stored in the database.
[0946] Step 2:
[0947] Ask questions and collect answers:
[0948] The server generates questions for new users about their interests, values, and hobbies, and sends them to the device. The device displays a question form to the user, and the user enters their answers. The entered answer data is sent from the device to the server, which receives and stores it. The input of this step is the answer data to the question, and the output is the stored answer data.
[0949] Step 3:
[0950] Creating and saving a user profile:
[0951] The server uses the collected basic information and response data to generate a user profile. The generated profile is saved in a database. In this step, data processing and analysis are performed based on the input basic information and response data, and the user profile is output and saved.
[0952] Step 4:
[0953] Routine data collection and analysis:
[0954] Users upload everyday conversations and content to their devices. The devices then send this data to the server. The server analyzes the received data in real time and uses an emotion engine to extract emotional states and keywords. The user profile is updated based on the analysis results. The input of this step is everyday conversations and content data, and the output is an updated user profile.
[0955] Step 5:
[0956] Clustering and Matching:
[0957] The server performs a clustering process based on all stored user profiles. It calculates similarity indices using text analysis and other methods to group users. It then selects the best matching candidates within each cluster. The input to this step is each user's profile data, and the output is matched user pairs.
[0958] Step 6:
[0959] Virtual dating event suggestions:
[0960] The server proposes a virtual social event to the matched users. Information about the event is sent to the users through their device's notification function. The users then approve the proposal. The input of this step is the matched user pair and event information, and the output is the event that the users approve of.
[0961] Step 7:
[0962] Providing a communication environment in a virtual space:
[0963] After the proposal is approved, the server generates a dedicated chat room for users to communicate with each other in the virtual space and sends the information to the terminal. The user logs in to the virtual space and starts communicating in the chat room. The input of this step is the approved event information, and the output is the generated chat room.
[0964] Step 8:
[0965] Chatbots drive conversations:
[0966] The server uses chatbot AI to facilitate conversations between users. The chatbot takes into account the user's emotional state and provides appropriate questions and topics. For example, it provides prompts such as, "You seem to be feeling down lately. Would you like to talk about some of your hobbies?" The input for this step is the conversation data between users, and the output is a prompting message from the chatbot.
[0967] Step 9:
[0968] Satisfaction data collection and system improvement:
[0969] When a user finishes a virtual dating event, the server displays a satisfaction survey on the user's device and collects responses. The collected feedback data is analyzed by the server and used to improve the system. The input of this step is the satisfaction survey responses, and the output is the analyzed feedback results.
[0970] 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.
[0971] 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.
[0972] 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.
[0973] [Third embodiment]
[0974] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0975] 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.
[0976] 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).
[0977] 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.
[0978] 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.
[0979] 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).
[0980] 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.
[0981] 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.
[0982] 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.
[0983] 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.
[0984] 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.
[0985] 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."
[0986] This invention relates to a system that utilizes AI to support users in finding reliable encounters based on their values and interests. Specific embodiments for carrying out the invention are described below.
[0987] 1. User registration and initial settings
[0988] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[0989] The server receives the user's basic information and stores it in a database. Passwords are hashed and stored securely.
[0990] 2. Create a user profile
[0991] The device will ask the user questions about their interests, values, and hobbies. Questions can be formatted in a variety of ways, including pull-down menus and text input.
[0992] The user enters an answer, which is then sent to the server.
[0993] The server receives the response and stores it in a database, which creates an initial user profile.
[0994] 3. Data collection and model updating
[0995] The device monitors users' everyday conversations, uploaded images, and shared content, collecting data in real time.
[0996] The server analyzes the collected data and updates the user profile daily. Text analysis technology is used to extract keywords and context from the conversation and incorporate them into the model.
[0997] 4. Clustering and Matching
[0998] The server performs a clustering process based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[0999] The server will select the best match within the cluster, and similarly for new users, they will be added to an existing cluster.
[1000] 5. Dating suggestions and setup
[1001] The server will then make suggestions for meeting users, using email and app notifications to suggest events and activities based on shared interests.
[1002] If the user approves the proposal, the device creates a communication environment (e.g., a private chat room), sets the date and time, and sends a confirmation message.
[1003] 6. Facilitating conversations and providing feedback
[1004] The chatbot AI will join the chat room and pose questions and topics at appropriate times to encourage conversation, such as suggesting, "Let's talk about your recent hobbies."
[1005] Users can chat and enjoy meeting each other.
[1006] After the conversation ends, the device displays a satisfaction survey and collects feedback from the user.
[1007] 7. Feedback and Improvement
[1008] The user answers the questionnaire and the answers are sent to the server.
[1009] The server analyzes the survey results and stores them in a database. Feedback is used to improve the algorithm and the overall system.
[1010] Specific examples
[1011] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then saved in the database. User A then answers a questionnaire stating that he / she likes movies, specifically horror movies. An initial user profile is generated based on this information.
[1012] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[1013] The server discovers that User B is also interested in zombie movies and matches User A and User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[1014] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" When the conversation ends, a survey will be displayed and users A and B will provide feedback on their satisfaction. This feedback will be stored on the server and used to improve the system.
[1015] The above is a specific embodiment for carrying out the invention. This system allows users to make reliable encounters with people who share their values and interests.
[1016] The processing flow will be explained below.
[1017] Step 1:
[1018] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[1019] The terminal collects the input information and sends it to the server.
[1020] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[1021] Step 2:
[1022] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[1023] The terminal displays a question form to the user and prompts the user to enter an answer.
[1024] The user answers the questions and submits the data.
[1025] The server receives the response data, generates an initial user profile, and stores it in a database.
[1026] Step 3:
[1027] The device collects the user's daily activities, such as chat content and uploaded content.
[1028] Every time a user chats or shares content, the device sends this data to the server.
[1029] The server analyzes the collected data in real time, extracts keywords and context using text analysis technology, and updates the user profile.
[1030] Step 4:
[1031] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[1032] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[1033] Step 5:
[1034] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[1035] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[1036] Step 6:
[1037] The server invites chatbot AI to join the chat room to promote conversations between users.
[1038] Chatbot AI prompts questions and topics at the right time to stimulate conversation.
[1039] For example, suggest, "Let's talk about a movie you recently saw."
[1040] Step 7:
[1041] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[1042] The user answers the questionnaire and the answers are sent to the server.
[1043] The server receives the survey results and stores them in a database. Analysis of the results will be used to improve the system.
[1044] Through these steps, the system helps users make reliable connections with people who share their values and interests.
[1045] Example 1
[1046] 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."
[1047] In modern society, there are many systems that allow users to find reliable encounters, but most of them do not adequately match users based on their interests and values, making it difficult for users to find satisfying encounters. Another problem is that user profiles are not updated in real time, making it difficult for them to reflect daily activities. Furthermore, there is a lack of support to smoothly advance conversations after matching, which can lead to a decrease in conversation satisfaction.
[1048] 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.
[1049] In this invention, the server includes means for collecting basic information entered by users and saving it in a database, means for asking users questions about their interests, values, and hobbies and collecting their responses, means for generating user profiles using the collected data and saving them in a database, means for monitoring and collecting users' daily conversations and uploaded content, means for analyzing the collected data and updating the user profiles, means for clustering multiple user profiles and matching highly similar users, means for making meeting suggestions to matched users, means for providing an environment for users to communicate with each other if the suggestions are accepted, means for providing an automatic conversation generation device to promote conversations between users, and means for collecting user satisfaction levels, analyzing feedback, and using the information to improve the system. This makes it possible to provide reliable encounters based on users' interests and values in real time, thereby improving the satisfaction of encounters.
[1050] "Basic information" refers to information used to identify an individual, such as a name, email address, and password, that a user enters when creating a new account.
[1051] "Database" refers to a large information collection system that the system uses to manage and store basic information and profile information of users.
[1052] "Interests, values, and hobbies" refers to personal information such as a user's particular interests, beliefs, and activities they enjoy in their leisure time.
[1053] "Presenting a question" refers to the act of displaying a question to prompt the user to input or select specific information.
[1054] "Collecting answers" refers to the act of obtaining data entered by users in response to questions presented to them.
[1055] A "user profile" is a collection of individual information data generated based on a user's basic information, interests, values, hobbies, activity history, and the like.
[1056] "Daily conversation" refers to communication activities that users engage in in their normal daily lives.
[1057] "Uploaded Content" is any digital data, such as images, text, or video, that a user uploads to the system.
[1058] "Monitoring" means that the system constantly observes the user's activities and input data and automatically collects the necessary data.
[1059] "Analyzing" means to analyze collected data in detail and process it to find specific patterns or meanings.
[1060] "Clustering" refers to the act of classifying multiple user profiles based on their mutual similarities and grouping them together.
[1061] "Similarity" refers to the degree of commonality between users in characteristics such as interests, values, and hobbies.
[1062] "Matching" refers to the act of selecting users who have high similarities as candidates for meeting.
[1063] "Making suggestions for meeting people" refers to the act of recommending events or activities to matched users to encourage new encounters.
[1064] A "communication environment" is an online platform or system that allows users to converse and exchange messages in real time.
[1065] The "automatic conversation generation device" is a function in which AI automatically generates and provides questions and topics to facilitate smooth conversations between users.
[1066] "Satisfaction" refers to the degree of satisfaction a user has with the service provided.
[1067] "Feedback" refers to evaluations and opinions about the system provided by users, and is data used for improvement and optimization.
[1068] This invention is a system that utilizes AI to help users find reliable encounters, and detailed implementation methods are described below.
[1069] Hardware and software used
[1070] To implement this system, a server, a terminal, a database, and a generative AI model are required. Specific software includes a natural language processing library, a machine learning algorithm (e.g., K-means clustering), a database management system (e.g., MySQL), and a chatbot AI.
[1071] System configuration description
[1072] 1. User registration and initial settings
[1073] A user accesses the system using a terminal and creates a new account by entering basic information such as name, email address, and password.
[1074] The server receives the user's basic information, hashes the password for safe storage, and stores it in a database, ensuring security against external attacks.
[1075] 2. Create a user profile
[1076] The device prompts the user with questions about their interests, values, and hobbies, which are presented in a variety of ways, including through pull-down menus and text input.
[1077] The user answers the questions and the answers are sent to the server.
[1078] The server stores the received answers in a database and generates a user profile.
[1079] 3. Data collection and model updating
[1080] The device monitors users' daily conversations, uploaded images, and shared content, collecting data such as chat logs and metadata about uploaded images.
[1081] The data collected by the server is analyzed using natural language processing technology to extract keywords and context.
[1082] The server updates user profiles daily based on the analysis results. For example, if a user frequently posts comments about movies, their interests will be reflected in their profile.
[1083] 4. Clustering and Matching
[1084] The server uses a machine learning algorithm to perform clustering based on all user profiles, which allows users with high similarities to be grouped into the same cluster.
[1085] The server selects the best matching candidate within each cluster and notifies the user of the result.
[1086] 5. Dating suggestions and setup
[1087] The server then suggests events and activities for matched users to meet, for example, sending a notification saying, "Would you like to join us at a movie screening this weekend?"
[1088] If the user approves the proposal, the server will create a dedicated chat room and set details such as the date, time, and topic.
[1089] 6. Facilitating conversations and providing feedback
[1090] The terminal invites users to join the chat room and prompts them to start a conversation.
[1091] The chatbot AI asks questions such as "Let's talk about your recent hobbies" during the conversation, allowing the conversation to progress naturally.
[1092] After users have enjoyed the conversation, a satisfaction survey is displayed when the chat room ends.
[1093] The user answers the questionnaire and the results are sent to the server.
[1094] Specific examples
[1095] For example, User A accesses the system and creates a new account. User A enters his / her name, email address, and password, which are saved on the server. Next, User A answers questions about his / her interests and enters that he / she likes movies.
[1096] Every day, when User A posts comments and reviews about movies, the server collects that data, analyzes it, and updates the profile of User A. Through the analysis, it is discovered that User A is particularly interested in zombie movies, and that User B has the same interest.
[1097] The server matches User A and User B and sends them a proposal saying, "Would you like to join us for a zombie movie screening this weekend?" If both parties accept the proposal, a private chat room is created and the chatbot AI prompts them with questions such as, "What zombie movie have you seen recently?" to encourage conversation.
[1098] The above is a specific embodiment for carrying out the present invention.
[1099] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1100] Step 1: User registration and initial setup
[1101] Input: The user enters their name, email address, and password through the terminal.
[1102] Specific operation: The user enters the basic information required to create a new account from the device and clicks the "Register" button.
[1103] Data processing: The server receives the entered data and hashes the password, for example using the bcrypt library.
[1104] Output: Hashed password and basic information stored securely in a database. User is sent a registration confirmation email.
[1105] Step 2: Create a user profile
[1106] Input: The user answers questions about their interests, values, and hobbies.
[1107] Specific operation: The user enters an answer to the question form presented by the terminal and clicks the "Submit" button.
[1108] Data processing: The server receives the user's answers and stores them in a database. The text data is converted into structured data.
[1109] Output: An initial user profile is generated and stored in the database.
[1110] Step 3: Data collection and model updating
[1111] Input: Data such as your everyday conversations, uploaded images, and shared content.
[1112] Specific operation: The device monitors and collects user activity data in real time.
[1113] Data processing: The data collected by the server is analyzed using natural language processing technology (e.g., spaCy or nltk library) to extract keywords and context.
[1114] Output: The analysis results are reflected in the user profile, and the updated profile is saved in the database.
[1115] Step 4: Clustering and matching
[1116] Input: All user profile data.
[1117] Specific operation: The server performs clustering based on the user profile. The clustering is performed using the K-means algorithm.
[1118] Data processing: Calculate similarity indices and classify users into appropriate clusters.
[1119] Output: Identify highly similar users within the cluster and select matching candidates.
[1120] Step 5: Propose and set up a meeting
[1121] Input: Matched user's profile data.
[1122] Specific behavior: The server will suggest events and activities to matched users. Suggestions will be sent via email and in-app notifications.
[1123] Data processing: A generative AI model is used to generate the proposals.
[1124] Output: If the user accepts the proposal, a private chat room will be created and the user will be notified with details.
[1125] Step 6: Facilitating conversation and feedback
[1126] Input: Chat data between matched users.
[1127] Specific behavior: The device invites the user to the generated chat room and starts chatting. The chatbot AI provides questions and topics to encourage the conversation.
[1128] Data processing: The chatbot analyzes the user's conversation and generates prompts at the appropriate time.
[1129] Output: The user enjoys the conversation and is shown a satisfaction survey after the conversation ends.
[1130] Step 7: Feedback and Improvement
[1131] Input: User satisfaction survey data.
[1132] Specific action: The user answers the survey and clicks the submit button.
[1133] Data processing: The server receives the survey results and stores them in a database. The feedback data is analyzed to identify areas for improvement in the system.
[1134] Output: The collected feedback is used to improve the system's algorithms and interface.
[1135] (Application example 1)
[1136] 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."
[1137] Conventional dating systems match users based on their interests and values, but especially in the food delivery field, they do not perform advanced matching that takes into account users' food preferences or restaurant information. This makes it difficult to provide users with truly satisfying encounters and dining experiences. There is also a lack of effective ways to promote communication between users.
[1138] 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.
[1139] In this invention, the server includes a means for collecting basic information entered by the user and storing it in a database, a means for asking questions about the user's interests, values, and hobbies and collecting the answers, and a means for creating a user profile using the collected data and storing it in a database, thereby enabling the user to have truly satisfying encounters and dining experiences.
[1140] The server also includes a means for monitoring and collecting users' daily conversations and uploaded content, a means for analyzing the collected data and updating user profiles, and a means for clustering multiple user profiles and matching users with high similarities, thereby enabling highly accurate matching.
[1141] The server also includes a means for suggesting dishes and restaurants to matched users based on the user's food preferences and interests, a means for providing an environment for users to communicate with each other if the suggestion is accepted, a means for providing a chatbot to promote conversations between users, and a means for collecting user satisfaction levels, analyzing feedback, and using the collected feedback to improve the system. This effectively promotes communication between users and increases overall satisfaction.
[1142] "Basic information" refers to basic identification information entered by the user, such as name, email address, and password.
[1143] "Interests and values" is information about a user's specific interests, beliefs, and preferences.
[1144] "Hobbies" are activities or interests that a user enjoys in their private time.
[1145] A "database" is a system for systematically storing and managing collected information.
[1146] A "user profile" is a collection of information including a user's interests, values, hobbies, basic information, and so on.
[1147] "Clustering" is a technical method for grouping similar data.
[1148] "Matching" is the process of connecting users who have similarities with each other.
[1149] "Food preferences" are specific cuisines or types of food that a user likes.
[1150] A "restaurant" is a commercial establishment that serves food and beverages.
[1151] A "communication environment" refers to an online space where users can interact and exchange information.
[1152] A "chatbot" is a program that uses AI to automatically converse with users.
[1153] "Satisfaction" refers to the degree of satisfaction a user feels with a service or proposal.
[1154] "Feedback" refers to reactions based on opinions and ratings provided by users.
[1155] The present invention provides a system that utilizes AI to support users in finding reliable encounters based on their values and interests. Specific embodiments for implementing the present invention are described below.
[1156] 1. Hardware and Software Used
[1157] Hardware: Server computers, smartphones
[1158] Software: Python, Flask (web framework), scikit-learn (machine learning library), database (e.g., Redis or MongoDB)
[1159] 2. System Overview
[1160] User device: The device that a user accesses and enters basic information and interests.
[1161] Server: A server computer that works with databases, analyzes data, and performs clustering and matching.
[1162] Database: A system for storing user information and profile data.
[1163] 3. Program processing explanation
[1164] The user uses the device to input basic information, hobbies, and interests, which is then sent to the server and stored in a database.
[1165] The server uses text analysis technology to extract keywords and context from user conversations and uploaded content, and uses this data to generate and update user profiles.
[1166] To generate and update user profiles, we use scikit-learn's KMeans to perform clustering and match users with high similarity.
[1167] Matched users will be offered suggestions for dishes and restaurants based on their food preferences and interests. The suggestions are sent from the server to the device, and if the user approves, a communication environment will be provided.
[1168] Chatbots join the conversation, offering questions and topics that will drive the conversation at the right time.
[1169] Finally, user satisfaction feedback is collected and stored in a database, which is used to improve the algorithm and the overall system.
[1170] 4. Specific Examples
[1171] For example, User A accesses the system and creates an account. User A specifies in his profile that he is interested in sushi and Japanese food. The system clusters User B, who is also interested in Japanese food, and performs matching. The server proposes a "dinner meeting at a nearby Japanese restaurant" to both users, and if Users A and B accept, a communication environment is created. A chatbot joins the conversation, asking questions such as "What Japanese food have you liked recently?" After the conversation ends, Users A and B provide feedback on their satisfaction, which is used to improve the system.
[1172] 5. Examples of prompts
[1173] "If a user is interested in Japanese food, how can we use that information to match them with other users who also love Japanese food and suggest nearby Japanese restaurants?"
[1174] The above is a specific embodiment for carrying out the present invention. This system allows users to make reliable encounters with people who share their values and interests.
[1175] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1176] Step 1:
[1177] The user enters basic information at the terminal.
[1178] What happens: A user enters basic information such as name, email address, and password, and submits the registration form.
[1179] Input: User's name, email address, and password
[1180] Output: Input is sent from the terminal to the server.
[1181] Data processing: The server hashes the received password and stores the user's basic information in the database.
[1182] Step 2:
[1183] The device asks the user questions about their interests, values, and hobbies.
[1184] Specific operation: The terminal displays questions in a questionnaire format, and the user enters answers.
[1185] Input: Answers about the user's interests, values, and hobbies
[1186] Output: The answer is sent from the device to the server.
[1187] Data processing: The server stores the received answers in a database and generates an initial user profile.
[1188] Step 3:
[1189] The server monitors and collects users' daily conversations and uploaded content.
[1190] What it does: When users chat or upload content, the server collects that data in real time.
[1191] Input: User conversation data, uploaded content
[1192] Output: The collected data is analyzed in the server.
[1193] Data processing: The server uses text analysis technology to extract keywords and context from the conversation and reflect this in the user profile.
[1194] Step 4:
[1195] The server clusters multiple user profiles and matches users with high similarities.
[1196] Specific operation: The server performs clustering processing based on all stored user profiles.
[1197] Input: All user profile data
[1198] Output: List of users in clusters with high similarity
[1199] Data processing: Use scikit-learn's KMeans to cluster and match user profiles.
[1200] Step 5:
[1201] The server will suggest dishes and restaurants to the matched user based on the user's food preferences and interests.
[1202] Specific operation: The server selects the appropriate restaurant and food, generates a notification message, and sends it to the user.
[1203] Input: Matched user profile, restaurant information
[1204] Output: Notifications suggesting dinner parties and restaurants
[1205] Data processing: Based on the suggestions, notifications will be sent via email or app notification functions.
[1206] Step 6:
[1207] If the proposal is approved, the server provides an environment for users to communicate with each other.
[1208] Specific behavior: When the user accepts the proposal, the server creates a dedicated chat room.
[1209] Input: User's proposal approval information
[1210] Output: Chat room URL and access information
[1211] Data processing: The server creates the chat room and provides access information to both users.
[1212] Step 7:
[1213] The server provides a chatbot to promote conversations between users.
[1214] What it does: The chatbot automatically joins the conversation, providing questions and topics at the right time.
[1215] Input: Chat room conversation data
[1216] Output: What the chatbot says
[1217] Data processing: The chatbot analyzes the conversation content and generates and poses appropriate questions and topics.
[1218] Step 8:
[1219] The server collects user satisfaction, analyzes the feedback, and uses it to improve the system.
[1220] Specific behavior: After the conversation ends, display a satisfaction survey and collect feedback from the user.
[1221] Input: User satisfaction survey responses
[1222] Output: Feedback result data
[1223] Data processing: The server analyzes the feedback and stores the results in a database to help improve the system and algorithms.
[1224] 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.
[1225] This invention relates to a system that utilizes AI to help users find trustworthy encounters and supports good encounters based on their values and interests. In particular, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state. Specific embodiments for implementing the invention are described below.
[1226] 1. User registration and initial settings
[1227] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[1228] The terminal collects the input information and sends it to the server.
[1229] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[1230] 2. Create a user profile
[1231] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[1232] The terminal displays a question form to the user and prompts the user to enter an answer.
[1233] The user answers the questions and submits the data.
[1234] The server receives the response data, generates an initial user profile, and stores it in a database.
[1235] 3. Data collection and model updating
[1236] The device collects the user's everyday conversations and uploaded content.
[1237] Every time a user chats or shares content, the device sends this data to the server.
[1238] The server analyzes the collected data in real time and uses text analysis technology to extract keywords and context.
[1239] The emotion engine recognizes the user's emotional state from the collected data and reflects it in the profile.
[1240] 4. Clustering and Matching
[1241] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[1242] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[1243] 5. Dating suggestions and setup
[1244] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[1245] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[1246] 6. Facilitating conversations and providing feedback
[1247] The server invites chatbot AI to join the chat room to promote conversations between users.
[1248] The chatbot AI poses questions and topics at the right time to stimulate conversation. It also takes into account the user's emotional state and makes suggestions such as, "You seem down lately. Shall we talk about your hobbies?"
[1249] Users can chat and enjoy meeting each other.
[1250] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[1251] 7. Feedback and Improvement
[1252] The user answers the questionnaire and the answers are sent to the server.
[1253] The server receives the survey results and stores them in a database. Analysis of the results will be used to improve the system.
[1254] Specific examples
[1255] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then saved in the database. User A then answers a questionnaire stating that he / she likes movies, specifically horror movies. An initial user profile is generated based on this information.
[1256] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[1257] The server discovers that User B is also interested in zombie movies and matches User A and User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[1258] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" Furthermore, if the emotion engine detects that User A has been feeling stressed recently, the chatbot AI will suggest, "I also recommend a relaxing movie."
[1259] After the conversation is over, a survey is displayed and users A and B provide feedback on their satisfaction. This feedback is stored on the server and used to improve the system.
[1260] The above is a concrete example of how to implement the invention by combining an emotion engine. This system allows users to connect with people who share their values and interests, and provides personalized approaches based on their emotional state.
[1261] The processing flow will be explained below.
[1262] Step 1:
[1263] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[1264] The terminal transmits the input information to the server.
[1265] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[1266] Step 2:
[1267] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[1268] The terminal displays a question form to the user and prompts the user to enter an answer.
[1269] The user answers the questions and submits the data.
[1270] The server receives the response data, generates an initial user profile, and stores it in a database.
[1271] Step 3:
[1272] The device collects the user's everyday conversations, uploaded images, and shared content.
[1273] The user generates these data and the terminal sends them to the server.
[1274] The server analyzes the collected data and uses text analysis techniques to extract keywords and contexts, updating the user profile.
[1275] Step 4:
[1276] The emotion engine recognizes the user's emotional state from the collected data, for example by extracting emotional indicators from text, voice, and image data and determining whether the emotion is positive or negative.
[1277] The server reflects the determined emotion information in the user profile and updates the profile.
[1278] Step 5:
[1279] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[1280] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[1281] Step 6:
[1282] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[1283] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[1284] Step 7:
[1285] The server invites chatbot AI to join the chat room to promote conversations between users.
[1286] The chatbot AI poses questions and topics at the right time to stimulate conversation. For example, if the user is feeling stressed, the emotion engine will suggest, "Why don't we talk about some hobbies that help you relax?"
[1287] Users can chat and enjoy meeting each other.
[1288] Step 8:
[1289] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[1290] The user answers the questionnaire and the answers are sent to the server.
[1291] The server receives the survey results and stores them in a database. The feedback is analyzed and used to improve the system.
[1292] Through these steps, the system helps users find reliable connections with people who share their values and interests, and the combination of an emotion engine enables personalized responses that take into account the user's emotional state.
[1293] Example 2
[1294] 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."
[1295] Conventional dating support systems often fail to fully consider the user's values and interests when matching, resulting in poor quality encounters. Furthermore, because they do not take into account the user's current emotional state, the user experience tends to be poor. This results in low user satisfaction. Furthermore, there are also problems with conversations not progressing smoothly after matching, or communication breaking down.
[1296] 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.
[1297] In this invention, the server includes means for collecting basic information entered by users and storing it in a database, means for presenting questions about the user's interests, values, and hobbies and collecting the answers, means for generating a user profile using the collected data and storing it in a database, means for monitoring and collecting users' daily conversations and uploaded content, means for analyzing the collected data and updating the user profile, means for clustering multiple user profiles and matching users with high similarities, means for making meeting suggestions to the matched users, means for providing an environment for users to communicate with each other if the suggestions are accepted, means for providing an interactive artificial intelligence for promoting conversations between users, means for collecting user satisfaction levels, analyzing the feedback, and using it to improve the system, means for including an emotion engine that recognizes emotional states, and means for personalizing conversations based on the emotional states. This enables high-quality meetings that take into account the user's values and interests and personalized communication according to the user's emotional states.
[1298] "Basic Information" refers to personal identification information such as name, email address, and password provided by a User when registering with the System.
[1299] "Questions" refers to a series of questions the system presents to understand the user's interests, values, and hobbies.
[1300] An "answer" refers to information provided by a user in response to a question.
[1301] "User Profile" refers to a data set that describes a user's characteristics, generated from collected basic information, interests, values, hobbies, and other data.
[1302] "Database" refers to data storage within a system for organizing and storing collected information.
[1303] "Daily conversation" refers to the daily text chat, message exchanges, and content sharing that users engage in within the system.
[1304] "Uploaded Content" refers to images, videos, text documents and other digital files that Users provide to the System.
[1305] "Monitoring" refers to the process by which the system automatically collects and analyzes users' everyday conversations and uploaded content.
[1306] "Clustering" refers to the process of calculating similarities based on multiple user profiles and grouping users.
[1307] "Matching" refers to the process of selecting highly compatible users from clustered user profiles and providing them with opportunities to meet.
[1308] "Suggestion" refers to an invitation to a matched user to participate in an event or activity based on a shared hobby or interest.
[1309] "Communication environments" refers to chat rooms and other digital communication tools that allow users to exchange messages with each other in real time.
[1310] "Conversational artificial intelligence" refers to a program that provides questions and topics at appropriate times to stimulate conversations between users.
[1311] "Satisfaction" refers to the degree of satisfaction a user feels with the system or encounters.
[1312] "Feedback" refers to evaluations and opinions about the system provided by users.
[1313] "Emotion engine" refers to a program that analyzes and recognizes the user's emotional state from collected data.
[1314] "Personalization" refers to the process of adjusting the functions and services provided by a system according to the characteristics and status of each individual user.
[1315] This invention is a system that utilizes artificial intelligence (AI) to support matching based on users' values and interests, so that users can find reliable encounters. Furthermore, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state.
[1316] User registration and initial settings
[1317] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password. This information is sent from the user's device to the server. The server stores the received information in a database. The password is hashed (e.g., using the bcrypt algorithm) and stored securely.
[1318] Creating a User Profile
[1319] The server generates a questionnaire about the interests, values, and hobbies of newly registered users and sends it to the terminal. The terminal displays the questionnaire to the user and prompts the user to enter answers. When the user answers the questions, the data is sent to the server. The server generates an initial user profile based on the received answer data and saves it in a database.
[1320] Data collection and model updates
[1321] Every time a user chats or shares content, the device collects this data and sends it to a server. The server analyzes the collected data in real time. Natural language processing (NLP) technology is used to extract keywords and context from the text, and an emotion engine recognizes the user's emotional state. This information is used to update the profile, enabling more accurate matching.
[1322] Clustering and Matching
[1323] The server performs a clustering process based on all user profiles. Specifically, it applies a clustering algorithm (e.g., k-means or DBSCAN) to group users based on similar characteristics. The best matching candidate within the cluster is selected, and new users are added to the cluster in the same way.
[1324] Dating suggestions and setup
[1325] The server sends matchmaking suggestions to potential users. Specifically, it uses email and app notifications to suggest events and activities based on mutual hobbies and interests. When a user accepts a suggestion, the information is sent to the user's device and a dedicated chat room is created.
[1326] Facilitating conversations and feedback
[1327] The server invites conversational artificial intelligence (AI) into the chat room to promote conversation between users. The chatbot AI provides questions and topics at appropriate times to stimulate conversation. For example, it might ask questions such as, "What movie have you seen recently?" The emotion engine also detects the user's emotional state and makes suggestions such as, "Are you feeling stressed lately? I recommend a relaxing movie." Once the conversation ends, the device displays a satisfaction survey to the user and collects feedback.
[1328] Feedback and Improvements
[1329] When a user answers a survey, the results are sent to a server, which receives the feedback and stores it in a database. This feedback can be analyzed to improve the system, for example, by adjusting the matching algorithm based on the feedback to improve the user experience.
[1330] Specific examples
[1331] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then stored in the database. User A then answers a questionnaire stating that he / she likes movies, and specifically enters that he / she likes horror movies. Based on this, an initial user profile is generated.
[1332] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[1333] The server discovers that User B is also interested in zombie movies and matches User A with User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[1334] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" Furthermore, if User A has been feeling stressed recently based on the emotion engine, the chatbot AI will suggest, "I also recommend a relaxing movie."
[1335] After the conversation ends, a survey is displayed and users A and B provide feedback on their level of satisfaction. This feedback is stored on the server and used to improve the system.
[1336] The system allows users to connect with people who share their values and interests with confidence, and provides a personalized approach based on their emotional state.
[1337] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1338] Step 1:
[1339] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password into an input form in a browser or mobile app (input: name, email address, password). The device collects this information and sends it to the server in an encrypted form using the HTTPS protocol (output: encrypted user information).
[1340] Step 2:
[1341] The server receives and parses the basic information sent by the user (input: encrypted user information, output: parsed user information), then hashes the password (e.g. using the bcrypt algorithm) and stores it in the database (input: parsed user information, output: hashed password and other registration information).
[1342] Step 3:
[1343] The server generates a question form for a newly registered user about their interests, values, and hobbies (input: newly registered user data, output: generated question form). The device displays the question form to the user and prompts them to answer (input: generated question form, output: displayed question form).
[1344] Step 4:
[1345] The user answers questions about their interests and values and sends the data (input: question form, output: answer data). The device then sends the collected answer data to the server (input: answer data, output: answer data sent to the server).
[1346] Step 5:
[1347] The server receives and analyzes the user's response data (input: response data sent to the server, output: analyzed response data). Based on that data, it generates an initial user profile and saves it in a database (input: analyzed response data, output: initial user profile).
[1348] Step 6:
[1349] The device collects the user's daily conversations and uploaded content in real time (input: daily conversation data, content data; output: collected data). Every time the user chats or shares content, the device sends this data to the server (input: collected data; output: data sent to the server).
[1350] Step 7:
[1351] The server receives the collected data and analyzes it using natural language processing (NLP) technology (input: data sent to the server, output: text analysis results). Next, the emotion engine recognizes the user's emotional state and reflects the results in the user profile (input: text analysis results, output: updated user profile).
[1352] Step 8:
[1353] The server performs clustering based on all user profiles (input: all user profiles, output: clustering results). It applies a clustering algorithm (e.g., k-means or DBSCAN) to group users based on similar characteristics (output: user data classified into each cluster).
[1354] Step 9:
[1355] The server matches highly compatible users within the cluster (input: clustering results, output: matching candidates). It evaluates compatibility using a machine learning model (e.g., Support Vector Machine or Random Forest) and selects the optimal combination (output: selected matching users).
[1356] Step 10:
[1357] The server proposes a meeting to the matched user and notifies them via email or the app's notification function (input: selected matched user, output: meeting proposal notification). When the user accepts the proposal, the information is sent to the device and a dedicated chat room is created (input: proposal acceptance notification, output: creation of dedicated chat room).
[1358] Step 11:
[1359] To promote conversations between users, the server invites conversational artificial intelligence (AI) to participate in the chat room (input: dedicated chat room, output: participation of conversational AI). The chatbot AI provides questions and topics at appropriate times to stimulate conversations (input: user-synchronized conversation data, output: questions and topics generated by the AI).
[1360] Step 12:
[1361] Conversational AI makes personalized suggestions based on the user's emotional state (input: emotional state data, output: personalized suggestions). For example, if the user is feeling stressed, it will make specific suggestions such as "I also recommend a relaxing movie" (output: specific suggestions).
[1362] Step 13:
[1363] When the conversation ends, the device displays a satisfaction survey to the user and collects feedback (input: conversation end data, output: satisfaction survey). When the user answers the survey, the results are sent to the server (input: survey responses, output: data sent to the server).
[1364] Step 14:
[1365] The server receives and analyzes the survey results (input: submitted data, output: analysis results). The feedback results are used to improve system performance and user experience (input: analysis results, output: system improvement proposals). For example, specific improvement measures are implemented, such as adjusting the matching algorithm based on the feedback (output: improved system).
[1366] (Application example 2)
[1367] 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."
[1368] Conventional dating services struggle to provide reliable matches based on users' values and interests. Furthermore, they lack a means to provide a personalized experience that takes into account the user's emotional state, making it difficult to increase user satisfaction. Furthermore, they lack effective communication promotion methods to facilitate smooth encounters in virtual spaces.
[1369] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes: means for collecting basic information entered by a user and storing it in a database; means for presenting questions about the user's interests, values, and hobbies and collecting the answers; means for generating a user profile using the collected data and storing it in a database; means for monitoring and collecting users' daily conversations and uploaded content; means for analyzing the collected data and updating the user profile; means for clustering multiple user profiles and matching highly similar users; means for proposing interactions in a virtual space and setting up virtual dating events; means for providing an environment for users to communicate with each other in a virtual space if the proposal is approved; means for providing a computer program for promoting conversations between users; and means for collecting user satisfaction levels, analyzing feedback, and using the results to improve the system. This allows users to have reliable encounters and provides a personalized experience that takes emotional states into account. It also promotes effective communication in a virtual space and increases user satisfaction.
[1370] "Basic information" refers to data used to identify an individual, such as name, email address, and password, that a user provides when registering.
[1371] "Questions" are provided in the form of a questionnaire or interview that the system presents to clarify the user's interests, values, and hobbies.
[1372] A "user profile" is information generated based on collected data that summarizes the characteristics of an individual user, reflecting their interests, values, and hobbies.
[1373] A "conversation" is a communication exchange using text messages or voice that a user engages in on a daily basis.
[1374] "Content" refers to media and text data such as photos, videos, and articles uploaded by users.
[1375] "Analysis" is the process of extracting and analyzing keywords and context from collected data using text analysis techniques.
[1376] "Clustering" is the process of grouping users with similar characteristics based on their user profiles.
[1377] "Matching" is the process of connecting highly similar users with each other through clustering.
[1378] A "virtual space" is a virtual environment on the Internet where users can interact with each other through avatars and other means.
[1379] A "virtual dating event" is an event held in a virtual space where users participate in activities based on common interests or hobbies.
[1380] A "computer program" is software that operates to facilitate conversations between users and has the ability to provide questions and topics.
[1381] "Feedback" refers to the impressions and evaluations that users provide to the system after use, and is data used to improve the system.
[1382] This invention utilizes AI to help users find trustworthy encounters and supports good encounters based on their values and interests. In particular, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state.
[1383] The system includes the following specific steps:
[1384] 1. Basic information collected and stored:
[1385] The user enters basic information such as name, email address, and password at the device, which is hashed and securely stored in a database.
[1386] 2. Posting questions and collecting answers:
[1387] The server asks new users questions about their interests, values, and hobbies, and the users answer the questions via their devices, and the data is sent to the server.
[1388] 3. Create and save your user profile:
[1389] Based on the collected data, the server generates a user profile and stores it in a database, which reflects the user's interests, values, and emotional state.
[1390] 4. Routine data collection and analysis:
[1391] The server monitors and collects users' daily conversations and uploaded content, and the collected data is processed using text analysis techniques to extract keywords and context.
[1392] 5. Clustering and Matching:
[1393] The server performs clustering based on all user profiles, groups users with high similarities, and then selects the most suitable match candidate within the cluster.
[1394] 6. Virtual dating event suggestions:
[1395] The server proposes to the matched users that they interact in a virtual space and sets up virtual meeting events.
[1396] 7. Providing a communication environment in virtual space:
[1397] If the proposal is approved, the server provides an environment for users to communicate with each other in a virtual space.
[1398] 8. Chatbots facilitate conversations:
[1399] The server uses chatbot AI to facilitate conversations between users, and the chatbot takes into account the user's emotional state and suggests appropriate questions and topics.
[1400] 9. Satisfaction data collection and system improvement:
[1401] After a user finishes a virtual dating event, the server displays and collects a satisfaction survey, which is then analyzed and used to improve the system.
[1402] Hardware and software used
[1403] Database: We use SQLite to store user information, profiles and feedback.
[1404] Text Analysis: Analyzes text for sentiment scores and keywords using Natural Language Toolkit (NLTK) and TextBlob.
[1405] Emotion Engine: Parses emotional state using TextBlob.
[1406] Communication: Data transmission from the device to the server using HTTP / HTTPS protocols.
[1407] Chatbot: A chatbot program implemented in Python is used.
[1408] Specific examples
[1409] For example, when User A accesses the system and creates an account, he or she enters his or her name, email address, and password. This information is stored in the database. User A then answers questions about his or her interests, values, and hobbies. An initial user profile is generated based on this information.
[1410] When User A uploads conversations and content on a daily basis, the data is analyzed in real time and their profile is updated. The server then matches User B with User A and proposes a virtual meeting event. If the proposal is approved, a dedicated chat room is created and a chatbot AI facilitates the conversation.
[1411] A concrete example of a conversation is as follows:
[1412] User A: "I love sports, especially soccer."
[1413] System: "I know someone who likes soccer too. Would you like to talk with me?"
[1414] User A: "I haven't been feeling very energetic lately."
[1415] System (Chatbot AI): "It's also a good idea to relax. What movie have you seen recently?"
[1416] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1417] Step 1:
[1418] Basic information collected and stored:
[1419] The user uses a device to enter basic information such as name, email address, and password. The device sends the entered information to the server. The server hashes the received information and stores it in a database. The input of this step is the user's basic information, and the output is the user information securely stored in the database.
[1420] Step 2:
[1421] Ask questions and collect answers:
[1422] The server generates questions for new users about their interests, values, and hobbies, and sends them to the device. The device displays a question form to the user, and the user enters their answers. The entered answer data is sent from the device to the server, which receives and stores it. The input of this step is the answer data to the question, and the output is the stored answer data.
[1423] Step 3:
[1424] Creating and saving a user profile:
[1425] The server uses the collected basic information and response data to generate a user profile. The generated profile is saved in a database. In this step, data processing and analysis are performed based on the input basic information and response data, and the user profile is output and saved.
[1426] Step 4:
[1427] Routine data collection and analysis:
[1428] Users upload everyday conversations and content to their devices. The devices then send this data to the server. The server analyzes the received data in real time and uses an emotion engine to extract emotional states and keywords. The user profile is updated based on the analysis results. The input of this step is everyday conversations and content data, and the output is an updated user profile.
[1429] Step 5:
[1430] Clustering and Matching:
[1431] The server performs a clustering process based on all stored user profiles. It calculates similarity indices using text analysis and other methods to group users. It then selects the best matching candidates within each cluster. The input to this step is each user's profile data, and the output is matched user pairs.
[1432] Step 6:
[1433] Virtual dating event suggestions:
[1434] The server proposes a virtual social event to the matched users. Information about the event is sent to the users through their device's notification function. The users then approve the proposal. The input of this step is the matched user pair and event information, and the output is the event that the users approve of.
[1435] Step 7:
[1436] Providing a communication environment in a virtual space:
[1437] After the proposal is approved, the server generates a dedicated chat room for users to communicate with each other in the virtual space and sends the information to the terminal. The user logs in to the virtual space and starts communicating in the chat room. The input of this step is the approved event information, and the output is the generated chat room.
[1438] Step 8:
[1439] Chatbots drive conversations:
[1440] The server uses chatbot AI to facilitate conversations between users. The chatbot takes into account the user's emotional state and provides appropriate questions and topics. For example, it provides prompts such as, "You seem to be feeling down lately. Would you like to talk about some of your hobbies?" The input for this step is the conversation data between users, and the output is a prompting message from the chatbot.
[1441] Step 9:
[1442] Satisfaction data collection and system improvement:
[1443] When a user finishes a virtual dating event, the server displays a satisfaction survey on the user's device and collects responses. The collected feedback data is analyzed by the server and used to improve the system. The input of this step is the satisfaction survey responses, and the output is the analyzed feedback results.
[1444] 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.
[1445] 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.
[1446] 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.
[1447] [Fourth embodiment]
[1448] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1449] 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.
[1450] 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).
[1451] 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.
[1452] 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.
[1453] 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).
[1454] 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.
[1455] 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.
[1456] 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.
[1457] 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.
[1458] 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.
[1459] 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.
[1460] 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."
[1461] This invention relates to a system that utilizes AI to support users in finding reliable encounters based on their values and interests. Specific embodiments for carrying out the invention are described below.
[1462] 1. User registration and initial settings
[1463] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[1464] The server receives the user's basic information and stores it in a database. Passwords are hashed and stored securely.
[1465] 2. Create a user profile
[1466] The device will ask the user questions about their interests, values, and hobbies. Questions can be formatted in a variety of ways, including pull-down menus and text input.
[1467] The user enters an answer, which is then sent to the server.
[1468] The server receives the response and stores it in a database, which creates an initial user profile.
[1469] 3. Data collection and model updating
[1470] The device monitors users' everyday conversations, uploaded images, and shared content, collecting data in real time.
[1471] The server analyzes the collected data and updates the user profile daily. Text analysis technology is used to extract keywords and context from the conversation and incorporate them into the model.
[1472] 4. Clustering and Matching
[1473] The server performs a clustering process based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[1474] The server will select the best match within the cluster, and similarly for new users, they will be added to an existing cluster.
[1475] 5. Dating suggestions and setup
[1476] The server will then make suggestions for meeting users, using email and app notifications to suggest events and activities based on shared interests.
[1477] If the user approves the proposal, the device creates a communication environment (e.g., a private chat room), sets the date and time, and sends a confirmation message.
[1478] 6. Facilitating conversations and providing feedback
[1479] The chatbot AI will join the chat room and pose questions and topics at appropriate times to encourage conversation, such as suggesting, "Let's talk about your recent hobbies."
[1480] Users can chat and enjoy meeting each other.
[1481] After the conversation ends, the device displays a satisfaction survey and collects feedback from the user.
[1482] 7. Feedback and Improvement
[1483] The user answers the questionnaire and the answers are sent to the server.
[1484] The server analyzes the survey results and stores them in a database. Feedback is used to improve the algorithm and the overall system.
[1485] Specific examples
[1486] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then saved in the database. User A then answers a questionnaire stating that he / she likes movies, specifically horror movies. An initial user profile is generated based on this information.
[1487] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[1488] The server discovers that User B is also interested in zombie movies and matches User A and User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[1489] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" When the conversation ends, a survey will be displayed and users A and B will provide feedback on their satisfaction. This feedback will be stored on the server and used to improve the system.
[1490] The above is a specific embodiment for carrying out the invention. This system allows users to make reliable encounters with people who share their values and interests.
[1491] The processing flow will be explained below.
[1492] Step 1:
[1493] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[1494] The terminal collects the input information and sends it to the server.
[1495] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[1496] Step 2:
[1497] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[1498] The terminal displays a question form to the user and prompts the user to enter an answer.
[1499] The user answers the questions and submits the data.
[1500] The server receives the response data, generates an initial user profile, and stores it in a database.
[1501] Step 3:
[1502] The device collects the user's daily activities, such as chat content and uploaded content.
[1503] Every time a user chats or shares content, the device sends this data to the server.
[1504] The server analyzes the collected data in real time, extracts keywords and context using text analysis technology, and updates the user profile.
[1505] Step 4:
[1506] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[1507] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[1508] Step 5:
[1509] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[1510] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[1511] Step 6:
[1512] The server invites chatbot AI to join the chat room to promote conversations between users.
[1513] Chatbot AI prompts questions and topics at the right time to stimulate conversation.
[1514] For example, suggest, "Let's talk about a movie you recently saw."
[1515] Step 7:
[1516] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[1517] The user answers the questionnaire and the answers are sent to the server.
[1518] The server receives the survey results and stores them in a database. Analysis of the results will be used to improve the system.
[1519] Through these steps, the system helps users make reliable connections with people who share their values and interests.
[1520] Example 1
[1521] 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."
[1522] In modern society, there are many systems that allow users to find reliable encounters, but most of them do not adequately match users based on their interests and values, making it difficult for users to find satisfying encounters. Another problem is that user profiles are not updated in real time, making it difficult for them to reflect daily activities. Furthermore, there is a lack of support to smoothly advance conversations after matching, which can lead to a decrease in conversation satisfaction.
[1523] 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.
[1524] In this invention, the server includes means for collecting basic information entered by users and saving it in a database, means for asking users questions about their interests, values, and hobbies and collecting their responses, means for generating user profiles using the collected data and saving them in a database, means for monitoring and collecting users' daily conversations and uploaded content, means for analyzing the collected data and updating the user profiles, means for clustering multiple user profiles and matching highly similar users, means for making meeting suggestions to matched users, means for providing an environment for users to communicate with each other if the suggestions are accepted, means for providing an automatic conversation generation device to promote conversations between users, and means for collecting user satisfaction levels, analyzing feedback, and using the information to improve the system. This makes it possible to provide reliable encounters based on users' interests and values in real time, thereby improving the satisfaction of encounters.
[1525] "Basic information" refers to information used to identify an individual, such as a name, email address, and password, that a user enters when creating a new account.
[1526] "Database" refers to a large information collection system that the system uses to manage and store basic information and profile information of users.
[1527] "Interests, values, and hobbies" refers to personal information such as a user's particular interests, beliefs, and activities they enjoy in their leisure time.
[1528] "Presenting a question" refers to the act of displaying a question to prompt the user to input or select specific information.
[1529] "Collecting answers" refers to the act of obtaining data entered by users in response to questions presented to them.
[1530] A "user profile" is a collection of individual information data generated based on a user's basic information, interests, values, hobbies, activity history, and the like.
[1531] "Daily conversation" refers to communication activities that users engage in in their normal daily lives.
[1532] "Uploaded Content" is any digital data, such as images, text, or video, that a user uploads to the system.
[1533] "Monitoring" means that the system constantly observes the user's activities and input data and automatically collects the necessary data.
[1534] "Analyzing" means to analyze collected data in detail and process it to find specific patterns or meanings.
[1535] "Clustering" refers to the act of classifying multiple user profiles based on their mutual similarities and grouping them together.
[1536] "Similarity" refers to the degree of commonality between users in characteristics such as interests, values, and hobbies.
[1537] "Matching" refers to the act of selecting users who have high similarities as candidates for meeting.
[1538] "Making suggestions for meeting people" refers to the act of recommending events or activities to matched users to encourage new encounters.
[1539] A "communication environment" is an online platform or system that allows users to converse and exchange messages in real time.
[1540] The "automatic conversation generation device" is a function in which AI automatically generates and provides questions and topics to facilitate smooth conversations between users.
[1541] "Satisfaction" refers to the degree of satisfaction a user has with the service provided.
[1542] "Feedback" refers to evaluations and opinions about the system provided by users, and is data used for improvement and optimization.
[1543] This invention is a system that utilizes AI to help users find reliable encounters, and detailed implementation methods are described below.
[1544] Hardware and software used
[1545] To implement this system, a server, a terminal, a database, and a generative AI model are required. Specific software includes a natural language processing library, a machine learning algorithm (e.g., K-means clustering), a database management system (e.g., MySQL), and a chatbot AI.
[1546] System configuration description
[1547] 1. User registration and initial settings
[1548] A user accesses the system using a terminal and creates a new account by entering basic information such as name, email address, and password.
[1549] The server receives the user's basic information, hashes the password for safe storage, and stores it in a database, ensuring security against external attacks.
[1550] 2. Create a user profile
[1551] The device prompts the user with questions about their interests, values, and hobbies, which are presented in a variety of ways, including through pull-down menus and text input.
[1552] The user answers the questions and the answers are sent to the server.
[1553] The server stores the received answers in a database and generates a user profile.
[1554] 3. Data collection and model updating
[1555] The device monitors users' daily conversations, uploaded images, and shared content, collecting data such as chat logs and metadata about uploaded images.
[1556] The data collected by the server is analyzed using natural language processing technology to extract keywords and context.
[1557] The server updates user profiles daily based on the analysis results. For example, if a user frequently posts comments about movies, their interests will be reflected in their profile.
[1558] 4. Clustering and Matching
[1559] The server uses a machine learning algorithm to perform clustering based on all user profiles, which allows users with high similarities to be grouped into the same cluster.
[1560] The server selects the best matching candidate within each cluster and notifies the user of the result.
[1561] 5. Dating suggestions and setup
[1562] The server then suggests events and activities for matched users to meet, for example, sending a notification saying, "Would you like to join us at a movie screening this weekend?"
[1563] If the user approves the proposal, the server will create a dedicated chat room and set details such as the date, time, and topic.
[1564] 6. Facilitating conversations and providing feedback
[1565] The terminal invites users to join the chat room and prompts them to start a conversation.
[1566] The chatbot AI asks questions such as "Let's talk about your recent hobbies" during the conversation, allowing the conversation to progress naturally.
[1567] After users have enjoyed the conversation, a satisfaction survey is displayed when the chat room ends.
[1568] The user answers the questionnaire and the results are sent to the server.
[1569] Specific examples
[1570] For example, User A accesses the system and creates a new account. User A enters his / her name, email address, and password, which are saved on the server. Next, User A answers questions about his / her interests and enters that he / she likes movies.
[1571] Every day, when User A posts comments and reviews about movies, the server collects that data, analyzes it, and updates the profile of User A. Through the analysis, it is discovered that User A is particularly interested in zombie movies, and that User B has the same interest.
[1572] The server matches User A and User B and sends them a proposal saying, "Would you like to join us for a zombie movie screening this weekend?" If both parties accept the proposal, a private chat room is created and the chatbot AI prompts them with questions such as, "What zombie movie have you seen recently?" to encourage conversation.
[1573] The above is a specific embodiment for carrying out the present invention.
[1574] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1575] Step 1: User registration and initial setup
[1576] Input: The user enters their name, email address, and password through the terminal.
[1577] Specific operation: The user enters the basic information required to create a new account from the device and clicks the "Register" button.
[1578] Data processing: The server receives the entered data and hashes the password, for example using the bcrypt library.
[1579] Output: Hashed password and basic information stored securely in a database. User is sent a registration confirmation email.
[1580] Step 2: Create a user profile
[1581] Input: The user answers questions about their interests, values, and hobbies.
[1582] Specific operation: The user enters an answer to the question form presented by the terminal and clicks the "Submit" button.
[1583] Data processing: The server receives the user's answers and stores them in a database. The text data is converted into structured data.
[1584] Output: An initial user profile is generated and stored in the database.
[1585] Step 3: Data collection and model updating
[1586] Input: Data such as your everyday conversations, uploaded images, and shared content.
[1587] Specific operation: The device monitors and collects user activity data in real time.
[1588] Data processing: The data collected by the server is analyzed using natural language processing technology (e.g., spaCy or nltk library) to extract keywords and context.
[1589] Output: The analysis results are reflected in the user profile, and the updated profile is saved in the database.
[1590] Step 4: Clustering and matching
[1591] Input: All user profile data.
[1592] Specific operation: The server performs clustering based on the user profile. The clustering is performed using the K-means algorithm.
[1593] Data processing: Calculate similarity indices and classify users into appropriate clusters.
[1594] Output: Identify highly similar users within the cluster and select matching candidates.
[1595] Step 5: Propose and set up a meeting
[1596] Input: Matched user's profile data.
[1597] Specific behavior: The server will suggest events and activities to matched users. Suggestions will be sent via email and in-app notifications.
[1598] Data processing: A generative AI model is used to generate the proposals.
[1599] Output: If the user accepts the proposal, a private chat room will be created and the user will be notified with details.
[1600] Step 6: Facilitating conversation and feedback
[1601] Input: Chat data between matched users.
[1602] Specific behavior: The device invites the user to the generated chat room and starts chatting. The chatbot AI provides questions and topics to encourage the conversation.
[1603] Data processing: The chatbot analyzes the user's conversation and generates prompts at the appropriate time.
[1604] Output: The user enjoys the conversation and is shown a satisfaction survey after the conversation ends.
[1605] Step 7: Feedback and Improvement
[1606] Input: User satisfaction survey data.
[1607] Specific action: The user answers the survey and clicks the submit button.
[1608] Data processing: The server receives the survey results and stores them in a database. The feedback data is analyzed to identify areas for improvement in the system.
[1609] Output: The collected feedback is used to improve the system's algorithms and interface.
[1610] (Application example 1)
[1611] 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."
[1612] Conventional dating systems match users based on their interests and values, but especially in the food delivery field, they do not perform advanced matching that takes into account users' food preferences or restaurant information. This makes it difficult to provide users with truly satisfying encounters and dining experiences. There is also a lack of effective ways to promote communication between users.
[1613] 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.
[1614] In this invention, the server includes a means for collecting basic information entered by the user and storing it in a database, a means for asking questions about the user's interests, values, and hobbies and collecting the answers, and a means for creating a user profile using the collected data and storing it in a database, thereby enabling the user to have truly satisfying encounters and dining experiences.
[1615] The server also includes a means for monitoring and collecting users' daily conversations and uploaded content, a means for analyzing the collected data and updating user profiles, and a means for clustering multiple user profiles and matching users with high similarities, thereby enabling highly accurate matching.
[1616] The server also includes a means for suggesting dishes and restaurants to matched users based on the user's food preferences and interests, a means for providing an environment for users to communicate with each other if the suggestion is accepted, a means for providing a chatbot to promote conversations between users, and a means for collecting user satisfaction levels, analyzing feedback, and using the collected feedback to improve the system. This effectively promotes communication between users and increases overall satisfaction.
[1617] "Basic information" refers to basic identification information entered by the user, such as name, email address, and password.
[1618] "Interests and values" is information about a user's specific interests, beliefs, and preferences.
[1619] "Hobbies" are activities or interests that a user enjoys in their private time.
[1620] A "database" is a system for systematically storing and managing collected information.
[1621] A "user profile" is a collection of information including a user's interests, values, hobbies, basic information, and so on.
[1622] "Clustering" is a technical method for grouping similar data.
[1623] "Matching" is the process of connecting users who have similarities with each other.
[1624] "Food preferences" are specific cuisines or types of food that a user likes.
[1625] A "restaurant" is a commercial establishment that serves food and beverages.
[1626] A "communication environment" refers to an online space where users can interact and exchange information.
[1627] A "chatbot" is a program that uses AI to automatically converse with users.
[1628] "Satisfaction" refers to the degree of satisfaction a user feels with a service or proposal.
[1629] "Feedback" refers to reactions based on opinions and ratings provided by users.
[1630] The present invention provides a system that utilizes AI to support users in finding reliable encounters based on their values and interests. Specific embodiments for implementing the present invention are described below.
[1631] 1. Hardware and Software Used
[1632] Hardware: Server computers, smartphones
[1633] Software: Python, Flask (web framework), scikit-learn (machine learning library), database (e.g., Redis or MongoDB)
[1634] 2. System Overview
[1635] User device: The device that a user accesses and enters basic information and interests.
[1636] Server: A server computer that works with databases, analyzes data, and performs clustering and matching.
[1637] Database: A system for storing user information and profile data.
[1638] 3. Program processing explanation
[1639] The user uses the device to input basic information, hobbies, and interests, which is then sent to the server and stored in a database.
[1640] The server uses text analysis technology to extract keywords and context from user conversations and uploaded content, and uses this data to generate and update user profiles.
[1641] To generate and update user profiles, we use scikit-learn's KMeans to perform clustering and match users with high similarity.
[1642] Matched users will be offered suggestions for dishes and restaurants based on their food preferences and interests. The suggestions are sent from the server to the device, and if the user approves, a communication environment will be provided.
[1643] Chatbots join the conversation, offering questions and topics that will drive the conversation at the right time.
[1644] Finally, user satisfaction feedback is collected and stored in a database, which is used to improve the algorithm and the overall system.
[1645] 4. Specific Examples
[1646] For example, User A accesses the system and creates an account. User A specifies in his profile that he is interested in sushi and Japanese food. The system clusters User B, who is also interested in Japanese food, and performs matching. The server proposes a "dinner meeting at a nearby Japanese restaurant" to both users, and if Users A and B accept, a communication environment is created. A chatbot joins the conversation, asking questions such as "What Japanese food have you liked recently?" After the conversation ends, Users A and B provide feedback on their satisfaction, which is used to improve the system.
[1647] 5. Examples of prompts
[1648] "If a user is interested in Japanese food, how can we use that information to match them with other users who also love Japanese food and suggest nearby Japanese restaurants?"
[1649] The above is a specific embodiment for carrying out the present invention. This system allows users to make reliable encounters with people who share their values and interests.
[1650] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1651] Step 1:
[1652] The user enters basic information at the terminal.
[1653] What happens: A user enters basic information such as name, email address, and password, and submits the registration form.
[1654] Input: User's name, email address, and password
[1655] Output: Input is sent from the terminal to the server.
[1656] Data processing: The server hashes the received password and stores the user's basic information in the database.
[1657] Step 2:
[1658] The device asks the user questions about their interests, values, and hobbies.
[1659] Specific operation: The terminal displays questions in a questionnaire format, and the user enters answers.
[1660] Input: Answers about the user's interests, values, and hobbies
[1661] Output: The answer is sent from the device to the server.
[1662] Data processing: The server stores the received answers in a database and generates an initial user profile.
[1663] Step 3:
[1664] The server monitors and collects users' daily conversations and uploaded content.
[1665] What it does: When users chat or upload content, the server collects that data in real time.
[1666] Input: User conversation data, uploaded content
[1667] Output: The collected data is analyzed in the server.
[1668] Data processing: The server uses text analysis technology to extract keywords and context from the conversation and reflect this in the user profile.
[1669] Step 4:
[1670] The server clusters multiple user profiles and matches users with high similarities.
[1671] Specific operation: The server performs clustering processing based on all stored user profiles.
[1672] Input: All user profile data
[1673] Output: List of users in clusters with high similarity
[1674] Data processing: Use scikit-learn's KMeans to cluster and match user profiles.
[1675] Step 5:
[1676] The server will suggest dishes and restaurants to the matched user based on the user's food preferences and interests.
[1677] Specific operation: The server selects the appropriate restaurant and food, generates a notification message, and sends it to the user.
[1678] Input: Matched user profile, restaurant information
[1679] Output: Notifications suggesting dinner parties and restaurants
[1680] Data processing: Based on the suggestions, notifications will be sent via email or app notification functions.
[1681] Step 6:
[1682] If the proposal is approved, the server provides an environment for users to communicate with each other.
[1683] Specific behavior: When the user accepts the proposal, the server creates a dedicated chat room.
[1684] Input: User's proposal approval information
[1685] Output: Chat room URL and access information
[1686] Data processing: The server creates the chat room and provides access information to both users.
[1687] Step 7:
[1688] The server provides a chatbot to promote conversations between users.
[1689] What it does: The chatbot automatically joins the conversation, providing questions and topics at the right time.
[1690] Input: Chat room conversation data
[1691] Output: What the chatbot says
[1692] Data processing: The chatbot analyzes the conversation content and generates and poses appropriate questions and topics.
[1693] Step 8:
[1694] The server collects user satisfaction, analyzes the feedback, and uses it to improve the system.
[1695] Specific behavior: After the conversation ends, display a satisfaction survey and collect feedback from the user.
[1696] Input: User satisfaction survey responses
[1697] Output: Feedback result data
[1698] Data processing: The server analyzes the feedback and stores the results in a database to help improve the system and algorithms.
[1699] 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.
[1700] This invention relates to a system that utilizes AI to help users find trustworthy encounters and supports good encounters based on their values and interests. In particular, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state. Specific embodiments for implementing the invention are described below.
[1701] 1. User registration and initial settings
[1702] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[1703] The terminal collects the input information and sends it to the server.
[1704] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[1705] 2. Create a user profile
[1706] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[1707] The terminal displays a question form to the user and prompts the user to enter an answer.
[1708] The user answers the questions and submits the data.
[1709] The server receives the response data, generates an initial user profile, and stores it in a database.
[1710] 3. Data collection and model updating
[1711] The device collects the user's everyday conversations and uploaded content.
[1712] Every time a user chats or shares content, the device sends this data to the server.
[1713] The server analyzes the collected data in real time and uses text analysis technology to extract keywords and context.
[1714] The emotion engine recognizes the user's emotional state from the collected data and reflects it in the profile.
[1715] 4. Clustering and Matching
[1716] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[1717] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[1718] 5. Dating suggestions and setup
[1719] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[1720] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[1721] 6. Facilitating conversations and providing feedback
[1722] The server invites chatbot AI to join the chat room to promote conversations between users.
[1723] The chatbot AI poses questions and topics at the right time to stimulate conversation. It also takes into account the user's emotional state and makes suggestions such as, "You seem down lately. Shall we talk about your hobbies?"
[1724] Users can chat and enjoy meeting each other.
[1725] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[1726] 7. Feedback and Improvement
[1727] The user answers the questionnaire and the answers are sent to the server.
[1728] The server receives the survey results and stores them in a database. Analysis of the results will be used to improve the system.
[1729] Specific examples
[1730] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then saved in the database. User A then answers a questionnaire stating that he / she likes movies, specifically horror movies. An initial user profile is generated based on this information.
[1731] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[1732] The server discovers that User B is also interested in zombie movies and matches User A and User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[1733] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" Furthermore, if the emotion engine detects that User A has been feeling stressed recently, the chatbot AI will suggest, "I also recommend a relaxing movie."
[1734] After the conversation is over, a survey is displayed and users A and B provide feedback on their satisfaction. This feedback is stored on the server and used to improve the system.
[1735] The above is a concrete example of how to implement the invention by combining an emotion engine. This system allows users to connect with people who share their values and interests, and provides personalized approaches based on their emotional state.
[1736] The processing flow will be explained below.
[1737] Step 1:
[1738] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password.
[1739] The terminal transmits the input information to the server.
[1740] The server receives the basic information you submit and stores it in a database. Passwords are hashed and stored securely.
[1741] Step 2:
[1742] The server generates a questionnaire about the interests, values, and hobbies of a newly registered user and sends it to the terminal.
[1743] The terminal displays a question form to the user and prompts the user to enter an answer.
[1744] The user answers the questions and submits the data.
[1745] The server receives the response data, generates an initial user profile, and stores it in a database.
[1746] Step 3:
[1747] The device collects the user's everyday conversations, uploaded images, and shared content.
[1748] The user generates these data and the terminal sends them to the server.
[1749] The server analyzes the collected data and uses text analysis techniques to extract keywords and contexts, updating the user profile.
[1750] Step 4:
[1751] The emotion engine recognizes the user's emotional state from the collected data, for example by extracting emotional indicators from text, voice, and image data and determining whether the emotion is positive or negative.
[1752] The server reflects the determined emotion information in the user profile and updates the profile.
[1753] Step 5:
[1754] The server performs clustering based on all user profiles, calculates similarity indices, and classifies users into appropriate clusters.
[1755] The server selects the best match candidate within the cluster, and new users are added to the cluster in the same way.
[1756] Step 6:
[1757] The server will then make suggestions for potential matches to potential users, using email and app notifications to suggest events and activities based on mutual interests.
[1758] If the user approves the proposal, the information is sent to the terminal and a dedicated chat room is created.
[1759] Step 7:
[1760] The server invites chatbot AI to join the chat room to promote conversations between users.
[1761] The chatbot AI poses questions and topics at the right time to stimulate conversation. For example, if the user is feeling stressed, the emotion engine will suggest, "Why don't we talk about some hobbies that help you relax?"
[1762] Users can chat and enjoy meeting each other.
[1763] Step 8:
[1764] Once the conversation is over, the device displays a satisfaction survey to the user and collects feedback.
[1765] The user answers the questionnaire and the answers are sent to the server.
[1766] The server receives the survey results and stores them in a database. The feedback is analyzed and used to improve the system.
[1767] Through these steps, the system helps users find reliable connections with people who share their values and interests, and the combination of an emotion engine enables personalized responses that take into account the user's emotional state.
[1768] Example 2
[1769] 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."
[1770] Conventional dating support systems often fail to fully consider the user's values and interests when matching, resulting in poor quality encounters. Furthermore, because they do not take into account the user's current emotional state, the user experience tends to be poor. This results in low user satisfaction. Furthermore, there are also problems with conversations not progressing smoothly after matching, or communication breaking down.
[1771] 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.
[1772] In this invention, the server includes means for collecting basic information entered by users and storing it in a database, means for presenting questions about the user's interests, values, and hobbies and collecting the answers, means for generating a user profile using the collected data and storing it in a database, means for monitoring and collecting users' daily conversations and uploaded content, means for analyzing the collected data and updating the user profile, means for clustering multiple user profiles and matching users with high similarities, means for making meeting suggestions to the matched users, means for providing an environment for users to communicate with each other if the suggestions are accepted, means for providing an interactive artificial intelligence for promoting conversations between users, means for collecting user satisfaction levels, analyzing the feedback, and using it to improve the system, means for including an emotion engine that recognizes emotional states, and means for personalizing conversations based on the emotional states. This enables high-quality meetings that take into account the user's values and interests and personalized communication according to the user's emotional states.
[1773] "Basic Information" refers to personal identification information such as name, email address, and password provided by a User when registering with the System.
[1774] "Questions" refers to a series of questions the system presents to understand the user's interests, values, and hobbies.
[1775] An "answer" refers to information provided by a user in response to a question.
[1776] "User Profile" refers to a data set that describes a user's characteristics, generated from collected basic information, interests, values, hobbies, and other data.
[1777] "Database" refers to data storage within a system for organizing and storing collected information.
[1778] "Daily conversation" refers to the daily text chat, message exchanges, and content sharing that users engage in within the system.
[1779] "Uploaded Content" refers to images, videos, text documents and other digital files that Users provide to the System.
[1780] "Monitoring" refers to the process by which the system automatically collects and analyzes users' everyday conversations and uploaded content.
[1781] "Clustering" refers to the process of calculating similarities based on multiple user profiles and grouping users.
[1782] "Matching" refers to the process of selecting highly compatible users from clustered user profiles and providing them with opportunities to meet.
[1783] "Suggestion" refers to an invitation to a matched user to participate in an event or activity based on a shared hobby or interest.
[1784] "Communication environments" refers to chat rooms and other digital communication tools that allow users to exchange messages with each other in real time.
[1785] "Conversational artificial intelligence" refers to a program that provides questions and topics at appropriate times to stimulate conversations between users.
[1786] "Satisfaction" refers to the degree of satisfaction a user feels with the system or encounters.
[1787] "Feedback" refers to evaluations and opinions about the system provided by users.
[1788] "Emotion engine" refers to a program that analyzes and recognizes the user's emotional state from collected data.
[1789] "Personalization" refers to the process of adjusting the functions and services provided by a system according to the characteristics and status of each individual user.
[1790] This invention is a system that utilizes artificial intelligence (AI) to support matching based on users' values and interests, so that users can find reliable encounters. Furthermore, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state.
[1791] User registration and initial settings
[1792] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password. This information is sent from the user's device to the server. The server stores the received information in a database. The password is hashed (e.g., using the bcrypt algorithm) and stored securely.
[1793] Creating a User Profile
[1794] The server generates a questionnaire about the interests, values, and hobbies of newly registered users and sends it to the terminal. The terminal displays the questionnaire to the user and prompts the user to enter answers. When the user answers the questions, the data is sent to the server. The server generates an initial user profile based on the received answer data and saves it in a database.
[1795] Data collection and model updates
[1796] Every time a user chats or shares content, the device collects this data and sends it to a server. The server analyzes the collected data in real time. Natural language processing (NLP) technology is used to extract keywords and context from the text, and an emotion engine recognizes the user's emotional state. This information is used to update the profile, enabling more accurate matching.
[1797] Clustering and Matching
[1798] The server performs a clustering process based on all user profiles. Specifically, it applies a clustering algorithm (e.g., k-means or DBSCAN) to group users based on similar characteristics. The best matching candidate within the cluster is selected, and new users are added to the cluster in the same way.
[1799] Dating suggestions and setup
[1800] The server sends matchmaking suggestions to potential users. Specifically, it uses email and app notifications to suggest events and activities based on mutual hobbies and interests. When a user accepts a suggestion, the information is sent to the user's device and a dedicated chat room is created.
[1801] Facilitating conversations and feedback
[1802] The server invites conversational artificial intelligence (AI) into the chat room to promote conversation between users. The chatbot AI provides questions and topics at appropriate times to stimulate conversation. For example, it might ask questions such as, "What movie have you seen recently?" The emotion engine also detects the user's emotional state and makes suggestions such as, "Are you feeling stressed lately? I recommend a relaxing movie." Once the conversation ends, the device displays a satisfaction survey to the user and collects feedback.
[1803] Feedback and Improvements
[1804] When a user answers a survey, the results are sent to a server, which receives the feedback and stores it in a database. This feedback can be analyzed to improve the system, for example, by adjusting the matching algorithm based on the feedback to improve the user experience.
[1805] Specific examples
[1806] For example, User A accesses the system and creates an account. User A enters his / her name, email address, and password, which are then stored in the database. User A then answers a questionnaire stating that he / she likes movies, and specifically enters that he / she likes horror movies. Based on this, an initial user profile is generated.
[1807] User A uploads articles and reviews about movies on a daily basis, which are collected as data. Text analysis reveals that User A is particularly interested in zombie movies, and updates their profile accordingly.
[1808] The server discovers that User B is also interested in zombie movies and matches User A with User B. The server then proposes a "zombie movie screening this weekend" to both users, and if both agree, a dedicated chat room is created.
[1809] During the chat, the chatbot AI will prompt the conversation by asking questions such as, "What zombie movie have you seen recently?" Furthermore, if User A has been feeling stressed recently based on the emotion engine, the chatbot AI will suggest, "I also recommend a relaxing movie."
[1810] After the conversation ends, a survey is displayed and users A and B provide feedback on their level of satisfaction. This feedback is stored on the server and used to improve the system.
[1811] The system allows users to connect with people who share their values and interests with confidence, and provides a personalized approach based on their emotional state.
[1812] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1813] Step 1:
[1814] A user accesses the system and creates a new account. The user enters basic information such as name, email address, and password into an input form in a browser or mobile app (input: name, email address, password). The device collects this information and sends it to the server in an encrypted form using the HTTPS protocol (output: encrypted user information).
[1815] Step 2:
[1816] The server receives and parses the basic information sent by the user (input: encrypted user information, output: parsed user information), then hashes the password (e.g. using the bcrypt algorithm) and stores it in the database (input: parsed user information, output: hashed password and other registration information).
[1817] Step 3:
[1818] The server generates a question form for a newly registered user about their interests, values, and hobbies (input: newly registered user data, output: generated question form). The device displays the question form to the user and prompts them to answer (input: generated question form, output: displayed question form).
[1819] Step 4:
[1820] The user answers questions about their interests and values and sends the data (input: question form, output: answer data). The device then sends the collected answer data to the server (input: answer data, output: answer data sent to the server).
[1821] Step 5:
[1822] The server receives and analyzes the user's response data (input: response data sent to the server, output: analyzed response data). Based on that data, it generates an initial user profile and saves it in a database (input: analyzed response data, output: initial user profile).
[1823] Step 6:
[1824] The device collects the user's daily conversations and uploaded content in real time (input: daily conversation data, content data; output: collected data). Every time the user chats or shares content, the device sends this data to the server (input: collected data; output: data sent to the server).
[1825] Step 7:
[1826] The server receives the collected data and analyzes it using natural language processing (NLP) technology (input: data sent to the server, output: text analysis results). Next, the emotion engine recognizes the user's emotional state and reflects the results in the user profile (input: text analysis results, output: updated user profile).
[1827] Step 8:
[1828] The server performs clustering based on all user profiles (input: all user profiles, output: clustering results). It applies a clustering algorithm (e.g., k-means or DBSCAN) to group users based on similar characteristics (output: user data classified into each cluster).
[1829] Step 9:
[1830] The server matches highly compatible users within the cluster (input: clustering results, output: matching candidates). It evaluates compatibility using a machine learning model (e.g., Support Vector Machine or Random Forest) and selects the optimal combination (output: selected matching users).
[1831] Step 10:
[1832] The server proposes a meeting to the matched user and notifies them via email or the app's notification function (input: selected matched user, output: meeting proposal notification). When the user accepts the proposal, the information is sent to the device and a dedicated chat room is created (input: proposal acceptance notification, output: creation of dedicated chat room).
[1833] Step 11:
[1834] To promote conversations between users, the server invites conversational artificial intelligence (AI) to participate in the chat room (input: dedicated chat room, output: participation of conversational AI). The chatbot AI provides questions and topics at appropriate times to stimulate conversations (input: user-synchronized conversation data, output: questions and topics generated by the AI).
[1835] Step 12:
[1836] Conversational AI makes personalized suggestions based on the user's emotional state (input: emotional state data, output: personalized suggestions). For example, if the user is feeling stressed, it will make specific suggestions such as "I also recommend a relaxing movie" (output: specific suggestions).
[1837] Step 13:
[1838] When the conversation ends, the device displays a satisfaction survey to the user and collects feedback (input: conversation end data, output: satisfaction survey). When the user answers the survey, the results are sent to the server (input: survey responses, output: data sent to the server).
[1839] Step 14:
[1840] The server receives and analyzes the survey results (input: submitted data, output: analysis results). The feedback results are used to improve system performance and user experience (input: analysis results, output: system improvement proposals). For example, specific improvement measures are implemented, such as adjusting the matching algorithm based on the feedback (output: improved system).
[1841] (Application example 2)
[1842] 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."
[1843] Conventional dating services struggle to provide reliable matches based on users' values and interests. Furthermore, they lack a means to provide a personalized experience that takes into account the user's emotional state, making it difficult to increase user satisfaction. Furthermore, they lack effective communication promotion methods to facilitate smooth encounters in virtual spaces.
[1844] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes: means for collecting basic information entered by a user and storing it in a database; means for presenting questions about the user's interests, values, and hobbies and collecting the answers; means for generating a user profile using the collected data and storing it in a database; means for monitoring and collecting users' daily conversations and uploaded content; means for analyzing the collected data and updating the user profile; means for clustering multiple user profiles and matching highly similar users; means for proposing interactions in a virtual space and setting up virtual dating events; means for providing an environment for users to communicate with each other in a virtual space if the proposal is approved; means for providing a computer program for promoting conversations between users; and means for collecting user satisfaction levels, analyzing feedback, and using the results to improve the system. This allows users to have reliable encounters and provides a personalized experience that takes emotional states into account. It also promotes effective communication in a virtual space and increases user satisfaction.
[1845] "Basic information" refers to data used to identify an individual, such as name, email address, and password, that a user provides when registering.
[1846] "Questions" are provided in the form of a questionnaire or interview that the system presents to clarify the user's interests, values, and hobbies.
[1847] A "user profile" is information generated based on collected data that summarizes the characteristics of an individual user, reflecting their interests, values, and hobbies.
[1848] A "conversation" is a communication exchange using text messages or voice that a user engages in on a daily basis.
[1849] "Content" refers to media and text data such as photos, videos, and articles uploaded by users.
[1850] "Analysis" is the process of extracting and analyzing keywords and context from collected data using text analysis techniques.
[1851] "Clustering" is the process of grouping users with similar characteristics based on their user profiles.
[1852] "Matching" is the process of connecting highly similar users with each other through clustering.
[1853] A "virtual space" is a virtual environment on the Internet where users can interact with each other through avatars and other means.
[1854] A "virtual dating event" is an event held in a virtual space where users participate in activities based on common interests or hobbies.
[1855] A "computer program" is software that operates to facilitate conversations between users and has the ability to provide questions and topics.
[1856] "Feedback" refers to the impressions and evaluations that users provide to the system after use, and is data used to improve the system.
[1857] This invention utilizes AI to help users find trustworthy encounters and supports good encounters based on their values and interests. In particular, by combining it with an emotion engine, it provides a more personalized experience that takes into account the user's emotional state.
[1858] The system includes the following specific steps:
[1859] 1. Basic information collected and stored:
[1860] The user enters basic information such as name, email address, and password at the device, which is hashed and securely stored in a database.
[1861] 2. Posting questions and collecting answers:
[1862] The server asks new users questions about their interests, values, and hobbies, and the users answer the questions via their devices, and the data is sent to the server.
[1863] 3. Create and save your user profile:
[1864] Based on the collected data, the server generates a user profile and stores it in a database, which reflects the user's interests, values, and emotional state.
[1865] 4. Routine data collection and analysis:
[1866] The server monitors and collects users' daily conversations and uploaded content, and the collected data is processed using text analysis techniques to extract keywords and context.
[1867] 5. Clustering and Matching:
[1868] The server performs clustering based on all user profiles, groups users with high similarities, and then selects the most suitable match candidate within the cluster.
[1869] 6. Virtual dating event suggestions:
[1870] The server proposes to the matched users that they interact in a virtual space and sets up virtual meeting events.
[1871] 7. Providing a communication environment in virtual space:
[1872] If the proposal is approved, the server provides an environment for users to communicate with each other in a virtual space.
[1873] 8. Chatbots facilitate conversations:
[1874] The server uses chatbot AI to facilitate conversations between users, and the chatbot takes into account the user's emotional state and suggests appropriate questions and topics.
[1875] 9. Satisfaction data collection and system improvement:
[1876] After a user finishes a virtual dating event, the server displays and collects a satisfaction survey, which is then analyzed and used to improve the system.
[1877] Hardware and software used
[1878] Database: We use SQLite to store user information, profiles and feedback.
[1879] Text Analysis: Analyzes text for sentiment scores and keywords using Natural Language Toolkit (NLTK) and TextBlob.
[1880] Emotion Engine: Parses emotional state using TextBlob.
[1881] Communication: Data transmission from the device to the server using HTTP / HTTPS protocols.
[1882] Chatbot: A chatbot program implemented in Python is used.
[1883] Specific examples
[1884] For example, when User A accesses the system and creates an account, he or she enters his or her name, email address, and password. This information is stored in the database. User A then answers questions about his or her interests, values, and hobbies. An initial user profile is generated based on this information.
[1885] When User A uploads conversations and content on a daily basis, the data is analyzed in real time and their profile is updated. The server then matches User B with User A and proposes a virtual meeting event. If the proposal is approved, a dedicated chat room is created and a chatbot AI facilitates the conversation.
[1886] A concrete example of a conversation is as follows:
[1887] User A: "I love sports, especially soccer."
[1888] System: "I know someone who likes soccer too. Would you like to talk with me?"
[1889] User A: "I haven't been feeling very energetic lately."
[1890] System (Chatbot AI): "It's also a good idea to relax. What movie have you seen recently?"
[1891] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1892] Step 1:
[1893] Basic information collected and stored:
[1894] The user uses a device to enter basic information such as name, email address, and password. The device sends the entered information to the server. The server hashes the received information and stores it in a database. The input of this step is the user's basic information, and the output is the user information securely stored in the database.
[1895] Step 2:
[1896] Ask questions and collect answers:
[1897] The server generates questions for new users about their interests, values, and hobbies, and sends them to the device. The device displays a question form to the user, and the user enters their answers. The entered answer data is sent from the device to the server, which receives and stores it. The input of this step is the answer data to the question, and the output is the stored answer data.
[1898] Step 3:
[1899] Creating and saving a user profile:
[1900] The server uses the collected basic information and response data to generate a user profile. The generated profile is saved in a database. In this step, data processing and analysis are performed based on the input basic information and response data, and the user profile is output and saved.
[1901] Step 4:
[1902] Routine data collection and analysis:
[1903] Users upload everyday conversations and content to their devices. The devices then send this data to the server. The server analyzes the received data in real time and uses an emotion engine to extract emotional states and keywords. The user profile is updated based on the analysis results. The input of this step is everyday conversations and content data, and the output is an updated user profile.
[1904] Step 5:
[1905] Clustering and Matching:
[1906] The server performs a clustering process based on all stored user profiles. It calculates similarity indices using text analysis and other methods to group users. It then selects the best matching candidates within each cluster. The input to this step is each user's profile data, and the output is matched user pairs.
[1907] Step 6:
[1908] Virtual dating event suggestions:
[1909] The server proposes a virtual social event to the matched users. Information about the event is sent to the users through their device's notification function. The users then approve the proposal. The input of this step is the matched user pair and event information, and the output is the event that the users approve of.
[1910] Step 7:
[1911] Providing a communication environment in a virtual space:
[1912] After the proposal is approved, the server generates a dedicated chat room for users to communicate with each other in the virtual space and sends the information to the terminal. The user logs in to the virtual space and starts communicating in the chat room. The input of this step is the approved event information, and the output is the generated chat room.
[1913] Step 8:
[1914] Chatbots drive conversations:
[1915] The server uses chatbot AI to facilitate conversations between users. The chatbot takes into account the user's emotional state and provides appropriate questions and topics. For example, it provides prompts such as, "You seem to be feeling down lately. Would you like to talk about some of your hobbies?" The input for this step is the conversation data between users, and the output is a prompting message from the chatbot.
[1916] Step 9:
[1917] Satisfaction data collection and system improvement:
[1918] When a user finishes a virtual dating event, the server displays a satisfaction survey on the user's device and collects responses. The collected feedback data is analyzed by the server and used to improve the system. The input of this step is the satisfaction survey responses, and the output is the analyzed feedback results.
[1919] 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.
[1920] 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.
[1921] 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 robot 414.
[1922] 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.
[1923] FIG. 9 is a diagram illustrating 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 actions 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.
[1924] 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.
[1925] 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).
[1926] 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.
[1927] 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."
[1928] 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.
[1929] 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).
[1930] 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...
Claims
1. A means for collecting basic information entered by users and storing it in a database; A means of presenting questions about users' interests, values, and hobbies and collecting their answers; means for generating a user profile using the collected data and storing the profile in a database; means of monitoring and collecting users' daily conversations and uploaded content; means for analyzing the collected data and updating user profiles; A means for clustering a plurality of user profiles and matching users with high similarity; A means for making suggestions for meeting to the matched users; a means for providing an environment for users to communicate with each other if the proposal is approved; A means for providing a chatbot for facilitating conversations between users; A means of collecting user satisfaction, analyzing feedback, and using it to improve the system; A system including:
2. 10. The system of claim 1, further comprising means for extracting conversational keywords and context using text analysis techniques when generating a user profile.
3. The system according to claim 1, further comprising means for notifying matched users of an encounter by using an email or app notification function.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A