System
A system for real-time analysis and rewrite suggestions addresses the risk of offensive comments by detecting and correcting potentially harmful posts, preventing damage to brand image and ensuring safe communication.
Patent Information
- Application Number
- JP2024122790
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-29
- Publication Date
- 2026-02-10
AI Technical Summary
The increasing use of social media and chat tools by companies and organizations leads to a heightened risk of damaging brand image due to discriminatory or offensive comments, with conventional responses focusing on post-outrage measures rather than real-time prevention.
A system that analyzes user posts in real-time, calculates an emotion score, detects discriminatory language, performs risk assessment, generates rewrite suggestions, and notifies users to prevent the posting of inappropriate content.
Enables real-time risk assessment and prevention of flame wars by providing appropriate rewrite suggestions, ensuring safe and controlled communication environments.
Smart Images

Figure 2026021108000001_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] In recent years, the number of companies and organizations using social media and chat tools has increased, increasing the risk of damaging their brand image due to the content of their comments. As a result, there have been frequent cases of discriminatory or offensive comments sparking outrage, and dealing with these issues requires a great deal of effort and time. Conventional responses have focused on dealing with the outrage after it has started, with limited preventative measures. To address these issues, the present invention aims to provide a system that evaluates user posts in real time before they are posted and provides appropriate rewrite suggestions. [Means for solving the problem]
[0005] The present invention provides a system that includes a means for receiving posts entered by users, a means for analyzing the received posts and calculating an emotion score, a means for performing a risk assessment based on the emotion score, a means for generating appropriate rewrite candidates based on the risk assessment, a means for notifying the user of the risk assessment results and the rewrite candidates, and a means for finally transmitting the corrected post. The system also includes a means for detecting discriminatory or offensive language based on specified guidelines. If the emotion score is high, the system also includes a means for setting the risk assessment value to "high." This allows companies and organizations to perform risk assessments of posts in real time, thereby eliminating the risk of flame wars and realizing safe communication.
[0006] "User" refers to an individual or organization that sends messages or posts using social networking services (SNS) or chat tools.
[0007] "Posted content" refers to the text or messages that users enter into social media or chat tools.
[0008] "Means of receiving" refers to the methods and functions for collecting and storing the posted content entered by users.
[0009] "Means of analysis" refers to methods and functions for analyzing received posts using natural language processing technology and algorithms.
[0010] "Emotion score" refers to the numerical expression of the emotion (positive, negative, neutral) of the post content.
[0011] "Risk assessment" refers to the process or result of determining the risk of a post causing controversy and its appropriateness.
[0012] "Rewrite candidate" refers to a candidate for appropriate expression that corrects inappropriate parts based on risk assessment.
[0013] "Means of notification" refers to the methods and functions for informing users of evaluation results and rewrite candidates.
[0014] "Means of sending" refers to the method or function by which the user actually posts the revised content of the post on social media or chat tools.
[0015] "Guidelines" refers to the standard guidelines and rules that define discriminatory and offensive expressions.
[0016] "Discriminatory or offensive language" refers to language that may unfairly criticize or injure a specific individual or group.
[0017] "Risk assessment value" refers to a number or classification that represents the risk assessment result of the post content, and has a rank such as high, medium, or low. [Brief explanation of the drawings]
[0018] [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
[0019] 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.
[0020] First, the terms used in the following description will be explained.
[0021] 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).
[0022] 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.
[0023] 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.
[0024] 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.
[0025] 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."
[0026] [First embodiment]
[0027] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0028] 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.
[0029] 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).
[0030] 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.
[0031] 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.
[0032] 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.
[0033] 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.
[0034] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0035] 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.
[0036] 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.
[0037] 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.
[0038] 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."
[0039] The following describes a specific embodiment of the present invention. The present invention is a system that analyzes the content of posts made by users on social networking sites or chat tools in real time, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of posts causing a firestorm.
[0040] System Overview
[0041] The system consists of the following main components:
[0042] User device (PC, smartphone, etc.)
[0043] server
[0044] network
[0045] When a user enters content to post on a social networking site or chat tool, the content is sent from the user's device to a server. The server receives the content, performs natural language processing (NLP) and sentiment analysis, and performs a risk assessment based on the results. If the risk is high, the server generates appropriate rewrite suggestions and returns them to the user's device. The user then reviews the suggested rewrite suggestions, makes any necessary corrections, and confirms the final post.
[0046] Program processing
[0047] 1. Receiving User Submissions
[0048] The device monitors the user's input and temporarily caches the post content the moment the user completes the post (for example, when the submit button is pressed).
[0049] 2. Submitting your submission
[0050] The device sends the received post to the server using a standard HTTP POST request.
[0051] 3. Analysis of posts
[0052] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library to tokenize the post content, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model to calculate a sentiment score and check whether the post contains discriminatory or offensive language.
[0053] 4. Risk Assessment and Feedback
[0054] The server evaluates the risk of the posted content. If the evaluation result is "high," it uses an NLP model to generate rewrite candidates to appropriate expressions. The rewrite candidates and the risk evaluation result are returned to the terminal.
[0055] 5. User Warnings and Suggestions
[0056] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[0057] 6. Final Post
[0058] The user confirms the changes and presses the send button. The device then resends the final edited post to the server, which then posts the final post to the social networking site or chat tool.
[0059] Specific examples
[0060] For example, consider the case where a user tries to post "This product is really crap." The device sends the post content to the server, which analyzes it. The server detects the discriminatory and offensive expression "crap" and sets the risk assessment to "high" because the emotion score is high. The server then generates a rewrite candidate for "This product is really no good" and sends this back to the user's device. The device presents the risk assessment result and the rewrite candidate to the user, and after the user confirms the revision, the revised content is finally posted.
[0061] In this way, the present invention prevents the risk of flame wars caused by comments made on social media or chat tools, and provides an environment in which companies and organizations can communicate safely.
[0062] The processing flow will be explained below.
[0063] Step 1:
[0064] The user enters the content to post into the input field on a social media or chat tool.
[0065] Example: User types "This new feature is completely useless."
[0066] Step 2:
[0067] The device monitors the user's input.
[0068] Behavior: Triggered by the user pressing the "Enter" key or submit button.
[0069] Step 3:
[0070] Your device will temporarily cache your posts.
[0071] What it does: Stores the post content in a variable or temporary file.
[0072] Step 4:
[0073] The device calls an API to send the post content to the server.
[0074] What it does: Sends data to the server using an HTTP POST request.
[0075] Example: Send a post saying "This new feature is completely useless."
[0076] Step 5:
[0077] The server receives the submitted content.
[0078] What it does: Processes a POST request on an API endpoint.
[0079] Step 6:
[0080] The server analyzes the post using a natural language processing (NLP) library.
[0081] What it does: Tokenizes, tags parts of speech, and parses dependencies.
[0082] Step 7:
[0083] The server uses a sentiment analysis model to calculate a sentiment score for the post.
[0084] What it does: Determines if a post has a negative sentiment score.
[0085] Step 8:
[0086] The server detects discriminatory and offensive language based on specified guidelines.
[0087] What it does: Uses prefix matching and regular expressions to find inappropriate language.
[0088] Example: Detects the expression "not useful at all."
[0089] Step 9:
[0090] The server performs a risk assessment based on the profanity detected.
[0091] How it works: Assign a risk rating (e.g., high, medium, low) based on the number of profanities and sentiment score.
[0092] Step 10:
[0093] The server uses an NLP model to generate candidates for rewriting to appropriate expressions.
[0094] What it does: Masks the input sentence and suggests appropriate paraphrases.
[0095] Example: Generate a rewrite candidate: "This new feature is not as useful as expected."
[0096] Step 11:
[0097] The server returns the risk assessment results and rewrite candidates to the terminal.
[0098] Behavior: The risk assessment results and rewrite suggestions are sent to the device in JSON format.
[0099] Step 12:
[0100] The device notifies the user of the risk assessment results and rewrite candidates received from the server.
[0101] What it does: Parses the received JSON data and displays it as a popup or inline alert.
[0102] Step 13:
[0103] The user reviews the suggested rewrites and edits the post as needed.
[0104] What happens: The user sees the notification and follows the suggestions to revise their post.
[0105] Example: "This new feature isn't as useful as I hoped."
[0106] Step 14:
[0107] The user confirms the changes and presses the submit button.
[0108] Action: Click the final submit button with the final post content.
[0109] Step 15:
[0110] The device resends the final modified post to the server.
[0111] What it does: Sends data to the server using an HTTP POST request.
[0112] Step 16:
[0113] The server posts the final content via the API of the social networking site or chat tool.
[0114] Behavior: Calls the destination API and sends the confirmed post content.
[0115] Example 1
[0116] 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."
[0117] In today's social media and chat tools, there is a growing risk that users may unintentionally post discriminatory or offensive language, sparking outrage and misunderstandings. This could potentially damage the reputation of individuals and companies. There is a need for a system that can solve this problem and enable users to communicate safely and smoothly.
[0118] 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.
[0119] In this invention, the server includes means for receiving post content entered by a user, means for temporarily caching the received post content, means for transmitting the received post content, means for analyzing the received post content and performing natural language processing, means for calculating an emotion score based on the natural language processing and detecting discriminatory or offensive language, means for assessing risk based on the emotion score, means for generating candidates for rewriting to appropriate language if the risk assessment is "high," means for notifying the user of the risk assessment result and the candidate rewrites, and means for the user to confirm the revisions and finally transmit the revised post content. This makes it possible to detect discriminatory or offensive language before a user posts and rewrite it to safe language.
[0120] "Means for receiving posts entered by users" refers to a function that allows the system to obtain text data entered by users in the interface of social networking sites or chat tools.
[0121] The "means for temporarily caching received posted content" is a storage means for holding posted content received from users for a short period of time and using it for subsequent processing.
[0122] The "means for transmitting received posted content" is a communication means for transferring cached posted content to an external analysis device such as a server.
[0123] "Means for analyzing received post content and performing natural language processing" refers to a function that analyzes posted text data using natural language processing techniques such as tokenization, part-of-speech tagging, and dependency analysis.
[0124] "Means for calculating emotion scores based on natural language processing and detecting discriminatory or offensive expressions" refers to a function that uses an emotion analysis model to calculate emotion scores based on analyzed text data and further determines whether specific expressions are discriminatory or offensive.
[0125] The "means for performing risk assessment according to the emotion score" is a function for assessing the risk level of text based on the emotion score and setting a risk level such as "high" as necessary.
[0126] "Means for generating candidates for rewriting to appropriate expressions when the risk assessment is 'high'" is a function that uses an NLP model to generate candidates for correcting posts that are judged to have a high risk assessment to expressions that are not problematic.
[0127] "Means for notifying users of risk assessment results and suggested revisions" is a function that displays the assessment results and suggested revisions to users and prompts them to confirm that they wish to correct the posted content.
[0128] "Means for users to confirm the revisions and finally send the revised post" refers to a function that allows users to accept the proposed revisions and then finally send the revised post to social media or chat tools.
[0129] System Overview
[0130] This system analyzes the content of posts made by users on social media or chat tools in real time, assesses the risks, and provides appropriate rewrite suggestions to prevent the risk of a social media firestorm. The main components are as follows:
[0131] User device (PC, smartphone, etc.)
[0132] server
[0133] network
[0134] Hardware and Software
[0135] User Device
[0136] User devices are general PCs or smartphones, and posts are made through social networking apps or chat tools, so existing applications can be used.
[0137] server
[0138] The server has advanced computing resources and is capable of natural language processing (NLP) and sentiment analysis, using the following technologies:
[0139] NLP library: SpaCy or NLTK
[0140] Sentiment analysis models: VADER and BERT-based models
[0141] Rewrite candidate generation: GPT-3 and similar generative AI models
[0142] Data processing and calculation
[0143] 1. A user types a post into a social media app or chat tool and presses the "Send" button.
[0144] 2. The device temporarily caches the post and sends it to the server via an HTTP POST request.
[0145] 3. The server receives the post and uses NLP libraries to tokenize, tag parts of speech, and parse dependencies.
[0146] 4. Calculate sentiment scores using a sentiment analysis model to detect discriminatory and offensive expressions.
[0147] 5. If the risk assessment is determined to be "high," the NLP model generates candidates for rewriting to appropriate expressions.
[0148] 6. The rewrite candidates and risk assessment results are returned to the terminal in JSON format.
[0149] 7. The device analyzes this and displays the risk assessment results and rewrite suggestions to the user in a pop-up.
[0150] 8. The user corrects or confirms the information and presses the "Submit" button again.
[0151] 9. The final post content is sent to the server again, and the server executes the final post using the public API of the SNS or chat tool.
[0152] Specific examples
[0153] For example, suppose a user wants to post "This product really sucks." Here's how it works:
[0154] 1. When the user presses the "Send" button, the device sends the post to the server.
[0155] 2. The server uses an NLP library to analyze posts containing the word "shit" and calculate a sentiment score.
[0156] 3. The discriminatory and offensive expression "shit" is detected and the risk score is set to "high."
[0157] 4. The server uses an NLP model to generate a rewrite candidate such as "This product is really bad."
[0158] 5. The rewrite candidates and risk assessment results are sent back to the device and presented to the user in a pop-up.
[0159] 6. When the user confirms the changes and presses the "Send" button again, the final post is sent to the server, which then posts the content using the SNS's public API.
[0160] Examples of prompt statements
[0161] Here are some examples of prompts for generative AI models:
[0162] 1. "Please rewrite the following sentence to make it easier to read and less emotional: 'This product is crap.'"
[0163] 2. "Change the following phrase to something less offensive: 'You're completely useless.'"
[0164] 3. "Please rewrite the following comment to avoid social media outrage: 'The service here is awful.'"
[0165] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0166] Step 1: Receiving User Submissions
[0167] The device monitors user input and temporarily caches the post the moment the user hits the "send" button.
[0168] Input: Post content entered by the user on social media or chat tools
[0169] Output: Cached post content
[0170] What it does: A user types "This product is really crap" into a social media app and presses the "Send" button. This action causes the device to temporarily store the comment in memory.
[0171] Step 2: Submit your post
[0172] The device sends the cached post to the server using a standard HTTP POST request.
[0173] Input: Cached post content
[0174] Output: Post content sent as an HTTP POST request
[0175] Specific operation: The device includes the comment content saved in the body of an HTTP POST request and sends it to the server. For example, a POST request is sent to "https: / / example.com / api / v1 / analyzePost".
[0176] Step 3: Analyzing the Post Content
[0177] The server analyzes the received post content, specifically tokenizing the post content, tagging it with parts of speech, and analyzing dependencies using a natural language processing (NLP) library.
[0178] Input: Post content sent as an HTTP POST request
[0179] Output: Parsed tokens, part-of-speech tags, and dependency information
[0180] How it works: The server uses an NLP library (e.g., SpaCy or NLTK) to break down the post into words and tag each word with its part of speech. It then performs dependency analysis to analyze the dependency relationships within the sentence.
[0181] Step 4: Calculate sentiment scores and detect expressions
[0182] The server uses a sentiment analysis model to calculate a sentiment score and detect discriminatory and offensive expressions.
[0183] Input: Parsed tokens, part-of-speech tags, and dependency information
[0184] Output: Sentiment score and detected discriminatory / offensive expressions
[0185] What it does: The server uses a sentiment analysis model (e.g., a VADER- or BERT-based model) to calculate a sentiment score and detect offensive words like "shit."
[0186] Step 5: Risk assessment and generation of rewrite candidates
[0187] The server evaluates the risk of the post, and if the evaluation result is "high," it uses an NLP model to generate candidates for rewriting to appropriate expressions.
[0188] Input: Sentiment scores and detected discriminatory / offensive expressions
[0189] Output: Risk assessment results and rewrite candidates
[0190] How it works: The server assigns a high risk score to posts containing the word "shit," then uses an NLP model (e.g., GPT-3) to generate a rewrite suggestion such as "This product is really bad."
[0191] Step 6: Notification of risk assessment results and rewrite candidates
[0192] The server notifies the terminal of the risk assessment results and rewrite candidates.
[0193] Input: Risk assessment results and rewrite candidates
[0194] Output: Risk assessment results and rewrite suggestions displayed to the user
[0195] Specific operation: The server returns the risk assessment results and rewrite candidates to the terminal in JSON format.
[0196] Step 7: User warnings and suggestions
[0197] The device presents the risk assessment results and suggested rewrites to the user, who can then review the suggestions and modify the post as necessary.
[0198] Input: Risk assessment results and rewrite candidates
[0199] Output: Risk assessment results and rewrite suggestions presented to the user
[0200] Specific operation: The device analyzes the received JSON data and displays a pop-up warning message to the user with suggested rewrites. For example, in response to a post saying "This product really sucks," the system displays the message "This expression is risky. Would you like to change it to 'This product really isn't good'?"
[0201] Step 8: Submit your final post
[0202] When the user confirms the changes and presses the "Send" button again, the device will resend the revised final post to the server, and the server will post the final post content to the social networking site or chat tool.
[0203] Input: The final post content confirmed by the user
[0204] Output: The last post made to social media or chat tools
[0205] Specific operation: The user selects "Yes" in the displayed pop-up, checks the revised comment, and then presses the "Send" button again. The device then sends a final POST request to the server, which then executes the post using the SNS's public API.
[0206] (Application example 1)
[0207] 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."
[0208] There is a risk of discriminatory, offensive, or inappropriate language being used in communications between passengers in autonomous vehicles. This not only creates uncomfortable situations between passengers and operators, but also has the potential to affect the safe operation of the vehicle. Conventional systems have difficulty assessing communication risks in real time and taking appropriate measures, so this issue needs to be addressed.
[0209] 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.
[0210] In this invention, the server includes means for receiving posted content entered by a user, means for analyzing the received posted content and calculating an emotion score, means for performing a risk assessment according to the emotion score, means for generating candidates for rewriting to appropriate expressions based on the risk assessment, means for notifying the user of the risk assessment results and the candidates for rewriting, means for monitoring messages between passengers in an autonomous vehicle, means for sending a warning to a vehicle operator when a message is assessed as being high risk, and means for finally sending the corrected posted content. This makes it possible to prevent inappropriate communication in an autonomous vehicle and provide a safe and comfortable travel environment.
[0211] "Means for receiving posts entered by users" refers to a function for sending message data entered by users using devices such as smartphones or computers to a server.
[0212] The "means for analyzing the content of received posts and calculating an emotion score" is a function for analyzing received message data using natural language processing technology and emotion analysis algorithms, and deriving an emotion score from the content.
[0213] "Means for risk assessment based on emotional score" is a function for assessing the risk level of the content of posts as high, medium, low, etc. based on the emotional score.
[0214] The "means for generating candidate sentences for rewriting to more appropriate expressions based on risk assessment" is a function for generating candidate sentences for converting a user's posted content into more appropriate expressions when the risk assessment is determined to be high.
[0215] "Means for notifying users of risk assessment results and rewrite candidates" refers to a function for displaying and notifying users of the results of risk assessment and generated rewrite candidates on their devices.
[0216] "Means for monitoring messages between passengers inside an autonomous vehicle" refers to a function for monitoring chats and message exchanges between passengers inside an autonomous vehicle in real time.
[0217] The "means for sending a warning to the vehicle operator when the risk is assessed as high" is a function for sending a warning to the operator of an automated vehicle when the risk assessment of a message is determined to be high.
[0218] "Means for final transmission of corrected posted content" refers to the function for sending the final posted content corrected and confirmed by the user to the server and posting it to the designated platform.
[0219] A specific embodiment of the present invention will be described. The present invention is a system that monitors communication between passengers in an autonomous vehicle, performs risk assessment in real time, and proposes appropriate rewrite candidates. Furthermore, the system is equipped with a function to issue a warning to the vehicle operator if an incident is imminent.
[0220] System Overview
[0221] The system consists of the following main components:
[0222] User device (smartphone, tablet or in-car device)
[0223] server
[0224] network
[0225] When a passenger types a chat message inside an autonomous vehicle, the content is sent from the user's device to a server. The server receives the posted content and analyzes it using a natural language processing (NLP) library. It calculates a sentiment score using a sentiment analysis algorithm and performs a risk assessment based on the result. If the risk is high, it generates appropriate rewrite suggestions and returns them to the user's device. Furthermore, if the risk is assessed as high, it sends a warning to the vehicle operator. The user reviews the proposed rewrite suggestions, makes any necessary corrections, and confirms the final post.
[0226] Process Overview
[0227] 1. Receiving User Submissions:
[0228] The user's device monitors passenger input and temporarily caches chat messages as they are entered.
[0229] 2. Submitting your submission:
[0230] The device sends the received post to the server using a standard HTTP POST request.
[0231] 3. Analysis of posts:
[0232] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library (e.g., spaCy) to tokenize the post content, tag it with parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model (e.g., TextBlob) to calculate a sentiment score and check for discriminatory or offensive language.
[0233] 4. Risk Assessment and Feedback:
[0234] The server evaluates the risk of the posted content. If the evaluation results in a high risk, it uses an NLP model to generate candidates for rewriting to appropriate expressions. This is then sent back to the user's device. If the risk is also evaluated as high, a warning is sent to the vehicle operator.
[0235] 5. User Warnings and Suggestions:
[0236] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[0237] 6. Final Post:
[0238] The user confirms the changes and presses the send button. The terminal resends the final post with the changes to the server, and the server posts the final post to the chat system.
[0239] Specific examples
[0240] For example, consider a case where a user attempts to post "This driving is really crappy." The user device sends the post content to the server, which analyzes it. An NLP library (e.g., spaCy) is used to tokenize the post content, tag parts of speech, and perform dependency analysis. A sentiment analysis model (e.g., TextBlob) is used to detect discriminatory and offensive expressions such as "shit" and "seriously." Since the sentiment score is high, the risk assessment is set to high. The server then generates a rewrite candidate, "This driving is really bad," and sends it back to the user device. At the same time, a warning is sent to the vehicle operator. The user checks the risk assessment results and rewrite candidate on their device, makes any necessary corrections, and finally posts the revised content.
[0241] Example prompts to input to the generative AI model
[0242] "Generate rewrite suggestions when a user uses offensive language. Original message: 'This driving is seriously crap'."
[0243] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0244] Step 1:
[0245] The chat message input by the user is received by the user terminal.
[0246] Typed: Messages typed by users using their smartphones or in-car devices.
[0247] How it works: The user's device monitors message input in real time and caches the content as soon as input is complete.
[0248] Output: Temporarily cached messages.
[0249] Step 2:
[0250] The user terminal transmits the received post content to the server.
[0251] Input: The cached message of the user.
[0252] How it works: The user device sends a message to the server using an HTTP POST request.
[0253] Output: The post sent to the server.
[0254] Step 3:
[0255] The server analyzes the received post content and calculates an emotion score.
[0256] Input: The post received by the server.
[0257] How it works: The server uses a natural language processing (NLP) library (e.g., spaCy) to tokenize, tag parts of speech, and parse dependencies on the post, then uses a sentiment analysis model (e.g., TextBlob) to calculate a sentiment score.
[0258] Output: Parsed data and calculated sentiment score.
[0259] Step 4:
[0260] The server performs a risk assessment based on the sentiment score.
[0261] Input: The calculated sentiment score.
[0262] How it works: The server assesses the risk of the post based on the sentiment score. For example, if the sentiment score is high, the risk rating is set to "high."
[0263] Output: Risk assessment results.
[0264] Step 5:
[0265] The server generates appropriate rewrite candidates based on the risk assessment.
[0266] Input: Risk assessment results.
[0267] How it works: The server uses a natural language processing (NLP) model to generate appropriate rewrite suggestions when the risk assessment is high.
[0268] Output: Rewrite candidates.
[0269] Step 6:
[0270] The server transmits the risk assessment results and rewrite candidates to the user terminal.
[0271] Input: Risk assessment results and rewrite candidates.
[0272] Operation: The server sends the risk assessment results and rewrite candidates to the user's device.
[0273] Output: Risk assessment results and rewrite candidates sent to the user device.
[0274] Step 7:
[0275] The user terminal notifies the user of the risk assessment results and rewrite candidates received from the server.
[0276] Input: Risk assessment results and rewrite candidates received from the server.
[0277] Operation: The user's device displays the risk assessment results and rewrite candidates on the screen and notifies the user.
[0278] Output: Risk assessment results and rewrite suggestions notified to the user.
[0279] Step 8:
[0280] If the risk is assessed as high, the server sends a warning to the vehicle operator.
[0281] Input: Risk assessment results.
[0282] How it works: If a risk is assessed as high, the server sends a warning to the vehicle operator, either via email notification or dashboard alert.
[0283] Output: Alert sent to vehicle operator.
[0284] Step 9:
[0285] The user confirms the changes and finalizes the post.
[0286] Input: Rewrite candidates and risk assessment results notified to the user.
[0287] How it works: The user reviews the suggested rewrites, makes any necessary corrections, and then commits the final post.
[0288] Output: Final, confirmed post.
[0289] Step 10:
[0290] The user terminal transmits the corrected final post to the server again, and the server posts the final post content to the chat system.
[0291] Input: Final confirmed post.
[0292] How it works: The user device resends the last post to the server, which then posts it to the specified chat system (SNS or messaging app).
[0293] Output: The final content posted.
[0294] 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.
[0295] A specific embodiment of the present invention will be described below. The present invention is a system that analyzes the content and the user's emotions in real time when the user posts content on social networking sites or chat tools, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of a post causing a firestorm.
[0296] System Overview
[0297] The system consists of the following main components:
[0298] User device (PC, smartphone, etc.)
[0299] server
[0300] network
[0301] Emotion Engine
[0302] When a user enters content to post on a social networking site or chat tool, the content and the user's emotional data are sent from the user's device to a server. The server receives the content and emotional data, performs natural language processing (NLP) and sentiment analysis, and performs a risk assessment based on the results. If the risk is high, the server generates appropriate rewrite suggestions and returns them to the user's device. The user then reviews the suggested rewrite suggestions, makes any necessary corrections, and confirms the final post.
[0303] Program processing
[0304] 1. Receiving User Submissions
[0305] The device monitors the user's input and caches the emotion data along with the post content the moment the user completes the post (for example, when the send button is pressed).
[0306] 2. Sending post content and emotional data
[0307] The device sends the received post and emotion data to the server using a standard HTTP POST request.
[0308] 3. Analysis of posts
[0309] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library to tokenize the post content, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model to calculate a sentiment score and check whether the post contains discriminatory or offensive language. It also takes into account the results of user emotion recognition by the sentiment engine.
[0310] 4. Risk Assessment and Feedback
[0311] The server evaluates the risk of the posted content. If the evaluation result is "high," it uses an NLP model to generate rewrite candidates to appropriate expressions. The rewrite candidates and the risk evaluation result are returned to the terminal.
[0312] 5. User Warnings and Suggestions
[0313] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[0314] 6. Final Post
[0315] The user confirms the changes and presses the send button. The device then resends the final edited post to the server, which then posts the post to the social networking site or chat tool.
[0316] Specific examples
[0317] For example, consider the case where a user attempts to post "This product is really crap." The emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The device sends the emotion data along with the content of the post to the server, which analyzes it. The server detects the discriminatory and offensive expression "crap" and, since the emotion score is high, sets the risk assessment to "high." The server then generates a rewrite candidate for "This product is really no good" and sends it back to the user's device. The device presents the risk assessment result and the rewrite candidate to the user, and after the user confirms the revision, the revised content is finally posted.
[0318] In this way, the present invention combines and analyzes user posted content and emotional data to provide more accurate risk assessments and create an environment in which companies and organizations can communicate safely.
[0319] The processing flow will be explained below.
[0320] Step 1:
[0321] The user enters the content to post into the input field on a social media or chat tool.
[0322] Example: User types "This new feature is completely useless."
[0323] Step 2:
[0324] The device monitors the user's input.
[0325] Behavior: Triggered by the user pressing the "Enter" key or submit button.
[0326] Step 3:
[0327] Your device will temporarily cache your posts.
[0328] What it does: Stores the post content in a variable or temporary file.
[0329] Step 4:
[0330] The device uses an emotion engine to collect user emotion data.
[0331] How it works: It uses a camera and microphone to analyze your facial expressions and speech patterns.
[0332] Step 5:
[0333] The device calls an API to send the post content and emotion data to the server.
[0334] What it does: Sends data to the server using an HTTP POST request.
[0335] Example: Post content: "This new feature is completely useless" and send emotional data.
[0336] Step 6:
[0337] The server receives the posted content and emotion data.
[0338] What it does: Processes a POST request on an API endpoint.
[0339] Step 7:
[0340] The server analyzes the post using a natural language processing (NLP) library.
[0341] What it does: Tokenizes posts, tags them for parts of speech, and performs dependency analysis.
[0342] Step 8:
[0343] The server uses a sentiment analysis model to calculate a sentiment score for the post.
[0344] What it does: Determines if a post has a negative sentiment score.
[0345] Step 9:
[0346] The server adds the results of the user's emotion recognition by the emotion engine to the analysis.
[0347] How it works: It uses data received from the sentiment engine to adjust the sentiment score of posts.
[0348] Step 10:
[0349] The server detects discriminatory and offensive language based on specified guidelines.
[0350] What it does: Uses prefix matching and regular expressions to find inappropriate language.
[0351] Example: Detects the expression "not useful at all."
[0352] Step 11:
[0353] The server performs a risk assessment based on the profanity detected.
[0354] How it works: Assign a risk rating (e.g., high, medium, low) based on the number of profanities and sentiment score.
[0355] Step 12:
[0356] The server uses an NLP model to generate candidates for rewriting to appropriate expressions.
[0357] What it does: Masks the input sentence and suggests appropriate paraphrases.
[0358] Example: Generate a rewrite candidate: "This new feature is not as useful as expected."
[0359] Step 13:
[0360] The server returns the risk assessment results and rewrite candidates to the terminal.
[0361] Behavior: The risk assessment results and rewrite suggestions are sent to the device in JSON format.
[0362] Step 14:
[0363] The device notifies the user of the risk assessment results and rewrite candidates received from the server.
[0364] What it does: Parses the received JSON data and displays it as a popup or inline alert.
[0365] Step 15:
[0366] The user reviews the suggested rewrites and edits the post as needed.
[0367] What happens: The user sees the notification and follows the suggestions to revise their post.
[0368] Example: "This new feature isn't as useful as I hoped."
[0369] Step 16:
[0370] The user confirms the changes and presses the submit button.
[0371] Action: Click the final submit button with the final post content.
[0372] Step 17:
[0373] The device resends the final modified post to the server.
[0374] What it does: Sends data to the server using an HTTP POST request.
[0375] Step 18:
[0376] The server posts the final content via the API of the social networking site or chat tool.
[0377] Behavior: Calls the destination API and sends the confirmed post content.
[0378] Example 2
[0379] 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."
[0380] In modern society, while communication via social media and chat tools is on the rise, the risk of trouble or flame wars arising from incorrect language or emotional posts is also increasing. While systems that can prevent such trouble are needed, conventional systems have difficulty grasping the subtle nuances of emotions, resulting in low accuracy in risk assessment. The present invention aims to solve this problem by analyzing user posts and emotional data, providing highly accurate risk assessments and suggesting appropriate rewriting.
[0381] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0382] In this invention, the server includes means for receiving posted content entered by a user, means for transmitting the received posted content and emotion data, means for analyzing the received posted content, calculating an emotion score, and detecting discriminatory or offensive language, means for assessing risk based on the emotion score and the detected discriminatory or offensive language, means for generating candidates for rewriting to appropriate language based on the risk assessment, means for notifying the user of the risk assessment results and the candidate rewrites, and means for finally transmitting the corrected posted content. This makes it possible to combine the user's posted content and emotion data for highly accurate analysis and prevent risky posts from being made.
[0383] A "user" is an individual who uses the system to post on social media or chat tools.
[0384] "Post content" refers to the text data that users enter into social media or chat tools.
[0385] "Emotion data" is data that represents emotions obtained from the user's facial expressions, voice, etc.
[0386] The "server" is a computer system that analyzes the posted content and emotional data, performs risk assessment, and generates appropriate rewrite candidates.
[0387] "Means for receiving" refers to the hardware and software configuration for collecting the posted content entered by users.
[0388] "Transmission means" refers to the hardware and software configuration for transmitting the received post content and emotion data to the server.
[0389] The "means for analysis" refers to the software configuration for analyzing the received post content using a natural language processing library and a sentiment analysis model.
[0390] The "emotion score" is a numerical representation of the intensity of emotion obtained from the analysis of the content of the post.
[0391] "Risk assessment" is the process of determining the risk level of a post based on the sentiment score and any detected discriminatory or offensive language.
[0392] "Rewrite candidates" are candidates for new posting content that have been converted into appropriate expressions based on the risk assessment results.
[0393] "Means for notifying" refers to the hardware and software configuration for presenting the risk assessment results and rewrite candidates to the user.
[0394] "Means for sending" refers to the hardware and software configuration for sending the final, corrected post back to the server and ultimately posting it to the social networking site or chat tool.
[0395] This system analyzes the content and user sentiment in real time when users post content on social networking sites or chat tools, assesses the risk, and provides appropriate rewrite suggestions to prevent posts from becoming a hot topic.The system is composed of key components such as user terminals, servers, networks, and an emotion engine.
[0396] First, when a user types content into a social networking site or chat tool, the user's device monitors the input and caches it. At the same time, the user's facial expressions and voice data are collected as emotion data. This data is then sent by the device to the server. Specifically, it is sent using a standard HTTP POST request.
[0397] On the server side, the received post content and sentiment data are analyzed. Natural language processing (NLP) libraries such as SpaCy and NLTK are used to tokenize text, tag parts of speech, and analyze dependencies. Furthermore, sentiment analysis models such as BERT and RoBERTa are used to calculate sentiment scores. Based on the analysis results, the post content is checked to see if it contains discriminatory or offensive language. The sentiment engine also takes into account the results of user sentiment recognition.
[0398] Risk assessment is performed based on the analysis results. If the sentiment score is high and the content contains discriminatory or offensive language, the risk assessment value is set to "high." If the risk is assessed as high, the server generates appropriate rewrite candidates using NLP models or generative AI models. The generated rewrite candidates and risk assessment results are sent back to the device.
[0399] The user's device receives the risk assessment results and suggests rewrites from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary. Once the user confirms the modifications, the device sends the final post back to the server, which then posts it to the social networking site or chat tool.
[0400] As a concrete example, consider the case where a user attempts to post "This product really sucks." At this point, the emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The device sends the post content and emotion data to the server, which analyzes this data using analysis tools such as SpaCy or BERT. The server detects the offensive expression "shit" and, since the emotion score is high, sets the risk assessment to "high." Next, it generates a rewrite candidate for "This product really sucks" and sends it back to the user's device. The user reviews the proposed rewrite candidate, makes any necessary corrections, and posts the revised version.
[0401] Example prompt sentence:
[0402] A user attempts to post "This product is really crap." The emotion engine recognizes emotions such as anger and irritation from the user's facial expressions and voice. The post content and emotion data are sent to the server and analyzed using a natural language processing library. Discriminatory and offensive expressions are detected, and the emotion score is high, so the risk assessment is "high." The server generates a rewrite candidate, "This product is really no good," and sends it back to the user's device. The device presents the risk assessment result and rewrite candidate to the user. The user corrects the post and submits it.
[0403] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0404] Step 1:
[0405] The device monitors user input and caches the content of the post and emotional data the moment the post is completed. When a user types "This product really sucks" into a social networking site or chat tool and presses the send button, the device temporarily saves the text data (posted content) and also caches the user's facial expression and voice data (emotional data) collected through the camera and microphone.
[0406] Input: User posted text, facial expression image data, voice data
[0407] Output: Cached post content and sentiment data
[0408] Step 2:
[0409] The device sends the cached post content and emotion data to the server. Specifically, it uses a standard HTTP POST request to create a packet containing text data, image data, and audio data, and sends it over the network to the server.
[0410] Input: Cached post content and sentiment data
[0411] Output: HTTP POST request sent to the server
[0412] Step 3:
[0413] The server analyzes the received post content and sentiment data. First, it uses a natural language processing (NLP) library (e.g., SpaCy) to tokenize the text data, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model (e.g., BERT) to calculate a sentiment score from the text data. Finally, it inputs image and audio data into the sentiment engine to recognize the user's emotional state.
[0414] Input: Received post text and sentiment data
[0415] Output: Text tokenization data, sentiment score, and recognized emotional state
[0416] Step 4:
[0417] The server performs a risk assessment of the post content based on the analysis results. If the sentiment score is high and discriminatory or offensive language is detected, the risk assessment value is set to "high." Using the database of analysis results, posts that are assessed as high risk are given a special flag.
[0418] Input: Tokenized text data, sentiment scores, and recognized emotional states
[0419] Output: Risk assessment results
[0420] Step 5:
[0421] If the risk assessment is set to "high," the server uses a generative AI model (e.g., GPT) to generate rewrite candidates to appropriate expressions. For example, it converts the expression "shit" to a more appropriate expression such as "not good." The generated rewrite candidates are sent to the device along with the risk assessment result.
[0422] Input: Risk assessment results, analyzed text data
[0423] Output: Rewrite candidates, risk assessment results
[0424] Step 6:
[0425] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. A pop-up window appears on the user's screen, displaying a message such as "This product contains high-risk language. Please use this instead: 'This product is really bad.'"
[0426] Input: Risk assessment results, rewrite candidates
[0427] Output: Message to be displayed to the user
[0428] Step 7:
[0429] The user checks the suggested rewrites and edits the post as necessary. Then, they press the send button again. The edits are confirmed, and the device sends the final post to the server again.
[0430] Input: Check the rewrite suggestions and correct the post
[0431] Output: Corrected final post data
[0432] Step 8:
[0433] The server receives the final, corrected content and posts it to the social networking site or chat tool. It calls the social networking site's API and posts the appropriately corrected content.
[0434] Input: Corrected last submitted data
[0435] Output: Posting to social media or chat tools completed
[0436] (Application example 2)
[0437] 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."
[0438] User posts on social media and chat tools often contain emotional expressions and offensive language, which poses the risk of causing outrage. This problem requires a method to mitigate the risk in real time, as inappropriate comments can have a negative impact on other users and society. Existing technologies have not provided a satisfactory solution to this issue.
[0439] 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.
[0440] In this invention, the server includes means for receiving post content entered by a user, means for analyzing the received post content and calculating an emotion score, means for assessing risk according to the emotion score, means for generating candidates for rewriting to appropriate expressions based on the risk assessment, means for notifying the user of the risk assessment results and the candidates for rewriting, means for finally transmitting the corrected post content, and means for assessing the risk of a flame war using the generative AI model together with the emotion score and providing a prompt message. This enables a more accurate risk assessment by combining and analyzing the user's post content and emotion data, thereby reducing the risk of a flame war.
[0441] "Post content entered by the user" refers to the text or message that the user is trying to send on social media, chat tools, etc.
[0442] The "emotion score" is a numerical value that indicates the emotion expressed in a user's post based on its content.
[0443] "Risk assessment" refers to the use of an analyzed emotion score to assess the degree of risk that a post poses to other users or society as a whole.
[0444] "Rewrite suggestions" are suggested alternative texts to change the content of a post to more appropriate expression when the risk assessment is high.
[0445] A "generative AI model" is a trained model that uses artificial intelligence to analyze user posts and generate rewrite candidates.
[0446] A "prompt" is a suggested text output by a generative AI model to correct or complement a user's post.
[0447] A specific embodiment of the present invention will be described. The present invention is a system that analyzes the content and user sentiment in real time when a user posts content on social networking sites or chat tools, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of a post causing a firestorm. This system is composed of the following main elements.
[0448] System configuration
[0449] The system includes a user terminal, a server, and a network. The user terminal is a device such as a PC or smartphone that users use to post to social media or chat tools. The server is a central processing unit that analyzes the content of posts and emotional data, and the network is responsible for data communication between the user terminal and the server.
[0450] Hardware and software used
[0451] User devices: PC, smartphone
[0452] Server: A server with high-performance CPU and memory
[0453] Emotion Engine: Huggin Face emotion analysis model
[0454] Natural Language Processing (NLP) Library: TextBlob
[0455] Network: HTTP / HTTPS protocol
[0456] Processing Description
[0457] Receiving user posts
[0458] The user device monitors the content that the user enters into social media or chat tools, caches the content each time the user starts posting, and sends the content along with emotion data to the server the moment the user completes the post (for example, when the "send" button is pressed).
[0459] Sending post content and emotion data
[0460] The user device sends the received post content and emotion data to the server using a standard HTTP POST request.
[0461] Analysis of post content
[0462] The server analyzes the received post using a natural language processing (NLP) library. Specifically, it tokenizes the post, tags it with parts of speech, and performs dependency analysis. It then uses an emotion engine (Hugging Face's emotion analysis model) to calculate an emotion score and perform a risk assessment. During this process, it checks to see if the post contains any discriminatory or offensive language.
[0463] Risk assessment and rewrite candidate generation
[0464] The server uses a generative AI model along with the sentiment score to assess the risk of a controversy, and generates a rewrite suggestion using a prompt sentence if the risk is high. For example, if a user attempts to post "This video is terrible," the server determines the result of sentiment analysis as "NEGATIVE" and sets the risk to "High." In this case, the server generates a rewrite suggestion as "The content of this video is not very good."
[0465] Notification of risk assessment results and rewrite candidates
[0466] The server returns the risk assessment result and rewrite candidates to the user terminal, and notifies the user of the risk assessment result and rewrite candidates.
[0467] Last post by user
[0468] The user's device presents the risk assessment results and rewrite suggestions received from the server to the user, and after the user makes appropriate corrections, the final post is confirmed and sent.
[0469] Specific examples
[0470] For example, if a user tries to post "This product is really crap," the emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The user's device sends the emotion data along with the content of the post to the server, and the server detects the discriminatory and offensive expression "crap." Since the emotion score is also high, the server sets the risk assessment to "high." The server then generates a suggested rewrite, "This product is really no good," and sends it back to the user's device. Through this series of steps, the user can make appropriate corrections and finally post the corrected content.
[0471] In this way, the present invention combines and analyzes the content posted by users with emotional data to provide more accurate risk assessments and create an environment in which companies and organizations can communicate safely.
[0472] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0473] Step 1:
[0474] The device receives the content posted by the user on social media or chat tools. The moment the user presses the send button, the content of the post is cached along with the user's emotional data. The input is text or a message from the user, and the output is the content of the post and the emotional data temporarily stored in memory.
[0475] Step 2:
[0476] The device sends the received post content and emotion data to the server. The post content and emotion data are sent to the server via the network using a standard HTTP POST request. The input is the cached post content and emotion data, and the output is the data sent to the server.
[0477] Step 3:
[0478] The server analyzes the received post content. First, it uses TextBlob, a natural language processing (NLP) library, to tokenize the post content, tag it with parts of speech, and perform dependency analysis. Then it uses a sentiment analysis model (Hugging Face's emotion engine) to calculate the sentiment score of the post content. The input is the post content received via an HTTP POST request, and the output is a sentiment score.
[0479] Step 4:
[0480] The server performs a risk assessment based on the emotion score. If the emotion score is high, the risk assessment is set to "high," and if it is low, it is set to "low." It then uses a generative AI model to assess the risk of flame wars and generate appropriate prompts. The input is the emotion score, and the output is a risk assessment and a prompt.
[0481] Step 5:
[0482] The server returns the risk assessment results and the prompt text generated as a rewrite candidate to the terminal. The results are sent to the terminal via an HTTP response. The input is the risk assessment results and the prompt text, and the data is sent to the terminal as output.
[0483] Step 6:
[0484] The terminal presents the risk assessment results and prompts received from the server to the user. The user checks the proposed rewrites and makes corrections as necessary. The input is the risk assessment results and prompts received from the server, and the data presented to the user is generated as the output.
[0485] Step 7:
[0486] When the user confirms the changes and presses the send button again, the device resends the final revised post to the server. The server then posts the final revised post to the SNS or chat tool. The input is the final post revised by the user, and the output is the post to the SNS or chat tool.
[0487] This detailed processing step allows users to make appropriate edits before posting, preventing the risk of a backlash.
[0488] 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.
[0489] 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.
[0490] 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.
[0491] [Second embodiment]
[0492] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0493] 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.
[0494] 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).
[0495] 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.
[0496] 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.
[0497] 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).
[0498] 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.
[0499] 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.
[0500] 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.
[0501] 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.
[0502] 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.
[0503] 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."
[0504] The following describes a specific embodiment of the present invention. The present invention is a system that analyzes the content of posts made by users on social networking sites or chat tools in real time, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of posts causing a firestorm.
[0505] System Overview
[0506] The system consists of the following main components:
[0507] User device (PC, smartphone, etc.)
[0508] server
[0509] network
[0510] When a user enters content to post on a social networking site or chat tool, the content is sent from the user's device to a server. The server receives the content, performs natural language processing (NLP) and sentiment analysis, and performs a risk assessment based on the results. If the risk is high, the server generates appropriate rewrite suggestions and returns them to the user's device. The user then reviews the suggested rewrite suggestions, makes any necessary corrections, and confirms the final post.
[0511] Program processing
[0512] 1. Receiving User Submissions
[0513] The device monitors the user's input and temporarily caches the post content the moment the user completes the post (for example, when the submit button is pressed).
[0514] 2. Submitting your submission
[0515] The device sends the received post to the server using a standard HTTP POST request.
[0516] 3. Analysis of posts
[0517] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library to tokenize the post content, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model to calculate a sentiment score and check whether the post contains discriminatory or offensive language.
[0518] 4. Risk Assessment and Feedback
[0519] The server evaluates the risk of the posted content. If the evaluation result is "high," it uses an NLP model to generate rewrite candidates to appropriate expressions. The rewrite candidates and the risk evaluation result are returned to the terminal.
[0520] 5. User Warnings and Suggestions
[0521] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[0522] 6. Final Post
[0523] The user confirms the changes and presses the send button. The device then resends the final edited post to the server, which then posts the final post to the social networking site or chat tool.
[0524] Specific examples
[0525] For example, consider the case where a user tries to post "This product is really crap." The device sends the post content to the server, which analyzes it. The server detects the discriminatory and offensive expression "crap" and sets the risk assessment to "high" because the emotion score is high. The server then generates a rewrite candidate for "This product is really no good" and sends this back to the user's device. The device presents the risk assessment result and the rewrite candidate to the user, and after the user confirms the revision, the revised content is finally posted.
[0526] In this way, the present invention prevents the risk of flame wars caused by comments made on social media or chat tools, and provides an environment in which companies and organizations can communicate safely.
[0527] The processing flow will be explained below.
[0528] Step 1:
[0529] The user enters the content to post into the input field on a social media or chat tool.
[0530] Example: User types "This new feature is completely useless."
[0531] Step 2:
[0532] The device monitors the user's input.
[0533] Behavior: Triggered by the user pressing the "Enter" key or submit button.
[0534] Step 3:
[0535] Your device will temporarily cache your posts.
[0536] What it does: Stores the post content in a variable or temporary file.
[0537] Step 4:
[0538] The device calls an API to send the post content to the server.
[0539] What it does: Sends data to the server using an HTTP POST request.
[0540] Example: Send a post saying "This new feature is completely useless."
[0541] Step 5:
[0542] The server receives the submitted content.
[0543] What it does: Processes a POST request on an API endpoint.
[0544] Step 6:
[0545] The server analyzes the post using a natural language processing (NLP) library.
[0546] What it does: Tokenizes, tags parts of speech, and parses dependencies.
[0547] Step 7:
[0548] The server uses a sentiment analysis model to calculate a sentiment score for the post.
[0549] What it does: Determines if a post has a negative sentiment score.
[0550] Step 8:
[0551] The server detects discriminatory and offensive language based on specified guidelines.
[0552] What it does: Uses prefix matching and regular expressions to find inappropriate language.
[0553] Example: Detects the expression "not useful at all."
[0554] Step 9:
[0555] The server performs a risk assessment based on the profanity detected.
[0556] How it works: Assign a risk rating (e.g., high, medium, low) based on the number of profanities and sentiment score.
[0557] Step 10:
[0558] The server uses an NLP model to generate candidates for rewriting to appropriate expressions.
[0559] What it does: Masks the input sentence and suggests appropriate paraphrases.
[0560] Example: Generate a rewrite candidate: "This new feature is not as useful as expected."
[0561] Step 11:
[0562] The server returns the risk assessment results and rewrite candidates to the terminal.
[0563] Behavior: The risk assessment results and rewrite suggestions are sent to the device in JSON format.
[0564] Step 12:
[0565] The device notifies the user of the risk assessment results and rewrite candidates received from the server.
[0566] What it does: Parses the received JSON data and displays it as a popup or inline alert.
[0567] Step 13:
[0568] The user reviews the suggested rewrites and edits the post as needed.
[0569] What happens: The user sees the notification and follows the suggestions to revise their post.
[0570] Example: "This new feature isn't as useful as I hoped."
[0571] Step 14:
[0572] The user confirms the changes and presses the submit button.
[0573] Action: Click the final submit button with the final post content.
[0574] Step 15:
[0575] The device resends the final modified post to the server.
[0576] What it does: Sends data to the server using an HTTP POST request.
[0577] Step 16:
[0578] The server posts the final content via the API of the social networking site or chat tool.
[0579] Behavior: Calls the destination API and sends the confirmed post content.
[0580] Example 1
[0581] 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."
[0582] In today's social media and chat tools, there is a growing risk that users may unintentionally post discriminatory or offensive language, sparking outrage and misunderstandings. This could potentially damage the reputation of individuals and companies. There is a need for a system that can solve this problem and enable users to communicate safely and smoothly.
[0583] 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.
[0584] In this invention, the server includes means for receiving post content entered by a user, means for temporarily caching the received post content, means for transmitting the received post content, means for analyzing the received post content and performing natural language processing, means for calculating an emotion score based on the natural language processing and detecting discriminatory or offensive language, means for assessing risk based on the emotion score, means for generating candidates for rewriting to appropriate language if the risk assessment is "high," means for notifying the user of the risk assessment result and the candidate rewrites, and means for the user to confirm the revisions and finally transmit the revised post content. This makes it possible to detect discriminatory or offensive language before a user posts and rewrite it to safe language.
[0585] "Means for receiving posts entered by users" refers to a function that allows the system to obtain text data entered by users in the interface of social networking sites or chat tools.
[0586] The "means for temporarily caching received posted content" is a storage means for holding posted content received from users for a short period of time and using it for subsequent processing.
[0587] The "means for transmitting received posted content" is a communication means for transferring cached posted content to an external analysis device such as a server.
[0588] "Means for analyzing received post content and performing natural language processing" refers to a function that analyzes posted text data using natural language processing techniques such as tokenization, part-of-speech tagging, and dependency analysis.
[0589] "Means for calculating emotion scores based on natural language processing and detecting discriminatory or offensive expressions" refers to a function that uses an emotion analysis model to calculate emotion scores based on analyzed text data and further determines whether specific expressions are discriminatory or offensive.
[0590] The "means for performing risk assessment according to the emotion score" is a function for assessing the risk level of text based on the emotion score and setting a risk level such as "high" as necessary.
[0591] "Means for generating candidates for rewriting to appropriate expressions when the risk assessment is 'high'" is a function that uses an NLP model to generate candidates for correcting posts that are judged to have a high risk assessment to expressions that are not problematic.
[0592] "Means for notifying users of risk assessment results and suggested revisions" is a function that displays the assessment results and suggested revisions to users and prompts them to confirm that they wish to correct the posted content.
[0593] "Means for users to confirm the revisions and finally send the revised post" refers to a function that allows users to accept the proposed revisions and then finally send the revised post to social media or chat tools.
[0594] System Overview
[0595] This system analyzes the content of posts made by users on social media or chat tools in real time, assesses the risks, and provides appropriate rewrite suggestions to prevent the risk of a social media firestorm. The main components are as follows:
[0596] User device (PC, smartphone, etc.)
[0597] server
[0598] network
[0599] Hardware and Software
[0600] User Device
[0601] User devices are general PCs or smartphones, and posts are made through social networking apps or chat tools, so existing applications can be used.
[0602] server
[0603] The server has advanced computing resources and is capable of natural language processing (NLP) and sentiment analysis, using the following technologies:
[0604] NLP library: SpaCy or NLTK
[0605] Sentiment analysis models: VADER and BERT-based models
[0606] Rewrite candidate generation: GPT-3 and similar generative AI models
[0607] Data processing and calculation
[0608] 1. A user types a post into a social media app or chat tool and presses the "Send" button.
[0609] 2. The device temporarily caches the post and sends it to the server via an HTTP POST request.
[0610] 3. The server receives the post and uses NLP libraries to tokenize, tag parts of speech, and parse dependencies.
[0611] 4. Calculate sentiment scores using a sentiment analysis model to detect discriminatory and offensive expressions.
[0612] 5. If the risk assessment is determined to be "high," the NLP model generates candidates for rewriting to appropriate expressions.
[0613] 6. The rewrite candidates and risk assessment results are returned to the terminal in JSON format.
[0614] 7. The device analyzes this and displays the risk assessment results and rewrite suggestions to the user in a pop-up.
[0615] 8. The user corrects or confirms the information and presses the "Submit" button again.
[0616] 9. The final post content is sent to the server again, and the server executes the final post using the public API of the SNS or chat tool.
[0617] Specific examples
[0618] For example, suppose a user wants to post "This product really sucks." Here's how it works:
[0619] 1. When the user presses the "Send" button, the device sends the post to the server.
[0620] 2. The server uses an NLP library to analyze posts containing the word "shit" and calculate a sentiment score.
[0621] 3. The discriminatory and offensive expression "shit" is detected and the risk score is set to "high."
[0622] 4. The server uses an NLP model to generate a rewrite candidate such as "This product is really bad."
[0623] 5. The rewrite candidates and risk assessment results are sent back to the device and presented to the user in a pop-up.
[0624] 6. When the user confirms the changes and presses the "Send" button again, the final post is sent to the server, which then posts the content using the SNS's public API.
[0625] Examples of prompt statements
[0626] Here are some examples of prompts for generative AI models:
[0627] 1. "Please rewrite the following sentence to make it easier to read and less emotional: 'This product is crap.'"
[0628] 2. "Change the following phrase to something less offensive: 'You're completely useless.'"
[0629] 3. "Please rewrite the following comment to avoid social media outrage: 'The service here is awful.'"
[0630] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0631] Step 1: Receiving User Submissions
[0632] The device monitors user input and temporarily caches the post the moment the user hits the "send" button.
[0633] Input: Post content entered by the user on social media or chat tools
[0634] Output: Cached post content
[0635] What it does: A user types "This product is really crap" into a social media app and presses the "Send" button. This action causes the device to temporarily store the comment in memory.
[0636] Step 2: Submit your post
[0637] The device sends the cached post to the server using a standard HTTP POST request.
[0638] Input: Cached post content
[0639] Output: Post content sent as an HTTP POST request
[0640] Specific operation: The device includes the comment content saved in the body of an HTTP POST request and sends it to the server. For example, a POST request is sent to "https: / / example.com / api / v1 / analyzePost".
[0641] Step 3: Analyzing the Post Content
[0642] The server analyzes the received post content, specifically tokenizing the post content, tagging it with parts of speech, and analyzing dependencies using a natural language processing (NLP) library.
[0643] Input: Post content sent as an HTTP POST request
[0644] Output: Parsed tokens, part-of-speech tags, and dependency information
[0645] How it works: The server uses an NLP library (e.g., SpaCy or NLTK) to break down the post into words and tag each word with its part of speech. It then performs dependency analysis to analyze the dependency relationships within the sentence.
[0646] Step 4: Calculate sentiment scores and detect expressions
[0647] The server uses a sentiment analysis model to calculate a sentiment score and detect discriminatory and offensive expressions.
[0648] Input: Parsed tokens, part-of-speech tags, and dependency information
[0649] Output: Sentiment score and detected discriminatory / offensive expressions
[0650] What it does: The server uses a sentiment analysis model (e.g., a VADER- or BERT-based model) to calculate a sentiment score and detect offensive words like "shit."
[0651] Step 5: Risk assessment and generation of rewrite candidates
[0652] The server evaluates the risk of the post, and if the evaluation result is "high," it uses an NLP model to generate candidates for rewriting to appropriate expressions.
[0653] Input: Sentiment scores and detected discriminatory / offensive expressions
[0654] Output: Risk assessment results and rewrite candidates
[0655] How it works: The server assigns a high risk score to posts containing the word "shit," then uses an NLP model (e.g., GPT-3) to generate a rewrite suggestion such as "This product is really bad."
[0656] Step 6: Notification of risk assessment results and rewrite candidates
[0657] The server notifies the terminal of the risk assessment results and rewrite candidates.
[0658] Input: Risk assessment results and rewrite candidates
[0659] Output: Risk assessment results and rewrite suggestions displayed to the user
[0660] Specific operation: The server returns the risk assessment results and rewrite candidates to the terminal in JSON format.
[0661] Step 7: User warnings and suggestions
[0662] The device presents the risk assessment results and suggested rewrites to the user, who can then review the suggestions and modify the post as necessary.
[0663] Input: Risk assessment results and rewrite candidates
[0664] Output: Risk assessment results and rewrite suggestions presented to the user
[0665] Specific operation: The device analyzes the received JSON data and displays a pop-up warning message to the user with suggested rewrites. For example, in response to a post saying "This product really sucks," the system displays the message "This expression is risky. Would you like to change it to 'This product really isn't good'?"
[0666] Step 8: Submit your final post
[0667] When the user confirms the changes and presses the "Send" button again, the device will resend the revised final post to the server, and the server will post the final post content to the social networking site or chat tool.
[0668] Input: The final post content confirmed by the user
[0669] Output: The last post made to social media or chat tools
[0670] Specific operation: The user selects "Yes" in the displayed pop-up, checks the revised comment, and then presses the "Send" button again. The device then sends a final POST request to the server, which then executes the post using the SNS's public API.
[0671] (Application example 1)
[0672] 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."
[0673] There is a risk of discriminatory, offensive, or inappropriate language being used in communications between passengers in autonomous vehicles. This not only creates uncomfortable situations between passengers and operators, but also has the potential to affect the safe operation of the vehicle. Conventional systems have difficulty assessing communication risks in real time and taking appropriate measures, so this issue needs to be addressed.
[0674] 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.
[0675] In this invention, the server includes means for receiving posted content entered by a user, means for analyzing the received posted content and calculating an emotion score, means for performing a risk assessment according to the emotion score, means for generating candidates for rewriting to appropriate expressions based on the risk assessment, means for notifying the user of the risk assessment results and the candidates for rewriting, means for monitoring messages between passengers in an autonomous vehicle, means for sending a warning to a vehicle operator when a message is assessed as being high risk, and means for finally sending the corrected posted content. This makes it possible to prevent inappropriate communication in an autonomous vehicle and provide a safe and comfortable travel environment.
[0676] "Means for receiving posts entered by users" refers to a function for sending message data entered by users using devices such as smartphones or computers to a server.
[0677] The "means for analyzing the content of received posts and calculating an emotion score" is a function for analyzing received message data using natural language processing technology and emotion analysis algorithms, and deriving an emotion score from the content.
[0678] "Means for risk assessment based on emotional score" is a function for assessing the risk level of the content of posts as high, medium, low, etc. based on the emotional score.
[0679] The "means for generating candidate sentences for rewriting to more appropriate expressions based on risk assessment" is a function for generating candidate sentences for converting a user's posted content into more appropriate expressions when the risk assessment is determined to be high.
[0680] "Means for notifying users of risk assessment results and rewrite candidates" refers to a function for displaying and notifying users of the results of risk assessment and generated rewrite candidates on their devices.
[0681] "Means for monitoring messages between passengers inside an autonomous vehicle" refers to a function for monitoring chats and message exchanges between passengers inside an autonomous vehicle in real time.
[0682] The "means for sending a warning to the vehicle operator when the risk is assessed as high" is a function for sending a warning to the operator of an automated vehicle when the risk assessment of a message is determined to be high.
[0683] "Means for final transmission of corrected posted content" refers to the function for sending the final posted content corrected and confirmed by the user to the server and posting it to the designated platform.
[0684] A specific embodiment of the present invention will be described. The present invention is a system that monitors communication between passengers in an autonomous vehicle, performs risk assessment in real time, and proposes appropriate rewrite candidates. Furthermore, the system is equipped with a function to issue a warning to the vehicle operator if an incident is imminent.
[0685] System Overview
[0686] The system consists of the following main components:
[0687] User device (smartphone, tablet or in-car device)
[0688] server
[0689] network
[0690] When a passenger types a chat message inside an autonomous vehicle, the content is sent from the user's device to a server. The server receives the posted content and analyzes it using a natural language processing (NLP) library. It calculates a sentiment score using a sentiment analysis algorithm and performs a risk assessment based on the result. If the risk is high, it generates appropriate rewrite suggestions and returns them to the user's device. Furthermore, if the risk is assessed as high, it sends a warning to the vehicle operator. The user reviews the proposed rewrite suggestions, makes any necessary corrections, and confirms the final post.
[0691] Process Overview
[0692] 1. Receiving User Submissions:
[0693] The user's device monitors passenger input and temporarily caches chat messages as they are entered.
[0694] 2. Submitting your submission:
[0695] The device sends the received post to the server using a standard HTTP POST request.
[0696] 3. Analysis of posts:
[0697] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library (e.g., spaCy) to tokenize the post content, tag it with parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model (e.g., TextBlob) to calculate a sentiment score and check for discriminatory or offensive language.
[0698] 4. Risk Assessment and Feedback:
[0699] The server evaluates the risk of the posted content. If the evaluation results in a high risk, it uses an NLP model to generate candidates for rewriting to appropriate expressions. This is then sent back to the user's device. If the risk is also evaluated as high, a warning is sent to the vehicle operator.
[0700] 5. User Warnings and Suggestions:
[0701] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[0702] 6. Final Post:
[0703] The user confirms the changes and presses the send button. The terminal resends the final post with the changes to the server, and the server posts the final post to the chat system.
[0704] Specific examples
[0705] For example, consider a case where a user attempts to post "This driving is really crappy." The user device sends the post content to the server, which analyzes it. An NLP library (e.g., spaCy) is used to tokenize the post content, tag parts of speech, and perform dependency analysis. A sentiment analysis model (e.g., TextBlob) is used to detect discriminatory and offensive expressions such as "shit" and "seriously." Since the sentiment score is high, the risk assessment is set to high. The server then generates a rewrite candidate, "This driving is really bad," and sends it back to the user device. At the same time, a warning is sent to the vehicle operator. The user checks the risk assessment results and rewrite candidate on their device, makes any necessary corrections, and finally posts the revised content.
[0706] Example prompts to input to the generative AI model
[0707] "Generate rewrite suggestions when a user uses offensive language. Original message: 'This driving is seriously crap'."
[0708] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0709] Step 1:
[0710] The chat message input by the user is received by the user terminal.
[0711] Typed: Messages typed by users using their smartphones or in-car devices.
[0712] How it works: The user's device monitors message input in real time and caches the content as soon as input is complete.
[0713] Output: Temporarily cached messages.
[0714] Step 2:
[0715] The user terminal transmits the received post content to the server.
[0716] Input: The cached message of the user.
[0717] How it works: The user device sends a message to the server using an HTTP POST request.
[0718] Output: The post sent to the server.
[0719] Step 3:
[0720] The server analyzes the received post content and calculates an emotion score.
[0721] Input: The post received by the server.
[0722] How it works: The server uses a natural language processing (NLP) library (e.g., spaCy) to tokenize, tag parts of speech, and parse dependencies on the post, then uses a sentiment analysis model (e.g., TextBlob) to calculate a sentiment score.
[0723] Output: Parsed data and calculated sentiment score.
[0724] Step 4:
[0725] The server performs a risk assessment based on the sentiment score.
[0726] Input: The calculated sentiment score.
[0727] How it works: The server assesses the risk of the post based on the sentiment score. For example, if the sentiment score is high, the risk rating is set to "high."
[0728] Output: Risk assessment results.
[0729] Step 5:
[0730] The server generates appropriate rewrite candidates based on the risk assessment.
[0731] Input: Risk assessment results.
[0732] How it works: The server uses a natural language processing (NLP) model to generate appropriate rewrite suggestions when the risk assessment is high.
[0733] Output: Rewrite candidates.
[0734] Step 6:
[0735] The server transmits the risk assessment results and rewrite candidates to the user terminal.
[0736] Input: Risk assessment results and rewrite candidates.
[0737] Operation: The server sends the risk assessment results and rewrite candidates to the user's device.
[0738] Output: Risk assessment results and rewrite candidates sent to the user device.
[0739] Step 7:
[0740] The user terminal notifies the user of the risk assessment results and rewrite candidates received from the server.
[0741] Input: Risk assessment results and rewrite candidates received from the server.
[0742] Operation: The user's device displays the risk assessment results and rewrite candidates on the screen and notifies the user.
[0743] Output: Risk assessment results and rewrite suggestions notified to the user.
[0744] Step 8:
[0745] If the risk is assessed as high, the server sends a warning to the vehicle operator.
[0746] Input: Risk assessment results.
[0747] How it works: If a risk is assessed as high, the server sends a warning to the vehicle operator, either via email notification or dashboard alert.
[0748] Output: Alert sent to vehicle operator.
[0749] Step 9:
[0750] The user confirms the changes and finalizes the post.
[0751] Input: Rewrite candidates and risk assessment results notified to the user.
[0752] How it works: The user reviews the suggested rewrites, makes any necessary corrections, and then commits the final post.
[0753] Output: Final, confirmed post.
[0754] Step 10:
[0755] The user terminal transmits the corrected final post to the server again, and the server posts the final post content to the chat system.
[0756] Input: Final confirmed post.
[0757] How it works: The user device resends the last post to the server, which then posts it to the specified chat system (SNS or messaging app).
[0758] Output: The final content posted.
[0759] 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.
[0760] A specific embodiment of the present invention will be described below. The present invention is a system that analyzes the content and the user's emotions in real time when the user posts content on social networking sites or chat tools, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of a post causing a firestorm.
[0761] System Overview
[0762] The system consists of the following main components:
[0763] User device (PC, smartphone, etc.)
[0764] server
[0765] network
[0766] Emotion Engine
[0767] When a user enters content to post on a social networking site or chat tool, the content and the user's emotional data are sent from the user's device to a server. The server receives the content and emotional data, performs natural language processing (NLP) and sentiment analysis, and performs a risk assessment based on the results. If the risk is high, the server generates appropriate rewrite suggestions and returns them to the user's device. The user then reviews the suggested rewrite suggestions, makes any necessary corrections, and confirms the final post.
[0768] Program processing
[0769] 1. Receiving User Submissions
[0770] The device monitors the user's input and caches the emotion data along with the post content the moment the user completes the post (for example, when the send button is pressed).
[0771] 2. Sending post content and emotional data
[0772] The device sends the received post and emotion data to the server using a standard HTTP POST request.
[0773] 3. Analysis of posts
[0774] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library to tokenize the post content, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model to calculate a sentiment score and check whether the post contains discriminatory or offensive language. It also takes into account the results of user emotion recognition by the sentiment engine.
[0775] 4. Risk Assessment and Feedback
[0776] The server evaluates the risk of the posted content. If the evaluation result is "high," it uses an NLP model to generate rewrite candidates to appropriate expressions. The rewrite candidates and the risk evaluation result are returned to the terminal.
[0777] 5. User Warnings and Suggestions
[0778] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[0779] 6. Final Post
[0780] The user confirms the changes and presses the send button. The device then resends the final edited post to the server, which then posts the post to the social networking site or chat tool.
[0781] Specific examples
[0782] For example, consider the case where a user attempts to post "This product is really crap." The emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The device sends the emotion data along with the content of the post to the server, which analyzes it. The server detects the discriminatory and offensive expression "crap" and, since the emotion score is high, sets the risk assessment to "high." The server then generates a rewrite candidate for "This product is really no good" and sends it back to the user's device. The device presents the risk assessment result and the rewrite candidate to the user, and after the user confirms the revision, the revised content is finally posted.
[0783] In this way, the present invention combines and analyzes user posted content and emotional data to provide more accurate risk assessments and create an environment in which companies and organizations can communicate safely.
[0784] The processing flow will be explained below.
[0785] Step 1:
[0786] The user enters the content to post into the input field on a social media or chat tool.
[0787] Example: User types "This new feature is completely useless."
[0788] Step 2:
[0789] The device monitors the user's input.
[0790] Behavior: Triggered by the user pressing the "Enter" key or submit button.
[0791] Step 3:
[0792] Your device will temporarily cache your posts.
[0793] What it does: Stores the post content in a variable or temporary file.
[0794] Step 4:
[0795] The device uses an emotion engine to collect user emotion data.
[0796] How it works: It uses a camera and microphone to analyze your facial expressions and speech patterns.
[0797] Step 5:
[0798] The device calls an API to send the post content and emotion data to the server.
[0799] What it does: Sends data to the server using an HTTP POST request.
[0800] Example: Post content: "This new feature is completely useless" and send emotional data.
[0801] Step 6:
[0802] The server receives the posted content and emotion data.
[0803] What it does: Processes a POST request on an API endpoint.
[0804] Step 7:
[0805] The server analyzes the post using a natural language processing (NLP) library.
[0806] What it does: Tokenizes posts, tags them for parts of speech, and performs dependency analysis.
[0807] Step 8:
[0808] The server uses a sentiment analysis model to calculate a sentiment score for the post.
[0809] What it does: Determines if a post has a negative sentiment score.
[0810] Step 9:
[0811] The server adds the results of the user's emotion recognition by the emotion engine to the analysis.
[0812] How it works: It uses data received from the sentiment engine to adjust the sentiment score of posts.
[0813] Step 10:
[0814] The server detects discriminatory and offensive language based on specified guidelines.
[0815] What it does: Uses prefix matching and regular expressions to find inappropriate language.
[0816] Example: Detects the expression "not useful at all."
[0817] Step 11:
[0818] The server performs a risk assessment based on the profanity detected.
[0819] How it works: Assign a risk rating (e.g., high, medium, low) based on the number of profanities and sentiment score.
[0820] Step 12:
[0821] The server uses an NLP model to generate candidates for rewriting to appropriate expressions.
[0822] What it does: Masks the input sentence and suggests appropriate paraphrases.
[0823] Example: Generate a rewrite candidate: "This new feature is not as useful as expected."
[0824] Step 13:
[0825] The server returns the risk assessment results and rewrite candidates to the terminal.
[0826] Behavior: The risk assessment results and rewrite suggestions are sent to the device in JSON format.
[0827] Step 14:
[0828] The device notifies the user of the risk assessment results and rewrite candidates received from the server.
[0829] What it does: Parses the received JSON data and displays it as a popup or inline alert.
[0830] Step 15:
[0831] The user reviews the suggested rewrites and edits the post as needed.
[0832] What happens: The user sees the notification and follows the suggestions to revise their post.
[0833] Example: "This new feature isn't as useful as I hoped."
[0834] Step 16:
[0835] The user confirms the changes and presses the submit button.
[0836] Action: Click the final submit button with the final post content.
[0837] Step 17:
[0838] The device resends the final modified post to the server.
[0839] What it does: Sends data to the server using an HTTP POST request.
[0840] Step 18:
[0841] The server posts the final content via the API of the social networking site or chat tool.
[0842] Behavior: Calls the destination API and sends the confirmed post content.
[0843] Example 2
[0844] 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."
[0845] In modern society, while communication via social media and chat tools is on the rise, the risk of trouble or flame wars arising from incorrect language or emotional posts is also increasing. While systems that can prevent such trouble are needed, conventional systems have difficulty grasping the subtle nuances of emotions, resulting in low accuracy in risk assessment. The present invention aims to solve this problem by analyzing user posts and emotional data, providing highly accurate risk assessments and suggesting appropriate rewriting.
[0846] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0847] In this invention, the server includes means for receiving posted content entered by a user, means for transmitting the received posted content and emotion data, means for analyzing the received posted content, calculating an emotion score, and detecting discriminatory or offensive language, means for assessing risk based on the emotion score and the detected discriminatory or offensive language, means for generating candidates for rewriting to appropriate language based on the risk assessment, means for notifying the user of the risk assessment results and the candidate rewrites, and means for finally transmitting the corrected posted content. This makes it possible to combine the user's posted content and emotion data for highly accurate analysis and prevent risky posts from being made.
[0848] A "user" is an individual who uses the system to post on social media or chat tools.
[0849] "Post content" refers to the text data that users enter into social media or chat tools.
[0850] "Emotion data" is data that represents emotions obtained from the user's facial expressions, voice, etc.
[0851] The "server" is a computer system that analyzes the posted content and emotional data, performs risk assessment, and generates appropriate rewrite candidates.
[0852] "Means for receiving" refers to the hardware and software configuration for collecting the posted content entered by users.
[0853] "Transmission means" refers to the hardware and software configuration for transmitting the received post content and emotion data to the server.
[0854] The "means for analysis" refers to the software configuration for analyzing the received post content using a natural language processing library and a sentiment analysis model.
[0855] The "emotion score" is a numerical representation of the intensity of emotion obtained from the analysis of the content of the post.
[0856] "Risk assessment" is the process of determining the risk level of a post based on the sentiment score and any detected discriminatory or offensive language.
[0857] "Rewrite candidates" are candidates for new posting content that have been converted into appropriate expressions based on the risk assessment results.
[0858] "Means for notifying" refers to the hardware and software configuration for presenting the risk assessment results and rewrite candidates to the user.
[0859] "Means for sending" refers to the hardware and software configuration for sending the final, corrected post back to the server and ultimately posting it to the social networking site or chat tool.
[0860] This system analyzes the content and user sentiment in real time when users post content on social networking sites or chat tools, assesses the risk, and provides appropriate rewrite suggestions to prevent posts from becoming a hot topic.The system is composed of key components such as user terminals, servers, networks, and an emotion engine.
[0861] First, when a user types content into a social networking site or chat tool, the user's device monitors the input and caches it. At the same time, the user's facial expressions and voice data are collected as emotion data. This data is then sent by the device to the server. Specifically, it is sent using a standard HTTP POST request.
[0862] On the server side, the received post content and sentiment data are analyzed. Natural language processing (NLP) libraries such as SpaCy and NLTK are used to tokenize text, tag parts of speech, and analyze dependencies. Furthermore, sentiment analysis models such as BERT and RoBERTa are used to calculate sentiment scores. Based on the analysis results, the post content is checked to see if it contains discriminatory or offensive language. The sentiment engine also takes into account the results of user sentiment recognition.
[0863] Risk assessment is performed based on the analysis results. If the sentiment score is high and the content contains discriminatory or offensive language, the risk assessment value is set to "high." If the risk is assessed as high, the server generates appropriate rewrite candidates using NLP models or generative AI models. The generated rewrite candidates and risk assessment results are sent back to the device.
[0864] The user's device receives the risk assessment results and suggests rewrites from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary. Once the user confirms the modifications, the device sends the final post back to the server, which then posts it to the social networking site or chat tool.
[0865] As a concrete example, consider the case where a user attempts to post "This product really sucks." At this point, the emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The device sends the post content and emotion data to the server, which analyzes this data using analysis tools such as SpaCy or BERT. The server detects the offensive expression "shit" and, since the emotion score is high, sets the risk assessment to "high." Next, it generates a rewrite candidate for "This product really sucks" and sends it back to the user's device. The user reviews the proposed rewrite candidate, makes any necessary corrections, and posts the revised version.
[0866] Example prompt sentence:
[0867] A user attempts to post "This product is really crap." The emotion engine recognizes emotions such as anger and irritation from the user's facial expressions and voice. The post content and emotion data are sent to the server and analyzed using a natural language processing library. Discriminatory and offensive expressions are detected, and the emotion score is high, so the risk assessment is "high." The server generates a rewrite candidate, "This product is really no good," and sends it back to the user's device. The device presents the risk assessment result and rewrite candidate to the user. The user corrects the post and submits it.
[0868] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0869] Step 1:
[0870] The device monitors user input and caches the content of the post and emotional data the moment the post is completed. When a user types "This product really sucks" into a social networking site or chat tool and presses the send button, the device temporarily saves the text data (posted content) and also caches the user's facial expression and voice data (emotional data) collected through the camera and microphone.
[0871] Input: User posted text, facial expression image data, voice data
[0872] Output: Cached post content and sentiment data
[0873] Step 2:
[0874] The device sends the cached post content and emotion data to the server. Specifically, it uses a standard HTTP POST request to create a packet containing text data, image data, and audio data, and sends it over the network to the server.
[0875] Input: Cached post content and sentiment data
[0876] Output: HTTP POST request sent to the server
[0877] Step 3:
[0878] The server analyzes the received post content and sentiment data. First, it uses a natural language processing (NLP) library (e.g., SpaCy) to tokenize the text data, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model (e.g., BERT) to calculate a sentiment score from the text data. Finally, it inputs image and audio data into the sentiment engine to recognize the user's emotional state.
[0879] Input: Received post text and sentiment data
[0880] Output: Text tokenization data, sentiment score, and recognized emotional state
[0881] Step 4:
[0882] The server performs a risk assessment of the post content based on the analysis results. If the sentiment score is high and discriminatory or offensive language is detected, the risk assessment value is set to "high." Using the database of analysis results, posts that are assessed as high risk are given a special flag.
[0883] Input: Tokenized text data, sentiment scores, and recognized emotional states
[0884] Output: Risk assessment results
[0885] Step 5:
[0886] If the risk assessment is set to "high," the server uses a generative AI model (e.g., GPT) to generate rewrite candidates to appropriate expressions. For example, it converts the expression "shit" to a more appropriate expression such as "not good." The generated rewrite candidates are sent to the device along with the risk assessment result.
[0887] Input: Risk assessment results, analyzed text data
[0888] Output: Rewrite candidates, risk assessment results
[0889] Step 6:
[0890] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. A pop-up window appears on the user's screen, displaying a message such as "This product contains high-risk language. Please use this instead: 'This product is really bad.'"
[0891] Input: Risk assessment results, rewrite candidates
[0892] Output: Message to be displayed to the user
[0893] Step 7:
[0894] The user checks the suggested rewrites and edits the post as necessary. Then, they press the send button again. The edits are confirmed, and the device sends the final post to the server again.
[0895] Input: Check the rewrite suggestions and correct the post
[0896] Output: Corrected final post data
[0897] Step 8:
[0898] The server receives the final, corrected content and posts it to the social networking site or chat tool. It calls the social networking site's API and posts the appropriately corrected content.
[0899] Input: Corrected last submitted data
[0900] Output: Posting to social media or chat tools completed
[0901] (Application example 2)
[0902] 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."
[0903] User posts on social media and chat tools often contain emotional expressions and offensive language, which poses the risk of causing outrage. This problem requires a method to mitigate the risk in real time, as inappropriate comments can have a negative impact on other users and society. Existing technologies have not provided a satisfactory solution to this issue.
[0904] 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.
[0905] In this invention, the server includes means for receiving post content entered by a user, means for analyzing the received post content and calculating an emotion score, means for assessing risk according to the emotion score, means for generating candidates for rewriting to appropriate expressions based on the risk assessment, means for notifying the user of the risk assessment results and the candidates for rewriting, means for finally transmitting the corrected post content, and means for assessing the risk of a flame war using the generative AI model together with the emotion score and providing a prompt message. This enables a more accurate risk assessment by combining and analyzing the user's post content and emotion data, thereby reducing the risk of a flame war.
[0906] "Post content entered by the user" refers to the text or message that the user is trying to send on social media, chat tools, etc.
[0907] The "emotion score" is a numerical value that indicates the emotion expressed in a user's post based on its content.
[0908] "Risk assessment" refers to the use of an analyzed emotion score to assess the degree of risk that a post poses to other users or society as a whole.
[0909] "Rewrite suggestions" are suggested alternative texts to change the content of a post to more appropriate expression when the risk assessment is high.
[0910] A "generative AI model" is a trained model that uses artificial intelligence to analyze user posts and generate rewrite candidates.
[0911] A "prompt" is a suggested text output by a generative AI model to correct or complement a user's post.
[0912] A specific embodiment of the present invention will be described. The present invention is a system that analyzes the content and user sentiment in real time when a user posts content on social networking sites or chat tools, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of a post causing a firestorm. This system is composed of the following main elements.
[0913] System configuration
[0914] The system includes a user terminal, a server, and a network. The user terminal is a device such as a PC or smartphone that users use to post to social media or chat tools. The server is a central processing unit that analyzes the content of posts and emotional data, and the network is responsible for data communication between the user terminal and the server.
[0915] Hardware and software used
[0916] User devices: PC, smartphone
[0917] Server: A server with high-performance CPU and memory
[0918] Emotion Engine: Huggin Face emotion analysis model
[0919] Natural Language Processing (NLP) Library: TextBlob
[0920] Network: HTTP / HTTPS protocol
[0921] Processing Description
[0922] Receiving user posts
[0923] The user device monitors the content that the user enters into social media or chat tools, caches the content each time the user starts posting, and sends the content along with emotion data to the server the moment the user completes the post (for example, when the "send" button is pressed).
[0924] Sending post content and emotion data
[0925] The user device sends the received post content and emotion data to the server using a standard HTTP POST request.
[0926] Analysis of post content
[0927] The server analyzes the received post using a natural language processing (NLP) library. Specifically, it tokenizes the post, tags it with parts of speech, and performs dependency analysis. It then uses an emotion engine (Hugging Face's emotion analysis model) to calculate an emotion score and perform a risk assessment. During this process, it checks to see if the post contains any discriminatory or offensive language.
[0928] Risk assessment and rewrite candidate generation
[0929] The server uses a generative AI model along with the sentiment score to assess the risk of a controversy, and generates a rewrite suggestion using a prompt sentence if the risk is high. For example, if a user attempts to post "This video is terrible," the server determines the result of sentiment analysis as "NEGATIVE" and sets the risk to "High." In this case, the server generates a rewrite suggestion as "The content of this video is not very good."
[0930] Notification of risk assessment results and rewrite candidates
[0931] The server returns the risk assessment result and rewrite candidates to the user terminal, and notifies the user of the risk assessment result and rewrite candidates.
[0932] Last post by user
[0933] The user's device presents the risk assessment results and rewrite suggestions received from the server to the user, and after the user makes appropriate corrections, the final post is confirmed and sent.
[0934] Specific examples
[0935] For example, if a user tries to post "This product is really crap," the emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The user's device sends the emotion data along with the content of the post to the server, and the server detects the discriminatory and offensive expression "crap." Since the emotion score is also high, the server sets the risk assessment to "high." The server then generates a suggested rewrite, "This product is really no good," and sends it back to the user's device. Through this series of steps, the user can make appropriate corrections and finally post the corrected content.
[0936] In this way, the present invention combines and analyzes the content posted by users with emotional data to provide more accurate risk assessments and create an environment in which companies and organizations can communicate safely.
[0937] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0938] Step 1:
[0939] The device receives the content posted by the user on social media or chat tools. The moment the user presses the send button, the content of the post is cached along with the user's emotional data. The input is text or a message from the user, and the output is the content of the post and the emotional data temporarily stored in memory.
[0940] Step 2:
[0941] The device sends the received post content and emotion data to the server. The post content and emotion data are sent to the server via the network using a standard HTTP POST request. The input is the cached post content and emotion data, and the output is the data sent to the server.
[0942] Step 3:
[0943] The server analyzes the received post content. First, it uses TextBlob, a natural language processing (NLP) library, to tokenize the post content, tag it with parts of speech, and perform dependency analysis. Then it uses a sentiment analysis model (Hugging Face's emotion engine) to calculate the sentiment score of the post content. The input is the post content received via an HTTP POST request, and the output is a sentiment score.
[0944] Step 4:
[0945] The server performs a risk assessment based on the emotion score. If the emotion score is high, the risk assessment is set to "high," and if it is low, it is set to "low." It then uses a generative AI model to assess the risk of flame wars and generate appropriate prompts. The input is the emotion score, and the output is a risk assessment and a prompt.
[0946] Step 5:
[0947] The server returns the risk assessment results and the prompt text generated as a rewrite candidate to the terminal. The results are sent to the terminal via an HTTP response. The input is the risk assessment results and the prompt text, and the data is sent to the terminal as output.
[0948] Step 6:
[0949] The terminal presents the risk assessment results and prompts received from the server to the user. The user checks the proposed rewrites and makes corrections as necessary. The input is the risk assessment results and prompts received from the server, and the data presented to the user is generated as the output.
[0950] Step 7:
[0951] When the user confirms the changes and presses the send button again, the device resends the final revised post to the server. The server then posts the final revised post to the SNS or chat tool. The input is the final post revised by the user, and the output is the post to the SNS or chat tool.
[0952] This detailed processing step allows users to make appropriate edits before posting, preventing the risk of a backlash.
[0953] 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.
[0954] 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.
[0955] 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.
[0956] [Third embodiment]
[0957] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0958] 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.
[0959] 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).
[0960] 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.
[0961] 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.
[0962] 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).
[0963] 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.
[0964] 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.
[0965] 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.
[0966] 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.
[0967] 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.
[0968] 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."
[0969] The following describes a specific embodiment of the present invention. The present invention is a system that analyzes the content of posts made by users on social networking sites or chat tools in real time, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of posts causing a firestorm.
[0970] System Overview
[0971] The system consists of the following main components:
[0972] User device (PC, smartphone, etc.)
[0973] server
[0974] network
[0975] When a user enters content to post on a social networking site or chat tool, the content is sent from the user's device to a server. The server receives the content, performs natural language processing (NLP) and sentiment analysis, and performs a risk assessment based on the results. If the risk is high, the server generates appropriate rewrite suggestions and returns them to the user's device. The user then reviews the suggested rewrite suggestions, makes any necessary corrections, and confirms the final post.
[0976] Program processing
[0977] 1. Receiving User Submissions
[0978] The device monitors the user's input and temporarily caches the post content the moment the user completes the post (for example, when the submit button is pressed).
[0979] 2. Submitting your submission
[0980] The device sends the received post to the server using a standard HTTP POST request.
[0981] 3. Analysis of posts
[0982] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library to tokenize the post content, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model to calculate a sentiment score and check whether the post contains discriminatory or offensive language.
[0983] 4. Risk Assessment and Feedback
[0984] The server evaluates the risk of the posted content. If the evaluation result is "high," it uses an NLP model to generate rewrite candidates to appropriate expressions. The rewrite candidates and the risk evaluation result are returned to the terminal.
[0985] 5. User Warnings and Suggestions
[0986] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[0987] 6. Final Post
[0988] The user confirms the changes and presses the send button. The device then resends the final edited post to the server, which then posts the final post to the social networking site or chat tool.
[0989] Specific examples
[0990] For example, consider the case where a user tries to post "This product is really crap." The device sends the post content to the server, which analyzes it. The server detects the discriminatory and offensive expression "crap" and sets the risk assessment to "high" because the emotion score is high. The server then generates a rewrite candidate for "This product is really no good" and sends this back to the user's device. The device presents the risk assessment result and the rewrite candidate to the user, and after the user confirms the revision, the revised content is finally posted.
[0991] In this way, the present invention prevents the risk of flame wars caused by comments made on social media or chat tools, and provides an environment in which companies and organizations can communicate safely.
[0992] The processing flow will be explained below.
[0993] Step 1:
[0994] The user enters the content to post into the input field on a social media or chat tool.
[0995] Example: User types "This new feature is completely useless."
[0996] Step 2:
[0997] The device monitors the user's input.
[0998] Behavior: Triggered by the user pressing the "Enter" key or submit button.
[0999] Step 3:
[1000] Your device will temporarily cache your posts.
[1001] What it does: Stores the post content in a variable or temporary file.
[1002] Step 4:
[1003] The device calls an API to send the post content to the server.
[1004] What it does: Sends data to the server using an HTTP POST request.
[1005] Example: Send a post saying "This new feature is completely useless."
[1006] Step 5:
[1007] The server receives the submitted content.
[1008] What it does: Processes a POST request on an API endpoint.
[1009] Step 6:
[1010] The server analyzes the post using a natural language processing (NLP) library.
[1011] What it does: Tokenizes, tags parts of speech, and parses dependencies.
[1012] Step 7:
[1013] The server uses a sentiment analysis model to calculate a sentiment score for the post.
[1014] What it does: Determines if a post has a negative sentiment score.
[1015] Step 8:
[1016] The server detects discriminatory and offensive language based on specified guidelines.
[1017] What it does: Uses prefix matching and regular expressions to find inappropriate language.
[1018] Example: Detects the expression "not useful at all."
[1019] Step 9:
[1020] The server performs a risk assessment based on the profanity detected.
[1021] How it works: Assign a risk rating (e.g., high, medium, low) based on the number of profanities and sentiment score.
[1022] Step 10:
[1023] The server uses an NLP model to generate candidates for rewriting to appropriate expressions.
[1024] What it does: Masks the input sentence and suggests appropriate paraphrases.
[1025] Example: Generate a rewrite candidate: "This new feature is not as useful as expected."
[1026] Step 11:
[1027] The server returns the risk assessment results and rewrite candidates to the terminal.
[1028] Behavior: The risk assessment results and rewrite suggestions are sent to the device in JSON format.
[1029] Step 12:
[1030] The device notifies the user of the risk assessment results and rewrite candidates received from the server.
[1031] What it does: Parses the received JSON data and displays it as a popup or inline alert.
[1032] Step 13:
[1033] The user reviews the suggested rewrites and edits the post as needed.
[1034] What happens: The user sees the notification and follows the suggestions to revise their post.
[1035] Example: "This new feature isn't as useful as I hoped."
[1036] Step 14:
[1037] The user confirms the changes and presses the submit button.
[1038] Action: Click the final submit button with the final post content.
[1039] Step 15:
[1040] The device resends the final modified post to the server.
[1041] What it does: Sends data to the server using an HTTP POST request.
[1042] Step 16:
[1043] The server posts the final content via the API of the social networking site or chat tool.
[1044] Behavior: Calls the destination API and sends the confirmed post content.
[1045] Example 1
[1046] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1047] In today's social media and chat tools, there is a growing risk that users may unintentionally post discriminatory or offensive language, sparking outrage and misunderstandings. This could potentially damage the reputation of individuals and companies. There is a need for a system that can solve this problem and enable users to communicate safely and smoothly.
[1048] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1049] In this invention, the server includes means for receiving post content entered by a user, means for temporarily caching the received post content, means for transmitting the received post content, means for analyzing the received post content and performing natural language processing, means for calculating an emotion score based on the natural language processing and detecting discriminatory or offensive language, means for assessing risk based on the emotion score, means for generating candidates for rewriting to appropriate language if the risk assessment is "high," means for notifying the user of the risk assessment result and the candidate rewrites, and means for the user to confirm the revisions and finally transmit the revised post content. This makes it possible to detect discriminatory or offensive language before a user posts and rewrite it to safe language.
[1050] "Means for receiving posts entered by users" refers to a function that allows the system to obtain text data entered by users in the interface of social networking sites or chat tools.
[1051] The "means for temporarily caching received posted content" is a storage means for holding posted content received from users for a short period of time and using it for subsequent processing.
[1052] The "means for transmitting received posted content" is a communication means for transferring cached posted content to an external analysis device such as a server.
[1053] "Means for analyzing received post content and performing natural language processing" refers to a function that analyzes posted text data using natural language processing techniques such as tokenization, part-of-speech tagging, and dependency analysis.
[1054] "Means for calculating emotion scores based on natural language processing and detecting discriminatory or offensive expressions" refers to a function that uses an emotion analysis model to calculate emotion scores based on analyzed text data and further determines whether specific expressions are discriminatory or offensive.
[1055] The "means for performing risk assessment according to the emotion score" is a function for assessing the risk level of text based on the emotion score and setting a risk level such as "high" as necessary.
[1056] "Means for generating candidates for rewriting to appropriate expressions when the risk assessment is 'high'" is a function that uses an NLP model to generate candidates for correcting posts that are judged to have a high risk assessment to expressions that are not problematic.
[1057] "Means for notifying users of risk assessment results and suggested revisions" is a function that displays the assessment results and suggested revisions to users and prompts them to confirm that they wish to correct the posted content.
[1058] "Means for users to confirm the revisions and finally send the revised post" refers to a function that allows users to accept the proposed revisions and then finally send the revised post to social media or chat tools.
[1059] System Overview
[1060] This system analyzes the content of posts made by users on social media or chat tools in real time, assesses the risks, and provides appropriate rewrite suggestions to prevent the risk of a social media firestorm. The main components are as follows:
[1061] User device (PC, smartphone, etc.)
[1062] server
[1063] network
[1064] Hardware and Software
[1065] User Device
[1066] User devices are general PCs or smartphones, and posts are made through social networking apps or chat tools, so existing applications can be used.
[1067] server
[1068] The server has advanced computing resources and is capable of natural language processing (NLP) and sentiment analysis, using the following technologies:
[1069] NLP library: SpaCy or NLTK
[1070] Sentiment analysis models: VADER and BERT-based models
[1071] Rewrite candidate generation: GPT-3 and similar generative AI models
[1072] Data processing and calculation
[1073] 1. A user types a post into a social media app or chat tool and presses the "Send" button.
[1074] 2. The device temporarily caches the post and sends it to the server via an HTTP POST request.
[1075] 3. The server receives the post and uses NLP libraries to tokenize, tag parts of speech, and parse dependencies.
[1076] 4. Calculate sentiment scores using a sentiment analysis model to detect discriminatory and offensive expressions.
[1077] 5. If the risk assessment is determined to be "high," the NLP model generates candidates for rewriting to appropriate expressions.
[1078] 6. The rewrite candidates and risk assessment results are returned to the terminal in JSON format.
[1079] 7. The device analyzes this and displays the risk assessment results and rewrite suggestions to the user in a pop-up.
[1080] 8. The user corrects or confirms the information and presses the "Submit" button again.
[1081] 9. The final post content is sent to the server again, and the server executes the final post using the public API of the SNS or chat tool.
[1082] Specific examples
[1083] For example, suppose a user wants to post "This product really sucks." Here's how it works:
[1084] 1. When the user presses the "Send" button, the device sends the post to the server.
[1085] 2. The server uses an NLP library to analyze posts containing the word "shit" and calculate a sentiment score.
[1086] 3. The discriminatory and offensive expression "shit" is detected and the risk score is set to "high."
[1087] 4. The server uses an NLP model to generate a rewrite candidate such as "This product is really bad."
[1088] 5. The rewrite candidates and risk assessment results are sent back to the device and presented to the user in a pop-up.
[1089] 6. When the user confirms the changes and presses the "Send" button again, the final post is sent to the server, which then posts the content using the SNS's public API.
[1090] Examples of prompt statements
[1091] Here are some examples of prompts for generative AI models:
[1092] 1. "Please rewrite the following sentence to make it easier to read and less emotional: 'This product is crap.'"
[1093] 2. "Change the following phrase to something less offensive: 'You're completely useless.'"
[1094] 3. "Please rewrite the following comment to avoid social media outrage: 'The service here is awful.'"
[1095] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1096] Step 1: Receiving User Submissions
[1097] The device monitors user input and temporarily caches the post the moment the user hits the "send" button.
[1098] Input: Post content entered by the user on social media or chat tools
[1099] Output: Cached post content
[1100] What it does: A user types "This product is really crap" into a social media app and presses the "Send" button. This action causes the device to temporarily store the comment in memory.
[1101] Step 2: Submit your post
[1102] The device sends the cached post to the server using a standard HTTP POST request.
[1103] Input: Cached post content
[1104] Output: Post content sent as an HTTP POST request
[1105] Specific operation: The device includes the comment content saved in the body of an HTTP POST request and sends it to the server. For example, a POST request is sent to "https: / / example.com / api / v1 / analyzePost".
[1106] Step 3: Analyzing the Post Content
[1107] The server analyzes the received post content, specifically tokenizing the post content, tagging it with parts of speech, and analyzing dependencies using a natural language processing (NLP) library.
[1108] Input: Post content sent as an HTTP POST request
[1109] Output: Parsed tokens, part-of-speech tags, and dependency information
[1110] How it works: The server uses an NLP library (e.g., SpaCy or NLTK) to break down the post into words and tag each word with its part of speech. It then performs dependency analysis to analyze the dependency relationships within the sentence.
[1111] Step 4: Calculate sentiment scores and detect expressions
[1112] The server uses a sentiment analysis model to calculate a sentiment score and detect discriminatory and offensive expressions.
[1113] Input: Parsed tokens, part-of-speech tags, and dependency information
[1114] Output: Sentiment score and detected discriminatory / offensive expressions
[1115] What it does: The server uses a sentiment analysis model (e.g., a VADER- or BERT-based model) to calculate a sentiment score and detect offensive words like "shit."
[1116] Step 5: Risk assessment and generation of rewrite candidates
[1117] The server evaluates the risk of the post, and if the evaluation result is "high," it uses an NLP model to generate candidates for rewriting to appropriate expressions.
[1118] Input: Sentiment scores and detected discriminatory / offensive expressions
[1119] Output: Risk assessment results and rewrite candidates
[1120] How it works: The server assigns a high risk score to posts containing the word "shit," then uses an NLP model (e.g., GPT-3) to generate a rewrite suggestion such as "This product is really bad."
[1121] Step 6: Notification of risk assessment results and rewrite candidates
[1122] The server notifies the terminal of the risk assessment results and rewrite candidates.
[1123] Input: Risk assessment results and rewrite candidates
[1124] Output: Risk assessment results and rewrite suggestions displayed to the user
[1125] Specific operation: The server returns the risk assessment results and rewrite candidates to the terminal in JSON format.
[1126] Step 7: User warnings and suggestions
[1127] The device presents the risk assessment results and suggested rewrites to the user, who can then review the suggestions and modify the post as necessary.
[1128] Input: Risk assessment results and rewrite candidates
[1129] Output: Risk assessment results and rewrite suggestions presented to the user
[1130] Specific operation: The device analyzes the received JSON data and displays a pop-up warning message to the user with suggested rewrites. For example, in response to a post saying "This product really sucks," the system displays the message "This expression is risky. Would you like to change it to 'This product really isn't good'?"
[1131] Step 8: Submit your final post
[1132] When the user confirms the changes and presses the "Send" button again, the device will resend the revised final post to the server, and the server will post the final post content to the social networking site or chat tool.
[1133] Input: The final post content confirmed by the user
[1134] Output: The last post made to social media or chat tools
[1135] Specific operation: The user selects "Yes" in the displayed pop-up, checks the revised comment, and then presses the "Send" button again. The device then sends a final POST request to the server, which then executes the post using the SNS's public API.
[1136] (Application example 1)
[1137] 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."
[1138] There is a risk of discriminatory, offensive, or inappropriate language being used in communications between passengers in autonomous vehicles. This not only creates uncomfortable situations between passengers and operators, but also has the potential to affect the safe operation of the vehicle. Conventional systems have difficulty assessing communication risks in real time and taking appropriate measures, so this issue needs to be addressed.
[1139] 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.
[1140] In this invention, the server includes means for receiving posted content entered by a user, means for analyzing the received posted content and calculating an emotion score, means for performing a risk assessment according to the emotion score, means for generating candidates for rewriting to appropriate expressions based on the risk assessment, means for notifying the user of the risk assessment results and the candidates for rewriting, means for monitoring messages between passengers in an autonomous vehicle, means for sending a warning to a vehicle operator when a message is assessed as being high risk, and means for finally sending the corrected posted content. This makes it possible to prevent inappropriate communication in an autonomous vehicle and provide a safe and comfortable travel environment.
[1141] "Means for receiving posts entered by users" refers to a function for sending message data entered by users using devices such as smartphones or computers to a server.
[1142] The "means for analyzing the content of received posts and calculating an emotion score" is a function for analyzing received message data using natural language processing technology and emotion analysis algorithms, and deriving an emotion score from the content.
[1143] "Means for risk assessment based on emotional score" is a function for assessing the risk level of the content of posts as high, medium, low, etc. based on the emotional score.
[1144] The "means for generating candidate sentences for rewriting to more appropriate expressions based on risk assessment" is a function for generating candidate sentences for converting a user's posted content into more appropriate expressions when the risk assessment is determined to be high.
[1145] "Means for notifying users of risk assessment results and rewrite candidates" refers to a function for displaying and notifying users of the results of risk assessment and generated rewrite candidates on their devices.
[1146] "Means for monitoring messages between passengers inside an autonomous vehicle" refers to a function for monitoring chats and message exchanges between passengers inside an autonomous vehicle in real time.
[1147] The "means for sending a warning to the vehicle operator when the risk is assessed as high" is a function for sending a warning to the operator of an automated vehicle when the risk assessment of a message is determined to be high.
[1148] "Means for final transmission of corrected posted content" refers to the function for sending the final posted content corrected and confirmed by the user to the server and posting it to the designated platform.
[1149] A specific embodiment of the present invention will be described. The present invention is a system that monitors communication between passengers in an autonomous vehicle, performs risk assessment in real time, and proposes appropriate rewrite candidates. Furthermore, the system is equipped with a function to issue a warning to the vehicle operator if an incident is imminent.
[1150] System Overview
[1151] The system consists of the following main components:
[1152] User device (smartphone, tablet or in-car device)
[1153] server
[1154] network
[1155] When a passenger types a chat message inside an autonomous vehicle, the content is sent from the user's device to a server. The server receives the posted content and analyzes it using a natural language processing (NLP) library. It calculates a sentiment score using a sentiment analysis algorithm and performs a risk assessment based on the result. If the risk is high, it generates appropriate rewrite suggestions and returns them to the user's device. Furthermore, if the risk is assessed as high, it sends a warning to the vehicle operator. The user reviews the proposed rewrite suggestions, makes any necessary corrections, and confirms the final post.
[1156] Process Overview
[1157] 1. Receiving User Submissions:
[1158] The user's device monitors passenger input and temporarily caches chat messages as they are entered.
[1159] 2. Submitting your submission:
[1160] The device sends the received post to the server using a standard HTTP POST request.
[1161] 3. Analysis of posts:
[1162] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library (e.g., spaCy) to tokenize the post content, tag it with parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model (e.g., TextBlob) to calculate a sentiment score and check for discriminatory or offensive language.
[1163] 4. Risk Assessment and Feedback:
[1164] The server evaluates the risk of the posted content. If the evaluation results in a high risk, it uses an NLP model to generate candidates for rewriting to appropriate expressions. This is then sent back to the user's device. If the risk is also evaluated as high, a warning is sent to the vehicle operator.
[1165] 5. User Warnings and Suggestions:
[1166] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[1167] 6. Final Post:
[1168] The user confirms the changes and presses the send button. The terminal resends the final post with the changes to the server, and the server posts the final post to the chat system.
[1169] Specific examples
[1170] For example, consider a case where a user attempts to post "This driving is really crappy." The user device sends the post content to the server, which analyzes it. An NLP library (e.g., spaCy) is used to tokenize the post content, tag parts of speech, and perform dependency analysis. A sentiment analysis model (e.g., TextBlob) is used to detect discriminatory and offensive expressions such as "shit" and "seriously." Since the sentiment score is high, the risk assessment is set to high. The server then generates a rewrite candidate, "This driving is really bad," and sends it back to the user device. At the same time, a warning is sent to the vehicle operator. The user checks the risk assessment results and rewrite candidate on their device, makes any necessary corrections, and finally posts the revised content.
[1171] Example prompts to input to the generative AI model
[1172] "Generate rewrite suggestions when a user uses offensive language. Original message: 'This driving is seriously crap'."
[1173] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1174] Step 1:
[1175] The chat message input by the user is received by the user terminal.
[1176] Typed: Messages typed by users using their smartphones or in-car devices.
[1177] How it works: The user's device monitors message input in real time and caches the content as soon as input is complete.
[1178] Output: Temporarily cached messages.
[1179] Step 2:
[1180] The user terminal transmits the received post content to the server.
[1181] Input: The cached message of the user.
[1182] How it works: The user device sends a message to the server using an HTTP POST request.
[1183] Output: The post sent to the server.
[1184] Step 3:
[1185] The server analyzes the received post content and calculates an emotion score.
[1186] Input: The post received by the server.
[1187] How it works: The server uses a natural language processing (NLP) library (e.g., spaCy) to tokenize, tag parts of speech, and parse dependencies on the post, then uses a sentiment analysis model (e.g., TextBlob) to calculate a sentiment score.
[1188] Output: Parsed data and calculated sentiment score.
[1189] Step 4:
[1190] The server performs a risk assessment based on the sentiment score.
[1191] Input: The calculated sentiment score.
[1192] How it works: The server assesses the risk of the post based on the sentiment score. For example, if the sentiment score is high, the risk rating is set to "high."
[1193] Output: Risk assessment results.
[1194] Step 5:
[1195] The server generates appropriate rewrite candidates based on the risk assessment.
[1196] Input: Risk assessment results.
[1197] How it works: The server uses a natural language processing (NLP) model to generate appropriate rewrite suggestions when the risk assessment is high.
[1198] Output: Rewrite candidates.
[1199] Step 6:
[1200] The server transmits the risk assessment results and rewrite candidates to the user terminal.
[1201] Input: Risk assessment results and rewrite candidates.
[1202] Operation: The server sends the risk assessment results and rewrite candidates to the user's device.
[1203] Output: Risk assessment results and rewrite candidates sent to the user device.
[1204] Step 7:
[1205] The user terminal notifies the user of the risk assessment results and rewrite candidates received from the server.
[1206] Input: Risk assessment results and rewrite candidates received from the server.
[1207] Operation: The user's device displays the risk assessment results and rewrite candidates on the screen and notifies the user.
[1208] Output: Risk assessment results and rewrite suggestions notified to the user.
[1209] Step 8:
[1210] If the risk is assessed as high, the server sends a warning to the vehicle operator.
[1211] Input: Risk assessment results.
[1212] How it works: If a risk is assessed as high, the server sends a warning to the vehicle operator, either via email notification or dashboard alert.
[1213] Output: Alert sent to vehicle operator.
[1214] Step 9:
[1215] The user confirms the changes and finalizes the post.
[1216] Input: Rewrite candidates and risk assessment results notified to the user.
[1217] How it works: The user reviews the suggested rewrites, makes any necessary corrections, and then commits the final post.
[1218] Output: Final, confirmed post.
[1219] Step 10:
[1220] The user terminal transmits the corrected final post to the server again, and the server posts the final post content to the chat system.
[1221] Input: Final confirmed post.
[1222] How it works: The user device resends the last post to the server, which then posts it to the specified chat system (SNS or messaging app).
[1223] Output: The final content posted.
[1224] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1225] A specific embodiment of the present invention will be described below. The present invention is a system that analyzes the content and the user's emotions in real time when the user posts content on social networking sites or chat tools, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of a post causing a firestorm.
[1226] System Overview
[1227] The system consists of the following main components:
[1228] User device (PC, smartphone, etc.)
[1229] server
[1230] network
[1231] Emotion Engine
[1232] When a user enters content to post on a social networking site or chat tool, the content and the user's emotional data are sent from the user's device to a server. The server receives the content and emotional data, performs natural language processing (NLP) and sentiment analysis, and performs a risk assessment based on the results. If the risk is high, the server generates appropriate rewrite suggestions and returns them to the user's device. The user then reviews the suggested rewrite suggestions, makes any necessary corrections, and confirms the final post.
[1233] Program processing
[1234] 1. Receiving User Submissions
[1235] The device monitors the user's input and caches the emotion data along with the post content the moment the user completes the post (for example, when the send button is pressed).
[1236] 2. Sending post content and emotional data
[1237] The device sends the received post and emotion data to the server using a standard HTTP POST request.
[1238] 3. Analysis of posts
[1239] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library to tokenize the post content, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model to calculate a sentiment score and check whether the post contains discriminatory or offensive language. It also takes into account the results of user emotion recognition by the sentiment engine.
[1240] 4. Risk Assessment and Feedback
[1241] The server evaluates the risk of the posted content. If the evaluation result is "high," it uses an NLP model to generate rewrite candidates to appropriate expressions. The rewrite candidates and the risk evaluation result are returned to the terminal.
[1242] 5. User Warnings and Suggestions
[1243] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[1244] 6. Final Post
[1245] The user confirms the changes and presses the send button. The device then resends the final edited post to the server, which then posts the post to the social networking site or chat tool.
[1246] Specific examples
[1247] For example, consider the case where a user attempts to post "This product is really crap." The emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The device sends the emotion data along with the content of the post to the server, which analyzes it. The server detects the discriminatory and offensive expression "crap" and, since the emotion score is high, sets the risk assessment to "high." The server then generates a rewrite candidate for "This product is really no good" and sends it back to the user's device. The device presents the risk assessment result and the rewrite candidate to the user, and after the user confirms the revision, the revised content is finally posted.
[1248] In this way, the present invention combines and analyzes user posted content and emotional data to provide more accurate risk assessments and create an environment in which companies and organizations can communicate safely.
[1249] The processing flow will be explained below.
[1250] Step 1:
[1251] The user enters the content to post into the input field on a social media or chat tool.
[1252] Example: User types "This new feature is completely useless."
[1253] Step 2:
[1254] The device monitors the user's input.
[1255] Behavior: Triggered by the user pressing the "Enter" key or submit button.
[1256] Step 3:
[1257] Your device will temporarily cache your posts.
[1258] What it does: Stores the post content in a variable or temporary file.
[1259] Step 4:
[1260] The device uses an emotion engine to collect user emotion data.
[1261] How it works: It uses a camera and microphone to analyze your facial expressions and speech patterns.
[1262] Step 5:
[1263] The device calls an API to send the post content and emotion data to the server.
[1264] What it does: Sends data to the server using an HTTP POST request.
[1265] Example: Post content: "This new feature is completely useless" and send emotional data.
[1266] Step 6:
[1267] The server receives the posted content and emotion data.
[1268] What it does: Processes a POST request on an API endpoint.
[1269] Step 7:
[1270] The server analyzes the post using a natural language processing (NLP) library.
[1271] What it does: Tokenizes posts, tags them for parts of speech, and performs dependency analysis.
[1272] Step 8:
[1273] The server uses a sentiment analysis model to calculate a sentiment score for the post.
[1274] What it does: Determines if a post has a negative sentiment score.
[1275] Step 9:
[1276] The server adds the results of the user's emotion recognition by the emotion engine to the analysis.
[1277] How it works: It uses data received from the sentiment engine to adjust the sentiment score of posts.
[1278] Step 10:
[1279] The server detects discriminatory and offensive language based on specified guidelines.
[1280] What it does: Uses prefix matching and regular expressions to find inappropriate language.
[1281] Example: Detects the expression "not useful at all."
[1282] Step 11:
[1283] The server performs a risk assessment based on the profanity detected.
[1284] How it works: Assign a risk rating (e.g., high, medium, low) based on the number of profanities and sentiment score.
[1285] Step 12:
[1286] The server uses an NLP model to generate candidates for rewriting to appropriate expressions.
[1287] What it does: Masks the input sentence and suggests appropriate paraphrases.
[1288] Example: Generate a rewrite candidate: "This new feature is not as useful as expected."
[1289] Step 13:
[1290] The server returns the risk assessment results and rewrite candidates to the terminal.
[1291] Behavior: The risk assessment results and rewrite suggestions are sent to the device in JSON format.
[1292] Step 14:
[1293] The device notifies the user of the risk assessment results and rewrite candidates received from the server.
[1294] What it does: Parses the received JSON data and displays it as a popup or inline alert.
[1295] Step 15:
[1296] The user reviews the suggested rewrites and edits the post as needed.
[1297] What happens: The user sees the notification and follows the suggestions to revise their post.
[1298] Example: "This new feature isn't as useful as I hoped."
[1299] Step 16:
[1300] The user confirms the changes and presses the submit button.
[1301] Action: Click the final submit button with the final post content.
[1302] Step 17:
[1303] The device resends the final modified post to the server.
[1304] What it does: Sends data to the server using an HTTP POST request.
[1305] Step 18:
[1306] The server posts the final content via the API of the social networking site or chat tool.
[1307] Behavior: Calls the destination API and sends the confirmed post content.
[1308] Example 2
[1309] 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."
[1310] In modern society, while communication via social media and chat tools is on the rise, the risk of trouble or flame wars arising from incorrect language or emotional posts is also increasing. While systems that can prevent such trouble are needed, conventional systems have difficulty grasping the subtle nuances of emotions, resulting in low accuracy in risk assessment. The present invention aims to solve this problem by analyzing user posts and emotional data, providing highly accurate risk assessments and suggesting appropriate rewriting.
[1311] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1312] In this invention, the server includes means for receiving posted content entered by a user, means for transmitting the received posted content and emotion data, means for analyzing the received posted content, calculating an emotion score, and detecting discriminatory or offensive language, means for assessing risk based on the emotion score and the detected discriminatory or offensive language, means for generating candidates for rewriting to appropriate language based on the risk assessment, means for notifying the user of the risk assessment results and the candidate rewrites, and means for finally transmitting the corrected posted content. This makes it possible to combine the user's posted content and emotion data for highly accurate analysis and prevent risky posts from being made.
[1313] A "user" is an individual who uses the system to post on social media or chat tools.
[1314] "Post content" refers to the text data that users enter into social media or chat tools.
[1315] "Emotion data" is data that represents emotions obtained from the user's facial expressions, voice, etc.
[1316] The "server" is a computer system that analyzes the posted content and emotional data, performs risk assessment, and generates appropriate rewrite candidates.
[1317] "Means for receiving" refers to the hardware and software configuration for collecting the posted content entered by users.
[1318] "Transmission means" refers to the hardware and software configuration for transmitting the received post content and emotion data to the server.
[1319] The "means for analysis" refers to the software configuration for analyzing the received post content using a natural language processing library and a sentiment analysis model.
[1320] The "emotion score" is a numerical representation of the intensity of emotion obtained from the analysis of the content of the post.
[1321] "Risk assessment" is the process of determining the risk level of a post based on the sentiment score and any detected discriminatory or offensive language.
[1322] "Rewrite candidates" are candidates for new posting content that have been converted into appropriate expressions based on the risk assessment results.
[1323] "Means for notifying" refers to the hardware and software configuration for presenting the risk assessment results and rewrite candidates to the user.
[1324] "Means for sending" refers to the hardware and software configuration for sending the final, corrected post back to the server and ultimately posting it to the social networking site or chat tool.
[1325] This system analyzes the content and user sentiment in real time when users post content on social networking sites or chat tools, assesses the risk, and provides appropriate rewrite suggestions to prevent posts from becoming a hot topic.The system is composed of key components such as user terminals, servers, networks, and an emotion engine.
[1326] First, when a user types content into a social networking site or chat tool, the user's device monitors the input and caches it. At the same time, the user's facial expressions and voice data are collected as emotion data. This data is then sent by the device to the server. Specifically, it is sent using a standard HTTP POST request.
[1327] On the server side, the received post content and sentiment data are analyzed. Natural language processing (NLP) libraries such as SpaCy and NLTK are used to tokenize text, tag parts of speech, and analyze dependencies. Furthermore, sentiment analysis models such as BERT and RoBERTa are used to calculate sentiment scores. Based on the analysis results, the post content is checked to see if it contains discriminatory or offensive language. The sentiment engine also takes into account the results of user sentiment recognition.
[1328] Risk assessment is performed based on the analysis results. If the sentiment score is high and the content contains discriminatory or offensive language, the risk assessment value is set to "high." If the risk is assessed as high, the server generates appropriate rewrite candidates using NLP models or generative AI models. The generated rewrite candidates and risk assessment results are sent back to the device.
[1329] The user's device receives the risk assessment results and suggests rewrites from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary. Once the user confirms the modifications, the device sends the final post back to the server, which then posts it to the social networking site or chat tool.
[1330] As a concrete example, consider the case where a user attempts to post "This product really sucks." At this point, the emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The device sends the post content and emotion data to the server, which analyzes this data using analysis tools such as SpaCy or BERT. The server detects the offensive expression "shit" and, since the emotion score is high, sets the risk assessment to "high." Next, it generates a rewrite candidate for "This product really sucks" and sends it back to the user's device. The user reviews the proposed rewrite candidate, makes any necessary corrections, and posts the revised version.
[1331] Example prompt sentence:
[1332] A user attempts to post "This product is really crap." The emotion engine recognizes emotions such as anger and irritation from the user's facial expressions and voice. The post content and emotion data are sent to the server and analyzed using a natural language processing library. Discriminatory and offensive expressions are detected, and the emotion score is high, so the risk assessment is "high." The server generates a rewrite candidate, "This product is really no good," and sends it back to the user's device. The device presents the risk assessment result and rewrite candidate to the user. The user corrects the post and submits it.
[1333] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1334] Step 1:
[1335] The device monitors user input and caches the content of the post and emotional data the moment the post is completed. When a user types "This product really sucks" into a social networking site or chat tool and presses the send button, the device temporarily saves the text data (posted content) and also caches the user's facial expression and voice data (emotional data) collected through the camera and microphone.
[1336] Input: User posted text, facial expression image data, voice data
[1337] Output: Cached post content and sentiment data
[1338] Step 2:
[1339] The device sends the cached post content and emotion data to the server. Specifically, it uses a standard HTTP POST request to create a packet containing text data, image data, and audio data, and sends it over the network to the server.
[1340] Input: Cached post content and sentiment data
[1341] Output: HTTP POST request sent to the server
[1342] Step 3:
[1343] The server analyzes the received post content and sentiment data. First, it uses a natural language processing (NLP) library (e.g., SpaCy) to tokenize the text data, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model (e.g., BERT) to calculate a sentiment score from the text data. Finally, it inputs image and audio data into the sentiment engine to recognize the user's emotional state.
[1344] Input: Received post text and sentiment data
[1345] Output: Text tokenization data, sentiment score, and recognized emotional state
[1346] Step 4:
[1347] The server performs a risk assessment of the post content based on the analysis results. If the sentiment score is high and discriminatory or offensive language is detected, the risk assessment value is set to "high." Using the database of analysis results, posts that are assessed as high risk are given a special flag.
[1348] Input: Tokenized text data, sentiment scores, and recognized emotional states
[1349] Output: Risk assessment results
[1350] Step 5:
[1351] If the risk assessment is set to "high," the server uses a generative AI model (e.g., GPT) to generate rewrite candidates to appropriate expressions. For example, it converts the expression "shit" to a more appropriate expression such as "not good." The generated rewrite candidates are sent to the device along with the risk assessment result.
[1352] Input: Risk assessment results, analyzed text data
[1353] Output: Rewrite candidates, risk assessment results
[1354] Step 6:
[1355] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. A pop-up window appears on the user's screen, displaying a message such as "This product contains high-risk language. Please use this instead: 'This product is really bad.'"
[1356] Input: Risk assessment results, rewrite candidates
[1357] Output: Message to be displayed to the user
[1358] Step 7:
[1359] The user checks the suggested rewrites and edits the post as necessary. Then, they press the send button again. The edits are confirmed, and the device sends the final post to the server again.
[1360] Input: Check the rewrite suggestions and correct the post
[1361] Output: Corrected final post data
[1362] Step 8:
[1363] The server receives the final, corrected content and posts it to the social networking site or chat tool. It calls the social networking site's API and posts the appropriately corrected content.
[1364] Input: Corrected last submitted data
[1365] Output: Posting to social media or chat tools completed
[1366] (Application example 2)
[1367] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1368] User posts on social media and chat tools often contain emotional expressions and offensive language, which poses the risk of causing outrage. This problem requires a method to mitigate the risk in real time, as inappropriate comments can have a negative impact on other users and society. Existing technologies have not provided a satisfactory solution to this issue.
[1369] 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.
[1370] In this invention, the server includes means for receiving post content entered by a user, means for analyzing the received post content and calculating an emotion score, means for assessing risk according to the emotion score, means for generating candidates for rewriting to appropriate expressions based on the risk assessment, means for notifying the user of the risk assessment results and the candidates for rewriting, means for finally transmitting the corrected post content, and means for assessing the risk of a flame war using the generative AI model together with the emotion score and providing a prompt message. This enables a more accurate risk assessment by combining and analyzing the user's post content and emotion data, thereby reducing the risk of a flame war.
[1371] "Post content entered by the user" refers to the text or message that the user is trying to send on social media, chat tools, etc.
[1372] The "emotion score" is a numerical value that indicates the emotion expressed in a user's post based on its content.
[1373] "Risk assessment" refers to the use of an analyzed emotion score to assess the degree of risk that a post poses to other users or society as a whole.
[1374] "Rewrite suggestions" are suggested alternative texts to change the content of a post to more appropriate expression when the risk assessment is high.
[1375] A "generative AI model" is a trained model that uses artificial intelligence to analyze user posts and generate rewrite candidates.
[1376] A "prompt" is a suggested text output by a generative AI model to correct or complement a user's post.
[1377] A specific embodiment of the present invention will be described. The present invention is a system that analyzes the content and user sentiment in real time when a user posts content on social networking sites or chat tools, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of a post causing a firestorm. This system is composed of the following main elements.
[1378] System configuration
[1379] The system includes a user terminal, a server, and a network. The user terminal is a device such as a PC or smartphone that users use to post to social media or chat tools. The server is a central processing unit that analyzes the content of posts and emotional data, and the network is responsible for data communication between the user terminal and the server.
[1380] Hardware and software used
[1381] User devices: PC, smartphone
[1382] Server: A server with high-performance CPU and memory
[1383] Emotion Engine: Huggin Face emotion analysis model
[1384] Natural Language Processing (NLP) Library: TextBlob
[1385] Network: HTTP / HTTPS protocol
[1386] Processing Description
[1387] Receiving user posts
[1388] The user device monitors the content that the user enters into social media or chat tools, caches the content each time the user starts posting, and sends the content along with emotion data to the server the moment the user completes the post (for example, when the "send" button is pressed).
[1389] Sending post content and emotion data
[1390] The user device sends the received post content and emotion data to the server using a standard HTTP POST request.
[1391] Analysis of post content
[1392] The server analyzes the received post using a natural language processing (NLP) library. Specifically, it tokenizes the post, tags it with parts of speech, and performs dependency analysis. It then uses an emotion engine (Hugging Face's emotion analysis model) to calculate an emotion score and perform a risk assessment. During this process, it checks to see if the post contains any discriminatory or offensive language.
[1393] Risk assessment and rewrite candidate generation
[1394] The server uses a generative AI model along with the sentiment score to assess the risk of a controversy, and generates a rewrite suggestion using a prompt sentence if the risk is high. For example, if a user attempts to post "This video is terrible," the server determines the result of sentiment analysis as "NEGATIVE" and sets the risk to "High." In this case, the server generates a rewrite suggestion as "The content of this video is not very good."
[1395] Notification of risk assessment results and rewrite candidates
[1396] The server returns the risk assessment result and rewrite candidates to the user terminal, and notifies the user of the risk assessment result and rewrite candidates.
[1397] Last post by user
[1398] The user's device presents the risk assessment results and rewrite suggestions received from the server to the user, and after the user makes appropriate corrections, the final post is confirmed and sent.
[1399] Specific examples
[1400] For example, if a user tries to post "This product is really crap," the emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The user's device sends the emotion data along with the content of the post to the server, and the server detects the discriminatory and offensive expression "crap." Since the emotion score is also high, the server sets the risk assessment to "high." The server then generates a suggested rewrite, "This product is really no good," and sends it back to the user's device. Through this series of steps, the user can make appropriate corrections and finally post the corrected content.
[1401] In this way, the present invention combines and analyzes the content posted by users with emotional data to provide more accurate risk assessments and create an environment in which companies and organizations can communicate safely.
[1402] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1403] Step 1:
[1404] The device receives the content posted by the user on social media or chat tools. The moment the user presses the send button, the content of the post is cached along with the user's emotional data. The input is text or a message from the user, and the output is the content of the post and the emotional data temporarily stored in memory.
[1405] Step 2:
[1406] The device sends the received post content and emotion data to the server. The post content and emotion data are sent to the server via the network using a standard HTTP POST request. The input is the cached post content and emotion data, and the output is the data sent to the server.
[1407] Step 3:
[1408] The server analyzes the received post content. First, it uses TextBlob, a natural language processing (NLP) library, to tokenize the post content, tag it with parts of speech, and perform dependency analysis. Then it uses a sentiment analysis model (Hugging Face's emotion engine) to calculate the sentiment score of the post content. The input is the post content received via an HTTP POST request, and the output is a sentiment score.
[1409] Step 4:
[1410] The server performs a risk assessment based on the emotion score. If the emotion score is high, the risk assessment is set to "high," and if it is low, it is set to "low." It then uses a generative AI model to assess the risk of flame wars and generate appropriate prompts. The input is the emotion score, and the output is a risk assessment and a prompt.
[1411] Step 5:
[1412] The server returns the risk assessment results and the prompt text generated as a rewrite candidate to the terminal. The results are sent to the terminal via an HTTP response. The input is the risk assessment results and the prompt text, and the data is sent to the terminal as output.
[1413] Step 6:
[1414] The terminal presents the risk assessment results and prompts received from the server to the user. The user checks the proposed rewrites and makes corrections as necessary. The input is the risk assessment results and prompts received from the server, and the data presented to the user is generated as the output.
[1415] Step 7:
[1416] When the user confirms the changes and presses the send button again, the device resends the final revised post to the server. The server then posts the final revised post to the SNS or chat tool. The input is the final post revised by the user, and the output is the post to the SNS or chat tool.
[1417] This detailed processing step allows users to make appropriate edits before posting, preventing the risk of a backlash.
[1418] 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.
[1419] 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.
[1420] 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.
[1421] [Fourth embodiment]
[1422] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1423] 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.
[1424] 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).
[1425] 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.
[1426] 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.
[1427] 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).
[1428] 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.
[1429] 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.
[1430] 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.
[1431] 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.
[1432] 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.
[1433] 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.
[1434] 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."
[1435] The following describes a specific embodiment of the present invention. The present invention is a system that analyzes the content of posts made by users on social networking sites or chat tools in real time, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of posts causing a firestorm.
[1436] System Overview
[1437] The system consists of the following main components:
[1438] User device (PC, smartphone, etc.)
[1439] server
[1440] network
[1441] When a user enters content to post on a social networking site or chat tool, the content is sent from the user's device to a server. The server receives the content, performs natural language processing (NLP) and sentiment analysis, and performs a risk assessment based on the results. If the risk is high, the server generates appropriate rewrite suggestions and returns them to the user's device. The user then reviews the suggested rewrite suggestions, makes any necessary corrections, and confirms the final post.
[1442] Program processing
[1443] 1. Receiving User Submissions
[1444] The device monitors the user's input and temporarily caches the post the moment the user completes the post (for example, when the submit button is pressed).
[1445] 2. Submitting your submission
[1446] The device sends the received post to the server using a standard HTTP POST request.
[1447] 3. Analysis of posts
[1448] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library to tokenize the post content, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model to calculate a sentiment score and check whether the post contains discriminatory or offensive language.
[1449] 4. Risk Assessment and Feedback
[1450] The server evaluates the risk of the posted content. If the evaluation result is "high," it uses an NLP model to generate rewrite candidates to appropriate expressions. The rewrite candidates and the risk evaluation result are returned to the terminal.
[1451] 5. User Warnings and Suggestions
[1452] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[1453] 6. Final Post
[1454] The user confirms the changes and presses the send button. The device then resends the final edited post to the server, which then posts the final post to the social networking site or chat tool.
[1455] Specific examples
[1456] For example, consider the case where a user tries to post "This product is really crap." The device sends the post content to the server, which analyzes it. The server detects the discriminatory and offensive expression "crap" and sets the risk assessment to "high" because the emotion score is high. The server then generates a rewrite candidate for "This product is really no good" and sends this back to the user's device. The device presents the risk assessment result and the rewrite candidate to the user, and after the user confirms the revision, the revised content is finally posted.
[1457] In this way, the present invention prevents the risk of flame wars caused by comments made on social media or chat tools, and provides an environment in which companies and organizations can communicate safely.
[1458] The processing flow will be explained below.
[1459] Step 1:
[1460] The user enters the content to post into the input field on a social media or chat tool.
[1461] Example: User types "This new feature is completely useless."
[1462] Step 2:
[1463] The device monitors the user's input.
[1464] Behavior: Triggered by the user pressing the "Enter" key or submit button.
[1465] Step 3:
[1466] Your device will temporarily cache your posts.
[1467] What it does: Stores the post content in a variable or temporary file.
[1468] Step 4:
[1469] The device calls an API to send the post content to the server.
[1470] What it does: Sends data to the server using an HTTP POST request.
[1471] Example: Send a post saying "This new feature is completely useless."
[1472] Step 5:
[1473] The server receives the submitted content.
[1474] What it does: Processes a POST request on an API endpoint.
[1475] Step 6:
[1476] The server analyzes the post using a natural language processing (NLP) library.
[1477] What it does: Tokenizes, tags parts of speech, and parses dependencies.
[1478] Step 7:
[1479] The server uses a sentiment analysis model to calculate a sentiment score for the post.
[1480] What it does: Determines if a post has a negative sentiment score.
[1481] Step 8:
[1482] The server detects discriminatory and offensive language based on specified guidelines.
[1483] What it does: Uses prefix matching and regular expressions to find inappropriate language.
[1484] Example: Detects the expression "not useful at all."
[1485] Step 9:
[1486] The server performs a risk assessment based on the profanity detected.
[1487] How it works: Assign a risk rating (e.g., high, medium, low) based on the number of profanities and sentiment score.
[1488] Step 10:
[1489] The server uses an NLP model to generate candidates for rewriting to appropriate expressions.
[1490] What it does: Masks the input sentence and suggests appropriate paraphrases.
[1491] Example: Generate a rewrite candidate: "This new feature is not as useful as expected."
[1492] Step 11:
[1493] The server returns the risk assessment results and rewrite candidates to the terminal.
[1494] Behavior: The risk assessment results and rewrite suggestions are sent to the device in JSON format.
[1495] Step 12:
[1496] The device notifies the user of the risk assessment results and rewrite candidates received from the server.
[1497] What it does: Parses the received JSON data and displays it as a popup or inline alert.
[1498] Step 13:
[1499] The user reviews the suggested rewrites and edits the post as needed.
[1500] What happens: The user sees the notification and follows the suggestions to revise their post.
[1501] Example: "This new feature isn't as useful as I hoped."
[1502] Step 14:
[1503] The user confirms the changes and presses the submit button.
[1504] Action: Click the final submit button with the final post content.
[1505] Step 15:
[1506] The device resends the final modified post to the server.
[1507] What it does: Sends data to the server using an HTTP POST request.
[1508] Step 16:
[1509] The server posts the final content via the API of the social networking site or chat tool.
[1510] Behavior: Calls the destination API and sends the confirmed post content.
[1511] Example 1
[1512] 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."
[1513] In today's social media and chat tools, there is a growing risk that users may unintentionally post discriminatory or offensive language, sparking outrage and misunderstandings. This could potentially damage the reputation of individuals and companies. There is a need for a system that can solve this problem and enable users to communicate safely and smoothly.
[1514] 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.
[1515] In this invention, the server includes means for receiving post content entered by a user, means for temporarily caching the received post content, means for transmitting the received post content, means for analyzing the received post content and performing natural language processing, means for calculating an emotion score based on the natural language processing and detecting discriminatory or offensive language, means for assessing risk based on the emotion score, means for generating candidates for rewriting to appropriate language if the risk assessment is "high," means for notifying the user of the risk assessment result and the candidate rewrites, and means for the user to confirm the revisions and finally transmit the revised post content. This makes it possible to detect discriminatory or offensive language before a user posts and rewrite it to safe language.
[1516] "Means for receiving posts entered by users" refers to a function that allows the system to obtain text data entered by users in the interface of social networking sites or chat tools.
[1517] The "means for temporarily caching received posted content" is a storage means for holding posted content received from users for a short period of time and using it for subsequent processing.
[1518] The "means for transmitting received posted content" is a communication means for transferring cached posted content to an external analysis device such as a server.
[1519] "Means for analyzing received post content and performing natural language processing" refers to a function that analyzes posted text data using natural language processing techniques such as tokenization, part-of-speech tagging, and dependency analysis.
[1520] "Means for calculating emotion scores based on natural language processing and detecting discriminatory or offensive expressions" refers to a function that uses an emotion analysis model to calculate emotion scores based on analyzed text data and further determines whether specific expressions are discriminatory or offensive.
[1521] The "means for performing risk assessment according to the emotion score" is a function for assessing the risk level of text based on the emotion score and setting a risk level such as "high" as necessary.
[1522] "Means for generating candidates for rewriting to appropriate expressions when the risk assessment is 'high'" is a function that uses an NLP model to generate candidates for correcting posts that are judged to have a high risk assessment to expressions that are not problematic.
[1523] "Means for notifying users of risk assessment results and suggested revisions" is a function that displays the assessment results and suggested revisions to users and prompts them to confirm that they wish to correct the posted content.
[1524] "Means for users to confirm the revisions and finally send the revised post" refers to a function that allows users to accept the proposed revisions and then finally send the revised post to social media or chat tools.
[1525] System Overview
[1526] This system analyzes the content of posts made by users on social media or chat tools in real time, assesses the risks, and provides appropriate rewrite suggestions to prevent the risk of a social media firestorm. The main components are as follows:
[1527] User device (PC, smartphone, etc.)
[1528] server
[1529] network
[1530] Hardware and Software
[1531] User Device
[1532] User devices are general PCs or smartphones, and posts are made through social networking apps or chat tools, so existing applications can be used.
[1533] server
[1534] The server has advanced computing resources and is capable of natural language processing (NLP) and sentiment analysis, using the following technologies:
[1535] NLP library: SpaCy or NLTK
[1536] Sentiment analysis models: VADER and BERT-based models
[1537] Rewrite candidate generation: GPT-3 and similar generative AI models
[1538] Data processing and calculation
[1539] 1. A user types a post into a social media app or chat tool and presses the "Send" button.
[1540] 2. The device temporarily caches the post and sends it to the server via an HTTP POST request.
[1541] 3. The server receives the post and uses NLP libraries to tokenize, tag parts of speech, and parse dependencies.
[1542] 4. Calculate sentiment scores using a sentiment analysis model to detect discriminatory and offensive expressions.
[1543] 5. If the risk assessment is determined to be "high," the NLP model generates candidates for rewriting to appropriate expressions.
[1544] 6. The rewrite candidates and risk assessment results are returned to the terminal in JSON format.
[1545] 7. The device analyzes this and displays the risk assessment results and rewrite suggestions to the user in a pop-up.
[1546] 8. The user corrects or confirms the information and presses the "Submit" button again.
[1547] 9. The final post content is sent to the server again, and the server executes the final post using the public API of the SNS or chat tool.
[1548] Specific examples
[1549] For example, suppose a user wants to post "This product really sucks." Here's how it works:
[1550] 1. When the user presses the "Send" button, the device sends the post to the server.
[1551] 2. The server uses an NLP library to analyze posts containing the word "shit" and calculate a sentiment score.
[1552] 3. The discriminatory and offensive expression "shit" is detected and the risk score is set to "high."
[1553] 4. The server uses an NLP model to generate a rewrite candidate such as "This product is really bad."
[1554] 5. The rewrite candidates and risk assessment results are sent back to the device and presented to the user in a pop-up.
[1555] 6. When the user confirms the changes and presses the "Send" button again, the final post is sent to the server, which then posts the content using the SNS's public API.
[1556] Examples of prompt statements
[1557] Here are some examples of prompts for generative AI models:
[1558] 1. "Please rewrite the following sentence to make it easier to read and less emotional: 'This product is crap.'"
[1559] 2. "Change the following phrase to something less offensive: 'You're completely useless.'"
[1560] 3. "Please rewrite the following comment to avoid social media outrage: 'The service here is awful.'"
[1561] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1562] Step 1: Receiving User Submissions
[1563] The device monitors user input and temporarily caches the post the moment the user hits the "send" button.
[1564] Input: Post content entered by the user on social media or chat tools
[1565] Output: Cached post content
[1566] What it does: A user types "This product is really crap" into a social media app and presses the "Send" button. This action causes the device to temporarily store the comment in memory.
[1567] Step 2: Submit your post
[1568] The device sends the cached post to the server using a standard HTTP POST request.
[1569] Input: Cached post content
[1570] Output: Post content sent as an HTTP POST request
[1571] Specific operation: The device includes the comment content saved in the body of an HTTP POST request and sends it to the server. For example, a POST request is sent to "https: / / example.com / api / v1 / analyzePost".
[1572] Step 3: Analyzing the Post Content
[1573] The server analyzes the received post content, specifically tokenizing the post content, tagging it with parts of speech, and analyzing dependencies using a natural language processing (NLP) library.
[1574] Input: Post content sent as an HTTP POST request
[1575] Output: Parsed tokens, part-of-speech tags, and dependency information
[1576] How it works: The server uses an NLP library (e.g., SpaCy or NLTK) to break down the post into words and tag each word with its part of speech. It then performs dependency analysis to analyze the dependency relationships within the sentence.
[1577] Step 4: Calculate sentiment scores and detect expressions
[1578] The server uses a sentiment analysis model to calculate a sentiment score and detect discriminatory and offensive expressions.
[1579] Input: Parsed tokens, part-of-speech tags, and dependency information
[1580] Output: Sentiment score and detected discriminatory / offensive expressions
[1581] What it does: The server uses a sentiment analysis model (e.g., a VADER- or BERT-based model) to calculate a sentiment score and detect offensive words like "shit."
[1582] Step 5: Risk assessment and generation of rewrite candidates
[1583] The server evaluates the risk of the post, and if the evaluation result is "high," it uses an NLP model to generate candidates for rewriting to appropriate expressions.
[1584] Input: Sentiment scores and detected discriminatory / offensive expressions
[1585] Output: Risk assessment results and rewrite candidates
[1586] How it works: The server assigns a high risk score to posts containing the word "shit," then uses an NLP model (e.g., GPT-3) to generate a rewrite suggestion such as "This product is really bad."
[1587] Step 6: Notification of risk assessment results and rewrite candidates
[1588] The server notifies the terminal of the risk assessment results and rewrite candidates.
[1589] Input: Risk assessment results and rewrite candidates
[1590] Output: Risk assessment results and rewrite suggestions displayed to the user
[1591] Specific operation: The server returns the risk assessment results and rewrite candidates to the terminal in JSON format.
[1592] Step 7: User warnings and suggestions
[1593] The device presents the risk assessment results and suggested rewrites to the user, who can then review the suggestions and modify the post as necessary.
[1594] Input: Risk assessment results and rewrite candidates
[1595] Output: Risk assessment results and rewrite suggestions presented to the user
[1596] Specific operation: The device analyzes the received JSON data and displays a pop-up warning message to the user with suggested rewrites. For example, in response to a post saying "This product really sucks," the system displays the message "This expression is risky. Would you like to change it to 'This product really isn't good'?"
[1597] Step 8: Submit your final post
[1598] When the user confirms the changes and presses the "Send" button again, the device resends the revised final post to the server, and the server posts the final post content to the social networking site or chat tool.
[1599] Input: The final post content confirmed by the user
[1600] Output: The last post made to social media or chat tools
[1601] Specific operation: The user selects "Yes" in the displayed pop-up, checks the revised comment, and then presses the "Send" button again. The device then sends a final POST request to the server, which then executes the post using the SNS's public API.
[1602] (Application example 1)
[1603] 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."
[1604] There is a risk of discriminatory, offensive, or inappropriate language being used in communications between passengers in autonomous vehicles. This not only creates uncomfortable situations between passengers and operators, but also has the potential to affect the safe operation of the vehicle. Conventional systems have difficulty assessing communication risks in real time and taking appropriate measures, so this issue needs to be addressed.
[1605] 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.
[1606] In this invention, the server includes means for receiving posted content entered by a user, means for analyzing the received posted content and calculating an emotion score, means for performing a risk assessment according to the emotion score, means for generating candidates for rewriting to appropriate expressions based on the risk assessment, means for notifying the user of the risk assessment results and the candidates for rewriting, means for monitoring messages between passengers in an autonomous vehicle, means for sending a warning to a vehicle operator when a message is assessed as being high risk, and means for finally sending the corrected posted content. This makes it possible to prevent inappropriate communication in an autonomous vehicle and provide a safe and comfortable travel environment.
[1607] "Means for receiving posts entered by users" refers to a function for sending message data entered by users using devices such as smartphones or computers to a server.
[1608] The "means for analyzing the content of received posts and calculating an emotion score" is a function for analyzing received message data using natural language processing technology and emotion analysis algorithms, and deriving an emotion score from the content.
[1609] "Means for risk assessment based on emotional score" is a function for assessing the risk level of the content of posts as high, medium, low, etc. based on the emotional score.
[1610] The "means for generating candidate sentences for rewriting to more appropriate expressions based on risk assessment" is a function for generating candidate sentences for converting a user's posted content into more appropriate expressions when the risk assessment is determined to be high.
[1611] "Means for notifying users of risk assessment results and rewrite candidates" refers to a function for displaying and notifying users of the results of risk assessment and generated rewrite candidates on their devices.
[1612] "Means for monitoring messages between passengers inside an autonomous vehicle" refers to a function for monitoring chats and message exchanges between passengers inside an autonomous vehicle in real time.
[1613] The "means for sending a warning to the vehicle operator when the risk is assessed as high" is a function for sending a warning to the operator of an automated vehicle when the risk assessment of a message is determined to be high.
[1614] "Means for final transmission of corrected posted content" refers to the function for sending the final posted content corrected and confirmed by the user to the server and posting it to the designated platform.
[1615] A specific embodiment of the present invention will be described. The present invention is a system that monitors communication between passengers in an autonomous vehicle, performs risk assessment in real time, and proposes appropriate rewrite candidates. Furthermore, the system is equipped with a function to issue a warning to the vehicle operator if an incident is imminent.
[1616] System Overview
[1617] The system consists of the following main components:
[1618] User device (smartphone, tablet or in-car device)
[1619] server
[1620] network
[1621] When a passenger types a chat message inside an autonomous vehicle, the content is sent from the user's device to a server. The server receives the posted content and analyzes it using a natural language processing (NLP) library. It calculates a sentiment score using a sentiment analysis algorithm and performs a risk assessment based on the result. If the risk is high, it generates appropriate rewrite suggestions and returns them to the user's device. Furthermore, if the risk is assessed as high, it sends a warning to the vehicle operator. The user reviews the proposed rewrite suggestions, makes any necessary corrections, and confirms the final post.
[1622] Process Overview
[1623] 1. Receiving User Submissions:
[1624] The user's device monitors passenger input and temporarily caches chat messages as they are entered.
[1625] 2. Submitting your submission:
[1626] The device sends the received post to the server using a standard HTTP POST request.
[1627] 3. Analysis of posts:
[1628] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library (e.g., spaCy) to tokenize the post content, tag it with parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model (e.g., TextBlob) to calculate a sentiment score and check for discriminatory or offensive language.
[1629] 4. Risk Assessment and Feedback:
[1630] The server evaluates the risk of the posted content. If the evaluation results in a high risk, it uses an NLP model to generate candidates for rewriting to appropriate expressions. This is then sent back to the user's device. If the risk is also evaluated as high, a warning is sent to the vehicle operator.
[1631] 5. User Warnings and Suggestions:
[1632] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[1633] 6. Final Post:
[1634] The user confirms the changes and presses the send button. The terminal resends the final post with the changes to the server, and the server posts the final post to the chat system.
[1635] Specific examples
[1636] For example, consider a case where a user attempts to post "This driving is really crappy." The user device sends the post content to the server, which analyzes it. An NLP library (e.g., spaCy) is used to tokenize the post content, tag parts of speech, and perform dependency analysis. A sentiment analysis model (e.g., TextBlob) is used to detect discriminatory and offensive expressions such as "shit" and "seriously." Since the sentiment score is high, the risk assessment is set to high. The server then generates a rewrite candidate, "This driving is really bad," and sends it back to the user device. At the same time, a warning is sent to the vehicle operator. The user checks the risk assessment results and rewrite candidate on their device, makes any necessary corrections, and finally posts the revised content.
[1637] Example prompts to input to the generative AI model
[1638] "Generate rewrite suggestions when a user uses offensive language. Original message: 'This driving is seriously crap'."
[1639] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1640] Step 1:
[1641] The chat message input by the user is received by the user terminal.
[1642] Typed: Messages typed by users using their smartphones or in-car devices.
[1643] How it works: The user's device monitors message input in real time and caches the content as soon as input is complete.
[1644] Output: Temporarily cached messages.
[1645] Step 2:
[1646] The user terminal transmits the received post content to the server.
[1647] Input: The cached message of the user.
[1648] How it works: The user device sends a message to the server using an HTTP POST request.
[1649] Output: The post sent to the server.
[1650] Step 3:
[1651] The server analyzes the received post content and calculates an emotion score.
[1652] Input: The post received by the server.
[1653] How it works: The server uses a natural language processing (NLP) library (e.g., spaCy) to tokenize, tag parts of speech, and parse dependencies on the post, then uses a sentiment analysis model (e.g., TextBlob) to calculate a sentiment score.
[1654] Output: Parsed data and calculated sentiment score.
[1655] Step 4:
[1656] The server performs a risk assessment based on the sentiment score.
[1657] Input: The calculated sentiment score.
[1658] How it works: The server assesses the risk of the post based on the sentiment score. For example, if the sentiment score is high, the risk rating is set to "high."
[1659] Output: Risk assessment results.
[1660] Step 5:
[1661] The server generates appropriate rewrite candidates based on the risk assessment.
[1662] Input: Risk assessment results.
[1663] How it works: The server uses a natural language processing (NLP) model to generate appropriate rewrite suggestions when the risk assessment is high.
[1664] Output: Rewrite candidates.
[1665] Step 6:
[1666] The server transmits the risk assessment results and rewrite candidates to the user terminal.
[1667] Input: Risk assessment results and rewrite candidates.
[1668] Operation: The server sends the risk assessment results and rewrite candidates to the user's device.
[1669] Output: Risk assessment results and rewrite candidates sent to the user device.
[1670] Step 7:
[1671] The user terminal notifies the user of the risk assessment results and rewrite candidates received from the server.
[1672] Input: Risk assessment results and rewrite candidates received from the server.
[1673] Operation: The user's device displays the risk assessment results and rewrite candidates on the screen and notifies the user.
[1674] Output: Risk assessment results and rewrite suggestions notified to the user.
[1675] Step 8:
[1676] If the risk is assessed as high, the server sends a warning to the vehicle operator.
[1677] Input: Risk assessment results.
[1678] How it works: If a risk is assessed as high, the server sends a warning to the vehicle operator, either via email notification or dashboard alert.
[1679] Output: Alert sent to vehicle operator.
[1680] Step 9:
[1681] The user confirms the changes and finalizes the post.
[1682] Input: Rewrite candidates and risk assessment results notified to the user.
[1683] How it works: The user reviews the suggested rewrites, makes any necessary corrections, and then commits the final post.
[1684] Output: Final, confirmed post.
[1685] Step 10:
[1686] The user terminal transmits the corrected final post to the server again, and the server posts the final post content to the chat system.
[1687] Input: Final confirmed post.
[1688] How it works: The user device resends the last post to the server, which then posts it to the specified chat system (SNS or messaging app).
[1689] Output: The final content posted.
[1690] 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.
[1691] A specific embodiment of the present invention will be described below. The present invention is a system that analyzes the content and the user's emotions in real time when the user posts content on social networking sites or chat tools, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of a post causing a firestorm.
[1692] System Overview
[1693] The system consists of the following main components:
[1694] User device (PC, smartphone, etc.)
[1695] server
[1696] network
[1697] Emotion Engine
[1698] When a user enters content to post on a social networking site or chat tool, the content and the user's emotional data are sent from the user's device to a server. The server receives the content and emotional data, performs natural language processing (NLP) and sentiment analysis, and performs a risk assessment based on the results. If the risk is high, the server generates appropriate rewrite suggestions and returns them to the user's device. The user then reviews the suggested rewrite suggestions, makes any necessary corrections, and confirms the final post.
[1699] Program processing
[1700] 1. Receiving User Submissions
[1701] The device monitors the user's input and caches the emotion data along with the post content the moment the user completes the post (for example, when the send button is pressed).
[1702] 2. Sending post content and emotional data
[1703] The device sends the received post and emotion data to the server using a standard HTTP POST request.
[1704] 3. Analysis of posts
[1705] The server analyzes the received post content. Specifically, it uses a natural language processing (NLP) library to tokenize the post content, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model to calculate a sentiment score and check whether the post contains discriminatory or offensive language. It also takes into account the results of user emotion recognition by the sentiment engine.
[1706] 4. Risk Assessment and Feedback
[1707] The server evaluates the risk of the posted content. If the evaluation result is "high," it uses an NLP model to generate rewrite candidates to appropriate expressions. The rewrite candidates and the risk evaluation result are returned to the terminal.
[1708] 5. User Warnings and Suggestions
[1709] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary.
[1710] 6. Final Post
[1711] The user confirms the changes and presses the send button. The device then resends the final edited post to the server, which then posts the post to the social networking site or chat tool.
[1712] Specific examples
[1713] For example, consider the case where a user attempts to post "This product is really crap." The emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The device sends the emotion data along with the content of the post to the server, which analyzes it. The server detects the discriminatory and offensive expression "crap" and, since the emotion score is high, sets the risk assessment to "high." The server then generates a rewrite candidate for "This product is really no good" and sends it back to the user's device. The device presents the risk assessment result and the rewrite candidate to the user, and after the user confirms the revision, the revised content is finally posted.
[1714] In this way, the present invention combines and analyzes user posted content and emotional data to provide more accurate risk assessments and create an environment in which companies and organizations can communicate safely.
[1715] The processing flow will be explained below.
[1716] Step 1:
[1717] The user enters the content to post into the input field on a social media or chat tool.
[1718] Example: User types "This new feature is completely useless."
[1719] Step 2:
[1720] The device monitors the user's input.
[1721] Behavior: Triggered by the user pressing the "Enter" key or submit button.
[1722] Step 3:
[1723] Your device will temporarily cache your posts.
[1724] What it does: Stores the post content in a variable or temporary file.
[1725] Step 4:
[1726] The device uses an emotion engine to collect user emotion data.
[1727] How it works: It uses a camera and microphone to analyze your facial expressions and speech patterns.
[1728] Step 5:
[1729] The device calls an API to send the post content and emotion data to the server.
[1730] What it does: Sends data to the server using an HTTP POST request.
[1731] Example: Post content: "This new feature is completely useless" and send emotional data.
[1732] Step 6:
[1733] The server receives the posted content and emotion data.
[1734] What it does: Processes a POST request on an API endpoint.
[1735] Step 7:
[1736] The server analyzes the post using a natural language processing (NLP) library.
[1737] What it does: Tokenizes posts, tags them for parts of speech, and performs dependency analysis.
[1738] Step 8:
[1739] The server uses a sentiment analysis model to calculate a sentiment score for the post.
[1740] What it does: Determines if a post has a negative sentiment score.
[1741] Step 9:
[1742] The server adds the results of the user's emotion recognition by the emotion engine to the analysis.
[1743] How it works: It uses data received from the sentiment engine to adjust the sentiment score of posts.
[1744] Step 10:
[1745] The server detects discriminatory and offensive language based on specified guidelines.
[1746] What it does: Uses prefix matching and regular expressions to find inappropriate language.
[1747] Example: Detects the expression "not useful at all."
[1748] Step 11:
[1749] The server performs a risk assessment based on the profanity detected.
[1750] How it works: Assign a risk rating (e.g., high, medium, low) based on the number of profanities and sentiment score.
[1751] Step 12:
[1752] The server uses an NLP model to generate candidates for rewriting to appropriate expressions.
[1753] What it does: Masks the input sentence and suggests appropriate paraphrases.
[1754] Example: Generate a rewrite candidate: "This new feature is not as useful as expected."
[1755] Step 13:
[1756] The server returns the risk assessment results and rewrite candidates to the terminal.
[1757] Behavior: The risk assessment results and rewrite suggestions are sent to the device in JSON format.
[1758] Step 14:
[1759] The device notifies the user of the risk assessment results and rewrite candidates received from the server.
[1760] What it does: Parses the received JSON data and displays it as a popup or inline alert.
[1761] Step 15:
[1762] The user reviews the suggested rewrites and edits the post as needed.
[1763] What happens: The user sees the notification and follows the suggestions to revise their post.
[1764] Example: "This new feature isn't as useful as I hoped."
[1765] Step 16:
[1766] The user confirms the changes and presses the submit button.
[1767] Action: Click the final submit button with the final post content.
[1768] Step 17:
[1769] The device resends the final modified post to the server.
[1770] What it does: Sends data to the server using an HTTP POST request.
[1771] Step 18:
[1772] The server posts the final content via the API of the social networking site or chat tool.
[1773] Behavior: Calls the destination API and sends the confirmed post content.
[1774] Example 2
[1775] 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."
[1776] In modern society, while communication via social media and chat tools is on the rise, the risk of trouble or flame wars arising from incorrect language or emotional posts is also increasing. While systems that can prevent such trouble are needed, conventional systems have difficulty grasping the subtle nuances of emotions, resulting in low accuracy in risk assessment. The present invention aims to solve this problem by analyzing user posts and emotional data, providing highly accurate risk assessments and suggesting appropriate rewriting.
[1777] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1778] In this invention, the server includes means for receiving posted content entered by a user, means for transmitting the received posted content and emotion data, means for analyzing the received posted content, calculating an emotion score, and detecting discriminatory or offensive language, means for assessing risk based on the emotion score and the detected discriminatory or offensive language, means for generating candidates for rewriting to appropriate language based on the risk assessment, means for notifying the user of the risk assessment results and the candidate rewrites, and means for finally transmitting the corrected posted content. This makes it possible to combine the user's posted content and emotion data for highly accurate analysis and prevent risky posts from being made.
[1779] A "user" is an individual who uses the system to post on social media or chat tools.
[1780] "Post content" refers to the text data that users enter into social media or chat tools.
[1781] "Emotion data" is data that represents emotions obtained from the user's facial expressions, voice, etc.
[1782] The "server" is a computer system that analyzes the posted content and emotional data, performs risk assessment, and generates appropriate rewrite candidates.
[1783] "Means for receiving" refers to the hardware and software configuration for collecting the posted content entered by users.
[1784] "Transmission means" refers to the hardware and software configuration for transmitting the received post content and emotion data to the server.
[1785] The "means for analysis" refers to the software configuration for analyzing the received post content using a natural language processing library and a sentiment analysis model.
[1786] The "emotion score" is a numerical representation of the intensity of emotion obtained from the analysis of the content of the post.
[1787] "Risk assessment" is the process of determining the risk level of a post based on the sentiment score and any detected discriminatory or offensive language.
[1788] "Rewrite candidates" are candidates for new posting content that have been converted into appropriate expressions based on the risk assessment results.
[1789] "Means for notifying" refers to the hardware and software configuration for presenting the risk assessment results and rewrite candidates to the user.
[1790] "Means for sending" refers to the hardware and software configuration for sending the final, corrected post back to the server and ultimately posting it to the social networking site or chat tool.
[1791] This system analyzes the content and user sentiment in real time when users post content on social networking sites or chat tools, assesses the risk, and provides appropriate rewrite suggestions to prevent posts from becoming a hot topic.The system is composed of key components such as user terminals, servers, networks, and an emotion engine.
[1792] First, when a user types content into a social networking site or chat tool, the user's device monitors the input and caches it. At the same time, the user's facial expressions and voice data are collected as emotion data. This data is then sent by the device to the server. Specifically, it is sent using a standard HTTP POST request.
[1793] On the server side, the received post content and sentiment data are analyzed. Natural language processing (NLP) libraries such as SpaCy and NLTK are used to tokenize text, tag parts of speech, and analyze dependencies. Furthermore, sentiment analysis models such as BERT and RoBERTa are used to calculate sentiment scores. Based on the analysis results, the post content is checked to see if it contains discriminatory or offensive language. The sentiment engine also takes into account the results of user sentiment recognition.
[1794] Risk assessment is performed based on the analysis results. If the sentiment score is high and the content contains discriminatory or offensive language, the risk assessment value is set to "high." If the risk is assessed as high, the server generates appropriate rewrite candidates using NLP models or generative AI models. The generated rewrite candidates and risk assessment results are sent back to the device.
[1795] The user's device receives the risk assessment results and suggests rewrites from the server and presents them to the user. The user checks the suggestions and modifies the post as necessary. Once the user confirms the modifications, the device sends the final post back to the server, which then posts it to the social networking site or chat tool.
[1796] As a concrete example, consider the case where a user attempts to post "This product really sucks." At this point, the emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The device sends the post content and emotion data to the server, which analyzes this data using analysis tools such as SpaCy or BERT. The server detects the offensive expression "shit" and, since the emotion score is high, sets the risk assessment to "high." Next, it generates a rewrite candidate for "This product really sucks" and sends it back to the user's device. The user reviews the proposed rewrite candidate, makes any necessary corrections, and posts the revised version.
[1797] Example prompt sentence:
[1798] A user attempts to post "This product is really crap." The emotion engine recognizes emotions such as anger and irritation from the user's facial expressions and voice. The post content and emotion data are sent to the server and analyzed using a natural language processing library. Discriminatory and offensive expressions are detected, and the emotion score is high, so the risk assessment is "high." The server generates a rewrite candidate, "This product is really no good," and sends it back to the user's device. The device presents the risk assessment result and rewrite candidate to the user. The user corrects the post and submits it.
[1799] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1800] Step 1:
[1801] The device monitors user input and caches the content of the post and emotional data the moment the post is completed. When a user types "This product really sucks" into a social networking site or chat tool and presses the send button, the device temporarily saves the text data (posted content) and also caches the user's facial expression and voice data (emotional data) collected through the camera and microphone.
[1802] Input: User posted text, facial expression image data, voice data
[1803] Output: Cached post content and sentiment data
[1804] Step 2:
[1805] The device sends the cached post content and emotion data to the server. Specifically, it uses a standard HTTP POST request to create a packet containing text data, image data, and audio data, and sends it over the network to the server.
[1806] Input: Cached post content and sentiment data
[1807] Output: HTTP POST request sent to the server
[1808] Step 3:
[1809] The server analyzes the received post content and sentiment data. First, it uses a natural language processing (NLP) library (e.g., SpaCy) to tokenize the text data, tag parts of speech, and analyze dependencies. Next, it uses a sentiment analysis model (e.g., BERT) to calculate a sentiment score from the text data. Finally, it inputs image and audio data into the sentiment engine to recognize the user's emotional state.
[1810] Input: Received post text and sentiment data
[1811] Output: Text tokenization data, sentiment score, and recognized emotional state
[1812] Step 4:
[1813] The server performs a risk assessment of the post content based on the analysis results. If the sentiment score is high and discriminatory or offensive language is detected, the risk assessment value is set to "high." Using the database of analysis results, posts that are assessed as high risk are given a special flag.
[1814] Input: Tokenized text data, sentiment scores, and recognized emotional states
[1815] Output: Risk assessment results
[1816] Step 5:
[1817] If the risk assessment is set to "high," the server uses a generative AI model (e.g., GPT) to generate rewrite candidates to appropriate expressions. For example, it converts the expression "shit" to a more appropriate expression such as "not good." The generated rewrite candidates are sent to the device along with the risk assessment result.
[1818] Input: Risk assessment results, analyzed text data
[1819] Output: Rewrite candidates, risk assessment results
[1820] Step 6:
[1821] The device receives the risk assessment results and rewrite suggestions from the server and presents them to the user. A pop-up window appears on the user's screen, displaying a message such as "This product contains high-risk language. Please use this instead: 'This product is really bad.'"
[1822] Input: Risk assessment results, rewrite candidates
[1823] Output: Message to be displayed to the user
[1824] Step 7:
[1825] The user checks the suggested rewrites and edits the post as necessary. Then, they press the send button again. The edits are confirmed, and the device sends the final post to the server again.
[1826] Input: Check the rewrite suggestions and correct the post
[1827] Output: Corrected final post data
[1828] Step 8:
[1829] The server receives the final, corrected content and posts it to the social networking site or chat tool. It calls the social networking site's API and posts the appropriately corrected content.
[1830] Input: Corrected last submitted data
[1831] Output: Posting to social media or chat tools completed
[1832] (Application example 2)
[1833] 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."
[1834] User posts on social media and chat tools often contain emotional expressions and offensive language, which poses the risk of causing outrage. This problem requires a method to mitigate the risk in real time, as inappropriate comments can have a negative impact on other users and society. Existing technologies have not provided a satisfactory solution to this issue.
[1835] 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.
[1836] In this invention, the server includes means for receiving post content entered by a user, means for analyzing the received post content and calculating an emotion score, means for assessing risk according to the emotion score, means for generating candidates for rewriting to appropriate expressions based on the risk assessment, means for notifying the user of the risk assessment results and the candidates for rewriting, means for finally transmitting the corrected post content, and means for assessing the risk of a flame war using the generative AI model together with the emotion score and providing a prompt message. This enables a more accurate risk assessment by combining and analyzing the user's post content and emotion data, thereby reducing the risk of a flame war.
[1837] "Post content entered by the user" refers to the text or message that the user is trying to send on social media, chat tools, etc.
[1838] The "emotion score" is a numerical value that indicates the emotion expressed in a user's post based on its content.
[1839] "Risk assessment" refers to the use of an analyzed emotion score to assess the degree of risk that a post poses to other users or society as a whole.
[1840] "Rewrite suggestions" are suggested alternative texts to change the content of a post to more appropriate expression when the risk assessment is high.
[1841] A "generative AI model" is a trained model that uses artificial intelligence to analyze user posts and generate rewrite candidates.
[1842] A "prompt" is a suggested text output by a generative AI model to correct or complement a user's post.
[1843] A specific embodiment of the present invention will be described. The present invention is a system that analyzes the content and user sentiment in real time when a user posts content on social networking sites or chat tools, evaluates the risk, and provides appropriate rewrite suggestions to prevent the risk of a post causing a firestorm. This system is composed of the following main elements.
[1844] System configuration
[1845] The system includes a user terminal, a server, and a network. The user terminal is a device such as a PC or smartphone that users use to post to social media or chat tools. The server is a central processing unit that analyzes the content of posts and emotional data, and the network is responsible for data communication between the user terminal and the server.
[1846] Hardware and software used
[1847] User devices: PC, smartphone
[1848] Server: A server with high-performance CPU and memory
[1849] Emotion Engine: Huggin Face emotion analysis model
[1850] Natural Language Processing (NLP) Library: TextBlob
[1851] Network: HTTP / HTTPS protocol
[1852] Processing Description
[1853] Receiving user posts
[1854] The user device monitors the content that the user enters into social media or chat tools, caches the content each time the user starts posting, and sends the content along with emotion data to the server the moment the user completes the post (for example, when the "send" button is pressed).
[1855] Sending post content and emotion data
[1856] The user device sends the received post content and emotion data to the server using a standard HTTP POST request.
[1857] Analysis of post content
[1858] The server analyzes the received post using a natural language processing (NLP) library. Specifically, it tokenizes the post, tags it with parts of speech, and performs dependency analysis. It then uses an emotion engine (Hugging Face's emotion analysis model) to calculate an emotion score and perform a risk assessment. During this process, it checks to see if the post contains any discriminatory or offensive language.
[1859] Risk assessment and rewrite candidate generation
[1860] The server uses a generative AI model along with the sentiment score to assess the risk of a controversy, and generates a rewrite suggestion using a prompt sentence if the risk is high. For example, if a user attempts to post "This video is terrible," the server determines the result of sentiment analysis as "NEGATIVE" and sets the risk to "High." In this case, the server generates a rewrite suggestion as "The content of this video is not very good."
[1861] Notification of risk assessment results and rewrite candidates
[1862] The server returns the risk assessment result and rewrite candidates to the user terminal, and notifies the user of the risk assessment result and rewrite candidates.
[1863] Last post by user
[1864] The user's device presents the risk assessment results and rewrite suggestions received from the server to the user, and after the user makes appropriate corrections, the final post is confirmed and sent.
[1865] Specific examples
[1866] For example, if a user tries to post "This product is really crap," the emotion engine recognizes emotions such as anger or irritation from the user's facial expressions and voice. The user's device sends the emotion data along with the content of the post to the server, and the server detects the discriminatory and offensive expression "crap." Since the emotion score is also high, the server sets the risk assessment to "high." The server then generates a suggested rewrite, "This product is really no good," and sends it back to the user's device. Through this series of steps, the user can make appropriate corrections and finally post the corrected content.
[1867] In this way, the present invention combines and analyzes the content posted by users with emotional data to provide more accurate risk assessments and create an environment in which companies and organizations can communicate safely.
[1868] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1869] Step 1:
[1870] The device receives the content posted by the user on social media or chat tools. The moment the user presses the send button, the content of the post is cached along with the user's emotional data. The input is text or a message from the user, and the output is the content of the post and the emotional data temporarily stored in memory.
[1871] Step 2:
[1872] The device sends the received post content and emotion data to the server. The post content and emotion data are sent to the server via the network using a standard HTTP POST request. The input is the cached post content and emotion data, and the output is the data sent to the server.
[1873] Step 3:
[1874] The server analyzes the received post content. First, it uses TextBlob, a natural language processing (NLP) library, to tokenize the post content, tag it with parts of speech, and perform dependency analysis. Then it uses a sentiment analysis model (Hugging Face's emotion engine) to calculate the sentiment score of the post content. The input is the post content received via an HTTP POST request, and the output is a sentiment score.
[1875] Step 4:
[1876] The server performs a risk assessment based on the emotion score. If the emotion score is high, the risk assessment is set to "high," and if it is low, it is set to "low." It then uses a generative AI model to assess the risk of flame wars and generate appropriate prompts. The input is the emotion score, and the output is a risk assessment and a prompt.
[1877] Step 5:
[1878] The server returns the risk assessment results and the prompt text generated as a rewrite candidate to the terminal. The results are sent to the terminal via an HTTP response. The input is the risk assessment results and the prompt text, and the data is sent to the terminal as output.
[1879] Step 6:
[1880] The terminal presents the risk assessment results and prompts received from the server to the user. The user checks the proposed rewrites and makes corrections as necessary. The input is the risk assessment results and prompts received from the server, and the data presented to the user is generated as the output.
[1881] Step 7:
[1882] When the user confirms the changes and presses the send button again, the device resends the final revised post to the server. The server then posts the final revised post to the SNS or chat tool. The input is the final post revised by the user, and the output is the post to the SNS or chat tool.
[1883] This detailed processing step allows users to make appropriate edits before posting, preventing the risk of a backlash.
[1884] 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.
[1885] 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.
[1886] 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.
[1887] 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.
[1888] 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.
[1889] 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.
[1890] 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).
[1891] 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.
[1892] 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."
[1893] 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.
[1894] 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).
[1895] 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.
[1896] 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.
[1897] 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.
[1898] 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.
[1899] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1900] 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.
[1901] 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.
[1902] 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.
[1903] 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.
[1904] 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.
[1905] The following is further disclosed regarding the above embodiment.
[1906] (Claim 1)
[1907] A means for receiving user-entered postings;
[1908] A means for analyzing received posts and calculating an emotion score;
[1909] a means for performing a risk assessment according to the sentiment score;
[1910] A means for generating candidates for rewriting to appropriate expressions based on a risk assessment;
[1911] a means for notifying the user of the risk assessment results and rewrite candidates;
[1912] A means for final submission of the revised submission; and
[1913] A system including:
[1914] (Claim 2)
[1915] 10. The system of claim 1, further comprising means for detecting discriminatory or offensive language based on specified guidelines.
[1916] (Claim 3)
[1917] 10. The system of claim 1, further comprising means for setting the risk assessment value to "high" if the sentiment score is high.
[1918] "Example 1"
[1919] (Claim 1)
[1920] A means for receiving user-entered postings;
[1921] A means of temporarily caching received posts;
[1922] a means for transmitting received posts;
[1923] A means for analyzing received posts and performing natural language processing;
[1924] A means for calculating an emotion score based on natural language processing and detecting discriminatory or offensive expressions;
[1925] a means for performing a risk assessment according to the sentiment score;
[1926] a means for generating candidates for rewriting to appropriate expressions when the risk assessment is "high";
[1927] a means for notifying the user of the risk assessment results and rewrite candidates;
[1928] A means for the user to confirm the corrections and finally submit the corrected post;
[1929] A system including:
[1930] (Claim 2)
[1931] 10. The system of claim 1, further comprising means for detecting discriminatory or offensive language based on specified guidelines.
[1932] (Claim 3)
[1933] 2. The system of claim 1, further comprising means for setting the risk assessment value to "high" if the risk assessment is set to "high."
[1934] "Application Example 1"
[1935] (Claim 1)
[1936] A means for receiving user-entered postings;
[1937] A means for analyzing received posts and calculating an emotion score;
[1938] a means for performing a risk assessment according to the sentiment score;
[1939] A means for generating candidates for rewriting to appropriate expressions based on a risk assessment;
[1940] a means for notifying the user of the risk assessment results and rewrite candidates;
[1941] a means for monitoring messages between passengers in the self-driving vehicle;
[1942] a means of sending a warning to the vehicle operator when the risk is assessed as high;
[1943] A means for final submission of the revised submission; and
[1944] A system including:
[1945] (Claim 2)
[1946] 10. The system of claim 1, further comprising means for detecting discriminatory or offensive language based on specified guidelines.
[1947] (Claim 3)
[1948] 10. The system of claim 1, further comprising means for setting the risk assessment value to "high" if the sentiment score is high.
[1949] "Example 2: Combining Emotion Engines"
[1950] (Claim 1)
[1951] A means for receiving user-entered postings;
[1952] a means for transmitting received post content and emotion data;
[1953] A means for analyzing received posts, calculating sentiment scores, and detecting discriminatory or offensive expressions;
[1954] a means for performing a risk assessment based on the emotion score and the detected discriminatory or offensive language;
[1955] A means for generating candidates for rewriting to appropriate expressions based on a risk assessment;
[1956] a means for notifying the user of the risk assessment results and rewrite candidates;
[1957] A means for final submission of the revised submission; and
[1958] A system including:
[1959] (Claim 2)
[1960] 10. The system of claim 1, further comprising means for detecting discriminatory or offensive language based on specified guidelines.
[1961] (Claim 3)
[1962] 10. The system of claim 1, further comprising means for setting the risk assessment value to "high" if the sentiment score is high.
[1963] "Application example 2 when combining emotion engines"
[1964] (Claim 1)
[1965] A means for receiving user-entered postings;
[1966] A means for analyzing received posts and calculating an emotion score;
[1967] a means for performing a risk assessment according to the sentiment score;
[1968] A means for generating candidates for rewriting to appropriate expressions based on a risk assessment;
[1969] a means for notifying the user of the risk assessment results and rewrite candidates;
[1970] A means for final submission of the revised submission; and
[1971] A means for assessing flame risk using a generative AI model together with a sentiment score and providing prompts;
[1972] A system including:
[1973] (Claim 2)
[1974] 10. The system of claim 1, further comprising means for detecting discriminatory or offensive language based on specified guidelines.
[1975] (Claim 3)
[1976] 2. The system according to claim 1, further comprising means for setting a risk assessment value to "high" if the emotion score is high, and for generating a prompt sentence as a candidate for rewriting. [Explanation of symbols]
[1977] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. A means for receiving user-entered postings; A means for analyzing received posts and calculating an emotion score; a means for performing a risk assessment according to the sentiment score; A means for generating candidates for rewriting to appropriate expressions based on a risk assessment; a means for notifying the user of the risk assessment results and rewrite candidates; A means for final submission of the revised submission; and A system including:
2. The system of claim 1 further comprising means for detecting discriminatory or offensive language based on specified guidelines.
3. The system of claim 1 , further comprising means for setting the risk assessment value to “high” if the sentiment score is high.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A