System

The system addresses the challenge of conventional accommodation search services by converting user input into text, analyzing preferences, and filtering relevant data to suggest suitable accommodations, improving the search efficiency and accuracy.

JP2026026857APending Publication Date: 2026-02-18SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024129278
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-05
Publication Date
2026-02-18

AI Technical Summary

Technical Problem

Conventional accommodation search services fail to consider detailed user preferences such as staff attitude, cleanliness, quality and quantity of food, and atmosphere, requiring users to spend significant time and effort to find suitable accommodations.

Method used

A system that converts user input text or voice data into text, analyzes preferences using natural language processing, searches and filters relevant accommodation data from various sources, and interactively suggests accommodations that match user criteria.

Benefits of technology

Efficiently narrows down accommodations based on user preferences, providing reliable and detailed suggestions, enhancing the search experience by considering specific user needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026026857000001_ABST
    Figure 2026026857000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: The system includes means for acquiring text or voice data input by a user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting a keyword related to a desire or preference of the user, means for searching for and collecting data related to an accommodation facility from various information sources based on the extracted keyword, means for filtering the collected data and selecting reliable information, means for narrowing down and proposing an accommodation facility matching the user's desire based on the selected information, and interaction means for allowing the user to further update the desire.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The technology of the present disclosure relates to a system. [Background technology]

[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]

[0004] Conventional accommodation search services generally only allow users to narrow down their search by basic factors such as facilities, location, and price, and are unable to address the detailed preferences and wishes of users. Specifically, it is difficult to consider factors such as staff attitude, cleanliness, quality and quantity of food, and the atmosphere of the facility. This means that users have to spend a lot of time and effort to find accommodation that meets their needs. [Means for solving the problem]

[0005] In order to solve the above problems, the present invention provides the following means:

[0006] 1. Provide a means to obtain text or voice data entered by the user.

[0007] 2. Provide a means to convert acquired text or audio data into text data.

[0008] 3. Provide a means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences.

[0009] 4. Provide a means to search and collect data about accommodation from various sources based on the extracted keywords.

[0010] 5. Provide a means to filter collected data to select reliable information.

[0011] 6. Provide a means to narrow down and suggest accommodations that match the user's preferences based on the selected information.

[0012] 7. Provide an interactive means for users to further update their preferences.

[0013] This allows users to efficiently search and find accommodations that meet their specific preferences.

[0014] A "user" is someone who uses this system to search for accommodations.

[0015] "Text data" is data expressed in the form of characters, and specifically expresses the user's wishes and preferences.

[0016] "Audio data" refers to data recorded in the form of sound, which is input by a user via a microphone or the like.

[0017] "Conversion means" refers to the functions and algorithms for converting voice data into text data.

[0018] "Analysis means" refers to a function for analyzing text data using natural language processing tools or the like and extracting keywords related to the user's wishes and preferences.

[0019] "Keywords" are important words or phrases that identify a user's desires and preferences.

[0020] "Sources" are external databases or websites that provide data about accommodations, such as review sites or blog articles.

[0021] "Search means" refers to a function for collecting data from information sources based on extracted keywords.

[0022] The "collection means" refers to the function of collectively storing and managing the data acquired by the search means.

[0023] "Filtering means" refers to a function for selecting only highly reliable and detailed information from the collected data.

[0024] The "selection means" refers to a function for further analyzing the information selected by the filtering means and identifying the accommodation facility that best meets the user's needs.

[0025] "Dialogue means" refers to a function that allows the user and the system to communicate in a dialogue format and reflect additional wishes and conditions. [Brief explanation of the drawings]

[0026] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION

[0027] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.

[0028] First, the terms used in the following description will be explained.

[0029] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).

[0030] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.

[0031] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.

[0032] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.

[0033] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."

[0034] [First embodiment]

[0035] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.

[0036] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.

[0037] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0038] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.

[0039] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.

[0040] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.

[0041] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.

[0042] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.

[0043] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0044] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0045] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0046] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0047] System Overview

[0048] This invention relates to a system that allows users to input their preferences for accommodations using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodations. The system mainly includes the following components: a user terminal, a server, and information sources (review sites and blog articles).

[0049] User input

[0050] Users can use their own devices to input their accommodation preferences using free text or voice. For example, they might input something like, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly."

[0051] Text Conversion

[0052] When voice is input, the device sends it to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[0053] Text analytics

[0054] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools. For example, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service" are extracted.

[0055] Collecting data from sources

[0056] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords, using search engine APIs and public APIs of review sites.

[0057] Information Filtering

[0058] The collected data is filtered by the server, based on criteria such as the reliability of the information, the date of update, and the level of detail of the content, allowing the server to select the information that best suits the user's needs.

[0059] Accommodation search and suggestions

[0060] Based on the filtered information, the server narrows down the list of accommodations that match the user's preferences, such as "highly rated staff," "good food," "quiet environment," and "reasonable budget."

[0061] Interactive suggestions

[0062] The server interactively proposes information on the narrowed-down accommodations to the user. The user can accept the proposals from the server and, if necessary, enter additional preferences or conditions to further narrow down the search. For example, in response to a request to "know more about this hot spring inn," the server will provide detailed reviews and information about the accommodation.

[0063] Displaying the results

[0064] Once the user finally finds a suitable accommodation, the information is displayed on the user's device along with a link to the accommodation's official website and contact information for booking, such as a phone number.

[0065] Specific examples

[0066] For example, if a user is looking for a "quiet and relaxing hot spring inn," the server might do the following:

[0067] 1. The user enters their preference via text or voice.

[0068] 2. The server converts the audio data into text data.

[0069] 3. The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[0070] 4. The server searches review sites and blog articles using the extracted keywords to collect related information.

[0071] 5. The server filters the collected information to narrow it down to the most reliable and detailed information.

[0072] 6. The server interactively presents the narrowed down accommodation information to the user.

[0073] 7. The user enters additional preferences, and the server again searches, collects, and filters the information.

[0074] 8. Information about the accommodation that the user finally selected is displayed on the device and a link for booking is provided.

[0075] As described above, this system suggests accommodations based on the user's specific preferences and helps them make reservations easily.

[0076] The processing flow will be explained below.

[0077] Step 1: Getting User Input

[0078] The user uses their own terminal to input their accommodation preferences using free text or voice.

[0079] The terminal receives the user's input and temporarily stores it.

[0080] Step 2: Submitting input data

[0081] The device sends the stored text or voice data to the server.

[0082] The server stores the received data in storage for analysis.

[0083] Step 3: Convert audio data to text

[0084] The server uses a speech recognition API to convert the voice data into text data.

[0085] The converted text data is then stored again in storage, ready for analysis.

[0086] Step 4: Text Analysis

[0087] The server uses natural language processing tools to analyze the text data.

[0088] Through analysis, keywords related to the user's wishes and preferences are extracted, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff friendliness."

[0089] Step 5: Collect data from sources

[0090] The server searches external information sources such as review sites and blog articles based on the extracted keywords.

[0091] We use search engine APIs and public APIs from review sites to collect relevant data.

[0092] Step 6: Filtering the information

[0093] The server filters the collected data.

[0094] Filtering criteria include the reliability of the information (user ratings and poster profile), update date, and level of detail of the content.

[0095] Step 7: Narrow down and propose accommodations

[0096] The server uses the filtered information to narrow down the accommodation options that match the user's preferences.

[0097] The server selects the top three accommodations and generates a suggestion message.

[0098] Step 8: Viewing Proposals

[0099] The terminal displays the proposal message received from the server on the user interface.

[0100] The user can review the suggestions and enter any additional requests or questions.

[0101] Step 9: Add your desired action

[0102] The server receives the user's additional requests and questions and performs text analysis again.

[0103] The server re-searches, collects and filters the information based on the new criteria.

[0104] Step 10: Final proposal and reservation information provided

[0105] The server then presents the user with the information on accommodations that have been further refined.

[0106] Once the user has finalized their choice of accommodation, the server provides the terminal with a link and contact information for making a reservation.

[0107] Example 1

[0108] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0109] Conventional accommodation search systems have had difficulty reflecting the diverse needs of users. Furthermore, even systems that allow voice input lacked the technology to accurately convert voice data into text and properly analyze its content. Furthermore, there was a need for a system that could ensure the reliability of information collected from review sites and blog articles, and automatically select and suggest accommodations that best fit the user's needs.

[0110] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[0111] In this invention, the server includes means for acquiring text or voice data input by a user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for searching and collecting data related to accommodations from various information sources based on the extracted keywords, means for filtering the collected data to select reliable information, means for narrowing down and proposing accommodations that match the user's wishes based on the selected information, interaction means for allowing the user to further update their preferences, means for scoring the filtered information, and means for providing detailed information about accommodations and connection methods. This makes it possible to automatically select and propose reliable and optimal accommodations based on the user's diverse wishes.

[0112] "User" refers to an individual or group who uses the system to input their accommodation preferences and receive suggestions for the most suitable accommodation.

[0113] A "terminal" is an electronic device such as a computer, smartphone, or tablet that a user uses to input their preferences regarding accommodation.

[0114] "Server" means a combination of software and hardware for converting voice data into text data, analyzing the text, and searching, collecting, and filtering accommodation data.

[0115] "Text data" is character string information that expresses the user's preferences regarding accommodation facilities.

[0116] "Voice data" refers to a voice file that records the user's preferences regarding accommodations input by voice.

[0117] A "natural language processing (NLP) tool" is a software device that analyzes text data to extract keywords related to a user's wishes and preferences.

[0118] "Keywords" are important words or phrases related to the user's wishes and preferences that are extracted from the text data.

[0119] "Sources" are external websites or databases that provide relevant information, such as review sites or blog posts about accommodations.

[0120] "Filtering" is the process of selecting reliable information from collected data and extracting the information that best suits the user's needs.

[0121] "Scoring" is the process of evaluating and prioritizing accommodations based on filtered information.

[0122] "Suggestion" means that the server presents information on the most suitable accommodation to the user.

[0123] "Interaction means" is an interface that allows the user to input additional preferences and requirements.

[0124] "Detailed information" refers to specific data such as the accommodation's features, ratings, prices, and user reviews.

[0125] "How to Connect" means the link or contact information for making a reservation for an accommodation.

[0126] This invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodation. The system is primarily composed of a user terminal, a server, and information sources such as review sites and blog articles.

[0127] Users use their own devices (smartphones, PCs, tablets, etc.) to input their preferences for accommodation. Input can be done either by free text or by voice. For example, a specific request could be, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to be a place with good food. I'm also looking for the staff's attitude."

[0128] When a user inputs something by voice, the device sends the voice data to the server. The server then uses a voice recognition API (for example, a general-purpose voice recognition API) to convert the voice data into text data. The converted text data is then used for subsequent analysis.

[0129] The server analyzes the converted text data using natural language processing (NLP) tools (e.g., open-source NLP toolkits) to extract keywords related to the user's wishes and preferences. Examples of extracted keywords include "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service."

[0130] Next, the server searches and collects relevant data from review sites (e.g., general-purpose review information sites) and blog articles based on the extracted keywords. This search uses search engine APIs (e.g., general-purpose search engine APIs) and public APIs of review sites.

[0131] The server filters the collected data based on criteria such as reliability, update date, and level of detail, allowing the information most suited to the user's needs to be selected.

[0132] The filtered information is then scored to create a list of accommodations that best fit the user's preferences, such as those that meet criteria such as "highly rated staff service," "good food," "quiet environment," and "reasonable budget."

[0133] The server interactively suggests information about listed accommodations to the user. The user can then enter more detailed requests and conditions, and the server will search, collect, and filter the information again based on that request. For example, in response to a request for "more information about this hot spring inn," the server will provide detailed reviews and information about the accommodation.

[0134] Finally, the device displays information about the accommodation selected by the user, along with a link to make a reservation and contact information, such as a link to the official website and phone number of the selected accommodation.

[0135] Examples of specific examples and prompts

[0136] As a concrete example, if a user is looking for a "quiet and relaxing hot spring inn," the system's processing would proceed as follows:

[0137] The user inputs their preference by text or voice.

[0138] The server converts the voice data into text data (in the case of voice input).

[0139] The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[0140] The server searches review sites and blog articles using the extracted keywords to collect related information.

[0141] The server filters the collected information to select the most reliable and detailed information.

[0142] The server proposes information on the narrowed down accommodations to the user in an interactive format.

[0143] The user enters additional preferences and the server again searches, collects and filters the information.

[0144] Information about the accommodation facility that the user finally selects is displayed on the terminal, and a link for making a reservation is provided.

[0145] Here are some examples of prompts to input to the generative AI model:

[0146] "A user inputs that they are looking for a quiet, relaxing hot spring inn. Their budget is under 10,000 yen per person per night, and they would like a place with good food. The friendliness of the staff is also important. Analyze the user's input and generate a program flow to suggest the best accommodations."

[0147] As described above, this system suggests accommodations based on the user's specific preferences and helps them make reservations easily.

[0148] The flow of the identification process in the first embodiment will be described with reference to FIG.

[0149] Step 1:

[0150] The user uses their own device to input their preferences for accommodation. The input method is either free text or voice input. For example, a request might be, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly." The input free text or voice data is sent to the server.

[0151] Input: Free text or voice data describing the user's wishes

[0152] Output: Sending data from the device to the server

[0153] Step 2:

[0154] The server converts the received voice data into text data using a voice recognition API (for example, a general-purpose voice recognition API). In this conversion process, the voice waveform data is analyzed and the corresponding text is generated. The voice input is converted into text data.

[0155] Input: Audio data

[0156] Output: Text data

[0157] Step 3:

[0158] The server analyzes the text data using natural language processing (NLP) tools (e.g., open-source NLP toolkits). Specifically, it divides the text into tokens and extracts important keywords and phrases. During this analysis, keywords related to the user's wishes and preferences (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff friendliness") are identified.

[0159] Input: Text data

[0160] Output: Extracted keywords

[0161] Step 4:

[0162] The server searches and collects relevant data from information sources (e.g., review sites, blog articles) based on the extracted keywords. This search uses a search engine API (e.g., a general-purpose search engine API) or the public API of the review site. The server calls each API and collects the relevant information.

[0163] Input: Extracted keywords

[0164] Output: Relevant data collected

[0165] Step 5:

[0166] The server filters the collected data based on criteria such as reliability, update date, and level of detail. Specifically, it excludes unreliable information and outdated information and selects detailed information. This filtering allows it to extract reliable information tailored to the user's needs.

[0167] Input: Relevant data collected

[0168] Output: Filtered data

[0169] Step 6:

[0170] The server scores the filtered information, evaluating its suitability to the user's desired conditions (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff friendliness"), and generates a prioritized list of accommodations.

[0171] Input: Filtered data

[0172] Output: Scored accommodation list

[0173] Step 7:

[0174] The server interactively suggests scored accommodation information to the user. Specifically, a list of the most suitable accommodations is displayed on the user's screen, and by clicking on the details, more specific information (e.g., reviews, ratings, facility photos, etc.) is displayed. The user can then enter more detailed preferences and conditions.

[0175] Input: Scored accommodation list

[0176] Output: A list of accommodations suggested to the user

[0177] Step 8:

[0178] The user then inputs further details about their desired accommodations from among those suggested by the server. Based on the new criteria entered by the user, the server again searches, collects, filters, and scores the information, updating the optimal accommodations.

[0179] Input: User's new wishes or requirements

[0180] Output: Updated property list

[0181] Step 9:

[0182] Finally, the user's selected accommodation information is displayed on the device, including details about the accommodation, a booking link, and contact information. Once the user clicks the "Book" button, they are redirected to the accommodation's official website to complete the booking process.

[0183] Input: Final selected accommodation list

[0184] Output: Accommodation details and booking link

[0185] The above is the specific operations and input / output information performed in the processing steps of this system.

[0186] (Application example 1)

[0187] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0188] Conventional accommodation recommendation systems require users to search the Internet or consult review sites, which is inconvenient. Furthermore, search results often do not match the user's specific preferences, resulting in low satisfaction. Therefore, there is a need for a system that can quickly and accurately select and suggest optimal accommodations, especially for users traveling or driving.

[0189] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[0190] In this invention, the server includes: means for acquiring text or voice data input by a user; means for converting the acquired text or voice data into text data; means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences; means for searching and collecting data related to accommodations from various information sources based on the extracted keywords; means for filtering the collected data to select reliable information; means for narrowing down and suggesting accommodations that match the user's wishes based on the selected information; dialogue means for enabling the user to further update their preferences; means, which is installed in an autonomous vehicle, for inputting the user's wishes using an in-vehicle touch panel or voice input device; and means for displaying the collected accommodation information on the vehicle's navigation screen and providing reservation links and contact information. This enables users traveling or driving to quickly and accurately find the best accommodation and make reservations or contact them.

[0191] "Text or voice data entered by the user" refers to data that provides information about the accommodation facility desired by the user in the form of text or voice input.

[0192] "Means for converting into text data" refers to technology for converting voice data into text format and devices or software for doing so.

[0193] "Means for extracting keywords" refers to techniques and processing procedures for automatically finding important words related to a user's wishes and preferences from text data.

[0194] "Means for retrieving and collecting data from sources" refers to techniques or procedures for automatically retrieving and collecting data related to keywords from various external sources.

[0195] "Means for filtering data to select reliable information" refers to the technology and processing procedures for selecting from collected data information that is highly reliable and meets the user's needs.

[0196] "Means for narrowing down and suggesting accommodations that meet the user's preferences" refers to the technology and processing procedures for identifying the accommodations that best meet the user's preferences based on the selected information and suggesting them to the user.

[0197] The "interactive means for enabling the user to further update their preferences" is a two-way communication means for the user to reflect additional preferences or conditions on the proposed content.

[0198] "A means for inputting user preferences using a touch panel or voice input device installed in an autonomous vehicle" refers to a system that allows users to input their preferences regarding accommodations by text or voice using an input device built into an autonomous vehicle.

[0199] "Means for displaying collected accommodation information on the vehicle's navigation screen and providing reservation links and contact information" refers to the technology and procedures for displaying searched accommodation information on the vehicle's navigation system and providing reservation links and contact information.

[0200] This invention is a system that allows a user to input their accommodation preferences in an autonomous vehicle and suggests the most suitable accommodation based on those preferences. This system is composed of the following elements.

[0201] System configuration

[0202] 1. User terminal and input means

[0203] The user inputs their accommodation preferences using a touch panel or voice input device installed in the autonomous vehicle. For example, the user might input "I want to go to a hot spring inn" by voice.

[0204] 2. Text Conversion Methods

[0205] When a user inputs something by voice, a speech recognition API (e.g., Google Cloud Speech-to-Text) is used to convert this voice data into text data, which is then sent to the server.

[0206] 3. Text Analysis Methods

[0207] The server analyzes the text data using natural language processing tools (e.g., spaCy) and extracts keywords related to the user's preferences. This analysis yields keywords such as "hot spring inn," "budget," and "quiet."

[0208] 4. Data search and collection methods

[0209] The server searches and collects data from external information sources such as review sites and blog posts based on the extracted keywords. This search uses various search engine APIs (e.g., Google Custom Search API) and review site APIs (e.g., Yelp API).

[0210] 5. Data Filtering Methods

[0211] The server filters the collected data to narrow down the information to highly reliable and detailed data, using criteria such as the reliability of the information, the date of the most recent update, and the level of detail of the content.

[0212] 6. Information suggestions and means of interaction

[0213] Based on the filtered information, the server identifies the accommodations that best fit the user's preferences and displays them on the vehicle's navigation screen. Furthermore, it makes suggestions to the user interactively, and if there are additional preferences, the server searches, collects, and filters again.

[0214] 7. Results display means

[0215] Finally, once the perfect accommodation is found, it will be displayed on the navigation screen, along with a booking link and contact information, allowing the user to easily make a reservation.

[0216] Example

[0217] As a concrete example, if a user says, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like a place with good food," the server will process it as follows:

[0218] 1. The user inputs their request by voice.

[0219] 2. The server converts the audio data into text data using the Google Cloud Speech-to-Text API.

[0220] 3. The server uses spaCy to analyze the text data and extract keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," and "delicious food."

[0221] 4. The server uses the extracted keywords to collect related information using the Google Custom Search API or Yelp API.

[0222] 5. The server filters the collected information to narrow it down to the most reliable and detailed information.

[0223] 6. The server suggests the best accommodations on the vehicle's navigation screen and allows the user to confirm interactively.

[0224] 7. Information about the finally selected accommodation is displayed on the navigation screen and a booking link is provided.

[0225] Prompt Sentence Examples

[0226] "This user is looking for a quiet, relaxing hot spring inn. Their budget is under ¥10,000 per person per night, and they value good food and friendly staff. Search for relevant reviews and blog posts to suggest accommodations that fit these criteria."

[0227] In this way, the system can quickly find the user's desired accommodation in an autonomous vehicle, providing a comfortable and efficient travel experience.

[0228] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[0229] Step 1:

[0230] The user inputs their preference by voice or text.

[0231] Input: User voice or text input

[0232] Specific operation: Using the touch panel and microphone installed in the self-driving vehicle, the user inputs, "I'm looking for a quiet and relaxing hot spring inn."

[0233] Step 2:

[0234] The server converts the voice data into text data.

[0235] Input: User's voice data

[0236] Data processing: Convert the audio data into text format using the Google Cloud Speech-to-Text API.

[0237] Output: Text data

[0238] Specific operation: The voice input data is sent to the server and converted into text data using the Google Cloud Speech-to-Text API.

[0239] Step 3:

[0240] The server analyzes the text data and extracts keywords.

[0241] Input: Converted text data

[0242] Data processing: Using natural language processing with spaCy, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff service" are extracted from the text.

[0243] Output: Extracted keywords

[0244] Specific operation: Analyze text data using spaCy and automatically extract important keywords.

[0245] Step 4:

[0246] The server collects data from sources based on keywords.

[0247] Input: Extracted keywords

[0248] Data processing: Using the Google Custom Search API and Yelp API, we search and collect information about the relevant accommodation from review sites and blog articles.

[0249] Output: Collected information data

[0250] What it does: Enter keywords into the Google Custom Search API or Yelp API to gather related reviews and blog posts.

[0251] Step 5:

[0252] Filtering data collected by the server.

[0253] Input: Collected information data

[0254] Data processing: Filter data based on the reliability of the information, update date, and level of detail to narrow down to the most relevant information.

[0255] Output: filtered data with high probability of information

[0256] Specific operation: The data is sorted by prioritizing highly reliable review sites, the most recent update date, and articles with high detail.

[0257] Step 6:

[0258] The server identifies and suggests the best accommodations.

[0259] Input: Filtered information data

[0260] Data processing: Identify the accommodation that best meets the user's desired conditions, compile the information, and generate recommendations.

[0261] Output: Recommendations for the best accommodation

[0262] Specific operation: The vehicle's navigation system displays accommodation information that matches the user's preferences.

[0263] Step 7:

[0264] The user enters additional preferences and further refines the search interactively.

[0265] Input: Request to add user

[0266] Data processing: The server again collects and filters data based on the user's preferences and re-proposes the most suitable accommodation.

[0267] Output: Updated accommodation suggestions

[0268] Specific operation: Accepts interactive input on the navigation screen, searches and filters data again, and displays updated information.

[0269] Step 8:

[0270] Display final accommodation information on the navigation screen and provide a booking link.

[0271] Input: Information about the accommodation selected

[0272] Data processing: Formatting data for display, adding booking links and contact information.

[0273] Output: Accommodation information and booking link displayed on the navigation screen

[0274] What it does: Display information about the accommodation selected by the user on the navigation screen, along with booking links and contact information.

[0275] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.

[0276] System Overview

[0277] The present invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests optimal accommodations. Furthermore, by combining it with an emotion engine that recognizes emotions from the user's input data, the accuracy of suggestions and the user experience are improved.

[0278] User input

[0279] Users can use their own devices to input their accommodation preferences using free text or voice. For example, they might input something like, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly."

[0280] Text Conversion

[0281] When voice is input, the device sends it to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[0282] Text analytics

[0283] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools. For example, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service" are extracted.

[0284] emotion recognition

[0285] The server uses an emotion engine to analyze the user's input data and determine their emotions from the words they use and the context they enter, recognizing emotions such as "joy," "tired," and "dissatisfied."

[0286] Collecting data from sources

[0287] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords, using search engine APIs and public APIs of review sites.

[0288] Information Filtering

[0289] The collected data is filtered by the server based on criteria such as the reliability of the information, the date of update, and the level of detail of the content, and the most reliable information is selected.

[0290] Accommodation search and suggestions

[0291] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account the user's emotions, as recognized by the emotion engine, to optimize the recommendations. For example, it lists accommodations that meet criteria such as "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget."

[0292] Interactive suggestions

[0293] The server then presents the user with a dialogue to suggest the narrowed-down accommodation information. The tone and expression of the dialogue are adjusted according to the emotion recognized by the emotion engine. The user can then confirm the suggestions and enter any additional requests or questions.

[0294] Displaying the results

[0295] Once the user finally finds a suitable accommodation, the information is displayed on the user's device along with a link to the accommodation's official website and contact information for booking, such as a phone number.

[0296] Specific examples

[0297] For example, if a user is looking for a "quiet and relaxing hot spring inn," the server might do the following:

[0298] 1. The user enters their preference via text or voice.

[0299] 2. The server converts the audio data into text data.

[0300] 3. The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[0301] 4. The emotion engine analyzes the user's emotions from the input data and recognizes that the user is "tired."

[0302] 5. The server searches review sites and blog articles using the extracted keywords to collect related information.

[0303] 6. The server filters the collected information to narrow it down to the most reliable and detailed information.

[0304] 7. The server considers the results of the emotion engine and suggests accommodation options that emphasize a relaxing environment.

[0305] 8. The user enters additional preferences, and the server again searches, collects, and filters the information.

[0306] 9. Information about the accommodation that the user finally selected is displayed on the device and a link for booking is provided.

[0307] In this way, the present invention suggests accommodations based on the user's specific desires and feelings, providing an efficient and satisfying booking experience.

[0308] The processing flow will be explained below.

[0309] Step 1: Getting User Input

[0310] The user uses their own terminal to input their accommodation preferences using free text or voice.

[0311] The terminal receives the user's input and temporarily stores it.

[0312] Step 2: Submitting input data

[0313] The device sends the stored text or voice data to the server.

[0314] The server stores the received data in storage for analysis.

[0315] Step 3: Convert audio data to text

[0316] The server uses a speech recognition API to convert the voice data into text data.

[0317] The converted text data is then stored again in storage, ready for analysis.

[0318] Step 4: Text Analysis

[0319] The server uses natural language processing tools to analyze the text data.

[0320] Through analysis, keywords related to the user's wishes and preferences are extracted, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff friendliness."

[0321] Step 5: Emotion Recognition

[0322] The server uses an emotion engine to analyze the emotion from the user's input data.

[0323] The emotion engine analyzes emotions from the usage and context of words entered by the user, recognizing emotions such as "tired," "excited," and "expecting."

[0324] Step 6: Collect data from sources

[0325] The server searches external information sources such as review sites and blog articles based on the extracted keywords.

[0326] We use search engine APIs and public APIs from review sites to collect relevant data.

[0327] Step 7: Filtering the information

[0328] The server filters the collected data.

[0329] Filtering criteria include the reliability of the information (user ratings and poster information), update date, and level of detail of the content.

[0330] Step 8: Narrow down and propose accommodations

[0331] The server uses the filtered information to narrow down the accommodation options that match the user's preferences.

[0332] The suggestions are also optimized by taking into account the user's emotions as recognized by the emotion engine.

[0333] For example, if "relaxation," "quiet," "budget under 10,000 yen," "good food," and "friendly staff" are important to you, make a list of accommodations that meet these criteria.

[0334] Step 9: Viewing Proposals

[0335] The terminal displays the proposal message received from the server on the user interface.

[0336] Example: "The following accommodations were found: 1. XX Hot Springs Inn (quiet, relaxing, and has great food) 2. YY Resort Hotel (budget under 10,000 yen, friendly staff) 3. ZZ Mountain Lodge (relaxing atmosphere)"

[0337] Step 10: Add your desired action

[0338] The user reviews the proposal and, if necessary, enters additional requests or questions into the terminal.

[0339] For example: "Can you tell me if there are any more affordable accommodations?"

[0340] Step 11: Search again and refine

[0341] The server receives the user's additional requests and questions and performs text analysis again.

[0342] Re-search for information based on new criteria, gathering and filtering more data as needed.

[0343] Step 12: Final proposal and reservation information provided

[0344] The server then presents the user with the information on accommodations that have been further refined.

[0345] Once the user has finalized their choice of accommodation, the server provides the terminal with a link and contact information for making a reservation.

[0346] Example: "To make a reservation, please click here: XX Onsen Ryokan, website link, phone number: 01-2345-6789."

[0347] Example 2

[0348] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0349] Conventional accommodation reservation systems have not adequately reflected users' preferences and suggested the most suitable accommodation. In particular, they lacked accurate keyword extraction and emotion recognition based on user input, resulting in low suggestion accuracy. Furthermore, the accuracy of filtering the collected information was low, often resulting in unreliable information. As a result, users spent a lot of time and effort trying to find a satisfactory accommodation.

[0350] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.

[0351] In this invention, the server includes means for acquiring text or voice data input by a user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for analyzing and recognizing emotions from the data input by the user, means for searching and collecting data related to accommodations from various information sources based on the extracted keywords and the recognized emotions, means for filtering the collected data to select reliable information, means for narrowing down accommodations that match the user's wishes based on the selected information and the recognized emotions and suggesting them in an interactive format, and means for allowing the user to further update their preferences. This makes it possible to accurately reflect the user's wishes and emotions and efficiently suggest optimal accommodations based on reliable information.

[0352] "Text data" refers to character data obtained by converting a user's voice data using voice recognition technology, or character data that is directly input.

[0353] "Voice data" is acoustic information provided by a user through speech input.

[0354] "Keywords" are important words or phrases related to a user's desires and preferences.

[0355] An "emotion engine" is software that analyzes emotions from user input data and recognizes emotions such as "joy," "tired," and "dissatisfied."

[0356] "Various sources" refers to a wide range of data sources, including review sites, blog articles, external APIs, etc.

[0357] "Filtering" is the process of selecting information based on the reliability of the collected data, the most recent update date, and the level of detail.

[0358] "Interactive" means that the user can interact with the system and enter additional requests or questions.

[0359] "Accommodation facilities" are facilities where users can stay, such as hotels, inns, and guesthouses.

[0360] "Accommodation that matches the user's preferences" is the most suitable accommodation selected based on the user's extracted keywords and recognized emotions.

[0361] "Reliable information" is data that is based on the criteria that the source of the information is trustworthy and the information is accurate and up-to-date.

[0362] "Means for converting" refers to a speech recognition API or other software for converting voice data into text data.

[0363] This invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodation. Furthermore, by combining it with an emotion engine that recognizes emotions from the user's input data, the accuracy of suggestions and the user experience are improved.

[0364] System Configuration

[0365] Hardware:

[0366] Device (the device used by the user, e.g. smartphone, tablet, computer)

[0367] Servers (computers used for data processing and storage)

[0368] software:

[0369] Speech recognition API (e.g. Google Cloud Speech-to-Text)

[0370] Natural Language Processing (NLP) tools (e.g., SpaCy, NLTK)

[0371] Emotion engine (e.g. IBM Watson Tone Analyzer)

[0372] Search engine APIs (e.g., Google Search API)

[0373] Public API for review sites

[0374] Program processing

[0375] 1. User preference input:

[0376] The user uses the terminal to input their accommodation preferences using free text or voice. For example, they might input, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I also value the hospitality of the staff."

[0377] 2. Audio data conversion:

[0378] When voice is input, the device sends the voice data to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[0379] 3. Text data analysis:

[0380] The server then analyzes the converted text data using natural language processing (NLP) tools to extract keywords related to the user's wishes and preferences, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service."

[0381] 4. Emotion recognition:

[0382] The server uses an emotion engine to analyze the user's input data and determine emotions. The emotion engine recognizes emotions such as "happy," "tired," and "unhappy" based on the usage and context of the words entered by the user. For example, it recognizes "tired" from the user's input.

[0383] 5. Collecting data from sources:

[0384] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords and recognized sentiments, using search engine APIs and public APIs of review sites.

[0385] 6. Information filtering:

[0386] The server filters the collected data based on reliability, update date, and content detail to select highly reliable information, such as reviews with many five-star ratings or the latest blog posts.

[0387] 7. Accommodation selection and suggestions:

[0388] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account the user's emotions, as recognized by the emotion engine, to optimize the recommendations. For example, it lists accommodations that meet criteria such as "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget."

[0389] 8. Interactive suggestions:

[0390] The server then presents the user with a dialogue to suggest the narrowed-down accommodation information. The tone and expression of the dialogue are adjusted according to the emotion recognized by the emotion engine. The user can then confirm the suggestions and enter any additional requests or questions.

[0391] 9. Displaying the results:

[0392] Once the user finds a suitable accommodation, the server displays the information on the device, along with a link to the reservation site and contact information, such as a link to the selected accommodation's official website and phone number.

[0393] Specific examples

[0394] If a user is looking for a "quiet and relaxing hot spring inn," the following would be processed:

[0395] 1. The user enters their preferences via text or voice: "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to be a place with good food. I'd also like the staff to be very friendly."

[0396] 2. For voice input, the device sends voice data to the server, which converts it into text.

[0397] 3. The server analyzes the converted text using natural language processing tools and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[0398] 4. The emotion engine recognizes that the user is tired from their input data.

[0399] 5. The server searches review sites and blog articles using the extracted keywords and recognized emotions to collect related information.

[0400] 6. The server filters the collected information by reliability, update date, and level of detail to select the most reliable information.

[0401] 7. The server considers the results of the emotion engine and suggests accommodation information that emphasizes a relaxing environment.

[0402] 8. The server again searches, collects and filters the information based on any additional preferences entered by the user.

[0403] 9. The final accommodation information will be displayed on the device and a link will be provided for booking.

[0404] Prompt Sentence Examples

[0405] The text the user enters is something like this:

[0406] "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have delicious food. I also value the hospitality of the staff."

[0407] The invention suggests optimal accommodations based on a user's specific desires and feelings, providing an efficient and satisfying booking experience.

[0408] The flow of the identification process in the second embodiment will be described with reference to FIG.

[0409] Step 1:

[0410] User preference input

[0411] The user uses the terminal to input their accommodation preferences using free text or voice. For example, they might input, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I also value the hospitality of the staff." At this stage, the input is text or voice data, and the output is raw data containing the user's preferences.

[0412] Step 2:

[0413] Audio data conversion

[0414] When voice is input, the device uploads the voice data to the server, which then converts it into text using a speech recognition API such as Google Cloud Speech-to-Text API. The conversion process includes voice analysis, phoneme identification, and transcription. The input is voice data, and the output is the corresponding text data.

[0415] Step 3:

[0416] Text data analysis

[0417] The server analyzes the converted text data using natural language processing (NLP) tools (e.g., SpaCy, NLTK). During analysis, the text is tokenized, tagged with parts of speech, and analyzed for dependencies. This allows keywords related to the user's wishes and preferences to be extracted. The input is text data, and the output is the extracted keywords (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," etc.).

[0418] Step 4:

[0419] emotion recognition

[0420] The server uses an emotion engine (e.g., IBM Watson Tone Analyzer) to analyze the user's emotions from the input data. Based on the content and expression of the input text, the emotion engine recognizes emotions such as "happy," "tired," and "unhappy." The input is text data, and the output is the emotion analysis result (e.g., "tired").

[0421] Step 5:

[0422] Collecting data from sources

[0423] Based on the extracted keywords and recognized sentiment, the server uses the Google Search API and the public API of the review site to search and collect data from related review sites and blog articles. The server identifies the target to collect and makes an API call. The input is keyword and sentiment data, and the output is the retrieved data of related accommodation reviews and blog articles.

[0424] Step 6:

[0425] Information Filtering

[0426] The server filters the collected data based on reliability, update date, and level of detail, prioritizing highly reliable information (e.g., highly rated reviews, recently updated blog posts). The input is the collected data, and the output is the filtered, highly reliable data.

[0427] Step 7:

[0428] Accommodation search and suggestions

[0429] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account emotions recognized by the emotion engine to optimize the recommendations. For example, it lists accommodations that meet the criteria of "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget range." The input is the filtered data and the results of emotion analysis, and the output is a list of optimal accommodations.

[0430] Step 8:

[0431] Interactive suggestions

[0432] The server then presents the narrowed down accommodation information to the user in a dialogue format. The tone and expression of the dialogue are adjusted according to the emotions recognized by the emotion engine. The user can review the suggestions and enter additional requests or questions. The input is a list of optimal accommodations and the user's additional requests, and the output is an updated proposal.

[0433] Step 9:

[0434] Displaying the results

[0435] When the user finally finds a suitable accommodation, the server displays the information on the terminal, along with a link to make a reservation and contact information. The input is the finalized accommodation information, and the output is the detailed information of the accommodation displayed on the terminal (e.g., a link to the official website and a phone number).

[0436] (Application example 2)

[0437] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0438] Conventional food delivery systems have difficulty making suggestions based on the user's specific wishes and emotions, and simply displaying a list has not been enough to increase user satisfaction. Furthermore, when a user orders a meal, the system is unable to make suggestions that take into account the user's mood or emotions at the time, resulting in an unsatisfactory user experience.

[0439] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring text or voice data input by the user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for searching and collecting information from various information sources based on the extracted keywords, means for filtering the collected data to select reliable information, means for narrowing down and suggesting items that match the user's wishes based on the selected information, dialogue means for allowing the user to further update their wishes, and means for performing emotion analysis and making suggestions based on the user's emotions. This enables food delivery suggestions based on the user's specific wishes and emotions, improving the user experience.

[0440] "User-input text or voice data" refers to text data or voice data that a user provides to the system using an input device.

[0441] "Means for converting into text data" refers to a technology or device that converts voice data into text information, and generally refers to voice recognition technology.

[0442] "Means for analyzing text data to extract keywords related to user desires and preferences" refers to technology or algorithms that identify and extract specific important words or phrases from text information.

[0443] "Means of searching and collecting information from sources" refers to technologies or systems that automatically obtain necessary information or data from the Internet or databases.

[0444] "Means for filtering collected data to select reliable information" refers to technologies or algorithms for selecting accurate and useful data from the collected information.

[0445] "Means for narrowing down and proposing options that match the user's desires" refers to a technology or system that identifies the options that best fit the user's desired conditions and presents them to the user.

[0446] "Interaction means" refers to the interface or technology that allows the user and the system to exchange information with each other.

[0447] "Means for performing emotion analysis and making suggestions based on the user's emotions" refers to technology or algorithms for identifying emotions from the user's input data and making suggestions that match those emotions.

[0448] The present invention is a food delivery system that allows a user to input their meal-related preferences via text or voice, and then suggests the most suitable restaurant and menu based on the user's preferences and current mood. Specific embodiments for realizing this system are described below.

[0449] System Overview

[0450] The system starts when the user inputs their preferences using a device such as a smartphone or PC. The data entered by the user is processed by the server, which then makes optimal food delivery suggestions.

[0451] User input

[0452] The user inputs their meal preferences using their own device, either by text or voice. For example, they might input something like, "I'm not feeling well today, but I want to eat spicy curry."

[0453] Converting audio data to text

[0454] When voice is input, the smartphone or PC device sends the data to a server, which then uses a speech recognition API (for example, Google Cloud Speech-to-Text API) to convert the voice data into text data, which is then used for subsequent analysis.

[0455] Text and Sentiment Analysis

[0456] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools (e.g., Google Cloud Natural Language API). Furthermore, a sentiment analysis engine analyzes the user's input data and recognizes emotions such as "depressed."

[0457] Data Collection and Filtering

[0458] The server searches and collects relevant data from food delivery-related information sources (e.g., restaurant review site APIs and blog articles) based on the extracted keywords and sentiment analysis results. The collected data is filtered based on the reliability and detail of the information, and highly reliable information is selected.

[0459] Proposals and Dialogue

[0460] Based on the filtered information, the server narrows down and suggests restaurants and menus that best match the user's preferences and feelings. The suggestions are made interactively, and each time the user enters additional preferences, the system searches the information again and makes the most appropriate suggestions. This interactive format allows users to customize their experience in detail, increasing satisfaction.

[0461] Displaying the results

[0462] Finally, the device displays the restaurant and menu information selected by the user, along with links to order and detailed information, such as a link to the restaurant's ordering page and phone number.

[0463] Examples of specific examples and prompts

[0464] For example, if a user enters "I'm not feeling well today, but I want to eat spicy curry," the server will process it as follows:

[0465] 1. User: "I'm not feeling well today, but I want to eat some spicy curry."

[0466] 2. The server converts the audio data to text (if necessary).

[0467] 3. The server analyzes the text and extracts the keywords "not feeling well" and "spicy curry."

[0468] 4. The emotion engine analyzes the emotion of "feeling down."

[0469] 5. The server searches restaurant review site APIs and blog posts to collect relevant information.

[0470] 6. The server filters the collected information to narrow down the data to the most reliable.

[0471] 7. The server takes into account the results of the sentiment analysis and suggests restaurants that serve particularly "energetic" spicy curry.

[0472] 8. The user is given interactive suggestions and provided with a link to the ordering page of the restaurant they ultimately selected.

[0473] Example prompts to be input to the generative AI model:

[0474] If you type "I'm not feeling well today, but I want to eat some spicy curry.":

[0475] Recognize the feeling of "not feeling well" and find a restaurant that serves "spicy curry."

[0476] Get a list of top-rated restaurants from sources.

[0477] It filters reviews and ratings to suggest restaurants that best suit the user's preferences.

[0478] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[0479] Step 1:

[0480] The user inputs their meal preferences via text or voice. The user inputs text or voice using their own device (smartphone, PC, etc.), such as "I'm not feeling well today, but I'd like to eat spicy curry."

[0481] Step 2:

[0482] The device sends the input content to the server. Text data is sent as is, and if it is voice data, it is converted to text data on the server using a voice recognition API (for example, Google Cloud Speech-to-Text API). Input: Voice data, Output: Text data.

[0483] Step 3:

[0484] The server analyzes the received text data. The server uses a natural language processing (NLP) tool (e.g., Google Cloud Natural Language API) to analyze the text and extract keywords related to the user's wishes and preferences. Input: text data, output: extracted keywords (e.g., "feeling unwell" or "spicy curry").

[0485] Step 4:

[0486] The server performs emotion analysis. The emotion engine analyzes the emotions from the user's input data and recognizes emotions such as "depressed." Input: text data, output: analyzed emotion (e.g., "depressed").

[0487] Step 5:

[0488] The server collects information based on the extracted keywords and sentiment analysis results. It searches and collects relevant data from food delivery-related sources (e.g., restaurant review site APIs and blog articles). Input: extracted keywords and sentiment data. Output: collected data.

[0489] Step 6:

[0490] The server filters the data collected. Filtering is performed based on the reliability of the information, level of detail, update date, etc., to select the most reliable information. Input: collected data, output: filtered data.

[0491] Step 7:

[0492] The server makes suggestions based on the user's preferences and feelings. Based on the filtered data, it lists restaurants and menus that best suit the user's preferences and presents suggestions in an interactive format. Input: filtered data, Output: listed restaurants and menus.

[0493] Step 8:

[0494] The user further updates their preferences. Each time the user interactively reviews the suggestions and enters additional preferences or questions, the system searches for information again and makes the best suggestions. Input: Additional preferences from the user, Output: Updated suggestions.

[0495] Step 9:

[0496] The server displays the final result to the user. Information about the restaurant and menu selected by the user is displayed on the terminal, and a link and detailed information for ordering are provided. Input: Final selected proposal, Output: Displayed ordering link and detailed information.

[0497] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0498] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search<url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0499] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.

[0500] [Second embodiment]

[0501] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.

[0502] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.

[0503] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0504] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.

[0505] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[0506] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0507] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0508] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0509] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0510] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0511] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0512] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."

[0513] System Overview

[0514] This invention relates to a system that allows users to input their preferences for accommodations using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodations. The system mainly includes the following components: a user terminal, a server, and information sources (review sites and blog articles).

[0515] User input

[0516] Users can use their own devices to input their accommodation preferences using free text or voice. For example, they might input something like, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly."

[0517] Text Conversion

[0518] When voice is input, the device sends it to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[0519] Text analytics

[0520] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools. For example, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service" are extracted.

[0521] Collecting data from sources

[0522] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords, using search engine APIs and public APIs of review sites.

[0523] Information Filtering

[0524] The collected data is filtered by the server, based on criteria such as the reliability of the information, the date of update, and the level of detail of the content, allowing the server to select the information that best suits the user's needs.

[0525] Accommodation search and suggestions

[0526] Based on the filtered information, the server narrows down the list of accommodations that match the user's preferences, such as "highly rated staff," "good food," "quiet environment," and "reasonable budget."

[0527] Interactive suggestions

[0528] The server interactively proposes information on the narrowed-down accommodations to the user. The user can accept the proposals from the server and, if necessary, enter additional preferences or conditions to further narrow down the search. For example, in response to a request to "know more about this hot spring inn," the server will provide detailed reviews and information about the accommodation.

[0529] Displaying the results

[0530] Once the user finally finds a suitable accommodation, the information is displayed on the user's device along with a link to the accommodation's official website and contact information for booking, such as a phone number.

[0531] Specific examples

[0532] For example, if a user is looking for a "quiet and relaxing hot spring inn," the server might do the following:

[0533] 1. The user enters their preference via text or voice.

[0534] 2. The server converts the audio data into text data.

[0535] 3. The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[0536] 4. The server searches review sites and blog articles using the extracted keywords to collect related information.

[0537] 5. The server filters the collected information to narrow it down to the most reliable and detailed information.

[0538] 6. The server interactively presents the narrowed down accommodation information to the user.

[0539] 7. The user enters additional preferences, and the server again searches, collects, and filters the information.

[0540] 8. Information about the accommodation that the user finally selected is displayed on the device and a link for booking is provided.

[0541] As described above, this system suggests accommodations based on the user's specific preferences and helps them make reservations easily.

[0542] The processing flow will be explained below.

[0543] Step 1: Getting User Input

[0544] The user uses their own terminal to input their accommodation preferences using free text or voice.

[0545] The terminal receives the user's input and temporarily stores it.

[0546] Step 2: Submitting input data

[0547] The device sends the stored text or voice data to the server.

[0548] The server stores the received data in storage for analysis.

[0549] Step 3: Convert audio data to text

[0550] The server uses a speech recognition API to convert the voice data into text data.

[0551] The converted text data is then stored again in storage, ready for analysis.

[0552] Step 4: Text Analysis

[0553] The server uses natural language processing tools to analyze the text data.

[0554] Through analysis, keywords related to the user's wishes and preferences are extracted, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff friendliness."

[0555] Step 5: Collect data from sources

[0556] The server searches external information sources such as review sites and blog articles based on the extracted keywords.

[0557] We use search engine APIs and public APIs from review sites to collect relevant data.

[0558] Step 6: Filtering the information

[0559] The server filters the collected data.

[0560] Filtering criteria include the reliability of the information (user ratings and poster profile), update date, and level of detail of the content.

[0561] Step 7: Narrow down and propose accommodations

[0562] The server uses the filtered information to narrow down the accommodation options that match the user's preferences.

[0563] The server selects the top three accommodations and generates a suggestion message.

[0564] Step 8: Viewing Proposals

[0565] The terminal displays the proposal message received from the server on the user interface.

[0566] The user can review the suggestions and enter any additional requests or questions.

[0567] Step 9: Add your desired action

[0568] The server receives the user's additional requests and questions and performs text analysis again.

[0569] The server re-searches, collects and filters the information based on the new criteria.

[0570] Step 10: Final proposal and reservation information provided

[0571] The server then presents the user with the information on accommodations that have been further refined.

[0572] Once the user has finalized their choice of accommodation, the server provides the terminal with a link and contact information for making a reservation.

[0573] Example 1

[0574] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0575] Conventional accommodation search systems have had difficulty reflecting the diverse needs of users. Furthermore, even systems that allow voice input lacked the technology to accurately convert voice data into text and properly analyze its content. Furthermore, there was a need for a system that could ensure the reliability of information collected from review sites and blog articles, and automatically select and suggest accommodations that best fit the user's needs.

[0576] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[0577] In this invention, the server includes means for acquiring text or voice data input by a user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for searching and collecting data related to accommodations from various information sources based on the extracted keywords, means for filtering the collected data to select reliable information, means for narrowing down and proposing accommodations that match the user's wishes based on the selected information, interaction means for allowing the user to further update their preferences, means for scoring the filtered information, and means for providing detailed information about accommodations and connection methods. This makes it possible to automatically select and propose reliable and optimal accommodations based on the user's diverse wishes.

[0578] "User" refers to an individual or group who uses the system to input their accommodation preferences and receive suggestions for the most suitable accommodation.

[0579] A "terminal" is an electronic device such as a computer, smartphone, or tablet that a user uses to input their preferences regarding accommodation.

[0580] "Server" means a combination of software and hardware for converting voice data into text data, analyzing the text, and searching, collecting, and filtering accommodation data.

[0581] "Text data" is character string information that expresses the user's preferences regarding accommodation facilities.

[0582] "Voice data" refers to a voice file that records the user's preferences regarding accommodations input by voice.

[0583] A "natural language processing (NLP) tool" is a software device that analyzes text data to extract keywords related to a user's wishes and preferences.

[0584] "Keywords" are important words or phrases related to the user's wishes and preferences that are extracted from the text data.

[0585] "Sources" are external websites or databases that provide relevant information, such as review sites or blog posts about accommodations.

[0586] "Filtering" is the process of selecting reliable information from collected data and extracting the information that best suits the user's needs.

[0587] "Scoring" is the process of evaluating and prioritizing accommodations based on filtered information.

[0588] "Suggestion" means that the server presents information on the most suitable accommodation to the user.

[0589] "Interaction means" is an interface that allows the user to input additional preferences and requirements.

[0590] "Detailed information" refers to specific data such as the accommodation's features, ratings, prices, and user reviews.

[0591] "How to Connect" means the link or contact information for making a reservation for an accommodation.

[0592] This invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodation. The system is primarily composed of a user terminal, a server, and information sources such as review sites and blog articles.

[0593] Users use their own devices (smartphones, PCs, tablets, etc.) to input their preferences for accommodation. Input can be done either by free text or by voice. For example, a specific request could be, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to be a place with good food. I'm also looking for the staff's attitude."

[0594] When a user inputs something by voice, the device sends the voice data to the server. The server then uses a voice recognition API (for example, a general-purpose voice recognition API) to convert the voice data into text data. The converted text data is then used for subsequent analysis.

[0595] The server analyzes the converted text data using natural language processing (NLP) tools (e.g., open-source NLP toolkits) to extract keywords related to the user's wishes and preferences. Examples of extracted keywords include "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service."

[0596] Next, the server searches and collects relevant data from review sites (e.g., general-purpose review information sites) and blog articles based on the extracted keywords. This search uses search engine APIs (e.g., general-purpose search engine APIs) and public APIs of review sites.

[0597] The server filters the collected data based on criteria such as reliability, update date, and level of detail, allowing the information most suited to the user's needs to be selected.

[0598] The filtered information is then scored to create a list of accommodations that best fit the user's preferences, such as those that meet criteria such as "highly rated staff service," "good food," "quiet environment," and "reasonable budget."

[0599] The server interactively suggests information about listed accommodations to the user. The user can then enter more detailed requests and conditions, and the server will search, collect, and filter the information again based on that request. For example, in response to a request for "more information about this hot spring inn," the server will provide detailed reviews and information about the accommodation.

[0600] Finally, the device displays information about the accommodation selected by the user, along with a link to make a reservation and contact information, such as a link to the official website and phone number of the selected accommodation.

[0601] Examples of specific examples and prompts

[0602] As a concrete example, if a user is looking for a "quiet and relaxing hot spring inn," the system's processing would proceed as follows:

[0603] The user inputs their preference by text or voice.

[0604] The server converts the voice data into text data (in the case of voice input).

[0605] The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[0606] The server searches review sites and blog articles using the extracted keywords to collect related information.

[0607] The server filters the collected information to select the most reliable and detailed information.

[0608] The server proposes information on the narrowed down accommodations to the user in an interactive format.

[0609] The user enters additional preferences and the server again searches, collects and filters the information.

[0610] Information about the accommodation facility that the user finally selects is displayed on the terminal, and a link for making a reservation is provided.

[0611] Here are some examples of prompts to input to the generative AI model:

[0612] "A user inputs that they are looking for a quiet, relaxing hot spring inn. Their budget is under 10,000 yen per person per night, and they would like a place with good food. The friendliness of the staff is also important. Analyze the user's input and generate a program flow to suggest the best accommodations."

[0613] As described above, this system suggests accommodations based on the user's specific preferences and helps them make reservations easily.

[0614] The flow of the identification process in the first embodiment will be described with reference to FIG.

[0615] Step 1:

[0616] The user uses their own device to input their preferences for accommodation. The input method is either free text or voice input. For example, a request might be, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly." The input free text or voice data is sent to the server.

[0617] Input: Free text or voice data describing the user's wishes

[0618] Output: Sending data from the device to the server

[0619] Step 2:

[0620] The server converts the received voice data into text data using a voice recognition API (for example, a general-purpose voice recognition API). In this conversion process, the voice waveform data is analyzed and the corresponding text is generated. The voice input is converted into text data.

[0621] Input: Audio data

[0622] Output: Text data

[0623] Step 3:

[0624] The server analyzes the text data using natural language processing (NLP) tools (e.g., open-source NLP toolkits). Specifically, it divides the text into tokens and extracts important keywords and phrases. During this analysis, keywords related to the user's wishes and preferences (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff friendliness") are identified.

[0625] Input: Text data

[0626] Output: Extracted keywords

[0627] Step 4:

[0628] The server searches and collects relevant data from information sources (e.g., review sites, blog articles) based on the extracted keywords. This search uses a search engine API (e.g., a general-purpose search engine API) or the public API of the review site. The server calls each API and collects the relevant information.

[0629] Input: Extracted keywords

[0630] Output: Relevant data collected

[0631] Step 5:

[0632] The server filters the collected data based on criteria such as reliability, update date, and level of detail. Specifically, it excludes unreliable information and outdated information and selects detailed information. This filtering allows it to extract reliable information tailored to the user's needs.

[0633] Input: Relevant data collected

[0634] Output: Filtered data

[0635] Step 6:

[0636] The server scores the filtered information, evaluating its suitability to the user's desired conditions (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff friendliness"), and generates a prioritized list of accommodations.

[0637] Input: Filtered data

[0638] Output: Scored accommodation list

[0639] Step 7:

[0640] The server interactively suggests scored accommodation information to the user. Specifically, a list of the most suitable accommodations is displayed on the user's screen, and by clicking on the details, more specific information (e.g., reviews, ratings, facility photos, etc.) is displayed. The user can then enter more detailed preferences and conditions.

[0641] Input: Scored accommodation list

[0642] Output: A list of accommodations suggested to the user

[0643] Step 8:

[0644] The user then inputs further details about their desired accommodations from among those suggested by the server. Based on the new criteria entered by the user, the server again searches, collects, filters, and scores the information, updating the optimal accommodations.

[0645] Input: User's new wishes or requirements

[0646] Output: Updated property list

[0647] Step 9:

[0648] Finally, the user's selected accommodation information is displayed on the device, including details about the accommodation, a booking link, and contact information. Once the user clicks the "Book" button, they are redirected to the accommodation's official website to complete the booking process.

[0649] Input: Final selected accommodation list

[0650] Output: Accommodation details and booking link

[0651] The above is the specific operations and input / output information performed in the processing steps of this system.

[0652] (Application example 1)

[0653] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0654] Conventional accommodation recommendation systems require users to search the Internet or consult review sites, which is inconvenient. Furthermore, search results often do not match the user's specific preferences, resulting in low satisfaction. Therefore, there is a need for a system that can quickly and accurately select and suggest optimal accommodations, especially for users traveling or driving.

[0655] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[0656] In this invention, the server includes: means for acquiring text or voice data input by a user; means for converting the acquired text or voice data into text data; means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences; means for searching and collecting data related to accommodations from various information sources based on the extracted keywords; means for filtering the collected data to select reliable information; means for narrowing down and suggesting accommodations that match the user's wishes based on the selected information; dialogue means for enabling the user to further update their preferences; means, which is installed in an autonomous vehicle, for inputting the user's wishes using an in-vehicle touch panel or voice input device; and means for displaying the collected accommodation information on the vehicle's navigation screen and providing reservation links and contact information. This enables users traveling or driving to quickly and accurately find the best accommodation and make reservations or contact them.

[0657] "Text or voice data entered by the user" refers to data that provides information about the accommodation facility desired by the user in the form of text or voice input.

[0658] "Means for converting into text data" refers to technology for converting voice data into text format and devices or software for doing so.

[0659] "Means for extracting keywords" refers to techniques and processing procedures for automatically finding important words related to a user's wishes and preferences from text data.

[0660] "Means for retrieving and collecting data from sources" refers to techniques or procedures for automatically retrieving and collecting data related to keywords from various external sources.

[0661] "Means for filtering data to select reliable information" refers to the technology and processing procedures for selecting from collected data information that is highly reliable and meets the user's needs.

[0662] "Means for narrowing down and suggesting accommodations that meet the user's preferences" refers to the technology and processing procedures for identifying the accommodations that best meet the user's preferences based on the selected information and suggesting them to the user.

[0663] The "interactive means for enabling the user to further update their preferences" is a two-way communication means for the user to reflect additional preferences or conditions on the proposed content.

[0664] "A means for inputting user preferences using a touch panel or voice input device installed in an autonomous vehicle" refers to a system that allows users to input their preferences regarding accommodations by text or voice using an input device built into an autonomous vehicle.

[0665] "Means for displaying collected accommodation information on the vehicle's navigation screen and providing reservation links and contact information" refers to the technology and procedures for displaying searched accommodation information on the vehicle's navigation system and providing reservation links and contact information.

[0666] This invention is a system that allows a user to input their accommodation preferences in an autonomous vehicle and suggests the most suitable accommodation based on those preferences. This system is composed of the following elements.

[0667] System configuration

[0668] 1. User terminal and input means

[0669] The user inputs their accommodation preferences using a touch panel or voice input device installed in the autonomous vehicle. For example, the user might input "I want to go to a hot spring inn" by voice.

[0670] 2. Text Conversion Methods

[0671] When a user inputs something by voice, a speech recognition API (e.g., Google Cloud Speech-to-Text) is used to convert this voice data into text data, which is then sent to the server.

[0672] 3. Text Analysis Methods

[0673] The server analyzes the text data using natural language processing tools (e.g., spaCy) and extracts keywords related to the user's preferences. This analysis yields keywords such as "hot spring inn," "budget," and "quiet."

[0674] 4. Data search and collection methods

[0675] The server searches and collects data from external information sources such as review sites and blog posts based on the extracted keywords. This search uses various search engine APIs (e.g., Google Custom Search API) and review site APIs (e.g., Yelp API).

[0676] 5. Data Filtering Methods

[0677] The server filters the collected data to narrow down the information to highly reliable and detailed data, using criteria such as the reliability of the information, the date of the most recent update, and the level of detail of the content.

[0678] 6. Information suggestions and means of interaction

[0679] Based on the filtered information, the server identifies the accommodations that best fit the user's preferences and displays them on the vehicle's navigation screen. Furthermore, it makes suggestions to the user interactively, and if there are additional preferences, the server searches, collects, and filters again.

[0680] 7. Results display means

[0681] Finally, once the perfect accommodation is found, it will be displayed on the navigation screen, along with a booking link and contact information, allowing the user to easily make a reservation.

[0682] Example

[0683] As a concrete example, if a user says, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like a place with good food," the server will process it as follows:

[0684] 1. The user inputs their request by voice.

[0685] 2. The server converts the audio data into text data using the Google Cloud Speech-to-Text API.

[0686] 3. The server uses spaCy to analyze the text data and extract keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," and "delicious food."

[0687] 4. The server uses the extracted keywords to collect related information using the Google Custom Search API or Yelp API.

[0688] 5. The server filters the collected information to narrow it down to the most reliable and detailed information.

[0689] 6. The server suggests the best accommodations on the vehicle's navigation screen and allows the user to confirm interactively.

[0690] 7. Information about the finally selected accommodation is displayed on the navigation screen and a booking link is provided.

[0691] Prompt Sentence Examples

[0692] "This user is looking for a quiet, relaxing hot spring inn. Their budget is under ¥10,000 per person per night, and they value good food and friendly staff. Search for relevant reviews and blog posts to suggest accommodations that fit these criteria."

[0693] In this way, the system can quickly find the user's desired accommodation in an autonomous vehicle, providing a comfortable and efficient travel experience.

[0694] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[0695] Step 1:

[0696] The user inputs their preference by voice or text.

[0697] Input: User voice or text input

[0698] Specific operation: Using the touch panel and microphone installed in the self-driving vehicle, the user inputs, "I'm looking for a quiet and relaxing hot spring inn."

[0699] Step 2:

[0700] The server converts the voice data into text data.

[0701] Input: User's voice data

[0702] Data processing: Convert the audio data into text format using the Google Cloud Speech-to-Text API.

[0703] Output: Text data

[0704] Specific operation: The voice input data is sent to the server and converted into text data using the Google Cloud Speech-to-Text API.

[0705] Step 3:

[0706] The server analyzes the text data and extracts keywords.

[0707] Input: Converted text data

[0708] Data processing: Using natural language processing with spaCy, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff service" are extracted from the text.

[0709] Output: Extracted keywords

[0710] Specific operation: Analyze text data using spaCy and automatically extract important keywords.

[0711] Step 4:

[0712] The server collects data from sources based on keywords.

[0713] Input: Extracted keywords

[0714] Data processing: Using the Google Custom Search API and Yelp API, we search and collect information about the relevant accommodation from review sites and blog articles.

[0715] Output: Collected information data

[0716] What it does: Enter keywords into the Google Custom Search API or Yelp API to gather related reviews and blog posts.

[0717] Step 5:

[0718] Filtering data collected by the server.

[0719] Input: Collected information data

[0720] Data processing: Filter data based on the reliability of the information, update date, and level of detail to narrow down to the most relevant information.

[0721] Output: filtered data with high probability of information

[0722] Specific operation: The data is sorted by prioritizing highly reliable review sites, the most recent update date, and articles with high detail.

[0723] Step 6:

[0724] The server identifies and suggests the best accommodations.

[0725] Input: Filtered information data

[0726] Data processing: Identify the accommodation that best meets the user's desired conditions, compile the information, and generate recommendations.

[0727] Output: Recommendations for the best accommodation

[0728] Specific operation: The vehicle's navigation system displays accommodation information that matches the user's preferences.

[0729] Step 7:

[0730] The user enters additional preferences and further refines the search interactively.

[0731] Input: Request to add user

[0732] Data processing: The server again collects and filters data based on the user's preferences and re-proposes the most suitable accommodation.

[0733] Output: Updated accommodation suggestions

[0734] Specific operation: Accepts interactive input on the navigation screen, searches and filters data again, and displays updated information.

[0735] Step 8:

[0736] Display final accommodation information on the navigation screen and provide a booking link.

[0737] Input: Information about the accommodation selected

[0738] Data processing: Formatting data for display, adding booking links and contact information.

[0739] Output: Accommodation information and booking link displayed on the navigation screen

[0740] What it does: Display information about the accommodation selected by the user on the navigation screen, along with booking links and contact information.

[0741] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[0742] System Overview

[0743] The present invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests optimal accommodations. Furthermore, by combining it with an emotion engine that recognizes emotions from the user's input data, the accuracy of suggestions and the user experience are improved.

[0744] User input

[0745] Users can use their own devices to input their accommodation preferences using free text or voice. For example, they might input something like, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly."

[0746] Text Conversion

[0747] When voice is input, the device sends it to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[0748] Text analytics

[0749] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools. For example, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service" are extracted.

[0750] emotion recognition

[0751] The server uses an emotion engine to analyze the user's input data and determine their emotions from the words they use and the context they enter, recognizing emotions such as "joy," "tired," and "dissatisfied."

[0752] Collecting data from sources

[0753] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords, using search engine APIs and public APIs of review sites.

[0754] Information Filtering

[0755] The collected data is filtered by the server based on criteria such as the reliability of the information, the date of update, and the level of detail of the content, and the most reliable information is selected.

[0756] Accommodation search and suggestions

[0757] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account the user's emotions, as recognized by the emotion engine, to optimize the recommendations. For example, it lists accommodations that meet criteria such as "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget."

[0758] Interactive suggestions

[0759] The server then presents the user with a dialogue to suggest the narrowed-down accommodation information. The tone and expression of the dialogue are adjusted according to the emotion recognized by the emotion engine. The user can then confirm the suggestions and enter any additional requests or questions.

[0760] Displaying the results

[0761] Once the user finally finds a suitable accommodation, the information is displayed on the user's device along with a link to the accommodation's official website and contact information for booking, such as a phone number.

[0762] Specific examples

[0763] For example, if a user is looking for a "quiet and relaxing hot spring inn," the server might do the following:

[0764] 1. The user enters their preference via text or voice.

[0765] 2. The server converts the audio data into text data.

[0766] 3. The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[0767] 4. The emotion engine analyzes the user's emotions from the input data and recognizes that the user is "tired."

[0768] 5. The server searches review sites and blog articles using the extracted keywords to collect related information.

[0769] 6. The server filters the collected information to narrow it down to the most reliable and detailed information.

[0770] 7. The server considers the results of the emotion engine and suggests accommodation options that emphasize a relaxing environment.

[0771] 8. The user enters additional preferences, and the server again searches, collects, and filters the information.

[0772] 9. Information about the accommodation that the user finally selected is displayed on the device and a link for booking is provided.

[0773] In this way, the present invention suggests accommodations based on the user's specific desires and feelings, providing an efficient and satisfying booking experience.

[0774] The processing flow will be explained below.

[0775] Step 1: Getting User Input

[0776] The user uses their own terminal to input their accommodation preferences using free text or voice.

[0777] The terminal receives the user's input and temporarily stores it.

[0778] Step 2: Submitting input data

[0779] The device sends the stored text or voice data to the server.

[0780] The server stores the received data in storage for analysis.

[0781] Step 3: Convert audio data to text

[0782] The server uses a speech recognition API to convert the voice data into text data.

[0783] The converted text data is then stored again in storage, ready for analysis.

[0784] Step 4: Text Analysis

[0785] The server uses natural language processing tools to analyze the text data.

[0786] Through analysis, keywords related to the user's wishes and preferences are extracted, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff friendliness."

[0787] Step 5: Emotion Recognition

[0788] The server uses an emotion engine to analyze the emotion from the user's input data.

[0789] The emotion engine analyzes emotions from the usage and context of words entered by the user, recognizing emotions such as "tired," "excited," and "expecting."

[0790] Step 6: Collect data from sources

[0791] The server searches external information sources such as review sites and blog articles based on the extracted keywords.

[0792] We use search engine APIs and public APIs from review sites to collect relevant data.

[0793] Step 7: Filtering the information

[0794] The server filters the collected data.

[0795] Filtering criteria include the reliability of the information (user ratings and poster information), update date, and level of detail of the content.

[0796] Step 8: Narrow down and propose accommodations

[0797] The server uses the filtered information to narrow down the accommodation options that match the user's preferences.

[0798] The suggestions are also optimized by taking into account the user's emotions as recognized by the emotion engine.

[0799] For example, if "relaxation," "quiet," "budget under 10,000 yen," "good food," and "friendly staff" are important to you, make a list of accommodations that meet these criteria.

[0800] Step 9: Viewing Proposals

[0801] The terminal displays the proposal message received from the server on the user interface.

[0802] Example: "The following accommodations were found: 1. XX Hot Springs Inn (quiet, relaxing, and has great food) 2. YY Resort Hotel (budget under 10,000 yen, friendly staff) 3. ZZ Mountain Lodge (relaxing atmosphere)"

[0803] Step 10: Add your desired action

[0804] The user reviews the proposal and, if necessary, enters additional requests or questions into the terminal.

[0805] For example: "Can you tell me if there are any more affordable accommodations?"

[0806] Step 11: Search again and refine

[0807] The server receives the user's additional requests and questions and performs text analysis again.

[0808] Re-search for information based on new criteria, gathering and filtering more data as needed.

[0809] Step 12: Final proposal and reservation information provided

[0810] The server then presents the user with the information on accommodations that have been further refined.

[0811] Once the user has finalized their choice of accommodation, the server provides the terminal with a link and contact information for making a reservation.

[0812] Example: "To make a reservation, please click here: XX Onsen Ryokan, website link, phone number: 01-2345-6789."

[0813] Example 2

[0814] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0815] Conventional accommodation reservation systems have not adequately reflected users' preferences and suggested the most suitable accommodation. In particular, they lacked accurate keyword extraction and emotion recognition based on user input, resulting in low suggestion accuracy. Furthermore, the accuracy of filtering the collected information was low, often resulting in unreliable information. As a result, users spent a lot of time and effort trying to find a satisfactory accommodation.

[0816] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.

[0817] In this invention, the server includes means for acquiring text or voice data input by a user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for analyzing and recognizing emotions from the data input by the user, means for searching and collecting data related to accommodations from various information sources based on the extracted keywords and the recognized emotions, means for filtering the collected data to select reliable information, means for narrowing down accommodations that match the user's wishes based on the selected information and the recognized emotions and suggesting them in an interactive format, and means for allowing the user to further update their preferences. This makes it possible to accurately reflect the user's wishes and emotions and efficiently suggest optimal accommodations based on reliable information.

[0818] "Text data" refers to character data obtained by converting a user's voice data using voice recognition technology, or character data that is directly input.

[0819] "Voice data" is acoustic information provided by a user through speech input.

[0820] "Keywords" are important words or phrases related to a user's desires and preferences.

[0821] An "emotion engine" is software that analyzes emotions from user input data and recognizes emotions such as "joy," "tired," and "dissatisfied."

[0822] "Various sources" refers to a wide range of data sources, including review sites, blog articles, external APIs, etc.

[0823] "Filtering" is the process of selecting information based on the reliability of the collected data, the most recent update date, and the level of detail.

[0824] "Interactive" means that the user can interact with the system and enter additional requests or questions.

[0825] "Accommodation facilities" are facilities where users can stay, such as hotels, inns, and guesthouses.

[0826] "Accommodation that matches the user's preferences" is the most suitable accommodation selected based on the user's extracted keywords and recognized emotions.

[0827] "Reliable information" is data that is based on the criteria that the source of the information is trustworthy and the information is accurate and up-to-date.

[0828] "Means for converting" refers to a speech recognition API or other software for converting voice data into text data.

[0829] This invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodation. Furthermore, by combining it with an emotion engine that recognizes emotions from the user's input data, the accuracy of suggestions and the user experience are improved.

[0830] System Configuration

[0831] Hardware:

[0832] Device (the device used by the user, e.g. smartphone, tablet, computer)

[0833] Servers (computers used for data processing and storage)

[0834] software:

[0835] Speech recognition API (e.g. Google Cloud Speech-to-Text)

[0836] Natural Language Processing (NLP) tools (e.g., SpaCy, NLTK)

[0837] Emotion engine (e.g. IBM Watson Tone Analyzer)

[0838] Search engine APIs (e.g., Google Search API)

[0839] Public API for review sites

[0840] Program processing

[0841] 1. User preference input:

[0842] The user uses the terminal to input their accommodation preferences using free text or voice. For example, they might input, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I also value the hospitality of the staff."

[0843] 2. Audio data conversion:

[0844] When voice is input, the device sends the voice data to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[0845] 3. Text data analysis:

[0846] The server then analyzes the converted text data using natural language processing (NLP) tools to extract keywords related to the user's wishes and preferences, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service."

[0847] 4. Emotion recognition:

[0848] The server uses an emotion engine to analyze the user's input data and determine emotions. The emotion engine recognizes emotions such as "happy," "tired," and "unhappy" based on the usage and context of the words entered by the user. For example, it recognizes "tired" from the user's input.

[0849] 5. Collecting data from sources:

[0850] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords and recognized sentiments, using search engine APIs and public APIs of review sites.

[0851] 6. Information filtering:

[0852] The server filters the collected data based on reliability, update date, and content detail to select highly reliable information, such as reviews with many five-star ratings or the latest blog posts.

[0853] 7. Accommodation selection and suggestions:

[0854] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account the user's emotions, as recognized by the emotion engine, to optimize the recommendations. For example, it lists accommodations that meet criteria such as "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget."

[0855] 8. Interactive suggestions:

[0856] The server then presents the user with a dialogue to suggest the narrowed-down accommodation information. The tone and expression of the dialogue are adjusted according to the emotion recognized by the emotion engine. The user can then confirm the suggestions and enter any additional requests or questions.

[0857] 9. Displaying the results:

[0858] Once the user finds a suitable accommodation, the server displays the information on the device, along with a link to the reservation site and contact information, such as a link to the selected accommodation's official website and phone number.

[0859] Specific examples

[0860] If a user is looking for a "quiet and relaxing hot spring inn," the following would be processed:

[0861] 1. The user enters their preferences via text or voice: "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to be a place with good food. I'd also like the staff to be very friendly."

[0862] 2. For voice input, the device sends voice data to the server, which converts it into text.

[0863] 3. The server analyzes the converted text using natural language processing tools and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[0864] 4. The emotion engine recognizes that the user is tired from their input data.

[0865] 5. The server searches review sites and blog articles using the extracted keywords and recognized emotions to collect related information.

[0866] 6. The server filters the collected information by reliability, update date, and level of detail to select the most reliable information.

[0867] 7. The server considers the results of the emotion engine and suggests accommodation information that emphasizes a relaxing environment.

[0868] 8. The server again searches, collects and filters the information based on any additional preferences entered by the user.

[0869] 9. The final accommodation information will be displayed on the device and a link will be provided for booking.

[0870] Prompt Sentence Examples

[0871] The text the user enters is something like this:

[0872] "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have delicious food. I also value the hospitality of the staff."

[0873] The invention suggests optimal accommodations based on a user's specific desires and feelings, providing an efficient and satisfying booking experience.

[0874] The flow of the identification process in the second embodiment will be described with reference to FIG.

[0875] Step 1:

[0876] User preference input

[0877] The user uses the terminal to input their accommodation preferences using free text or voice. For example, they might input, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I also value the hospitality of the staff." At this stage, the input is text or voice data, and the output is raw data containing the user's preferences.

[0878] Step 2:

[0879] Audio data conversion

[0880] When voice is input, the device uploads the voice data to the server, which then converts it into text using a speech recognition API such as Google Cloud Speech-to-Text API. The conversion process includes voice analysis, phoneme identification, and transcription. The input is voice data, and the output is the corresponding text data.

[0881] Step 3:

[0882] Text data analysis

[0883] The server analyzes the converted text data using natural language processing (NLP) tools (e.g., SpaCy, NLTK). During analysis, the text is tokenized, tagged with parts of speech, and analyzed for dependencies. This allows keywords related to the user's wishes and preferences to be extracted. The input is text data, and the output is the extracted keywords (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," etc.).

[0884] Step 4:

[0885] emotion recognition

[0886] The server uses an emotion engine (e.g., IBM Watson Tone Analyzer) to analyze the user's emotions from the input data. Based on the content and expression of the input text, the emotion engine recognizes emotions such as "happy," "tired," and "unhappy." The input is text data, and the output is the emotion analysis result (e.g., "tired").

[0887] Step 5:

[0888] Collecting data from sources

[0889] Based on the extracted keywords and recognized sentiment, the server uses the Google Search API and the public API of the review site to search and collect data from related review sites and blog articles. The server identifies the target to collect and makes an API call. The input is keyword and sentiment data, and the output is the retrieved data of related accommodation reviews and blog articles.

[0890] Step 6:

[0891] Information Filtering

[0892] The server filters the collected data based on reliability, update date, and level of detail, prioritizing highly reliable information (e.g., highly rated reviews, recently updated blog posts). The input is the collected data, and the output is the filtered, highly reliable data.

[0893] Step 7:

[0894] Accommodation search and suggestions

[0895] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account emotions recognized by the emotion engine to optimize the recommendations. For example, it lists accommodations that meet the criteria of "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget range." The input is the filtered data and the results of emotion analysis, and the output is a list of optimal accommodations.

[0896] Step 8:

[0897] Interactive suggestions

[0898] The server then presents the narrowed down accommodation information to the user in a dialogue format. The tone and expression of the dialogue are adjusted according to the emotions recognized by the emotion engine. The user can review the suggestions and enter additional requests or questions. The input is a list of optimal accommodations and the user's additional requests, and the output is an updated proposal.

[0899] Step 9:

[0900] Displaying the results

[0901] When the user finally finds a suitable accommodation, the server displays the information on the terminal, along with a link to make a reservation and contact information. The input is the finalized accommodation information, and the output is the detailed information of the accommodation displayed on the terminal (e.g., a link to the official website and a phone number).

[0902] (Application example 2)

[0903] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0904] Conventional food delivery systems have difficulty making suggestions based on the user's specific wishes and emotions, and simply displaying a list has not been enough to increase user satisfaction. Furthermore, when a user orders a meal, the system is unable to make suggestions that take into account the user's mood or emotions at the time, resulting in an unsatisfactory user experience.

[0905] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring text or voice data input by the user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for searching and collecting information from various information sources based on the extracted keywords, means for filtering the collected data to select reliable information, means for narrowing down and suggesting items that match the user's wishes based on the selected information, dialogue means for allowing the user to further update their wishes, and means for performing emotion analysis and making suggestions based on the user's emotions. This enables food delivery suggestions based on the user's specific wishes and emotions, improving the user experience.

[0906] "User-input text or voice data" refers to text data or voice data that a user provides to the system using an input device.

[0907] "Means for converting into text data" refers to a technology or device that converts voice data into text information, and generally refers to voice recognition technology.

[0908] "Means for analyzing text data to extract keywords related to user desires and preferences" refers to technology or algorithms that identify and extract specific important words or phrases from text information.

[0909] "Means of searching and collecting information from sources" refers to technologies or systems that automatically obtain necessary information or data from the Internet or databases.

[0910] "Means for filtering collected data to select reliable information" refers to technologies or algorithms for selecting accurate and useful data from the collected information.

[0911] "Means for narrowing down and proposing options that match the user's desires" refers to a technology or system that identifies the options that best fit the user's desired conditions and presents them to the user.

[0912] "Interaction means" refers to the interface or technology that allows the user and the system to exchange information with each other.

[0913] "Means for performing emotion analysis and making suggestions based on the user's emotions" refers to technology or algorithms for identifying emotions from the user's input data and making suggestions that match those emotions.

[0914] The present invention is a food delivery system that allows a user to input their meal-related preferences via text or voice, and then suggests the most suitable restaurant and menu based on the user's preferences and current mood. Specific embodiments for realizing this system are described below.

[0915] System Overview

[0916] The system starts when the user inputs their preferences using a device such as a smartphone or PC. The data entered by the user is processed by the server, which then makes optimal food delivery suggestions.

[0917] User input

[0918] The user inputs their meal preferences using their own device, either by text or voice. For example, they might input something like, "I'm not feeling well today, but I want to eat spicy curry."

[0919] Converting audio data to text

[0920] When voice is input, the smartphone or PC device sends the data to a server, which then uses a speech recognition API (for example, Google Cloud Speech-to-Text API) to convert the voice data into text data, which is then used for subsequent analysis.

[0921] Text and Sentiment Analysis

[0922] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools (e.g., Google Cloud Natural Language API). Furthermore, a sentiment analysis engine analyzes the user's input data and recognizes emotions such as "depressed."

[0923] Data Collection and Filtering

[0924] The server searches and collects relevant data from food delivery-related information sources (e.g., restaurant review site APIs and blog articles) based on the extracted keywords and sentiment analysis results. The collected data is filtered based on the reliability and detail of the information, and highly reliable information is selected.

[0925] Proposals and Dialogue

[0926] Based on the filtered information, the server narrows down and suggests restaurants and menus that best match the user's preferences and feelings. The suggestions are made interactively, and each time the user enters additional preferences, the system searches the information again and makes the most appropriate suggestions. This interactive format allows users to customize their experience in detail, increasing satisfaction.

[0927] Displaying the results

[0928] Finally, the device displays the restaurant and menu information selected by the user, along with links to order and detailed information, such as a link to the restaurant's ordering page and phone number.

[0929] Examples of specific examples and prompts

[0930] For example, if a user enters "I'm not feeling well today, but I want to eat spicy curry," the server will process it as follows:

[0931] 1. User: "I'm not feeling well today, but I want to eat some spicy curry."

[0932] 2. The server converts the audio data to text (if necessary).

[0933] 3. The server analyzes the text and extracts the keywords "not feeling well" and "spicy curry."

[0934] 4. The emotion engine analyzes the emotion of "feeling down."

[0935] 5. The server searches restaurant review site APIs and blog posts to collect relevant information.

[0936] 6. The server filters the collected information to narrow down the data to the most reliable.

[0937] 7. The server takes into account the results of the sentiment analysis and suggests restaurants that serve particularly "energetic" spicy curry.

[0938] 8. The user is given interactive suggestions and provided with a link to the ordering page of the restaurant they ultimately selected.

[0939] Example prompts to be input to the generative AI model:

[0940] If you type "I'm not feeling well today, but I want to eat some spicy curry.":

[0941] Recognize the feeling of "not feeling well" and find a restaurant that serves "spicy curry."

[0942] Get a list of top-rated restaurants from sources.

[0943] It filters reviews and ratings to suggest restaurants that best suit the user's preferences.

[0944] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[0945] Step 1:

[0946] The user inputs their meal preferences via text or voice. The user inputs text or voice using their own device (smartphone, PC, etc.), such as "I'm not feeling well today, but I'd like to eat spicy curry."

[0947] Step 2:

[0948] The device sends the input content to the server. Text data is sent as is, and if it is voice data, it is converted to text data on the server using a voice recognition API (for example, Google Cloud Speech-to-Text API). Input: Voice data, Output: Text data.

[0949] Step 3:

[0950] The server analyzes the received text data. The server uses a natural language processing (NLP) tool (e.g., Google Cloud Natural Language API) to analyze the text and extract keywords related to the user's wishes and preferences. Input: text data, output: extracted keywords (e.g., "feeling unwell" or "spicy curry").

[0951] Step 4:

[0952] The server performs emotion analysis. The emotion engine analyzes the emotions from the user's input data and recognizes emotions such as "depressed." Input: text data, output: analyzed emotion (e.g., "depressed").

[0953] Step 5:

[0954] The server collects information based on the extracted keywords and sentiment analysis results. It searches and collects relevant data from food delivery-related sources (e.g., restaurant review site APIs and blog articles). Input: extracted keywords and sentiment data. Output: collected data.

[0955] Step 6:

[0956] The server filters the data collected. Filtering is performed based on the reliability of the information, level of detail, update date, etc., to select the most reliable information. Input: collected data, output: filtered data.

[0957] Step 7:

[0958] The server makes suggestions based on the user's preferences and feelings. Based on the filtered data, it lists restaurants and menus that best suit the user's preferences and presents suggestions in an interactive format. Input: filtered data, Output: listed restaurants and menus.

[0959] Step 8:

[0960] The user further updates their preferences. Each time the user interactively reviews the suggestions and enters additional preferences or questions, the system searches for information again and makes the best suggestions. Input: Additional preferences from the user, Output: Updated suggestions.

[0961] Step 9:

[0962] The server displays the final result to the user. Information about the restaurant and menu selected by the user is displayed on the terminal, and a link and detailed information for ordering are provided. Input: Final selected proposal, Output: Displayed ordering link and detailed information.

[0963] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0964] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0965] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.

[0966] [Third embodiment]

[0967] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.

[0968] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.

[0969] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0970] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.

[0971] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[0972] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0973] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0974] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0975] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0976] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0977] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0978] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."

[0979] System Overview

[0980] This invention relates to a system that allows users to input their preferences for accommodations using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodations. The system mainly includes the following components: a user terminal, a server, and information sources (review sites and blog articles).

[0981] User input

[0982] Users can use their own devices to input their accommodation preferences using free text or voice. For example, they might input something like, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly."

[0983] Text Conversion

[0984] When voice is input, the device sends it to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[0985] Text analytics

[0986] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools. For example, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service" are extracted.

[0987] Collecting data from sources

[0988] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords, using search engine APIs and public APIs of review sites.

[0989] Information Filtering

[0990] The collected data is filtered by the server, based on criteria such as the reliability of the information, the date of update, and the level of detail of the content, allowing the server to select the information that best suits the user's needs.

[0991] Accommodation search and suggestions

[0992] Based on the filtered information, the server narrows down the list of accommodations that match the user's preferences, such as "highly rated staff," "good food," "quiet environment," and "reasonable budget."

[0993] Interactive suggestions

[0994] The server interactively proposes information on the narrowed-down accommodations to the user. The user can accept the proposals from the server and, if necessary, enter additional preferences or conditions to further narrow down the search. For example, in response to a request to "know more about this hot spring inn," the server will provide detailed reviews and information about the accommodation.

[0995] Displaying the results

[0996] Once the user finally finds a suitable accommodation, the information is displayed on the user's device along with a link to the accommodation's official website and contact information for booking, such as a phone number.

[0997] Specific examples

[0998] For example, if a user is looking for a "quiet and relaxing hot spring inn," the server might do the following:

[0999] 1. The user enters their preference via text or voice.

[1000] 2. The server converts the audio data into text data.

[1001] 3. The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[1002] 4. The server searches review sites and blog articles using the extracted keywords to collect related information.

[1003] 5. The server filters the collected information to narrow it down to the most reliable and detailed information.

[1004] 6. The server interactively presents the narrowed down accommodation information to the user.

[1005] 7. The user enters additional preferences, and the server again searches, collects, and filters the information.

[1006] 8. Information about the accommodation that the user finally selected is displayed on the device and a link for booking is provided.

[1007] As described above, this system suggests accommodations based on the user's specific preferences and helps them make reservations easily.

[1008] The processing flow will be explained below.

[1009] Step 1: Getting User Input

[1010] The user uses their own terminal to input their accommodation preferences using free text or voice.

[1011] The terminal receives the user's input and temporarily stores it.

[1012] Step 2: Submitting input data

[1013] The device sends the stored text or voice data to the server.

[1014] The server stores the received data in storage for analysis.

[1015] Step 3: Convert audio data to text

[1016] The server uses a speech recognition API to convert the voice data into text data.

[1017] The converted text data is then stored again in storage, ready for analysis.

[1018] Step 4: Text Analysis

[1019] The server uses natural language processing tools to analyze the text data.

[1020] Through analysis, keywords related to the user's wishes and preferences are extracted, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff friendliness."

[1021] Step 5: Collect data from sources

[1022] The server searches external information sources such as review sites and blog articles based on the extracted keywords.

[1023] We use search engine APIs and public APIs from review sites to collect relevant data.

[1024] Step 6: Filtering the information

[1025] The server filters the collected data.

[1026] Filtering criteria include the reliability of the information (user ratings and poster profile), update date, and level of detail of the content.

[1027] Step 7: Narrow down and propose accommodations

[1028] The server uses the filtered information to narrow down the accommodation options that match the user's preferences.

[1029] The server selects the top three accommodations and generates a suggestion message.

[1030] Step 8: Viewing Proposals

[1031] The terminal displays the proposal message received from the server on the user interface.

[1032] The user can review the suggestions and enter any additional requests or questions.

[1033] Step 9: Add your desired action

[1034] The server receives the user's additional requests and questions and performs text analysis again.

[1035] The server re-searches, collects and filters the information based on the new criteria.

[1036] Step 10: Final proposal and reservation information provided

[1037] The server then presents the user with the information on accommodations that have been further refined.

[1038] Once the user has finalized their choice of accommodation, the server provides the terminal with a link and contact information for making a reservation.

[1039] Example 1

[1040] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1041] Conventional accommodation search systems have had difficulty reflecting the diverse needs of users. Furthermore, even systems that allow voice input lacked the technology to accurately convert voice data into text and properly analyze its content. Furthermore, there was a need for a system that could ensure the reliability of information collected from review sites and blog articles, and automatically select and suggest accommodations that best fit the user's needs.

[1042] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[1043] In this invention, the server includes means for acquiring text or voice data input by a user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for searching and collecting data related to accommodations from various information sources based on the extracted keywords, means for filtering the collected data to select reliable information, means for narrowing down and proposing accommodations that match the user's wishes based on the selected information, interaction means for allowing the user to further update their preferences, means for scoring the filtered information, and means for providing detailed information about accommodations and connection methods. This makes it possible to automatically select and propose reliable and optimal accommodations based on the user's diverse wishes.

[1044] "User" refers to an individual or group who uses the system to input their accommodation preferences and receive suggestions for the most suitable accommodation.

[1045] A "terminal" is an electronic device such as a computer, smartphone, or tablet that a user uses to input their preferences regarding accommodation.

[1046] "Server" means a combination of software and hardware for converting voice data into text data, analyzing the text, and searching, collecting, and filtering accommodation data.

[1047] "Text data" is character string information that expresses the user's preferences regarding accommodation facilities.

[1048] "Voice data" refers to a voice file that records the user's preferences regarding accommodations input by voice.

[1049] A "natural language processing (NLP) tool" is a software device that analyzes text data to extract keywords related to a user's wishes and preferences.

[1050] "Keywords" are important words or phrases related to the user's wishes and preferences that are extracted from the text data.

[1051] "Sources" are external websites or databases that provide relevant information, such as review sites or blog posts about accommodations.

[1052] "Filtering" is the process of selecting reliable information from collected data and extracting the information that best suits the user's needs.

[1053] "Scoring" is the process of evaluating and prioritizing accommodations based on filtered information.

[1054] "Suggestion" means that the server presents information on the most suitable accommodation to the user.

[1055] "Interaction means" is an interface that allows the user to input additional preferences and requirements.

[1056] "Detailed information" refers to specific data such as the accommodation's features, ratings, prices, and user reviews.

[1057] "How to Connect" means the link or contact information for making a reservation for an accommodation.

[1058] This invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodation. The system is primarily composed of a user terminal, a server, and information sources such as review sites and blog articles.

[1059] Users use their own devices (smartphones, PCs, tablets, etc.) to input their preferences for accommodation. Input can be done either by free text or by voice. For example, a specific request could be, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to be a place with good food. I'm also looking for the staff's attitude."

[1060] When a user inputs something by voice, the device sends the voice data to the server. The server then uses a voice recognition API (for example, a general-purpose voice recognition API) to convert the voice data into text data. The converted text data is then used for subsequent analysis.

[1061] The server analyzes the converted text data using natural language processing (NLP) tools (e.g., open-source NLP toolkits) to extract keywords related to the user's wishes and preferences. Examples of extracted keywords include "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service."

[1062] Next, the server searches and collects relevant data from review sites (e.g., general-purpose review information sites) and blog articles based on the extracted keywords. This search uses search engine APIs (e.g., general-purpose search engine APIs) and public APIs of review sites.

[1063] The server filters the collected data based on criteria such as reliability, update date, and level of detail, allowing the information most suited to the user's needs to be selected.

[1064] The filtered information is then scored to create a list of accommodations that best fit the user's preferences, such as those that meet criteria such as "highly rated staff service," "good food," "quiet environment," and "reasonable budget."

[1065] The server interactively suggests information about listed accommodations to the user. The user can then enter more detailed requests and conditions, and the server will search, collect, and filter the information again based on that request. For example, in response to a request for "more information about this hot spring inn," the server will provide detailed reviews and information about the accommodation.

[1066] Finally, the device displays information about the accommodation selected by the user, along with a link to make a reservation and contact information, such as a link to the official website and phone number of the selected accommodation.

[1067] Examples of specific examples and prompts

[1068] As a concrete example, if a user is looking for a "quiet and relaxing hot spring inn," the system's processing would proceed as follows:

[1069] The user inputs their preference by text or voice.

[1070] The server converts the voice data into text data (in the case of voice input).

[1071] The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[1072] The server searches review sites and blog articles using the extracted keywords to collect related information.

[1073] The server filters the collected information to select the most reliable and detailed information.

[1074] The server proposes information on the narrowed down accommodations to the user in an interactive format.

[1075] The user enters additional preferences and the server again searches, collects and filters the information.

[1076] Information about the accommodation facility that the user finally selects is displayed on the terminal, and a link for making a reservation is provided.

[1077] Here are some examples of prompts to input to the generative AI model:

[1078] "A user inputs that they are looking for a quiet, relaxing hot spring inn. Their budget is under 10,000 yen per person per night, and they would like a place with good food. The friendliness of the staff is also important. Analyze the user's input and generate a program flow to suggest the best accommodations."

[1079] As described above, this system suggests accommodations based on the user's specific preferences and helps them make reservations easily.

[1080] The flow of the identification process in the first embodiment will be described with reference to FIG.

[1081] Step 1:

[1082] The user uses their own device to input their preferences for accommodation. The input method is either free text or voice input. For example, a request might be, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly." The input free text or voice data is sent to the server.

[1083] Input: Free text or voice data describing the user's wishes

[1084] Output: Sending data from the device to the server

[1085] Step 2:

[1086] The server converts the received voice data into text data using a voice recognition API (for example, a general-purpose voice recognition API). In this conversion process, the voice waveform data is analyzed and the corresponding text is generated. The voice input is converted into text data.

[1087] Input: Audio data

[1088] Output: Text data

[1089] Step 3:

[1090] The server analyzes the text data using natural language processing (NLP) tools (e.g., open-source NLP toolkits). Specifically, it divides the text into tokens and extracts important keywords and phrases. During this analysis, keywords related to the user's wishes and preferences (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff friendliness") are identified.

[1091] Input: Text data

[1092] Output: Extracted keywords

[1093] Step 4:

[1094] The server searches and collects relevant data from information sources (e.g., review sites, blog articles) based on the extracted keywords. This search uses a search engine API (e.g., a general-purpose search engine API) or the public API of the review site. The server calls each API and collects the relevant information.

[1095] Input: Extracted keywords

[1096] Output: Relevant data collected

[1097] Step 5:

[1098] The server filters the collected data based on criteria such as reliability, update date, and level of detail. Specifically, it excludes unreliable information and outdated information and selects detailed information. This filtering allows it to extract reliable information tailored to the user's needs.

[1099] Input: Relevant data collected

[1100] Output: Filtered data

[1101] Step 6:

[1102] The server scores the filtered information, evaluating its suitability to the user's desired conditions (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff friendliness"), and generates a prioritized list of accommodations.

[1103] Input: Filtered data

[1104] Output: Scored accommodation list

[1105] Step 7:

[1106] The server interactively suggests scored accommodation information to the user. Specifically, a list of the most suitable accommodations is displayed on the user's screen, and by clicking on the details, more specific information (e.g., reviews, ratings, facility photos, etc.) is displayed. The user can then enter more detailed preferences and conditions.

[1107] Input: Scored accommodation list

[1108] Output: A list of accommodations suggested to the user

[1109] Step 8:

[1110] The user then inputs further details about their desired accommodations from among those suggested by the server. Based on the new criteria entered by the user, the server again searches, collects, filters, and scores the information, updating the optimal accommodations.

[1111] Input: User's new wishes or requirements

[1112] Output: Updated property list

[1113] Step 9:

[1114] Finally, the user's selected accommodation information is displayed on the device, including details about the accommodation, a booking link, and contact information. Once the user clicks the "Book" button, they are redirected to the accommodation's official website to complete the booking process.

[1115] Input: Final selected accommodation list

[1116] Output: Accommodation details and booking link

[1117] The above is the specific operations and input / output information performed in the processing steps of this system.

[1118] (Application example 1)

[1119] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1120] Conventional accommodation recommendation systems require users to search the Internet or consult review sites, which is inconvenient. Furthermore, search results often do not match the user's specific preferences, resulting in low satisfaction. Therefore, there is a need for a system that can quickly and accurately select and suggest optimal accommodations, especially for users traveling or driving.

[1121] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[1122] In this invention, the server includes: means for acquiring text or voice data input by a user; means for converting the acquired text or voice data into text data; means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences; means for searching and collecting data related to accommodations from various information sources based on the extracted keywords; means for filtering the collected data to select reliable information; means for narrowing down and suggesting accommodations that match the user's wishes based on the selected information; dialogue means for enabling the user to further update their preferences; means, which is installed in an autonomous vehicle, for inputting the user's wishes using an in-vehicle touch panel or voice input device; and means for displaying the collected accommodation information on the vehicle's navigation screen and providing reservation links and contact information. This enables users traveling or driving to quickly and accurately find the best accommodation and make reservations or contact them.

[1123] "Text or voice data entered by the user" refers to data that provides information about the accommodation facility desired by the user in the form of text or voice input.

[1124] "Means for converting into text data" refers to technology for converting voice data into text format and devices or software for doing so.

[1125] "Means for extracting keywords" refers to techniques and processing procedures for automatically finding important words related to a user's wishes and preferences from text data.

[1126] "Means for retrieving and collecting data from sources" refers to techniques or procedures for automatically retrieving and collecting data related to keywords from various external sources.

[1127] "Means for filtering data to select reliable information" refers to the technology and processing procedures for selecting from collected data information that is highly reliable and meets the user's needs.

[1128] "Means for narrowing down and suggesting accommodations that meet the user's preferences" refers to the technology and processing procedures for identifying the accommodations that best meet the user's preferences based on the selected information and suggesting them to the user.

[1129] The "interactive means for enabling the user to further update their preferences" is a two-way communication means for the user to reflect additional preferences or conditions on the proposed content.

[1130] "A means for inputting user preferences using a touch panel or voice input device installed in an autonomous vehicle" refers to a system that allows users to input their preferences regarding accommodations by text or voice using an input device built into an autonomous vehicle.

[1131] "Means for displaying collected accommodation information on the vehicle's navigation screen and providing reservation links and contact information" refers to the technology and procedures for displaying searched accommodation information on the vehicle's navigation system and providing reservation links and contact information.

[1132] This invention is a system that allows a user to input their accommodation preferences in an autonomous vehicle and suggests the most suitable accommodation based on those preferences. This system is composed of the following elements.

[1133] System configuration

[1134] 1. User terminal and input means

[1135] The user inputs their accommodation preferences using a touch panel or voice input device installed in the autonomous vehicle. For example, the user might input "I want to go to a hot spring inn" by voice.

[1136] 2. Text Conversion Methods

[1137] When a user inputs something by voice, a speech recognition API (e.g., Google Cloud Speech-to-Text) is used to convert this voice data into text data, which is then sent to the server.

[1138] 3. Text Analysis Methods

[1139] The server analyzes the text data using natural language processing tools (e.g., spaCy) and extracts keywords related to the user's preferences. This analysis yields keywords such as "hot spring inn," "budget," and "quiet."

[1140] 4. Data search and collection methods

[1141] The server searches and collects data from external information sources such as review sites and blog posts based on the extracted keywords. This search uses various search engine APIs (e.g., Google Custom Search API) and review site APIs (e.g., Yelp API).

[1142] 5. Data Filtering Methods

[1143] The server filters the collected data to narrow down the information to highly reliable and detailed data, using criteria such as the reliability of the information, the date of the most recent update, and the level of detail of the content.

[1144] 6. Information suggestions and means of interaction

[1145] Based on the filtered information, the server identifies the accommodations that best fit the user's preferences and displays them on the vehicle's navigation screen. Furthermore, it makes suggestions to the user interactively, and if there are additional preferences, the server searches, collects, and filters again.

[1146] 7. Results display means

[1147] Finally, once the perfect accommodation is found, it will be displayed on the navigation screen, along with a booking link and contact information, allowing the user to easily make a reservation.

[1148] Example

[1149] As a concrete example, if a user says, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like a place with good food," the server will process it as follows:

[1150] 1. The user inputs their request by voice.

[1151] 2. The server converts the audio data into text data using the Google Cloud Speech-to-Text API.

[1152] 3. The server uses spaCy to analyze the text data and extract keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," and "delicious food."

[1153] 4. The server uses the extracted keywords to collect related information using the Google Custom Search API or Yelp API.

[1154] 5. The server filters the collected information to narrow it down to the most reliable and detailed information.

[1155] 6. The server suggests the best accommodations on the vehicle's navigation screen and allows the user to confirm interactively.

[1156] 7. Information about the finally selected accommodation is displayed on the navigation screen and a booking link is provided.

[1157] Prompt Sentence Examples

[1158] "This user is looking for a quiet, relaxing hot spring inn. Their budget is under ¥10,000 per person per night, and they value good food and friendly staff. Search for relevant reviews and blog posts to suggest accommodations that fit these criteria."

[1159] In this way, the system can quickly find the user's desired accommodation in an autonomous vehicle, providing a comfortable and efficient travel experience.

[1160] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[1161] Step 1:

[1162] The user inputs their preference by voice or text.

[1163] Input: User voice or text input

[1164] Specific operation: Using the touch panel and microphone installed in the self-driving vehicle, the user inputs, "I'm looking for a quiet and relaxing hot spring inn."

[1165] Step 2:

[1166] The server converts the voice data into text data.

[1167] Input: User's voice data

[1168] Data processing: Convert the audio data into text format using the Google Cloud Speech-to-Text API.

[1169] Output: Text data

[1170] Specific operation: The voice input data is sent to the server and converted into text data using the Google Cloud Speech-to-Text API.

[1171] Step 3:

[1172] The server analyzes the text data and extracts keywords.

[1173] Input: Converted text data

[1174] Data processing: Using natural language processing with spaCy, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff service" are extracted from the text.

[1175] Output: Extracted keywords

[1176] Specific operation: Analyze text data using spaCy and automatically extract important keywords.

[1177] Step 4:

[1178] The server collects data from sources based on keywords.

[1179] Input: Extracted keywords

[1180] Data processing: Using the Google Custom Search API and Yelp API, we search and collect information about the relevant accommodation from review sites and blog articles.

[1181] Output: Collected information data

[1182] What it does: Enter keywords into the Google Custom Search API or Yelp API to gather related reviews and blog posts.

[1183] Step 5:

[1184] Filtering data collected by the server.

[1185] Input: Collected information data

[1186] Data processing: Filter data based on the reliability of the information, update date, and level of detail to narrow down to the most relevant information.

[1187] Output: filtered data with high probability of information

[1188] Specific operation: The data is sorted by prioritizing highly reliable review sites, the most recent update date, and articles with high detail.

[1189] Step 6:

[1190] The server identifies and suggests the best accommodations.

[1191] Input: Filtered information data

[1192] Data processing: Identify the accommodation that best meets the user's desired conditions, compile the information, and generate recommendations.

[1193] Output: Recommendations for the best accommodation

[1194] Specific operation: The vehicle's navigation system displays accommodation information that matches the user's preferences.

[1195] Step 7:

[1196] The user enters additional preferences and further refines the search interactively.

[1197] Input: Request to add user

[1198] Data processing: The server again collects and filters data based on the user's preferences and re-proposes the most suitable accommodation.

[1199] Output: Updated accommodation suggestions

[1200] Specific operation: Accepts interactive input on the navigation screen, searches and filters data again, and displays updated information.

[1201] Step 8:

[1202] Display final accommodation information on the navigation screen and provide a booking link.

[1203] Input: Information about the accommodation selected

[1204] Data processing: Formatting data for display, adding booking links and contact information.

[1205] Output: Accommodation information and booking link displayed on the navigation screen

[1206] What it does: Display information about the accommodation selected by the user on the navigation screen, along with booking links and contact information.

[1207] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[1208] System Overview

[1209] The present invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests optimal accommodations. Furthermore, by combining it with an emotion engine that recognizes emotions from the user's input data, the accuracy of suggestions and the user experience are improved.

[1210] User input

[1211] Users can use their own devices to input their accommodation preferences using free text or voice. For example, they might input something like, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly."

[1212] Text Conversion

[1213] When voice is input, the device sends it to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[1214] Text analytics

[1215] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools. For example, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service" are extracted.

[1216] emotion recognition

[1217] The server uses an emotion engine to analyze the user's input data and determine their emotions from the words they use and the context they enter, recognizing emotions such as "joy," "tired," and "dissatisfied."

[1218] Collecting data from sources

[1219] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords, using search engine APIs and public APIs of review sites.

[1220] Information Filtering

[1221] The collected data is filtered by the server based on criteria such as the reliability of the information, the date of update, and the level of detail of the content, and the most reliable information is selected.

[1222] Accommodation search and suggestions

[1223] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account the user's emotions, as recognized by the emotion engine, to optimize the recommendations. For example, it lists accommodations that meet criteria such as "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget."

[1224] Interactive suggestions

[1225] The server then presents the user with a dialogue to suggest the narrowed-down accommodation information. The tone and expression of the dialogue are adjusted according to the emotion recognized by the emotion engine. The user can then confirm the suggestions and enter any additional requests or questions.

[1226] Displaying the results

[1227] Once the user finally finds a suitable accommodation, the information is displayed on the user's device along with a link to the accommodation's official website and contact information for booking, such as a phone number.

[1228] Specific examples

[1229] For example, if a user is looking for a "quiet and relaxing hot spring inn," the server might do the following:

[1230] 1. The user enters their preference via text or voice.

[1231] 2. The server converts the audio data into text data.

[1232] 3. The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[1233] 4. The emotion engine analyzes the user's emotions from the input data and recognizes that the user is "tired."

[1234] 5. The server searches review sites and blog articles using the extracted keywords to collect related information.

[1235] 6. The server filters the collected information to narrow it down to the most reliable and detailed information.

[1236] 7. The server considers the results of the emotion engine and suggests accommodation options that emphasize a relaxing environment.

[1237] 8. The user enters additional preferences, and the server again searches, collects, and filters the information.

[1238] 9. Information about the accommodation that the user finally selected is displayed on the device and a link for booking is provided.

[1239] In this way, the present invention suggests accommodations based on the user's specific desires and feelings, providing an efficient and satisfying booking experience.

[1240] The processing flow will be explained below.

[1241] Step 1: Getting User Input

[1242] The user uses their own terminal to input their accommodation preferences using free text or voice.

[1243] The terminal receives the user's input and temporarily stores it.

[1244] Step 2: Submitting input data

[1245] The device sends the stored text or voice data to the server.

[1246] The server stores the received data in storage for analysis.

[1247] Step 3: Convert audio data to text

[1248] The server uses a speech recognition API to convert the voice data into text data.

[1249] The converted text data is then stored again in storage, ready for analysis.

[1250] Step 4: Text Analysis

[1251] The server uses natural language processing tools to analyze the text data.

[1252] Through analysis, keywords related to the user's wishes and preferences are extracted, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff friendliness."

[1253] Step 5: Emotion Recognition

[1254] The server uses an emotion engine to analyze the emotion from the user's input data.

[1255] The emotion engine analyzes emotions from the usage and context of words entered by the user, recognizing emotions such as "tired," "excited," and "expecting."

[1256] Step 6: Collect data from sources

[1257] The server searches external information sources such as review sites and blog articles based on the extracted keywords.

[1258] We use search engine APIs and public APIs from review sites to collect relevant data.

[1259] Step 7: Filtering the information

[1260] The server filters the collected data.

[1261] Filtering criteria include the reliability of the information (user ratings and poster information), update date, and level of detail of the content.

[1262] Step 8: Narrow down and propose accommodations

[1263] The server uses the filtered information to narrow down the accommodation options that match the user's preferences.

[1264] The suggestions are also optimized by taking into account the user's emotions as recognized by the emotion engine.

[1265] For example, if "relaxation," "quiet," "budget under 10,000 yen," "good food," and "friendly staff" are important to you, make a list of accommodations that meet these criteria.

[1266] Step 9: Viewing Proposals

[1267] The terminal displays the proposal message received from the server on the user interface.

[1268] Example: "The following accommodations were found: 1. XX Hot Springs Inn (quiet, relaxing, and has great food) 2. YY Resort Hotel (budget under 10,000 yen, friendly staff) 3. ZZ Mountain Lodge (relaxing atmosphere)"

[1269] Step 10: Add your desired action

[1270] The user reviews the proposal and, if necessary, enters additional requests or questions into the terminal.

[1271] For example: "Can you tell me if there are any more affordable accommodations?"

[1272] Step 11: Search again and refine

[1273] The server receives the user's additional requests and questions and performs text analysis again.

[1274] Re-search for information based on new criteria, gathering and filtering more data as needed.

[1275] Step 12: Final proposal and reservation information provided

[1276] The server then presents the user with the information on accommodations that have been further refined.

[1277] Once the user has finalized their choice of accommodation, the server provides the terminal with a link and contact information for making a reservation.

[1278] Example: "To make a reservation, please click here: XX Onsen Ryokan, website link, phone number: 01-2345-6789."

[1279] Example 2

[1280] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1281] Conventional accommodation reservation systems have not adequately reflected users' preferences and suggested the most suitable accommodation. In particular, they lacked accurate keyword extraction and emotion recognition based on user input, resulting in low suggestion accuracy. Furthermore, the accuracy of filtering the collected information was low, often resulting in unreliable information. As a result, users spent a lot of time and effort trying to find a satisfactory accommodation.

[1282] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.

[1283] In this invention, the server includes means for acquiring text or voice data input by a user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for analyzing and recognizing emotions from the data input by the user, means for searching and collecting data related to accommodations from various information sources based on the extracted keywords and the recognized emotions, means for filtering the collected data to select reliable information, means for narrowing down accommodations that match the user's wishes based on the selected information and the recognized emotions and suggesting them in an interactive format, and means for allowing the user to further update their preferences. This makes it possible to accurately reflect the user's wishes and emotions and efficiently suggest optimal accommodations based on reliable information.

[1284] "Text data" refers to character data obtained by converting a user's voice data using voice recognition technology, or character data that is directly input.

[1285] "Voice data" is acoustic information provided by a user through speech input.

[1286] "Keywords" are important words or phrases related to a user's desires and preferences.

[1287] An "emotion engine" is software that analyzes emotions from user input data and recognizes emotions such as "joy," "tired," and "dissatisfied."

[1288] "Various sources" refers to a wide range of data sources, including review sites, blog articles, external APIs, etc.

[1289] "Filtering" is the process of selecting information based on the reliability of the collected data, the most recent update date, and the level of detail.

[1290] "Interactive" means that the user can interact with the system and enter additional requests or questions.

[1291] "Accommodation facilities" are facilities where users can stay, such as hotels, inns, and guesthouses.

[1292] "Accommodation that matches the user's preferences" is the most suitable accommodation selected based on the user's extracted keywords and recognized emotions.

[1293] "Reliable information" is data that is based on the criteria that the source of the information is trustworthy and the information is accurate and up-to-date.

[1294] "Means for converting" refers to a speech recognition API or other software for converting voice data into text data.

[1295] This invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodation. Furthermore, by combining it with an emotion engine that recognizes emotions from the user's input data, the accuracy of suggestions and the user experience are improved.

[1296] System Configuration

[1297] Hardware:

[1298] Device (the device used by the user, e.g. smartphone, tablet, computer)

[1299] Servers (computers used for data processing and storage)

[1300] software:

[1301] Speech recognition API (e.g. Google Cloud Speech-to-Text)

[1302] Natural Language Processing (NLP) tools (e.g., SpaCy, NLTK)

[1303] Emotion engine (e.g. IBM Watson Tone Analyzer)

[1304] Search engine APIs (e.g., Google Search API)

[1305] Public API for review sites

[1306] Program processing

[1307] 1. User preference input:

[1308] The user uses the terminal to input their accommodation preferences using free text or voice. For example, they might input, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I also value the hospitality of the staff."

[1309] 2. Audio data conversion:

[1310] When voice is input, the device sends the voice data to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[1311] 3. Text data analysis:

[1312] The server then analyzes the converted text data using natural language processing (NLP) tools to extract keywords related to the user's wishes and preferences, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service."

[1313] 4. Emotion recognition:

[1314] The server uses an emotion engine to analyze the user's input data and determine emotions. The emotion engine recognizes emotions such as "happy," "tired," and "unhappy" based on the usage and context of the words entered by the user. For example, it recognizes "tired" from the user's input.

[1315] 5. Collecting data from sources:

[1316] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords and recognized sentiments, using search engine APIs and public APIs of review sites.

[1317] 6. Information filtering:

[1318] The server filters the collected data based on reliability, update date, and content detail to select highly reliable information, such as reviews with many five-star ratings or the latest blog posts.

[1319] 7. Accommodation selection and suggestions:

[1320] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account the user's emotions, as recognized by the emotion engine, to optimize the recommendations. For example, it lists accommodations that meet criteria such as "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget."

[1321] 8. Interactive suggestions:

[1322] The server then presents the user with a dialogue to suggest the narrowed-down accommodation information. The tone and expression of the dialogue are adjusted according to the emotion recognized by the emotion engine. The user can then confirm the suggestions and enter any additional requests or questions.

[1323] 9. Displaying the results:

[1324] Once the user finds a suitable accommodation, the server displays the information on the device, along with a link to the reservation site and contact information, such as a link to the selected accommodation's official website and phone number.

[1325] Specific examples

[1326] If a user is looking for a "quiet and relaxing hot spring inn," the following would be processed:

[1327] 1. The user enters their preferences via text or voice: "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to be a place with good food. I'd also like the staff to be very friendly."

[1328] 2. For voice input, the device sends voice data to the server, which converts it into text.

[1329] 3. The server analyzes the converted text using natural language processing tools and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[1330] 4. The emotion engine recognizes that the user is tired from their input data.

[1331] 5. The server searches review sites and blog articles using the extracted keywords and recognized emotions to collect related information.

[1332] 6. The server filters the collected information by reliability, update date, and level of detail to select the most reliable information.

[1333] 7. The server considers the results of the emotion engine and suggests accommodation information that emphasizes a relaxing environment.

[1334] 8. The server again searches, collects and filters the information based on any additional preferences entered by the user.

[1335] 9. The final accommodation information will be displayed on the device and a link will be provided for booking.

[1336] Prompt Sentence Examples

[1337] The text the user enters is something like this:

[1338] "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have delicious food. I also value the hospitality of the staff."

[1339] The invention suggests optimal accommodations based on a user's specific desires and feelings, providing an efficient and satisfying booking experience.

[1340] The flow of the identification process in the second embodiment will be described with reference to FIG.

[1341] Step 1:

[1342] User preference input

[1343] The user uses the terminal to input their accommodation preferences using free text or voice. For example, they might input, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I also value the hospitality of the staff." At this stage, the input is text or voice data, and the output is raw data containing the user's preferences.

[1344] Step 2:

[1345] Audio data conversion

[1346] When voice is input, the device uploads the voice data to the server, which then converts it into text using a speech recognition API such as Google Cloud Speech-to-Text API. The conversion process includes voice analysis, phoneme identification, and transcription. The input is voice data, and the output is the corresponding text data.

[1347] Step 3:

[1348] Text data analysis

[1349] The server analyzes the converted text data using natural language processing (NLP) tools (e.g., SpaCy, NLTK). During analysis, the text is tokenized, tagged with parts of speech, and analyzed for dependencies. This allows keywords related to the user's wishes and preferences to be extracted. The input is text data, and the output is the extracted keywords (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," etc.).

[1350] Step 4:

[1351] emotion recognition

[1352] The server uses an emotion engine (e.g., IBM Watson Tone Analyzer) to analyze the user's emotions from the input data. Based on the content and expression of the input text, the emotion engine recognizes emotions such as "happy," "tired," and "unhappy." The input is text data, and the output is the emotion analysis result (e.g., "tired").

[1353] Step 5:

[1354] Collecting data from sources

[1355] Based on the extracted keywords and recognized sentiment, the server uses the Google Search API and the public API of the review site to search and collect data from related review sites and blog articles. The server identifies the target to collect and makes an API call. The input is keyword and sentiment data, and the output is the retrieved data of related accommodation reviews and blog articles.

[1356] Step 6:

[1357] Information Filtering

[1358] The server filters the collected data based on reliability, update date, and level of detail, prioritizing highly reliable information (e.g., highly rated reviews, recently updated blog posts). The input is the collected data, and the output is the filtered, highly reliable data.

[1359] Step 7:

[1360] Accommodation search and suggestions

[1361] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account emotions recognized by the emotion engine to optimize the recommendations. For example, it lists accommodations that meet the criteria of "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget range." The input is the filtered data and the results of emotion analysis, and the output is a list of optimal accommodations.

[1362] Step 8:

[1363] Interactive suggestions

[1364] The server then presents the narrowed down accommodation information to the user in a dialogue format. The tone and expression of the dialogue are adjusted according to the emotions recognized by the emotion engine. The user can review the suggestions and enter additional requests or questions. The input is a list of optimal accommodations and the user's additional requests, and the output is an updated proposal.

[1365] Step 9:

[1366] Displaying the results

[1367] When the user finally finds a suitable accommodation, the server displays the information on the terminal, along with a link to make a reservation and contact information. The input is the finalized accommodation information, and the output is the detailed information of the accommodation displayed on the terminal (e.g., a link to the official website and a phone number).

[1368] (Application example 2)

[1369] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1370] Conventional food delivery systems have difficulty making suggestions based on the user's specific wishes and emotions, and simply displaying a list has not been enough to increase user satisfaction. Furthermore, when a user orders a meal, the system is unable to make suggestions that take into account the user's mood or emotions at the time, resulting in an unsatisfactory user experience.

[1371] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring text or voice data input by the user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for searching and collecting information from various information sources based on the extracted keywords, means for filtering the collected data to select reliable information, means for narrowing down and suggesting items that match the user's wishes based on the selected information, dialogue means for allowing the user to further update their wishes, and means for performing emotion analysis and making suggestions based on the user's emotions. This enables food delivery suggestions based on the user's specific wishes and emotions, improving the user experience.

[1372] "User-input text or voice data" refers to text data or voice data that a user provides to the system using an input device.

[1373] "Means for converting into text data" refers to a technology or device that converts voice data into text information, and generally refers to voice recognition technology.

[1374] "Means for analyzing text data to extract keywords related to user desires and preferences" refers to technology or algorithms that identify and extract specific important words or phrases from text information.

[1375] "Means of searching and collecting information from sources" refers to technologies or systems that automatically obtain necessary information or data from the Internet or databases.

[1376] "Means for filtering collected data to select reliable information" refers to technologies or algorithms for selecting accurate and useful data from the collected information.

[1377] "Means for narrowing down and proposing options that match the user's desires" refers to a technology or system that identifies the options that best fit the user's desired conditions and presents them to the user.

[1378] "Interaction means" refers to the interface or technology that allows the user and the system to exchange information with each other.

[1379] "Means for performing emotion analysis and making suggestions based on the user's emotions" refers to technology or algorithms for identifying emotions from the user's input data and making suggestions that match those emotions.

[1380] The present invention is a food delivery system that allows a user to input their meal-related preferences via text or voice, and then suggests the most suitable restaurant and menu based on the user's preferences and current mood. Specific embodiments for realizing this system are described below.

[1381] System Overview

[1382] The system starts when the user inputs their preferences using a device such as a smartphone or PC. The data entered by the user is processed by the server, which then makes optimal food delivery suggestions.

[1383] User input

[1384] The user inputs their meal preferences using their own device, either by text or voice. For example, they might input something like, "I'm not feeling well today, but I want to eat spicy curry."

[1385] Converting audio data to text

[1386] When voice is input, the smartphone or PC device sends the data to a server, which then uses a speech recognition API (for example, Google Cloud Speech-to-Text API) to convert the voice data into text data, which is then used for subsequent analysis.

[1387] Text and Sentiment Analysis

[1388] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools (e.g., Google Cloud Natural Language API). Furthermore, a sentiment analysis engine analyzes the user's input data and recognizes emotions such as "depressed."

[1389] Data Collection and Filtering

[1390] The server searches and collects relevant data from food delivery-related information sources (e.g., restaurant review site APIs and blog articles) based on the extracted keywords and sentiment analysis results. The collected data is filtered based on the reliability and detail of the information, and highly reliable information is selected.

[1391] Proposals and Dialogue

[1392] Based on the filtered information, the server narrows down and suggests restaurants and menus that best match the user's preferences and feelings. The suggestions are made interactively, and each time the user enters additional preferences, the system searches the information again and makes the most appropriate suggestions. This interactive format allows users to customize their experience in detail, increasing satisfaction.

[1393] Displaying the results

[1394] Finally, the device displays the restaurant and menu information selected by the user, along with links to order and detailed information, such as a link to the restaurant's ordering page and phone number.

[1395] Examples of specific examples and prompts

[1396] For example, if a user enters "I'm not feeling well today, but I want to eat spicy curry," the server will process it as follows:

[1397] 1. User: "I'm not feeling well today, but I want to eat some spicy curry."

[1398] 2. The server converts the audio data to text (if necessary).

[1399] 3. The server analyzes the text and extracts the keywords "not feeling well" and "spicy curry."

[1400] 4. The emotion engine analyzes the emotion of "feeling down."

[1401] 5. The server searches restaurant review site APIs and blog posts to collect relevant information.

[1402] 6. The server filters the collected information to narrow down the data to the most reliable.

[1403] 7. The server takes into account the results of the sentiment analysis and suggests restaurants that serve particularly "energetic" spicy curry.

[1404] 8. The user is given interactive suggestions and provided with a link to the ordering page of the restaurant they ultimately selected.

[1405] Example prompts to be input to the generative AI model:

[1406] If you type "I'm not feeling well today, but I want to eat some spicy curry.":

[1407] Recognize the feeling of "not feeling well" and find a restaurant that serves "spicy curry."

[1408] Get a list of top-rated restaurants from sources.

[1409] It filters reviews and ratings to suggest restaurants that best suit the user's preferences.

[1410] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[1411] Step 1:

[1412] The user inputs their meal preferences via text or voice. The user inputs text or voice using their own device (smartphone, PC, etc.), such as "I'm not feeling well today, but I'd like to eat spicy curry."

[1413] Step 2:

[1414] The device sends the input content to the server. Text data is sent as is, and if it is voice data, it is converted to text data on the server using a voice recognition API (for example, Google Cloud Speech-to-Text API). Input: Voice data, Output: Text data.

[1415] Step 3:

[1416] The server analyzes the received text data. The server uses a natural language processing (NLP) tool (e.g., Google Cloud Natural Language API) to analyze the text and extract keywords related to the user's wishes and preferences. Input: text data, output: extracted keywords (e.g., "feeling unwell" or "spicy curry").

[1417] Step 4:

[1418] The server performs emotion analysis. The emotion engine analyzes the emotions from the user's input data and recognizes emotions such as "depressed." Input: text data, output: analyzed emotion (e.g., "depressed").

[1419] Step 5:

[1420] The server collects information based on the extracted keywords and sentiment analysis results. It searches and collects relevant data from food delivery-related sources (e.g., restaurant review site APIs and blog articles). Input: extracted keywords and sentiment data. Output: collected data.

[1421] Step 6:

[1422] The server filters the data collected. Filtering is performed based on the reliability of the information, level of detail, update date, etc., to select the most reliable information. Input: collected data, output: filtered data.

[1423] Step 7:

[1424] The server makes suggestions based on the user's preferences and feelings. Based on the filtered data, it lists restaurants and menus that best suit the user's preferences and presents suggestions in an interactive format. Input: filtered data, Output: listed restaurants and menus.

[1425] Step 8:

[1426] The user further updates their preferences. Each time the user interactively reviews the suggestions and enters additional preferences or questions, the system searches for information again and makes the best suggestions. Input: Additional preferences from the user, Output: Updated suggestions.

[1427] Step 9:

[1428] The server displays the final result to the user. Information about the restaurant and menu selected by the user is displayed on the terminal, and a link and detailed information for ordering are provided. Input: Final selected proposal, Output: Displayed ordering link and detailed information.

[1429] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[1430] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1431] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.

[1432] [Fourth embodiment]

[1433] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[1434] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

[1435] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[1436] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.

[1437] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[1438] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[1439] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[1440] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.

[1441] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[1442] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[1443] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[1444] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[1445] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1446] System Overview

[1447] This invention relates to a system that allows users to input their preferences for accommodations using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodations. The system mainly includes the following components: a user terminal, a server, and information sources (review sites and blog articles).

[1448] User input

[1449] Users can use their own devices to input their accommodation preferences using free text or voice. For example, they might input something like, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly."

[1450] Text Conversion

[1451] When voice is input, the device sends it to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[1452] Text analytics

[1453] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools. For example, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service" are extracted.

[1454] Collecting data from sources

[1455] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords, using search engine APIs and public APIs of review sites.

[1456] Information Filtering

[1457] The collected data is filtered by the server, based on criteria such as the reliability of the information, the date of update, and the level of detail of the content, allowing the server to select the information that best suits the user's needs.

[1458] Accommodation search and suggestions

[1459] Based on the filtered information, the server narrows down the list of accommodations that match the user's preferences, such as "highly rated staff," "good food," "quiet environment," and "reasonable budget."

[1460] Interactive suggestions

[1461] The server interactively proposes information on the narrowed-down accommodations to the user. The user can accept the proposals from the server and, if necessary, enter additional preferences or conditions to further narrow down the search. For example, in response to a request to "know more about this hot spring inn," the server will provide detailed reviews and information about the accommodation.

[1462] Displaying the results

[1463] Once the user finally finds a suitable accommodation, the information is displayed on the user's device along with a link to the accommodation's official website and contact information for booking, such as a phone number.

[1464] Specific examples

[1465] For example, if a user is looking for a "quiet and relaxing hot spring inn," the server might do the following:

[1466] 1. The user enters their preference via text or voice.

[1467] 2. The server converts the audio data into text data.

[1468] 3. The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[1469] 4. The server searches review sites and blog articles using the extracted keywords to collect related information.

[1470] 5. The server filters the collected information to narrow it down to the most reliable and detailed information.

[1471] 6. The server interactively presents the narrowed down accommodation information to the user.

[1472] 7. The user enters additional preferences, and the server again searches, collects, and filters the information.

[1473] 8. Information about the accommodation that the user finally selected is displayed on the device and a link for booking is provided.

[1474] As described above, this system suggests accommodations based on the user's specific preferences and helps them make reservations easily.

[1475] The processing flow will be explained below.

[1476] Step 1: Getting User Input

[1477] The user uses their own terminal to input their accommodation preferences using free text or voice.

[1478] The terminal receives the user's input and temporarily stores it.

[1479] Step 2: Submitting input data

[1480] The device sends the stored text or voice data to the server.

[1481] The server stores the received data in storage for analysis.

[1482] Step 3: Convert audio data to text

[1483] The server uses a speech recognition API to convert the voice data into text data.

[1484] The converted text data is then stored again in storage, ready for analysis.

[1485] Step 4: Text Analysis

[1486] The server uses natural language processing tools to analyze the text data.

[1487] Through analysis, keywords related to the user's wishes and preferences are extracted, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff friendliness."

[1488] Step 5: Collect data from sources

[1489] The server searches external information sources such as review sites and blog articles based on the extracted keywords.

[1490] We use search engine APIs and public APIs from review sites to collect relevant data.

[1491] Step 6: Filtering the information

[1492] The server filters the collected data.

[1493] Filtering criteria include the reliability of the information (user ratings and poster profile), update date, and level of detail of the content.

[1494] Step 7: Narrow down and propose accommodations

[1495] The server uses the filtered information to narrow down the accommodation options that match the user's preferences.

[1496] The server selects the top three accommodations and generates a suggestion message.

[1497] Step 8: Viewing Proposals

[1498] The terminal displays the proposal message received from the server on the user interface.

[1499] The user can review the suggestions and enter any additional requests or questions.

[1500] Step 9: Add your desired action

[1501] The server receives the user's additional requests and questions and performs text analysis again.

[1502] The server re-searches, collects and filters the information based on the new criteria.

[1503] Step 10: Final proposal and reservation information provided

[1504] The server then presents the user with the information on accommodations that have been further refined.

[1505] Once the user has finalized their choice of accommodation, the server provides the terminal with a link and contact information for making a reservation.

[1506] Example 1

[1507] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1508] Conventional accommodation search systems have had difficulty reflecting the diverse needs of users. Furthermore, even systems that allow voice input lacked the technology to accurately convert voice data into text and properly analyze its content. Furthermore, there was a need for a system that could ensure the reliability of information collected from review sites and blog articles, and automatically select and suggest accommodations that best fit the user's needs.

[1509] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[1510] In this invention, the server includes means for acquiring text or voice data input by a user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for searching and collecting data related to accommodations from various information sources based on the extracted keywords, means for filtering the collected data to select reliable information, means for narrowing down and proposing accommodations that match the user's wishes based on the selected information, interaction means for allowing the user to further update their preferences, means for scoring the filtered information, and means for providing detailed information about accommodations and connection methods. This makes it possible to automatically select and propose reliable and optimal accommodations based on the user's diverse wishes.

[1511] "User" refers to an individual or group who uses the system to input their accommodation preferences and receive suggestions for the most suitable accommodation.

[1512] A "terminal" is an electronic device such as a computer, smartphone, or tablet that a user uses to input their preferences regarding accommodation.

[1513] "Server" means a combination of software and hardware for converting voice data into text data, analyzing the text, and searching, collecting, and filtering accommodation data.

[1514] "Text data" is character string information that expresses the user's preferences regarding accommodation facilities.

[1515] "Voice data" refers to a voice file that records the user's preferences regarding accommodations input by voice.

[1516] A "natural language processing (NLP) tool" is a software device that analyzes text data to extract keywords related to a user's wishes and preferences.

[1517] "Keywords" are important words or phrases related to the user's wishes and preferences that are extracted from the text data.

[1518] "Sources" are external websites or databases that provide relevant information, such as review sites or blog posts about accommodations.

[1519] "Filtering" is the process of selecting reliable information from collected data and extracting the information that best suits the user's needs.

[1520] "Scoring" is the process of evaluating and prioritizing accommodations based on filtered information.

[1521] "Suggestion" means that the server presents information on the most suitable accommodation to the user.

[1522] "Interaction means" is an interface that allows the user to input additional preferences and requirements.

[1523] "Detailed information" refers to specific data such as the accommodation's features, ratings, prices, and user reviews.

[1524] "How to Connect" means the link or contact information for making a reservation for an accommodation.

[1525] This invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodation. The system is primarily composed of a user terminal, a server, and information sources such as review sites and blog articles.

[1526] Users use their own devices (smartphones, PCs, tablets, etc.) to input their preferences for accommodation. Input can be done either by free text or by voice. For example, a specific request could be, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to be a place with good food. I'm also looking for the staff's attitude."

[1527] When a user inputs something by voice, the device sends the voice data to the server. The server then uses a voice recognition API (for example, a general-purpose voice recognition API) to convert the voice data into text data. The converted text data is then used for subsequent analysis.

[1528] The server analyzes the converted text data using natural language processing (NLP) tools (e.g., open-source NLP toolkits) to extract keywords related to the user's wishes and preferences. Examples of extracted keywords include "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service."

[1529] Next, the server searches and collects relevant data from review sites (e.g., general-purpose review information sites) and blog articles based on the extracted keywords. This search uses search engine APIs (e.g., general-purpose search engine APIs) and public APIs of review sites.

[1530] The server filters the collected data based on criteria such as reliability, update date, and level of detail, allowing the information most suited to the user's needs to be selected.

[1531] The filtered information is then scored to create a list of accommodations that best fit the user's preferences, such as those that meet criteria such as "highly rated staff service," "good food," "quiet environment," and "reasonable budget."

[1532] The server interactively suggests information about listed accommodations to the user. The user can then enter more detailed requests and conditions, and the server will search, collect, and filter the information again based on that request. For example, in response to a request for "more information about this hot spring inn," the server will provide detailed reviews and information about the accommodation.

[1533] Finally, the device displays information about the accommodation selected by the user, along with a link to make a reservation and contact information, such as a link to the official website and phone number of the selected accommodation.

[1534] Examples of specific examples and prompts

[1535] As a concrete example, if a user is looking for a "quiet and relaxing hot spring inn," the system's processing would proceed as follows:

[1536] The user inputs their preference by text or voice.

[1537] The server converts the voice data into text data (in the case of voice input).

[1538] The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[1539] The server searches review sites and blog articles using the extracted keywords to collect related information.

[1540] The server filters the collected information to select the most reliable and detailed information.

[1541] The server proposes information on the narrowed down accommodations to the user in an interactive format.

[1542] The user enters additional preferences and the server again searches, collects and filters the information.

[1543] Information about the accommodation facility that the user finally selects is displayed on the terminal, and a link for making a reservation is provided.

[1544] Here are some examples of prompts to input to the generative AI model:

[1545] "A user inputs that they are looking for a quiet, relaxing hot spring inn. Their budget is under 10,000 yen per person per night, and they would like a place with good food. The friendliness of the staff is also important. Analyze the user's input and generate a program flow to suggest the best accommodations."

[1546] As described above, this system suggests accommodations based on the user's specific preferences and helps them make reservations easily.

[1547] The flow of the identification process in the first embodiment will be described with reference to FIG.

[1548] Step 1:

[1549] The user uses their own device to input their preferences for accommodation. The input method is either free text or voice input. For example, a request might be, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly." The input free text or voice data is sent to the server.

[1550] Input: Free text or voice data describing the user's wishes

[1551] Output: Sending data from the device to the server

[1552] Step 2:

[1553] The server converts the received voice data into text data using a voice recognition API (for example, a general-purpose voice recognition API). In this conversion process, the voice waveform data is analyzed and the corresponding text is generated. The voice input is converted into text data.

[1554] Input: Audio data

[1555] Output: Text data

[1556] Step 3:

[1557] The server analyzes the text data using natural language processing (NLP) tools (e.g., open-source NLP toolkits). Specifically, it divides the text into tokens and extracts important keywords and phrases. During this analysis, keywords related to the user's wishes and preferences (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff friendliness") are identified.

[1558] Input: Text data

[1559] Output: Extracted keywords

[1560] Step 4:

[1561] The server searches and collects relevant data from information sources (e.g., review sites, blog articles) based on the extracted keywords. This search uses a search engine API (e.g., a general-purpose search engine API) or the public API of the review site. The server calls each API and collects the relevant information.

[1562] Input: Extracted keywords

[1563] Output: Relevant data collected

[1564] Step 5:

[1565] The server filters the collected data based on criteria such as reliability, update date, and level of detail. Specifically, it excludes unreliable information and outdated information and selects detailed information. This filtering allows it to extract reliable information tailored to the user's needs.

[1566] Input: Relevant data collected

[1567] Output: Filtered data

[1568] Step 6:

[1569] The server scores the filtered information, evaluating its suitability to the user's desired conditions (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff friendliness"), and generates a prioritized list of accommodations.

[1570] Input: Filtered data

[1571] Output: Scored accommodation list

[1572] Step 7:

[1573] The server interactively suggests scored accommodation information to the user. Specifically, a list of the most suitable accommodations is displayed on the user's screen, and by clicking on the details, more specific information (e.g., reviews, ratings, facility photos, etc.) is displayed. The user can then enter more detailed preferences and conditions.

[1574] Input: Scored accommodation list

[1575] Output: A list of accommodations suggested to the user

[1576] Step 8:

[1577] The user then inputs further details about their desired accommodations from among those suggested by the server. Based on the new criteria entered by the user, the server again searches, collects, filters, and scores the information, updating the optimal accommodations.

[1578] Input: User's new wishes or requirements

[1579] Output: Updated property list

[1580] Step 9:

[1581] Finally, the user's selected accommodation information is displayed on the device, including details about the accommodation, a booking link, and contact information. Once the user clicks the "Book" button, they are redirected to the accommodation's official website to complete the booking process.

[1582] Input: Final selected accommodation list

[1583] Output: Accommodation details and booking link

[1584] The above is the specific operations and input / output information performed in the processing steps of this system.

[1585] (Application example 1)

[1586] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1587] Conventional accommodation recommendation systems require users to search the Internet or consult review sites, which is inconvenient. Furthermore, search results often do not match the user's specific preferences, resulting in low satisfaction. Therefore, there is a need for a system that can quickly and accurately select and suggest optimal accommodations, especially for users traveling or driving.

[1588] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[1589] In this invention, the server includes: means for acquiring text or voice data input by a user; means for converting the acquired text or voice data into text data; means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences; means for searching and collecting data related to accommodations from various information sources based on the extracted keywords; means for filtering the collected data to select reliable information; means for narrowing down and suggesting accommodations that match the user's wishes based on the selected information; dialogue means for enabling the user to further update their preferences; means, which is installed in an autonomous vehicle, for inputting the user's wishes using an in-vehicle touch panel or voice input device; and means for displaying the collected accommodation information on the vehicle's navigation screen and providing reservation links and contact information. This enables users traveling or driving to quickly and accurately find the best accommodation and make reservations or contact them.

[1590] "Text or voice data entered by the user" refers to data that provides information about the accommodation facility desired by the user in the form of text or voice input.

[1591] "Means for converting into text data" refers to technology for converting voice data into text format and devices or software for doing so.

[1592] "Means for extracting keywords" refers to techniques and processing procedures for automatically finding important words related to a user's wishes and preferences from text data.

[1593] "Means for retrieving and collecting data from sources" refers to techniques or procedures for automatically retrieving and collecting data related to keywords from various external sources.

[1594] "Means for filtering data to select reliable information" refers to the technology and processing procedures for selecting from collected data information that is highly reliable and meets the user's needs.

[1595] "Means for narrowing down and suggesting accommodations that meet the user's preferences" refers to the technology and processing procedures for identifying the accommodations that best meet the user's preferences based on the selected information and suggesting them to the user.

[1596] The "interactive means for enabling the user to further update their preferences" is a two-way communication means for the user to reflect additional preferences or conditions on the proposed content.

[1597] "A means for inputting user preferences using a touch panel or voice input device installed in an autonomous vehicle" refers to a system that allows users to input their preferences regarding accommodations by text or voice using an input device built into an autonomous vehicle.

[1598] "Means for displaying collected accommodation information on the vehicle's navigation screen and providing reservation links and contact information" refers to the technology and procedures for displaying searched accommodation information on the vehicle's navigation system and providing reservation links and contact information.

[1599] This invention is a system that allows a user to input their accommodation preferences in an autonomous vehicle and suggests the most suitable accommodation based on those preferences. This system is composed of the following elements.

[1600] System configuration

[1601] 1. User terminal and input means

[1602] The user inputs their accommodation preferences using a touch panel or voice input device installed in the autonomous vehicle. For example, the user might input "I want to go to a hot spring inn" by voice.

[1603] 2. Text Conversion Methods

[1604] When a user inputs something by voice, a speech recognition API (e.g., Google Cloud Speech-to-Text) is used to convert this voice data into text data, which is then sent to the server.

[1605] 3. Text Analysis Methods

[1606] The server analyzes the text data using natural language processing tools (e.g., spaCy) and extracts keywords related to the user's preferences. This analysis yields keywords such as "hot spring inn," "budget," and "quiet."

[1607] 4. Data search and collection methods

[1608] The server searches and collects data from external information sources such as review sites and blog posts based on the extracted keywords. This search uses various search engine APIs (e.g., Google Custom Search API) and review site APIs (e.g., Yelp API).

[1609] 5. Data Filtering Methods

[1610] The server filters the collected data to narrow down the information to highly reliable and detailed data, using criteria such as the reliability of the information, the date of the most recent update, and the level of detail of the content.

[1611] 6. Information suggestions and means of interaction

[1612] Based on the filtered information, the server identifies the accommodations that best fit the user's preferences and displays them on the vehicle's navigation screen. Furthermore, it makes suggestions to the user interactively, and if there are additional preferences, the server searches, collects, and filters again.

[1613] 7. Results display means

[1614] Finally, once the perfect accommodation is found, it will be displayed on the navigation screen, along with a booking link and contact information, allowing the user to easily make a reservation.

[1615] Example

[1616] As a concrete example, if a user says, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like a place with good food," the server will process it as follows:

[1617] 1. The user inputs their request by voice.

[1618] 2. The server converts the audio data into text data using the Google Cloud Speech-to-Text API.

[1619] 3. The server uses spaCy to analyze the text data and extract keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," and "delicious food."

[1620] 4. The server uses the extracted keywords to collect related information using the Google Custom Search API or Yelp API.

[1621] 5. The server filters the collected information to narrow it down to the most reliable and detailed information.

[1622] 6. The server suggests the best accommodations on the vehicle's navigation screen and allows the user to confirm interactively.

[1623] 7. Information about the finally selected accommodation is displayed on the navigation screen and a booking link is provided.

[1624] Prompt Sentence Examples

[1625] "This user is looking for a quiet, relaxing hot spring inn. Their budget is under ¥10,000 per person per night, and they value good food and friendly staff. Search for relevant reviews and blog posts to suggest accommodations that fit these criteria."

[1626] In this way, the system can quickly find the user's desired accommodation in an autonomous vehicle, providing a comfortable and efficient travel experience.

[1627] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[1628] Step 1:

[1629] The user inputs their preference by voice or text.

[1630] Input: User voice or text input

[1631] Specific operation: Using the touch panel and microphone installed in the self-driving vehicle, the user inputs, "I'm looking for a quiet and relaxing hot spring inn."

[1632] Step 2:

[1633] The server converts the voice data into text data.

[1634] Input: User's voice data

[1635] Data processing: Convert the audio data into text format using the Google Cloud Speech-to-Text API.

[1636] Output: Text data

[1637] Specific operation: The voice input data is sent to the server and converted into text data using the Google Cloud Speech-to-Text API.

[1638] Step 3:

[1639] The server analyzes the text data and extracts keywords.

[1640] Input: Converted text data

[1641] Data processing: Using natural language processing with spaCy, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff service" are extracted from the text.

[1642] Output: Extracted keywords

[1643] Specific operation: Analyze text data using spaCy and automatically extract important keywords.

[1644] Step 4:

[1645] The server collects data from sources based on keywords.

[1646] Input: Extracted keywords

[1647] Data processing: Using the Google Custom Search API and Yelp API, we search and collect information about the relevant accommodation from review sites and blog articles.

[1648] Output: Collected information data

[1649] What it does: Enter keywords into the Google Custom Search API or Yelp API to gather related reviews and blog posts.

[1650] Step 5:

[1651] Filtering data collected by the server.

[1652] Input: Collected information data

[1653] Data processing: Filter data based on the reliability of the information, update date, and level of detail to narrow down to the most relevant information.

[1654] Output: filtered data with high probability of information

[1655] Specific operation: The data is sorted by prioritizing highly reliable review sites, the most recent update date, and articles with high detail.

[1656] Step 6:

[1657] The server identifies and suggests the best accommodations.

[1658] Input: Filtered information data

[1659] Data processing: Identify the accommodation that best meets the user's desired conditions, compile the information, and generate recommendations.

[1660] Output: Recommendations for the best accommodation

[1661] Specific operation: The vehicle's navigation system displays accommodation information that matches the user's preferences.

[1662] Step 7:

[1663] The user enters additional preferences and further refines the search interactively.

[1664] Input: Request to add user

[1665] Data processing: The server again collects and filters data based on the user's preferences and re-proposes the most suitable accommodation.

[1666] Output: Updated accommodation suggestions

[1667] Specific operation: Accepts interactive input on the navigation screen, searches and filters data again, and displays updated information.

[1668] Step 8:

[1669] Display final accommodation information on the navigation screen and provide a booking link.

[1670] Input: Information about the accommodation selected

[1671] Data processing: Formatting data for display, adding booking links and contact information.

[1672] Output: Accommodation information and booking link displayed on the navigation screen

[1673] What it does: Display information about the accommodation selected by the user on the navigation screen, along with booking links and contact information.

[1674] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[1675] System Overview

[1676] The present invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests optimal accommodations. Furthermore, by combining it with an emotion engine that recognizes emotions from the user's input data, the accuracy of suggestions and the user experience are improved.

[1677] User input

[1678] Users can use their own devices to input their accommodation preferences using free text or voice. For example, they might input something like, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I'd also like the staff to be very friendly."

[1679] Text Conversion

[1680] When voice is input, the device sends it to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[1681] Text analytics

[1682] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools. For example, keywords such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service" are extracted.

[1683] emotion recognition

[1684] The server uses an emotion engine to analyze the user's input data and determine their emotions from the words they use and the context they enter, recognizing emotions such as "joy," "tired," and "dissatisfied."

[1685] Collecting data from sources

[1686] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords, using search engine APIs and public APIs of review sites.

[1687] Information Filtering

[1688] The collected data is filtered by the server based on criteria such as the reliability of the information, the date of update, and the level of detail of the content, and the most reliable information is selected.

[1689] Accommodation search and suggestions

[1690] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account the user's emotions, as recognized by the emotion engine, to optimize the recommendations. For example, it lists accommodations that meet criteria such as "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget."

[1691] Interactive suggestions

[1692] The server then presents the user with a dialogue to suggest the narrowed-down accommodation information. The tone and expression of the dialogue are adjusted according to the emotion recognized by the emotion engine. The user can then confirm the suggestions and enter any additional requests or questions.

[1693] Displaying the results

[1694] Once the user finally finds a suitable accommodation, the information is displayed on the user's device along with a link to the accommodation's official website and contact information for booking, such as a phone number.

[1695] Specific examples

[1696] For example, if a user is looking for a "quiet and relaxing hot spring inn," the server might do the following:

[1697] 1. The user enters their preference via text or voice.

[1698] 2. The server converts the audio data into text data.

[1699] 3. The server analyzes the text and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[1700] 4. The emotion engine analyzes the user's emotions from the input data and recognizes that the user is "tired."

[1701] 5. The server searches review sites and blog articles using the extracted keywords to collect related information.

[1702] 6. The server filters the collected information to narrow it down to the most reliable and detailed information.

[1703] 7. The server considers the results of the emotion engine and suggests accommodation options that emphasize a relaxing environment.

[1704] 8. The user enters additional preferences, and the server again searches, collects, and filters the information.

[1705] 9. Information about the accommodation that the user finally selected is displayed on the device and a link for booking is provided.

[1706] In this way, the present invention suggests accommodations based on the user's specific desires and feelings, providing an efficient and satisfying booking experience.

[1707] The processing flow will be explained below.

[1708] Step 1: Getting User Input

[1709] The user uses their own terminal to input their accommodation preferences using free text or voice.

[1710] The terminal receives the user's input and temporarily stores it.

[1711] Step 2: Submitting input data

[1712] The device sends the stored text or voice data to the server.

[1713] The server stores the received data in storage for analysis.

[1714] Step 3: Convert audio data to text

[1715] The server uses a speech recognition API to convert the voice data into text data.

[1716] The converted text data is then stored again in storage, ready for analysis.

[1717] Step 4: Text Analysis

[1718] The server uses natural language processing tools to analyze the text data.

[1719] Through analysis, keywords related to the user's wishes and preferences are extracted, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "delicious food," and "staff friendliness."

[1720] Step 5: Emotion Recognition

[1721] The server uses an emotion engine to analyze the emotion from the user's input data.

[1722] The emotion engine analyzes emotions from the usage and context of words entered by the user, recognizing emotions such as "tired," "excited," and "expecting."

[1723] Step 6: Collect data from sources

[1724] The server searches external information sources such as review sites and blog articles based on the extracted keywords.

[1725] We use search engine APIs and public APIs from review sites to collect relevant data.

[1726] Step 7: Filtering the information

[1727] The server filters the collected data.

[1728] Filtering criteria include the reliability of the information (user ratings and poster information), update date, and level of detail of the content.

[1729] Step 8: Narrow down and propose accommodations

[1730] The server uses the filtered information to narrow down the accommodation options that match the user's preferences.

[1731] The suggestions are also optimized by taking into account the user's emotions as recognized by the emotion engine.

[1732] For example, if "relaxation," "quiet," "budget under 10,000 yen," "good food," and "friendly staff" are important to you, make a list of accommodations that meet these criteria.

[1733] Step 9: Viewing Proposals

[1734] The terminal displays the proposal message received from the server on the user interface.

[1735] Example: "The following accommodations were found: 1. XX Hot Springs Inn (quiet, relaxing, and has great food) 2. YY Resort Hotel (budget under 10,000 yen, friendly staff) 3. ZZ Mountain Lodge (relaxing atmosphere)"

[1736] Step 10: Add your desired action

[1737] The user reviews the proposal and, if necessary, enters additional requests or questions into the terminal.

[1738] For example: "Can you tell me if there are any more affordable accommodations?"

[1739] Step 11: Search again and refine

[1740] The server receives the user's additional requests and questions and performs text analysis again.

[1741] Re-search for information based on new criteria, gathering and filtering more data as needed.

[1742] Step 12: Final proposal and reservation information provided

[1743] The server then presents the user with the information on accommodations that have been further refined.

[1744] Once the user has finalized their choice of accommodation, the server provides the terminal with a link and contact information for making a reservation.

[1745] Example: "To make a reservation, please click here: XX Onsen Ryokan, website link, phone number: 01-2345-6789."

[1746] Example 2

[1747] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1748] Conventional accommodation reservation systems have not adequately reflected users' preferences and suggested the most suitable accommodation. In particular, they lacked accurate keyword extraction and emotion recognition based on user input, resulting in low suggestion accuracy. Furthermore, the accuracy of filtering the collected information was low, often resulting in unreliable information. As a result, users spent a lot of time and effort trying to find a satisfactory accommodation.

[1749] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.

[1750] In this invention, the server includes means for acquiring text or voice data input by a user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for analyzing and recognizing emotions from the data input by the user, means for searching and collecting data related to accommodations from various information sources based on the extracted keywords and the recognized emotions, means for filtering the collected data to select reliable information, means for narrowing down accommodations that match the user's wishes based on the selected information and the recognized emotions and suggesting them in an interactive format, and means for allowing the user to further update their preferences. This makes it possible to accurately reflect the user's wishes and emotions and efficiently suggest optimal accommodations based on reliable information.

[1751] "Text data" refers to character data obtained by converting a user's voice data using voice recognition technology, or character data that is directly input.

[1752] "Voice data" is acoustic information provided by a user through speech input.

[1753] "Keywords" are important words or phrases related to a user's desires and preferences.

[1754] An "emotion engine" is software that analyzes emotions from user input data and recognizes emotions such as "joy," "tired," and "dissatisfied."

[1755] "Various sources" refers to a wide range of data sources, including review sites, blog articles, external APIs, etc.

[1756] "Filtering" is the process of selecting information based on the reliability of the collected data, the most recent update date, and the level of detail.

[1757] "Interactive" means that the user can interact with the system and enter additional requests or questions.

[1758] "Accommodation facilities" are facilities where users can stay, such as hotels, inns, and guesthouses.

[1759] "Accommodation that matches the user's preferences" is the most suitable accommodation selected based on the user's extracted keywords and recognized emotions.

[1760] "Reliable information" is data that is based on the criteria that the source of the information is trustworthy and the information is accurate and up-to-date.

[1761] "Means for converting" refers to a speech recognition API or other software for converting voice data into text data.

[1762] This invention relates to a system that allows users to input their accommodation preferences using free text or voice, analyzes various reviews and blog articles based on those preferences, and suggests the most suitable accommodation. Furthermore, by combining it with an emotion engine that recognizes emotions from the user's input data, the accuracy of suggestions and the user experience are improved.

[1763] System Configuration

[1764] Hardware:

[1765] Device (the device used by the user, e.g. smartphone, tablet, computer)

[1766] Servers (computers used for data processing and storage)

[1767] software:

[1768] Speech recognition API (e.g. Google Cloud Speech-to-Text)

[1769] Natural Language Processing (NLP) tools (e.g., SpaCy, NLTK)

[1770] Emotion engine (e.g. IBM Watson Tone Analyzer)

[1771] Search engine APIs (e.g., Google Search API)

[1772] Public API for review sites

[1773] Program processing

[1774] 1. User preference input:

[1775] The user uses the terminal to input their accommodation preferences using free text or voice. For example, they might input, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I also value the hospitality of the staff."

[1776] 2. Audio data conversion:

[1777] When voice is input, the device sends the voice data to the server, which uses a speech recognition API to convert the voice data into text data, which is then used for subsequent analysis.

[1778] 3. Text data analysis:

[1779] The server then analyzes the converted text data using natural language processing (NLP) tools to extract keywords related to the user's wishes and preferences, such as "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," "good food," and "staff service."

[1780] 4. Emotion recognition:

[1781] The server uses an emotion engine to analyze the user's input data and determine emotions. The emotion engine recognizes emotions such as "happy," "tired," and "unhappy" based on the usage and context of the words entered by the user. For example, it recognizes "tired" from the user's input.

[1782] 5. Collecting data from sources:

[1783] The server searches and collects relevant data from review sites and blog articles based on the extracted keywords and recognized sentiments, using search engine APIs and public APIs of review sites.

[1784] 6. Information filtering:

[1785] The server filters the collected data based on reliability, update date, and content detail to select highly reliable information, such as reviews with many five-star ratings or the latest blog posts.

[1786] 7. Accommodation selection and suggestions:

[1787] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account the user's emotions, as recognized by the emotion engine, to optimize the recommendations. For example, it lists accommodations that meet criteria such as "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget."

[1788] 8. Interactive suggestions:

[1789] The server then presents the user with a dialogue to suggest the narrowed-down accommodation information. The tone and expression of the dialogue are adjusted according to the emotion recognized by the emotion engine. The user can then confirm the suggestions and enter any additional requests or questions.

[1790] 9. Displaying the results:

[1791] Once the user finds a suitable accommodation, the server displays the information on the device, along with a link to the reservation site and contact information, such as a link to the selected accommodation's official website and phone number.

[1792] Specific examples

[1793] If a user is looking for a "quiet and relaxing hot spring inn," the following would be processed:

[1794] 1. The user enters their preferences via text or voice: "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to be a place with good food. I'd also like the staff to be very friendly."

[1795] 2. For voice input, the device sends voice data to the server, which converts it into text.

[1796] 3. The server analyzes the converted text using natural language processing tools and extracts keywords such as "quiet," "relaxing," "hot spring inn," and "budget under 10,000 yen."

[1797] 4. The emotion engine recognizes that the user is tired from their input data.

[1798] 5. The server searches review sites and blog articles using the extracted keywords and recognized emotions to collect related information.

[1799] 6. The server filters the collected information by reliability, update date, and level of detail to select the most reliable information.

[1800] 7. The server considers the results of the emotion engine and suggests accommodation information that emphasizes a relaxing environment.

[1801] 8. The server again searches, collects and filters the information based on any additional preferences entered by the user.

[1802] 9. The final accommodation information will be displayed on the device and a link will be provided for booking.

[1803] Prompt Sentence Examples

[1804] The text the user enters is something like this:

[1805] "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have delicious food. I also value the hospitality of the staff."

[1806] The invention suggests optimal accommodations based on a user's specific desires and feelings, providing an efficient and satisfying booking experience.

[1807] The flow of the identification process in the second embodiment will be described with reference to FIG.

[1808] Step 1:

[1809] User preference input

[1810] The user uses the terminal to input their accommodation preferences using free text or voice. For example, they might input, "I'm looking for a quiet and relaxing hot spring inn. My budget is under 10,000 yen per person per night, and I'd like it to have good food. I also value the hospitality of the staff." At this stage, the input is text or voice data, and the output is raw data containing the user's preferences.

[1811] Step 2:

[1812] Audio data conversion

[1813] When voice is input, the device uploads the voice data to the server, which then converts it into text using a speech recognition API such as Google Cloud Speech-to-Text API. The conversion process includes voice analysis, phoneme identification, and transcription. The input is voice data, and the output is the corresponding text data.

[1814] Step 3:

[1815] Text data analysis

[1816] The server analyzes the converted text data using natural language processing (NLP) tools (e.g., SpaCy, NLTK). During analysis, the text is tokenized, tagged with parts of speech, and analyzed for dependencies. This allows keywords related to the user's wishes and preferences to be extracted. The input is text data, and the output is the extracted keywords (e.g., "quiet," "relaxing," "hot spring inn," "budget under 10,000 yen," etc.).

[1817] Step 4:

[1818] emotion recognition

[1819] The server uses an emotion engine (e.g., IBM Watson Tone Analyzer) to analyze the user's emotions from the input data. Based on the content and expression of the input text, the emotion engine recognizes emotions such as "happy," "tired," and "unhappy." The input is text data, and the output is the emotion analysis result (e.g., "tired").

[1820] Step 5:

[1821] Collecting data from sources

[1822] Based on the extracted keywords and recognized sentiment, the server uses the Google Search API and the public API of the review site to search and collect data from related review sites and blog articles. The server identifies the target to collect and makes an API call. The input is keyword and sentiment data, and the output is the retrieved data of related accommodation reviews and blog articles.

[1823] Step 6:

[1824] Information Filtering

[1825] The server filters the collected data based on reliability, update date, and level of detail, prioritizing highly reliable information (e.g., highly rated reviews, recently updated blog posts). The input is the collected data, and the output is the filtered, highly reliable data.

[1826] Step 7:

[1827] Accommodation search and suggestions

[1828] The server uses the filtered information to narrow down the list of accommodations that match the user's preferences. It also takes into account emotions recognized by the emotion engine to optimize the recommendations. For example, it lists accommodations that meet the criteria of "highly rated staff service," "delicious food," "quiet environment," and "reasonable budget range." The input is the filtered data and the results of emotion analysis, and the output is a list of optimal accommodations.

[1829] Step 8:

[1830] Interactive suggestions

[1831] The server then presents the narrowed down accommodation information to the user in a dialogue format. The tone and expression of the dialogue are adjusted according to the emotions recognized by the emotion engine. The user can review the suggestions and enter additional requests or questions. The input is a list of optimal accommodations and the user's additional requests, and the output is an updated proposal.

[1832] Step 9:

[1833] Displaying the results

[1834] When the user finally finds a suitable accommodation, the server displays the information on the terminal, along with a link to make a reservation and contact information. The input is the finalized accommodation information, and the output is the detailed information of the accommodation displayed on the terminal (e.g., a link to the official website and a phone number).

[1835] (Application example 2)

[1836] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1837] Conventional food delivery systems have difficulty making suggestions based on the user's specific wishes and emotions, and simply displaying a list has not been enough to increase user satisfaction. Furthermore, when a user orders a meal, the system is unable to make suggestions that take into account the user's mood or emotions at the time, resulting in an unsatisfactory user experience.

[1838] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring text or voice data input by the user, means for converting the acquired text or voice data into text data, means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences, means for searching and collecting information from various information sources based on the extracted keywords, means for filtering the collected data to select reliable information, means for narrowing down and suggesting items that match the user's wishes based on the selected information, dialogue means for allowing the user to further update their wishes, and means for performing emotion analysis and making suggestions based on the user's emotions. This enables food delivery suggestions based on the user's specific wishes and emotions, improving the user experience.

[1839] "User-input text or voice data" refers to text data or voice data that a user provides to the system using an input device.

[1840] "Means for converting into text data" refers to a technology or device that converts voice data into text information, and generally refers to voice recognition technology.

[1841] "Means for analyzing text data to extract keywords related to user desires and preferences" refers to technology or algorithms that identify and extract specific important words or phrases from text information.

[1842] "Means of searching and collecting information from sources" refers to technologies or systems that automatically obtain necessary information or data from the Internet or databases.

[1843] "Means for filtering collected data to select reliable information" refers to technologies or algorithms for selecting accurate and useful data from the collected information.

[1844] "Means for narrowing down and proposing options that match the user's desires" refers to a technology or system that identifies the options that best fit the user's desired conditions and presents them to the user.

[1845] "Interaction means" refers to the interface or technology that allows the user and the system to exchange information with each other.

[1846] "Means for performing emotion analysis and making suggestions based on the user's emotions" refers to technology or algorithms for identifying emotions from the user's input data and making suggestions that match those emotions.

[1847] The present invention is a food delivery system that allows a user to input their meal-related preferences via text or voice, and then suggests the most suitable restaurant and menu based on the user's preferences and current mood. Specific embodiments for realizing this system are described below.

[1848] System Overview

[1849] The system starts when the user inputs their preferences using a device such as a smartphone or PC. The data entered by the user is processed by the server, which then makes optimal food delivery suggestions.

[1850] User input

[1851] The user inputs their meal preferences using their own device, either by text or voice. For example, they might input something like, "I'm not feeling well today, but I want to eat spicy curry."

[1852] Converting audio data to text

[1853] When voice is input, the smartphone or PC device sends the data to a server, which then uses a speech recognition API (for example, Google Cloud Speech-to-Text API) to convert the voice data into text data, which is then used for subsequent analysis.

[1854] Text and Sentiment Analysis

[1855] The server analyzes the converted text data and extracts keywords related to the user's wishes and preferences. This analysis is performed using natural language processing (NLP) tools (e.g., Google Cloud Natural Language API). Furthermore, a sentiment analysis engine analyzes the user's input data and recognizes emotions such as "depressed."

[1856] Data Collection and Filtering

[1857] The server searches and collects relevant data from food delivery-related information sources (e.g., restaurant review site APIs and blog articles) based on the extracted keywords and sentiment analysis results. The collected data is filtered based on the reliability and detail of the information, and highly reliable information is selected.

[1858] Proposals and Dialogue

[1859] Based on the filtered information, the server narrows down and suggests restaurants and menus that best match the user's preferences and feelings. The suggestions are made interactively, and each time the user enters additional preferences, the system searches the information again and makes the most appropriate suggestions. This interactive format allows users to customize their experience in detail, increasing satisfaction.

[1860] Displaying the results

[1861] Finally, the device displays the restaurant and menu information selected by the user, along with links to order and detailed information, such as a link to the restaurant's ordering page and phone number.

[1862] Examples of specific examples and prompts

[1863] For example, if a user enters "I'm not feeling well today, but I want to eat spicy curry," the server will process it as follows:

[1864] 1. User: "I'm not feeling well today, but I want to eat some spicy curry."

[1865] 2. The server converts the audio data to text (if necessary).

[1866] 3. The server analyzes the text and extracts the keywords "not feeling well" and "spicy curry."

[1867] 4. The emotion engine analyzes the emotion of "feeling down."

[1868] 5. The server searches restaurant review site APIs and blog posts to collect relevant information.

[1869] 6. The server filters the collected information to narrow down the data to the most reliable.

[1870] 7. The server takes into account the results of the sentiment analysis and suggests restaurants that serve particularly "energetic" spicy curry.

[1871] 8. The user is given interactive suggestions and provided with a link to the ordering page of the restaurant they ultimately selected.

[1872] Example prompts to be input to the generative AI model:

[1873] If you type "I'm not feeling well today, but I want to eat some spicy curry.":

[1874] Recognize the feeling of "not feeling well" and find a restaurant that serves "spicy curry."

[1875] Get a list of top-rated restaurants from sources.

[1876] It filters reviews and ratings to suggest restaurants that best suit the user's preferences.

[1877] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[1878] Step 1:

[1879] The user inputs their meal preferences via text or voice. The user inputs text or voice using their own device (smartphone, PC, etc.), such as "I'm not feeling well today, but I'd like to eat spicy curry."

[1880] Step 2:

[1881] The device sends the input content to the server. Text data is sent as is, and if it is voice data, it is converted to text data on the server using a voice recognition API (for example, Google Cloud Speech-to-Text API). Input: Voice data, Output: Text data.

[1882] Step 3:

[1883] The server analyzes the received text data. The server uses a natural language processing (NLP) tool (e.g., Google Cloud Natural Language API) to analyze the text and extract keywords related to the user's wishes and preferences. Input: text data, output: extracted keywords (e.g., "feeling unwell" or "spicy curry").

[1884] Step 4:

[1885] The server performs emotion analysis. The emotion engine analyzes the emotions from the user's input data and recognizes emotions such as "depressed." Input: text data, output: analyzed emotion (e.g., "depressed").

[1886] Step 5:

[1887] The server collects information based on the extracted keywords and sentiment analysis results. It searches and collects relevant data from food delivery-related sources (e.g., restaurant review site APIs and blog articles). Input: extracted keywords and sentiment data. Output: collected data.

[1888] Step 6:

[1889] The server filters the data collected. Filtering is performed based on the reliability of the information, level of detail, update date, etc., to select the most reliable information. Input: collected data, output: filtered data.

[1890] Step 7:

[1891] The server makes suggestions based on the user's preferences and feelings. Based on the filtered data, it lists restaurants and menus that best suit the user's preferences and presents suggestions in an interactive format. Input: filtered data, Output: listed restaurants and menus.

[1892] Step 8:

[1893] The user further updates their preferences. Each time the user interactively reviews the suggestions and enters additional preferences or questions, the system searches for information again and makes the best suggestions. Input: Additional preferences from the user, Output: Updated suggestions.

[1894] Step 9:

[1895] The server displays the final result to the user. Information about the restaurant and menu selected by the user is displayed on the terminal, and a link and detailed information for ordering are provided. Input: Final selected proposal, Output: Displayed ordering link and detailed information.

[1896] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.

[1897] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1898] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.

[1899] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[1900] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.

[1901] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.

[1902] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).

[1903] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.

[1904] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."

[1905] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values ​​indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.

[1906] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).

[1907] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.

[1908] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.

[1909] 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.

[1910] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.

[1911] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.

[1912] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.

[1913] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that execu...

Claims

1. means for obtaining text or voice data input from a user; means for converting the acquired text or audio data into text data; A means for analyzing the converted text data and extracting keywords related to the user's wishes and preferences; A means of searching and collecting data about accommodation facilities from various sources based on the extracted keywords; A means of filtering the collected data to select reliable information; A means for narrowing down and proposing accommodations that match the user's preferences based on the selected information; interaction means that allow the user to further update their preferences; A system including:

2. The system according to claim 1, further comprising a means for searching and collecting data from external information sources such as review sites and blog articles based on the extracted keywords.

3. The system according to claim 1 , wherein the filtering is performed based on the reliability of the information, the latest update date, and the level of detail.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A