system
A system that analyzes user-input symptoms to identify medical conditions and locate facilities addresses the need for immediate medical guidance, enhancing user confidence and reducing anxiety by providing accurate and timely healthcare information.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-10-01
- Publication Date
- 2026-04-13
AI Technical Summary
There is a lack of systems that provide immediate medical information and guidance to users when they feel unwell, leading to anxiety and confusion due to the inability to quickly identify medical conditions and locate appropriate facilities.
A system that allows users to input symptoms, analyze them using natural language processing, identify medical conditions, generate appropriate treatments and advice, and locate the nearest medical facility based on user location, utilizing a server and terminal devices.
Enables users to quickly obtain accurate medical information and find suitable medical facilities, reducing anxiety and confusion by providing immediate and relevant healthcare guidance.
Smart Images

Figure 2026063782000001_ABST
Abstract
Description
Technical Field
[0004] , , , ,
[0005] , , , , ,
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a method for controlling a persona chatbot, which is performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a 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
Summary of the Invention
[0006] "Symptoms" refer to the specific physical or mental conditions that a user experiences when they feel unwell.
[0007] "Means for inputting symptoms" refers to an interface that allows users to provide the system with information about their health problems.
[0008] "Analysis" refers to the process of deriving useful information and conclusions based on the symptoms that have been entered.
[0009] "Medical condition" refers to the possible health state or type of illness identified based on the analyzed symptoms.
[0010] "Methods for identifying medical conditions" refers to the process of analyzing the entered symptoms to detect what kind of illness or health problem might be suspected.
[0011] "Treatment" refers to the methods or means recommended to improve or treat a specific medical condition.
[0012] "Advice" refers to appropriate guidelines and precautions provided based on a specific medical condition.
[0013] "Means of generation" refers to the process of creating new information or results based on data and information.
[0014] "Location information" refers to data indicating the current geographical location of a user.
[0015] "Medical facility" refers to a place that provides medical services such as a hospital or a clinic.
[0016] "Means for searching for the nearest medical facility" refers to the process of finding the medical facility closest to the user based on the user's location information.
[0017] "Means for providing" refers to the method or process for conveying the generated information or results to the user.
Brief Description of the Drawings
[0018] [Figure 1] It is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] It is a conceptual diagram showing an example of the main functions of a data processing device and a smart device according to the first embodiment. [Figure 3] It is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] It is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] [[ID=B]]It shows an emotion map to which a plurality of emotions are mapped. [Figure 10] It shows an emotion map to which a plurality of emotions are mapped. [Figure 11]It is a sequence diagram showing the processing flow of the data processing system in Embodiment 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Embodiment 2 when the emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when the emotion engine is combined.
Mode for Carrying Out the Invention
[0019] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described in accordance with the accompanying drawings.
[0020] First, the terms used in the following description will be explained.
[0021] In the following embodiments, a numbered processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), etc.
[0022] In the following embodiments, a numbered RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a work memory by the processor.
[0023] In the following embodiments, the signed storage is one or more non-volatile storage devices that store various programs and various parameters. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes.
[0024] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0025] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0026] [First Embodiment]
[0027] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0028] As shown in Figure 1, the 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 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0030] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0031] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and 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 perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0033] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0034] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0035] As shown in Figure 2, in the data processing device 12, a specific processing 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" related to the technology of this 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 according to the specific processing program 56 executed on the RAM 30.
[0036] The storage 32 stores the data generation model 58 and the 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 processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0038] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0039] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms, identifies the medical condition, and provides appropriate treatment and advice. The system is designed to enable users to quickly and easily obtain medical information and find appropriate medical facilities.
[0040] User symptom input
[0041] When a user feels unwell, they input their symptoms into the application using their device (smartphone or computer). For example, a user might input, "I have a severe headache and feel nauseous."
[0042] Submit the entered symptoms
[0043] The terminal sends the entered symptom data to the server. The data is generally sent in a standard format such as JSON.
[0044] Symptom analysis
[0045] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing techniques (such as NLTK or spaCy) to extract keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[0046] Matching symptoms with disease state
[0047] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. For example, if "headache" and "nausea" are extracted, "migraine" and "food poisoning" may be identified as possible conditions.
[0048] Generating valid phrases
[0049] The server generates treatments and advice based on the identified medical condition. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as, "It is recommended that you stay well-hydrated and rest in a dark place. Also, if your symptoms persist, please see a doctor," might be generated.
[0050] Obtaining user location information
[0051] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. This location information is used by the system to search for the nearest medical facility.
[0052] Search for the nearest medical facility
[0053] Based on the acquired location information, the server searches for the nearest medical facility using an internal database or an external API (for example, Google® Places API). The server generates a list of the nearest hospitals and clinics as search results.
[0054] Information transmission and display
[0055] The server sends the generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and visit the nearest medical facility if necessary.
[0056] Specific example
[0057] For example, if user A enters "I have a fever and a cough" into the terminal, the terminal sends these symptoms to the server. The server analyzes the keywords "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay well-hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the terminal along with a list of the nearest medical facilities. The terminal displays this information to user A, allowing user A to take appropriate action.
[0058] This invention allows users to quickly obtain accurate medical information and, if necessary, find the nearest medical facility. This can reduce anxiety and confusion when feeling unwell.
[0059] The following describes the processing flow.
[0060] Step 1:
[0061] The user enters their symptoms of illness into an application on their device.
[0062] Example: Enter the text "I have a terrible headache and feel nauseous."
[0063] Step 2:
[0064] The terminal sends the entered symptom data to the server in JSON format.
[0065] Example of data to be sent:
[0066] json
[0067] {
[0068] "Symptoms": "Severe headache and nausea",
[0069] "user_id": "12345"
[0070] }
[0071] Step 3:
[0072] The server passes the received JSON data to the parsing module. The parsing module uses a natural language processing library (e.g., NLTK or spaCy) to extract keywords such as "headache" and "nausea."
[0073] example:
[0074] Python
[0075] Symptoms = "Severe headache and nausea"
[0076] keywords = extract_keywords(symptoms)
[0077] Keywords -> ["headache", "nausea"]
[0078] Step 4:
[0079] The server compares the extracted keywords with a list of symptoms and conditions in its internal database. This identifies the recognized medical condition.
[0080] example:
[0081] Python
[0082] possible_conditions = find_conditions(keywords)
[0083] possible_conditions -> ["Migraine", "Food poisoning", "Tension headache"]
[0084] Step 5:
[0085] The server retrieves effective phrases and treatments corresponding to possible medical conditions from its internal database and generates appropriate advice.
[0086] example:
[0087] Python
[0088] advice = generate_advice(possible_conditions)
[0089] Advice -> "We recommend staying well-hydrated and resting in a dark place. If symptoms persist, please consult a doctor."
[0090] Step 6:
[0091] If the user allows the device to access their current location, the device will use its GPS function to obtain that location information.
[0092] Examples of location information obtained:
[0093] json
[0094] {
[0095] "latitude": "35.6895",
[0096] "longitude": "139.6917"
[0097] }
[0098] Step 7:
[0099] Based on the location information acquired by the server, the system searches for the nearest medical facility using an internal database or an external API (e.g., Google Places API).
[0100] example:
[0101] Python
[0102] hospitals = find_nearby_hospitals(latitude, longitude)
[0103] hospitals -> [{"name": "AA Clinic", "address": "XXXX"}, {"name": "BB Hospital", "address": "YYYY"}]
[0104] Step 8:
[0105] The server sends advice on valid phrases and information on the nearest medical facilities to the terminal in JSON format.
[0106] Example of data to be sent:
[0107] json
[0108] {
[0109] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. If symptoms persist, please consult a doctor."
[0110] "hospitals": [
[0111] {"name": "AA Clinic", "address": "XXXX"},
[0112] {"name": "BB Hospital", "address": "YYYY"}
[0113] ]
[0114] }
[0115] Step 9:
[0116] The device displays the information it receives on the user interface. The user can read the advice and, if necessary, go to the displayed hospital.
[0117] (Example 1)
[0118] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0119] In recent years, obtaining quick and accurate medical information when feeling unwell has become extremely important, but there is a lack of systems that provide information to help users immediately find medical facilities or take appropriate initial action. Furthermore, because there is no system that predicts the condition of a person's illness and guides them to appropriate treatments and the nearest medical facilities simply by inputting their symptoms, users are prone to anxiety and confusion.
[0120] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0121] In this invention, the server includes means for the user to input symptoms, means for transmitting the input symptom data to a processing device, means for analyzing the transmitted symptom data using natural language processing technology to extract keywords for the symptoms, means for searching a database based on the extracted keywords to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for acquiring the user's location information, means for searching for the nearest medical facility based on the location information, and means for providing the generated treatments, advice, and medical facility information to the user. This enables the user to quickly and accurately obtain medical information and easily find the nearest medical facility.
[0122] A "user" refers to a person who uses the system to input symptoms.
[0123] "Symptom data" refers to specific information about the user's physical ailments, and is generally provided in text format.
[0124] "Natural language processing technology" refers to techniques that enable computers to understand and analyze human language. Examples include keyword extraction and semantic analysis of texts.
[0125] "Keywords" refer to important words or phrases extracted from symptom data.
[0126] A "database" refers to a collection of information that aggregates and allows for searching and referencing information about medical conditions and symptoms.
[0127] "Medical condition" refers to diseases or health conditions related to the symptoms entered by the user, as identified through analysis and matching.
[0128] "Treatment" refers to appropriate medical procedures or methods for a specific medical condition.
[0129] "Advice" refers to suggestions and recommended actions provided to the user based on their identified medical condition.
[0130] "Location information" refers to data on the user's current location obtained using GPS functionality, etc.
[0131] A "medical facility" refers to a place that provides medical services, such as a hospital or clinic.
[0132] A "processing device" refers to a computer system that operates on a server or cloud, and is a device that receives, analyzes, processes, and provides data.
[0133] A "server" refers to a computer system that receives, analyzes, and processes data within a system and provides the results.
[0134] "Terminal" refers to a smartphone, computer, or other device used by a user to access the system and input / display data.
[0135] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms, identifies the medical condition, and then provides appropriate treatment methods and advice. The system is designed to allow users to quickly and easily obtain medical information and find appropriate medical facilities.
[0136] User symptom input
[0137] When a user feels unwell, they launch the application using a device such as a smartphone or computer and enter their specific symptoms in text format. For example, the user might enter information such as, "I have a severe headache and feel nauseous."
[0138] Submit the entered symptoms
[0139] The terminal sends the entered symptom data to the server. This data is typically transmitted over the network using a standard format such as JSON.
[0140] Symptom analysis
[0141] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing techniques (e.g., NLTK or spaCy) to extract important keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[0142] Matching symptoms with disease state
[0143] The server searches its internal medical database based on keywords extracted by the analysis module to identify related medical conditions. For example, if the keywords are "headache" and "nausea," the database will search for conditions such as "migraine" and "food poisoning."
[0144] Generating advice
[0145] Based on the identified medical condition, the server retrieves and generates appropriate treatments and advice from its internal database. For example, it might generate a message such as, "We recommend staying well-hydrated and resting in a dark place. If symptoms persist, please consult a doctor."
[0146] Obtaining user location information
[0147] If the user allows location information sharing, the device uses its GPS function to obtain the user's current location. Specific location information such as "Latitude 35.6895, Longitude 139.6917 (Tokyo)" will be obtained.
[0148] Search for the nearest medical facility
[0149] The server uses the acquired location information to search for the nearest medical facilities using an internal database or an external API (e.g., Google Places API). For example, it might search for "the nearest clinics and hospitals in Tokyo" and generate a list of them.
[0150] Information transmission and display
[0151] The server sends generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on its user interface, providing it in a format that is easy for the user to understand. For example, based on the received information, it might display something like, "Stay hydrated and get some rest. The nearest medical facility is XX Clinic (Address: 1-1-1 Chiyoda-ku, Tokyo, Phone number: 03-1234-5678)."
[0152] Specific example
[0153] For example, if user A enters "I have a fever and a cough" into the terminal, the terminal sends this symptom data to the server. The server analyzes keywords such as "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay well-hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the terminal along with a list of the nearest medical facilities. The terminal displays this information to user A, allowing user A to take appropriate action.
[0154] Example of a prompt
[0155] "User A entered 'I have a fever and a cough' into the terminal. Please generate appropriate treatment options, advice, and information on the nearest medical facility."
[0156] "User B entered 'I'm experiencing persistent abdominal pain and diarrhea.' Please tell me what kind of medical condition this could be."
[0157] This invention allows users to quickly and accurately obtain medical information and find the nearest medical facility as needed. This can reduce anxiety and confusion when feeling unwell.
[0158] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0159] Processing flow divided into processing steps
[0160] Step 1:
[0161] The user enters their symptoms.
[0162] When a user feels unwell, they use their smartphone or computer to enter their symptoms into the application. For example, they might enter specific symptoms such as "I have a severe headache and feel nauseous." The entered data is saved in JSON format.
[0163] input:
[0164] User symptom information (text)
[0165] output:
[0166] Entered symptom data (JSON format)
[0167] Step 2:
[0168] The entered symptom data is sent to the server.
[0169] The terminal sends the entered symptom data to the server. The transmission protocol uses HTTP or HTTPS, and the data is sent in JSON format.
[0170] input:
[0171] Entered symptom data (JSON format)
[0172] output:
[0173] Completed sending of symptom data to the server.
[0174] Step 3:
[0175] Receiving and analyzing symptom data
[0176] The server receives symptom data sent from the terminal and passes it to the analysis module. The analysis module uses natural language processing technology (e.g., NLTK or spaCy) to extract keywords from the symptom data. For example, keywords such as "headache" and "nausea" may be extracted.
[0177] input:
[0178] Submitted symptom data (in JSON format)
[0179] output:
[0180] Extracted keywords (list)
[0181] Step 4:
[0182] Database matching of symptom keywords
[0183] The server searches its internal medical database based on the extracted keywords to identify related medical conditions. For example, for the keywords "headache" and "nausea," possible medical conditions identified might include "migraine" and "food poisoning."
[0184] input:
[0185] Extracted keywords (list)
[0186] output:
[0187] Identified medical conditions (list)
[0188] Step 5:
[0189] Generating treatment methods and advice
[0190] Based on the identified medical condition, the server retrieves and generates appropriate treatments and advice from a database. For example, it might generate advice such as, "Drink plenty of fluids and rest. If symptoms persist, see a doctor."
[0191] input:
[0192] Identified medical conditions (list)
[0193] output:
[0194] Generated advice (text)
[0195] Step 6:
[0196] Obtaining user location information
[0197] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. For example, it will obtain location information such as "Latitude 35.6895, Longitude 139.6917 (Tokyo)".
[0198] input:
[0199] GPS location information acquisition permission
[0200] output:
[0201] User location information (latitude, longitude)
[0202] Step 7:
[0203] Search for the nearest medical facility
[0204] The server uses its internal database or an external API (such as the Google Places API) based on the acquired location information to search for the nearest medical facilities. For example, it might search for "the nearest clinics and hospitals in Tokyo" and generate a list of them.
[0205] input:
[0206] User location information (latitude, longitude)
[0207] output:
[0208] List of nearby medical facilities
[0209] Step 8:
[0210] Sending and displaying the generated information
[0211] The server sends generated treatment methods, advice, and information about the nearest medical facility to the terminal. The terminal displays this information on its user interface, making it easy for the user to understand. For example, it might display information such as "The nearest medical facility is XX Clinic."
[0212] input:
[0213] Generated treatments, advice, and medical facility information.
[0214] output:
[0215] Displaying information to the user (text format)
[0216] In this way, the program's processing flow was explained concretely by clearly indicating the specific data processing and calculations performed at each step, as well as the inputs and outputs.
[0217] (Application Example 1)
[0218] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0219] Traditionally, users experiencing a decline in their health have found it difficult to accurately analyze their symptoms, identify their condition, and quickly obtain information on beneficial treatments and medical facilities. As a result, users often resorted to inappropriate treatments or spent considerable time searching for appropriate medical facilities. Furthermore, no system existed that effectively utilized natural language processing technology and location services to provide this information to users. Therefore, the present invention aims to provide a system that enables users to quickly and appropriately analyze their symptoms and receive appropriate treatments, advice, and information on the nearest medical facilities.
[0220] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0221] In this invention, the server includes means for inputting symptoms, means for analyzing the input symptoms to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, means for providing the treatment, advice, and medical facility information to the user, means for displaying the advice and medical facility information on the user's terminal, means for using natural language processing technology for symptom analysis, and means for using location information services for obtaining location information. As a result, the user can quickly obtain appropriate medical information based on the input symptoms and easily find the nearest medical facility.
[0222] "Means for inputting symptoms" refers to an interface that allows users to input their own health symptoms into the device.
[0223] "Methods for analyzing and identifying medical conditions" refers to systems that use natural language processing and database lookups to diagnose specific medical conditions based on the input symptoms.
[0224] A "means for generating appropriate treatments and advice" refers to a system that presents users with recommended treatment methods and precautions based on their identified medical condition.
[0225] "A means of searching for the nearest medical facility" refers to a search function that finds the closest medical facility based on the user's location information.
[0226] "Means of providing users with treatment, advice, and medical facility information" refers to an interface for displaying generated information on treatments, advice, and medical facilities on the user's device.
[0227] "Means of displaying on the user's device" refers to a system for displaying the aforementioned treatment methods, advice, and medical facility information on the user's device, such as a smartphone or computer.
[0228] "Methods of using natural language processing technology for symptom analysis" refer to natural language processing techniques used to analyze symptoms in input text and extract meaning and important keywords.
[0229] "Means of using location information services to obtain location information" refers to functions that use GPS or other location information services to determine the geographical location of a user.
[0230] This invention provides a system that, when a user experiences health problems, allows them to input their symptoms and provides appropriate treatment methods, advice, and information on the nearest medical facilities. This system is comprised of a user's terminal, a server, and location information services.
[0231] User symptom input
[0232] When a user feels unwell, they use a device such as a smartphone or computer to input their symptoms into the application. For example, a user might input, "I have a severe headache and feel nauseous." A text input interface is used for this input.
[0233] Submit the entered symptoms
[0234] The terminal sends the entered symptom data to the server. This data is generally sent in a standard format such as JSON.
[0235] Symptom analysis
[0236] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing technology (e.g., spaCy) to extract keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[0237] Matching symptoms with disease state
[0238] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. For example, if "headache" and "nausea" are extracted, "migraine" and "food poisoning" may be identified as possible conditions.
[0239] Generating valid phrases
[0240] The server generates treatments and advice based on the identified medical condition. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as, "It is recommended that you stay well-hydrated and rest in a dark place. Also, if your symptoms persist, please see a doctor," might be generated.
[0241] Obtaining user location information
[0242] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. This location information is used by the system to search for the nearest medical facility.
[0243] Search for the nearest medical facility
[0244] Based on the acquired location information, the server searches for the nearest medical facility using an internal database or an external data source (e.g., Google Places API). The server generates a list of the nearest hospitals and clinics as search results.
[0245] Information transmission and display
[0246] The server sends generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and visit the nearest medical facility if necessary.
[0247] Specific example
[0248] For example, if a user enters "I have a fever and a cough" into the device, the device sends these symptoms to the server. The server analyzes the keywords "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the device along with a list of the nearest medical facilities. The device displays this information to the user, allowing them to take appropriate action.
[0249] Example of a prompt
[0250] Write a Python function that analyzes the symptoms of illness entered by the user, extracts appropriate keywords, and identifies the medical condition. Next, add a function that retrieves the user's location information and searches for the nearest medical facility based on that information. Include code to send the results to a server in JSON format and display the server's response to the user.
[0251] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0252] Step 1:
[0253] The user enters their symptoms of illness into a device such as a smartphone or computer. A text input form is used as the interface. The entered symptom data is stored in string format.
[0254] Step 2:
[0255] The terminal converts the entered symptom data into JSON format and sends it to the server. The input here is text data of symptoms entered by the user, and the output is data in JSON format.
[0256] Step 3:
[0257] The server receives JSON data sent from the terminal. The received data is then passed to the analysis module. The input here is symptom data in JSON format, and the output is string data passed to the analysis module.
[0258] Step 4:
[0259] The server's analysis module uses natural language processing techniques (e.g., spaCy) to extract keywords from symptom data. For example, keywords such as "headache" and "nausea" are extracted. The input here is the received string data, and the output is a list of the extracted keywords.
[0260] Step 5:
[0261] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. The input here is a list of keywords, and the output is the identified condition.
[0262] Step 6:
[0263] The server generates appropriate treatments and advice based on the identified medical condition. These treatments and advice are retrieved from an internal database and generated as messages for the user. The input here is the identified medical condition, and the output is the generated text of the treatment or advice.
[0264] Step 7:
[0265] If the user allows location information to be shared, the device uses GPS functionality to obtain the user's current location. The input here is the user's location request, and the output is the latitude and longitude information of the current location.
[0266] Step 8:
[0267] The server uses the acquired location information to search for the nearest medical facility using an internal database or an external data source (e.g., Google Places API). The input here is location information (latitude and longitude), and the output is a list of the nearest medical facilities.
[0268] Step 9:
[0269] The server sends generated treatment methods, advice, and information on the nearest medical facilities to the terminal. The input here is the generated text and lists, and the output is the information sent to the terminal.
[0270] Step 10:
[0271] The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and, if necessary, visit the nearest medical facility. The input here is information received from the server, and the output is what is displayed on the user interface.
[0272] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0273] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms to identify the medical condition and then provides appropriate treatment and advice. This system is designed to allow users to quickly and easily obtain medical information and find appropriate medical facilities. Furthermore, by incorporating an emotion engine that recognizes the user's emotions, it becomes possible to provide responses that take their emotional state into consideration.
[0274] User symptom input
[0275] When a user feels unwell, they input their symptoms into a dedicated application using a device (such as a smartphone or tablet). For example, consider a case where the user inputs, "I have a severe headache and feel nauseous."
[0276] Submit the entered symptoms
[0277] The terminal sends the entered symptom data to the server in JSON format. The data sent will look like this:
[0278] json
[0279] {
[0280] "Symptoms": "Severe headache and nausea",
[0281] "user_id": "12345"
[0282] }
[0283] Symptom analysis and emotion recognition
[0284] The server passes the received data to the analysis module. At this time, the analysis module first extracts keywords (e.g., "headache", "nausea") from the input symptom data using natural language processing techniques (e.g., NLTK or spaCy). Furthermore, the sentiment engine recognizes and analyzes the user's sentiment (e.g., anxiety or stress) from the text.
[0285] Matching Symptoms and Conditions
[0286] Based on the extracted keywords, the server matches them with the symptom-condition correspondence list in the internal database. This identifies the condition most relevant to the input symptoms, such as "migraine" or "food poisoning".
[0287] Generating Effective Sentences
[0288] Based on the identified condition and the sentiment analysis results, the server generates effective treatment methods and advice. Appropriate treatment methods and advice are retrieved from the internal database and generated as messages to be provided to the user. For example, advice such as "It is recommended to drink plenty of water and rest in a dark place. Also, if the symptoms persist, please visit a hospital." may include specific sentiment care advice (such as "Please take deep breaths and relax").
[0289] Obtaining User Location Information
[0290] y When the user permits the provision of location information, the terminal uses the GPS function to obtain the current location information. This location information is used by the system to search for the nearest medical facility.
[0291] Searching for the Nearest Medical Facility
[0292] Based on the obtained location information, the server searches for the nearest medical facility using the internal database or an external API (e.g., Google Places API). A list of the nearest hospitals and clinics is generated as the search result.
[0293] Information transmission and display
[0294] The server sends the generated treatment plan, advice, and information on the nearest medical facility to the terminal in JSON format. The data sent will look like this:
[0295] json
[0296] {
[0297] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. If symptoms persist, please consult a doctor. Take deep breaths and relax."
[0298] "hospitals": [
[0299] {"name": "AA Clinic", "address": "XXXX"},
[0300] {"name": "BB Hospital", "address": "YYYY"}
[0301] ]
[0302] }
[0303] Displaying information
[0304] The terminal displays the received information on the user interface. Users can read the displayed advice and, if necessary, visit the displayed medical facilities.
[0305] Specific example
[0306] For example, when user A inputs symptoms such as "having a fever and coughing", the terminal sends this information to the server. The server uses natural language processing technology to extract keywords such as "fever" and "cough", and by referring to the medical condition database, identifies medical conditions such as "influenza" and "cold". At the same time, the emotion engine recognizes "uneasiness" from the user's text. The server generates a message containing advice such as "drink enough water and take a rest" and emotional care advice such as "please try relaxation breathing techniques to relieve uneasiness", attaches the information of the nearest medical facility, and sends it to the terminal. The terminal displays this information on the user interface, and user A can take appropriate actions.
[0307] In this way, according to the present invention, the user can obtain accurate medical information quickly and can also receive advice considering the emotional state. This can reduce uneasiness and confusion when in poor health and make it possible to find an appropriate medical facility.
[0308] The following describes the processing flow.
[0309] Step 1:
[0310] The user inputs symptoms of poor health into the application on the terminal.
[0311] Example: Input text such as "having a severe headache and nausea".
[0312] Step 2:
[0313] The terminal sends the input symptom data to the server in JSON format together with the emotion engine.
[0314] Example of data to be sent:
[0315] json
[0316] {
[0317] "Symptoms": "Severe headache and nausea",
[0318] "user_id": "12345"
[0319] }
[0320] Step 3:
[0321] The server passes the received JSON data to the parsing module. The parsing module first uses natural language processing techniques (e.g., NLTK or spaCy) to extract keywords such as "headache" and "nausea" from the symptom data.
[0322] example:
[0323] Python
[0324] Symptoms = "Severe headache and nausea"
[0325] keywords = extract_keywords(symptoms)
[0326] Keywords -> ["headache", "nausea"]
[0327] Step 4:
[0328] The server uses an emotion engine to analyze the user's emotions from symptom data. For example, it might recognize from the input text that the user is feeling anxious.
[0329] example:
[0330] Python
[0331] emotion = analyze_emotion(symptoms)
[0332] emotion -> "anxiety"
[0333] Step 5:
[0334] The server uses the extracted keywords to compare them with a list of symptoms and conditions in its internal database. This allows it to identify possible medical conditions.
[0335] example:
[0336] Python
[0337] possible_conditions = find_conditions(keywords)
[0338] possible_conditions -> ["Migraine", "Food poisoning", "Tension headache"]
[0339] Step 6:
[0340] The server generates effective phrases and treatment methods based on the identified medical condition and emotional analysis results. For example, in response to an identified migraine, it generates emotional care advice such as "drink plenty of fluids and rest in a dark place," as well as "take deep breaths and relax."
[0341] example:
[0342] Python
[0343] advice = generate_advice(possible_conditions, emotion)
[0344] Advice -> "We recommend staying well-hydrated and resting in a dark place. Also, take deep breaths and relax."
[0345] Step 7:
[0346] If the user allows location information to be shared, the device will use its GPS function to obtain the current location.
[0347] Examples of location information obtained:
[0348] json
[0349] {
[0350] "latitude": "35.6895",
[0351] "longitude": "139.6917"
[0352] }
[0353] Step 8:
[0354] Based on the location information acquired by the server, the system searches for the nearest medical facility using an internal database or an external API (e.g., Google Places API).
[0355] example:
[0356] Python
[0357] hospitals = find_nearby_hospitals(latitude, longitude)
[0358] hospitals -> [{"name": "AA Clinic", "address": "XXXX"}, {"name": "BB Hospital", "address": "YYYY"}]
[0359] Step 9:
[0360] The server sends the generated treatment plan, advice, and information on the nearest medical facility to the terminal in JSON format.
[0361] Example of data to be sent:
[0362] json
[0363] {
[0364] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. Also, take deep breaths and relax."
[0365] "hospitals": [
[0366] {"name": "AA Clinic", "address": "XXXX"},
[0367] {"name": "BB Hospital", "address": "YYYY"}
[0368] ]
[0369] }
[0370] Step 10:
[0371] The device displays the information it receives on the user interface. The user can read the displayed advice and, if necessary, go to the displayed hospital.
[0372] (Example 2)
[0373] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0374] In modern society, it is crucial to obtain medical information that quickly and accurately addresses one's symptoms when feeling unwell. However, when many people search for information online, they often doubt the accuracy and appropriateness of the information, resulting in anxiety. Furthermore, medical advice that ignores the user's emotional state risks amplifying this anxiety. Finding the nearest medical facility quickly is also a challenge. This invention aims to solve these problems by providing a system that allows users to quickly obtain accurate medical information while also providing comprehensive support, including emotional care.
[0375] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0376] In this invention, the server includes means for the user to input symptoms of illness, means for transmitting the input symptom data to the server, means for analyzing the symptom data using natural language processing technology to extract keywords for the symptoms, means for recognizing and analyzing the user's emotions based on the keywords, means for identifying a medical condition based on the keywords and the user's emotions, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, and means for providing the user with the treatments, advice, and medical facility information. As a result, the user can quickly and accurately obtain appropriate medical advice for their symptoms and receive comprehensive support, including emotional care, thereby reducing anxiety and confusion and enabling them to quickly find the nearest medical facility.
[0377] "Means for inputting symptoms" refers to methods or devices for users to input symptoms of illness into a system.
[0378] "Means for sending entered symptom data to a server" refers to methods or devices for sending symptom information entered by a user to a server via a network.
[0379] "Means for analyzing and extracting symptom keywords using natural language processing technology" refers to methods or devices that use natural language processing technology to extract important keywords from input text data.
[0380] "Means for recognizing and analyzing user emotions based on keywords" refers to methods and devices that estimate and analyze a user's emotional state from keywords or input text.
[0381] "Means for identifying medical conditions based on keywords and user sentiment" refers to methods or devices that identify related medical conditions based on extracted keywords and the user's emotional state.
[0382] "Means for generating appropriate treatments and advice based on identified medical conditions" refers to methods or devices that generate optimal treatments and advice based on identified medical conditions.
[0383] "Means for searching for the nearest medical facility based on the user's location information" refers to methods or devices that use the user's current location information to search for the nearest medical facility.
[0384] "Means of providing users with treatments, advice, and medical facility information" refers to methods and devices for providing users with generated treatments, advice, and retrieved medical facility information.
[0385] This invention relates to a system that, upon receiving input from a user regarding their symptoms of illness, analyzes those symptoms to identify the medical condition and then provides appropriate treatment methods and advice. Embodiments of this invention are described in detail below.
[0386] First, the user enters their symptoms into a dedicated application using a smartphone or tablet. The entered data is in a free-text format, such as "I have a severe headache and feel nauseous." Next, this entered data is sent from the device to the server. The device converts the data into JSON format and sends it to the server via the internet.
[0387] The server passes the received data to the analysis module. This analysis module uses natural language processing techniques (such as NLTK or spaCy) to extract keywords from the input symptom data. For example, keywords such as "headache" and "nausea" are detected. Simultaneously, the emotion engine recognizes the user's emotional state from the input text. This emotion engine also uses similar natural language processing techniques to analyze the emotions in the text. For example, emotional states such as "anxiety" and "stress" are recognized.
[0388] Next, the server accesses an internal database based on the extracted keywords and compares them with a list of symptoms and conditions. This identifies the most relevant condition. For example, "migraine" or "food poisoning" may be identified. Subsequently, based on the identified condition and the sentiment analysis results, appropriate treatments and advice are generated. These treatments and advice are retrieved from the internal database and generated as messages provided to the user. For example, advice such as, "We recommend staying well-hydrated and resting in a dark place. Also, if symptoms persist, please see a doctor," may be generated.
[0389] Furthermore, if the user allows location information to be shared, the device uses its GPS function to obtain its current location. This location information is sent to the server and used to search for the nearest medical facility. The server uses external APIs, such as the Google Places API, to search for the medical facility closest to the user's current location. For example, nearby hospitals and clinics are listed.
[0390] Finally, the server sends the generated treatment methods, advice, and information on the nearest medical facility to the device. This information is again sent in JSON format, but is displayed in an easy-to-read format through the user interface on the device. By referring to the displayed advice, the user can take appropriate action for their symptoms. Furthermore, based on the information on the nearest medical facility, they can quickly visit the appropriate medical facility.
[0391] As an example, consider a case where User A inputs symptoms such as "I have a fever and a cough." The terminal sends this information to the server, which extracts the keywords "fever" and "cough." By referring to the disease database, the server identifies the condition, such as "influenza" or "cold." Simultaneously, the emotion engine recognizes "anxiety." The server generates a message containing treatment advice such as "drink plenty of fluids and get rest" and emotional care advice such as "try relaxing breathing exercises to alleviate your anxiety," and sends it to the terminal along with information on the nearest medical facility. The terminal displays this information in the user interface, allowing User A to take appropriate action.
[0392] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0393] Step 1:
[0394] Users enter their symptoms into a dedicated application. For example, they might describe detailed symptoms such as "I have a severe headache and feel nauseous." The input data is in text format, and there are no specific formatting restrictions. The entered text data records the symptoms on the device.
[0395] Input: Symptom text entered by the user
[0396] Output: Text data recorded on the terminal
[0397] Step 2:
[0398] The terminal converts the entered symptom data into JSON format and sends it to the server. Specifically, it generates a JSON object containing the user ID and symptom text, and sends it to the server using the HTTP protocol.
[0399] Input: Text data recorded on the device
[0400] Data processing: Convert text data to JSON format.
[0401] Output: Data in JSON format is sent to the server.
[0402] Step 3:
[0403] The server passes the received data to an analysis module, which uses natural language processing techniques to extract keywords. For example, it can use NLTK or spaCy to extract keywords such as "headache" or "nausea" from the text entered by the user.
[0404] Input: Data received in JSON format
[0405] Data processing: Extracting keywords using natural language processing techniques.
[0406] Output: Extracted keyword list
[0407] Step 4:
[0408] The server uses an emotion engine to recognize and analyze the user's emotional state from the input text. It analyzes emotional expressions within the text to identify emotions such as "anxiety" and "stress."
[0409] Input: Data received in JSON format
[0410] Data processing: Recognizing and analyzing emotions using an emotion engine.
[0411] Output: Recognized emotional state
[0412] Step 5:
[0413] Based on the extracted keywords and recognized emotional states, the server consults an internal database to identify the corresponding medical condition. For example, symptoms with the keywords "headache" and "nausea" and the emotion "anxiety" might be identified as "migraine" or "food poisoning."
[0414] Input: Extracted keyword list, recognized emotional state
[0415] Data processing: Identifying the patient's condition by matching it with an internal database.
[0416] Output: Identified medical condition
[0417] Step 6:
[0418] The server generates appropriate treatments and advice based on identified medical conditions and perceived emotional states. These treatments and advice are retrieved from an internal database. For example, it might generate advice recommending "stay well-hydrated and rest in a dark place."
[0419] Input: Identified medical condition, perceived emotional state
[0420] Data processing: Generate treatment methods and advice by referencing an internal database.
[0421] Output: Generated treatment methods and advice
[0422] Step 7:
[0423] If the user allows location information to be shared, the device will use its GPS function to obtain its current location. The obtained location information will then be sent to the server.
[0424] Input: User permission to share location information
[0425] Data processing: Location information acquisition
[0426] Output: The acquired location information is sent to the server.
[0427] Step 8:
[0428] The server searches for the nearest medical facility based on the acquired location information. It uses external APIs such as the Google Places API to identify the hospital or clinic closest to the user's current location.
[0429] Input: Acquired location information
[0430] Data processing: Searching for medical facilities using external APIs
[0431] Output: List of nearby medical facilities
[0432] Step 9:
[0433] The server sends the generated treatment methods, advice, and information on the nearest medical facilities to the terminal in JSON format.
[0434] Input: Generated treatment / advice, list of nearest medical facilities
[0435] Data processing: Convert information to JSON format
[0436] Output: Sent to the terminal in JSON format.
[0437] Step 10:
[0438] The device displays the received information on its user interface. Users can then use the displayed advice and information about the nearest medical facilities to take appropriate action regarding their symptoms.
[0439] Input: Information in JSON format sent from the server
[0440] Data processing: Converting JSON formatted information into a user interface.
[0441] Output: Appropriately formatted advice and medical facility information are displayed on the screen.
[0442] (Application Example 2)
[0443] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".
[0444] Traditional healthcare systems have made it difficult for users to quickly find appropriate treatments or nearby medical facilities when they become ill. Furthermore, emotional support and dietary suggestions tailored to their condition have not been adequately considered. Users who are unwell often find it difficult to prepare meals in their daily lives, leading to insufficient nutrition. Solving this problem is essential.
[0445] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0446] In this invention, the server includes means for inputting symptoms, means for analyzing the input symptoms to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, means for searching for appropriate meal suggestions and delivery services based on the input symptoms, and means for providing the user with the treatments, advice, and medical facility information. This allows the user to quickly obtain accurate treatments, receive emotional support, and receive meal suggestions tailored to their physical condition, enabling them to order quickly.
[0447] "Means for inputting symptoms" refers to an interface that allows users to input symptoms of illness through their device.
[0448] "Means for analyzing entered symptoms to identify a medical condition" refers to functions or modules that analyze entered symptom data and diagnose an appropriate medical condition.
[0449] "Means for generating appropriate treatments and advice based on identified medical conditions" refers to functions or modules that generate treatments and advice suitable for the user based on identified medical condition information.
[0450] "Means for searching for the nearest medical facility based on the user's location information" refers to functions or modules that use the user's current location to search for the nearest medical facility.
[0451] "Means for searching for appropriate meal suggestions and delivery services based on entered symptoms" refers to a function or module that searches for delivery services that provide meals suitable for the user's physical condition based on the entered symptom information.
[0452] "Means of providing users with treatment methods, advice, and medical facility information" refers to an interface for communicating generated treatment methods, advice, and searched medical facility information to users.
[0453] The system based on this invention is designed to allow users to quickly obtain appropriate treatment and dietary suggestions when they are feeling unwell. This system includes the following hardware and software:
[0454] Hardware configuration
[0455] Device: Smartphone or tablet. This will serve as the interface for users to input symptoms and receive advice and suggestions.
[0456] Server: A central system for data analysis and processing.
[0457] Software Configuration
[0458] Natural language processing software (NLPProcessor, e.g., NLTK or spaCy) is used to extract symptoms from the user's input text.
[0459] The emotion recognition engine, EmotionRecognizer, analyzes emotions from the user's input text.
[0460] Medical diagnostic engine: Identifies medical conditions based on symptoms via the Medical Diagnosis API.
[0461] Meal suggestion system: Uses the Food Delivery API to generate meal suggestions based on the user's current location and symptoms.
[0462] Processing flow
[0463] 1. User symptom input
[0464] The user uses their device to input their symptoms of illness. For example, they might input, "I have a sore throat and a fever."
[0465] 2. Sending symptom data
[0466] The terminal sends the entered symptom data to the server in JSON format.
[0467] 3. Analysis of symptoms and emotions
[0468] The server analyzes the received data using natural language processing software and extracts keywords. Simultaneously, an emotion recognition engine recognizes the user's emotions.
[0469] 4. Identifying the symptoms
[0470] The server sends the extracted keywords to the Medial Diagnosis API to identify the associated medical condition.
[0471] 5. Generating treatment methods and advice
[0472] The server generates treatment plans and advice based on the identified medical condition and emotional analysis results.
[0473] 6. Searching for meal suggestions and delivery services
[0474] The server uses the Food Delivery API to search for appropriate meal suggestions and the nearest delivery service based on the user's location and symptoms.
[0475] 7. Sending and displaying information
[0476] The server sends the generated treatment methods, advice, meal suggestions, and information on the nearest delivery service to the terminal in JSON format, which the terminal then displays in the user interface.
[0477] Specific example
[0478] For example, if a user enters symptoms such as "sore throat and fever" and their location is Tokyo, the server uses natural language processing and sentiment recognition to identify the medical condition based on the symptoms. Next, it generates appropriate treatment and advice, such as "We recommend you stay well-hydrated and nutritious. Also, get plenty of rest." It also uses the Food Delivery API to search for the nearest restaurants and delivery services that offer healthy food based on the user's location and provides that information to the user.
[0479] Example of a prompt
[0480] Specific examples of prompt statements are as follows:
[0481] "I have a sore throat and a fever."
[0482] This prompt allows users to quickly receive optimal treatment and dietary suggestions, providing peace of mind even when feeling unwell.
[0483] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0484] Step 1:
[0485] The user enters their symptoms using a device such as a smartphone or tablet. For example, they might enter "I have a sore throat and a fever." When this input is made, the device temporarily saves this data. The system receives the user's symptom data in text format as input and converts it to JSON format as output.
[0486] Step 2:
[0487] The terminal converts the entered symptom data into JSON format and sends it to the server. The specific data is in the following format: "{ "symptoms": "sore throat and fever", "user_id": "12345", "location": "35.6895,139.6917"}". It receives user symptom data in text format as input and generates JSON data to send to the server as output.
[0488] Step 3:
[0489] The server passes the received symptom data to natural language processing software (NLPProcessor) to extract keywords. In a specific example, the keywords "throat" and "fever" are extracted. The server receives symptom data in JSON format as input and generates a list of keywords as output.
[0490] Step 4:
[0491] The server passes the text data, along with the extracted keywords, to the emotion recognition engine (EmotionRecognizer) to analyze the user's emotions. Specifically, for example, the emotion "anxiety" might be recognized. It receives keywords from symptom data as input and generates emotion information as output.
[0492] Step 5:
[0493] The server uses the extracted keywords to send symptom data to the Medical Diagnosis API to identify the disease. For example, diseases such as "influenza" or "cold" are identified. It takes a list of keywords as input and generates disease information as output.
[0494] Step 6:
[0495] The server retrieves and generates appropriate treatments and advice from its internal database based on identified medical conditions and emotional information. For example, it might generate advice such as, "We recommend you drink plenty of fluids and get plenty of rest. Also, try relaxation techniques to alleviate anxiety." It takes medical condition information and emotional information as input and generates advice text as output.
[0496] Step 7:
[0497] The server uses the Food Delivery API to search for appropriate meal suggestions and delivery services based on the user's location and symptoms. For example, it searches for restaurants and delivery services that offer healthy meals. It receives the user's location and symptom data as input and generates information on the nearest delivery service as output.
[0498] Step 8:
[0499] The server sends the generated treatments, advice, meal suggestions, and nearest delivery service information to the terminal in JSON format. It receives treatments, advice, meal suggestions, and delivery service information as input and generates JSON data to provide to the user as output.
[0500] Step 9:
[0501] The terminal parses the received JSON data and displays it on the user interface. For example, treatment methods, advice, meal suggestions, and delivery service information are displayed in an easy-to-understand format. It receives JSON data sent from the server as input and converts it into a user-friendly format for output.
[0502] This allows users to quickly receive appropriate treatment and dietary suggestions and take the necessary steps.
[0503] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating 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.
[0504] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0505] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0506] [Second Embodiment]
[0507] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0508] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0509] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0510] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0511] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0512] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0513] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0514] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0515] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[0516] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0517] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0518] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. 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".
[0519] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms, identifies the medical condition, and provides appropriate treatment and advice. The system is designed to enable users to quickly and easily obtain medical information and find appropriate medical facilities.
[0520] User symptom input
[0521] When a user feels unwell, they input their symptoms into the application using their device (smartphone or computer). For example, a user might input, "I have a severe headache and feel nauseous."
[0522] Submit the entered symptoms
[0523] The terminal sends the entered symptom data to the server. The data is generally sent in a standard format such as JSON.
[0524] Symptom analysis
[0525] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing techniques (such as NLTK or spaCy) to extract keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[0526] Matching symptoms with disease state
[0527] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. For example, if "headache" and "nausea" are extracted, "migraine" and "food poisoning" may be identified as possible conditions.
[0528] Generating valid phrases
[0529] The server generates treatments and advice based on the identified medical condition. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as, "It is recommended that you stay well-hydrated and rest in a dark place. Also, if your symptoms persist, please see a doctor," might be generated.
[0530] Obtaining user location information
[0531] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. This location information is used by the system to search for the nearest medical facility.
[0532] Search for the nearest medical facility
[0533] Based on the acquired location information, the server uses an internal database or an external API (e.g., Google Places API) to search for the nearest medical facilities. The server then generates a list of the nearest hospitals and clinics as search results.
[0534] Information transmission and display
[0535] The server sends the generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and visit the nearest medical facility if necessary.
[0536] Specific example
[0537] For example, if user A enters "I have a fever and a cough" into the terminal, the terminal sends these symptoms to the server. The server analyzes the keywords "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay well-hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the terminal along with a list of the nearest medical facilities. The terminal displays this information to user A, allowing user A to take appropriate action.
[0538] This invention allows users to quickly obtain accurate medical information and, if necessary, find the nearest medical facility. This can reduce anxiety and confusion when feeling unwell.
[0539] The following describes the processing flow.
[0540] Step 1:
[0541] The user enters their symptoms of illness into an application on their device.
[0542] Example: Enter the text "I have a terrible headache and feel nauseous."
[0543] Step 2:
[0544] The terminal sends the entered symptom data to the server in JSON format.
[0545] Example of data to be sent:
[0546] json
[0547] {
[0548] "Symptoms": "Severe headache and nausea",
[0549] "user_id": "12345"
[0550] }
[0551] Step 3:
[0552] The server passes the received JSON data to the parsing module. The parsing module uses a natural language processing library (e.g., NLTK or spaCy) to extract keywords such as "headache" and "nausea."
[0553] example:
[0554] Python
[0555] Symptoms = "Severe headache and nausea"
[0556] keywords = extract_keywords(symptoms)
[0557] Keywords -> ["headache", "nausea"]
[0558] Step 4:
[0559] The server compares the extracted keywords with a list of symptoms and conditions in its internal database. This identifies the recognized medical condition.
[0560] example:
[0561] Python
[0562] possible_conditions = find_conditions(keywords)
[0563] possible_conditions -> ["Migraine", "Food poisoning", "Tension headache"]
[0564] Step 5:
[0565] The server retrieves effective phrases and treatments corresponding to possible medical conditions from its internal database and generates appropriate advice.
[0566] example:
[0567] Python
[0568] advice = generate_advice(possible_conditions)
[0569] Advice -> "We recommend staying well-hydrated and resting in a dark place. If symptoms persist, please consult a doctor."
[0570] Step 6:
[0571] If the user allows the device to access their current location, the device will use its GPS function to obtain that location information.
[0572] Examples of location information obtained:
[0573] json
[0574] {
[0575] "latitude": "35.6895",
[0576] "longitude": "139.6917"
[0577] }
[0578] Step 7:
[0579] Based on the location information acquired by the server, the system searches for the nearest medical facility using an internal database or an external API (e.g., Google Places API).
[0580] example:
[0581] Python
[0582] hospitals = find_nearby_hospitals(latitude, longitude)
[0583] hospitals -> [{"name": "AA Clinic", "address": "XXXX"}, {"name": "BB Hospital", "address": "YYYY"}]
[0584] Step 8:
[0585] The server sends advice on valid phrases and information on the nearest medical facilities to the terminal in JSON format.
[0586] Example of data to be sent:
[0587] json
[0588] {
[0589] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. If symptoms persist, please consult a doctor."
[0590] "hospitals": [
[0591] {"name": "AA Clinic", "address": "XXXX"},
[0592] {"name": "BB Hospital", "address": "YYYY"}
[0593] ]
[0594] }
[0595] Step 9:
[0596] The device displays the information it receives on the user interface. The user can read the advice and, if necessary, go to the displayed hospital.
[0597] (Example 1)
[0598] Next, we will describe Example 1. 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."
[0599] In recent years, obtaining quick and accurate medical information when feeling unwell has become extremely important, but there is a lack of systems that provide information to help users immediately find medical facilities or take appropriate initial action. Furthermore, because there is no system that predicts the condition of a person's illness and guides them to appropriate treatments and the nearest medical facilities simply by inputting their symptoms, users are prone to anxiety and confusion.
[0600] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0601] In this invention, the server includes means for the user to input symptoms, means for transmitting the input symptom data to a processing device, means for analyzing the transmitted symptom data using natural language processing technology to extract keywords for the symptoms, means for searching a database based on the extracted keywords to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for acquiring the user's location information, means for searching for the nearest medical facility based on the location information, and means for providing the generated treatments, advice, and medical facility information to the user. This enables the user to quickly and accurately obtain medical information and easily find the nearest medical facility.
[0602] A "user" refers to a person who uses the system to input symptoms.
[0603] "Symptom data" refers to specific information about the user's physical ailments, and is generally provided in text format.
[0604] "Natural language processing technology" refers to techniques that enable computers to understand and analyze human language. Examples include keyword extraction and semantic analysis of texts.
[0605] "Keywords" refer to important words or phrases extracted from symptom data.
[0606] A "database" refers to a collection of information that aggregates and allows for searching and referencing information about medical conditions and symptoms.
[0607] "Medical condition" refers to diseases or health conditions related to the symptoms entered by the user, as identified through analysis and matching.
[0608] "Treatment" refers to appropriate medical procedures or methods for a specific medical condition.
[0609] "Advice" refers to suggestions and recommended actions provided to the user based on their identified medical condition.
[0610] "Location information" refers to data on the user's current location obtained using GPS functionality, etc.
[0611] A "medical facility" refers to a place that provides medical services, such as a hospital or clinic.
[0612] A "processing device" refers to a computer system that operates on a server or cloud, and is a device that receives, analyzes, processes, and provides data.
[0613] A "server" refers to a computer system that receives, analyzes, and processes data within a system and provides the results.
[0614] "Terminal" refers to a smartphone, computer, or other device used by a user to access the system and input / display data.
[0615] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms, identifies the medical condition, and then provides appropriate treatment methods and advice. The system is designed to allow users to quickly and easily obtain medical information and find appropriate medical facilities.
[0616] User symptom input
[0617] When a user feels unwell, they launch the application using a device such as a smartphone or computer and enter their specific symptoms in text format. For example, the user might enter information such as, "I have a severe headache and feel nauseous."
[0618] Submit the entered symptoms
[0619] The terminal sends the entered symptom data to the server. This data is typically transmitted over the network using a standard format such as JSON.
[0620] Symptom analysis
[0621] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing techniques (e.g., NLTK or spaCy) to extract important keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[0622] Matching symptoms with disease state
[0623] The server searches its internal medical database based on keywords extracted by the analysis module to identify related medical conditions. For example, if the keywords are "headache" and "nausea," the database will search for conditions such as "migraine" and "food poisoning."
[0624] Generating advice
[0625] Based on the identified medical condition, the server retrieves and generates appropriate treatments and advice from its internal database. For example, it might generate a message such as, "We recommend staying well-hydrated and resting in a dark place. If symptoms persist, please consult a doctor."
[0626] Obtaining user location information
[0627] If the user allows location information sharing, the device uses its GPS function to obtain the user's current location. Specific location information such as "Latitude 35.6895, Longitude 139.6917 (Tokyo)" will be obtained.
[0628] Search for the nearest medical facility
[0629] The server uses the acquired location information to search for the nearest medical facilities using an internal database or an external API (e.g., Google Places API). For example, it might search for "the nearest clinics and hospitals in Tokyo" and generate a list of them.
[0630] Information transmission and display
[0631] The server sends generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on its user interface, providing it in a format that is easy for the user to understand. For example, based on the received information, it might display something like, "Stay hydrated and get some rest. The nearest medical facility is XX Clinic (Address: 1-1-1 Chiyoda-ku, Tokyo, Phone number: 03-1234-5678)."
[0632] Specific example
[0633] For example, if user A enters "I have a fever and a cough" into the terminal, the terminal sends this symptom data to the server. The server analyzes keywords such as "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay well-hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the terminal along with a list of the nearest medical facilities. The terminal displays this information to user A, allowing user A to take appropriate action.
[0634] Example of a prompt
[0635] "User A entered 'I have a fever and a cough' into the terminal. Please generate appropriate treatment options, advice, and information on the nearest medical facility."
[0636] "User B entered 'I'm experiencing persistent abdominal pain and diarrhea.' Please tell me what kind of medical condition this could be."
[0637] This invention allows users to quickly and accurately obtain medical information and find the nearest medical facility as needed. This can reduce anxiety and confusion when feeling unwell.
[0638] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0639] Processing flow divided into processing steps
[0640] Step 1:
[0641] The user enters their symptoms.
[0642] When a user feels unwell, they use their smartphone or computer to enter their symptoms into the application. For example, they might enter specific symptoms such as "I have a severe headache and feel nauseous." The entered data is saved in JSON format.
[0643] input:
[0644] User symptom information (text)
[0645] output:
[0646] Entered symptom data (JSON format)
[0647] Step 2:
[0648] The entered symptom data is sent to the server.
[0649] The terminal sends the entered symptom data to the server. The transmission protocol uses HTTP or HTTPS, and the data is sent in JSON format.
[0650] input:
[0651] Entered symptom data (JSON format)
[0652] output:
[0653] Completed sending of symptom data to the server.
[0654] Step 3:
[0655] Receiving and analyzing symptom data
[0656] The server receives symptom data sent from the terminal and passes it to the analysis module. The analysis module uses natural language processing technology (e.g., NLTK or spaCy) to extract keywords from the symptom data. For example, keywords such as "headache" and "nausea" may be extracted.
[0657] input:
[0658] Submitted symptom data (in JSON format)
[0659] output:
[0660] Extracted keywords (list)
[0661] Step 4:
[0662] Database matching of symptom keywords
[0663] The server searches its internal medical database based on the extracted keywords to identify related medical conditions. For example, for the keywords "headache" and "nausea," possible medical conditions identified might include "migraine" and "food poisoning."
[0664] input:
[0665] Extracted keywords (list)
[0666] output:
[0667] Identified medical conditions (list)
[0668] Step 5:
[0669] Generating treatment methods and advice
[0670] Based on the identified medical condition, the server retrieves and generates appropriate treatments and advice from a database. For example, it might generate advice such as, "Drink plenty of fluids and rest. If symptoms persist, see a doctor."
[0671] input:
[0672] Identified medical conditions (list)
[0673] output:
[0674] Generated advice (text)
[0675] Step 6:
[0676] Obtaining user location information
[0677] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. For example, it will obtain location information such as "Latitude 35.6895, Longitude 139.6917 (Tokyo)".
[0678] input:
[0679] GPS location information acquisition permission
[0680] output:
[0681] User location information (latitude, longitude)
[0682] Step 7:
[0683] Search for the nearest medical facility
[0684] The server uses its internal database or an external API (such as the Google Places API) based on the acquired location information to search for the nearest medical facilities. For example, it might search for "the nearest clinics and hospitals in Tokyo" and generate a list of them.
[0685] input:
[0686] User location information (latitude, longitude)
[0687] output:
[0688] List of nearby medical facilities
[0689] Step 8:
[0690] Sending and displaying the generated information
[0691] The server sends generated treatment methods, advice, and information about the nearest medical facility to the terminal. The terminal displays this information on its user interface, making it easy for the user to understand. For example, it might display information such as "The nearest medical facility is XX Clinic."
[0692] input:
[0693] Generated treatments, advice, and medical facility information.
[0694] output:
[0695] Displaying information to the user (text format)
[0696] In this way, the program's processing flow was explained concretely by clearly indicating the specific data processing and calculations performed at each step, as well as the inputs and outputs.
[0697] (Application Example 1)
[0698] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0699] Traditionally, users experiencing a decline in their health have found it difficult to accurately analyze their symptoms, identify their condition, and quickly obtain information on beneficial treatments and medical facilities. As a result, users often resorted to inappropriate treatments or spent considerable time searching for appropriate medical facilities. Furthermore, no system existed that effectively utilized natural language processing technology and location services to provide this information to users. Therefore, the present invention aims to provide a system that enables users to quickly and appropriately analyze their symptoms and receive appropriate treatments, advice, and information on the nearest medical facilities.
[0700] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0701] In this invention, the server includes means for inputting symptoms, means for analyzing the input symptoms to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, means for providing the treatment, advice, and medical facility information to the user, means for displaying the advice and medical facility information on the user's terminal, means for using natural language processing technology for symptom analysis, and means for using location information services for obtaining location information. As a result, the user can quickly obtain appropriate medical information based on the input symptoms and easily find the nearest medical facility.
[0702] "Means for inputting symptoms" refers to an interface that allows users to input their own health symptoms into the device.
[0703] "Methods for analyzing and identifying medical conditions" refers to systems that use natural language processing and database lookups to diagnose specific medical conditions based on the input symptoms.
[0704] A "means for generating appropriate treatments and advice" refers to a system that presents users with recommended treatment methods and precautions based on their identified medical condition.
[0705] "A means of searching for the nearest medical facility" refers to a search function that finds the closest medical facility based on the user's location information.
[0706] "Means of providing users with treatment, advice, and medical facility information" refers to an interface for displaying generated information on treatments, advice, and medical facilities on the user's device.
[0707] "Means of displaying on the user's device" refers to a system for displaying the aforementioned treatment methods, advice, and medical facility information on the user's device, such as a smartphone or computer.
[0708] "Methods of using natural language processing technology for symptom analysis" refer to natural language processing techniques used to analyze symptoms in input text and extract meaning and important keywords.
[0709] "Means of using location information services to obtain location information" refers to functions that use GPS or other location information services to determine the geographical location of a user.
[0710] This invention provides a system that, when a user experiences health problems, allows them to input their symptoms and provides appropriate treatment methods, advice, and information on the nearest medical facilities. This system is comprised of a user's terminal, a server, and location information services.
[0711] User symptom input
[0712] When a user feels unwell, they use a device such as a smartphone or computer to input their symptoms into the application. For example, a user might input, "I have a severe headache and feel nauseous." A text input interface is used for this input.
[0713] Submit the entered symptoms
[0714] The terminal sends the entered symptom data to the server. This data is generally sent in a standard format such as JSON.
[0715] Symptom analysis
[0716] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing technology (e.g., spaCy) to extract keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[0717] Matching symptoms with disease state
[0718] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. For example, if "headache" and "nausea" are extracted, "migraine" and "food poisoning" may be identified as possible conditions.
[0719] Generating valid phrases
[0720] The server generates treatments and advice based on the identified medical condition. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as, "It is recommended that you stay well-hydrated and rest in a dark place. Also, if your symptoms persist, please see a doctor," might be generated.
[0721] Obtaining user location information
[0722] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. This location information is used by the system to search for the nearest medical facility.
[0723] Search for the nearest medical facility
[0724] Based on the acquired location information, the server searches for the nearest medical facility using an internal database or an external data source (e.g., Google Places API). The server generates a list of the nearest hospitals and clinics as search results.
[0725] Information transmission and display
[0726] The server sends generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and visit the nearest medical facility if necessary.
[0727] Specific example
[0728] For example, if a user enters "I have a fever and a cough" into the device, the device sends these symptoms to the server. The server analyzes the keywords "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the device along with a list of the nearest medical facilities. The device displays this information to the user, allowing them to take appropriate action.
[0729] Example of a prompt
[0730] Write a Python function that analyzes the symptoms of illness entered by the user, extracts appropriate keywords, and identifies the medical condition. Next, add a function that retrieves the user's location information and searches for the nearest medical facility based on that information. Include code to send the results to a server in JSON format and display the server's response to the user.
[0731] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0732] Step 1:
[0733] The user enters their symptoms of illness into a device such as a smartphone or computer. A text input form is used as the interface. The entered symptom data is stored in string format.
[0734] Step 2:
[0735] The terminal converts the entered symptom data into JSON format and sends it to the server. The input here is text data of symptoms entered by the user, and the output is data in JSON format.
[0736] Step 3:
[0737] The server receives JSON data sent from the terminal. The received data is then passed to the analysis module. The input here is symptom data in JSON format, and the output is string data passed to the analysis module.
[0738] Step 4:
[0739] The server's analysis module uses natural language processing techniques (e.g., spaCy) to extract keywords from symptom data. For example, keywords such as "headache" and "nausea" are extracted. The input here is the received string data, and the output is a list of the extracted keywords.
[0740] Step 5:
[0741] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. The input here is a list of keywords, and the output is the identified condition.
[0742] Step 6:
[0743] The server generates appropriate treatments and advice based on the identified medical condition. These treatments and advice are retrieved from an internal database and generated as messages for the user. The input here is the identified medical condition, and the output is the generated text of the treatment or advice.
[0744] Step 7:
[0745] If the user allows location information to be shared, the device uses GPS functionality to obtain the user's current location. The input here is the user's location request, and the output is the latitude and longitude information of the current location.
[0746] Step 8:
[0747] The server uses the acquired location information to search for the nearest medical facility using an internal database or an external data source (e.g., Google Places API). The input here is location information (latitude and longitude), and the output is a list of the nearest medical facilities.
[0748] Step 9:
[0749] The server sends generated treatment methods, advice, and information on the nearest medical facilities to the terminal. The input here is the generated text and lists, and the output is the information sent to the terminal.
[0750] Step 10:
[0751] The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and, if necessary, visit the nearest medical facility. The input here is information received from the server, and the output is what is displayed on the user interface.
[0752] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0753] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms to identify the medical condition and then provides appropriate treatment and advice. This system is designed to allow users to quickly and easily obtain medical information and find appropriate medical facilities. Furthermore, by incorporating an emotion engine that recognizes the user's emotions, it becomes possible to provide responses that take their emotional state into consideration.
[0754] User symptom input
[0755] When a user feels unwell, they input their symptoms into a dedicated application using a device (such as a smartphone or tablet). For example, consider a case where the user inputs, "I have a severe headache and feel nauseous."
[0756] Submit the entered symptoms
[0757] The terminal sends the entered symptom data to the server in JSON format. The data sent will look like this:
[0758] json
[0759] {
[0760] "Symptoms": "Severe headache and nausea",
[0761] "user_id": "12345"
[0762] }
[0763] Symptom analysis and emotion recognition
[0764] The server passes the received data to the analysis module. The analysis module first extracts keywords (e.g., "headache," "nausea") from the input symptom data using natural language processing techniques (e.g., NLTK or spaCy). Furthermore, the emotion engine recognizes and analyzes the user's emotions (e.g., anxiety or stress) from the text.
[0765] Matching symptoms with disease state
[0766] The server uses the extracted keywords to match them against a list of symptoms and conditions in its internal database. This identifies the medical condition most closely related to the entered symptoms, such as "migraine" or "food poisoning."
[0767] Generating valid phrases
[0768] The server generates effective treatments and advice based on identified symptoms and emotional analysis results. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as "It is recommended that you stay well-hydrated and rest in a dark place. Also, if symptoms persist, please see a doctor" may include specific emotional care advice (such as "Take deep breaths and relax").
[0769] Obtaining user location information
[0770] If the user allows location information to be shared, the device will use its GPS function to obtain its current location. This location information is used by the system to search for the nearest medical facility.
[0771] Search for the nearest medical facility
[0772] The server uses the acquired location information to search for the nearest medical facilities using an internal database or an external API (e.g., Google Places API). The search results generate a list of the nearest hospitals and clinics.
[0773] Information transmission and display
[0774] The server sends the generated treatment plan, advice, and information on the nearest medical facility to the terminal in JSON format. The data sent will look like this:
[0775] json
[0776] {
[0777] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. If symptoms persist, please consult a doctor. Take deep breaths and relax."
[0778] "hospitals": [
[0779] {"name": "AA Clinic", "address": "XXXX"},
[0780] {"name": "BB Hospital", "address": "YYYY"}
[0781] ]
[0782] }
[0783] Displaying information
[0784] The terminal displays the received information on the user interface. Users can read the displayed advice and, if necessary, visit the displayed medical facilities.
[0785] Specific example
[0786] For example, if user A enters symptoms such as "I have a fever and a cough," the terminal sends this information to the server. The server uses natural language processing technology to extract the keywords "fever" and "cough," and by referring to a disease database, identifies the condition, such as "influenza" or "cold." At the same time, the emotion engine recognizes "anxiety" from the user's text. The server generates a message containing advice such as "Drink plenty of fluids and get plenty of rest," and emotional care advice such as "Try relaxing breathing exercises to alleviate your anxiety," and sends it to the terminal along with information on the nearest medical facility. The terminal displays this information in the user interface, allowing user A to take appropriate action.
[0787] Thus, the present invention allows users to quickly obtain accurate medical information and receive advice that takes their emotional state into consideration. This reduces anxiety and confusion during times of illness and makes it possible to find appropriate medical facilities.
[0788] The following describes the processing flow.
[0789] Step 1:
[0790] The user enters their symptoms of illness into an application on their device.
[0791] Example: Enter the text "I have a terrible headache and feel nauseous."
[0792] Step 2:
[0793] The terminal sends the entered symptom data, along with the emotion engine, to the server in JSON format.
[0794] Example of data to be sent:
[0795] json
[0796] {
[0797] "Symptoms": "Severe headache and nausea",
[0798] "user_id": "12345"
[0799] }
[0800] Step 3:
[0801] The server passes the received JSON data to the parsing module. The parsing module first uses natural language processing techniques (e.g., NLTK or spaCy) to extract keywords such as "headache" and "nausea" from the symptom data.
[0802] example:
[0803] Python
[0804] Symptoms = "Severe headache and nausea"
[0805] keywords = extract_keywords(symptoms)
[0806] Keywords -> ["headache", "nausea"]
[0807] Step 4:
[0808] The server uses an emotion engine to analyze the user's emotions from symptom data. For example, it might recognize from the input text that the user is feeling anxious.
[0809] example:
[0810] Python
[0811] emotion = analyze_emotion(symptoms)
[0812] emotion -> "anxiety"
[0813] Step 5:
[0814] The server uses the extracted keywords to compare them with a list of symptoms and conditions in its internal database. This allows it to identify possible medical conditions.
[0815] example:
[0816] Python
[0817] possible_conditions = find_conditions(keywords)
[0818] possible_conditions -> ["Migraine", "Food poisoning", "Tension headache"]
[0819] Step 6:
[0820] The server generates effective phrases and treatment methods based on the identified medical condition and emotional analysis results. For example, in response to an identified migraine, it generates emotional care advice such as "drink plenty of fluids and rest in a dark place," as well as "take deep breaths and relax."
[0821] example:
[0822] Python
[0823] advice = generate_advice(possible_conditions, emotion)
[0824] Advice -> "We recommend staying well-hydrated and resting in a dark place. Also, take deep breaths and relax."
[0825] Step 7:
[0826] If the user allows location information to be shared, the device will use its GPS function to obtain the current location.
[0827] Examples of location information obtained:
[0828] json
[0829] {
[0830] "latitude": "35.6895",
[0831] "longitude": "139.6917"
[0832] }
[0833] Step 8:
[0834] Based on the location information acquired by the server, the system searches for the nearest medical facility using an internal database or an external API (e.g., Google Places API).
[0835] example:
[0836] Python
[0837] hospitals = find_nearby_hospitals(latitude, longitude)
[0838] hospitals -> [{"name": "AA Clinic", "address": "XXXX"}, {"name": "BB Hospital", "address": "YYYY"}]
[0839] Step 9:
[0840] The server sends the generated treatment plan, advice, and information on the nearest medical facility to the terminal in JSON format.
[0841] Example of data to be sent:
[0842] json
[0843] {
[0844] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. Also, take deep breaths and relax."
[0845] "hospitals": [
[0846] {"name": "AA Clinic", "address": "XXXX"},
[0847] {"name": "BB Hospital", "address": "YYYY"}
[0848] ]
[0849] }
[0850] Step 10:
[0851] The device displays the information it receives on the user interface. The user can read the displayed advice and, if necessary, go to the displayed hospital.
[0852] (Example 2)
[0853] Next, we will describe Example 2. 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".
[0854] In modern society, it is crucial to obtain medical information that quickly and accurately addresses one's symptoms when feeling unwell. However, when many people search for information online, they often doubt the accuracy and appropriateness of the information, resulting in anxiety. Furthermore, medical advice that ignores the user's emotional state risks amplifying this anxiety. Finding the nearest medical facility quickly is also a challenge. This invention aims to solve these problems by providing a system that allows users to quickly obtain accurate medical information while also providing comprehensive support, including emotional care.
[0855] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0856] In this invention, the server includes means for the user to input symptoms of illness, means for transmitting the input symptom data to the server, means for analyzing the symptom data using natural language processing technology to extract keywords for the symptoms, means for recognizing and analyzing the user's emotions based on the keywords, means for identifying a medical condition based on the keywords and the user's emotions, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, and means for providing the user with the treatments, advice, and medical facility information. As a result, the user can quickly and accurately obtain appropriate medical advice for their symptoms and receive comprehensive support, including emotional care, thereby reducing anxiety and confusion and enabling them to quickly find the nearest medical facility.
[0857] "Means for inputting symptoms" refers to methods or devices for users to input symptoms of illness into a system.
[0858] "Means for sending entered symptom data to a server" refers to methods or devices for sending symptom information entered by a user to a server via a network.
[0859] "Means for analyzing and extracting symptom keywords using natural language processing technology" refers to methods or devices that use natural language processing technology to extract important keywords from input text data.
[0860] "Means for recognizing and analyzing user emotions based on keywords" refers to methods and devices that estimate and analyze a user's emotional state from keywords or input text.
[0861] "Means for identifying medical conditions based on keywords and user sentiment" refers to methods or devices that identify related medical conditions based on extracted keywords and the user's emotional state.
[0862] "Means for generating appropriate treatments and advice based on identified medical conditions" refers to methods or devices that generate optimal treatments and advice based on identified medical conditions.
[0863] "Means for searching for the nearest medical facility based on the user's location information" refers to methods or devices that use the user's current location information to search for the nearest medical facility.
[0864] "Means of providing users with treatments, advice, and medical facility information" refers to methods and devices for providing users with generated treatments, advice, and retrieved medical facility information.
[0865] This invention relates to a system that, upon receiving input from a user regarding their symptoms of illness, analyzes those symptoms to identify the medical condition and then provides appropriate treatment methods and advice. Embodiments of this invention are described in detail below.
[0866] First, the user enters their symptoms into a dedicated application using a smartphone or tablet. The entered data is in a free-text format, such as "I have a severe headache and feel nauseous." Next, this entered data is sent from the device to the server. The device converts the data into JSON format and sends it to the server via the internet.
[0867] The server passes the received data to the analysis module. This analysis module uses natural language processing techniques (such as NLTK or spaCy) to extract keywords from the input symptom data. For example, keywords such as "headache" and "nausea" are detected. Simultaneously, the emotion engine recognizes the user's emotional state from the input text. This emotion engine also uses similar natural language processing techniques to analyze the emotions in the text. For example, emotional states such as "anxiety" and "stress" are recognized.
[0868] Next, the server accesses an internal database based on the extracted keywords and compares them with a list of symptoms and conditions. This identifies the most relevant condition. For example, "migraine" or "food poisoning" may be identified. Subsequently, based on the identified condition and the sentiment analysis results, appropriate treatments and advice are generated. These treatments and advice are retrieved from the internal database and generated as messages provided to the user. For example, advice such as, "We recommend staying well-hydrated and resting in a dark place. Also, if symptoms persist, please see a doctor," may be generated.
[0869] Furthermore, if the user allows location information to be shared, the device uses its GPS function to obtain its current location. This location information is sent to the server and used to search for the nearest medical facility. The server uses external APIs, such as the Google Places API, to search for the medical facility closest to the user's current location. For example, nearby hospitals and clinics are listed.
[0870] Finally, the server sends the generated treatment methods, advice, and information on the nearest medical facility to the device. This information is again sent in JSON format, but is displayed in an easy-to-read format through the user interface on the device. By referring to the displayed advice, the user can take appropriate action for their symptoms. Furthermore, based on the information on the nearest medical facility, they can quickly visit the appropriate medical facility.
[0871] As an example, consider a case where User A inputs symptoms such as "I have a fever and a cough." The terminal sends this information to the server, which extracts the keywords "fever" and "cough." By referring to the disease database, the server identifies the condition, such as "influenza" or "cold." Simultaneously, the emotion engine recognizes "anxiety." The server generates a message containing treatment advice such as "drink plenty of fluids and get rest" and emotional care advice such as "try relaxing breathing exercises to alleviate your anxiety," and sends it to the terminal along with information on the nearest medical facility. The terminal displays this information in the user interface, allowing User A to take appropriate action.
[0872] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0873] Step 1:
[0874] Users enter their symptoms into a dedicated application. For example, they might describe detailed symptoms such as "I have a severe headache and feel nauseous." The input data is in text format, and there are no specific formatting restrictions. The entered text data records the symptoms on the device.
[0875] Input: Symptom text entered by the user
[0876] Output: Text data recorded on the terminal
[0877] Step 2:
[0878] The terminal converts the entered symptom data into JSON format and sends it to the server. Specifically, it generates a JSON object containing the user ID and symptom text, and sends it to the server using the HTTP protocol.
[0879] Input: Text data recorded on the device
[0880] Data processing: Convert text data to JSON format.
[0881] Output: Data in JSON format is sent to the server.
[0882] Step 3:
[0883] The server passes the received data to an analysis module, which uses natural language processing techniques to extract keywords. For example, it can use NLTK or spaCy to extract keywords such as "headache" or "nausea" from the text entered by the user.
[0884] Input: Data received in JSON format
[0885] Data processing: Extracting keywords using natural language processing techniques.
[0886] Output: Extracted keyword list
[0887] Step 4:
[0888] The server uses an emotion engine to recognize and analyze the user's emotional state from the input text. It analyzes emotional expressions within the text to identify emotions such as "anxiety" and "stress."
[0889] Input: Data received in JSON format
[0890] Data processing: Recognizing and analyzing emotions using an emotion engine.
[0891] Output: Recognized emotional state
[0892] Step 5:
[0893] Based on the extracted keywords and recognized emotional states, the server consults an internal database to identify the corresponding medical condition. For example, symptoms with the keywords "headache" and "nausea" and the emotion "anxiety" might be identified as "migraine" or "food poisoning."
[0894] Input: Extracted keyword list, recognized emotional state
[0895] Data processing: Identifying the patient's condition by matching it with an internal database.
[0896] Output: Identified medical condition
[0897] Step 6:
[0898] The server generates appropriate treatments and advice based on identified medical conditions and perceived emotional states. These treatments and advice are retrieved from an internal database. For example, it might generate advice recommending "stay well-hydrated and rest in a dark place."
[0899] Input: Identified medical condition, perceived emotional state
[0900] Data processing: Generate treatment methods and advice by referencing an internal database.
[0901] Output: Generated treatment methods and advice
[0902] Step 7:
[0903] If the user allows location information to be shared, the device will use its GPS function to obtain its current location. The obtained location information will then be sent to the server.
[0904] Input: User permission to share location information
[0905] Data processing: Location information acquisition
[0906] Output: The acquired location information is sent to the server.
[0907] Step 8:
[0908] The server searches for the nearest medical facility based on the acquired location information. It uses external APIs such as the Google Places API to identify the hospital or clinic closest to the user's current location.
[0909] Input: Acquired location information
[0910] Data processing: Searching for medical facilities using external APIs
[0911] Output: List of nearby medical facilities
[0912] Step 9:
[0913] The server sends the generated treatment methods, advice, and information on the nearest medical facilities to the terminal in JSON format.
[0914] Input: Generated treatment / advice, list of nearest medical facilities
[0915] Data processing: Convert information to JSON format
[0916] Output: Sent to the terminal in JSON format.
[0917] Step 10:
[0918] The device displays the received information on its user interface. Users can then use the displayed advice and information about the nearest medical facilities to take appropriate action regarding their symptoms.
[0919] Input: Information in JSON format sent from the server
[0920] Data processing: Converting JSON formatted information into a user interface.
[0921] Output: Appropriately formatted advice and medical facility information are displayed on the screen.
[0922] (Application Example 2)
[0923] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0924] Traditional healthcare systems have made it difficult for users to quickly find appropriate treatments or nearby medical facilities when they become ill. Furthermore, emotional support and dietary suggestions tailored to their condition have not been adequately considered. Users who are unwell often find it difficult to prepare meals in their daily lives, leading to insufficient nutrition. Solving this problem is essential.
[0925] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0926] In this invention, the server includes means for inputting symptoms, means for analyzing the input symptoms to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, means for searching for appropriate meal suggestions and delivery services based on the input symptoms, and means for providing the user with the treatments, advice, and medical facility information. This allows the user to quickly obtain accurate treatments, receive emotional support, and receive meal suggestions tailored to their physical condition, enabling them to order quickly.
[0927] "Means for inputting symptoms" refers to an interface that allows users to input symptoms of illness through their device.
[0928] "Means for analyzing entered symptoms to identify a medical condition" refers to functions or modules that analyze entered symptom data and diagnose an appropriate medical condition.
[0929] "Means for generating appropriate treatments and advice based on identified medical conditions" refers to functions or modules that generate treatments and advice suitable for the user based on identified medical condition information.
[0930] "Means for searching for the nearest medical facility based on the user's location information" refers to functions or modules that use the user's current location to search for the nearest medical facility.
[0931] "Means for searching for appropriate meal suggestions and delivery services based on entered symptoms" refers to a function or module that searches for delivery services that provide meals suitable for the user's physical condition based on the entered symptom information.
[0932] "Means of providing users with treatment methods, advice, and medical facility information" refers to an interface for communicating generated treatment methods, advice, and searched medical facility information to users.
[0933] The system based on this invention is designed to allow users to quickly obtain appropriate treatment and dietary suggestions when they are feeling unwell. This system includes the following hardware and software:
[0934] Hardware configuration
[0935] Device: Smartphone or tablet. This will serve as the interface for users to input symptoms and receive advice and suggestions.
[0936] Server: A central system for data analysis and processing.
[0937] Software Configuration
[0938] Natural language processing software (NLPProcessor, e.g., NLTK or spaCy) is used to extract symptoms from the user's input text.
[0939] The emotion recognition engine, EmotionRecognizer, analyzes emotions from the user's input text.
[0940] Medical diagnostic engine: Identifies medical conditions based on symptoms via the Medical Diagnosis API.
[0941] Meal suggestion system: Uses the Food Delivery API to generate meal suggestions based on the user's current location and symptoms.
[0942] Processing flow
[0943] 1. User symptom input
[0944] The user uses their device to input their symptoms of illness. For example, they might input, "I have a sore throat and a fever."
[0945] 2. Sending symptom data
[0946] The terminal sends the entered symptom data to the server in JSON format.
[0947] 3. Analysis of symptoms and emotions
[0948] The server analyzes the received data using natural language processing software and extracts keywords. Simultaneously, an emotion recognition engine recognizes the user's emotions.
[0949] 4. Identifying the symptoms
[0950] The server sends the extracted keywords to the Medial Diagnosis API to identify the associated medical condition.
[0951] 5. Generating treatment methods and advice
[0952] The server generates treatment plans and advice based on the identified medical condition and emotional analysis results.
[0953] 6. Searching for meal suggestions and delivery services
[0954] The server uses the Food Delivery API to search for appropriate meal suggestions and the nearest delivery service based on the user's location and symptoms.
[0955] 7. Sending and displaying information
[0956] The server sends the generated treatment methods, advice, meal suggestions, and information on the nearest delivery service to the terminal in JSON format, which the terminal then displays in the user interface.
[0957] Specific example
[0958] For example, if a user enters symptoms such as "sore throat and fever" and their location is Tokyo, the server uses natural language processing and sentiment recognition to identify the medical condition based on the symptoms. Next, it generates appropriate treatment and advice, such as "We recommend you stay well-hydrated and nutritious. Also, get plenty of rest." It also uses the Food Delivery API to search for the nearest restaurants and delivery services that offer healthy food based on the user's location and provides that information to the user.
[0959] Example of a prompt
[0960] Specific examples of prompt statements are as follows:
[0961] "I have a sore throat and a fever."
[0962] This prompt allows users to quickly receive optimal treatment and dietary suggestions, providing peace of mind even when feeling unwell.
[0963] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0964] Step 1:
[0965] The user enters their symptoms using a device such as a smartphone or tablet. For example, they might enter "I have a sore throat and a fever." When this input is made, the device temporarily saves this data. The system receives the user's symptom data in text format as input and converts it to JSON format as output.
[0966] Step 2:
[0967] The terminal converts the entered symptom data into JSON format and sends it to the server. The specific data is in the following format: "{ "symptoms": "sore throat and fever", "user_id": "12345", "location": "35.6895,139.6917"}". It receives user symptom data in text format as input and generates JSON data to send to the server as output.
[0968] Step 3:
[0969] The server passes the received symptom data to natural language processing software (NLPProcessor) to extract keywords. In a specific example, the keywords "throat" and "fever" are extracted. The server receives symptom data in JSON format as input and generates a list of keywords as output.
[0970] Step 4:
[0971] The server passes the text data, along with the extracted keywords, to the emotion recognition engine (EmotionRecognizer) to analyze the user's emotions. Specifically, for example, the emotion "anxiety" might be recognized. It receives keywords from symptom data as input and generates emotion information as output.
[0972] Step 5:
[0973] The server uses the extracted keywords to send symptom data to the Medical Diagnosis API to identify the disease. For example, diseases such as "influenza" or "cold" are identified. It takes a list of keywords as input and generates disease information as output.
[0974] Step 6:
[0975] The server retrieves and generates appropriate treatments and advice from its internal database based on identified medical conditions and emotional information. For example, it might generate advice such as, "We recommend you drink plenty of fluids and get plenty of rest. Also, try relaxation techniques to alleviate anxiety." It takes medical condition information and emotional information as input and generates advice text as output.
[0976] Step 7:
[0977] The server uses the Food Delivery API to search for appropriate meal suggestions and delivery services based on the user's location and symptoms. For example, it searches for restaurants and delivery services that offer healthy meals. It receives the user's location and symptom data as input and generates information on the nearest delivery service as output.
[0978] Step 8:
[0979] The server sends the generated treatments, advice, meal suggestions, and nearest delivery service information to the terminal in JSON format. It receives treatments, advice, meal suggestions, and delivery service information as input and generates JSON data to provide to the user as output.
[0980] Step 9:
[0981] The terminal parses the received JSON data and displays it on the user interface. For example, treatment methods, advice, meal suggestions, and delivery service information are displayed in an easy-to-understand format. It receives JSON data sent from the server as input and converts it into a user-friendly format for output.
[0982] This allows users to quickly receive appropriate treatment and dietary suggestions and take the necessary steps.
[0983] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0984] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0985] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[0986] [Third Embodiment]
[0987] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0988] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0989] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0990] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[0991] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0992] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0993] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0994] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0995] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[0996] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0997] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0998] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[0999] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms, identifies the medical condition, and provides appropriate treatment and advice. The system is designed to enable users to quickly and easily obtain medical information and find appropriate medical facilities.
[1000] User symptom input
[1001] When a user feels unwell, they input their symptoms into the application using their device (smartphone or computer). For example, a user might input, "I have a severe headache and feel nauseous."
[1002] Submit the entered symptoms
[1003] The terminal sends the entered symptom data to the server. The data is generally sent in a standard format such as JSON.
[1004] Symptom analysis
[1005] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing techniques (such as NLTK or spaCy) to extract keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[1006] Matching symptoms with disease state
[1007] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. For example, if "headache" and "nausea" are extracted, "migraine" and "food poisoning" may be identified as possible conditions.
[1008] Generating valid phrases
[1009] The server generates treatments and advice based on the identified medical condition. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as, "It is recommended that you stay well-hydrated and rest in a dark place. Also, if your symptoms persist, please see a doctor," might be generated.
[1010] Obtaining user location information
[1011] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. This location information is used by the system to search for the nearest medical facility.
[1012] Search for the nearest medical facility
[1013] Based on the acquired location information, the server uses an internal database or an external API (e.g., Google Places API) to search for the nearest medical facilities. The server then generates a list of the nearest hospitals and clinics as search results.
[1014] Information transmission and display
[1015] The server sends the generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and visit the nearest medical facility if necessary.
[1016] Specific example
[1017] For example, if user A enters "I have a fever and a cough" into the terminal, the terminal sends these symptoms to the server. The server analyzes the keywords "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay well-hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the terminal along with a list of the nearest medical facilities. The terminal displays this information to user A, allowing user A to take appropriate action.
[1018] This invention allows users to quickly obtain accurate medical information and, if necessary, find the nearest medical facility. This can reduce anxiety and confusion when feeling unwell.
[1019] The following describes the processing flow.
[1020] Step 1:
[1021] The user enters their symptoms of illness into an application on their device.
[1022] Example: Enter the text "I have a terrible headache and feel nauseous."
[1023] Step 2:
[1024] The terminal sends the entered symptom data to the server in JSON format.
[1025] Example of data to be sent:
[1026] json
[1027] {
[1028] "Symptoms": "Severe headache and nausea",
[1029] "user_id": "12345"
[1030] }
[1031] Step 3:
[1032] The server passes the received JSON data to the parsing module. The parsing module uses a natural language processing library (e.g., NLTK or spaCy) to extract keywords such as "headache" and "nausea."
[1033] example:
[1034] Python
[1035] Symptoms = "Severe headache and nausea"
[1036] keywords = extract_keywords(symptoms)
[1037] Keywords -> ["headache", "nausea"]
[1038] Step 4:
[1039] The server compares the extracted keywords with a list of symptoms and conditions in its internal database. This identifies the recognized medical condition.
[1040] example:
[1041] Python
[1042] possible_conditions = find_conditions(keywords)
[1043] possible_conditions -> ["Migraine", "Food poisoning", "Tension headache"]
[1044] Step 5:
[1045] The server retrieves effective phrases and treatments corresponding to possible medical conditions from its internal database and generates appropriate advice.
[1046] example:
[1047] Python
[1048] advice = generate_advice(possible_conditions)
[1049] Advice -> "We recommend staying well-hydrated and resting in a dark place. If symptoms persist, please consult a doctor."
[1050] Step 6:
[1051] If the user allows the device to access their current location, the device will use its GPS function to obtain that location information.
[1052] Examples of location information obtained:
[1053] json
[1054] {
[1055] "latitude": "35.6895",
[1056] "longitude": "139.6917"
[1057] }
[1058] Step 7:
[1059] Based on the location information acquired by the server, the system searches for the nearest medical facility using an internal database or an external API (e.g., Google Places API).
[1060] example:
[1061] Python
[1062] hospitals = find_nearby_hospitals(latitude, longitude)
[1063] hospitals -> [{"name": "AA Clinic", "address": "XXXX"}, {"name": "BB Hospital", "address": "YYYY"}]
[1064] Step 8:
[1065] The server sends advice on valid phrases and information on the nearest medical facilities to the terminal in JSON format.
[1066] Example of data to be sent:
[1067] json
[1068] {
[1069] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. If symptoms persist, please consult a doctor."
[1070] "hospitals": [
[1071] {"name": "AA Clinic", "address": "XXXX"},
[1072] {"name": "BB Hospital", "address": "YYYY"}
[1073] ]
[1074] }
[1075] Step 9:
[1076] The device displays the information it receives on the user interface. The user can read the advice and, if necessary, go to the displayed hospital.
[1077] (Example 1)
[1078] Next, we will describe Example 1. 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."
[1079] In recent years, obtaining quick and accurate medical information when feeling unwell has become extremely important, but there is a lack of systems that provide information to help users immediately find medical facilities or take appropriate initial action. Furthermore, because there is no system that predicts the condition of a person's illness and guides them to appropriate treatments and the nearest medical facilities simply by inputting their symptoms, users are prone to anxiety and confusion.
[1080] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1081] In this invention, the server includes means for the user to input symptoms, means for transmitting the input symptom data to a processing device, means for analyzing the transmitted symptom data using natural language processing technology to extract keywords for the symptoms, means for searching a database based on the extracted keywords to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for acquiring the user's location information, means for searching for the nearest medical facility based on the location information, and means for providing the generated treatments, advice, and medical facility information to the user. This enables the user to quickly and accurately obtain medical information and easily find the nearest medical facility.
[1082] A "user" refers to a person who uses the system to input symptoms.
[1083] "Symptom data" refers to specific information about the user's physical ailments, and is generally provided in text format.
[1084] "Natural language processing technology" refers to techniques that enable computers to understand and analyze human language. Examples include keyword extraction and semantic analysis of texts.
[1085] "Keywords" refer to important words or phrases extracted from symptom data.
[1086] A "database" refers to a collection of information that aggregates and allows for searching and referencing information about medical conditions and symptoms.
[1087] "Medical condition" refers to diseases or health conditions related to the symptoms entered by the user, as identified through analysis and matching.
[1088] "Treatment" refers to appropriate medical procedures or methods for a specific medical condition.
[1089] "Advice" refers to suggestions and recommended actions provided to the user based on their identified medical condition.
[1090] "Location information" refers to data on the user's current location obtained using GPS functionality, etc.
[1091] A "medical facility" refers to a place that provides medical services, such as a hospital or clinic.
[1092] A "processing device" refers to a computer system that operates on a server or cloud, and is a device that receives, analyzes, processes, and provides data.
[1093] A "server" refers to a computer system that receives, analyzes, and processes data within a system and provides the results.
[1094] "Terminal" refers to a smartphone, computer, or other device used by a user to access the system and input / display data.
[1095] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms, identifies the medical condition, and then provides appropriate treatment methods and advice. The system is designed to allow users to quickly and easily obtain medical information and find appropriate medical facilities.
[1096] User symptom input
[1097] When a user feels unwell, they launch the application using a device such as a smartphone or computer and enter their specific symptoms in text format. For example, the user might enter information such as, "I have a severe headache and feel nauseous."
[1098] Submit the entered symptoms
[1099] The terminal sends the entered symptom data to the server. This data is typically transmitted over the network using a standard format such as JSON.
[1100] Symptom analysis
[1101] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing techniques (e.g., NLTK or spaCy) to extract important keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[1102] Matching symptoms with disease state
[1103] The server searches its internal medical database based on keywords extracted by the analysis module to identify related medical conditions. For example, if the keywords are "headache" and "nausea," the database will search for conditions such as "migraine" and "food poisoning."
[1104] Generating advice
[1105] Based on the identified medical condition, the server retrieves and generates appropriate treatments and advice from its internal database. For example, it might generate a message such as, "We recommend staying well-hydrated and resting in a dark place. If symptoms persist, please consult a doctor."
[1106] Obtaining user location information
[1107] If the user allows location information sharing, the device uses its GPS function to obtain the user's current location. Specific location information such as "Latitude 35.6895, Longitude 139.6917 (Tokyo)" will be obtained.
[1108] Search for the nearest medical facility
[1109] The server uses the acquired location information to search for the nearest medical facilities using an internal database or an external API (e.g., Google Places API). For example, it might search for "the nearest clinics and hospitals in Tokyo" and generate a list of them.
[1110] Information transmission and display
[1111] The server sends generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on its user interface, providing it in a format that is easy for the user to understand. For example, based on the received information, it might display something like, "Stay hydrated and get some rest. The nearest medical facility is XX Clinic (Address: 1-1-1 Chiyoda-ku, Tokyo, Phone number: 03-1234-5678)."
[1112] Specific example
[1113] For example, if user A enters "I have a fever and a cough" into the terminal, the terminal sends this symptom data to the server. The server analyzes keywords such as "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay well-hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the terminal along with a list of the nearest medical facilities. The terminal displays this information to user A, allowing user A to take appropriate action.
[1114] Example of a prompt
[1115] "User A entered 'I have a fever and a cough' into the terminal. Please generate appropriate treatment options, advice, and information on the nearest medical facility."
[1116] "User B entered 'I'm experiencing persistent abdominal pain and diarrhea.' Please tell me what kind of medical condition this could be."
[1117] This invention allows users to quickly and accurately obtain medical information and find the nearest medical facility as needed. This can reduce anxiety and confusion when feeling unwell.
[1118] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1119] Processing flow divided into processing steps
[1120] Step 1:
[1121] The user enters their symptoms.
[1122] When a user feels unwell, they use their smartphone or computer to enter their symptoms into the application. For example, they might enter specific symptoms such as "I have a severe headache and feel nauseous." The entered data is saved in JSON format.
[1123] input:
[1124] User symptom information (text)
[1125] output:
[1126] Entered symptom data (JSON format)
[1127] Step 2:
[1128] The entered symptom data is sent to the server.
[1129] The terminal sends the entered symptom data to the server. The transmission protocol uses HTTP or HTTPS, and the data is sent in JSON format.
[1130] input:
[1131] Entered symptom data (JSON format)
[1132] output:
[1133] Completed sending of symptom data to the server.
[1134] Step 3:
[1135] Receiving and analyzing symptom data
[1136] The server receives symptom data sent from the terminal and passes it to the analysis module. The analysis module uses natural language processing technology (e.g., NLTK or spaCy) to extract keywords from the symptom data. For example, keywords such as "headache" and "nausea" may be extracted.
[1137] input:
[1138] Submitted symptom data (in JSON format)
[1139] output:
[1140] Extracted keywords (list)
[1141] Step 4:
[1142] Database matching of symptom keywords
[1143] The server searches its internal medical database based on the extracted keywords to identify related medical conditions. For example, for the keywords "headache" and "nausea," possible medical conditions identified might include "migraine" and "food poisoning."
[1144] input:
[1145] Extracted keywords (list)
[1146] output:
[1147] Identified medical conditions (list)
[1148] Step 5:
[1149] Generating treatment methods and advice
[1150] Based on the identified medical condition, the server retrieves and generates appropriate treatments and advice from a database. For example, it might generate advice such as, "Drink plenty of fluids and rest. If symptoms persist, see a doctor."
[1151] input:
[1152] Identified medical conditions (list)
[1153] output:
[1154] Generated advice (text)
[1155] Step 6:
[1156] Obtaining user location information
[1157] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. For example, it will obtain location information such as "Latitude 35.6895, Longitude 139.6917 (Tokyo)".
[1158] input:
[1159] GPS location information acquisition permission
[1160] output:
[1161] User location information (latitude, longitude)
[1162] Step 7:
[1163] Search for the nearest medical facility
[1164] The server uses its internal database or an external API (such as the Google Places API) based on the acquired location information to search for the nearest medical facilities. For example, it might search for "the nearest clinics and hospitals in Tokyo" and generate a list of them.
[1165] input:
[1166] User location information (latitude, longitude)
[1167] output:
[1168] List of nearby medical facilities
[1169] Step 8:
[1170] Sending and displaying the generated information
[1171] The server sends generated treatment methods, advice, and information about the nearest medical facility to the terminal. The terminal displays this information on its user interface, making it easy for the user to understand. For example, it might display information such as "The nearest medical facility is XX Clinic."
[1172] input:
[1173] Generated treatments, advice, and medical facility information.
[1174] output:
[1175] Displaying information to the user (text format)
[1176] In this way, the program's processing flow was explained concretely by clearly indicating the specific data processing and calculations performed at each step, as well as the inputs and outputs.
[1177] (Application Example 1)
[1178] Next, we will explain Application Example 1. In the following explanation, 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."
[1179] Traditionally, users experiencing a decline in their health have found it difficult to accurately analyze their symptoms, identify their condition, and quickly obtain information on beneficial treatments and medical facilities. As a result, users often resorted to inappropriate treatments or spent considerable time searching for appropriate medical facilities. Furthermore, no system existed that effectively utilized natural language processing technology and location services to provide this information to users. Therefore, the present invention aims to provide a system that enables users to quickly and appropriately analyze their symptoms and receive appropriate treatments, advice, and information on the nearest medical facilities.
[1180] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1181] In this invention, the server includes means for inputting symptoms, means for analyzing the input symptoms to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, means for providing the treatment, advice, and medical facility information to the user, means for displaying the advice and medical facility information on the user's terminal, means for using natural language processing technology for symptom analysis, and means for using location information services for obtaining location information. As a result, the user can quickly obtain appropriate medical information based on the input symptoms and easily find the nearest medical facility.
[1182] "Means for inputting symptoms" refers to an interface that allows users to input their own health symptoms into the device.
[1183] "Methods for analyzing and identifying medical conditions" refers to systems that use natural language processing and database lookups to diagnose specific medical conditions based on the input symptoms.
[1184] A "means for generating appropriate treatments and advice" refers to a system that presents users with recommended treatment methods and precautions based on their identified medical condition.
[1185] "A means of searching for the nearest medical facility" refers to a search function that finds the closest medical facility based on the user's location information.
[1186] "Means of providing users with treatment, advice, and medical facility information" refers to an interface for displaying generated information on treatments, advice, and medical facilities on the user's device.
[1187] "Means of displaying on the user's device" refers to a system for displaying the aforementioned treatment methods, advice, and medical facility information on the user's device, such as a smartphone or computer.
[1188] "Methods of using natural language processing technology for symptom analysis" refer to natural language processing techniques used to analyze symptoms in input text and extract meaning and important keywords.
[1189] "Means of using location information services to obtain location information" refers to functions that use GPS or other location information services to determine the geographical location of a user.
[1190] This invention provides a system that, when a user experiences health problems, allows them to input their symptoms and provides appropriate treatment methods, advice, and information on the nearest medical facilities. This system is comprised of a user's terminal, a server, and location information services.
[1191] User symptom input
[1192] When a user feels unwell, they use a device such as a smartphone or computer to input their symptoms into the application. For example, a user might input, "I have a severe headache and feel nauseous." A text input interface is used for this input.
[1193] Submit the entered symptoms
[1194] The terminal sends the entered symptom data to the server. This data is generally sent in a standard format such as JSON.
[1195] Symptom analysis
[1196] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing technology (e.g., spaCy) to extract keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[1197] Matching symptoms with disease state
[1198] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. For example, if "headache" and "nausea" are extracted, "migraine" and "food poisoning" may be identified as possible conditions.
[1199] Generating valid phrases
[1200] The server generates treatments and advice based on the identified medical condition. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as, "It is recommended that you stay well-hydrated and rest in a dark place. Also, if your symptoms persist, please see a doctor," might be generated.
[1201] Obtaining user location information
[1202] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. This location information is used by the system to search for the nearest medical facility.
[1203] Search for the nearest medical facility
[1204] Based on the acquired location information, the server searches for the nearest medical facility using an internal database or an external data source (e.g., Google Places API). The server generates a list of the nearest hospitals and clinics as search results.
[1205] Information transmission and display
[1206] The server sends generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and visit the nearest medical facility if necessary.
[1207] Specific example
[1208] For example, if a user enters "I have a fever and a cough" into the device, the device sends these symptoms to the server. The server analyzes the keywords "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the device along with a list of the nearest medical facilities. The device displays this information to the user, allowing them to take appropriate action.
[1209] Example of a prompt
[1210] Write a Python function that analyzes the symptoms of illness entered by the user, extracts appropriate keywords, and identifies the medical condition. Next, add a function that retrieves the user's location information and searches for the nearest medical facility based on that information. Include code to send the results to a server in JSON format and display the server's response to the user.
[1211] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1212] Step 1:
[1213] The user enters their symptoms of illness into a device such as a smartphone or computer. A text input form is used as the interface. The entered symptom data is stored in string format.
[1214] Step 2:
[1215] The terminal converts the entered symptom data into JSON format and sends it to the server. The input here is text data of symptoms entered by the user, and the output is data in JSON format.
[1216] Step 3:
[1217] The server receives JSON data sent from the terminal. The received data is then passed to the analysis module. The input here is symptom data in JSON format, and the output is string data passed to the analysis module.
[1218] Step 4:
[1219] The server's analysis module uses natural language processing techniques (e.g., spaCy) to extract keywords from symptom data. For example, keywords such as "headache" and "nausea" are extracted. The input here is the received string data, and the output is a list of the extracted keywords.
[1220] Step 5:
[1221] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. The input here is a list of keywords, and the output is the identified condition.
[1222] Step 6:
[1223] The server generates appropriate treatments and advice based on the identified medical condition. These treatments and advice are retrieved from an internal database and generated as messages for the user. The input here is the identified medical condition, and the output is the generated text of the treatment or advice.
[1224] Step 7:
[1225] If the user allows location information to be shared, the device uses GPS functionality to obtain the user's current location. The input here is the user's location request, and the output is the latitude and longitude information of the current location.
[1226] Step 8:
[1227] The server uses the acquired location information to search for the nearest medical facility using an internal database or an external data source (e.g., Google Places API). The input here is location information (latitude and longitude), and the output is a list of the nearest medical facilities.
[1228] Step 9:
[1229] The server sends generated treatment methods, advice, and information on the nearest medical facilities to the terminal. The input here is the generated text and lists, and the output is the information sent to the terminal.
[1230] Step 10:
[1231] The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and, if necessary, visit the nearest medical facility. The input here is information received from the server, and the output is what is displayed on the user interface.
[1232] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1233] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms to identify the medical condition and then provides appropriate treatment and advice. This system is designed to allow users to quickly and easily obtain medical information and find appropriate medical facilities. Furthermore, by incorporating an emotion engine that recognizes the user's emotions, it becomes possible to provide responses that take their emotional state into consideration.
[1234] User symptom input
[1235] When a user feels unwell, they input their symptoms into a dedicated application using a device (such as a smartphone or tablet). For example, consider a case where the user inputs, "I have a severe headache and feel nauseous."
[1236] Submit the entered symptoms
[1237] The terminal sends the entered symptom data to the server in JSON format. The data sent will look like this:
[1238] json
[1239] {
[1240] "Symptoms": "Severe headache and nausea",
[1241] "user_id": "12345"
[1242] }
[1243] Symptom analysis and emotion recognition
[1244] The server passes the received data to the analysis module. The analysis module first extracts keywords (e.g., "headache," "nausea") from the input symptom data using natural language processing techniques (e.g., NLTK or spaCy). Furthermore, the emotion engine recognizes and analyzes the user's emotions (e.g., anxiety or stress) from the text.
[1245] Matching symptoms with disease state
[1246] The server uses the extracted keywords to match them against a list of symptoms and conditions in its internal database. This identifies the medical condition most closely related to the entered symptoms, such as "migraine" or "food poisoning."
[1247] Generating valid phrases
[1248] The server generates effective treatments and advice based on identified symptoms and emotional analysis results. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as "It is recommended that you stay well-hydrated and rest in a dark place. Also, if symptoms persist, please see a doctor" may include specific emotional care advice (such as "Take deep breaths and relax").
[1249] Obtaining user location information
[1250] If the user allows location information to be shared, the device will use its GPS function to obtain its current location. This location information is used by the system to search for the nearest medical facility.
[1251] Search for the nearest medical facility
[1252] The server uses the acquired location information to search for the nearest medical facilities using an internal database or an external API (e.g., Google Places API). The search results generate a list of the nearest hospitals and clinics.
[1253] Information transmission and display
[1254] The server sends the generated treatment plan, advice, and information on the nearest medical facility to the terminal in JSON format. The data sent will look like this:
[1255] json
[1256] {
[1257] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. If symptoms persist, please consult a doctor. Take deep breaths and relax."
[1258] "hospitals": [
[1259] {"name": "AA Clinic", "address": "XXXX"},
[1260] {"name": "BB Hospital", "address": "YYYY"}
[1261] ]
[1262] }
[1263] Displaying information
[1264] The terminal displays the received information on the user interface. Users can read the displayed advice and, if necessary, visit the displayed medical facilities.
[1265] Specific example
[1266] For example, if user A enters symptoms such as "I have a fever and a cough," the terminal sends this information to the server. The server uses natural language processing technology to extract the keywords "fever" and "cough," and by referring to a disease database, identifies the condition, such as "influenza" or "cold." At the same time, the emotion engine recognizes "anxiety" from the user's text. The server generates a message containing advice such as "Drink plenty of fluids and get plenty of rest," and emotional care advice such as "Try relaxing breathing exercises to alleviate your anxiety," and sends it to the terminal along with information on the nearest medical facility. The terminal displays this information in the user interface, allowing user A to take appropriate action.
[1267] Thus, the present invention allows users to quickly obtain accurate medical information and receive advice that takes their emotional state into consideration. This reduces anxiety and confusion during times of illness and makes it possible to find appropriate medical facilities.
[1268] The following describes the processing flow.
[1269] Step 1:
[1270] The user enters their symptoms of illness into an application on their device.
[1271] Example: Enter the text "I have a terrible headache and feel nauseous."
[1272] Step 2:
[1273] The terminal sends the entered symptom data, along with the emotion engine, to the server in JSON format.
[1274] Example of data to be sent:
[1275] json
[1276] {
[1277] "Symptoms": "Severe headache and nausea",
[1278] "user_id": "12345"
[1279] }
[1280] Step 3:
[1281] The server passes the received JSON data to the parsing module. The parsing module first uses natural language processing techniques (e.g., NLTK or spaCy) to extract keywords such as "headache" and "nausea" from the symptom data.
[1282] example:
[1283] Python
[1284] Symptoms = "Severe headache and nausea"
[1285] keywords = extract_keywords(symptoms)
[1286] Keywords -> ["headache", "nausea"]
[1287] Step 4:
[1288] The server uses an emotion engine to analyze the user's emotions from symptom data. For example, it might recognize from the input text that the user is feeling anxious.
[1289] example:
[1290] Python
[1291] emotion = analyze_emotion(symptoms)
[1292] emotion -> "anxiety"
[1293] Step 5:
[1294] The server uses the extracted keywords to compare them with a list of symptoms and conditions in its internal database. This allows it to identify possible medical conditions.
[1295] example:
[1296] Python
[1297] possible_conditions = find_conditions(keywords)
[1298] possible_conditions -> ["Migraine", "Food poisoning", "Tension headache"]
[1299] Step 6:
[1300] The server generates effective phrases and treatment methods based on the identified medical condition and emotional analysis results. For example, in response to an identified migraine, it generates emotional care advice such as "drink plenty of fluids and rest in a dark place," as well as "take deep breaths and relax."
[1301] example:
[1302] Python
[1303] advice = generate_advice(possible_conditions, emotion)
[1304] Advice -> "We recommend staying well-hydrated and resting in a dark place. Also, take deep breaths and relax."
[1305] Step 7:
[1306] If the user allows location information to be shared, the device will use its GPS function to obtain the current location.
[1307] Examples of location information obtained:
[1308] json
[1309] {
[1310] "latitude": "35.6895",
[1311] "longitude": "139.6917"
[1312] }
[1313] Step 8:
[1314] Based on the location information acquired by the server, the system searches for the nearest medical facility using an internal database or an external API (e.g., Google Places API).
[1315] example:
[1316] Python
[1317] hospitals = find_nearby_hospitals(latitude, longitude)
[1318] hospitals -> [{"name": "AA Clinic", "address": "XXXX"}, {"name": "BB Hospital", "address": "YYYY"}]
[1319] Step 9:
[1320] The server sends the generated treatment plan, advice, and information on the nearest medical facility to the terminal in JSON format.
[1321] Example of data to be sent:
[1322] json
[1323] {
[1324] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. Also, take deep breaths and relax."
[1325] "hospitals": [
[1326] {"name": "AA Clinic", "address": "XXXX"},
[1327] {"name": "BB Hospital", "address": "YYYY"}
[1328] ]
[1329] }
[1330] Step 10:
[1331] The device displays the information it receives on the user interface. The user can read the displayed advice and, if necessary, go to the displayed hospital.
[1332] (Example 2)
[1333] Next, we will describe Example 2. 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."
[1334] In modern society, it is crucial to obtain medical information that quickly and accurately addresses one's symptoms when feeling unwell. However, when many people search for information online, they often doubt the accuracy and appropriateness of the information, resulting in anxiety. Furthermore, medical advice that ignores the user's emotional state risks amplifying this anxiety. Finding the nearest medical facility quickly is also a challenge. This invention aims to solve these problems by providing a system that allows users to quickly obtain accurate medical information while also providing comprehensive support, including emotional care.
[1335] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1336] In this invention, the server includes means for the user to input symptoms of illness, means for transmitting the input symptom data to the server, means for analyzing the symptom data using natural language processing technology to extract keywords for the symptoms, means for recognizing and analyzing the user's emotions based on the keywords, means for identifying a medical condition based on the keywords and the user's emotions, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, and means for providing the user with the treatments, advice, and medical facility information. As a result, the user can quickly and accurately obtain appropriate medical advice for their symptoms and receive comprehensive support, including emotional care, thereby reducing anxiety and confusion and enabling them to quickly find the nearest medical facility.
[1337] "Means for inputting symptoms" refers to methods or devices for users to input symptoms of illness into a system.
[1338] "Means for sending entered symptom data to a server" refers to methods or devices for sending symptom information entered by a user to a server via a network.
[1339] "Means for analyzing and extracting symptom keywords using natural language processing technology" refers to methods or devices that use natural language processing technology to extract important keywords from input text data.
[1340] "Means for recognizing and analyzing user emotions based on keywords" refers to methods and devices that estimate and analyze a user's emotional state from keywords or input text.
[1341] "Means for identifying medical conditions based on keywords and user sentiment" refers to methods or devices that identify related medical conditions based on extracted keywords and the user's emotional state.
[1342] "Means for generating appropriate treatments and advice based on identified medical conditions" refers to methods or devices that generate optimal treatments and advice based on identified medical conditions.
[1343] "Means for searching for the nearest medical facility based on the user's location information" refers to methods or devices that use the user's current location information to search for the nearest medical facility.
[1344] "Means of providing users with treatments, advice, and medical facility information" refers to methods and devices for providing users with generated treatments, advice, and retrieved medical facility information.
[1345] This invention relates to a system that, upon receiving input from a user regarding their symptoms of illness, analyzes those symptoms to identify the medical condition and then provides appropriate treatment methods and advice. Embodiments of this invention are described in detail below.
[1346] First, the user enters their symptoms into a dedicated application using a smartphone or tablet. The entered data is in a free-text format, such as "I have a severe headache and feel nauseous." Next, this entered data is sent from the device to the server. The device converts the data into JSON format and sends it to the server via the internet.
[1347] The server passes the received data to the analysis module. This analysis module uses natural language processing techniques (such as NLTK or spaCy) to extract keywords from the input symptom data. For example, keywords such as "headache" and "nausea" are detected. Simultaneously, the emotion engine recognizes the user's emotional state from the input text. This emotion engine also uses similar natural language processing techniques to analyze the emotions in the text. For example, emotional states such as "anxiety" and "stress" are recognized.
[1348] Next, the server accesses an internal database based on the extracted keywords and compares them with a list of symptoms and conditions. This identifies the most relevant condition. For example, "migraine" or "food poisoning" may be identified. Subsequently, based on the identified condition and the sentiment analysis results, appropriate treatments and advice are generated. These treatments and advice are retrieved from the internal database and generated as messages provided to the user. For example, advice such as, "We recommend staying well-hydrated and resting in a dark place. Also, if symptoms persist, please see a doctor," may be generated.
[1349] Furthermore, if the user allows location information to be shared, the device uses its GPS function to obtain its current location. This location information is sent to the server and used to search for the nearest medical facility. The server uses external APIs, such as the Google Places API, to search for the medical facility closest to the user's current location. For example, nearby hospitals and clinics are listed.
[1350] Finally, the server sends the generated treatment methods, advice, and information on the nearest medical facility to the device. This information is again sent in JSON format, but is displayed in an easy-to-read format through the user interface on the device. By referring to the displayed advice, the user can take appropriate action for their symptoms. Furthermore, based on the information on the nearest medical facility, they can quickly visit the appropriate medical facility.
[1351] As an example, consider a case where User A inputs symptoms such as "I have a fever and a cough." The terminal sends this information to the server, which extracts the keywords "fever" and "cough." By referring to the disease database, the server identifies the condition, such as "influenza" or "cold." Simultaneously, the emotion engine recognizes "anxiety." The server generates a message containing treatment advice such as "drink plenty of fluids and get rest" and emotional care advice such as "try relaxing breathing exercises to alleviate your anxiety," and sends it to the terminal along with information on the nearest medical facility. The terminal displays this information in the user interface, allowing User A to take appropriate action.
[1352] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1353] Step 1:
[1354] Users enter their symptoms into a dedicated application. For example, they might describe detailed symptoms such as "I have a severe headache and feel nauseous." The input data is in text format, and there are no specific formatting restrictions. The entered text data records the symptoms on the device.
[1355] Input: Symptom text entered by the user
[1356] Output: Text data recorded on the terminal
[1357] Step 2:
[1358] The terminal converts the entered symptom data into JSON format and sends it to the server. Specifically, it generates a JSON object containing the user ID and symptom text, and sends it to the server using the HTTP protocol.
[1359] Input: Text data recorded on the device
[1360] Data processing: Convert text data to JSON format.
[1361] Output: Data in JSON format is sent to the server.
[1362] Step 3:
[1363] The server passes the received data to an analysis module, which uses natural language processing techniques to extract keywords. For example, it can use NLTK or spaCy to extract keywords such as "headache" or "nausea" from the text entered by the user.
[1364] Input: Data received in JSON format
[1365] Data processing: Extracting keywords using natural language processing techniques.
[1366] Output: Extracted keyword list
[1367] Step 4:
[1368] The server uses an emotion engine to recognize and analyze the user's emotional state from the input text. It analyzes emotional expressions within the text to identify emotions such as "anxiety" and "stress."
[1369] Input: Data received in JSON format
[1370] Data processing: Recognizing and analyzing emotions using an emotion engine.
[1371] Output: Recognized emotional state
[1372] Step 5:
[1373] Based on the extracted keywords and recognized emotional states, the server consults an internal database to identify the corresponding medical condition. For example, symptoms with the keywords "headache" and "nausea" and the emotion "anxiety" might be identified as "migraine" or "food poisoning."
[1374] Input: Extracted keyword list, recognized emotional state
[1375] Data processing: Identifying the patient's condition by matching it with an internal database.
[1376] Output: Identified medical condition
[1377] Step 6:
[1378] The server generates appropriate treatments and advice based on identified medical conditions and perceived emotional states. These treatments and advice are retrieved from an internal database. For example, it might generate advice recommending "stay well-hydrated and rest in a dark place."
[1379] Input: Identified medical condition, perceived emotional state
[1380] Data processing: Generate treatment methods and advice by referencing an internal database.
[1381] Output: Generated treatment methods and advice
[1382] Step 7:
[1383] If the user allows location information to be shared, the device will use its GPS function to obtain its current location. The obtained location information will then be sent to the server.
[1384] Input: User permission to share location information
[1385] Data processing: Location information acquisition
[1386] Output: The acquired location information is sent to the server.
[1387] Step 8:
[1388] The server searches for the nearest medical facility based on the acquired location information. It uses external APIs such as the Google Places API to identify the hospital or clinic closest to the user's current location.
[1389] Input: Acquired location information
[1390] Data processing: Searching for medical facilities using external APIs
[1391] Output: List of nearby medical facilities
[1392] Step 9:
[1393] The server sends the generated treatment methods, advice, and information on the nearest medical facilities to the terminal in JSON format.
[1394] Input: Generated treatment / advice, list of nearest medical facilities
[1395] Data processing: Convert information to JSON format
[1396] Output: Sent to the terminal in JSON format.
[1397] Step 10:
[1398] The device displays the received information on its user interface. Users can then use the displayed advice and information about the nearest medical facilities to take appropriate action regarding their symptoms.
[1399] Input: Information in JSON format sent from the server
[1400] Data processing: Converting JSON formatted information into a user interface.
[1401] Output: Appropriately formatted advice and medical facility information are displayed on the screen.
[1402] (Application Example 2)
[1403] Next, we will explain application example 2. In the following explanation, 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."
[1404] Traditional healthcare systems have made it difficult for users to quickly find appropriate treatments or nearby medical facilities when they become ill. Furthermore, emotional support and dietary suggestions tailored to their condition have not been adequately considered. Users who are unwell often find it difficult to prepare meals in their daily lives, leading to insufficient nutrition. Solving this problem is essential.
[1405] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[1406] In this invention, the server includes means for inputting symptoms, means for analyzing the input symptoms to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, means for searching for appropriate meal suggestions and delivery services based on the input symptoms, and means for providing the user with the treatments, advice, and medical facility information. This allows the user to quickly obtain accurate treatments, receive emotional support, and receive meal suggestions tailored to their physical condition, enabling them to order quickly.
[1407] "Means for inputting symptoms" refers to an interface that allows users to input symptoms of illness through their device.
[1408] "Means for analyzing entered symptoms to identify a medical condition" refers to functions or modules that analyze entered symptom data and diagnose an appropriate medical condition.
[1409] "Means for generating appropriate treatments and advice based on identified medical conditions" refers to functions or modules that generate treatments and advice suitable for the user based on identified medical condition information.
[1410] "Means for searching for the nearest medical facility based on the user's location information" refers to functions or modules that use the user's current location to search for the nearest medical facility.
[1411] "Means for searching for appropriate meal suggestions and delivery services based on entered symptoms" refers to a function or module that searches for delivery services that provide meals suitable for the user's physical condition based on the entered symptom information.
[1412] "Means of providing users with treatment methods, advice, and medical facility information" refers to an interface for communicating generated treatment methods, advice, and searched medical facility information to users.
[1413] The system based on this invention is designed to allow users to quickly obtain appropriate treatment and dietary suggestions when they are feeling unwell. This system includes the following hardware and software:
[1414] Hardware configuration
[1415] Device: Smartphone or tablet. This will serve as the interface for users to input symptoms and receive advice and suggestions.
[1416] Server: A central system for data analysis and processing.
[1417] Software Configuration
[1418] Natural language processing software (NLPProcessor, e.g., NLTK or spaCy) is used to extract symptoms from the user's input text.
[1419] The emotion recognition engine, EmotionRecognizer, analyzes emotions from the user's input text.
[1420] Medical diagnostic engine: Identifies medical conditions based on symptoms via the Medical Diagnosis API.
[1421] Meal suggestion system: Uses the Food Delivery API to generate meal suggestions based on the user's current location and symptoms.
[1422] Processing flow
[1423] 1. User symptom input
[1424] The user uses their device to input their symptoms of illness. For example, they might input, "I have a sore throat and a fever."
[1425] 2. Sending symptom data
[1426] The terminal sends the entered symptom data to the server in JSON format.
[1427] 3. Analysis of symptoms and emotions
[1428] The server analyzes the received data using natural language processing software and extracts keywords. Simultaneously, an emotion recognition engine recognizes the user's emotions.
[1429] 4. Identifying the symptoms
[1430] The server sends the extracted keywords to the Medial Diagnosis API to identify the associated medical condition.
[1431] 5. Generating treatment methods and advice
[1432] The server generates treatment plans and advice based on the identified medical condition and emotional analysis results.
[1433] 6. Searching for meal suggestions and delivery services
[1434] The server uses the Food Delivery API to search for appropriate meal suggestions and the nearest delivery service based on the user's location and symptoms.
[1435] 7. Sending and displaying information
[1436] The server sends the generated treatment methods, advice, meal suggestions, and information on the nearest delivery service to the terminal in JSON format, which the terminal then displays in the user interface.
[1437] Specific example
[1438] For example, if a user enters symptoms such as "sore throat and fever" and their location is Tokyo, the server uses natural language processing and sentiment recognition to identify the medical condition based on the symptoms. Next, it generates appropriate treatment and advice, such as "We recommend you stay well-hydrated and nutritious. Also, get plenty of rest." It also uses the Food Delivery API to search for the nearest restaurants and delivery services that offer healthy food based on the user's location and provides that information to the user.
[1439] Example of a prompt
[1440] Specific examples of prompt statements are as follows:
[1441] "I have a sore throat and a fever."
[1442] This prompt allows users to quickly receive optimal treatment and dietary suggestions, providing peace of mind even when feeling unwell.
[1443] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1444] Step 1:
[1445] The user enters their symptoms using a device such as a smartphone or tablet. For example, they might enter "I have a sore throat and a fever." When this input is made, the device temporarily saves this data. The system receives the user's symptom data in text format as input and converts it to JSON format as output.
[1446] Step 2:
[1447] The terminal converts the entered symptom data into JSON format and sends it to the server. The specific data is in the following format: "{ "symptoms": "sore throat and fever", "user_id": "12345", "location": "35.6895,139.6917"}". It receives user symptom data in text format as input and generates JSON data to send to the server as output.
[1448] Step 3:
[1449] The server passes the received symptom data to natural language processing software (NLPProcessor) to extract keywords. In a specific example, the keywords "throat" and "fever" are extracted. The server receives symptom data in JSON format as input and generates a list of keywords as output.
[1450] Step 4:
[1451] The server passes the text data, along with the extracted keywords, to the emotion recognition engine (EmotionRecognizer) to analyze the user's emotions. Specifically, for example, the emotion "anxiety" might be recognized. It receives keywords from symptom data as input and generates emotion information as output.
[1452] Step 5:
[1453] The server uses the extracted keywords to send symptom data to the Medical Diagnosis API to identify the disease. For example, diseases such as "influenza" or "cold" are identified. It takes a list of keywords as input and generates disease information as output.
[1454] Step 6:
[1455] The server retrieves and generates appropriate treatments and advice from its internal database based on identified medical conditions and emotional information. For example, it might generate advice such as, "We recommend you drink plenty of fluids and get plenty of rest. Also, try relaxation techniques to alleviate anxiety." It takes medical condition information and emotional information as input and generates advice text as output.
[1456] Step 7:
[1457] The server uses the Food Delivery API to search for appropriate meal suggestions and delivery services based on the user's location and symptoms. For example, it searches for restaurants and delivery services that offer healthy meals. It receives the user's location and symptom data as input and generates information on the nearest delivery service as output.
[1458] Step 8:
[1459] The server sends the generated treatments, advice, meal suggestions, and nearest delivery service information to the terminal in JSON format. It receives treatments, advice, meal suggestions, and delivery service information as input and generates JSON data to provide to the user as output.
[1460] Step 9:
[1461] The terminal parses the received JSON data and displays it on the user interface. For example, treatment methods, advice, meal suggestions, and delivery service information are displayed in an easy-to-understand format. It receives JSON data sent from the server as input and converts it into a user-friendly format for output.
[1462] This allows users to quickly receive appropriate treatment and dietary suggestions and take the necessary steps.
[1463] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1464] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1465] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[1466] [Fourth Embodiment]
[1467] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1468] As shown in Figure 7, the 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.
[1469] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1470] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[1471] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1472] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1473] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1474] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive 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 robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[1475] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1476] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[1477] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1478] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1479] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1480] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms, identifies the medical condition, and provides appropriate treatment and advice. The system is designed to enable users to quickly and easily obtain medical information and find appropriate medical facilities.
[1481] User symptom input
[1482] When a user feels unwell, they input their symptoms into the application using their device (smartphone or computer). For example, a user might input, "I have a severe headache and feel nauseous."
[1483] Submit the entered symptoms
[1484] The terminal sends the entered symptom data to the server. The data is generally sent in a standard format such as JSON.
[1485] Symptom analysis
[1486] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing techniques (such as NLTK or spaCy) to extract keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[1487] Matching symptoms with disease state
[1488] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. For example, if "headache" and "nausea" are extracted, "migraine" and "food poisoning" may be identified as possible conditions.
[1489] Generating valid phrases
[1490] The server generates treatments and advice based on the identified medical condition. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as, "It is recommended that you stay well-hydrated and rest in a dark place. Also, if your symptoms persist, please see a doctor," might be generated.
[1491] Obtaining user location information
[1492] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. This location information is used by the system to search for the nearest medical facility.
[1493] Search for the nearest medical facility
[1494] Based on the acquired location information, the server uses an internal database or an external API (e.g., Google Places API) to search for the nearest medical facilities. The server then generates a list of the nearest hospitals and clinics as search results.
[1495] Information transmission and display
[1496] The server sends the generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and visit the nearest medical facility if necessary.
[1497] Specific example
[1498] For example, if user A enters "I have a fever and a cough" into the terminal, the terminal sends these symptoms to the server. The server analyzes the keywords "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay well-hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the terminal along with a list of the nearest medical facilities. The terminal displays this information to user A, allowing user A to take appropriate action.
[1499] This invention allows users to quickly obtain accurate medical information and, if necessary, find the nearest medical facility. This can reduce anxiety and confusion when feeling unwell.
[1500] The following describes the processing flow.
[1501] Step 1:
[1502] The user enters their symptoms of illness into an application on their device.
[1503] Example: Enter the text "I have a terrible headache and feel nauseous."
[1504] Step 2:
[1505] The terminal sends the entered symptom data to the server in JSON format.
[1506] Example of data to be sent:
[1507] json
[1508] {
[1509] "Symptoms": "Severe headache and nausea",
[1510] "user_id": "12345"
[1511] }
[1512] Step 3:
[1513] The server passes the received JSON data to the parsing module. The parsing module uses a natural language processing library (e.g., NLTK or spaCy) to extract keywords such as "headache" and "nausea."
[1514] example:
[1515] Python
[1516] Symptoms = "Severe headache and nausea"
[1517] keywords = extract_keywords(symptoms)
[1518] Keywords -> ["headache", "nausea"]
[1519] Step 4:
[1520] The server compares the extracted keywords with a list of symptoms and conditions in its internal database. This identifies the recognized medical condition.
[1521] example:
[1522] Python
[1523] possible_conditions = find_conditions(keywords)
[1524] possible_conditions -> ["Migraine", "Food poisoning", "Tension headache"]
[1525] Step 5:
[1526] The server retrieves effective phrases and treatments corresponding to possible medical conditions from its internal database and generates appropriate advice.
[1527] example:
[1528] Python
[1529] advice = generate_advice(possible_conditions)
[1530] Advice -> "We recommend staying well-hydrated and resting in a dark place. If symptoms persist, please consult a doctor."
[1531] Step 6:
[1532] If the user allows the device to access their current location, the device will use its GPS function to obtain that location information.
[1533] Examples of location information obtained:
[1534] json
[1535] {
[1536] "latitude": "35.6895",
[1537] "longitude": "139.6917"
[1538] }
[1539] Step 7:
[1540] Based on the location information acquired by the server, the system searches for the nearest medical facility using an internal database or an external API (e.g., Google Places API).
[1541] example:
[1542] Python
[1543] hospitals = find_nearby_hospitals(latitude, longitude)
[1544] hospitals -> [{"name": "AA Clinic", "address": "XXXX"}, {"name": "BB Hospital", "address": "YYYY"}]
[1545] Step 8:
[1546] The server sends advice on valid phrases and information on the nearest medical facilities to the terminal in JSON format.
[1547] Example of data to be sent:
[1548] json
[1549] {
[1550] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. If symptoms persist, please consult a doctor."
[1551] "hospitals": [
[1552] {"name": "AA Clinic", "address": "XXXX"},
[1553] {"name": "BB Hospital", "address": "YYYY"}
[1554] ]
[1555] }
[1556] Step 9:
[1557] The device displays the information it receives on the user interface. The user can read the advice and, if necessary, go to the displayed hospital.
[1558] (Example 1)
[1559] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1560] In recent years, obtaining quick and accurate medical information when feeling unwell has become extremely important, but there is a lack of systems that provide information to help users immediately find medical facilities or take appropriate initial action. Furthermore, because there is no system that predicts the condition of a person's illness and guides them to appropriate treatments and the nearest medical facilities simply by inputting their symptoms, users are prone to anxiety and confusion.
[1561] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1562] In this invention, the server includes means for the user to input symptoms, means for transmitting the input symptom data to a processing device, means for analyzing the transmitted symptom data using natural language processing technology to extract keywords for the symptoms, means for searching a database based on the extracted keywords to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for acquiring the user's location information, means for searching for the nearest medical facility based on the location information, and means for providing the generated treatments, advice, and medical facility information to the user. This enables the user to quickly and accurately obtain medical information and easily find the nearest medical facility.
[1563] A "user" refers to a person who uses the system to input symptoms.
[1564] "Symptom data" refers to specific information about the user's physical ailments, and is generally provided in text format.
[1565] "Natural language processing technology" refers to techniques that enable computers to understand and analyze human language. Examples include keyword extraction and semantic analysis of texts.
[1566] "Keywords" refer to important words or phrases extracted from symptom data.
[1567] A "database" refers to a collection of information that aggregates and allows for searching and referencing information about medical conditions and symptoms.
[1568] "Medical condition" refers to diseases or health conditions related to the symptoms entered by the user, as identified through analysis and matching.
[1569] "Treatment" refers to appropriate medical procedures or methods for a specific medical condition.
[1570] "Advice" refers to suggestions and recommended actions provided to the user based on their identified medical condition.
[1571] "Location information" refers to data on the user's current location obtained using GPS functionality, etc.
[1572] A "medical facility" refers to a place that provides medical services, such as a hospital or clinic.
[1573] A "processing device" refers to a computer system that operates on a server or cloud, and is a device that receives, analyzes, processes, and provides data.
[1574] A "server" refers to a computer system that receives, analyzes, and processes data within a system and provides the results.
[1575] "Terminal" refers to a smartphone, computer, or other device used by a user to access the system and input / display data.
[1576] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms, identifies the medical condition, and then provides appropriate treatment methods and advice. The system is designed to allow users to quickly and easily obtain medical information and find appropriate medical facilities.
[1577] User symptom input
[1578] When a user feels unwell, they launch the application using a device such as a smartphone or computer and enter their specific symptoms in text format. For example, the user might enter information such as, "I have a severe headache and feel nauseous."
[1579] Submit the entered symptoms
[1580] The terminal sends the entered symptom data to the server. This data is typically transmitted over the network using a standard format such as JSON.
[1581] Symptom analysis
[1582] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing techniques (e.g., NLTK or spaCy) to extract important keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[1583] Matching symptoms with disease state
[1584] The server searches its internal medical database based on keywords extracted by the analysis module to identify related medical conditions. For example, if the keywords are "headache" and "nausea," the database will search for conditions such as "migraine" and "food poisoning."
[1585] Generating advice
[1586] Based on the identified medical condition, the server retrieves and generates appropriate treatments and advice from its internal database. For example, it might generate a message such as, "We recommend staying well-hydrated and resting in a dark place. If symptoms persist, please consult a doctor."
[1587] Obtaining user location information
[1588] If the user allows location information sharing, the device uses its GPS function to obtain the user's current location. Specific location information such as "Latitude 35.6895, Longitude 139.6917 (Tokyo)" will be obtained.
[1589] Search for the nearest medical facility
[1590] The server uses the acquired location information to search for the nearest medical facilities using an internal database or an external API (e.g., Google Places API). For example, it might search for "the nearest clinics and hospitals in Tokyo" and generate a list of them.
[1591] Information transmission and display
[1592] The server sends generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on its user interface, providing it in a format that is easy for the user to understand. For example, based on the received information, it might display something like, "Stay hydrated and get some rest. The nearest medical facility is XX Clinic (Address: 1-1-1 Chiyoda-ku, Tokyo, Phone number: 03-1234-5678)."
[1593] Specific example
[1594] For example, if user A enters "I have a fever and a cough" into the terminal, the terminal sends this symptom data to the server. The server analyzes keywords such as "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay well-hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the terminal along with a list of the nearest medical facilities. The terminal displays this information to user A, allowing user A to take appropriate action.
[1595] Example of a prompt
[1596] "User A entered 'I have a fever and a cough' into the terminal. Please generate appropriate treatment options, advice, and information on the nearest medical facility."
[1597] "User B entered 'I'm experiencing persistent abdominal pain and diarrhea.' Please tell me what kind of medical condition this could be."
[1598] This invention allows users to quickly and accurately obtain medical information and find the nearest medical facility as needed. This can reduce anxiety and confusion when feeling unwell.
[1599] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1600] Processing flow divided into processing steps
[1601] Step 1:
[1602] The user enters their symptoms.
[1603] When a user feels unwell, they use their smartphone or computer to enter their symptoms into the application. For example, they might enter specific symptoms such as "I have a severe headache and feel nauseous." The entered data is saved in JSON format.
[1604] input:
[1605] User symptom information (text)
[1606] output:
[1607] Entered symptom data (JSON format)
[1608] Step 2:
[1609] The entered symptom data is sent to the server.
[1610] The terminal sends the entered symptom data to the server. The transmission protocol uses HTTP or HTTPS, and the data is sent in JSON format.
[1611] input:
[1612] Entered symptom data (JSON format)
[1613] output:
[1614] Completed sending of symptom data to the server.
[1615] Step 3:
[1616] Receiving and analyzing symptom data
[1617] The server receives symptom data sent from the terminal and passes it to the analysis module. The analysis module uses natural language processing technology (e.g., NLTK or spaCy) to extract keywords from the symptom data. For example, keywords such as "headache" and "nausea" may be extracted.
[1618] input:
[1619] Submitted symptom data (in JSON format)
[1620] output:
[1621] Extracted keywords (list)
[1622] Step 4:
[1623] Database matching of symptom keywords
[1624] The server searches its internal medical database based on the extracted keywords to identify related medical conditions. For example, for the keywords "headache" and "nausea," possible medical conditions identified might include "migraine" and "food poisoning."
[1625] input:
[1626] Extracted keywords (list)
[1627] output:
[1628] Identified medical conditions (list)
[1629] Step 5:
[1630] Generating treatment methods and advice
[1631] Based on the identified medical condition, the server retrieves and generates appropriate treatments and advice from a database. For example, it might generate advice such as, "Drink plenty of fluids and rest. If symptoms persist, see a doctor."
[1632] input:
[1633] Identified medical conditions (list)
[1634] output:
[1635] Generated advice (text)
[1636] Step 6:
[1637] Obtaining user location information
[1638] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. For example, it will obtain location information such as "Latitude 35.6895, Longitude 139.6917 (Tokyo)".
[1639] input:
[1640] GPS location information acquisition permission
[1641] output:
[1642] User location information (latitude, longitude)
[1643] Step 7:
[1644] Search for the nearest medical facility
[1645] The server uses its internal database or an external API (such as the Google Places API) based on the acquired location information to search for the nearest medical facilities. For example, it might search for "the nearest clinics and hospitals in Tokyo" and generate a list of them.
[1646] input:
[1647] User location information (latitude, longitude)
[1648] output:
[1649] List of nearby medical facilities
[1650] Step 8:
[1651] Sending and displaying the generated information
[1652] The server sends generated treatment methods, advice, and information about the nearest medical facility to the terminal. The terminal displays this information on its user interface, making it easy for the user to understand. For example, it might display information such as "The nearest medical facility is XX Clinic."
[1653] input:
[1654] Generated treatments, advice, and medical facility information.
[1655] output:
[1656] Displaying information to the user (text format)
[1657] In this way, the program's processing flow was explained concretely by clearly indicating the specific data processing and calculations performed at each step, as well as the inputs and outputs.
[1658] (Application Example 1)
[1659] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1660] Traditionally, users experiencing a decline in their health have found it difficult to accurately analyze their symptoms, identify their condition, and quickly obtain information on beneficial treatments and medical facilities. As a result, users often resorted to inappropriate treatments or spent considerable time searching for appropriate medical facilities. Furthermore, no system existed that effectively utilized natural language processing technology and location services to provide this information to users. Therefore, the present invention aims to provide a system that enables users to quickly and appropriately analyze their symptoms and receive appropriate treatments, advice, and information on the nearest medical facilities.
[1661] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1662] In this invention, the server includes means for inputting symptoms, means for analyzing the input symptoms to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, means for providing the treatment, advice, and medical facility information to the user, means for displaying the advice and medical facility information on the user's terminal, means for using natural language processing technology for symptom analysis, and means for using location information services for obtaining location information. As a result, the user can quickly obtain appropriate medical information based on the input symptoms and easily find the nearest medical facility.
[1663] "Means for inputting symptoms" refers to an interface that allows users to input their own health symptoms into the device.
[1664] "Methods for analyzing and identifying medical conditions" refers to systems that use natural language processing and database lookups to diagnose specific medical conditions based on the input symptoms.
[1665] A "means for generating appropriate treatments and advice" refers to a system that presents users with recommended treatment methods and precautions based on their identified medical condition.
[1666] "A means of searching for the nearest medical facility" refers to a search function that finds the closest medical facility based on the user's location information.
[1667] "Means of providing users with treatment, advice, and medical facility information" refers to an interface for displaying generated information on treatments, advice, and medical facilities on the user's device.
[1668] "Means of displaying on the user's device" refers to a system for displaying the aforementioned treatment methods, advice, and medical facility information on the user's device, such as a smartphone or computer.
[1669] "Methods of using natural language processing technology for symptom analysis" refer to natural language processing techniques used to analyze symptoms in input text and extract meaning and important keywords.
[1670] "Means of using location information services to obtain location information" refers to functions that use GPS or other location information services to determine the geographical location of a user.
[1671] This invention provides a system that, when a user experiences health problems, allows them to input their symptoms and provides appropriate treatment methods, advice, and information on the nearest medical facilities. This system is comprised of a user's terminal, a server, and location information services.
[1672] User symptom input
[1673] When a user feels unwell, they use a device such as a smartphone or computer to input their symptoms into the application. For example, a user might input, "I have a severe headache and feel nauseous." A text input interface is used for this input.
[1674] Submit the entered symptoms
[1675] The terminal sends the entered symptom data to the server. This data is generally sent in a standard format such as JSON.
[1676] Symptom analysis
[1677] The server receives the transmitted symptom data and passes it to the analysis module. The analysis module uses natural language processing technology (e.g., spaCy) to extract keywords from the symptom data. This extracts important keywords such as "headache" and "nausea."
[1678] Matching symptoms with disease state
[1679] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. For example, if "headache" and "nausea" are extracted, "migraine" and "food poisoning" may be identified as possible conditions.
[1680] Generating valid phrases
[1681] The server generates treatments and advice based on the identified medical condition. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as, "It is recommended that you stay well-hydrated and rest in a dark place. Also, if your symptoms persist, please see a doctor," might be generated.
[1682] Obtaining user location information
[1683] If the user allows location information to be shared, the device will use its GPS function to obtain the user's current location. This location information is used by the system to search for the nearest medical facility.
[1684] Search for the nearest medical facility
[1685] Based on the acquired location information, the server searches for the nearest medical facility using an internal database or an external data source (e.g., Google Places API). The server generates a list of the nearest hospitals and clinics as search results.
[1686] Information transmission and display
[1687] The server sends generated treatment methods, advice, and information on the nearest medical facility to the terminal. The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and visit the nearest medical facility if necessary.
[1688] Specific example
[1689] For example, if a user enters "I have a fever and a cough" into the device, the device sends these symptoms to the server. The server analyzes the keywords "fever" and "cough" to identify the illness, such as influenza or a common cold. The server generates advice such as "We recommend you stay hydrated and get plenty of rest. If your symptoms persist, please see a doctor," and sends it to the device along with a list of the nearest medical facilities. The device displays this information to the user, allowing them to take appropriate action.
[1690] Example of a prompt
[1691] Write a Python function that analyzes the symptoms of illness entered by the user, extracts appropriate keywords, and identifies the medical condition. Next, add a function that retrieves the user's location information and searches for the nearest medical facility based on that information. Include code to send the results to a server in JSON format and display the server's response to the user.
[1692] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1693] Step 1:
[1694] The user enters their symptoms of illness into a device such as a smartphone or computer. A text input form is used as the interface. The entered symptom data is stored in string format.
[1695] Step 2:
[1696] The terminal converts the entered symptom data into JSON format and sends it to the server. The input here is text data of symptoms entered by the user, and the output is data in JSON format.
[1697] Step 3:
[1698] The server receives JSON data sent from the terminal. The received data is then passed to the analysis module. The input here is symptom data in JSON format, and the output is string data passed to the analysis module.
[1699] Step 4:
[1700] The server's analysis module uses natural language processing techniques (e.g., spaCy) to extract keywords from symptom data. For example, keywords such as "headache" and "nausea" are extracted. The input here is the received string data, and the output is a list of the extracted keywords.
[1701] Step 5:
[1702] The server matches the extracted keywords against a list of symptoms and conditions stored in its internal database. This identifies the condition most relevant to the symptoms entered by the user. The input here is a list of keywords, and the output is the identified condition.
[1703] Step 6:
[1704] The server generates appropriate treatments and advice based on the identified medical condition. These treatments and advice are retrieved from an internal database and generated as messages for the user. The input here is the identified medical condition, and the output is the generated text of the treatment or advice.
[1705] Step 7:
[1706] If the user allows location information to be shared, the device uses GPS functionality to obtain the user's current location. The input here is the user's location request, and the output is the latitude and longitude information of the current location.
[1707] Step 8:
[1708] The server uses the acquired location information to search for the nearest medical facility using an internal database or an external data source (e.g., Google Places API). The input here is location information (latitude and longitude), and the output is a list of the nearest medical facilities.
[1709] Step 9:
[1710] The server sends generated treatment methods, advice, and information on the nearest medical facilities to the terminal. The input here is the generated text and lists, and the output is the information sent to the terminal.
[1711] Step 10:
[1712] The terminal displays this information on a user interface, making it easy for the user to understand. The user can follow the displayed advice and, if necessary, visit the nearest medical facility. The input here is information received from the server, and the output is what is displayed on the user interface.
[1713] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1714] This invention relates to a system that, upon receiving input from a user about their symptoms of illness, analyzes those symptoms to identify the medical condition and then provides appropriate treatment and advice. This system is designed to allow users to quickly and easily obtain medical information and find appropriate medical facilities. Furthermore, by incorporating an emotion engine that recognizes the user's emotions, it becomes possible to provide responses that take their emotional state into consideration.
[1715] User symptom input
[1716] When a user feels unwell, they input their symptoms into a dedicated application using a device (such as a smartphone or tablet). For example, consider a case where the user inputs, "I have a severe headache and feel nauseous."
[1717] Submit the entered symptoms
[1718] The terminal sends the entered symptom data to the server in JSON format. The data sent will look like this:
[1719] json
[1720] {
[1721] "Symptoms": "Severe headache and nausea",
[1722] "user_id": "12345"
[1723] }
[1724] Symptom analysis and emotion recognition
[1725] The server passes the received data to the analysis module. The analysis module first extracts keywords (e.g., "headache," "nausea") from the input symptom data using natural language processing techniques (e.g., NLTK or spaCy). Furthermore, the emotion engine recognizes and analyzes the user's emotions (e.g., anxiety or stress) from the text.
[1726] Matching symptoms with disease state
[1727] The server uses the extracted keywords to match them against a list of symptoms and conditions in its internal database. This identifies the medical condition most closely related to the entered symptoms, such as "migraine" or "food poisoning."
[1728] Generating valid phrases
[1729] The server generates effective treatments and advice based on identified symptoms and emotional analysis results. Appropriate treatments and advice are retrieved from an internal database and generated as messages for the user. For example, advice such as "It is recommended that you stay well-hydrated and rest in a dark place. Also, if symptoms persist, please see a doctor" may include specific emotional care advice (such as "Take deep breaths and relax").
[1730] Obtaining user location information
[1731] If the user allows location information to be shared, the device will use its GPS function to obtain its current location. This location information is used by the system to search for the nearest medical facility.
[1732] Search for the nearest medical facility
[1733] The server uses the acquired location information to search for the nearest medical facilities using an internal database or an external API (e.g., Google Places API). The search results generate a list of the nearest hospitals and clinics.
[1734] Information transmission and display
[1735] The server sends the generated treatment plan, advice, and information on the nearest medical facility to the terminal in JSON format. The data sent will look like this:
[1736] json
[1737] {
[1738] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. If symptoms persist, please consult a doctor. Take deep breaths and relax."
[1739] "hospitals": [
[1740] {"name": "AA Clinic", "address": "XXXX"},
[1741] {"name": "BB Hospital", "address": "YYYY"}
[1742] ]
[1743] }
[1744] Displaying information
[1745] The terminal displays the received information on the user interface. Users can read the displayed advice and, if necessary, visit the displayed medical facilities.
[1746] Specific example
[1747] For example, if user A enters symptoms such as "I have a fever and a cough," the terminal sends this information to the server. The server uses natural language processing technology to extract the keywords "fever" and "cough," and by referring to a disease database, identifies the condition, such as "influenza" or "cold." At the same time, the emotion engine recognizes "anxiety" from the user's text. The server generates a message containing advice such as "Drink plenty of fluids and get plenty of rest," and emotional care advice such as "Try relaxing breathing exercises to alleviate your anxiety," and sends it to the terminal along with information on the nearest medical facility. The terminal displays this information in the user interface, allowing user A to take appropriate action.
[1748] Thus, the present invention allows users to quickly obtain accurate medical information and receive advice that takes their emotional state into consideration. This reduces anxiety and confusion during times of illness and makes it possible to find appropriate medical facilities.
[1749] The following describes the processing flow.
[1750] Step 1:
[1751] The user enters their symptoms of illness into an application on their device.
[1752] Example: Enter the text "I have a terrible headache and feel nauseous."
[1753] Step 2:
[1754] The terminal sends the entered symptom data, along with the emotion engine, to the server in JSON format.
[1755] Example of data to be sent:
[1756] json
[1757] {
[1758] "Symptoms": "Severe headache and nausea",
[1759] "user_id": "12345"
[1760] }
[1761] Step 3:
[1762] The server passes the received JSON data to the parsing module. The parsing module first uses natural language processing techniques (e.g., NLTK or spaCy) to extract keywords such as "headache" and "nausea" from the symptom data.
[1763] example:
[1764] Python
[1765] Symptoms = "Severe headache and nausea"
[1766] keywords = extract_keywords(symptoms)
[1767] Keywords -> ["headache", "nausea"]
[1768] Step 4:
[1769] The server uses an emotion engine to analyze the user's emotions from symptom data. For example, it might recognize from the input text that the user is feeling anxious.
[1770] example:
[1771] Python
[1772] emotion = analyze_emotion(symptoms)
[1773] emotion -> "anxiety"
[1774] Step 5:
[1775] The server uses the extracted keywords to compare them with a list of symptoms and conditions in its internal database. This allows it to identify possible medical conditions.
[1776] example:
[1777] Python
[1778] possible_conditions = find_conditions(keywords)
[1779] possible_conditions -> ["Migraine", "Food poisoning", "Tension headache"]
[1780] Step 6:
[1781] The server generates effective phrases and treatment methods based on the identified medical condition and emotional analysis results. For example, in response to an identified migraine, it generates emotional care advice such as "drink plenty of fluids and rest in a dark place," as well as "take deep breaths and relax."
[1782] example:
[1783] Python
[1784] advice = generate_advice(possible_conditions, emotion)
[1785] Advice -> "We recommend staying well-hydrated and resting in a dark place. Also, take deep breaths and relax."
[1786] Step 7:
[1787] If the user allows location information to be shared, the device will use its GPS function to obtain the current location.
[1788] Examples of location information obtained:
[1789] json
[1790] {
[1791] "latitude": "35.6895",
[1792] "longitude": "139.6917"
[1793] }
[1794] Step 8:
[1795] Based on the location information acquired by the server, the system searches for the nearest medical facility using an internal database or an external API (e.g., Google Places API).
[1796] example:
[1797] Python
[1798] hospitals = find_nearby_hospitals(latitude, longitude)
[1799] hospitals -> [{"name": "AA Clinic", "address": "XXXX"}, {"name": "BB Hospital", "address": "YYYY"}]
[1800] Step 9:
[1801] The server sends the generated treatment plan, advice, and information on the nearest medical facility to the terminal in JSON format.
[1802] Example of data to be sent:
[1803] json
[1804] {
[1805] "Advice": "It is recommended to stay well-hydrated and rest in a dark place. Also, take deep breaths and relax."
[1806] "hospitals": [
[1807] {"name": "AA Clinic", "address": "XXXX"},
[1808] {"name": "BB Hospital", "address": "YYYY"}
[1809] ]
[1810] }
[1811] Step 10:
[1812] The device displays the information it receives on the user interface. The user can read the displayed advice and, if necessary, go to the displayed hospital.
[1813] (Example 2)
[1814] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1815] In modern society, it is crucial to obtain medical information that quickly and accurately addresses one's symptoms when feeling unwell. However, when many people search for information online, they often doubt the accuracy and appropriateness of the information, resulting in anxiety. Furthermore, medical advice that ignores the user's emotional state risks amplifying this anxiety. Finding the nearest medical facility quickly is also a challenge. This invention aims to solve these problems by providing a system that allows users to quickly obtain accurate medical information while also providing comprehensive support, including emotional care.
[1816] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1817] In this invention, the server includes means for the user to input symptoms of illness, means for transmitting the input symptom data to the server, means for analyzing the symptom data using natural language processing technology to extract keywords for the symptoms, means for recognizing and analyzing the user's emotions based on the keywords, means for identifying a medical condition based on the keywords and the user's emotions, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, and means for providing the user with the treatments, advice, and medical facility information. As a result, the user can quickly and accurately obtain appropriate medical advice for their symptoms and receive comprehensive support, including emotional care, thereby reducing anxiety and confusion and enabling them to quickly find the nearest medical facility.
[1818] "Means for inputting symptoms" refers to methods or devices for users to input symptoms of illness into a system.
[1819] "Means for sending entered symptom data to a server" refers to methods or devices for sending symptom information entered by a user to a server via a network.
[1820] "Means for analyzing and extracting symptom keywords using natural language processing technology" refers to methods or devices that use natural language processing technology to extract important keywords from input text data.
[1821] "Means for recognizing and analyzing user emotions based on keywords" refers to methods and devices that estimate and analyze a user's emotional state from keywords or input text.
[1822] "Means for identifying medical conditions based on keywords and user sentiment" refers to methods or devices that identify related medical conditions based on extracted keywords and the user's emotional state.
[1823] "Means for generating appropriate treatments and advice based on identified medical conditions" refers to methods or devices that generate optimal treatments and advice based on identified medical conditions.
[1824] "Means for searching for the nearest medical facility based on the user's location information" refers to methods or devices that use the user's current location information to search for the nearest medical facility.
[1825] "Means of providing users with treatments, advice, and medical facility information" refers to methods and devices for providing users with generated treatments, advice, and retrieved medical facility information.
[1826] This invention relates to a system that, upon receiving input from a user regarding their symptoms of illness, analyzes those symptoms to identify the medical condition and then provides appropriate treatment methods and advice. Embodiments of this invention are described in detail below.
[1827] First, the user enters their symptoms into a dedicated application using a smartphone or tablet. The entered data is in a free-text format, such as "I have a severe headache and feel nauseous." Next, this entered data is sent from the device to the server. The device converts the data into JSON format and sends it to the server via the internet.
[1828] The server passes the received data to the analysis module. This analysis module uses natural language processing techniques (such as NLTK or spaCy) to extract keywords from the input symptom data. For example, keywords such as "headache" and "nausea" are detected. Simultaneously, the emotion engine recognizes the user's emotional state from the input text. This emotion engine also uses similar natural language processing techniques to analyze the emotions in the text. For example, emotional states such as "anxiety" and "stress" are recognized.
[1829] Next, the server accesses an internal database based on the extracted keywords and compares them with a list of symptoms and conditions. This identifies the most relevant condition. For example, "migraine" or "food poisoning" may be identified. Subsequently, based on the identified condition and the sentiment analysis results, appropriate treatments and advice are generated. These treatments and advice are retrieved from the internal database and generated as messages provided to the user. For example, advice such as, "We recommend staying well-hydrated and resting in a dark place. Also, if symptoms persist, please see a doctor," may be generated.
[1830] Furthermore, if the user allows location information to be shared, the device uses its GPS function to obtain its current location. This location information is sent to the server and used to search for the nearest medical facility. The server uses external APIs, such as the Google Places API, to search for the medical facility closest to the user's current location. For example, nearby hospitals and clinics are listed.
[1831] Finally, the server sends the generated treatment methods, advice, and information on the nearest medical facility to the device. This information is again sent in JSON format, but is displayed in an easy-to-read format through the user interface on the device. By referring to the displayed advice, the user can take appropriate action for their symptoms. Furthermore, based on the information on the nearest medical facility, they can quickly visit the appropriate medical facility.
[1832] As an example, consider a case where User A inputs symptoms such as "I have a fever and a cough." The terminal sends this information to the server, which extracts the keywords "fever" and "cough." By referring to the disease database, the server identifies the condition, such as "influenza" or "cold." Simultaneously, the emotion engine recognizes "anxiety." The server generates a message containing treatment advice such as "drink plenty of fluids and get rest" and emotional care advice such as "try relaxing breathing exercises to alleviate your anxiety," and sends it to the terminal along with information on the nearest medical facility. The terminal displays this information in the user interface, allowing User A to take appropriate action.
[1833] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1834] Step 1:
[1835] Users enter their symptoms into a dedicated application. For example, they might describe detailed symptoms such as "I have a severe headache and feel nauseous." The input data is in text format, and there are no specific formatting restrictions. The entered text data records the symptoms on the device.
[1836] Input: Symptom text entered by the user
[1837] Output: Text data recorded on the terminal
[1838] Step 2:
[1839] The terminal converts the entered symptom data into JSON format and sends it to the server. Specifically, it generates a JSON object containing the user ID and symptom text, and sends it to the server using the HTTP protocol.
[1840] Input: Text data recorded on the device
[1841] Data processing: Convert text data to JSON format.
[1842] Output: Data in JSON format is sent to the server.
[1843] Step 3:
[1844] The server passes the received data to an analysis module, which uses natural language processing techniques to extract keywords. For example, it can use NLTK or spaCy to extract keywords such as "headache" or "nausea" from the text entered by the user.
[1845] Input: Data received in JSON format
[1846] Data processing: Extracting keywords using natural language processing techniques.
[1847] Output: Extracted keyword list
[1848] Step 4:
[1849] The server uses an emotion engine to recognize and analyze the user's emotional state from the input text. It analyzes emotional expressions within the text to identify emotions such as "anxiety" and "stress."
[1850] Input: Data received in JSON format
[1851] Data processing: Recognizing and analyzing emotions using an emotion engine.
[1852] Output: Recognized emotional state
[1853] Step 5:
[1854] Based on the extracted keywords and recognized emotional states, the server consults an internal database to identify the corresponding medical condition. For example, symptoms with the keywords "headache" and "nausea" and the emotion "anxiety" might be identified as "migraine" or "food poisoning."
[1855] Input: Extracted keyword list, recognized emotional state
[1856] Data processing: Identifying the patient's condition by matching it with an internal database.
[1857] Output: Identified medical condition
[1858] Step 6:
[1859] The server generates appropriate treatments and advice based on identified medical conditions and perceived emotional states. These treatments and advice are retrieved from an internal database. For example, it might generate advice recommending "stay well-hydrated and rest in a dark place."
[1860] Input: Identified medical condition, perceived emotional state
[1861] Data processing: Generate treatment methods and advice by referencing an internal database.
[1862] Output: Generated treatment methods and advice
[1863] Step 7:
[1864] If the user allows location information to be shared, the device will use its GPS function to obtain its current location. The obtained location information will then be sent to the server.
[1865] Input: User permission to share location information
[1866] Data processing: Location information acquisition
[1867] Output: The acquired location information is sent to the server.
[1868] Step 8:
[1869] The server searches for the nearest medical facility based on the acquired location information. It uses external APIs such as the Google Places API to identify the hospital or clinic closest to the user's current location.
[1870] Input: Acquired location information
[1871] Data processing: Searching for medical facilities using external APIs
[1872] Output: List of nearby medical facilities
[1873] Step 9:
[1874] The server sends the generated treatment methods, advice, and information on the nearest medical facilities to the terminal in JSON format.
[1875] Input: Generated treatment / advice, list of nearest medical facilities
[1876] Data processing: Convert information to JSON format
[1877] Output: Sent to the terminal in JSON format.
[1878] Step 10:
[1879] The device displays the received information on its user interface. Users can then use the displayed advice and information about the nearest medical facilities to take appropriate action regarding their symptoms.
[1880] Input: Information in JSON format sent from the server
[1881] Data processing: Converting JSON formatted information into a user interface.
[1882] Output: Appropriately formatted advice and medical facility information are displayed on the screen.
[1883] (Application Example 2)
[1884] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1885] Traditional healthcare systems have made it difficult for users to quickly find appropriate treatments or nearby medical facilities when they become ill. Furthermore, emotional support and dietary suggestions tailored to their condition have not been adequately considered. Users who are unwell often find it difficult to prepare meals in their daily lives, leading to insufficient nutrition. Solving this problem is essential.
[1886] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[1887] In this invention, the server includes means for inputting symptoms, means for analyzing the input symptoms to identify a medical condition, means for generating appropriate treatments and advice based on the identified medical condition, means for searching for the nearest medical facility based on the user's location information, means for searching for appropriate meal suggestions and delivery services based on the input symptoms, and means for providing the user with the treatments, advice, and medical facility information. This allows the user to quickly obtain accurate treatments, receive emotional support, and receive meal suggestions tailored to their physical condition, enabling them to order quickly.
[1888] "Means for inputting symptoms" refers to an interface that allows users to input symptoms of illness through their device.
[1889] "Means for analyzing entered symptoms to identify a medical condition" refers to functions or modules that analyze entered symptom data and diagnose an appropriate medical condition.
[1890] "Means for generating appropriate treatments and advice based on identified medical conditions" refers to functions or modules that generate treatments and advice suitable for the user based on identified medical condition information.
[1891] "Means for searching for the nearest medical facility based on the user's location information" refers to functions or modules that use the user's current location to search for the nearest medical facility.
[1892] "Means for searching for appropriate meal suggestions and delivery services based on entered symptoms" refers to a function or module that searches for delivery services that provide meals suitable for the user's physical condition based on the entered symptom information.
[1893] "Means of providing users with treatment methods, advice, and medical facility information" refers to an interface for communicating generated treatment methods, advice, and searched medical facility information to users.
[1894] The system based on this invention is designed to allow users to quickly obtain appropriate treatment and dietary suggestions when they are feeling unwell. This system includes the following hardware and software:
[1895] Hardware configuration
[1896] Device: Smartphone or tablet. This will serve as the interface for users to input symptoms and receive advice and suggestions.
[1897] Server: A central system for data analysis and processing.
[1898] Software Configuration
[1899] Natural language processing software (NLPProcessor, e.g., NLTK or spaCy) is used to extract symptoms from the user's input text.
[1900] The emotion recognition engine, EmotionRecognizer, analyzes emotions from the user's input text.
[1901] Medical diagnostic engine: Identifies medical conditions based on symptoms via the Medical Diagnosis API.
[1902] Meal suggestion system: Uses the Food Delivery API to generate meal suggestions based on the user's current location and symptoms.
[1903] Processing flow
[1904] 1. User symptom input
[1905] The user uses their device to input their symptoms of illness. For example, they might input, "I have a sore throat and a fever."
[1906] 2. Sending symptom data
[1907] The terminal sends the entered symptom data to the server in JSON format.
[1908] 3. Analysis of symptoms and emotions
[1909] The server analyzes the received data using natural language processing software and extracts keywords. Simultaneously, an emotion recognition engine recognizes the user's emotions.
[1910] 4. Identifying the symptoms
[1911] The server sends the extracted keywords to the Medial Diagnosis API to identify the associated medical condition.
[1912] 5. Generating treatment methods and advice
[1913] The server generates treatment plans and advice based on the identified medical condition and emotional analysis results.
[1914] 6. Searching for meal suggestions and delivery services
[1915] The server uses the Food Delivery API to search for appropriate meal suggestions and the nearest delivery service based on the user's location and symptoms.
[1916] 7. Sending and displaying information
[1917] The server sends the generated treatment methods, advice, meal suggestions, and information on the nearest delivery service to the terminal in JSON format, which the terminal then displays in the user interface.
[1918] Specific example
[1919] For example, if a user enters symptoms such as "sore throat and fever" and their location is Tokyo, the server uses natural language processing and sentiment recognition to identify the medical condition based on the symptoms. Next, it generates appropriate treatment and advice, such as "We recommend you stay well-hydrated and nutritious. Also, get plenty of rest." It also uses the Food Delivery API to search for the nearest restaurants and delivery services that offer healthy food based on the user's location and provides that information to the user.
[1920] Example of a prompt
[1921] Specific examples of prompt statements are as follows:
[1922] "I have a sore throat and a fever."
[1923] This prompt allows users to quickly receive optimal treatment and dietary suggestions, providing peace of mind even when feeling unwell.
[1924] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1925] Step 1:
[1926] The user enters their symptoms using a device such as a smartphone or tablet. For example, they might enter "I have a sore throat and a fever." When this input is made, the device temporarily saves this data. The system receives the user's symptom data in text format as input and converts it to JSON format as output.
[1927] Step 2:
[1928] The terminal converts the entered symptom data into JSON format and sends it to the server. The specific data is in the following format: "{ "symptoms": "sore throat and fever", "user_id": "12345", "location": "35.6895,139.6917"}". It receives user symptom data in text format as input and generates JSON data to send to the server as output.
[1929] Step 3:
[1930] The server passes the received symptom data to natural language processing software (NLPProcessor) to extract keywords. In a specific example, the keywords "throat" and "fever" are extracted. The server receives symptom data in JSON format as input and generates a list of keywords as output.
[1931] Step 4:
[1932] The server passes the text data, along with the extracted keywords, to the emotion recognition engine (EmotionRecognizer) to analyze the user's emotions. Specifically, for example, the emotion "anxiety" might be recognized. It receives keywords from symptom data as input and generates emotion information as output.
[1933] Step 5:
[1934] The server uses the extracted keywords to send symptom data to the Medical Diagnosis API to identify the disease. For example, diseases such as "influenza" or "cold" are identified. It takes a list of keywords as input and generates disease information as output.
[1935] Step 6:
[1936] The server retrieves and generates appropriate treatments and advice from its internal database based on identified medical conditions and emotional information. For example, it might generate advice such as, "We recommend you drink plenty of fluids and get plenty of rest. Also, try relaxation techniques to alleviate anxiety." It takes medical condition information and emotional information as input and generates advice text as output.
[1937] Step 7:
[1938] The server uses the Food Delivery API to search for appropriate meal suggestions and delivery services based on the user's location and symptoms. For example, it searches for restaurants and delivery services that offer healthy meals. It receives the user's location and symptom data as input and generates information on the nearest delivery service as output.
[1939] Step 8:
[1940] The server sends the generated treatments, advice, meal suggestions, and nearest delivery service information to the terminal in JSON format. It receives treatments, advice, meal suggestions, and delivery service information as input and generates JSON data to provide to the user as output.
[1941] Step 9:
[1942] The terminal parses the received JSON data and displays it on the user interface. For example, treatment methods, advice, meal suggestions, and delivery service information are displayed in an easy-to-understand format. It receives JSON data sent from the server as input and converts it into a user-friendly format for output.
[1943] This allows users to quickly receive appropriate treatment and dietary suggestions and take the necessary steps.
[1944] 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 controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1945] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1946] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.
[1947] Furthermore, the emotion identification model 59, acting 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 a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1948] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[1949] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[1950] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.
[1951] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.
[1952] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is 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 the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."
[1953] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[1954] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.
[1955] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.
[1956] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.
[1957] 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.
[1958] Furthermore, it is not necessary to store the entirety 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 the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.
[1959] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.
[1960] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of 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). Alternatively, the hardware resource that performs a specific process may consist of a single processor.
[1961] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.
[1962] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.
[1963] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.
[1964] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.
[1965] The following is further disclosed regarding the embodiments described above.
[1966] (Claim 1)
[1967] A means of entering symptoms,
[1968] A means for analyzing the input symptoms and identifying the disease state,
[1969] A means for generating appropriate treatments and advice based on the identified medical condition,
[1970] A means of searching for the nearest medical facility based on the user's location information,
[1971] A system including means for providing the user with the aforementioned treatment methods, advice, and medical facility information.
[1972] (Claim 2)
[1973] The system according to claim 1, comprising means for analyzing input symptoms using natural language processing.
[1974] (Claim 3)
[1975] The system according to claim 1, comprising means for searching for the nearest medical facility using an internal database or an external API.
[1976] "Example 1"
[1977] (Claim 1)
[1978] A means for the user to input symptoms,
[1979] Means for transmitting the input symptom data to a processing device,
[1980] A means for analyzing the transmitted symptom data using natural language processing technology and extracting keywords for the symptoms,
[1981] A means for searching a database based on the extracted keywords and identifying the disease condition,
[1982] A means for generating appropriate treatments and advice based on the identified medical condition,
[1983] Means for obtaining the user's location information,
[1984] A means for searching for the nearest medical facility based on the aforementioned location information,
[1985] A system including means for providing the user with the generated treatment methods, advice, and medical facility information.
[1986] (Claim 2)
[1987] The system according to claim 1, wherein the input symptom data is analyzed by natural language processing.
[1988] (Claim 3)
[1989] The system according to claim 1, which searches for the nearest medical facility using an internal database or an external API.
[1990] "Application Example 1"
[1991] (Claim 1)
[1992] A means of entering symptoms,
[1993] A means for analyzing the input symptoms and identifying the disease state,
[1994] A means for generating appropriate treatments and advice based on the identified medical condition,
[1995] A means of searching for the nearest medical facility based on the user's location information,
[1996] Means for providing the user with the aforementioned treatment methods, advice, and medical facility information,
[1997] Means for displaying the aforementioned advice and medical facility information on the user's terminal,
[1998] A means of using natural language processing technology for the aforementioned symptom analysis,
[1999] A system that includes means for using a location information service to acquire the aforementioned location information.
[2000] (Claim 2)
[2001] The system according to claim 1, comprising means for analyzing input symptoms using natural language processing.
[2002] (Claim 3)
[2003] The system according to claim 1, comprising means for searching for the nearest medical facility using an internal database or external data provision means.
[2004] "Example 2 of combining an emotion engine"
[2005] (Claim 1)
[2006] A means for users to input symptoms of illness,
[2007] Means for transmitting the input symptom data to a server,
[2008] A means for analyzing the aforementioned symptom data using natural language processing technology and extracting keywords for the symptoms,
[2009] A means for recognizing and analyzing the user's emotions based on the aforementioned keywords,
[2010] A means for identifying a medical condition based on the aforementioned keywords and the user's emotions,
[2011] A means for generating appropriate treatments and advice based on the identified medical condition,
[2012] A means of searching for the nearest medical facility based on the user's location information,
[2013] A system including means for providing the user with the aforementioned treatment methods, advice, and medical facility information.
[2014] (Claim 2)
[2015] The system according to claim 1, wherein the means for analysis extracts keywords from input symptom data using natural language processing technology.
[2016] (Claim 3)
[2017] The system according to claim 1, comprising means for searching for the nearest medical facility using an internal database or an external API.
[2018] "Application example 2 when combining with an emotional engine"
[2019] (Claim 1)
[2020] A means of entering symptoms,
[2021] A means for analyzing the input symptoms and identifying the disease state,
[2022] A means for generating appropriate treatments and advice based on the identified medical condition,
[2023] A means of searching for the nearest medical facility based on the user's location information,
[2024] Means for providing the user with the aforementioned treatment methods, advice, and medical facility information,
[2025] A system including means for searching for appropriate meal suggestions and delivery services based on the entered symptoms.
[2026] (Claim 2)
[2027] The system according to claim 1, comprising means for analyzing input symptoms using natural language processing.
[2028] (Claim 3)
[2029] The system according to claim 1, comprising means for searching for the nearest medical facility using an internal database or external API, and means for searching for meal suggestions and delivery services. [Explanation of symbols]
[2030] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>
Claims
1. A means of entering symptoms, A means for analyzing the input symptoms and identifying the disease state, A means for generating appropriate treatments and advice based on the identified medical condition, A means of searching for the nearest medical facility based on the user's location information, A system including means for providing the user with the aforementioned treatment methods, advice, and medical facility information.
2. The system according to claim 1, further comprising means for analyzing input symptoms using natural language processing.
3. The system according to claim 1, comprising means for searching for the nearest medical facility using an internal database or an external API.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A