System
The system addresses the challenge of inaccurate personality-based matching by analyzing and quantifying user traits from electronic communication data, enabling precise and effective dating recommendations.
Patent Information
- Application Number
- JP2024137154
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-16
- Publication Date
- 2026-02-27
AI Technical Summary
Conventional dating services fail to accurately match users based on detailed personality analysis and natural encounters through social media are difficult without a large number of followers or reach.
A system that acquires electronic communication data, removes unnecessary information, extracts text data to quantify personality traits as a multidimensional vector, stores the vector in a database, compares it with other users, and notifies the user of suitable matches.
Enables highly accurate matching based on detailed personality analysis, providing users with effective love matching.
Smart Images

Figure 2026034033000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Conventional dating services match users based on information and attributes manually entered by the user, and do not adequately match based on detailed personality analysis. Furthermore, natural encounters through social media can be difficult without a large number of followers or reach. Therefore, there is a need for a dating matching system that can accurately analyze a user's personality based on their daily social media posts and then suggest suitable partners based on that analysis. [Means for solving the problem]
[0005] The present invention solves the above-mentioned problems by providing a system including: means for acquiring an individual's electronic communication data; means for removing unnecessary information from the electronic communication data and extracting text data; means for using the text data to quantify the individual's personality characteristics as a multidimensional personality vector; means for storing the personality vector in a database; means for comparing the stored personality vector with the personality vectors of other individuals and selecting a partner who is close to the individual; and means for notifying the user of information about the selected partner. This enables highly accurate matching based on detailed personality analysis, thereby providing users with effective love matching.
[0006] An "individual" refers to a specific human being, and is the subject of analysis of that person's attributes and personality traits.
[0007] "Electronic communications data" refers to any or all communications an individual has over the internet or electronic devices, including, among other things, social media posts and messages.
[0008] "Text data" refers to character information extracted from electronic communication data, and is expressed as sentences or words.
[0009] "Personality traits" refer to specific characteristics or traits that indicate an individual's personality or behavioral patterns, and include psychological elements.
[0010] A "personality vector" is a representation of personality traits as multidimensional numerical parameters, and is a means for analyzing an individual's personality based on this.
[0011] A "database" refers to a collection of information that is systematically organized so that it can be efficiently stored and searched, and is used to store data such as personality vectors.
[0012] "Distance" is a mathematical concept used to calculate the similarity between personality vectors.
[0013] "Comparison" refers to the act of comparing two or more personality vectors and evaluating their similarities and differences.
[0014] "Partner" refers to other users who are candidates for matching, and is an individual selected as someone with a close personality vector.
[0015] "Notification" refers to the act of informing the user of information, and refers to a means of informing the user of the matching results. [Brief explanation of the drawings]
[0016] [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
[0017] 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.
[0018] First, the terms used in the following description will be explained.
[0019] 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).
[0020] 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.
[0021] 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.
[0022] 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.
[0023] 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."
[0024] [First embodiment]
[0025] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0026] 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.
[0027] 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).
[0028] 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.
[0029] 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.
[0030] 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.
[0031] 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.
[0032] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0033] 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.
[0034] 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.
[0035] 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.
[0036] 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."
[0037] ---
[0038] This invention is a system that analyzes an individual's personality traits in detail and matches them with suitable partners based on the results. The system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., posts on social media).
[0039] The operation of the system is as follows.
[0040] First, in order for a user to use this system, the server grants permission to read from the user's social media account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social media API. Since these posts contain unnecessary information such as links and images, the server first removes this unnecessary information and extracts pure text data.
[0041] The device then uses the preprocessed text data to analyze the individual's personality traits using a generative AI model. For example, a Transformer-type AI model can be used to quantify the text data as a multi-dimensional personality vector. This personality vector represents the individual's personality traits and is composed of numerical parameters predicted by the AI model.
[0042] The generated personality vector is stored in a database by the server, which stores the personality vector as well as the associated user ID information, allowing the server to easily retrieve the personality vector later.
[0043] After the user's personality vector is stored in the database, the server compares it with the personality vectors of other users. Specifically, it uses mathematical distance calculations (e.g., cosine distance) to select those whose distance to the user's personality vector is close. This distance calculation makes it possible to match individuals with similar personalities.
[0044] As a result of the matching process, the server notifies the user of the information about the selected partner. This notification is sent to the device, and the user can check the matching results through the device. Specifically, the profile information of suitable partners is provided to the user via push notification or display within the app. This allows the user to obtain highly accurate matching results based on detailed personality analysis.
[0045] This system solves the problems of conventional matchmaking services and provides a powerful means for users to meet people based on natural interactions. Therefore, it enables matching based on AI analysis using detailed personality vectors, providing users with effective love matching.
[0046] ---
[0047] The processing flow will be explained below.
[0048] Processing Steps
[0049] Step 1:
[0050] When a user uses the system for the first time, the server requests permission to read from the user's SNS account, which the user grants via their device.
[0051] Step 2:
[0052] The server retrieves the latest posts from the user's social media account using an API. For example, the server uses the Twitter API to collect the user's latest 100 tweets.
[0053] Step 3:
[0054] The server extracts clean text data from collected social media posts by removing unnecessary information such as links and image tags. This preprocessing process yields text data suitable for analysis.
[0055] Step 4:
[0056] The device uses the preprocessed text data as input and analyzes the individual's personality traits using a generative AI model. Specifically, it uses a Transformer model to quantify the text data as a multi-dimensional personality vector.
[0057] Step 5:
[0058] The generated personality vectors are stored in a database by the server, which stores the personality vectors and their associated user IDs in the database for easy future searches and comparisons.
[0059] Step 6:
[0060] The server retrieves the personality vectors of all users from the database and calculates the proximity of the personality vectors to the target personality vector. Specifically, it uses the cosine distance to evaluate the similarity between each personality vector.
[0061] Step 7:
[0062] The server selects the person with the smallest distance based on the comparison results, and determines the information of that person as a match candidate.
[0063] Step 8:
[0064] The server notifies the user of the information about the people selected as potential matches, and the user receives the match results via push notifications or in-app displays on their device.
[0065] These are the specific processing steps of the system, which allow users to obtain highly accurate matching results.
[0066] Example 1
[0067] 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."
[0068] Conventional matching systems have had difficulty accurately analyzing users' personalities and preferences and matching them with suitable partners. In particular, when utilizing electronic communication data such as social networking sites, data preprocessing and analysis are cumbersome, and the accuracy of the analysis results is often insufficient. As a result, it has been difficult to achieve a match that satisfies users.
[0069] 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.
[0070] In this invention, the server includes means for acquiring an individual's electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data and a generative AI model to quantify the individual's personality traits as a multi-dimensional personality vector, means for saving the personality vector in a database, means for comparing the saved personality vector with the personality vectors of other individuals and selecting a partner who is close to the user, and means for notifying the user of information about the selected partner. This makes it possible to analyze the user's personality traits with high accuracy and efficiently select a partner with a similar personality.
[0071] "Individual electronic interaction data" refers to records of communications and posts made by individuals on digital platforms such as social media and messaging applications.
[0072] "Unnecessary information" refers to elements in the text data, such as links, images, and hashtags, that are not necessary for personality analysis.
[0073] "Text data" refers to the pure character string information that remains after removing unnecessary information such as links and images from electronic exchange data.
[0074] A "generative AI model" refers to an artificial intelligence model used to analyze text data and make predictions or inferences for specific tasks.
[0075] "Personality traits" represent the characteristics of an individual's behavior and way of thinking, and are quantified data based on psychological indicators.
[0076] A "personality vector" refers to multi-dimensional numerical data that represents an individual's personality traits, derived from text data analyzed by a generative AI model.
[0077] "Database" refers to a system for storing, managing, and retrieving structured collections of data.
[0078] "Distance" refers to an index for measuring the similarity between different personality vectors using a mathematical method (for example, cosine distance calculation).
[0079] "Push notification" refers to a communication method that delivers information from a server to a client device in real time.
[0080] This invention is a system that analyzes an individual's personality traits and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posting data).
[0081] The server uses an SNS API to retrieve SNS data through user-provided permissions. Examples include Twitter API and Facebook API. The server periodically calls the API to retrieve the user's latest posts. The retrieved data is initially processed to remove unnecessary information such as links, images, and hashtags, and pure text data is extracted. Regular expressions are then used to remove unnecessary information.
[0082] The preprocessed text data is then sent to the device. The device uses a Transformer-type generative AI model (e.g., GPT-3®) to analyze the text data and quantify the user's personality traits as a multi-dimensional personality vector. This is done using a prompt such as the following: "Please analyze the user's personality traits from this text data and generate a personality vector." An example of a specific input text is "Today was a very fun day. I walked in the park with my friends and had a delicious lunch. I was able to relax in nature."
[0083] The generated personality vector is returned to the server and stored in a database together with the user ID. Databases such as MySQL (registered trademark) and MongoDB are used to efficiently manage personality vectors and user information.
[0084] The server compares the saved personality vector with the personality vectors of other users. Specifically, it selects users with similar personalities by calculating the cosine distance. It uses the cosine function from the Python module scipy.spatial.distance.
[0085] Information about the partner selected as a match is sent from the server to the user's device via push notifications or in-app display functions. For example, a notification system such as Firebase Cloud Messaging can be used to provide users with real-time information.
[0086] This system allows users to obtain highly accurate matching results based on their own personality traits. Highly accurate matching based on natural interaction data, which was difficult to achieve with conventional technology, is now possible. As a result, users can find highly satisfying encounters.
[0087] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0088] Program processing flow
[0089] Step 1: (User authentication and access permissions)
[0090] The user logs into the system and grants the server read permission to their social media account.
[0091] The server obtains a token (access token) to protect the user's authentication information through the SNS API.
[0092] Input: User login information, SNS account information
[0093] Output: Access token
[0094] Specific behavior:
[0095] When a user logs in to the system, a dialog box appears asking, "Do you want to allow access to your SNS account?" If the user selects "Allow," the server obtains an access token using the SNS API.
[0096] Step 2: (Social Media Data Collection)
[0097] The server periodically uses the SNS API to retrieve the user's latest posts.
[0098] Input: Access token
[0099] Output: User's latest post data (JSON format)
[0100] Specific behavior:
[0101] The server periodically calls the SNS API (e.g., the GET statuses / user_timeline endpoint of the Twitter API) to retrieve the user's latest post data. The retrieved data is saved in a temporary file.
[0102] Step 3: (Data Preprocessing)
[0103] The server removes unnecessary information such as links, images, and hashtags from the acquired social media data and extracts pure text data.
[0104] Input: User posted data (JSON format)
[0105] Output: Preprocessed text data
[0106] Specific behavior:
[0107] The server reads the temporary file and removes unnecessary information using the Python regular expression module re. The preprocessed text data is then stored in memory.
[0108] Step 4: (Personality trait analysis)
[0109] The device inputs the preprocessed text data into the generative AI model.
[0110] A generative AI model analyzes the text and quantifies personality traits as a multi-dimensional personality vector.
[0111] Input: Preprocessed text data
[0112] Output: personality vector
[0113] Specific behavior:
[0114] The device sends the preprocessed text data to a generative AI model (such as a Transformer-type model: GPT-3) along with a prompt. For example, the prompt could be, "Please analyze the user's personality traits from this text data and generate a personality vector."
[0115] Step 5: (Saving to database)
[0116] The server stores the generated personality vector and user ID in a database.
[0117] Input: personality vector, user ID
[0118] Output: Database registration information
[0119] Specific behavior:
[0120] The server generates and executes an SQL query to insert the personality vector and the user ID into the database, for example, INSERT INTO user_vectors (user_id, personality_vector) VALUES ('1234', '0.45, -0.67, ...').
[0121] Step 6: (Matching process)
[0122] The server compares the personality vectors with those of other users stored in a database.
[0123] Using mathematical distance calculations (e.g., cosine distance), partners with vectors highly similar to the user's personality vector are selected.
[0124] Input: User's personality vector, other users' personality vectors
[0125] Output: Matching result (opponent information)
[0126] Specific behavior:
[0127] The server retrieves the personality vectors of other users from the database, calculates the distance using the cosine function in the Python module scipy.spatial.distance, selects the user with the closest personality vector, and records the selection result.
[0128] Step 7: (Notification of Matching Results)
[0129] The server will notify the user of the information about the selected person via push notification or in-app display.
[0130] Input: Matching result (other person's information)
[0131] Output: Notification information
[0132] Specific behavior:
[0133] The server calls a push notification API (e.g., Firebase Cloud Messaging) to notify the user that a new match has been found. When the user taps the push notification, the match's profile information is displayed in the app.
[0134] The above processing steps enable users to obtain highly accurate matching results based on natural interactions.
[0135] (Application example 1)
[0136] 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."
[0137] In conventional online shopping, products are recommended without considering the user's personality or preferences, making it difficult for users to find the products they want. In addition, users must spend a lot of time and effort to find the products that are best suited to them, resulting in an inefficient shopping experience.
[0138] 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.
[0139] In this invention, the server includes means for acquiring personal electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the personal character traits of the individual as a multi-dimensional personality vector, means for saving the personality vector in a database, means for comparing the saved personality vector with product vectors in a product database and selecting products that are close in distance, and means for notifying information about the selected products, thereby enabling product recommendations optimized for the user's personality and preferences.
[0140] "Personal electronic interaction data" includes online interactions such as social media posts, messages, and comments.
[0141] "Unnecessary information" is data that is not directly relevant to personality trait analysis, such as links, images, and advertising data.
[0142] "Text data" refers to pre-processed pure text data, which are strings of characters used in personality trait analysis.
[0143] A "personality trait" is a set of specific characteristics or parameters that express an individual's personality in numerical or multidimensional terms.
[0144] A "personality vector" is a multidimensional vector that numerically represents an individual's personality traits.
[0145] The "database" is an information system for storing and managing acquired personality vectors and product vectors.
[0146] A "product vector" is a vector quantified for the characteristics and recommendations of each product.
[0147] "Distance" is a mathematical measure used to compare the similarity between a personality vector and a product vector, such as cosine distance.
[0148] A "product database" is an information system that stores product information and product vectors.
[0149] A "server" is a central processing unit that performs functions such as acquiring, processing, storing, and comparing information.
[0150] This invention is a system that analyzes an individual's personality traits in detail and recommends optimal products based on the results. The system is implemented via a server and a terminal, and utilizes users' electronic interaction data (e.g., posts on social media).
[0151] The server obtains permission to read from the user's social networking account to obtain personal electronic communication data. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social networking service's API. Since these posts contain unnecessary information such as links and images, the server first removes this unnecessary information and extracts pure text data.
[0152] The server then uses the preprocessed text data to analyze the individual's personality traits using a generative AI model. For example, it uses a Transformer-type AI model to quantify the text data as a multi-dimensional personality vector. This personality vector represents the individual's personality traits and is composed of numerical parameters predicted by the AI model.
[0153] The generated personality vector is stored in a database by the server, which stores the personality vector as well as the associated user ID information, allowing the server to easily retrieve the personality vector later.
[0154] The stored personality vector is compared with the product vectors in the product database. Specifically, a mathematical distance calculation (e.g., cosine distance) is used to select products that are close to the user's personality vector. This distance calculation makes it possible to recommend products that are best suited to the user's personality and preferences.
[0155] As a result of the matching process, the server notifies the user of the selected product information. The notification is sent to the device, and the user can check the recommendation results through the device. Specifically, the most suitable product information is provided to the user via push notification or display within the app. This allows the user to receive highly accurate product recommendations based on a detailed personality analysis.
[0156] As a concrete example, the following prompt sentences are input into a generative AI model to perform personality analysis:
[0157] "Analyze a user's personality traits based on their social media data. For example, what personality traits emerge from their latest posts?"
[0158] This invention is expected to realize personalized product recommendations based on the user's personality and preferences, improving the satisfaction and efficiency of online shopping.
[0159] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0160] Step 1:
[0161] The server obtains read access permission to the user's SNS account. This is done by the user linking their SNS account to the system and granting API access. Specifically, the server uses the user's authentication information to access the SNS's API and retrieve post data. The input is the user's SNS account information, and the output is the post data retrieved from the SNS.
[0162] Step 2:
[0163] The server removes unnecessary information from the acquired SNS post data and extracts text data. It filters out unnecessary information such as links, images, and advertisements to generate pure text data. The input is the post data acquired from the SNS, and the output is clean text data. Specifically, it uses regular expressions and other methods to programmatically remove unnecessary information.
[0164] Step 3:
[0165] The server inputs the preprocessed text data into a generative AI model to analyze the user's personality traits. The generative AI model analyzes the text data and quantifies a personality vector that represents the user's personality traits. The input is clean text data, and the output is a personality vector. Specifically, the text is encoded using a transformer model such as BERT.
[0166] Step 4:
[0167] The server saves the generated personality vector in a database. The personality vector and the associated user ID information are saved in the database for easy retrieval later. The input is the personality vector and the user ID, and the output is the information recorded in the database. Specifically, the data is saved using an SQL or NoSQL database.
[0168] Step 5:
[0169] The server compares the stored personality vector with the product vectors in the product database. Using mathematical distance calculations such as cosine distance, it selects products that are close to the user's personality vector. The input is the user's personality vector and product vector, and the output is the ID of the selected product. Specifically, it uses a machine learning library to calculate cosine similarity.
[0170] Step 6:
[0171] The server notifies the user of the information about the selected product. The selection results are provided to the user via push notification or in-app display on their device. The input is the ID of the selected product, and the output is the product information displayed on the user's device. Specifically, this uses the mobile app's push notification function or the web app's information display function.
[0172] Through the above processing steps, personalized product recommendations based on the user's personality and preferences are realized.
[0173] 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.
[0174] ---
[0175] This invention is a system that analyzes an individual's personality and emotional characteristics in detail and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posts).
[0176] The operation of the system is as follows.
[0177] Data acquisition and preprocessing
[0178] First, to use this system, a user grants the server permission to read from their SNS account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the SNS's API. These posts contain unnecessary information such as links and images, so the server removes this unnecessary information and extracts only the pure text data.
[0179] Generating a personality vector
[0180] The device uses the preprocessed text data as input and a generative AI model to analyze an individual's personality traits. Specifically, a Transformer model is used to quantify the text data as a multi-dimensional personality vector. This personality vector represents an individual's personality traits and is composed of numerical parameters predicted by the AI model.
[0181] Generating emotion vectors
[0182] Furthermore, the device uses an emotion engine to analyze the user's emotions from the preprocessed text data. This quantifies the user's emotional characteristics as a multidimensional emotion vector. The emotion vector indicates the user's emotional state and tendencies, and is expressed numerically, just like the personality vector.
[0183] Vector storage and matching
[0184] The generated personality and emotion vectors are stored by the server in a database, which stores each vector and its associated user ID for easy later retrieval and comparison.
[0185] After the user's vector is stored in the database, the server compares it with the vectors of other users. Specifically, it calculates the distance using both the personality vector and the emotion vector, and selects the person who is closest to the user. This distance calculation makes it possible to match individuals who have similar personalities and emotions.
[0186] Notification of matching results
[0187] As a result of the matching process, the server notifies the user of the information about the selected partner. The user can check the matching results via push notifications or within the app on their device. Specifically, the profile information and emotional tendencies of suitable partners are provided to the user. This allows the user to obtain highly accurate matching results based on detailed personality and emotional analysis.
[0188] As described above, this invention solves the problems of conventional matching systems and achieves more accurate romantic matching by providing a new matching algorithm that uses vectors that combine personality traits and emotional traits.
[0189] ---
[0190] The processing flow will be explained below.
[0191] Processing Steps
[0192] Step 1:
[0193] When a user uses the system for the first time, the server requests permission to read from the user's SNS account, and the user grants permission via their device.
[0194] Step 2:
[0195] The server uses the API of the SNS to obtain the latest posts from the user. For example, it uses the Twitter API to collect the latest 100 tweets.
[0196] Step 3:
[0197] The server removes unnecessary information such as links and image tags from the collected social media posts and extracts clean text data. At this stage, only the text is prepared for analysis.
[0198] Step 4:
[0199] The device takes the preprocessed text data as input and uses a generative AI model to analyze an individual's personality traits. Specifically, it uses a Transformer model to convert the text data into a multi-dimensional personality vector.
[0200] Step 5:
[0201] The terminal also receives the preprocessed text data as input and uses an emotion engine to analyze the user's emotion characteristics. The emotion engine converts the text data into a multi-dimensional emotion vector.
[0202] Step 6:
[0203] The generated personality and emotion vectors are stored in a database by the server, which then stores these vectors and their associated user IDs in the database.
[0204] Step 7:
[0205] The server compares the newly saved personality and emotion vectors with those of other users, using mathematical techniques such as cosine distance to select those who are similar in both personality and emotion.
[0206] Step 8:
[0207] The server selects the closest person and notifies the user of that person's information as a potential match. The user receives the match results via push notifications or within the app on their device.
[0208] Step 9:
[0209] After receiving the notification, the user can check the other person's profile information and emotional tendencies and take steps to start interacting with them.
[0210] ---
[0211] These are the steps for specifically implementing the new matching algorithm using vectors that combine personality traits and emotional traits. This allows users to obtain more accurate matching results.
[0212] Example 2
[0213] 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."
[0214] Conventional matching systems mainly consider only individual personality traits, without considering emotional traits, making it difficult to achieve more accurate matching. Furthermore, due to the lack of a matching algorithm that effectively utilizes SNS posting data, it has not been possible to achieve matching that reflects the actual behavior and emotions of users.
[0215] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for acquiring personal electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the personal character traits as a multidimensional character vector, means for using the text data to quantify the personal emotional traits as a multidimensional emotional vector, means for storing the personal character vector and the emotional vector in a database, means for comparing the stored personal character vector and the emotional vector with the vectors of other individuals and selecting a partner who is close, and means for notifying information about the selected partner. This enables highly accurate matching that takes into account both personality traits and emotional traits.
[0216] "Electronic communication data" refers to all communication data generated by individuals via the internet and digital devices.
[0217] "Text data" refers to character information extracted from electronic exchange data, and refers to pure text with unnecessary information such as links and images removed.
[0218] "Personality vector" refers to numerical data that represents an individual's personality traits in a multidimensional space, analyzed using a generative AI model.
[0219] An "emotion vector" refers to numerical data that represents emotional characteristics analyzed from an individual's text data in a multidimensional space.
[0220] A "generative AI model" refers to an algorithm or program that uses machine learning and deep learning techniques to analyze personality and emotions from text data.
[0221] "Database" refers to an electronic record system designed to store and manage the generated personality vectors and emotion vectors.
[0222] "Distance calculation" is a calculation method for evaluating the similarity between personality vectors and emotion vectors, and typically uses Euclidean distance or cosine similarity.
[0223] "Notification means" refers to a method or system for notifying users of matching results, including push notifications and in-app displays.
[0224] This invention is a system that analyzes an individual's personality and emotional characteristics in detail and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posts).
[0225] Data acquisition and preprocessing
[0226] To use this system, a user first grants the server permission to read from their social media account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social media API. These posts contain unnecessary information such as links and images, so the server removes this unnecessary information and extracts only the pure text data.
[0227] For example, a server uses the Twitter API to collect a user's last 20 tweets, removes URLs and image links, and extracts only the text. For example, it uses Python's regular expression library to remove unnecessary information.
[0228] Generating a personality vector
[0229] The device takes the preprocessed text data as input and uses a generative AI model to analyze an individual's personality traits. Specifically, it uses a Transformer-type model (e.g., the BERT model) to quantify the text data as a multi-dimensional personality vector. This personality vector represents an individual's personality traits and is composed of multiple parameters.
[0230] As a concrete example, when a device inputs the text data "Today was a very good day" using the BERT model, a vector including multiple personality traits such as extraversion and openness is generated (e.g., [0.8, 0.6, 0.7, ...]).
[0231] Generating emotion vectors
[0232] Furthermore, the device uses an emotion engine (e.g., IBM Watson (registered trademark) NLP API) to analyze emotional characteristics from the preprocessed text data. This allows the user's emotional characteristics to be quantified as a multi-dimensional emotion vector. The emotion vector indicates the user's emotional state and tendencies, and is expressed as a number, just like the personality vector.
[0233] As a concrete example, when a device uses IBM Watson's NLP API to analyze the text "I feel tired today," it quantifies an emotion score such as positive, negative, or neutral (e.g., [0.1, 0.9, 0.0, ...]).
[0234] Vector saving
[0235] The generated personality and emotion vectors are stored in a database by the server, which stores each vector and its associated user ID, allowing for easy search and comparison later.
[0236] As a concrete example, the server connects to a MySQL database and stores the generated personality and emotion vectors using INSERT statements.
[0237] Matching process
[0238] After the user's vector is stored in the database, the server compares it with the vectors of other users. Specifically, it calculates the distance using both the personality vector and the emotion vector, and selects the person who is closest to the user. This distance calculation makes it possible to match individuals who have similar personalities and emotions.
[0239] As a specific example, the server uses Euclidean distance to compare the personality vector of user A with the vectors of other users in the database and selects user B who is closest.
[0240] Notification of matching results
[0241] Finally, the server notifies the user of the information about the selected partner. The user can check the matching results via push notifications or within the app on their device. Specifically, the profile information and emotional tendencies of suitable partners are provided to the user.
[0242] For example, the server uses Firebase Cloud Messaging (FCM) to send a notification to the user's smartphone saying, "A user who matches you has been found." The user then opens the app and views the details.
[0243] Prompt Sentence Examples
[0244] Examples of prompts to input to generative AI models and emotion engines include:
[0245] "Based on the following text, analyze the user's personality traits using a Transformer-type model and generate a personality vector: 'Today was a very good day.'"
[0246] "Based on the following text, analyze the user's emotional characteristics and generate an emotional vector: 'I'm tired today.'"
[0247] In this way, the system analyzes users' social media posts and achieves highly accurate matching based on personality and emotional characteristics.
[0248] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0249] Step 1:
[0250] The user grants the server permission to read from their social media account. The input requires the user's authentication information, and the output is a token indicating that permission has been granted. This permission is granted using an authentication flow such as OAuth2.0. Specifically, the user presses the "Connect to social media account" button on the app and is redirected to the social media authentication page. The user enters their login information and grants access to the app.
[0251] Step 2:
[0252] The server uses the SNS API to retrieve the user's latest posts. The number of posts to retrieve and an authentication token are required as input, and the user's latest post data (e.g., JSON format) is obtained as output. The server periodically calls the SNS API endpoint to retrieve the required data. Specifically, the server uses the SNS API endpoint " / statuses / user_timeline" to collect the latest 20 posts and receives the post data in JSON format as a response.
[0253] Step 3:
[0254] The server removes unnecessary information such as links and images from the post data it retrieves and extracts the text data. The retrieved JSON data is required as input, and clean text data with unnecessary information removed is obtained as output. Specifically, the server uses Python's regular expression library to remove URLs and image links from the post text field and extract only the text.
[0255] Step 4:
[0256] The device generates a personality vector using a generative AI model based on preprocessed text data. The input requires preprocessed text data, and the output is a multidimensional personality vector. Specifically, the device inputs the text "Today was a great day" using the BERT model to generate a vector including personality traits such as extraversion and openness (e.g., [0.8, 0.6, 0.7, …]).
[0257] Step 5:
[0258] The device uses an emotion engine to generate an emotion vector from preprocessed text data. The preprocessed text data is required as input, and a multidimensional emotion vector is obtained as output. Specifically, the device uses IBM Watson's NLP API to analyze the text "I'm tired today" and quantifies the emotion score, such as positive, negative, or neutral (e.g., [0.1, 0.9, 0.0, …]).
[0259] Step 6:
[0260] The server saves the generated personality and emotion vectors to a database. The input required is the generated vector and its associated user ID, and the output is a status message indicating successful saving. Specifically, the server connects to a MySQL database and saves the personality and emotion vectors using INSERT statements.
[0261] Step 7:
[0262] The server compares the vectors of other users and selects the person with the closest distance. The stored personality vector and emotion vector are required as input, and the output is the user ID of the person with the closest distance. Specifically, the server calculates the Euclidean distance, compares User A's vector with the vectors of all users in the database, and selects User B with the smallest distance.
[0263] Step 8:
[0264] The server notifies the user of the information about the selected match. The input requires the user ID and profile information of the closest match, and the output is a notification sent to the user's device. Specifically, the server uses Firebase Cloud Messaging (FCM) to send a notification to the user's smartphone saying, "A match has been found for you." The user receives this notification and opens the app to view detailed information.
[0265] In this way, the system analyzes users' social media posts and achieves highly accurate matching based on personality and emotional characteristics.
[0266] (Application example 2)
[0267] 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."
[0268] Conventional service provision systems and matching systems are generally designed based on a single user characteristic, making it difficult to consider the user's multidimensional personality and emotional characteristics. As a result, optimal service provision and personalized proposals that meet the needs of individual users are not being fully implemented. Furthermore, in brick-and-mortar stores, it is difficult to accurately grasp the customer's personality and emotions and make service proposals based on that information, creating challenges in improving the customer experience.
[0269] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0270] In this invention, the server includes means for acquiring an individual's electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the individual's personality traits as a multidimensional personality vector, means for using the text data to quantify the individual's emotional traits as a multidimensional emotional vector, means for storing the personality vector and the emotional vector in a database, means for comparing the stored vector with vectors of other individuals and selecting a person who is close to the individual, means for notifying the selected person of information, and means for generating appropriate services and proposals based on the acquired vector. This makes it possible to provide optimal service proposals and a detailed customer experience tailored to the user based on the user's multidimensional personality traits and emotional traits.
[0271] "Personal electronic communication data" refers to information sent by users via the internet or communication means, and specifically includes digital data such as social media posts, emails, and messaging app exchanges.
[0272] "Unnecessary information" refers to data that is not necessary for analysis, specifically information other than text data such as links, images, and advertisements, as well as elements that become noise.
[0273] "Text data" refers to data consisting only of character information, and is pure text data after unnecessary information has been removed by preprocessing.
[0274] "Personality traits" refer to characteristics that indicate an individual's basic personality and behavioral tendencies, and are evaluated using psychological indicators.
[0275] A "personality vector" refers to a multidimensional vector that expresses personality traits numerically, and is used to express an individual's personality traits numerically.
[0276] "Emotional characteristics" refer to characteristics that indicate an individual's emotional state and its changes, and specifically represent emotions such as joy, sadness, and anger.
[0277] An "emotion vector" refers to a multidimensional vector that expresses emotional characteristics numerically, and is used to treat an individual's emotional state as numerical data.
[0278] A "database" refers to a system for efficiently managing and searching structured data, and stores data such as personality vectors and emotion vectors.
[0279] "Close distance" refers to a small distance between two vectors in a vector space, meaning that the similarity is high.
[0280] "Selecting" refers to choosing an appropriate candidate from among many candidates.
[0281] "Notifying" refers to informing a specific recipient of information, and can be done by means of push notification, screen display, etc.
[0282] "Generating services and proposals" refers to creating service content and proposals suitable for a user based on the user's characteristics.
[0283] A "generative AI model" refers to a machine learning model used in natural language processing and data analysis, particularly for generative tasks.
[0284] A "prompt sentence" refers to the text input into a generative AI model, and is a sentence that serves as instructions for the model to analyze and generate.
[0285] This invention is a system that performs detailed analysis of an individual's personality and emotional characteristics and matches them with suitable partners based on the results. This system is applied to improving the customer experience in brick-and-mortar stores such as cafes and restaurants. Next, an embodiment of the invention will be described.
[0286] System Overview
[0287] The system includes a server, a user's smartphone, and an in-store tablet. The server collects and analyzes personal electronic interaction data. The smartphone functions as a platform for providing data from social media. The in-store tablet is used to propose services to customers based on the analysis results.
[0288] Data Acquisition
[0289] In order for users to use the system, they must allow their smartphone application to link with their SNS account. The smartphone periodically uses the SNS API to retrieve the user's latest posts. This post data is then sent to the server.
[0290] Data Preprocessing
[0291] The server removes unnecessary information from the received data and extracts only the text data, which includes removing noise such as links and images.
[0292] Generating personality and emotion vectors
[0293] The server inputs the preprocessed text data and uses a generative AI model to analyze the individual's personality traits and quantify them as a personality vector. It also uses an emotion analysis engine to analyze emotional traits and quantify them as an emotion vector. The generative AI model uses the Hugging Face Transformer model, and the emotion analysis uses the VADER emotion engine.
[0294] Storing and comparing vectors
[0295] The generated personality and emotion vectors are stored in a database on the server. The database stores each vector and its associated user ID. The server then compares the vectors with those of other users and selects the most suitable match based on distance calculations. This distance calculation makes it possible to match individuals with similar personalities and emotions.
[0296] Generate a service proposal
[0297] Based on the selected person's information as well as their personality and emotion vector data, the system generates appropriate services and suggestions for the user. For example, this could include recommended menu items and seating arrangements at a cafe. These suggestions are displayed on a tablet in the store, and staff provide the service accordingly.
[0298] Program processing explanation
[0299] The system uses the following hardware and software while taking personal information protection into consideration. The server functions as a central data processing location and performs data acquisition, preprocessing, vector generation, matching, and service proposals. The smartphone is primarily responsible for acquiring data from social media and sending it to the server. Meanwhile, in-store tablets display analysis results to staff, helping them provide more appropriate services.
[0300] The Hugging Face Transformer model is used to generate personality vectors, and the VADER emotion analysis engine is used to generate emotion vectors. These software applications enable accurate analysis of multi-dimensional personality and emotional traits.
[0301] Specific examples
[0302] For example, when a user visits a restaurant, they can link their social media account using their smartphone. If the user posts something like, "I'm feeling a little sad today. I think I'm stressed out from work. I miss the latte I had at the cafe I went to last time," the system will use this information to suggest the most suitable menu item for the user: "Latte."
[0303] Example prompt sentence:
[0304] Please input the user's latest social media posting data. Based on this data, the system will analyze their personality and emotional traits and suggest an appropriate menu.
[0305] 1. Social media post data: "I'm feeling a little sad today. I think work is stressful. I miss that latte I had at the cafe I went to last time."
[0306] In this way, service proposals based on the user's characteristics are realized, contributing to an improved customer experience.
[0307] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0308] Step 1:
[0309] The server obtains an individual's electronic interaction data. This data is periodically retrieved using the SNS's API to retrieve the user's latest SNS post data. The input is the post data from the SNS, which is sent to the server. The output is the retrieved, unprocessed post data. Specifically, the server sends a request to the SNS's API endpoint and receives the post data returned as a response.
[0310] Step 2:
[0311] The server removes unnecessary information from the acquired electronic exchange data and extracts text data. The input is the raw post data from step 1, from which unnecessary elements such as links, images, and advertisements are removed. The output is preprocessed pure text data. Specifically, the server uses regular expressions and natural language processing (NLP) tools to filter out the unnecessary parts and extract only the text.
[0312] Step 3:
[0313] The server uses the preprocessed text data to quantify an individual's personality traits as a multi-dimensional personality vector. The input is the preprocessed text data, and a generative AI model (e.g., a Hugging Face Transformer model) is used to generate a personality vector. The output is a personality vector. Specifically, the server inputs the text data into the model and receives the personality feature vector output from the model.
[0314] Step 4:
[0315] The server uses the preprocessed text data to quantify an individual's emotional characteristics as a multi-dimensional emotion vector. The input is the preprocessed text data, and an emotion analysis engine (e.g., VADER) is used to generate the emotion vector. The output is an emotion vector. Specifically, the server inputs the text data into the emotion analysis engine and receives a vector composed of emotion scores.
[0316] Step 5:
[0317] The server saves the generated personality vectors and emotion vectors in a database. The input is the personality vector and emotion vector, which are stored in the database along with the associated user ID. The output is the vector data saved in the database. Specifically, the server performs a store operation on the database management system (DBMS) to save the vectors.
[0318] Step 6:
[0319] The server compares the stored vector with the vectors of other individuals and selects the closest person. The input is all the personality and emotion vectors stored in the database, and based on this, the server selects the closest person using distance calculation methods such as Euclidean distance. The output is information about the selected person. Specifically, the server calculates the distance between vectors and selects the user pair with the closest distance.
[0320] Step 7:
[0321] The server notifies the information of the selected partner. The input is the information of the partner selected in step 6, which is notified to the user's device. The output is the matching result displayed on the user's device. Specifically, the server triggers a push notification and displays the profile information of the most suitable partner on the user's smartphone.
[0322] Step 8:
[0323] The server generates appropriate services and suggestions based on the vectors it acquires. The input is a personality vector and an emotion vector, which are linked to the services offered at the store to generate suggestions. The output is information about the proposed services and menus. Specifically, the server analyzes the generated vector data, selects the most suitable menus and services for the user, and displays the results on a tablet in the store.
[0324] 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.
[0325] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0326] 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.
[0327] [Second embodiment]
[0328] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0329] 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.
[0330] 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).
[0331] 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.
[0332] 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.
[0333] 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).
[0334] 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.
[0335] 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.
[0336] 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.
[0337] 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.
[0338] 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.
[0339] 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."
[0340] ---
[0341] This invention is a system that analyzes an individual's personality traits in detail and matches them with suitable partners based on the results. The system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., posts on social media).
[0342] The operation of the system is as follows.
[0343] First, in order for a user to use this system, the server grants permission to read from the user's social media account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social media API. Since these posts contain unnecessary information such as links and images, the server first removes this unnecessary information and extracts pure text data.
[0344] The device then uses the preprocessed text data to analyze the individual's personality traits using a generative AI model. For example, a Transformer-type AI model can be used to quantify the text data as a multi-dimensional personality vector. This personality vector represents the individual's personality traits and is composed of numerical parameters predicted by the AI model.
[0345] The generated personality vector is stored in a database by the server, which stores the personality vector as well as the associated user ID information, allowing the server to easily retrieve the personality vector later.
[0346] After the user's personality vector is stored in the database, the server compares it with the personality vectors of other users. Specifically, it uses mathematical distance calculations (e.g., cosine distance) to select those whose distance to the user's personality vector is close. This distance calculation makes it possible to match individuals with similar personalities.
[0347] As a result of the matching process, the server notifies the user of the information about the selected partner. This notification is sent to the device, and the user can check the matching results through the device. Specifically, the profile information of suitable partners is provided to the user via push notification or display within the app. This allows the user to obtain highly accurate matching results based on detailed personality analysis.
[0348] This system solves the problems of conventional matchmaking services and provides a powerful means for users to meet people based on natural interactions. Therefore, it enables matching based on AI analysis using detailed personality vectors, providing users with effective love matching.
[0349] ---
[0350] The processing flow will be explained below.
[0351] Processing Steps
[0352] Step 1:
[0353] When a user uses the system for the first time, the server requests permission to read from the user's SNS account, which the user grants via their device.
[0354] Step 2:
[0355] The server retrieves the latest posts from the user's social media account using an API. For example, the server uses the Twitter API to collect the user's latest 100 tweets.
[0356] Step 3:
[0357] The server extracts clean text data from collected social media posts by removing unnecessary information such as links and image tags. This preprocessing process yields text data suitable for analysis.
[0358] Step 4:
[0359] The device uses the preprocessed text data as input and analyzes the individual's personality traits using a generative AI model. Specifically, it uses a Transformer model to quantify the text data as a multi-dimensional personality vector.
[0360] Step 5:
[0361] The generated personality vectors are stored in a database by the server, which stores the personality vectors and their associated user IDs in the database for easy future searches and comparisons.
[0362] Step 6:
[0363] The server retrieves the personality vectors of all users from the database and calculates the proximity of the personality vectors to the target personality vector. Specifically, it uses the cosine distance to evaluate the similarity between each personality vector.
[0364] Step 7:
[0365] The server selects the person with the smallest distance based on the comparison results, and determines the information of that person as a match candidate.
[0366] Step 8:
[0367] The server notifies the user of the information about the people selected as potential matches, and the user receives the match results via push notifications or in-app displays on their device.
[0368] These are the specific processing steps of the system, which allow users to obtain highly accurate matching results.
[0369] Example 1
[0370] 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."
[0371] Conventional matching systems have had difficulty accurately analyzing users' personalities and preferences and matching them with suitable partners. In particular, when utilizing electronic communication data such as social networking sites, data preprocessing and analysis are cumbersome, and the accuracy of the analysis results is often insufficient. As a result, it has been difficult to achieve a match that satisfies users.
[0372] 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.
[0373] In this invention, the server includes means for acquiring an individual's electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data and a generative AI model to quantify the individual's personality traits as a multi-dimensional personality vector, means for saving the personality vector in a database, means for comparing the saved personality vector with the personality vectors of other individuals and selecting a partner who is close to the user, and means for notifying the user of information about the selected partner. This makes it possible to analyze the user's personality traits with high accuracy and efficiently select a partner with a similar personality.
[0374] "Individual electronic interaction data" refers to records of communications and posts made by individuals on digital platforms such as social media and messaging applications.
[0375] "Unnecessary information" refers to elements in the text data, such as links, images, and hashtags, that are not necessary for personality analysis.
[0376] "Text data" refers to the pure character string information that remains after removing unnecessary information such as links and images from electronic exchange data.
[0377] A "generative AI model" refers to an artificial intelligence model used to analyze text data and make predictions or inferences for specific tasks.
[0378] "Personality traits" represent the characteristics of an individual's behavior and way of thinking, and are quantified data based on psychological indicators.
[0379] A "personality vector" refers to multi-dimensional numerical data that represents an individual's personality traits, derived from text data analyzed by a generative AI model.
[0380] "Database" refers to a system for storing, managing, and retrieving structured collections of data.
[0381] "Distance" refers to an index for measuring the similarity between different personality vectors using a mathematical method (for example, cosine distance calculation).
[0382] "Push notification" refers to a communication method that delivers information from a server to a client device in real time.
[0383] This invention is a system that analyzes an individual's personality traits and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posting data).
[0384] The server uses an SNS API to retrieve SNS data through user-provided permissions. Examples include Twitter API and Facebook API. The server periodically calls the API to retrieve the user's latest posts. The retrieved data is initially processed to remove unnecessary information such as links, images, and hashtags, and pure text data is extracted. Regular expressions are then used to remove unnecessary information.
[0385] The preprocessed text data is then sent to the device. The device uses a Transformer-type generative AI model (e.g., GPT-3) to analyze the text data and quantify the user's personality traits as a multi-dimensional personality vector. This is done using a prompt such as the following: "Please analyze the user's personality traits from this text data and generate a personality vector." An example of a specific input text is "Today was a very fun day. I walked in the park with my friends and had a delicious lunch. I was able to relax in nature."
[0386] The generated personality vector is returned to the server and stored in a database along with the user ID. Databases such as MySQL and MongoDB are used to efficiently manage personality vectors and user information.
[0387] The server compares the saved personality vector with the personality vectors of other users. Specifically, it selects users with similar personalities by calculating the cosine distance. It uses the cosine function from the Python module scipy.spatial.distance.
[0388] Information about the partner selected as a match is sent from the server to the user's device via push notifications or in-app display functions. For example, a notification system such as Firebase Cloud Messaging can be used to provide users with real-time information.
[0389] This system allows users to obtain highly accurate matching results based on their own personality traits. Highly accurate matching based on natural interaction data, which was difficult to achieve with conventional technology, is now possible. As a result, users can find highly satisfying encounters.
[0390] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0391] Program processing flow
[0392] Step 1: (User authentication and access permissions)
[0393] The user logs into the system and grants the server read permission to their social media account.
[0394] The server obtains a token (access token) to protect the user's authentication information through the SNS API.
[0395] Input: User login information, SNS account information
[0396] Output: Access token
[0397] Specific behavior:
[0398] When a user logs in to the system, a dialog box appears asking, "Do you want to allow access to your SNS account?" If the user selects "Allow," the server obtains an access token using the SNS API.
[0399] Step 2: (Social Media Data Collection)
[0400] The server periodically uses the SNS API to retrieve the user's latest posts.
[0401] Input: Access token
[0402] Output: User's latest post data (JSON format)
[0403] Specific behavior:
[0404] The server periodically calls the SNS API (e.g., the GET statuses / user_timeline endpoint of the Twitter API) to retrieve the user's latest post data. The retrieved data is saved in a temporary file.
[0405] Step 3: (Data Preprocessing)
[0406] The server removes unnecessary information such as links, images, and hashtags from the acquired social media data and extracts pure text data.
[0407] Input: User posted data (JSON format)
[0408] Output: Preprocessed text data
[0409] Specific behavior:
[0410] The server reads the temporary file and removes unnecessary information using the Python regular expression module re. The preprocessed text data is then stored in memory.
[0411] Step 4: (Personality trait analysis)
[0412] The device inputs the preprocessed text data into the generative AI model.
[0413] A generative AI model analyzes the text and quantifies personality traits as a multi-dimensional personality vector.
[0414] Input: Preprocessed text data
[0415] Output: personality vector
[0416] Specific behavior:
[0417] The device sends the preprocessed text data to a generative AI model (such as a Transformer-type model: GPT-3) along with a prompt. For example, the prompt could be, "Please analyze the user's personality traits from this text data and generate a personality vector."
[0418] Step 5: (Saving to database)
[0419] The server stores the generated personality vector and user ID in a database.
[0420] Input: personality vector, user ID
[0421] Output: Database registration information
[0422] Specific behavior:
[0423] The server generates and executes an SQL query to insert the personality vector and the user ID into the database, for example, INSERT INTO user_vectors (user_id, personality_vector) VALUES ('1234', '0.45, -0.67, ...').
[0424] Step 6: (Matching process)
[0425] The server compares the personality vectors with those of other users stored in a database.
[0426] Using mathematical distance calculations (e.g., cosine distance), partners with vectors highly similar to the user's personality vector are selected.
[0427] Input: User's personality vector, other users' personality vectors
[0428] Output: Matching result (opponent information)
[0429] Specific behavior:
[0430] The server retrieves the personality vectors of other users from the database, calculates the distance using the cosine function in the Python module scipy.spatial.distance, selects the user with the closest personality vector, and records the selection result.
[0431] Step 7: (Notification of Matching Results)
[0432] The server will notify the user of the information about the selected person via push notification or in-app display.
[0433] Input: Matching result (other person's information)
[0434] Output: Notification information
[0435] Specific behavior:
[0436] The server calls a push notification API (e.g., Firebase Cloud Messaging) to notify the user that a new match has been found. When the user taps the push notification, the match's profile information is displayed in the app.
[0437] The above processing steps enable users to obtain highly accurate matching results based on natural interactions.
[0438] (Application example 1)
[0439] 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."
[0440] In conventional online shopping, products are recommended without considering the user's personality or preferences, making it difficult for users to find the products they want. In addition, users must spend a lot of time and effort to find the products that are best suited to them, resulting in an inefficient shopping experience.
[0441] 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.
[0442] In this invention, the server includes means for acquiring personal electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the personal character traits of the individual as a multi-dimensional personality vector, means for saving the personality vector in a database, means for comparing the saved personality vector with product vectors in a product database and selecting products that are close in distance, and means for notifying information about the selected products, thereby enabling product recommendations optimized for the user's personality and preferences.
[0443] "Personal electronic interaction data" includes online interactions such as social media posts, messages, and comments.
[0444] "Unnecessary information" is data that is not directly relevant to personality trait analysis, such as links, images, and advertising data.
[0445] "Text data" refers to pre-processed pure text data, which are strings of characters used in personality trait analysis.
[0446] A "personality trait" is a set of specific characteristics or parameters that express an individual's personality in numerical or multidimensional terms.
[0447] A "personality vector" is a multidimensional vector that numerically represents an individual's personality traits.
[0448] The "database" is an information system for storing and managing acquired personality vectors and product vectors.
[0449] A "product vector" is a vector quantified for the characteristics and recommendations of each product.
[0450] "Distance" is a mathematical measure used to compare the similarity between a personality vector and a product vector, such as cosine distance.
[0451] A "product database" is an information system that stores product information and product vectors.
[0452] A "server" is a central processing unit that performs functions such as acquiring, processing, storing, and comparing information.
[0453] This invention is a system that analyzes an individual's personality traits in detail and recommends optimal products based on the results. The system is implemented via a server and a terminal, and utilizes users' electronic interaction data (e.g., posts on social media).
[0454] The server obtains permission to read from the user's social networking account to obtain personal electronic communication data. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social networking service's API. Since these posts contain unnecessary information such as links and images, the server first removes this unnecessary information and extracts pure text data.
[0455] The server then uses the preprocessed text data to analyze the individual's personality traits using a generative AI model. For example, it uses a Transformer-type AI model to quantify the text data as a multi-dimensional personality vector. This personality vector represents the individual's personality traits and is composed of numerical parameters predicted by the AI model.
[0456] The generated personality vector is stored in a database by the server, which stores the personality vector as well as the associated user ID information, allowing the server to easily retrieve the personality vector later.
[0457] The stored personality vector is compared with the product vectors in the product database. Specifically, a mathematical distance calculation (e.g., cosine distance) is used to select products that are close to the user's personality vector. This distance calculation makes it possible to recommend products that are best suited to the user's personality and preferences.
[0458] As a result of the matching process, the server notifies the user of the selected product information. The notification is sent to the device, and the user can check the recommendation results through the device. Specifically, the most suitable product information is provided to the user via push notification or display within the app. This allows the user to receive highly accurate product recommendations based on a detailed personality analysis.
[0459] As a concrete example, the following prompt sentences are input into a generative AI model to perform personality analysis:
[0460] "Analyze a user's personality traits based on their social media data. For example, what personality traits emerge from their latest posts?"
[0461] This invention is expected to realize personalized product recommendations based on the user's personality and preferences, improving the satisfaction and efficiency of online shopping.
[0462] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0463] Step 1:
[0464] The server obtains read access permission to the user's SNS account. This is done by the user linking their SNS account to the system and granting API access. Specifically, the server uses the user's authentication information to access the SNS's API and retrieve post data. The input is the user's SNS account information, and the output is the post data retrieved from the SNS.
[0465] Step 2:
[0466] The server removes unnecessary information from the acquired SNS post data and extracts text data. It filters out unnecessary information such as links, images, and advertisements to generate pure text data. The input is the post data acquired from the SNS, and the output is clean text data. Specifically, it uses regular expressions and other methods to programmatically remove unnecessary information.
[0467] Step 3:
[0468] The server inputs the preprocessed text data into a generative AI model to analyze the user's personality traits. The generative AI model analyzes the text data and quantifies a personality vector that represents the user's personality traits. The input is clean text data, and the output is a personality vector. Specifically, the text is encoded using a transformer model such as BERT.
[0469] Step 4:
[0470] The server saves the generated personality vector in a database. The personality vector and the associated user ID information are saved in the database for easy retrieval later. The input is the personality vector and the user ID, and the output is the information recorded in the database. Specifically, the data is saved using an SQL or NoSQL database.
[0471] Step 5:
[0472] The server compares the stored personality vector with the product vectors in the product database. Using mathematical distance calculations such as cosine distance, it selects products that are close to the user's personality vector. The input is the user's personality vector and product vector, and the output is the ID of the selected product. Specifically, it uses a machine learning library to calculate cosine similarity.
[0473] Step 6:
[0474] The server notifies the user of the information about the selected product. The selection results are provided to the user via push notification or in-app display on their device. The input is the ID of the selected product, and the output is the product information displayed on the user's device. Specifically, this uses the mobile app's push notification function or the web app's information display function.
[0475] Through the above processing steps, personalized product recommendations based on the user's personality and preferences are realized.
[0476] 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.
[0477] ---
[0478] This invention is a system that analyzes an individual's personality and emotional characteristics in detail and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posts).
[0479] The operation of the system is as follows.
[0480] Data acquisition and preprocessing
[0481] First, to use this system, a user grants the server permission to read from their SNS account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the SNS's API. These posts contain unnecessary information such as links and images, so the server removes this unnecessary information and extracts only the pure text data.
[0482] Generating a personality vector
[0483] The device uses the preprocessed text data as input and a generative AI model to analyze an individual's personality traits. Specifically, a Transformer model is used to quantify the text data as a multi-dimensional personality vector. This personality vector represents an individual's personality traits and is composed of numerical parameters predicted by the AI model.
[0484] Generating emotion vectors
[0485] Furthermore, the device uses an emotion engine to analyze the user's emotions from the preprocessed text data. This quantifies the user's emotional characteristics as a multidimensional emotion vector. The emotion vector indicates the user's emotional state and tendencies, and is expressed numerically, just like the personality vector.
[0486] Vector storage and matching
[0487] The generated personality and emotion vectors are stored by the server in a database, which stores each vector and its associated user ID for easy later retrieval and comparison.
[0488] After the user's vector is stored in the database, the server compares it with the vectors of other users. Specifically, it calculates the distance using both the personality vector and the emotion vector, and selects the person who is closest to the user. This distance calculation makes it possible to match individuals who have similar personalities and emotions.
[0489] Notification of matching results
[0490] As a result of the matching process, the server notifies the user of the information about the selected partner. The user can check the matching results via push notifications or within the app on their device. Specifically, the profile information and emotional tendencies of suitable partners are provided to the user. This allows the user to obtain highly accurate matching results based on detailed personality and emotional analysis.
[0491] As described above, this invention solves the problems of conventional matching systems and achieves more accurate romantic matching by providing a new matching algorithm that uses vectors that combine personality traits and emotional traits.
[0492] ---
[0493] The processing flow will be explained below.
[0494] Processing Steps
[0495] Step 1:
[0496] When a user uses the system for the first time, the server requests permission to read from the user's SNS account, and the user grants permission via their device.
[0497] Step 2:
[0498] The server uses the API of the SNS to obtain the latest posts from the user. For example, it uses the Twitter API to collect the latest 100 tweets.
[0499] Step 3:
[0500] The server removes unnecessary information such as links and image tags from the collected social media posts and extracts clean text data. At this stage, only the text is prepared for analysis.
[0501] Step 4:
[0502] The device takes the preprocessed text data as input and uses a generative AI model to analyze an individual's personality traits. Specifically, it uses a Transformer model to convert the text data into a multi-dimensional personality vector.
[0503] Step 5:
[0504] The terminal also receives the preprocessed text data as input and uses an emotion engine to analyze the user's emotion characteristics. The emotion engine converts the text data into a multi-dimensional emotion vector.
[0505] Step 6:
[0506] The generated personality and emotion vectors are stored in a database by the server, which then stores these vectors and their associated user IDs in the database.
[0507] Step 7:
[0508] The server compares the newly saved personality and emotion vectors with those of other users, using mathematical techniques such as cosine distance to select those who are similar in both personality and emotion.
[0509] Step 8:
[0510] The server selects the closest person and notifies the user of that person's information as a potential match. The user receives the match results via push notifications or within the app on their device.
[0511] Step 9:
[0512] After receiving the notification, the user can check the other person's profile information and emotional tendencies and take steps to start interacting with them.
[0513] ---
[0514] These are the steps for specifically implementing the new matching algorithm using vectors that combine personality traits and emotional traits. This allows users to obtain more accurate matching results.
[0515] Example 2
[0516] 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."
[0517] Conventional matching systems mainly consider only individual personality traits, without considering emotional traits, making it difficult to achieve more accurate matching. Furthermore, due to the lack of a matching algorithm that effectively utilizes SNS posting data, it has not been possible to achieve matching that reflects the actual behavior and emotions of users.
[0518] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for acquiring personal electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the personal character traits as a multidimensional character vector, means for using the text data to quantify the personal emotional traits as a multidimensional emotional vector, means for storing the personal character vector and the emotional vector in a database, means for comparing the stored personal character vector and the emotional vector with the vectors of other individuals and selecting a partner who is close, and means for notifying information about the selected partner. This enables highly accurate matching that takes into account both personality traits and emotional traits.
[0519] "Electronic communication data" refers to all communication data generated by individuals via the internet and digital devices.
[0520] "Text data" refers to character information extracted from electronic exchange data, and refers to pure text with unnecessary information such as links and images removed.
[0521] "Personality vector" refers to numerical data that represents an individual's personality traits in a multidimensional space, analyzed using a generative AI model.
[0522] An "emotion vector" refers to numerical data that represents emotional characteristics analyzed from an individual's text data in a multidimensional space.
[0523] A "generative AI model" refers to an algorithm or program that uses machine learning and deep learning techniques to analyze personality and emotions from text data.
[0524] "Database" refers to an electronic record system designed to store and manage the generated personality vectors and emotion vectors.
[0525] "Distance calculation" is a calculation method for evaluating the similarity between personality vectors and emotion vectors, and typically uses Euclidean distance or cosine similarity.
[0526] "Notification means" refers to a method or system for notifying users of matching results, including push notifications and in-app displays.
[0527] This invention is a system that analyzes an individual's personality and emotional characteristics in detail and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posts).
[0528] Data acquisition and preprocessing
[0529] To use this system, a user first grants the server permission to read from their social media account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social media API. These posts contain unnecessary information such as links and images, so the server removes this unnecessary information and extracts only the pure text data.
[0530] For example, a server uses the Twitter API to collect a user's last 20 tweets, removes URLs and image links, and extracts only the text. For example, it uses Python's regular expression library to remove unnecessary information.
[0531] Generating a personality vector
[0532] The device takes the preprocessed text data as input and uses a generative AI model to analyze an individual's personality traits. Specifically, it uses a Transformer-type model (e.g., the BERT model) to quantify the text data as a multi-dimensional personality vector. This personality vector represents an individual's personality traits and is composed of multiple parameters.
[0533] As a concrete example, when a device inputs the text data "Today was a very good day" using the BERT model, a vector including multiple personality traits such as extraversion and openness is generated (e.g., [0.8, 0.6, 0.7, ...]).
[0534] Generating emotion vectors
[0535] Furthermore, the device uses an emotion engine (e.g., IBM Watson's NLP API) to analyze the emotional characteristics from the preprocessed text data. This quantifies the user's emotional characteristics as a multidimensional emotion vector. The emotion vector indicates the user's emotional state and tendencies, and is expressed as a number, just like the personality vector.
[0536] As a concrete example, when a device uses IBM Watson's NLP API to analyze the text "I feel tired today," it quantifies an emotion score such as positive, negative, or neutral (e.g., [0.1, 0.9, 0.0, ...]).
[0537] Vector saving
[0538] The generated personality and emotion vectors are stored in a database by the server, which stores each vector and its associated user ID, allowing for easy search and comparison later.
[0539] As a concrete example, the server connects to a MySQL database and stores the generated personality and emotion vectors using INSERT statements.
[0540] Matching process
[0541] After the user's vector is stored in the database, the server compares it with the vectors of other users. Specifically, it calculates the distance using both the personality vector and the emotion vector, and selects the person who is closest to the user. This distance calculation makes it possible to match individuals who have similar personalities and emotions.
[0542] As a specific example, the server uses Euclidean distance to compare the personality vector of user A with the vectors of other users in the database and selects user B who is closest.
[0543] Notification of matching results
[0544] Finally, the server notifies the user of the information about the selected partner. The user can check the matching results via push notifications or within the app on their device. Specifically, the profile information and emotional tendencies of suitable partners are provided to the user.
[0545] For example, the server uses Firebase Cloud Messaging (FCM) to send a notification to the user's smartphone saying, "A user who matches you has been found." The user then opens the app and views the details.
[0546] Prompt Sentence Examples
[0547] Examples of prompts to input to generative AI models and emotion engines include:
[0548] "Based on the following text, analyze the user's personality traits using a Transformer-type model and generate a personality vector: 'Today was a very good day.'"
[0549] "Based on the following text, analyze the user's emotional characteristics and generate an emotional vector: 'I'm tired today.'"
[0550] In this way, the system analyzes users' social media posts and achieves highly accurate matching based on personality and emotional characteristics.
[0551] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0552] Step 1:
[0553] The user grants the server permission to read from their social media account. The input requires the user's authentication information, and the output is a token indicating that permission has been granted. This permission is granted using an authentication flow such as OAuth2.0. Specifically, the user presses the "Connect to social media account" button on the app and is redirected to the social media authentication page. The user enters their login information and grants access to the app.
[0554] Step 2:
[0555] The server uses the SNS API to retrieve the user's latest posts. The number of posts to retrieve and an authentication token are required as input, and the user's latest post data (e.g., JSON format) is obtained as output. The server periodically calls the SNS API endpoint to retrieve the required data. Specifically, the server uses the SNS API endpoint " / statuses / user_timeline" to collect the latest 20 posts and receives the post data in JSON format as a response.
[0556] Step 3:
[0557] The server removes unnecessary information such as links and images from the post data it retrieves and extracts the text data. The retrieved JSON data is required as input, and clean text data with unnecessary information removed is obtained as output. Specifically, the server uses Python's regular expression library to remove URLs and image links from the post text field and extract only the text.
[0558] Step 4:
[0559] The device generates a personality vector using a generative AI model based on preprocessed text data. The input requires preprocessed text data, and the output is a multidimensional personality vector. Specifically, the device inputs the text "Today was a great day" using the BERT model to generate a vector including personality traits such as extraversion and openness (e.g., [0.8, 0.6, 0.7, …]).
[0560] Step 5:
[0561] The device uses an emotion engine to generate an emotion vector from preprocessed text data. The preprocessed text data is required as input, and a multidimensional emotion vector is obtained as output. Specifically, the device uses IBM Watson's NLP API to analyze the text "I'm tired today" and quantifies the emotion score, such as positive, negative, or neutral (e.g., [0.1, 0.9, 0.0, …]).
[0562] Step 6:
[0563] The server saves the generated personality and emotion vectors to a database. The input required is the generated vector and its associated user ID, and the output is a status message indicating successful saving. Specifically, the server connects to a MySQL database and saves the personality and emotion vectors using INSERT statements.
[0564] Step 7:
[0565] The server compares the vectors of other users and selects the person with the closest distance. The stored personality vector and emotion vector are required as input, and the output is the user ID of the person with the closest distance. Specifically, the server calculates the Euclidean distance, compares User A's vector with the vectors of all users in the database, and selects User B with the smallest distance.
[0566] Step 8:
[0567] The server notifies the user of the information about the selected match. The input requires the user ID and profile information of the closest match, and the output is a notification sent to the user's device. Specifically, the server uses Firebase Cloud Messaging (FCM) to send a notification to the user's smartphone saying, "A match has been found for you." The user receives this notification and opens the app to view detailed information.
[0568] In this way, the system analyzes users' social media posts and achieves highly accurate matching based on personality and emotional characteristics.
[0569] (Application example 2)
[0570] 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."
[0571] Conventional service provision systems and matching systems are generally designed based on a single user characteristic, making it difficult to consider the user's multidimensional personality and emotional characteristics. As a result, optimal service provision and personalized proposals that meet the needs of individual users are not being fully implemented. Furthermore, in brick-and-mortar stores, it is difficult to accurately grasp the customer's personality and emotions and make service proposals based on that information, creating challenges in improving the customer experience.
[0572] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0573] In this invention, the server includes means for acquiring an individual's electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the individual's personality traits as a multidimensional personality vector, means for using the text data to quantify the individual's emotional traits as a multidimensional emotional vector, means for storing the personality vector and the emotional vector in a database, means for comparing the stored vector with vectors of other individuals and selecting a person who is close to the individual, means for notifying the selected person of information, and means for generating appropriate services and proposals based on the acquired vector. This makes it possible to provide optimal service proposals and a detailed customer experience tailored to the user based on the user's multidimensional personality traits and emotional traits.
[0574] "Personal electronic communication data" refers to information sent by users via the internet or communication means, and specifically includes digital data such as social media posts, emails, and messaging app exchanges.
[0575] "Unnecessary information" refers to data that is not necessary for analysis, specifically information other than text data such as links, images, and advertisements, as well as elements that become noise.
[0576] "Text data" refers to data consisting only of character information, and is pure text data after unnecessary information has been removed by preprocessing.
[0577] "Personality traits" refer to characteristics that indicate an individual's basic personality and behavioral tendencies, and are evaluated using psychological indicators.
[0578] A "personality vector" refers to a multidimensional vector that expresses personality traits numerically, and is used to express an individual's personality traits numerically.
[0579] "Emotional characteristics" refer to characteristics that indicate an individual's emotional state and its changes, and specifically represent emotions such as joy, sadness, and anger.
[0580] An "emotion vector" refers to a multidimensional vector that expresses emotional characteristics numerically, and is used to treat an individual's emotional state as numerical data.
[0581] A "database" refers to a system for efficiently managing and searching structured data, and stores data such as personality vectors and emotion vectors.
[0582] "Close distance" refers to a small distance between two vectors in a vector space, meaning that the similarity is high.
[0583] "Selecting" refers to choosing an appropriate candidate from among many candidates.
[0584] "Notifying" refers to informing a specific recipient of information, and can be done by means of push notification, screen display, etc.
[0585] "Generating services and proposals" refers to creating service content and proposals suitable for a user based on the user's characteristics.
[0586] A "generative AI model" refers to a machine learning model used in natural language processing and data analysis, particularly for generative tasks.
[0587] A "prompt sentence" refers to the text input into a generative AI model, and is a sentence that serves as instructions for the model to analyze and generate.
[0588] This invention is a system that performs detailed analysis of an individual's personality and emotional characteristics and matches them with suitable partners based on the results. This system is applied to improving the customer experience in brick-and-mortar stores such as cafes and restaurants. Next, an embodiment of the invention will be described.
[0589] System Overview
[0590] The system includes a server, a user's smartphone, and an in-store tablet. The server collects and analyzes personal electronic interaction data. The smartphone functions as a platform for providing data from social media. The in-store tablet is used to propose services to customers based on the analysis results.
[0591] Data Acquisition
[0592] In order for users to use the system, they must allow their smartphone application to link with their SNS account. The smartphone periodically uses the SNS API to retrieve the user's latest posts. This post data is then sent to the server.
[0593] Data Preprocessing
[0594] The server removes unnecessary information from the received data and extracts only the text data, which includes removing noise such as links and images.
[0595] Generating personality and emotion vectors
[0596] The server inputs the preprocessed text data and uses a generative AI model to analyze the individual's personality traits and quantify them as a personality vector. It also uses an emotion analysis engine to analyze emotional traits and quantify them as an emotion vector. The generative AI model uses the Hugging Face Transformer model, and the emotion analysis uses the VADER emotion engine.
[0597] Storing and comparing vectors
[0598] The generated personality and emotion vectors are stored in a database on the server. The database stores each vector and its associated user ID. The server then compares the vectors with those of other users and selects the most suitable match based on distance calculations. This distance calculation makes it possible to match individuals with similar personalities and emotions.
[0599] Generate a service proposal
[0600] Based on the selected person's information as well as their personality and emotion vector data, the system generates appropriate services and suggestions for the user. For example, this could include recommended menu items and seating arrangements at a cafe. These suggestions are displayed on a tablet in the store, and staff provide the service accordingly.
[0601] Program processing explanation
[0602] The system uses the following hardware and software while taking personal information protection into consideration. The server functions as a central data processing location and performs data acquisition, preprocessing, vector generation, matching, and service proposals. The smartphone is primarily responsible for acquiring data from social media and sending it to the server. Meanwhile, in-store tablets display analysis results to staff, helping them provide more appropriate services.
[0603] The Hugging Face Transformer model is used to generate personality vectors, and the VADER emotion analysis engine is used to generate emotion vectors. These software applications enable accurate analysis of multi-dimensional personality and emotional traits.
[0604] Specific examples
[0605] For example, when a user visits a restaurant, they can link their social media account using their smartphone. If the user posts something like, "I'm feeling a little sad today. I think I'm stressed out from work. I miss the latte I had at the cafe I went to last time," the system will use this information to suggest the most suitable menu item for the user: "Latte."
[0606] Example prompt sentence:
[0607] Please input the user's latest social media posting data. Based on this data, the system will analyze their personality and emotional traits and suggest an appropriate menu.
[0608] 1. Social media post data: "I'm feeling a little sad today. I think work is stressful. I miss that latte I had at the cafe I went to last time."
[0609] In this way, service proposals based on the user's characteristics are realized, contributing to an improved customer experience.
[0610] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0611] Step 1:
[0612] The server obtains an individual's electronic interaction data. This data is periodically retrieved using the SNS's API to retrieve the user's latest SNS post data. The input is the post data from the SNS, which is sent to the server. The output is the retrieved, unprocessed post data. Specifically, the server sends a request to the SNS's API endpoint and receives the post data returned as a response.
[0613] Step 2:
[0614] The server removes unnecessary information from the acquired electronic exchange data and extracts text data. The input is the raw post data from step 1, from which unnecessary elements such as links, images, and advertisements are removed. The output is preprocessed pure text data. Specifically, the server uses regular expressions and natural language processing (NLP) tools to filter out the unnecessary parts and extract only the text.
[0615] Step 3:
[0616] The server uses the preprocessed text data to quantify an individual's personality traits as a multi-dimensional personality vector. The input is the preprocessed text data, and a generative AI model (e.g., a Hugging Face Transformer model) is used to generate a personality vector. The output is a personality vector. Specifically, the server inputs the text data into the model and receives the personality feature vector output from the model.
[0617] Step 4:
[0618] The server uses the preprocessed text data to quantify an individual's emotional characteristics as a multi-dimensional emotion vector. The input is the preprocessed text data, and an emotion analysis engine (e.g., VADER) is used to generate the emotion vector. The output is an emotion vector. Specifically, the server inputs the text data into the emotion analysis engine and receives a vector composed of emotion scores.
[0619] Step 5:
[0620] The server saves the generated personality vectors and emotion vectors in a database. The input is the personality vector and emotion vector, which are stored in the database along with the associated user ID. The output is the vector data saved in the database. Specifically, the server performs a store operation on the database management system (DBMS) to save the vectors.
[0621] Step 6:
[0622] The server compares the stored vector with the vectors of other individuals and selects the closest person. The input is all the personality and emotion vectors stored in the database, and based on this, the server selects the closest person using distance calculation methods such as Euclidean distance. The output is information about the selected person. Specifically, the server calculates the distance between vectors and selects the user pair with the closest distance.
[0623] Step 7:
[0624] The server notifies the information of the selected partner. The input is the information of the partner selected in step 6, which is notified to the user's device. The output is the matching result displayed on the user's device. Specifically, the server triggers a push notification and displays the profile information of the most suitable partner on the user's smartphone.
[0625] Step 8:
[0626] The server generates appropriate services and suggestions based on the vectors it acquires. The input is a personality vector and an emotion vector, which are linked to the services offered at the store to generate suggestions. The output is information about the proposed services and menus. Specifically, the server analyzes the generated vector data, selects the most suitable menus and services for the user, and displays the results on a tablet in the store.
[0627] 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.
[0628] 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.
[0629] 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.
[0630] [Third embodiment]
[0631] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0632] 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.
[0633] 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).
[0634] 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.
[0635] 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.
[0636] 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).
[0637] 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.
[0638] 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.
[0639] 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.
[0640] 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.
[0641] 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.
[0642] 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."
[0643] ---
[0644] This invention is a system that analyzes an individual's personality traits in detail and matches them with suitable partners based on the results. The system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., posts on social media).
[0645] The operation of the system is as follows.
[0646] First, in order for a user to use this system, the server grants permission to read from the user's social media account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social media API. Since these posts contain unnecessary information such as links and images, the server first removes this unnecessary information and extracts pure text data.
[0647] The device then uses the preprocessed text data to analyze the individual's personality traits using a generative AI model. For example, a Transformer-type AI model can be used to quantify the text data as a multi-dimensional personality vector. This personality vector represents the individual's personality traits and is composed of numerical parameters predicted by the AI model.
[0648] The generated personality vector is stored in a database by the server, which stores the personality vector as well as the associated user ID information, allowing the server to easily retrieve the personality vector later.
[0649] After the user's personality vector is stored in the database, the server compares it with the personality vectors of other users. Specifically, it uses mathematical distance calculations (e.g., cosine distance) to select those whose distance to the user's personality vector is close. This distance calculation makes it possible to match individuals with similar personalities.
[0650] As a result of the matching process, the server notifies the user of the information about the selected partner. This notification is sent to the device, and the user can check the matching results through the device. Specifically, the profile information of suitable partners is provided to the user via push notification or display within the app. This allows the user to obtain highly accurate matching results based on detailed personality analysis.
[0651] This system solves the problems of conventional matchmaking services and provides a powerful means for users to meet people based on natural interactions. Therefore, it enables matching based on AI analysis using detailed personality vectors, providing users with effective love matching.
[0652] ---
[0653] The processing flow will be explained below.
[0654] Processing Steps
[0655] Step 1:
[0656] When a user uses the system for the first time, the server requests permission to read from the user's SNS account, which the user grants via their device.
[0657] Step 2:
[0658] The server retrieves the latest posts from the user's social media account using an API. For example, the server uses the Twitter API to collect the user's latest 100 tweets.
[0659] Step 3:
[0660] The server extracts clean text data from collected social media posts by removing unnecessary information such as links and image tags. This preprocessing process yields text data suitable for analysis.
[0661] Step 4:
[0662] The device uses the preprocessed text data as input and analyzes the individual's personality traits using a generative AI model. Specifically, it uses a Transformer model to quantify the text data as a multi-dimensional personality vector.
[0663] Step 5:
[0664] The generated personality vectors are stored in a database by the server, which stores the personality vectors and their associated user IDs in the database for easy future searches and comparisons.
[0665] Step 6:
[0666] The server retrieves the personality vectors of all users from the database and calculates the proximity of the personality vectors to the target personality vector. Specifically, it uses the cosine distance to evaluate the similarity between each personality vector.
[0667] Step 7:
[0668] The server selects the person with the smallest distance based on the comparison results, and determines the information of that person as a match candidate.
[0669] Step 8:
[0670] The server notifies the user of the information about the people selected as potential matches, and the user receives the match results via push notifications or in-app displays on their device.
[0671] These are the specific processing steps of the system, which allow users to obtain highly accurate matching results.
[0672] Example 1
[0673] 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."
[0674] Conventional matching systems have had difficulty accurately analyzing users' personalities and preferences and matching them with suitable partners. In particular, when utilizing electronic communication data such as social networking sites, data preprocessing and analysis are cumbersome, and the accuracy of the analysis results is often insufficient. As a result, it has been difficult to achieve a match that satisfies users.
[0675] 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.
[0676] In this invention, the server includes means for acquiring an individual's electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data and a generative AI model to quantify the individual's personality traits as a multi-dimensional personality vector, means for saving the personality vector in a database, means for comparing the saved personality vector with the personality vectors of other individuals and selecting a partner who is close to the user, and means for notifying the user of information about the selected partner. This makes it possible to analyze the user's personality traits with high accuracy and efficiently select a partner with a similar personality.
[0677] "Individual electronic interaction data" refers to records of communications and posts made by individuals on digital platforms such as social media and messaging applications.
[0678] "Unnecessary information" refers to elements in the text data, such as links, images, and hashtags, that are not necessary for personality analysis.
[0679] "Text data" refers to the pure character string information that remains after removing unnecessary information such as links and images from electronic exchange data.
[0680] A "generative AI model" refers to an artificial intelligence model used to analyze text data and make predictions or inferences for specific tasks.
[0681] "Personality traits" represent the characteristics of an individual's behavior and way of thinking, and are quantified data based on psychological indicators.
[0682] A "personality vector" refers to multi-dimensional numerical data that represents an individual's personality traits, derived from text data analyzed by a generative AI model.
[0683] "Database" refers to a system for storing, managing, and retrieving structured collections of data.
[0684] "Distance" refers to an index for measuring the similarity between different personality vectors using a mathematical method (for example, cosine distance calculation).
[0685] "Push notification" refers to a communication method that delivers information from a server to a client device in real time.
[0686] This invention is a system that analyzes an individual's personality traits and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posting data).
[0687] The server uses an SNS API to retrieve SNS data through user-provided permissions. Examples include Twitter API and Facebook API. The server periodically calls the API to retrieve the user's latest posts. The retrieved data is initially processed to remove unnecessary information such as links, images, and hashtags, and pure text data is extracted. Regular expressions are then used to remove unnecessary information.
[0688] The preprocessed text data is then sent to the device. The device uses a Transformer-type generative AI model (e.g., GPT-3) to analyze the text data and quantify the user's personality traits as a multi-dimensional personality vector. This is done using a prompt such as the following: "Please analyze the user's personality traits from this text data and generate a personality vector." An example of a specific input text is "Today was a very fun day. I walked in the park with my friends and had a delicious lunch. I was able to relax in nature."
[0689] The generated personality vector is returned to the server and stored in a database along with the user ID. Databases such as MySQL and MongoDB are used to efficiently manage personality vectors and user information.
[0690] The server compares the saved personality vector with the personality vectors of other users. Specifically, it selects users with similar personalities by calculating the cosine distance. It uses the cosine function from the Python module scipy.spatial.distance.
[0691] Information about the partner selected as a match is sent from the server to the user's device via push notifications or in-app display functions. For example, a notification system such as Firebase Cloud Messaging can be used to provide users with real-time information.
[0692] This system allows users to obtain highly accurate matching results based on their own personality traits. Highly accurate matching based on natural interaction data, which was difficult to achieve with conventional technology, is now possible. As a result, users can find highly satisfying encounters.
[0693] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0694] Program processing flow
[0695] Step 1: (User authentication and access permissions)
[0696] The user logs into the system and grants the server read permission to their social media account.
[0697] The server obtains a token (access token) to protect the user's authentication information through the SNS API.
[0698] Input: User login information, SNS account information
[0699] Output: Access token
[0700] Specific behavior:
[0701] When a user logs in to the system, a dialog box appears asking, "Do you want to allow access to your SNS account?" If the user selects "Allow," the server obtains an access token using the SNS API.
[0702] Step 2: (Social Media Data Collection)
[0703] The server periodically uses the SNS API to retrieve the user's latest posts.
[0704] Input: Access token
[0705] Output: User's latest post data (JSON format)
[0706] Specific behavior:
[0707] The server periodically calls the SNS API (e.g., the GET statuses / user_timeline endpoint of the Twitter API) to retrieve the user's latest post data. The retrieved data is saved in a temporary file.
[0708] Step 3: (Data Preprocessing)
[0709] The server removes unnecessary information such as links, images, and hashtags from the acquired social media data and extracts pure text data.
[0710] Input: User posted data (JSON format)
[0711] Output: Preprocessed text data
[0712] Specific behavior:
[0713] The server reads the temporary file and removes unnecessary information using the Python regular expression module re. The preprocessed text data is then stored in memory.
[0714] Step 4: (Personality trait analysis)
[0715] The device inputs the preprocessed text data into the generative AI model.
[0716] A generative AI model analyzes the text and quantifies personality traits as a multi-dimensional personality vector.
[0717] Input: Preprocessed text data
[0718] Output: personality vector
[0719] Specific behavior:
[0720] The device sends the preprocessed text data to a generative AI model (such as a Transformer-type model: GPT-3) along with a prompt. For example, the prompt could be, "Please analyze the user's personality traits from this text data and generate a personality vector."
[0721] Step 5: (Saving to database)
[0722] The server stores the generated personality vector and user ID in a database.
[0723] Input: personality vector, user ID
[0724] Output: Database registration information
[0725] Specific behavior:
[0726] The server generates and executes an SQL query to insert the personality vector and the user ID into the database, for example, INSERT INTO user_vectors (user_id, personality_vector) VALUES ('1234', '0.45, -0.67, ...').
[0727] Step 6: (Matching process)
[0728] The server compares the personality vectors with those of other users stored in a database.
[0729] Using mathematical distance calculations (e.g., cosine distance), partners with vectors highly similar to the user's personality vector are selected.
[0730] Input: User's personality vector, other users' personality vectors
[0731] Output: Matching result (opponent information)
[0732] Specific behavior:
[0733] The server retrieves the personality vectors of other users from the database, calculates the distance using the cosine function in the Python module scipy.spatial.distance, selects the user with the closest personality vector, and records the selection result.
[0734] Step 7: (Notification of Matching Results)
[0735] The server will notify the user of the information about the selected person via push notification or in-app display.
[0736] Input: Matching result (other person's information)
[0737] Output: Notification information
[0738] Specific behavior:
[0739] The server calls a push notification API (e.g., Firebase Cloud Messaging) to notify the user that a new match has been found. When the user taps the push notification, the match's profile information is displayed in the app.
[0740] The above processing steps enable users to obtain highly accurate matching results based on natural interactions.
[0741] (Application example 1)
[0742] 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."
[0743] In conventional online shopping, products are recommended without considering the user's personality or preferences, making it difficult for users to find the products they want. In addition, users must spend a lot of time and effort to find the products that are best suited to them, resulting in an inefficient shopping experience.
[0744] 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.
[0745] In this invention, the server includes means for acquiring personal electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the personal character traits of the individual as a multi-dimensional personality vector, means for saving the personality vector in a database, means for comparing the saved personality vector with product vectors in a product database and selecting products that are close in distance, and means for notifying information about the selected products, thereby enabling product recommendations optimized for the user's personality and preferences.
[0746] "Personal electronic interaction data" includes online interactions such as social media posts, messages, and comments.
[0747] "Unnecessary information" is data that is not directly relevant to personality trait analysis, such as links, images, and advertising data.
[0748] "Text data" refers to pre-processed pure text data, which are strings of characters used in personality trait analysis.
[0749] A "personality trait" is a set of specific characteristics or parameters that express an individual's personality in numerical or multidimensional terms.
[0750] A "personality vector" is a multidimensional vector that numerically represents an individual's personality traits.
[0751] The "database" is an information system for storing and managing acquired personality vectors and product vectors.
[0752] A "product vector" is a vector quantified for the characteristics and recommendations of each product.
[0753] "Distance" is a mathematical measure used to compare the similarity between a personality vector and a product vector, such as cosine distance.
[0754] A "product database" is an information system that stores product information and product vectors.
[0755] A "server" is a central processing unit that performs functions such as acquiring, processing, storing, and comparing information.
[0756] This invention is a system that analyzes an individual's personality traits in detail and recommends optimal products based on the results. The system is implemented via a server and a terminal, and utilizes users' electronic interaction data (e.g., posts on social media).
[0757] The server obtains permission to read from the user's social networking account to obtain personal electronic communication data. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social networking service's API. Since these posts contain unnecessary information such as links and images, the server first removes this unnecessary information and extracts pure text data.
[0758] The server then uses the preprocessed text data to analyze the individual's personality traits using a generative AI model. For example, it uses a Transformer-type AI model to quantify the text data as a multi-dimensional personality vector. This personality vector represents the individual's personality traits and is composed of numerical parameters predicted by the AI model.
[0759] The generated personality vector is stored in a database by the server, which stores the personality vector as well as the associated user ID information, allowing the server to easily retrieve the personality vector later.
[0760] The stored personality vector is compared with the product vectors in the product database. Specifically, a mathematical distance calculation (e.g., cosine distance) is used to select products that are close to the user's personality vector. This distance calculation makes it possible to recommend products that are best suited to the user's personality and preferences.
[0761] As a result of the matching process, the server notifies the user of the selected product information. The notification is sent to the device, and the user can check the recommendation results through the device. Specifically, the most suitable product information is provided to the user via push notification or display within the app. This allows the user to receive highly accurate product recommendations based on a detailed personality analysis.
[0762] As a concrete example, the following prompt sentences are input into a generative AI model to perform personality analysis:
[0763] "Analyze a user's personality traits based on their social media data. For example, what personality traits emerge from their latest posts?"
[0764] This invention is expected to realize personalized product recommendations based on the user's personality and preferences, improving the satisfaction and efficiency of online shopping.
[0765] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0766] Step 1:
[0767] The server obtains read access permission to the user's SNS account. This is done by the user linking their SNS account to the system and granting API access. Specifically, the server uses the user's authentication information to access the SNS's API and retrieve post data. The input is the user's SNS account information, and the output is the post data retrieved from the SNS.
[0768] Step 2:
[0769] The server removes unnecessary information from the acquired SNS post data and extracts text data. It filters out unnecessary information such as links, images, and advertisements to generate pure text data. The input is the post data acquired from the SNS, and the output is clean text data. Specifically, it uses regular expressions and other methods to programmatically remove unnecessary information.
[0770] Step 3:
[0771] The server inputs the preprocessed text data into a generative AI model to analyze the user's personality traits. The generative AI model analyzes the text data and quantifies a personality vector that represents the user's personality traits. The input is clean text data, and the output is a personality vector. Specifically, the text is encoded using a transformer model such as BERT.
[0772] Step 4:
[0773] The server saves the generated personality vector in a database. The personality vector and the associated user ID information are saved in the database for easy retrieval later. The input is the personality vector and the user ID, and the output is the information recorded in the database. Specifically, the data is saved using an SQL or NoSQL database.
[0774] Step 5:
[0775] The server compares the stored personality vector with the product vectors in the product database. Using mathematical distance calculations such as cosine distance, it selects products that are close to the user's personality vector. The input is the user's personality vector and product vector, and the output is the ID of the selected product. Specifically, it uses a machine learning library to calculate cosine similarity.
[0776] Step 6:
[0777] The server notifies the user of the information about the selected product. The selection results are provided to the user via push notification or in-app display on their device. The input is the ID of the selected product, and the output is the product information displayed on the user's device. Specifically, this uses the mobile app's push notification function or the web app's information display function.
[0778] Through the above processing steps, personalized product recommendations based on the user's personality and preferences are realized.
[0779] 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.
[0780] ---
[0781] This invention is a system that analyzes an individual's personality and emotional characteristics in detail and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posts).
[0782] The operation of the system is as follows.
[0783] Data acquisition and preprocessing
[0784] First, to use this system, a user grants the server permission to read from their SNS account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the SNS's API. These posts contain unnecessary information such as links and images, so the server removes this unnecessary information and extracts only the pure text data.
[0785] Generating a personality vector
[0786] The device uses the preprocessed text data as input and a generative AI model to analyze an individual's personality traits. Specifically, a Transformer model is used to quantify the text data as a multi-dimensional personality vector. This personality vector represents an individual's personality traits and is composed of numerical parameters predicted by the AI model.
[0787] Generating emotion vectors
[0788] Furthermore, the device uses an emotion engine to analyze the user's emotions from the preprocessed text data. This quantifies the user's emotional characteristics as a multidimensional emotion vector. The emotion vector indicates the user's emotional state and tendencies, and is expressed numerically, just like the personality vector.
[0789] Vector storage and matching
[0790] The generated personality and emotion vectors are stored by the server in a database, which stores each vector and its associated user ID for easy later retrieval and comparison.
[0791] After the user's vector is stored in the database, the server compares it with the vectors of other users. Specifically, it calculates the distance using both the personality vector and the emotion vector, and selects the person who is closest to the user. This distance calculation makes it possible to match individuals who have similar personalities and emotions.
[0792] Notification of matching results
[0793] As a result of the matching process, the server notifies the user of the information about the selected partner. The user can check the matching results via push notifications or within the app on their device. Specifically, the profile information and emotional tendencies of suitable partners are provided to the user. This allows the user to obtain highly accurate matching results based on detailed personality and emotional analysis.
[0794] As described above, this invention solves the problems of conventional matching systems and achieves more accurate romantic matching by providing a new matching algorithm that uses vectors that combine personality traits and emotional traits.
[0795] ---
[0796] The processing flow will be explained below.
[0797] Processing Steps
[0798] Step 1:
[0799] When a user uses the system for the first time, the server requests permission to read from the user's SNS account, and the user grants permission via their device.
[0800] Step 2:
[0801] The server uses the API of the SNS to obtain the latest posts from the user. For example, it uses the Twitter API to collect the latest 100 tweets.
[0802] Step 3:
[0803] The server removes unnecessary information such as links and image tags from the collected social media posts and extracts clean text data. At this stage, only the text is prepared for analysis.
[0804] Step 4:
[0805] The device takes the preprocessed text data as input and uses a generative AI model to analyze an individual's personality traits. Specifically, it uses a Transformer model to convert the text data into a multi-dimensional personality vector.
[0806] Step 5:
[0807] The terminal also receives the preprocessed text data as input and uses an emotion engine to analyze the user's emotion characteristics. The emotion engine converts the text data into a multi-dimensional emotion vector.
[0808] Step 6:
[0809] The generated personality and emotion vectors are stored in a database by the server, which then stores these vectors and their associated user IDs in the database.
[0810] Step 7:
[0811] The server compares the newly saved personality and emotion vectors with those of other users, using mathematical techniques such as cosine distance to select those who are similar in both personality and emotion.
[0812] Step 8:
[0813] The server selects the closest person and notifies the user of that person's information as a potential match. The user receives the match results via push notifications or within the app on their device.
[0814] Step 9:
[0815] After receiving the notification, the user can check the other person's profile information and emotional tendencies and take steps to start interacting with them.
[0816] ---
[0817] These are the steps for specifically implementing the new matching algorithm using vectors that combine personality traits and emotional traits. This allows users to obtain more accurate matching results.
[0818] Example 2
[0819] 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."
[0820] Conventional matching systems mainly consider only individual personality traits, without considering emotional traits, making it difficult to achieve more accurate matching. Furthermore, due to the lack of a matching algorithm that effectively utilizes SNS posting data, it has not been possible to achieve matching that reflects the actual behavior and emotions of users.
[0821] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for acquiring personal electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the personal character traits as a multidimensional character vector, means for using the text data to quantify the personal emotional traits as a multidimensional emotional vector, means for storing the personal character vector and the emotional vector in a database, means for comparing the stored personal character vector and the emotional vector with the vectors of other individuals and selecting a partner who is close, and means for notifying information about the selected partner. This enables highly accurate matching that takes into account both personality traits and emotional traits.
[0822] "Electronic communication data" refers to all communication data generated by individuals via the internet and digital devices.
[0823] "Text data" refers to character information extracted from electronic exchange data, and refers to pure text with unnecessary information such as links and images removed.
[0824] "Personality vector" refers to numerical data that represents an individual's personality traits in a multidimensional space, analyzed using a generative AI model.
[0825] An "emotion vector" refers to numerical data that represents emotional characteristics analyzed from an individual's text data in a multidimensional space.
[0826] A "generative AI model" refers to an algorithm or program that uses machine learning and deep learning techniques to analyze personality and emotions from text data.
[0827] "Database" refers to an electronic record system designed to store and manage the generated personality vectors and emotion vectors.
[0828] "Distance calculation" is a calculation method for evaluating the similarity between personality vectors and emotion vectors, and typically uses Euclidean distance or cosine similarity.
[0829] "Notification means" refers to a method or system for notifying users of matching results, including push notifications and in-app displays.
[0830] This invention is a system that analyzes an individual's personality and emotional characteristics in detail and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posts).
[0831] Data acquisition and preprocessing
[0832] To use this system, a user first grants the server permission to read from their social media account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social media API. These posts contain unnecessary information such as links and images, so the server removes this unnecessary information and extracts only the pure text data.
[0833] For example, a server uses the Twitter API to collect a user's last 20 tweets, removes URLs and image links, and extracts only the text. For example, it uses Python's regular expression library to remove unnecessary information.
[0834] Generating a personality vector
[0835] The device takes the preprocessed text data as input and uses a generative AI model to analyze an individual's personality traits. Specifically, it uses a Transformer-type model (e.g., the BERT model) to quantify the text data as a multi-dimensional personality vector. This personality vector represents an individual's personality traits and is composed of multiple parameters.
[0836] As a concrete example, when a device inputs the text data "Today was a very good day" using the BERT model, a vector including multiple personality traits such as extraversion and openness is generated (e.g., [0.8, 0.6, 0.7, ...]).
[0837] Generating emotion vectors
[0838] Furthermore, the device uses an emotion engine (e.g., IBM Watson's NLP API) to analyze the emotional characteristics from the preprocessed text data. This quantifies the user's emotional characteristics as a multidimensional emotion vector. The emotion vector indicates the user's emotional state and tendencies, and is expressed as a number, just like the personality vector.
[0839] As a concrete example, when a device uses IBM Watson's NLP API to analyze the text "I feel tired today," it quantifies an emotion score such as positive, negative, or neutral (e.g., [0.1, 0.9, 0.0, ...]).
[0840] Vector saving
[0841] The generated personality and emotion vectors are stored in a database by the server, which stores each vector and its associated user ID, allowing for easy search and comparison later.
[0842] As a concrete example, the server connects to a MySQL database and stores the generated personality and emotion vectors using INSERT statements.
[0843] Matching process
[0844] After the user's vector is stored in the database, the server compares it with the vectors of other users. Specifically, it calculates the distance using both the personality vector and the emotion vector, and selects the person who is closest to the user. This distance calculation makes it possible to match individuals who have similar personalities and emotions.
[0845] As a specific example, the server uses Euclidean distance to compare the personality vector of user A with the vectors of other users in the database and selects user B who is closest.
[0846] Notification of matching results
[0847] Finally, the server notifies the user of the information about the selected partner. The user can check the matching results via push notifications or within the app on their device. Specifically, the profile information and emotional tendencies of suitable partners are provided to the user.
[0848] For example, the server uses Firebase Cloud Messaging (FCM) to send a notification to the user's smartphone saying, "A user who matches you has been found." The user then opens the app and views the details.
[0849] Prompt Sentence Examples
[0850] Examples of prompts to input to generative AI models and emotion engines include:
[0851] "Based on the following text, analyze the user's personality traits using a Transformer-type model and generate a personality vector: 'Today was a very good day.'"
[0852] "Based on the following text, analyze the user's emotional characteristics and generate an emotional vector: 'I'm tired today.'"
[0853] In this way, the system analyzes users' social media posts and achieves highly accurate matching based on personality and emotional characteristics.
[0854] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0855] Step 1:
[0856] The user grants the server permission to read from their social media account. The input requires the user's authentication information, and the output is a token indicating that permission has been granted. This permission is granted using an authentication flow such as OAuth2.0. Specifically, the user presses the "Connect to social media account" button on the app and is redirected to the social media authentication page. The user enters their login information and grants access to the app.
[0857] Step 2:
[0858] The server uses the SNS API to retrieve the user's latest posts. The number of posts to retrieve and an authentication token are required as input, and the user's latest post data (e.g., JSON format) is obtained as output. The server periodically calls the SNS API endpoint to retrieve the required data. Specifically, the server uses the SNS API endpoint " / statuses / user_timeline" to collect the latest 20 posts and receives the post data in JSON format as a response.
[0859] Step 3:
[0860] The server removes unnecessary information such as links and images from the post data it retrieves and extracts the text data. The retrieved JSON data is required as input, and clean text data with unnecessary information removed is obtained as output. Specifically, the server uses Python's regular expression library to remove URLs and image links from the post text field and extract only the text.
[0861] Step 4:
[0862] The device generates a personality vector using a generative AI model based on preprocessed text data. The input requires preprocessed text data, and the output is a multidimensional personality vector. Specifically, the device inputs the text "Today was a great day" using the BERT model to generate a vector including personality traits such as extraversion and openness (e.g., [0.8, 0.6, 0.7, …]).
[0863] Step 5:
[0864] The device uses an emotion engine to generate an emotion vector from preprocessed text data. The preprocessed text data is required as input, and a multidimensional emotion vector is obtained as output. Specifically, the device uses IBM Watson's NLP API to analyze the text "I'm tired today" and quantifies the emotion score, such as positive, negative, or neutral (e.g., [0.1, 0.9, 0.0, …]).
[0865] Step 6:
[0866] The server saves the generated personality and emotion vectors to a database. The input required is the generated vector and its associated user ID, and the output is a status message indicating successful saving. Specifically, the server connects to a MySQL database and saves the personality and emotion vectors using INSERT statements.
[0867] Step 7:
[0868] The server compares the vectors of other users and selects the person with the closest distance. The stored personality vector and emotion vector are required as input, and the output is the user ID of the person with the closest distance. Specifically, the server calculates the Euclidean distance, compares User A's vector with the vectors of all users in the database, and selects User B with the smallest distance.
[0869] Step 8:
[0870] The server notifies the user of the information about the selected match. The input requires the user ID and profile information of the closest match, and the output is a notification sent to the user's device. Specifically, the server uses Firebase Cloud Messaging (FCM) to send a notification to the user's smartphone saying, "A match has been found for you." The user receives this notification and opens the app to view detailed information.
[0871] In this way, the system analyzes users' social media posts and achieves highly accurate matching based on personality and emotional characteristics.
[0872] (Application example 2)
[0873] 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."
[0874] Conventional service provision systems and matching systems are generally designed based on a single user characteristic, making it difficult to consider the user's multidimensional personality and emotional characteristics. As a result, optimal service provision and personalized proposals that meet the needs of individual users are not being fully implemented. Furthermore, in brick-and-mortar stores, it is difficult to accurately grasp the customer's personality and emotions and make service proposals based on that information, creating challenges in improving the customer experience.
[0875] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0876] In this invention, the server includes means for acquiring an individual's electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the individual's personality traits as a multidimensional personality vector, means for using the text data to quantify the individual's emotional traits as a multidimensional emotional vector, means for storing the personality vector and the emotional vector in a database, means for comparing the stored vector with vectors of other individuals and selecting a person who is close to the individual, means for notifying the selected person of information, and means for generating appropriate services and proposals based on the acquired vector. This makes it possible to provide optimal service proposals and a detailed customer experience tailored to the user based on the user's multidimensional personality traits and emotional traits.
[0877] "Personal electronic communication data" refers to information sent by users via the internet or communication means, and specifically includes digital data such as social media posts, emails, and messaging app exchanges.
[0878] "Unnecessary information" refers to data that is not necessary for analysis, specifically information other than text data such as links, images, and advertisements, as well as elements that become noise.
[0879] "Text data" refers to data consisting only of character information, and is pure text data after unnecessary information has been removed by preprocessing.
[0880] "Personality traits" refer to characteristics that indicate an individual's basic personality and behavioral tendencies, and are evaluated using psychological indicators.
[0881] A "personality vector" refers to a multidimensional vector that expresses personality traits numerically, and is used to express an individual's personality traits numerically.
[0882] "Emotional characteristics" refer to characteristics that indicate an individual's emotional state and its changes, and specifically represent emotions such as joy, sadness, and anger.
[0883] An "emotion vector" refers to a multidimensional vector that expresses emotional characteristics numerically, and is used to treat an individual's emotional state as numerical data.
[0884] A "database" refers to a system for efficiently managing and searching structured data, and stores data such as personality vectors and emotion vectors.
[0885] "Close distance" refers to a small distance between two vectors in a vector space, meaning that the similarity is high.
[0886] "Selecting" refers to choosing an appropriate candidate from among many candidates.
[0887] "Notifying" refers to informing a specific recipient of information, and can be done by means of push notification, screen display, etc.
[0888] "Generating services and proposals" refers to creating service content and proposals suitable for a user based on the user's characteristics.
[0889] A "generative AI model" refers to a machine learning model used in natural language processing and data analysis, particularly for generative tasks.
[0890] A "prompt sentence" refers to the text input into a generative AI model, and is a sentence that serves as instructions for the model to analyze and generate.
[0891] This invention is a system that performs detailed analysis of an individual's personality and emotional characteristics and matches them with suitable partners based on the results. This system is applied to improving the customer experience in brick-and-mortar stores such as cafes and restaurants. Next, an embodiment of the invention will be described.
[0892] System Overview
[0893] The system includes a server, a user's smartphone, and an in-store tablet. The server collects and analyzes personal electronic interaction data. The smartphone functions as a platform for providing data from social media. The in-store tablet is used to propose services to customers based on the analysis results.
[0894] Data Acquisition
[0895] In order for users to use the system, they must allow their smartphone application to link with their SNS account. The smartphone periodically uses the SNS API to retrieve the user's latest posts. This post data is then sent to the server.
[0896] Data Preprocessing
[0897] The server removes unnecessary information from the received data and extracts only the text data, which includes removing noise such as links and images.
[0898] Generating personality and emotion vectors
[0899] The server inputs the preprocessed text data and uses a generative AI model to analyze the individual's personality traits and quantify them as a personality vector. It also uses an emotion analysis engine to analyze emotional traits and quantify them as an emotion vector. The generative AI model uses the Hugging Face Transformer model, and the emotion analysis uses the VADER emotion engine.
[0900] Storing and comparing vectors
[0901] The generated personality and emotion vectors are stored in a database on the server. The database stores each vector and its associated user ID. The server then compares the vectors with those of other users and selects the most suitable match based on distance calculations. This distance calculation makes it possible to match individuals with similar personalities and emotions.
[0902] Generate a service proposal
[0903] Based on the selected person's information as well as their personality and emotion vector data, the system generates appropriate services and suggestions for the user. For example, this could include recommended menu items and seating arrangements at a cafe. These suggestions are displayed on a tablet in the store, and staff provide the service accordingly.
[0904] Program processing explanation
[0905] The system uses the following hardware and software while taking personal information protection into consideration. The server functions as a central data processing location and performs data acquisition, preprocessing, vector generation, matching, and service proposals. The smartphone is primarily responsible for acquiring data from social media and sending it to the server. Meanwhile, in-store tablets display analysis results to staff, helping them provide more appropriate services.
[0906] The Hugging Face Transformer model is used to generate personality vectors, and the VADER emotion analysis engine is used to generate emotion vectors. These software applications enable accurate analysis of multi-dimensional personality and emotional traits.
[0907] Specific examples
[0908] For example, when a user visits a restaurant, they can link their social media account using their smartphone. If the user posts something like, "I'm feeling a little sad today. I think I'm stressed out from work. I miss the latte I had at the cafe I went to last time," the system will use this information to suggest the most suitable menu item for the user: "Latte."
[0909] Example prompt sentence:
[0910] Please input the user's latest social media posting data. Based on this data, the system will analyze their personality and emotional traits and suggest an appropriate menu.
[0911] 1. Social media post data: "I'm feeling a little sad today. I think work is stressful. I miss that latte I had at the cafe I went to last time."
[0912] In this way, service proposals based on the user's characteristics are realized, contributing to an improved customer experience.
[0913] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0914] Step 1:
[0915] The server obtains an individual's electronic interaction data. This data is periodically retrieved using the SNS's API to retrieve the user's latest SNS post data. The input is the post data from the SNS, which is sent to the server. The output is the retrieved, unprocessed post data. Specifically, the server sends a request to the SNS's API endpoint and receives the post data returned as a response.
[0916] Step 2:
[0917] The server removes unnecessary information from the acquired electronic exchange data and extracts text data. The input is the raw post data from step 1, from which unnecessary elements such as links, images, and advertisements are removed. The output is preprocessed pure text data. Specifically, the server uses regular expressions and natural language processing (NLP) tools to filter out the unnecessary parts and extract only the text.
[0918] Step 3:
[0919] The server uses the preprocessed text data to quantify an individual's personality traits as a multi-dimensional personality vector. The input is the preprocessed text data, and a generative AI model (e.g., a Hugging Face Transformer model) is used to generate a personality vector. The output is a personality vector. Specifically, the server inputs the text data into the model and receives the personality feature vector output from the model.
[0920] Step 4:
[0921] The server uses the preprocessed text data to quantify an individual's emotional characteristics as a multi-dimensional emotion vector. The input is the preprocessed text data, and an emotion analysis engine (e.g., VADER) is used to generate the emotion vector. The output is an emotion vector. Specifically, the server inputs the text data into the emotion analysis engine and receives a vector composed of emotion scores.
[0922] Step 5:
[0923] The server saves the generated personality vectors and emotion vectors in a database. The input is the personality vector and emotion vector, which are stored in the database along with the associated user ID. The output is the vector data saved in the database. Specifically, the server performs a store operation on the database management system (DBMS) to save the vectors.
[0924] Step 6:
[0925] The server compares the stored vector with the vectors of other individuals and selects the closest person. The input is all the personality and emotion vectors stored in the database, and based on this, the server selects the closest person using distance calculation methods such as Euclidean distance. The output is information about the selected person. Specifically, the server calculates the distance between vectors and selects the user pair with the closest distance.
[0926] Step 7:
[0927] The server notifies the information of the selected partner. The input is the information of the partner selected in step 6, which is notified to the user's device. The output is the matching result displayed on the user's device. Specifically, the server triggers a push notification and displays the profile information of the most suitable partner on the user's smartphone.
[0928] Step 8:
[0929] The server generates appropriate services and suggestions based on the vectors it acquires. The input is a personality vector and an emotion vector, which are linked to the services offered at the store to generate suggestions. The output is information about the proposed services and menus. Specifically, the server analyzes the generated vector data, selects the most suitable menus and services for the user, and displays the results on a tablet in the store.
[0930] 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.
[0931] 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.
[0932] 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.
[0933] [Fourth embodiment]
[0934] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[0935] 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.
[0936] 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).
[0937] 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.
[0938] 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.
[0939] 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).
[0940] 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.
[0941] 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.
[0942] 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.
[0943] 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.
[0944] 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.
[0945] 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.
[0946] 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."
[0947] ---
[0948] This invention is a system that analyzes an individual's personality traits in detail and matches them with suitable partners based on the results. The system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., posts on social media).
[0949] The operation of the system is as follows.
[0950] First, in order for a user to use this system, the server grants permission to read from the user's social media account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social media API. Since these posts contain unnecessary information such as links and images, the server first removes this unnecessary information and extracts pure text data.
[0951] The device then uses the preprocessed text data to analyze the individual's personality traits using a generative AI model. For example, a Transformer-type AI model can be used to quantify the text data as a multi-dimensional personality vector. This personality vector represents the individual's personality traits and is composed of numerical parameters predicted by the AI model.
[0952] The generated personality vector is stored in a database by the server, which stores the personality vector as well as the associated user ID information, allowing the server to easily retrieve the personality vector later.
[0953] After the user's personality vector is stored in the database, the server compares it with the personality vectors of other users. Specifically, it uses mathematical distance calculations (e.g., cosine distance) to select those whose distance to the user's personality vector is close. This distance calculation makes it possible to match individuals with similar personalities.
[0954] As a result of the matching process, the server notifies the user of the information about the selected partner. This notification is sent to the device, and the user can check the matching results through the device. Specifically, the profile information of suitable partners is provided to the user via push notification or display within the app. This allows the user to obtain highly accurate matching results based on detailed personality analysis.
[0955] This system solves the problems of conventional matchmaking services and provides a powerful means for users to meet people based on natural interactions. Therefore, it enables matching based on AI analysis using detailed personality vectors, providing users with effective love matching.
[0956] ---
[0957] The processing flow will be explained below.
[0958] Processing Steps
[0959] Step 1:
[0960] When a user uses the system for the first time, the server requests permission to read from the user's SNS account, which the user grants via their device.
[0961] Step 2:
[0962] The server retrieves the latest posts from the user's social media account using an API. For example, the server uses the Twitter API to collect the user's latest 100 tweets.
[0963] Step 3:
[0964] The server extracts clean text data from collected social media posts by removing unnecessary information such as links and image tags. This preprocessing process yields text data suitable for analysis.
[0965] Step 4:
[0966] The device uses the preprocessed text data as input and analyzes the individual's personality traits using a generative AI model. Specifically, it uses a Transformer model to quantify the text data as a multi-dimensional personality vector.
[0967] Step 5:
[0968] The generated personality vectors are stored in a database by the server, which stores the personality vectors and their associated user IDs in the database for easy future searches and comparisons.
[0969] Step 6:
[0970] The server retrieves the personality vectors of all users from the database and calculates the proximity of the personality vectors to the target personality vector. Specifically, it uses the cosine distance to evaluate the similarity between each personality vector.
[0971] Step 7:
[0972] The server selects the person with the smallest distance based on the comparison results, and determines the information of that person as a match candidate.
[0973] Step 8:
[0974] The server notifies the user of the information about the people selected as potential matches, and the user receives the match results via push notifications or in-app displays on their device.
[0975] These are the specific processing steps of the system, which allow users to obtain highly accurate matching results.
[0976] Example 1
[0977] 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."
[0978] Conventional matching systems have had difficulty accurately analyzing users' personalities and preferences and matching them with suitable partners. In particular, when utilizing electronic communication data such as social networking sites, data preprocessing and analysis are cumbersome, and the accuracy of the analysis results is often insufficient. As a result, it has been difficult to achieve a match that satisfies users.
[0979] 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.
[0980] In this invention, the server includes means for acquiring an individual's electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data and a generative AI model to quantify the individual's personality traits as a multi-dimensional personality vector, means for saving the personality vector in a database, means for comparing the saved personality vector with the personality vectors of other individuals and selecting a partner who is close to the user, and means for notifying the user of information about the selected partner. This makes it possible to analyze the user's personality traits with high accuracy and efficiently select a partner with a similar personality.
[0981] "Individual electronic interaction data" refers to records of communications and posts made by individuals on digital platforms such as social media and messaging applications.
[0982] "Unnecessary information" refers to elements in the text data, such as links, images, and hashtags, that are not necessary for personality analysis.
[0983] "Text data" refers to the pure character string information that remains after removing unnecessary information such as links and images from electronic exchange data.
[0984] A "generative AI model" refers to an artificial intelligence model used to analyze text data and make predictions or inferences for specific tasks.
[0985] "Personality traits" represent the characteristics of an individual's behavior and way of thinking, and are quantified data based on psychological indicators.
[0986] A "personality vector" refers to multi-dimensional numerical data that represents an individual's personality traits, derived from text data analyzed by a generative AI model.
[0987] "Database" refers to a system for storing, managing, and retrieving structured collections of data.
[0988] "Distance" refers to an index for measuring the similarity between different personality vectors using a mathematical method (for example, cosine distance calculation).
[0989] "Push notification" refers to a communication method that delivers information from a server to a client device in real time.
[0990] This invention is a system that analyzes an individual's personality traits and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posting data).
[0991] The server uses an SNS API to retrieve SNS data through user-provided permissions. Examples include Twitter API and Facebook API. The server periodically calls the API to retrieve the user's latest posts. The retrieved data is initially processed to remove unnecessary information such as links, images, and hashtags, and pure text data is extracted. Regular expressions are then used to remove unnecessary information.
[0992] The preprocessed text data is then sent to the device. The device uses a Transformer-type generative AI model (e.g., GPT-3) to analyze the text data and quantify the user's personality traits as a multi-dimensional personality vector. This is done using a prompt such as the following: "Please analyze the user's personality traits from this text data and generate a personality vector." An example of a specific input text is "Today was a very fun day. I walked in the park with my friends and had a delicious lunch. I was able to relax in nature."
[0993] The generated personality vector is returned to the server and stored in a database along with the user ID. Databases such as MySQL and MongoDB are used to efficiently manage personality vectors and user information.
[0994] The server compares the saved personality vector with the personality vectors of other users. Specifically, it selects users with similar personalities by calculating the cosine distance. It uses the cosine function from the Python module scipy.spatial.distance.
[0995] Information about the partner selected as a match is sent from the server to the user's device via push notifications or in-app display functions. For example, a notification system such as Firebase Cloud Messaging can be used to provide users with real-time information.
[0996] This system allows users to obtain highly accurate matching results based on their own personality traits. Highly accurate matching based on natural interaction data, which was difficult to achieve with conventional technology, is now possible. As a result, users can find highly satisfying encounters.
[0997] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0998] Program processing flow
[0999] Step 1: (User authentication and access permissions)
[1000] The user logs into the system and grants the server read permission to their social media account.
[1001] The server obtains a token (access token) to protect the user's authentication information through the SNS API.
[1002] Input: User login information, SNS account information
[1003] Output: Access token
[1004] Specific behavior:
[1005] When a user logs in to the system, a dialog box appears asking, "Do you want to allow access to your SNS account?" If the user selects "Allow," the server obtains an access token using the SNS API.
[1006] Step 2: (Social Media Data Collection)
[1007] The server periodically uses the SNS API to retrieve the user's latest posts.
[1008] Input: Access token
[1009] Output: User's latest post data (JSON format)
[1010] Specific behavior:
[1011] The server periodically calls the SNS API (e.g., the GET statuses / user_timeline endpoint of the Twitter API) to retrieve the user's latest post data. The retrieved data is saved in a temporary file.
[1012] Step 3: (Data Preprocessing)
[1013] The server removes unnecessary information such as links, images, and hashtags from the acquired social media data and extracts pure text data.
[1014] Input: User posted data (JSON format)
[1015] Output: Preprocessed text data
[1016] Specific behavior:
[1017] The server reads the temporary file and removes unnecessary information using the Python regular expression module re. The preprocessed text data is then stored in memory.
[1018] Step 4: (Personality trait analysis)
[1019] The device inputs the preprocessed text data into the generative AI model.
[1020] A generative AI model analyzes the text and quantifies personality traits as a multi-dimensional personality vector.
[1021] Input: Preprocessed text data
[1022] Output: personality vector
[1023] Specific behavior:
[1024] The device sends the preprocessed text data to a generative AI model (such as a Transformer-type model: GPT-3) along with a prompt. For example, the prompt could be, "Please analyze the user's personality traits from this text data and generate a personality vector."
[1025] Step 5: (Saving to database)
[1026] The server stores the generated personality vector and user ID in a database.
[1027] Input: personality vector, user ID
[1028] Output: Database registration information
[1029] Specific behavior:
[1030] The server generates and executes an SQL query to insert the personality vector and the user ID into the database, for example, INSERT INTO user_vectors (user_id, personality_vector) VALUES ('1234', '0.45, -0.67, ...').
[1031] Step 6: (Matching process)
[1032] The server compares the personality vectors with those of other users stored in a database.
[1033] Using mathematical distance calculations (e.g., cosine distance), partners with vectors highly similar to the user's personality vector are selected.
[1034] Input: User's personality vector, other users' personality vectors
[1035] Output: Matching result (opponent information)
[1036] Specific behavior:
[1037] The server retrieves the personality vectors of other users from the database, calculates the distance using the cosine function in the Python module scipy.spatial.distance, selects the user with the closest personality vector, and records the selection result.
[1038] Step 7: (Notification of Matching Results)
[1039] The server will notify the user of the information about the selected person via push notification or in-app display.
[1040] Input: Matching result (other person's information)
[1041] Output: Notification information
[1042] Specific behavior:
[1043] The server calls a push notification API (e.g., Firebase Cloud Messaging) to notify the user that a new match has been found. When the user taps the push notification, the match's profile information is displayed in the app.
[1044] The above processing steps enable users to obtain highly accurate matching results based on natural interactions.
[1045] (Application example 1)
[1046] 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."
[1047] In conventional online shopping, products are recommended without considering the user's personality or preferences, making it difficult for users to find the products they want. In addition, users must spend a lot of time and effort to find the products that are best suited to them, resulting in an inefficient shopping experience.
[1048] 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.
[1049] In this invention, the server includes means for acquiring personal electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the personal character traits of the individual as a multi-dimensional personality vector, means for saving the personality vector in a database, means for comparing the saved personality vector with product vectors in a product database and selecting products that are close in distance, and means for notifying information about the selected products, thereby enabling product recommendations optimized for the user's personality and preferences.
[1050] "Personal electronic interaction data" includes online interactions such as social media posts, messages, and comments.
[1051] "Unnecessary information" is data that is not directly relevant to personality trait analysis, such as links, images, and advertising data.
[1052] "Text data" refers to pre-processed pure text data, which are strings of characters used in personality trait analysis.
[1053] A "personality trait" is a set of specific characteristics or parameters that express an individual's personality in numerical or multidimensional terms.
[1054] A "personality vector" is a multidimensional vector that numerically represents an individual's personality traits.
[1055] The "database" is an information system for storing and managing acquired personality vectors and product vectors.
[1056] A "product vector" is a vector quantified for the characteristics and recommendations of each product.
[1057] "Distance" is a mathematical measure used to compare the similarity between a personality vector and a product vector, such as cosine distance.
[1058] A "product database" is an information system that stores product information and product vectors.
[1059] A "server" is a central processing unit that performs functions such as acquiring, processing, storing, and comparing information.
[1060] This invention is a system that analyzes an individual's personality traits in detail and recommends optimal products based on the results. The system is implemented via a server and a terminal, and utilizes users' electronic interaction data (e.g., posts on social media).
[1061] The server obtains permission to read from the user's social networking account to obtain personal electronic communication data. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social networking service's API. Since these posts contain unnecessary information such as links and images, the server first removes this unnecessary information and extracts pure text data.
[1062] The server then uses the preprocessed text data to analyze the individual's personality traits using a generative AI model. For example, it uses a Transformer-type AI model to quantify the text data as a multi-dimensional personality vector. This personality vector represents the individual's personality traits and is composed of numerical parameters predicted by the AI model.
[1063] The generated personality vector is stored in a database by the server, which stores the personality vector as well as the associated user ID information, allowing the server to easily retrieve the personality vector later.
[1064] The stored personality vector is compared with the product vectors in the product database. Specifically, a mathematical distance calculation (e.g., cosine distance) is used to select products that are close to the user's personality vector. This distance calculation makes it possible to recommend products that are best suited to the user's personality and preferences.
[1065] As a result of the matching process, the server notifies the user of the selected product information. The notification is sent to the device, and the user can check the recommendation results through the device. Specifically, the most suitable product information is provided to the user via push notification or display within the app. This allows the user to receive highly accurate product recommendations based on a detailed personality analysis.
[1066] As a concrete example, the following prompt sentences are input into a generative AI model to perform personality analysis:
[1067] "Analyze a user's personality traits based on their social media data. For example, what personality traits emerge from their latest posts?"
[1068] This invention is expected to realize personalized product recommendations based on the user's personality and preferences, improving the satisfaction and efficiency of online shopping.
[1069] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1070] Step 1:
[1071] The server obtains read access permission to the user's SNS account. This is done by the user linking their SNS account to the system and granting API access. Specifically, the server uses the user's authentication information to access the SNS's API and retrieve post data. The input is the user's SNS account information, and the output is the post data retrieved from the SNS.
[1072] Step 2:
[1073] The server removes unnecessary information from the acquired SNS post data and extracts text data. It filters out unnecessary information such as links, images, and advertisements to generate pure text data. The input is the post data acquired from the SNS, and the output is clean text data. Specifically, it uses regular expressions and other methods to programmatically remove unnecessary information.
[1074] Step 3:
[1075] The server inputs the preprocessed text data into a generative AI model to analyze the user's personality traits. The generative AI model analyzes the text data and quantifies a personality vector that represents the user's personality traits. The input is clean text data, and the output is a personality vector. Specifically, the text is encoded using a transformer model such as BERT.
[1076] Step 4:
[1077] The server saves the generated personality vector in a database. The personality vector and the associated user ID information are saved in the database for easy retrieval later. The input is the personality vector and the user ID, and the output is the information recorded in the database. Specifically, the data is saved using an SQL or NoSQL database.
[1078] Step 5:
[1079] The server compares the stored personality vector with the product vectors in the product database. Using mathematical distance calculations such as cosine distance, it selects products that are close to the user's personality vector. The input is the user's personality vector and product vector, and the output is the ID of the selected product. Specifically, it uses a machine learning library to calculate cosine similarity.
[1080] Step 6:
[1081] The server notifies the user of the information about the selected product. The selection results are provided to the user via push notification or in-app display on their device. The input is the ID of the selected product, and the output is the product information displayed on the user's device. Specifically, this uses the mobile app's push notification function or the web app's information display function.
[1082] Through the above processing steps, personalized product recommendations based on the user's personality and preferences are realized.
[1083] 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.
[1084] ---
[1085] This invention is a system that analyzes an individual's personality and emotional characteristics in detail and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posts).
[1086] The operation of the system is as follows.
[1087] Data acquisition and preprocessing
[1088] First, to use this system, a user grants the server permission to read from their SNS account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the SNS's API. These posts contain unnecessary information such as links and images, so the server removes this unnecessary information and extracts only the pure text data.
[1089] Generating a personality vector
[1090] The device uses the preprocessed text data as input and a generative AI model to analyze an individual's personality traits. Specifically, a Transformer model is used to quantify the text data as a multi-dimensional personality vector. This personality vector represents an individual's personality traits and is composed of numerical parameters predicted by the AI model.
[1091] Generating emotion vectors
[1092] Furthermore, the device uses an emotion engine to analyze the user's emotions from the preprocessed text data. This quantifies the user's emotional characteristics as a multidimensional emotion vector. The emotion vector indicates the user's emotional state and tendencies, and is expressed numerically, just like the personality vector.
[1093] Vector storage and matching
[1094] The generated personality and emotion vectors are stored by the server in a database, which stores each vector and its associated user ID for easy later retrieval and comparison.
[1095] After the user's vector is stored in the database, the server compares it with the vectors of other users. Specifically, it calculates the distance using both the personality vector and the emotion vector, and selects the person who is closest to the user. This distance calculation makes it possible to match individuals who have similar personalities and emotions.
[1096] Notification of matching results
[1097] As a result of the matching process, the server notifies the user of the information about the selected partner. The user can check the matching results via push notifications or within the app on their device. Specifically, the profile information and emotional tendencies of suitable partners are provided to the user. This allows the user to obtain highly accurate matching results based on detailed personality and emotional analysis.
[1098] As described above, this invention solves the problems of conventional matching systems and achieves more accurate romantic matching by providing a new matching algorithm that uses vectors that combine personality traits and emotional traits.
[1099] ---
[1100] The processing flow will be explained below.
[1101] Processing Steps
[1102] Step 1:
[1103] When a user uses the system for the first time, the server requests permission to read from the user's SNS account, and the user grants permission via their device.
[1104] Step 2:
[1105] The server uses the API of the SNS to obtain the latest posts from the user. For example, it uses the Twitter API to collect the latest 100 tweets.
[1106] Step 3:
[1107] The server removes unnecessary information such as links and image tags from the collected social media posts and extracts clean text data. At this stage, only the text is prepared for analysis.
[1108] Step 4:
[1109] The device takes the preprocessed text data as input and uses a generative AI model to analyze an individual's personality traits. Specifically, it uses a Transformer model to convert the text data into a multi-dimensional personality vector.
[1110] Step 5:
[1111] The terminal also receives the preprocessed text data as input and uses an emotion engine to analyze the user's emotion characteristics. The emotion engine converts the text data into a multi-dimensional emotion vector.
[1112] Step 6:
[1113] The generated personality and emotion vectors are stored in a database by the server, which then stores these vectors and their associated user IDs in the database.
[1114] Step 7:
[1115] The server compares the newly saved personality and emotion vectors with those of other users, using mathematical techniques such as cosine distance to select those who are similar in both personality and emotion.
[1116] Step 8:
[1117] The server selects the closest person and notifies the user of that person's information as a potential match. The user receives the match results via push notifications or within the app on their device.
[1118] Step 9:
[1119] After receiving the notification, the user can check the other person's profile information and emotional tendencies and take steps to start interacting with them.
[1120] ---
[1121] These are the steps for specifically implementing the new matching algorithm using vectors that combine personality traits and emotional traits. This allows users to obtain more accurate matching results.
[1122] Example 2
[1123] 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."
[1124] Conventional matching systems mainly consider only individual personality traits, without considering emotional traits, making it difficult to achieve more accurate matching. Furthermore, due to the lack of a matching algorithm that effectively utilizes SNS posting data, it has not been possible to achieve matching that reflects the actual behavior and emotions of users.
[1125] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for acquiring personal electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the personal character traits as a multidimensional character vector, means for using the text data to quantify the personal emotional traits as a multidimensional emotional vector, means for storing the personal character vector and the emotional vector in a database, means for comparing the stored personal character vector and the emotional vector with the vectors of other individuals and selecting a partner who is close, and means for notifying information about the selected partner. This enables highly accurate matching that takes into account both personality traits and emotional traits.
[1126] "Electronic communication data" refers to all communication data generated by individuals via the internet and digital devices.
[1127] "Text data" refers to character information extracted from electronic exchange data, and refers to pure text with unnecessary information such as links and images removed.
[1128] "Personality vector" refers to numerical data that represents an individual's personality traits in a multidimensional space, analyzed using a generative AI model.
[1129] An "emotion vector" refers to numerical data that represents emotional characteristics analyzed from an individual's text data in a multidimensional space.
[1130] A "generative AI model" refers to an algorithm or program that uses machine learning and deep learning techniques to analyze personality and emotions from text data.
[1131] "Database" refers to an electronic record system designed to store and manage the generated personality vectors and emotion vectors.
[1132] "Distance calculation" is a calculation method for evaluating the similarity between personality vectors and emotion vectors, and typically uses Euclidean distance or cosine similarity.
[1133] "Notification means" refers to a method or system for notifying users of matching results, including push notifications and in-app displays.
[1134] This invention is a system that analyzes an individual's personality and emotional characteristics in detail and matches them with suitable partners based on the results. This system is implemented via a server and terminals and utilizes users' electronic interaction data (e.g., social networking site posts).
[1135] Data acquisition and preprocessing
[1136] To use this system, a user first grants the server permission to read from their social media account. After obtaining the user's permission, the server periodically retrieves the user's latest posts using the social media API. These posts contain unnecessary information such as links and images, so the server removes this unnecessary information and extracts only the pure text data.
[1137] For example, a server uses the Twitter API to collect a user's last 20 tweets, removes URLs and image links, and extracts only the text. For example, it uses Python's regular expression library to remove unnecessary information.
[1138] Generating a personality vector
[1139] The device takes the preprocessed text data as input and uses a generative AI model to analyze an individual's personality traits. Specifically, it uses a Transformer-type model (e.g., the BERT model) to quantify the text data as a multi-dimensional personality vector. This personality vector represents an individual's personality traits and is composed of multiple parameters.
[1140] As a concrete example, when a device inputs the text data "Today was a very good day" using the BERT model, a vector including multiple personality traits such as extraversion and openness is generated (e.g., [0.8, 0.6, 0.7, ...]).
[1141] Generating emotion vectors
[1142] Furthermore, the device uses an emotion engine (e.g., IBM Watson's NLP API) to analyze the emotional characteristics from the preprocessed text data. This quantifies the user's emotional characteristics as a multidimensional emotion vector. The emotion vector indicates the user's emotional state and tendencies, and is expressed as a number, just like the personality vector.
[1143] As a concrete example, when a device uses IBM Watson's NLP API to analyze the text "I feel tired today," it quantifies an emotion score such as positive, negative, or neutral (e.g., [0.1, 0.9, 0.0, ...]).
[1144] Vector saving
[1145] The generated personality and emotion vectors are stored in a database by the server, which stores each vector and its associated user ID, allowing for easy search and comparison later.
[1146] As a concrete example, the server connects to a MySQL database and stores the generated personality and emotion vectors using INSERT statements.
[1147] Matching process
[1148] After the user's vector is stored in the database, the server compares it with the vectors of other users. Specifically, it calculates the distance using both the personality vector and the emotion vector, and selects the person who is closest to the user. This distance calculation makes it possible to match individuals who have similar personalities and emotions.
[1149] As a specific example, the server uses Euclidean distance to compare the personality vector of user A with the vectors of other users in the database and selects user B who is closest.
[1150] Notification of matching results
[1151] Finally, the server notifies the user of the information about the selected partner. The user can check the matching results via push notifications or within the app on their device. Specifically, the profile information and emotional tendencies of suitable partners are provided to the user.
[1152] For example, the server uses Firebase Cloud Messaging (FCM) to send a notification to the user's smartphone saying, "A user who matches you has been found." The user then opens the app and views the details.
[1153] Prompt Sentence Examples
[1154] Examples of prompts to input to generative AI models and emotion engines include:
[1155] "Based on the following text, analyze the user's personality traits using a Transformer-type model and generate a personality vector: 'Today was a very good day.'"
[1156] "Based on the following text, analyze the user's emotional characteristics and generate an emotional vector: 'I'm tired today.'"
[1157] In this way, the system analyzes users' social media posts and achieves highly accurate matching based on personality and emotional characteristics.
[1158] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1159] Step 1:
[1160] The user grants the server permission to read from their social media account. The input requires the user's authentication information, and the output is a token indicating that permission has been granted. This permission is granted using an authentication flow such as OAuth2.0. Specifically, the user presses the "Connect to social media account" button on the app and is redirected to the social media authentication page. The user enters their login information and grants access to the app.
[1161] Step 2:
[1162] The server uses the SNS API to retrieve the user's latest posts. The number of posts to retrieve and an authentication token are required as input, and the user's latest post data (e.g., JSON format) is obtained as output. The server periodically calls the SNS API endpoint to retrieve the required data. Specifically, the server uses the SNS API endpoint " / statuses / user_timeline" to collect the latest 20 posts and receives the post data in JSON format as a response.
[1163] Step 3:
[1164] The server removes unnecessary information such as links and images from the post data it retrieves and extracts the text data. The retrieved JSON data is required as input, and clean text data with unnecessary information removed is obtained as output. Specifically, the server uses Python's regular expression library to remove URLs and image links from the post text field and extract only the text.
[1165] Step 4:
[1166] The device generates a personality vector using a generative AI model based on preprocessed text data. The input requires preprocessed text data, and the output is a multidimensional personality vector. Specifically, the device inputs the text "Today was a great day" using the BERT model to generate a vector including personality traits such as extraversion and openness (e.g., [0.8, 0.6, 0.7, …]).
[1167] Step 5:
[1168] The device uses an emotion engine to generate an emotion vector from preprocessed text data. The preprocessed text data is required as input, and a multidimensional emotion vector is obtained as output. Specifically, the device uses IBM Watson's NLP API to analyze the text "I'm tired today" and quantifies the emotion score, such as positive, negative, or neutral (e.g., [0.1, 0.9, 0.0, …]).
[1169] Step 6:
[1170] The server saves the generated personality and emotion vectors to a database. The input required is the generated vector and its associated user ID, and the output is a status message indicating successful saving. Specifically, the server connects to a MySQL database and saves the personality and emotion vectors using INSERT statements.
[1171] Step 7:
[1172] The server compares the vectors of other users and selects the person with the closest distance. The stored personality vector and emotion vector are required as input, and the output is the user ID of the person with the closest distance. Specifically, the server calculates the Euclidean distance, compares User A's vector with the vectors of all users in the database, and selects User B with the smallest distance.
[1173] Step 8:
[1174] The server notifies the user of the information about the selected match. The input requires the user ID and profile information of the closest match, and the output is a notification sent to the user's device. Specifically, the server uses Firebase Cloud Messaging (FCM) to send a notification to the user's smartphone saying, "A match has been found for you." The user receives this notification and opens the app to view detailed information.
[1175] In this way, the system analyzes users' social media posts and achieves highly accurate matching based on personality and emotional characteristics.
[1176] (Application example 2)
[1177] 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."
[1178] Conventional service provision systems and matching systems are generally designed based on a single user characteristic, making it difficult to consider the user's multidimensional personality and emotional characteristics. As a result, optimal service provision and personalized proposals that meet the needs of individual users are not being fully implemented. Furthermore, in brick-and-mortar stores, it is difficult to accurately grasp the customer's personality and emotions and make service proposals based on that information, creating challenges in improving the customer experience.
[1179] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1180] In this invention, the server includes means for acquiring an individual's electronic communication data, means for removing unnecessary information from the electronic communication data and extracting text data, means for using the text data to quantify the individual's personality traits as a multidimensional personality vector, means for using the text data to quantify the individual's emotional traits as a multidimensional emotional vector, means for storing the personality vector and the emotional vector in a database, means for comparing the stored vector with vectors of other individuals and selecting a person who is close to the individual, means for notifying the selected person of information, and means for generating appropriate services and proposals based on the acquired vector. This makes it possible to provide optimal service proposals and a detailed customer experience tailored to the user based on the user's multidimensional personality traits and emotional traits.
[1181] "Personal electronic communication data" refers to information sent by users via the internet or communication means, and specifically includes digital data such as social media posts, emails, and messaging app exchanges.
[1182] "Unnecessary information" refers to data that is not necessary for analysis, specifically information other than text data such as links, images, and advertisements, as well as elements that become noise.
[1183] "Text data" refers to data consisting only of character information, and is pure text data after unnecessary information has been removed by preprocessing.
[1184] "Personality traits" refer to characteristics that indicate an individual's basic personality and behavioral tendencies, and are evaluated using psychological indicators.
[1185] A "personality vector" refers to a multidimensional vector that expresses personality traits numerically, and is used to express an individual's personality traits numerically.
[1186] "Emotional characteristics" refer to characteristics that indicate an individual's emotional state and its changes, and specifically represent emotions such as joy, sadness, and anger.
[1187] An "emotion vector" refers to a multidimensional vector that expresses emotional characteristics numerically, and is used to treat an individual's emotional state as numerical data.
[1188] A "database" refers to a system for efficiently managing and searching structured data, and stores data such as personality vectors and emotion vectors.
[1189] "Close distance" refers to a small distance between two vectors in a vector space, meaning that the similarity is high.
[1190] "Selecting" refers to choosing an appropriate candidate from among many candidates.
[1191] "Notifying" refers to informing a specific recipient of information, and can be done by means of push notification, screen display, etc.
[1192] "Generating services and proposals" refers to creating service content and proposals suitable for a user based on the user's characteristics.
[1193] A "generative AI model" refers to a machine learning model used in natural language processing and data analysis, particularly for generative tasks.
[1194] A "prompt sentence" refers to the text input into a generative AI model, and is a sentence that serves as instructions for the model to analyze and generate.
[1195] This invention is a system that performs detailed analysis of an individual's personality and emotional characteristics and matches them with suitable partners based on the results. This system is applied to improving the customer experience in brick-and-mortar stores such as cafes and restaurants. Next, an embodiment of the invention will be described.
[1196] System Overview
[1197] The system includes a server, a user's smartphone, and an in-store tablet. The server collects and analyzes personal electronic interaction data. The smartphone functions as a platform for providing data from social media. The in-store tablet is used to propose services to customers based on the analysis results.
[1198] Data Acquisition
[1199] In order for users to use the system, they must allow their smartphone application to link with their SNS account. The smartphone periodically uses the SNS API to retrieve the user's latest posts. This post data is then sent to the server.
[1200] Data Preprocessing
[1201] The server removes unnecessary information from the received data and extracts only the text data, which includes removing noise such as links and images.
[1202] Generating personality and emotion vectors
[1203] The server inputs the preprocessed text data and uses a generative AI model to analyze the individual's personality traits and quantify them as a personality vector. It also uses an emotion analysis engine to analyze emotional traits and quantify them as an emotion vector. The generative AI model uses the Hugging Face Transformer model, and the emotion analysis uses the VADER emotion engine.
[1204] Storing and comparing vectors
[1205] The generated personality and emotion vectors are stored in a database on the server. The database stores each vector and its associated user ID. The server then compares the vectors with those of other users and selects the most suitable match based on distance calculations. This distance calculation makes it possible to match individuals with similar personalities and emotions.
[1206] Generate a service proposal
[1207] Based on the selected person's information as well as their personality and emotion vector data, the system generates appropriate services and suggestions for the user. For example, this could include recommended menu items and seating arrangements at a cafe. These suggestions are displayed on a tablet in the store, and staff provide the service accordingly.
[1208] Program processing explanation
[1209] The system uses the following hardware and software while taking personal information protection into consideration. The server functions as a central data processing location and performs data acquisition, preprocessing, vector generation, matching, and service proposals. The smartphone is primarily responsible for acquiring data from social media and sending it to the server. Meanwhile, in-store tablets display analysis results to staff, helping them provide more appropriate services.
[1210] The Hugging Face Transformer model is used to generate personality vectors, and the VADER emotion analysis engine is used to generate emotion vectors. These software applications enable accurate analysis of multi-dimensional personality and emotional traits.
[1211] Specific examples
[1212] For example, when a user visits a restaurant, they can link their social media account using their smartphone. If the user posts something like, "I'm feeling a little sad today. I think I'm stressed out from work. I miss the latte I had at the cafe I went to last time," the system will use this information to suggest the most suitable menu item for the user: "Latte."
[1213] Example prompt sentence:
[1214] Please input the user's latest social media posting data. Based on this data, the system will analyze their personality and emotional traits and suggest an appropriate menu.
[1215] 1. Social media post data: "I'm feeling a little sad today. I think work is stressful. I miss that latte I had at the cafe I went to last time."
[1216] In this way, service proposals based on the user's characteristics are realized, contributing to an improved customer experience.
[1217] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1218] Step 1:
[1219] The server obtains an individual's electronic interaction data. This data is periodically retrieved using the SNS's API to retrieve the user's latest SNS post data. The input is the post data from the SNS, which is sent to the server. The output is the retrieved, unprocessed post data. Specifically, the server sends a request to the SNS's API endpoint and receives the post data returned as a response.
[1220] Step 2:
[1221] The server removes unnecessary information from the acquired electronic exchange data and extracts text data. The input is the raw post data from step 1, from which unnecessary elements such as links, images, and advertisements are removed. The output is preprocessed pure text data. Specifically, the server uses regular expressions and natural language processing (NLP) tools to filter out the unnecessary parts and extract only the text.
[1222] Step 3:
[1223] The server uses the preprocessed text data to quantify an individual's personality traits as a multi-dimensional personality vector. The input is the preprocessed text data, and a generative AI model (e.g., a Hugging Face Transformer model) is used to generate a personality vector. The output is a personality vector. Specifically, the server inputs the text data into the model and receives the personality feature vector output from the model.
[1224] Step 4:
[1225] The server uses the preprocessed text data to quantify an individual's emotional characteristics as a multi-dimensional emotion vector. The input is the preprocessed text data, and an emotion analysis engine (e.g., VADER) is used to generate the emotion vector. The output is an emotion vector. Specifically, the server inputs the text data into the emotion analysis engine and receives a vector composed of emotion scores.
[1226] Step 5:
[1227] The server saves the generated personality vectors and emotion vectors in a database. The input is the personality vector and emotion vector, which are stored in the database along with the associated user ID. The output is the vector data saved in the database. Specifically, the server performs a store operation on the database management system (DBMS) to save the vectors.
[1228] Step 6:
[1229] The server compares the stored vector with the vectors of other individuals and selects the closest person. The input is all the personality and emotion vectors stored in the database, and based on this, the server selects the closest person using distance calculation methods such as Euclidean distance. The output is information about the selected person. Specifically, the server calculates the distance between vectors and selects the user pair with the closest distance.
[1230] Step 7:
[1231] The server notifies the information of the selected partner. The input is the information of the partner selected in step 6, which is notified to the user's device. The output is the matching result displayed on the user's device. Specifically, the server triggers a push notification and displays the profile information of the most suitable partner on the user's smartphone.
[1232] Step 8:
[1233] The server generates appropriate services and suggestions based on the vectors it acquires. The input is a personality vector and an emotion vector, which are linked to the services offered at the store to generate suggestions. The output is information about the proposed services and menus. Specifically, the server analyzes the generated vector data, selects the most suitable menus and services for the user, and displays the results on a tablet in the store.
[1234] 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.
[1235] 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.
[1236] 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.
[1237] 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.
[1238] 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.
[1239] 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.
[1240] 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).
[1241] 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.
[1242] 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."
[1243] 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.
[1244] 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).
[1245] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1246] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1247] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1248] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1249] The hardware resource for executing a specific process can be any of the following types of processors: A processor, for example, is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1250] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1251] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1252] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1253] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1254] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1255] The following is further disclosed regarding the above embodiment.
[1256] (Claim 1)
[1257] A means of obtaining personal electronic communication data;
[1258] means for removing unnecessary information from the electronic exchange data and extracting text data;
[1259] a means for quantifying an individual's personality traits as a multi-dimensional personality vector using the text data;
[1260] means for storing said personality vector in a database;
[1261] means for comparing the stored personality vector with personality vectors of other individuals and selecting a person who is close to the individual;
[1262] means for notifying information of the selected party;
[1263] A system including:
[1264] (Claim 2)
[1265] The system according to claim 1, further comprising means for acquiring SNS posting data as the personal interaction data.
[1266] (Claim 3)
[1267] 10. The system of claim 1, further comprising: means for using a generative AI model to analyze the text data for personality traits.
[1268] "Example 1"
[1269] (Claim 1)
[1270] A means of obtaining personal electronic communication data;
[1271] means for removing unnecessary information from the electronic exchange data and extracting text data;
[1272] A means for using the text data to quantify an individual's personality traits as a multi-dimensional personality vector using a generative AI model;
[1273] means for storing said personality vector in a database;
[1274] means for comparing the stored personality vector with personality vectors of other individuals and selecting a person who is close to the individual;
[1275] means for notifying information of the selected party;
[1276] A system including:
[1277] (Claim 2)
[1278] The system according to claim 1, further comprising means for acquiring SNS posting data as the personal interaction data.
[1279] (Claim 3)
[1280] 10. The system of claim 1, further comprising means for using a Transformer-type generative AI model to analyze personality traits of the text data.
[1281] "Application Example 1"
[1282] (Claim 1)
[1283] A means of obtaining personal electronic communication data;
[1284] means for removing unnecessary information from the electronic exchange data and extracting text data;
[1285] a means for quantifying an individual's personality traits as a multi-dimensional personality vector using the text data;
[1286] means for storing said personality vector in a database;
[1287] means for comparing the stored character vector with product vectors in a product database and selecting products that are close in distance;
[1288] a means for notifying information about the selected product;
[1289] A system including:
[1290] (Claim 2)
[1291] The system according to claim 1, further comprising means for acquiring SNS posting data as the personal interaction data.
[1292] (Claim 3)
[1293] 10. The system of claim 1, further comprising: means for using a generative AI model to analyze the text data for personality traits.
[1294] "Example 2: Combining Emotion Engines"
[1295] (Claim 1)
[1296] A means of obtaining personal electronic communication data;
[1297] means for removing unnecessary information from the electronic exchange data and extracting text data;
[1298] a means for quantifying an individual's personality traits as a multi-dimensional personality vector using the text data;
[1299] means for quantifying an individual's emotional characteristics as a multi-dimensional emotional vector using the text data;
[1300] means for storing the personality vector and emotion vector in a database;
[1301] means for comparing the stored personality vector and emotion vector with vectors of other individuals to select a person who is close to the individual;
[1302] means for notifying information of the selected party;
[1303] A system including:
[1304] (Claim 2)
[1305] 2. The system according to claim 1, further comprising means for acquiring data posted to a social network service as the personal interaction data.
[1306] (Claim 3)
[1307] 10. The system of claim 1, further comprising means for using a generative artificial intelligence model to analyze the text data for personality traits.
[1308] "Application example 2 when combining emotion engines"
[1309] (Claim 1)
[1310] A means of obtaining personal electronic communication data;
[1311] means for removing unnecessary information from the electronic exchange data and extracting text data;
[1312] a means for quantifying an individual's personality traits as a multi-dimensional personality vector using the text data;
[1313] means for quantifying an individual's emotional characteristics as a multi-dimensional emotional vector using the text data;
[1314] means for storing the personality vector and emotion vector in a database;
[1315] means for comparing the stored vector with vectors of other individuals and selecting those who are close to the individual;
[1316] means for notifying information of the selected party;
[1317] means for generating appropriate services and proposals based on the acquired vectors;
[1318] A system including:
[1319] (Claim 2)
[1320] The system according to claim 1, further comprising means for acquiring SNS posting data as the personal interaction data.
[1321] (Claim 3)
[1322] 10. The system of claim 1, further comprising means for using a generative AI model to analyze the text data for personality and sentiment traits. [Explanation of symbols]
[1323] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. A means of obtaining personal electronic communication data; means for removing unnecessary information from the electronic exchange data and extracting text data; a means for quantifying an individual's personality traits as a multi-dimensional personality vector using the text data; means for storing said personality vector in a database; means for comparing the stored personality vector with personality vectors of other individuals and selecting a person who is close to the individual; means for notifying information of the selected party; A system including:
2. The system according to claim 1 , further comprising means for acquiring SNS posting data as the personal interaction data.
3. 10. The system of claim 1, further comprising means for using a generative AI model to analyze the text data for personality traits.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A