system
A system efficiently collects and standardizes ramen shop reviews, analyzes user preferences, and provides feedback to suggest optimal stores and enhance business strategies, addressing the challenges of multiple review sites and data integration.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-10-02
- Publication Date
- 2026-04-14
AI Technical Summary
Users face challenges in finding optimal ramen shops due to the time-consuming process of referring to multiple review sites with different formats, making it difficult to compare and integrate reviews, and businesses lack efficient means to understand user preferences and feedback for data-driven decisions.
A system that collects and standardizes word-of-mouth information from multiple online review sites, analyzes user preferences using machine learning, suggests suitable stores, collects user feedback, and provides data-driven solutions for businesses.
Enables users to find suitable ramen shops efficiently and businesses to make strategic decisions based on accumulated data, improving user satisfaction and business competitiveness.
Smart Images

Figure 2026064814000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a method for controlling a persona chatbot, which is performed by at least one processor, including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Conventionally, when looking for a ramen shop, users had to refer to multiple review sites such as Tabelog, Google (registered trademark) Reviews, and Twitter, consuming a lot of time and effort in the process. Also, the review information on each site had different formats, making it difficult to compare and integrate, so it was difficult for users to find the optimal store that suited their preferences. Moreover, business operators had insufficient means to grasp the detailed preferences and feedback of users, making it difficult to make data-driven decisions regarding the opening of new stores or the revision of menus. To solve these problems, there is a need for a system that efficiently collects and standardizes review information and proposes an optimal store based on user preferences.
Means for Solving the Problems
[0005] The present invention solves the above problems with a system that includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing user preferences based on user input information and past history, means for proposing the most suitable store based on the analysis results, means for collecting and storing user feedback, and means for providing solutions for businesses based on the accumulated data. Specifically, word-of-mouth information obtained from multiple online review sites is standardized, and user preferences are analyzed using a machine learning algorithm to propose the most suitable store to the user. Furthermore, feedback collected from users is accumulated, and detailed solutions for businesses are provided based on this. As a result, users can find stores that suit their preferences in one place, and businesses can make data-driven strategic decisions.
[0006] "Word-of-mouth information" refers to information in which consumers or users express their opinions and impressions about a particular product or service.
[0007] "Means of collection" refers to the methods and technologies used to obtain data from information sources on the internet.
[0008] "Standardization" is the process of unifying data provided in different formats or types into a uniform format.
[0009] "Means of storage" refers to methods and technologies for storing data in storage devices such as databases.
[0010] "User input information" refers to data that includes conditions and requirements provided by the system user.
[0011] "Past history" refers to records of searches and actions previously performed by the user.
[0012] "User preferences" refer to information that indicates the tastes and tendencies of a particular user.
[0013] "Means of analysis" refers to methods and techniques for analyzing data to derive specific insights or patterns.
[0014] "Methods for suggesting the optimal store" refers to methods and technologies for recommending the most suitable store based on the user's requests and preferences.
[0015] "Feedback" refers to the evaluations and opinions that users provide after using a particular product or service.
[0016] "To collect" refers to the act of gathering data or information.
[0017] "To save" refers to the act of storing data in some form in order to retain it permanently.
[0018] "Accumulated data" refers to a collection of data that has been continuously collected and integrated.
[0019] "Solutions for businesses" are proposals or methods that companies and businesses can use to solve specific problems.
[0020] A "machine learning algorithm" is a statistical model or method that learns patterns from large amounts of data to perform predictions and classifications. [Brief explanation of the drawing]
[0021] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] This is a conceptual diagram showing an example of the essential functions of a data processing device and a smart device according to the first embodiment. [Figure 3] This is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] This is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] It shows an emotion map to which a plurality of emotions are mapped. [Figure 10] It shows an emotion map to which a plurality of emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when an emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when an emotion engine is combined.
Mode for Carrying Out the Invention
[0022] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described according to the accompanying drawings.
[0023] First, the language used in the following description will be explained.
[0024] In the following embodiments, the signed processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Furthermore, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include CPU (Central Processing Unit), GPU (Graphics Processing Unit), GPGPU (General-Purpose computing on Graphics Processing Units), and APU (Accelerated Processing Unit).
[0025] In the following embodiments, signed RAM (Random Access Memory) is a memory that temporarily stores information and is used as work memory by the processor.
[0026] In the following embodiments, the signed storage is one or more non-volatile storage devices that store various programs and various parameters. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes.
[0027] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0028] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0029] [First Embodiment]
[0030] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0031] As shown in Figure 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0032] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0033] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0034] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0035] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0036] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0037] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0038] As shown in Figure 2, in the data processing device 12, a specific processing is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" related to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 according to the specific processing program 56 executed on the RAM 30.
[0039] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0040] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0041] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0042] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on user preferences. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[0043] The specific form of implementing this system is described below.
[0044] 1. Collection and standardization of word-of-mouth information
[0045] 1.1 Access to review sites
[0046] The server periodically accesses major review sites. This access is done using APIs (Application Programming Interfaces), or, if APIs are unavailable, by using web scraping techniques.
[0047] 1.2 Acquisition of customer review data
[0048] The server automatically retrieves review data from each site and stores it in a temporary database. This data includes review content, rating scores, and posting dates.
[0049] 1.3 Data Cleansing and Standardization
[0050] The server performs a cleansing process (removing noise data and imputing missing values) on the review data stored in the temporary database, and then standardizes it (converting data in different formats to a unified format).
[0051] 1.4 Persistent Data Storage
[0052] The server stores standardized data in this database. This database will later be used for making suggestions to users and for analysis.
[0053] 2. User preference analysis
[0054] 2.1 User Input Conditions
[0055] Users enter their desired conditions, such as the type of ramen, location, and budget, into an input form on their device.
[0056] 2.2 Referencing User History
[0057] The server retrieves the user's past search history and input information from the database to understand the user's preferences.
[0058] 2.3 Conducting a preference analysis
[0059] The server uses machine learning algorithms to analyze the user's past data and current input conditions, profiling the preferences of individual users.
[0060] 3. Shop proposals
[0061] 3.1 Searching for suitable stores
[0062] The server searches for restaurants that match the user's preferences based on review data in the database.
[0063] 3.2 Ranking and Filtering
[0064] The server ranks businesses in order of highest rating based on search results and filters them according to the user's criteria.
[0065] 3.3 Providing Results
[0066] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[0067] 4. Collecting user feedback
[0068] 4.1 Inputting Feedback
[0069] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[0070] 4.2 Sending Feedback
[0071] The device sends the collected feedback to the server.
[0072] 4.3 Saving Feedback
[0073] The server stores the feedback in a database and uses it to create future suggestions and generate reports for businesses.
[0074] 5. Providing solutions for businesses
[0075] 5.1 Implementation of Data Analysis
[0076] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[0077] 5.2 Report Generation
[0078] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[0079] 5.3 Provision of Reports
[0080] Businesses can make strategic decisions by referring to reports provided by the server.
[0081] Through this configuration, the system can efficiently suggest the most suitable ramen restaurants to users and provide data-driven solutions to businesses. For example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server will list highly-rated ramen restaurants that meet these conditions and display them on the terminal. Subsequently, feedback from the user about the restaurants they visited can be provided to help improve the accuracy of the recommendation algorithm for the next time.
[0082] The following describes the processing flow.
[0083] Step 1:
[0084] The server periodically accesses major review sites (e.g., Tabelog, Google Reviews, Twitter, etc.) and retrieves review data using APIs or web scraping techniques.
[0085] Step 2:
[0086] The server temporarily stores the acquired review data in a database. This data includes the review content, rating score, and posting date and time.
[0087] Step 3:
[0088] The server performs a cleansing process on the review data stored in the temporary database. Specifically, this involves removing noisy data, eliminating duplicate data, and imputing missing values.
[0089] Step 4:
[0090] The server standardizes the cleansed data. It unifies the format of data collected from different review sites (e.g., rating score scales and date / time formats).
[0091] Step 5:
[0092] The server stores standardized review data in a persistent database. This data can then be used later for user suggestions and analysis.
[0093] Step 6:
[0094] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on the device.
[0095] Step 7:
[0096] The server retrieves past search history and user behavior data from the database, in addition to the user's input conditions.
[0097] Step 8:
[0098] The server uses machine learning algorithms to analyze user preferences. Based on the user's past behavior data and current input conditions, it profiles the user's tendencies.
[0099] Step 9:
[0100] The server searches a persistent database for stores that match the user's preferences. This search takes into account the user's input criteria and preference profile.
[0101] Step 10:
[0102] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the list based on the user's criteria, leaving only the most relevant shops.
[0103] Step 11:
[0104] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[0105] Step 12:
[0106] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[0107] Step 13:
[0108] The device sends the user's input to the server.
[0109] Step 14:
[0110] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[0111] Step 15:
[0112] The server analyzes accumulated word-of-mouth data and user feedback to generate reports on new store location selection and menu optimization.
[0113] Step 16:
[0114] The server uploads the report generated based on the analysis results to the business operator's dashboard, making it accessible to the business operator.
[0115] Step 17:
[0116] Businesses refer to reports provided by the server to make strategic decisions. This enables effective marketing based on user preferences and the selection of new store locations.
[0117] (Example 1)
[0118] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0119] Conventional information provision systems struggled to efficiently collect and analyze online word-of-mouth information and provide highly accurate suggestions based on individual user preferences. Furthermore, they were not adequately able to effectively accumulate user feedback and provide it as valuable solutions for businesses. This resulted in challenges in improving user satisfaction while simultaneously enhancing the competitiveness of businesses.
[0120] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0121] In this invention, the server includes means for collecting information from multiple information sites on the internet, means for standardizing and cleaning the collected information and storing it in a database, means for analyzing user preferences based on user input conditions and past operation history, means for presenting optimal options based on the analysis results, means for collecting and storing evaluations and opinions from users, and means for providing solutions for businesses based on the accumulated data. This enables highly accurate suggestions based on user preferences, and further enables the provision of valuable data-driven solutions to businesses based on accumulated feedback.
[0122] "Multiple information sites on the internet" refers to websites that provide various kinds of information on the web, and includes blogs, word-of-mouth sites, review sites, etc.
[0123] "Means of collecting information" refers to methods for obtaining necessary data from websites on the internet, and includes data acquisition using APIs and web scraping techniques.
[0124] Standardization is the process of converting data from different formats into a unified format, with the aim of ensuring data consistency and comparability.
[0125] "Cleansing" refers to the process of removing inaccurate, inappropriate, or incomplete information from data to make it accurate and reliable.
[0126] A "database" refers to a system used to systematically store, manage, and retrieve information, and relational databases are commonly used.
[0127] "User input conditions" refer to the preferences and requirements that users explicitly enter into the system, such as the type of ramen, location, and budget.
[0128] "Past operation history" refers to the history of searches and selections that a user has made using the system in the past.
[0129] "Methods for analyzing preferences" refer to methods for analyzing user preferences and trends using machine learning algorithms and data analysis techniques.
[0130] "Means of presenting optimal options" refers to methods of providing users with the most suitable options and suggestions based on the results of user preference analysis.
[0131] "Means of collecting evaluations and opinions" refers to methods for obtaining feedback from users, and includes online forms and surveys.
[0132] "Solutions for businesses" refers to services that analyze accumulated data and provide reports and suggestions that businesses can use to improve their marketing strategies and services.
[0133] This invention is a system that analyzes user preferences based on word-of-mouth information collected from internet information sites and presents optimal options, and further accumulates user feedback to provide solutions for businesses. The embodiments for carrying out this invention will be described in detail below.
[0134] The entire system is primarily composed of three components: servers, terminals, and users.
[0135] 1. Collection and standardization of word-of-mouth information
[0136] The server periodically accesses multiple information sites on the internet. For access, it uses APIs where available, and for sites without APIs, it employs web scraping techniques. Specifically, it can utilize libraries such as Python's BeautifulSoup and Scrapy.
[0137] The server stores user reviews obtained from each information site in a temporary database. This data includes review content, rating scores, posting dates, and other information.
[0138] Next, the server cleanses the data stored in the temporary database, removing noisy data and imputing missing values, and then standardizes data in different formats. Data manipulation libraries such as Pandas and NumPy are used for this.
[0139] Standardized data is persistently stored in this database by the server. This database will later be used for making suggestions to users and for analysis.
[0140] 2. User preference analysis
[0141] Users enter their desired conditions, such as the type of ramen, location, and budget, into an input form on their device. This form is created using HTML, CSS, and JavaScript (registered trademark).
[0142] The server retrieves the user's past search history and input information from a database, and uses this to understand the user's preferences. The retrieved data is used to profile the user's individual preferences.
[0143] The server uses machine learning algorithms (e.g., Scikit-learn, TENSORFLOW®) to analyze the user's past data and current input conditions. This analysis allows for detailed profiling of individual user preferences.
[0144] 3. Shop proposals
[0145] The server searches for businesses that match the user's preferences from the user review data in the database. The search results are ranked in order of highest rating based on the user's criteria.
[0146] Next, the server filters the search results based on the user's criteria. This filtering creates a list of shops that best match the user's desired conditions.
[0147] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[0148] 4. Collecting user feedback
[0149] After visiting a suggested store, users provide feedback, including their impressions and ratings, via a terminal. This input form is built using HTML, CSS, and JavaScript.
[0150] The device sends the collected feedback to the server.
[0151] The server stores the submitted feedback in a database and uses it to create future suggestions and generate reports for businesses.
[0152] 5. Providing solutions for businesses
[0153] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[0154] Based on the analysis results, the server generates a report on selecting a location for a new store and optimizing the menu. This report includes detailed analysis results of user preferences and feedback.
[0155] Businesses can refer to reports provided by the server and make strategic decisions.
[0156] The above describes a specific embodiment for carrying out the present invention. As a specific example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server lists highly-rated ramen restaurants that meet the conditions and displays them on the terminal. Subsequently, the server can provide feedback on the restaurants the user has visited, which can be used to improve the accuracy of the recommendation algorithm for the next time.
[0157] Examples of prompts for a generative AI model include the following:
[0158] "What are some recommended Sapporo ramen restaurants that are under 1000 yen and within a 10-minute walk from the station?"
[0159] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0160] Step 1: Access the review site
[0161] The server regularly accesses major review sites (e.g., Tabelog, Gurunavi) to collect user reviews daily. If an API is available, it uses that; otherwise, it performs web scraping using Python's BeautifulSoup or Scrapy. Specifically, it accesses the specified URL and retrieves the target HTML content.
[0162] Input: List of URLs for review websites
[0163] Output: HTML content obtained from each review site
[0164] Step 2: Obtaining customer review data
[0165] The server extracts review information from the retrieved HTML content and stores it in a temporary database. Specifically, it performs HTML parsing to extract data such as review content, rating score, and posting date.
[0166] Input: Retrieved HTML content
[0167] Output: Extracted review data (stored in a temporary database)
[0168] Step 3: Data cleansing and standardization
[0169] The server performs data cleansing on the review data stored in the temporary database. This involves removing noisy data and imputing missing values, and then converting data in different formats to a unified format. Specifically, it uses the Pandas library to manipulate dataframes.
[0170] Input: Raw data stored in a temporary database
[0171] Output: Cleansed and standardized data (stored in this database)
[0172] Step 4: Data Permanent Storage
[0173] The server persistently stores standardized data in this database. This database uses a relational database such as MySQL®. This allows the data to be used later for making suggestions to users and for data analysis.
[0174] Input: Cleansed and standardized data
[0175] Output: Persistent data stored in this database
[0176] Step 5: Enter user conditions
[0177] The user enters their desired criteria into an input form on their device. For example, they might specify the type of ramen, location, budget, etc. This input form is created using HTML, CSS, and JavaScript.
[0178] Input: User-specified desired conditions
[0179] Output: Data entered into the form (sent to the server)
[0180] Step 6: Referencing User History
[0181] The server retrieves the user's past search history and input information from the database. Specifically, it queries relevant historical data based on the user ID.
[0182] Input: User ID
[0183] Output: User's past search history and input information
[0184] Step 7: Conduct a preference analysis
[0185] The server uses machine learning algorithms to analyze the user's past data and current input conditions. Specifically, it uses Scikit-learn and TensorFlow to profile the user's preferences.
[0186] Input: User's past data, current input conditions
[0187] Output: User preference profile
[0188] Step 8: Find a suitable store
[0189] The server searches for restaurants that match the user's preferences from the review data in the database. It retrieves matching entries using SQL queries.
[0190] Input: User preference profiles, review database
[0191] Output: List of suitable stores
[0192] Step 9: Ranking and Filtering
[0193] The server ranks businesses in descending order of their ratings based on search results and filters them according to the user's criteria. Specifically, it sorts businesses in descending order of their rating scores and then narrows them down by criteria such as budget and distance.
[0194] Input: List of stores in search results, user's preferences
[0195] Output: Filtered and ranked list of stores
[0196] Step 10: Providing Results
[0197] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[0198] Input: List of ranked stores
[0199] Output: Store list displayed to the user
[0200] Step 11: Entering Feedback
[0201] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[0202] Input: Feedback information for the store
[0203] Output: Feedback information (sent to server)
[0204] Step 12: Submit Feedback
[0205] The device sends the collected feedback to the server.
[0206] Input: Feedback information
[0207] Output: Feedback information sent to the server
[0208] Step 13: Saving Feedback
[0209] The server stores the feedback in a database and uses it to create future suggestions and generate reports for businesses.
[0210] Input: Submitted feedback information
[0211] Output: Feedback data stored in the database
[0212] Step 14: Perform data analysis
[0213] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends. Specifically, it uses data mining techniques and machine learning models.
[0214] Input: Accumulated word-of-mouth data, feedback data
[0215] Output: Analysis results regarding trends and developments
[0216] Step 15: Report Generation
[0217] The server generates reports on new store location selection and menu optimization based on the analysis results. These reports include detailed analysis of user preferences and feedback.
[0218] Input: Analysis results regarding trends and developments
[0219] Output: Report for businesses
[0220] Step 16: Submitting the report
[0221] Businesses refer to reports provided by the server to make strategic decisions.
[0222] Input: Business Report
[0223] Output: Providing information for strategic decision-making
[0224] (Application Example 1)
[0225] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0226] Traditional store recommendation systems failed to accurately analyze user preferences, resulting in low accuracy in suggesting optimal stores. Furthermore, inefficient feedback collection and analysis for businesses led to a lack of information necessary for strategic decision-making. Additionally, limited user interfaces on smartphones and other devices meant a lack of user-friendly features.
[0227] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0228] In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing user preferences based on user input information and past history, means for suggesting the most suitable store based on the analysis results, means for collecting and storing user feedback, means for providing solutions for businesses based on the accumulated data, means for displaying on terminals such as smartphones, smart glasses, and head-mounted displays, means for having a function to search for stores that meet user criteria and a function to rank them in order of highest rating, means for profiling user preferences using machine learning algorithms, means for generating data analysis reports for businesses, and means for creating prompt sentences to be input to a generated AI model. This makes it possible to suggest the most suitable store to the user with high accuracy and to provide effective feedback and data analysis to businesses.
[0229] "Word-of-mouth information" refers to evaluations and reviews written by ordinary users based on their experiences using a particular service or product.
[0230] "Means of collection" refers to the software or hardware functions used to acquire specific information and incorporate it into a system.
[0231] "Means of standardization and preservation" refers to processes and systems for converting data acquired in different formats into a consistent format and storing it for a long period of time.
[0232] "Methods for analyzing user preferences" refer to algorithms and technologies that reveal a user's preferences and tastes based on their past behavioral history and input information.
[0233] "A means of suggesting the optimal store" refers to a function that recommends the most suitable store for the user based on the analysis results.
[0234] "Means for collecting and storing feedback" refers to the process or system of receiving ratings and opinions from users and storing them in a database.
[0235] "Means of providing solutions for businesses" refers to functions that provide businesses with information and suggestions to help them make management decisions and develop marketing strategies, based on collected data and analysis results.
[0236] "Means of displaying information on a device" refers to an interface that uses devices such as smartphones, smart glasses, and head-mounted displays to visually provide information to the user.
[0237] A "search function" refers to the process or system of investigating information within a database based on specific criteria and finding the relevant data.
[0238] A "ranking function" is an algorithm that evaluates multiple options based on specific criteria and assigns them a ranking.
[0239] A "machine learning algorithm" is an algorithm that allows a computer to automatically learn from data and perform predictions and classifications.
[0240] "Profiling techniques" refer to technologies and algorithms used to analyze user data and identify the characteristics and patterns of individual users.
[0241] "Means for generating data analysis reports" refers to the process or system that analyzes accumulated data and outputs the analysis results as a report.
[0242] A "generative AI model" is a model that has been trained and developed using artificial intelligence technology to perform a specific task.
[0243] A "prompt" is a question or instruction presented to a user or system to request specific input.
[0244] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on user preferences. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[0245] System Configuration
[0246] This system consists of the following components:
[0247] 1. Server:
[0248] We regularly access major review sites and collect review data. If an API is available, we use it; otherwise, we use web scraping techniques.
[0249] The collected word-of-mouth data is stored in a temporary database, and a cleansing process is performed to remove noise data and impute missing values.
[0250] Standardized data will be stored in this database.
[0251] Based on user input information and past history, machine learning algorithms (such as Scikit-learn and TensorFlow) are used to profile the user's preferences.
[0252] Collect user feedback and store it in a database.
[0253] Based on accumulated data, we perform data analysis for businesses and provide the analysis results as a report.
[0254] 2. Terminal:
[0255] The system uses smartphones, smart glasses, head-mounted displays, etc., to display a list of the most suitable stores to the user. The list includes the store name, rating score, review summary, and location.
[0256] It provides an interface for users to input feedback on the stores they have visited.
[0257] 3. User:
[0258] Enter your desired conditions (e.g., "Sapporo ramen," "budget under 1000 yen," "within a 10-minute walk from the station") into the terminal.
[0259] Visit the suggested store and enter your feedback into the terminal.
[0260] Specific description of the system's operation
[0261] 1. Gathering word-of-mouth information:
[0262] The server retrieves review data from review sites using libraries such as BeautifulSoup and stores it in a temporary database. If an API is available, it retrieves data via a RESTful API.
[0263] 2. Data cleansing and standardization:
[0264] The server cleanses the collected review data and converts data in different formats into a unified format. This is done using a Python library, and the results are stored in this database.
[0265] 3. User preference analysis:
[0266] The server uses machine learning algorithms to analyze user input and past history to profile user preferences.
[0267] 4. Gathering store suggestions and feedback:
[0268] The server searches for the most suitable stores from the user review data in the database, ranks them in order of highest rating, and displays them on the user's device. Users provide feedback after their visit, which is used to improve the accuracy of the recommendation algorithm for the next time.
[0269] 5. Data analysis reports for businesses:
[0270] The server analyzes accumulated word-of-mouth data and user feedback to generate reports on new store location selection and menu optimization. These reports are provided to businesses to assist in strategic decision-making.
[0271] Specific examples and prompt statements
[0272] Specific example:
[0273] User A enters "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station" into the terminal. The server searches its database for restaurants that meet the criteria, ranks them in descending order of rating, and displays them on the terminal. After visiting, User A enters feedback into the terminal, which is used to improve the accuracy of the recommendation algorithm for the next time.
[0274] Example of a prompt:
[0275] Please recommend highly-rated ramen restaurants that fit the following criteria: "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station."
[0276] "Based on your past ramen restaurant visits and ratings, please recommend a suitable ramen restaurant for this occasion."
[0277] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0278] Step 1: Gathering word-of-mouth information
[0279] The server regularly accesses major review sites and collects review data. The input data is the URL of the review site and the authentication information for access. The server uses web scraping tools such as BeautifulSoup or RESTful APIs to obtain review data from each site and saves it in a temporary database. The output is the raw review data collected.
[0280] Step 2: Data cleansing
[0281] The server performs a cleansing process on the raw review data stored in the temporary database. The input data is the raw review data collected. It deletes noise data and complements missing values, and extracts only the necessary information. Specific operations include filtering inappropriate reviews and standardizing data conversion. The output is the cleansed and clean review data.
[0282] Step 3: Data standardization
[0283] The server standardizes the cleansed review data. The input data is the cleansed and clean review data. It converts data in different formats into a unified format and saves it in the database. Specific operations include data formatting according to the database schema. The output is the standardized data.
[0284] Step 4: User preference analysis
[0285] The server analyzes the user's preferences using machine learning algorithms based on the user's input information and past history. The input data is the user's search conditions and past history data. As the algorithms to be used, Scikit-learn or TensorFlow is used to profile the user's preferences. Specific operations include performing classification models and clustering analysis for each user. The output is the user's preference profile.
[0286] Step 5: Store Search and Recommendation
[0287] The server searches for the optimal stores from the review data in the database based on the user's preference profile and conditions. The input data is the user's preference profile and search conditions. It ranks them in descending order of evaluation and performs filtering. As specific operations, it uses a search algorithm to obtain stores that meet the conditions and performs scoring. The output is a list of optimal stores.
[0288] Step 6: Result Display
[0289] The terminal displays the list of optimal stores received from the server to the user. The input data is the list of optimal stores sent from the server. As specific operations, it uses the UI interface to display the store information in a list format. The output is the store list displayed to the user.
[0290] Step 7: Feedback Collection
[0291] The user inputs feedback on the visited store from the terminal. The input data is the user's feedback information. The terminal sends this feedback to the server. The output is the collected feedback information.
[0292] Step 8: Feedback Saving
[0293] The server saves the feedback sent from the user to the database. The input data is the user's feedback information. As specific operations, it includes the process of adding the feedback data to the database. The output is the saved feedback data.
[0294] Step 9: Data Analysis and Report Generation
[0295] The server analyzes accumulated word-of-mouth data and user feedback to generate data analysis reports for businesses. The input data consists of accumulated word-of-mouth data and user feedback. Specifically, it performs data mining and statistical analysis, and compiles the analysis results into a report. The output is an analysis report for businesses.
[0296] Step 10: Creating a Generative AI Model and Prompt Text
[0297] The server uses a generative AI model based on the information entered by the user to generate prompt messages. The input data consists of the user's conditions and search history. Specifically, the AI model generates the most appropriate questions and instructions based on the conditions. The output is the prompt message.
[0298] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0299] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[0300] The specific form of implementing this system is described below.
[0301] 1. Collection and standardization of word-of-mouth information
[0302] 1.1 Access to review sites
[0303] The server periodically accesses major review websites. This access is done using APIs (Application Programming Interfaces), or, if APIs are unavailable, by using web scraping techniques.
[0304] 1.2 Acquisition of Review Data
[0305] The server automatically acquires review data from each site and stores it in a temporary database. This data includes the content of reviews, evaluation scores, posting dates, etc.
[0306] 1.3 Data Cleansing and Standardization
[0307] The server performs cleansing processing (removing noise data, eliminating duplicate data, and complementing missing values) on the review data stored in the temporary database, and then performs standardization (converting data in different formats into a unified format).
[0308] 1.4 Persistent Storage of Data
[0309] The server stores the standardized review data in a persistent database. This database is used later for user suggestions and analysis.
[0310] 2. User Preference and Sentiment Analysis
[0311] 2.1 User Condition Input
[0312] The user enters their desired conditions, such as the type of ramen, location, budget, etc., into the input form on the terminal.
[0313] 2.2 Referencing User History
[0314] The server retrieves the user's past search history and input information from the database to understand the user's preferences.
[0315] 2.3 Sentiment Recognition by Sentiment Engine
[0316] The server uses a sentiment engine to recognize sentiment from the user's input information and past history. It extracts sentiment from the text entered by the user using text analysis technology.
[0317] 2.4 Integrated Analysis of Preferences and Feelings
[0318] The server uses machine learning algorithms to integrate and analyze the user's past data, current input conditions, and emotions to profile the individual user's preferences and emotions.
[0319] 3. Shop proposals
[0320] 3.1 Searching for suitable stores
[0321] The server searches for shops that match the user's preferences and feelings based on review data in the database.
[0322] 3.2 Ranking and Filtering
[0323] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the results based on the user's criteria and perceived sentiment, leaving only the most relevant shops.
[0324] 3.3 Providing Results
[0325] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[0326] 4. Collecting user feedback
[0327] 4.1 Inputting Feedback
[0328] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[0329] 4.2 Sending Feedback
[0330] The device sends the collected feedback to the server.
[0331] 4.3 Saving Feedback
[0332] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[0333] 5. Providing solutions for businesses
[0334] 5.1 Implementation of Data Analysis
[0335] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[0336] 5.2 Report Generation
[0337] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[0338] 5.3 Provision of Reports
[0339] Businesses can make strategic decisions by referring to reports provided by the server.
[0340] For example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server will list highly-rated ramen restaurants that meet the conditions and display them on the terminal. Furthermore, if the user enters "This ramen restaurant seems to have a good atmosphere," the emotion engine recognizes this positive emotion and uses it to improve the accuracy of the recommendations. Subsequently, the user can provide feedback on the restaurants they visited, which can then be used to improve the accuracy of the recommendation algorithm for the next time.
[0341] The following describes the processing flow.
[0342] Step 1:
[0343] The server periodically accesses major review sites (e.g., Tabelog, Google Reviews, Twitter, etc.) and retrieves review data using APIs or web scraping techniques.
[0344] Step 2:
[0345] The server temporarily stores the acquired review data in a database. This data includes the review content, rating score, and posting date and time.
[0346] Step 3:
[0347] The server performs a cleansing process on the review data stored in the temporary database. Specifically, this involves removing noisy data, eliminating duplicate data, and imputing missing values.
[0348] Step 4:
[0349] The server standardizes the cleansed data. It unifies the format of data collected from different review sites (e.g., rating score scales and date / time formats).
[0350] Step 5:
[0351] The server stores standardized review data in a persistent database. This data can then be used later for user suggestions and analysis.
[0352] Step 6:
[0353] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on the device.
[0354] Step 7:
[0355] The server retrieves past search history and user behavior data from the database, in addition to the user's input conditions.
[0356] Step 8:
[0357] The server uses an emotion engine to recognize emotions from user input and past history. Text analysis technology is used to extract emotions from the text entered by the user.
[0358] Step 9:
[0359] The server uses machine learning algorithms to integrate and analyze the user's past data, current input conditions, and emotions to profile the individual user's preferences and emotions.
[0360] Step 10:
[0361] The server searches a persistent database for stores that match the user's preferences and emotions. This search takes into account the user's input criteria, preference profile, and emotion recognition results.
[0362] Step 11:
[0363] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the results based on the user's criteria and perceived sentiment, leaving only the most relevant shops.
[0364] Step 12:
[0365] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[0366] Step 13:
[0367] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[0368] Step 14:
[0369] The device sends the collected feedback to the server.
[0370] Step 15:
[0371] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[0372] Step 16:
[0373] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[0374] Step 17:
[0375] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[0376] Step 18:
[0377] The server uploads the report generated based on the analysis results to the business operator's dashboard, making it accessible to the business operator.
[0378] Step 19:
[0379] Businesses refer to reports provided by the server to make strategic decisions. This enables effective marketing based on user preferences and the selection of new store locations.
[0380] (Example 2)
[0381] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0382] Traditional systems suffer from insufficient collection of customer reviews and a lack of accuracy due to the use of unstandardized data. Furthermore, they are unable to properly analyze user preferences and emotions, making it difficult to recommend the most suitable stores to users. Additionally, inadequate utilization of feedback prevents improvements in future recommendations, making it difficult to provide effective solutions for businesses.
[0383] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0384] In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing user preferences and emotions based on user input information and past history, means for suggesting the most suitable stores based on the analysis results, means for collecting and storing user feedback, means for providing solutions for businesses based on the accumulated data, means for regularly accessing word-of-mouth sites on a daily basis and obtaining word-of-mouth data using APIs or web scraping technology, means for performing noise reduction, duplicate removal, and missing value imputation on the word-of-mouth data and converting it into a unified format, means for profiling user preferences and emotions using machine learning algorithms, means for using feedback data to improve the accuracy of the next recommendation algorithm, and means for performing trend analysis for businesses and generating reports for strategic decision-making. This enables highly accurate collection and standardization of word-of-mouth data and analysis of user preferences and emotions, as well as the suggestion of the most suitable stores, improved recommendation accuracy utilizing feedback, and the provision of effective solutions for businesses.
[0385] "Word-of-mouth information" refers to evaluations and opinions posted online by users about specific services or stores.
[0386] "Standardization" is the process of converting data from different formats or types into a unified format.
[0387] "Storage" means saving data to a database or storage device so that it can be referenced and used later.
[0388] "User preferences" refer to specific conditions or attributes that users like (e.g., types of food or budget).
[0389] "Emotions" refer to the psychological states and feelings extracted from a user's statements and actions.
[0390] "Analysis" is the process of extracting meaning and patterns from collected data using statistical and machine learning methods.
[0391] A "proposal" is to present the optimal option based on the information collected and analyzed.
[0392] "Feedback" refers to the evaluations and opinions that users provide after using a particular service or store.
[0393] A "solution" refers to suggestions for improvement and optimization provided to businesses based on collected and analyzed data.
[0394] "Access" refers to the act of connecting to a specific website or database and obtaining the necessary information.
[0395] "API" stands for Application Programming Interface, and refers to a mechanism for exchanging data between different software programs.
[0396] "Web scraping" refers to the technique of automatically obtaining the content of web pages on the internet using a program.
[0397] "Noise reduction" is the process of removing unnecessary or inaccurate information from collected data.
[0398] "Duplicate removal" is the process of removing duplicate data when multiple instances of the same content exist.
[0399] "Missing value imputation" refers to a technique for filling in gaps in incomplete data with appropriate values.
[0400] A "machine learning algorithm" refers to an algorithm that learns patterns from data and uses them for prediction and classification.
[0401] "Profiling" is the process of analyzing the characteristics and patterns of a specific subject (in this case, a user) to create a model or profile.
[0402] A "recommendation algorithm" refers to a computational method used to present users with appropriate options based on past data and feedback.
[0403] "Trend analysis" is the process of analyzing data to understand trends and patterns in fluctuations.
[0404] A "report" refers to a document that summarizes analysis results and proposed solutions, and it contains specific data and conclusions.
[0405] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[0406] To implement this system, the following hardware and software will be used. The server will run Python programs to access major review sites, using APIs or web scraping techniques (e.g., BeautifulSoup or Selenium). MySQL will be used for database management, and Pandas and Scikit-Learn will be used for data processing and machine learning.
[0407] Collection and standardization of word-of-mouth information
[0408] The server periodically accesses the APIs of major review sites using a Python program. If the API is unavailable, it performs web scraping using BeautifulSoup or Selenium. The retrieved review data is stored in a temporary database in JSON format, and then the Pandas library is used to remove noise, duplicate data, and impute missing values. Finally, the data, which is in different formats, is converted to a unified format and permanently stored in a MySQL database.
[0409] Analysis of user preferences and emotions
[0410] The user enters their desired criteria (e.g., type of ramen, location, budget) into an input form on the terminal. The server retrieves the user's past search history and input information from a database and analyzes the user's preferences and emotions using Pandas and an emotion engine. For emotion recognition, a natural language processing library (e.g., NLTK) is used to extract emotions from the user's input text. Based on this data, a machine learning algorithm is executed using Scikit-Learn to profile the user's preferences and emotions.
[0411] Suggestions for the optimal store location
[0412] The server searches the database of reviews for restaurants that match the user's preferences and emotions. It then calculates a suitability score, sorts the restaurants in descending order, and ranks them by their highest score. Filtering is also performed based on the user's criteria and perceived emotions. The final restaurant list is sent to the terminal and displayed to the user.
[0413] Collecting and storing user feedback
[0414] Users input their impressions and ratings of the shops they visit via their devices and send them to the server as feedback. The server stores this in a persistent database and uses it to improve the accuracy of the recommendation algorithm for future visits.
[0415] Providing solutions for businesses
[0416] The server analyzes accumulated word-of-mouth data and feedback to understand user behavior and trends. Data mining tools are used for the analysis, and based on the results, reports are generated regarding new store location selection and menu optimization. These reports are created in PDF format using a template engine and provided to businesses.
[0417] For example, if a user enters criteria such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station" into their device, the server searches its database for highly-rated ramen restaurants that meet these criteria and displays a list on the device. If the user enters "This ramen restaurant seems to have a good atmosphere," the emotion engine recognizes this positive emotion and uses it to improve the accuracy of the recommendations. The user then provides feedback about the restaurant they visited, which the server saves to help improve the accuracy of the recommendation algorithm for the next time. Businesses can then receive reports based on this data to make strategic decisions.
[0418] Example of a prompt:
[0419] Please explain the following process when a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," and they feel that a particular ramen shop has a good atmosphere, then the system suggests recommended ramen shops based on those conditions.
[0420] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0421] Step 1: Access the review site
[0422] The server periodically accesses the APIs of major review sites using a Python program. If the APIs are unavailable, it performs web scraping using BeautifulSoup or Selenium. Specifically, the server runs a scheduled job at 2 AM every day to access the target sites and retrieve data. The input is the URL of the site to be accessed, and the output is the retrieved review data.
[0423] Step 2: Obtaining customer review data
[0424] The server retrieves review data (review content, rating score, posting date, etc.) from the accessed website and stores it in a temporary database. Specifically, the server saves the retrieved data in JSON format and records the data retrieval time as a log. The input is a command to retrieve review data, and the output is the review data stored in the temporary database.
[0425] Step 3: Data cleansing and standardization
[0426] The server cleanses the review data stored in a temporary database. It removes noisy data, eliminates duplicates, imputes missing values, and converts data in different formats to a unified format. Specifically, the server uses the Pandas library to cleanse and standardize the data, and then saves the cleaned data to a new table. The input is the review data in the temporary database, and the output is the standardized data.
[0427] Step 4: Data Permanent Storage
[0428] The server stores cleansed and standardized review data in a persistent database. Specifically, the server inserts the standardized data into a MySQL database and creates indexes to speed up queries. The input is standardized review data, and the output is the data stored in the persistent database.
[0429] Step 5: Enter user conditions
[0430] The user enters their desired conditions (e.g., type of ramen, location, budget) into the input form on their device. Specifically, the user enters the conditions into the input form and presses the "Search" button, which then submits the conditions. The input is the user's desired conditions, and the output is the condition data sent from the device to the server.
[0431] Step 6: Referencing User History
[0432] The server retrieves the user's past search history and input information from the database to understand the user's preferences. Specifically, the server queries and retrieves past search queries and browsing history based on the user's ID. The input is the user's ID, and the output is the past search history retrieved from the database.
[0433] Step 7: Emotion recognition by the emotion engine
[0434] The server uses an emotion engine to recognize emotions from user input and past history. Specifically, the server uses a natural language processing library (such as NLTK) to extract emotions from the text entered by the user. The input is the user's input and past history, and the output is the recognized emotion data.
[0435] Step 8: Integrated Analysis of Preferences and Feelings
[0436] The server uses machine learning algorithms (such as Scikit-Learn) to analyze and integrate the user's past data, current input conditions, and sentiment to perform profiling. Specifically, the server extracts features that represent the user's characteristics and runs a clustering algorithm to create a profile. The input is the user's past data, current input conditions, and sentiment data, and the output is the user's profile data.
[0437] Step 9: Find a suitable store
[0438] The server searches for stores that match the user's preferences and emotions from the review data in the database. Specifically, the server queries user profiles and store data to generate a list of highly suitable stores. The input is user profile data and store data, and the output is a list of suitable stores.
[0439] Step 10: Ranking and Filtering
[0440] The server creates a list of stores based on the search results and ranks them in descending order of their rating scores. It also filters the list based on user criteria and perceived sentiment, leaving only the most relevant stores. Specifically, the server calculates a relevance score, sorts it in descending order, and then filters it according to the specified criteria. The input is a list of suitable stores, and the output is a filtered list of stores.
[0441] Step 11: Providing Results
[0442] The terminal displays a list of the most suitable stores received from the server to the user. Specifically, the terminal renders the list in HTML format and displays it in a user-friendly format. The input is the list of stores sent from the server, and the output is the list of stores displayed to the user.
[0443] Step 12: Entering User Feedback
[0444] After visiting a suggested store, users provide feedback, including their impressions and ratings, through a terminal. Specifically, users enter their feedback into an input form and press the "Submit" button. The input is the user's feedback, and the output is the feedback data sent from the terminal to the server.
[0445] Step 13: Submitting Feedback
[0446] The device sends the collected feedback to the server. Specifically, the device sends the feedback data to the server via an HTTP POST request. The input is the user's feedback data, and the output is the feedback data sent to the server.
[0447] Step 14: Saving Feedback
[0448] The server stores the received feedback in a persistent database. Specifically, it inserts new feedback into the database and updates the associated indexes. The input is the feedback data sent from the terminal, and the output is the feedback data stored in the persistent database.
[0449] Step 15: Perform data analysis
[0450] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends. Specifically, the server periodically runs batch jobs and performs trend analysis using data mining tools. The input is accumulated word-of-mouth data and feedback data, and the output is the analysis results.
[0451] Step 16: Generate Report
[0452] The server generates reports on new store location selection and menu optimization based on the analysis results. Specifically, the server uses a template engine to generate the reports and exports them in PDF format. The input is the analysis results, and the output is the generated report.
[0453] Step 17: Submitting the report
[0454] Businesses can make strategic decisions by referring to reports provided by the server. Specifically, businesses log in to the server's dashboard and download or view the latest reports. The input is the reports stored on the server, and the output is the downloaded or viewed reports.
[0455] (Application Example 2)
[0456] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".
[0457] Conventional store recommendation systems often failed to adequately consider user preferences and emotions, resulting in suggested stores frequently failing to meet user expectations. Furthermore, the efficient collection of real-time user feedback and the provision of business-oriented solutions utilizing this data were insufficient. Moreover, advanced analysis utilizing generative AI models was necessary, and there was a need for effective implementation methods of this technology.
[0458] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing the user's preferences and emotions based on the user's input information and past history, means for suggesting the optimal store based on the analysis results, means for collecting and storing user feedback, means for providing business solutions based on the accumulated data, means for displaying the suggestion results in real time using a smartphone and smart glasses, means for using a generative AI model for data analysis of business solutions, and means for inputting into the generative AI model using prompt sentences and obtaining analysis results. This makes it possible to suggest the optimal store based on the user's preferences and emotions, and enables real-time feedback collection and effective provision of business solutions.
[0459] "Customer reviews" refer to information posted online by users who have actually visited stores or services and shared their evaluations and impressions.
[0460] "Standardization" is the process of unifying information and data provided in different formats into a consistent format.
[0461] "User input information" refers to information that users provide to the system, such as the type of store, location, budget, and other desired conditions.
[0462] "Past history" refers to data such as the user's search history and selected stores from when they previously used the system.
[0463] "User preferences" refer to information and patterns that indicate a user's tastes and preferences.
[0464] "Emotions" refer to psychological responses and moods extracted from text entered by the user and past data.
[0465] "Analysis results" refer to information obtained as a result of data analysis based on user preferences, emotions, and other factors.
[0466] "Feedback" refers to the evaluations and opinions that users provide after visiting a suggested store.
[0467] "Solutions for businesses" refer to information and reports that enable businesses to make strategic decisions based on accumulated data.
[0468] A "smartphone" is a portable information terminal that can connect to the internet and use a variety of applications.
[0469] "Smart glasses" are glasses-type wearable devices that incorporate electronic devices and are capable of displaying information and processing data.
[0470] A "generative AI model" is a model that uses artificial intelligence algorithms to analyze data and make decisions or predictions.
[0471] A "prompt statement" is a set of instructions or questions given to a generative AI model to cause it to perform analysis or processing.
[0472] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data. Specific embodiments of this invention are described below.
[0473] Hardware and software to be used
[0474] server
[0475] 1. Collection and standardization of word-of-mouth information
[0476] The server periodically accesses major review sites to retrieve review data. If an API is available, it uses the API; otherwise, it employs web scraping techniques (e.g., Python, BeautifulSoup). This data includes review content, rating scores, and posting dates.
[0477] The acquired data is stored in a temporary database and then cleansed (removes noisy data, eliminates duplicate data, and imputes missing values) and standardized (converts data in different formats to a unified format) (e.g., Pandas).
[0478] Standardized data is stored in a persistent database (e.g., MongoDB, PostgreSQL).
[0479] 2. User preferences and sentiment analysis
[0480] The server retrieves the user's past history from the database based on the user's entered preferences (e.g., store type, location, budget).
[0481] We use an emotion engine (e.g., Google Cloud Natural Language API, BERT model) to recognize emotions from user input and past history.
[0482] We use machine learning algorithms (e.g., TensorFlow, PyTorch) to comprehensively analyze user preferences and emotions and suggest the most suitable stores.
[0483] 3. Collecting and storing feedback
[0484] The server collects and stores feedback that users provide after their visit. This data is used to improve the accuracy of the next recommendation algorithm.
[0485] 4. Providing solutions for businesses
[0486] The server analyzes accumulated data to understand user behavior and trends. Based on these results, it generates reports on selecting locations for new stores and optimizing menus.
[0487] Data analysis is performed using a generative AI model, prompts are used to input data into the model, and the analysis results are obtained.
[0488] terminal
[0489] 1. Smartphones and smart glasses
[0490] It accepts user input and sends it to the server.
[0491] The system displays a real-time list of the best stores received from the server. The list includes the store name, rating score, review summary, and location.
[0492] The system also provides a feature that allows users to enter feedback after their visit.
[0493] Specific example
[0494] The following are some specific scenario examples.
[0495] text
[0496] User: I'm looking for a good ramen restaurant in Sapporo. My budget is under 1000 yen, and it would be great if it's within a 10-minute walk from the station. A nice atmosphere would be a bonus.
[0497] AI Response: Our recommended Sapporo ramen restaurant is "Ramen Taisho". It has a rating score of 4.7, and many reviews praise its pleasant atmosphere. The prices are reasonable, and it's an 8-minute walk from the station. You can check the map from the link below.
[0498] Feedback: Please share your thoughts using the form below after your visit. This will help us improve our recommendation algorithm in the future.
[0499] In this way, we can provide optimal store recommendations based on user preferences and emotions, collect real-time feedback, and deliver effective solutions for businesses.
[0500] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0501] Step 1:
[0502] Gathering word-of-mouth information
[0503] The server accesses major review sites and retrieves review data. Input requires the URL of the site to be accessed and its API key, while output is the retrieved review data (review content, rating score, posting date, etc.). Specific operations include API requests and web scraping (Python, BeautifulSoup).
[0504] Step 2:
[0505] Data cleansing and standardization
[0506] The server cleanses and standardizes the review data stored in the temporary database. The input is the review data from the temporary database, and the output is the cleansed and standardized data. Specifically, it removes noisy data, eliminates duplicate data, and imputes missing values (using Pandas).
[0507] Step 3:
[0508] Persistent data storage
[0509] The server stores the cleansed and standardized data in a persistent database. Standardized word-of-mouth data is required as input, and the stored data is returned as output. Specifically, this involves insert operations into MongoDB or PostgreSQL.
[0510] Step 4:
[0511] User input of conditions and retrieval of past history
[0512] The terminal receives user preferences (e.g., store type, location, budget, etc.) as input and sends it to the server. The server receives the input information and retrieves past history from the database. The output includes the user's preferences and past history. Specifically, it accepts input through the user interface and executes SQL queries.
[0513] Step 5:
[0514] Emotion analysis
[0515] The server analyzes user sentiment based on user input and past history. It requires user input text and past history as input, and outputs user sentiment data. Specifically, it performs text analysis using the Google Cloud Natural Language API and the BERT model.
[0516] Step 6:
[0517] Integrated analysis of preferences and emotions
[0518] The server uses machine learning algorithms to comprehensively analyze user preferences and emotions. Inputs include user preferences, past history, and emotional data, and output is a list of optimal stores. Specifically, it performs model inference using TensorFlow or PyTorch.
[0519] Step 7:
[0520] Suggestions for the optimal store location
[0521] The server searches for, ranks, and filters the best stores based on the analysis results. It requires the results of the integrated analysis as input and outputs a filtered list of the best stores. Specifically, it uses database queries and ranking algorithms.
[0522] Step 8:
[0523] Providing information to users
[0524] The terminal displays a list of optimal stores received from the server to the user. The input is the list of optimal stores sent from the server, and the output is the information displayed to the user. Specifically, it performs display processing on the user interface.
[0525] Step 9:
[0526] Gathering feedback
[0527] Users provide feedback via their device after their visit. The input requires user feedback information, and the output is feedback data. Specifically, data collection is performed through a feedback input form.
[0528] Step 10:
[0529] Save feedback
[0530] The server receives feedback sent from the terminal and stores it in the database. Feedback information is required as input, and the stored feedback data is obtained as output. Specifically, this involves performing an insert operation into the database.
[0531] Step 11:
[0532] Data analysis for business solutions
[0533] The server analyzes accumulated word-of-mouth data and user feedback to provide solutions for businesses. It requires accumulated data as input and outputs analysis results and reports. Specifically, it performs data analysis using a generative AI model and inputs data into the model using prompts to obtain analysis results.
[0534] For example, the following can be used as a prompt:
[0535] text
[0536] User: I'm looking for a good ramen restaurant in Sapporo. My budget is under 1000 yen, and it would be great if it's within a 10-minute walk from the station. A nice atmosphere would be a bonus.
[0537] AI Response: Our recommended Sapporo ramen restaurant is "Ramen Taisho". It has a rating score of 4.7, and many reviews praise its pleasant atmosphere. The prices are reasonable, and it's an 8-minute walk from the station. You can check the map from the link below.
[0538] Feedback: Please share your thoughts using the form below after your visit. This will help us improve our recommendation algorithm in the future.
[0539] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0540] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0541] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0542] [Second Embodiment]
[0543] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0544] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0545] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0546] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0547] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0548] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0549] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0550] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0551] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0552] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0553] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0554] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0555] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on user preferences. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[0556] The specific form of implementing this system is described below.
[0557] 1. Collection and standardization of word-of-mouth information
[0558] 1.1 Access to review sites
[0559] The server periodically accesses major review sites. This access is done using APIs (Application Programming Interfaces), or, if APIs are unavailable, by using web scraping techniques.
[0560] 1.2 Acquisition of customer review data
[0561] The server automatically retrieves review data from each site and stores it in a temporary database. This data includes review content, rating scores, and posting dates.
[0562] 1.3 Data Cleansing and Standardization
[0563] The server performs a cleansing process (removing noise data and imputing missing values) on the review data stored in the temporary database, and then standardizes it (converting data in different formats to a unified format).
[0564] 1.4 Persistent Data Storage
[0565] The server stores standardized data in this database. This database will later be used for making suggestions to users and for analysis.
[0566] 2. User preference analysis
[0567] 2.1 User Input Conditions
[0568] Users enter their desired conditions, such as the type of ramen, location, and budget, into an input form on their device.
[0569] 2.2 Referencing User History
[0570] The server retrieves the user's past search history and input information from the database to understand the user's preferences.
[0571] 2.3 Conducting a preference analysis
[0572] The server uses machine learning algorithms to analyze the user's past data and current input conditions, profiling the preferences of individual users.
[0573] 3. Shop proposals
[0574] 3.1 Searching for suitable stores
[0575] The server searches for restaurants that match the user's preferences based on review data in the database.
[0576] 3.2 Ranking and Filtering
[0577] The server ranks businesses in order of highest rating based on search results and filters them according to the user's criteria.
[0578] 3.3 Providing Results
[0579] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[0580] 4. Collecting user feedback
[0581] 4.1 Inputting Feedback
[0582] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[0583] 4.2 Sending Feedback
[0584] The device sends the collected feedback to the server.
[0585] 4.3 Saving Feedback
[0586] The server stores the feedback in a database and uses it to create future suggestions and generate reports for businesses.
[0587] 5. Providing solutions for businesses
[0588] 5.1 Implementation of Data Analysis
[0589] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[0590] 5.2 Report Generation
[0591] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[0592] 5.3 Provision of Reports
[0593] Businesses can make strategic decisions by referring to reports provided by the server.
[0594] Through this configuration, the system can efficiently suggest the most suitable ramen restaurants to users and provide data-driven solutions to businesses. For example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server will list highly-rated ramen restaurants that meet these conditions and display them on the terminal. Subsequently, feedback from the user about the restaurants they visited can be provided to help improve the accuracy of the recommendation algorithm for the next time.
[0595] The following describes the processing flow.
[0596] Step 1:
[0597] The server periodically accesses major review sites (e.g., Tabelog, Google Reviews, Twitter, etc.) and retrieves review data using APIs or web scraping techniques.
[0598] Step 2:
[0599] The server temporarily stores the acquired review data in a database. This data includes the review content, rating score, and posting date and time.
[0600] Step 3:
[0601] The server performs a cleansing process on the review data stored in the temporary database. Specifically, this involves removing noisy data, eliminating duplicate data, and imputing missing values.
[0602] Step 4:
[0603] The server standardizes the cleansed data. It unifies the format of data collected from different review sites (e.g., rating score scales and date / time formats).
[0604] Step 5:
[0605] The server stores standardized review data in a persistent database. This data can then be used later for user suggestions and analysis.
[0606] Step 6:
[0607] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on the device.
[0608] Step 7:
[0609] The server retrieves past search history and user behavior data from the database, in addition to the user's input conditions.
[0610] Step 8:
[0611] The server uses machine learning algorithms to analyze user preferences. Based on the user's past behavior data and current input conditions, it profiles the user's tendencies.
[0612] Step 9:
[0613] The server searches a persistent database for stores that match the user's preferences. This search takes into account the user's input criteria and preference profile.
[0614] Step 10:
[0615] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the list based on the user's criteria, leaving only the most relevant shops.
[0616] Step 11:
[0617] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[0618] Step 12:
[0619] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[0620] Step 13:
[0621] The device sends the user's input to the server.
[0622] Step 14:
[0623] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[0624] Step 15:
[0625] The server analyzes accumulated word-of-mouth data and user feedback to generate reports on new store location selection and menu optimization.
[0626] Step 16:
[0627] The server uploads the report generated based on the analysis results to the business operator's dashboard, making it accessible to the business operator.
[0628] Step 17:
[0629] Businesses refer to reports provided by the server to make strategic decisions. This enables effective marketing based on user preferences and the selection of new store locations.
[0630] (Example 1)
[0631] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0632] Conventional information provision systems struggled to efficiently collect and analyze online word-of-mouth information and provide highly accurate suggestions based on individual user preferences. Furthermore, they were not adequately able to effectively accumulate user feedback and provide it as valuable solutions for businesses. This resulted in challenges in improving user satisfaction while simultaneously enhancing the competitiveness of businesses.
[0633] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0634] In this invention, the server includes means for collecting information from multiple information sites on the internet, means for standardizing and cleaning the collected information and storing it in a database, means for analyzing user preferences based on user input conditions and past operation history, means for presenting optimal options based on the analysis results, means for collecting and storing evaluations and opinions from users, and means for providing solutions for businesses based on the accumulated data. This enables highly accurate suggestions based on user preferences, and further enables the provision of valuable data-driven solutions to businesses based on accumulated feedback.
[0635] "Multiple information sites on the internet" refers to websites that provide various kinds of information on the web, and includes blogs, word-of-mouth sites, review sites, etc.
[0636] "Means of collecting information" refers to methods for obtaining necessary data from websites on the internet, and includes data acquisition using APIs and web scraping techniques.
[0637] Standardization is the process of converting data from different formats into a unified format, with the aim of ensuring data consistency and comparability.
[0638] "Cleansing" refers to the process of removing inaccurate, inappropriate, or incomplete information from data to make it accurate and reliable.
[0639] A "database" refers to a system used to systematically store, manage, and retrieve information, and relational databases are commonly used.
[0640] "User input conditions" refer to the preferences and requirements that users explicitly enter into the system, such as the type of ramen, location, and budget.
[0641] "Past operation history" refers to the history of searches and selections that a user has made using the system in the past.
[0642] "Methods for analyzing preferences" refer to methods for analyzing user preferences and trends using machine learning algorithms and data analysis techniques.
[0643] "Means of presenting optimal options" refers to methods of providing users with the most suitable options and suggestions based on the results of user preference analysis.
[0644] "Means of collecting evaluations and opinions" refers to methods for obtaining feedback from users, and includes online forms and surveys.
[0645] "Solutions for businesses" refers to services that analyze accumulated data and provide reports and suggestions that businesses can use to improve their marketing strategies and services.
[0646] This invention is a system that analyzes user preferences based on word-of-mouth information collected from internet information sites and presents optimal options, and further accumulates user feedback to provide solutions for businesses. The embodiments for carrying out this invention will be described in detail below.
[0647] The entire system is primarily composed of three components: servers, terminals, and users.
[0648] 1. Collection and standardization of word-of-mouth information
[0649] The server periodically accesses multiple information sites on the internet. For access, it uses APIs where available, and for sites without APIs, it employs web scraping techniques. Specifically, it can utilize libraries such as Python's BeautifulSoup and Scrapy.
[0650] The server stores user reviews obtained from each information site in a temporary database. This data includes review content, rating scores, posting dates, and other information.
[0651] Next, the server cleanses the data stored in the temporary database, removing noisy data and imputing missing values, and then standardizes data in different formats. Data manipulation libraries such as Pandas and NumPy are used for this.
[0652] Standardized data is persistently stored in this database by the server. This database will later be used for making suggestions to users and for analysis.
[0653] 2. User preference analysis
[0654] The user enters their desired conditions, such as the type of ramen, location, and budget, into an input form on their device. This form is created using HTML, CSS, and JavaScript.
[0655] The server retrieves the user's past search history and input information from a database, and uses this to understand the user's preferences. The retrieved data is used to profile the user's individual preferences.
[0656] The server uses machine learning algorithms (e.g., Scikit-learn, TensorFlow) to analyze the user's past data and current input conditions. This analysis allows for detailed profiling of individual user preferences.
[0657] 3. Shop proposals
[0658] The server searches for businesses that match the user's preferences from the user review data in the database. The search results are ranked in order of highest rating based on the user's criteria.
[0659] Next, the server filters the search results based on the user's criteria. This filtering creates a list of shops that best match the user's desired conditions.
[0660] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[0661] 4. Collecting user feedback
[0662] After visiting a suggested store, users provide feedback, including their impressions and ratings, via a terminal. This input form is built using HTML, CSS, and JavaScript.
[0663] The device sends the collected feedback to the server.
[0664] The server stores the submitted feedback in a database and uses it to create future suggestions and generate reports for businesses.
[0665] 5. Providing solutions for businesses
[0666] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[0667] Based on the analysis results, the server generates a report on selecting a location for a new store and optimizing the menu. This report includes detailed analysis results of user preferences and feedback.
[0668] Businesses can refer to reports provided by the server and make strategic decisions.
[0669] The above describes a specific embodiment for carrying out the present invention. As a specific example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server lists highly-rated ramen restaurants that meet the conditions and displays them on the terminal. Subsequently, the server can provide feedback on the restaurants the user has visited, which can be used to improve the accuracy of the recommendation algorithm for the next time.
[0670] Examples of prompts for a generative AI model include the following:
[0671] "What are some recommended Sapporo ramen restaurants that are under 1000 yen and within a 10-minute walk from the station?"
[0672] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0673] Step 1: Access the review site
[0674] The server regularly accesses major review sites (e.g., Tabelog, Gurunavi) to collect user reviews daily. If an API is available, it uses that; otherwise, it performs web scraping using Python's BeautifulSoup or Scrapy. Specifically, it accesses the specified URL and retrieves the target HTML content.
[0675] Input: List of URLs for review websites
[0676] Output: HTML content obtained from each review site
[0677] Step 2: Obtaining customer review data
[0678] The server extracts review information from the retrieved HTML content and stores it in a temporary database. Specifically, it performs HTML parsing to extract data such as review content, rating score, and posting date.
[0679] Input: Retrieved HTML content
[0680] Output: Extracted review data (stored in a temporary database)
[0681] Step 3: Data cleansing and standardization
[0682] The server performs data cleansing on the review data stored in the temporary database. This involves removing noisy data and imputing missing values, and then converting data in different formats to a unified format. Specifically, it uses the Pandas library to manipulate dataframes.
[0683] Input: Raw data stored in a temporary database
[0684] Output: Cleansed and standardized data (stored in this database)
[0685] Step 4: Data Permanent Storage
[0686] The server persistently stores standardized data in this database. This database uses a relational database such as MySQL. This allows the data to be used later for making suggestions to users and for data analysis.
[0687] Input: Cleansed and standardized data
[0688] Output: Persistent data stored in this database
[0689] Step 5: Enter user conditions
[0690] The user enters their desired criteria into an input form on their device. For example, they might specify the type of ramen, location, budget, etc. This input form is created using HTML, CSS, and JavaScript.
[0691] Input: User-specified desired conditions
[0692] Output: Data entered into the form (sent to the server)
[0693] Step 6: Referencing User History
[0694] The server retrieves the user's past search history and input information from the database. Specifically, it queries relevant historical data based on the user ID.
[0695] Input: User ID
[0696] Output: User's past search history and input information
[0697] Step 7: Conduct a preference analysis
[0698] The server uses machine learning algorithms to analyze the user's past data and current input conditions. Specifically, it uses Scikit-learn and TensorFlow to profile the user's preferences.
[0699] Input: User's past data, current input conditions
[0700] Output: User preference profile
[0701] Step 8: Find a suitable store
[0702] The server searches for restaurants that match the user's preferences from the review data in the database. It retrieves matching entries using SQL queries.
[0703] Input: User preference profiles, review database
[0704] Output: List of suitable stores
[0705] Step 9: Ranking and Filtering
[0706] The server ranks businesses in descending order of their ratings based on search results and filters them according to the user's criteria. Specifically, it sorts businesses in descending order of their rating scores and then narrows them down by criteria such as budget and distance.
[0707] Input: List of stores in search results, user's preferences
[0708] Output: Filtered and ranked list of stores
[0709] Step 10: Providing Results
[0710] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[0711] Input: List of ranked stores
[0712] Output: Store list displayed to the user
[0713] Step 11: Entering Feedback
[0714] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[0715] Input: Feedback information for the store
[0716] Output: Feedback information (sent to server)
[0717] Step 12: Submit Feedback
[0718] The device sends the collected feedback to the server.
[0719] Input: Feedback information
[0720] Output: Feedback information sent to the server
[0721] Step 13: Saving Feedback
[0722] The server stores the feedback in a database and uses it to create future suggestions and generate reports for businesses.
[0723] Input: Submitted feedback information
[0724] Output: Feedback data stored in the database
[0725] Step 14: Perform data analysis
[0726] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends. Specifically, it uses data mining techniques and machine learning models.
[0727] Input: Accumulated word-of-mouth data, feedback data
[0728] Output: Analysis results regarding trends and developments
[0729] Step 15: Report Generation
[0730] The server generates reports on new store location selection and menu optimization based on the analysis results. These reports include detailed analysis of user preferences and feedback.
[0731] Input: Analysis results regarding trends and developments
[0732] Output: Report for businesses
[0733] Step 16: Submitting the report
[0734] Businesses refer to reports provided by the server to make strategic decisions.
[0735] Input: Business Report
[0736] Output: Providing information for strategic decision-making
[0737] (Application Example 1)
[0738] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0739] Traditional store recommendation systems failed to accurately analyze user preferences, resulting in low accuracy in suggesting optimal stores. Furthermore, inefficient feedback collection and analysis for businesses led to a lack of information necessary for strategic decision-making. Additionally, limited user interfaces on smartphones and other devices meant a lack of user-friendly features.
[0740] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0741] In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing user preferences based on user input information and past history, means for suggesting the most suitable store based on the analysis results, means for collecting and storing user feedback, means for providing solutions for businesses based on the accumulated data, means for displaying on terminals such as smartphones, smart glasses, and head-mounted displays, means for having a function to search for stores that meet user criteria and a function to rank them in order of highest rating, means for profiling user preferences using machine learning algorithms, means for generating data analysis reports for businesses, and means for creating prompt sentences to be input to a generated AI model. This makes it possible to suggest the most suitable store to the user with high accuracy and to provide effective feedback and data analysis to businesses.
[0742] "Word-of-mouth information" refers to evaluations and reviews written by ordinary users based on their experiences using a particular service or product.
[0743] "Means of collection" refers to the software or hardware functions used to acquire specific information and incorporate it into a system.
[0744] "Means of standardization and preservation" refers to processes and systems for converting data acquired in different formats into a consistent format and storing it for a long period of time.
[0745] "Methods for analyzing user preferences" refer to algorithms and technologies that reveal a user's preferences and tastes based on their past behavioral history and input information.
[0746] "A means of suggesting the optimal store" refers to a function that recommends the most suitable store for the user based on the analysis results.
[0747] "Means for collecting and storing feedback" refers to the process or system of receiving ratings and opinions from users and storing them in a database.
[0748] "Means of providing solutions for businesses" refers to functions that provide businesses with information and suggestions to help them make management decisions and develop marketing strategies, based on collected data and analysis results.
[0749] "Means of displaying information on a device" refers to an interface that uses devices such as smartphones, smart glasses, and head-mounted displays to visually provide information to the user.
[0750] A "search function" refers to the process or system of investigating information within a database based on specific criteria and finding the relevant data.
[0751] A "ranking function" is an algorithm that evaluates multiple options based on specific criteria and assigns them a ranking.
[0752] A "machine learning algorithm" is an algorithm that allows a computer to automatically learn from data and perform predictions and classifications.
[0753] "Profiling techniques" refer to technologies and algorithms used to analyze user data and identify the characteristics and patterns of individual users.
[0754] "Means for generating data analysis reports" refers to the process or system that analyzes accumulated data and outputs the analysis results as a report.
[0755] A "generative AI model" is a model that has been trained and developed using artificial intelligence technology to perform a specific task.
[0756] A "prompt" is a question or instruction presented to a user or system to request specific input.
[0757] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on user preferences. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[0758] System Configuration
[0759] This system consists of the following components:
[0760] 1. Server:
[0761] We regularly access major review sites and collect review data. If an API is available, we use it; otherwise, we use web scraping techniques.
[0762] The collected word-of-mouth data is stored in a temporary database, and a cleansing process is performed to remove noise data and impute missing values.
[0763] Standardized data will be stored in this database.
[0764] Based on user input information and past history, machine learning algorithms (such as Scikit-learn and TensorFlow) are used to profile the user's preferences.
[0765] Collect user feedback and store it in a database.
[0766] Based on accumulated data, we perform data analysis for businesses and provide the analysis results as a report.
[0767] 2. Terminal:
[0768] The system uses smartphones, smart glasses, head-mounted displays, etc., to display a list of the most suitable stores to the user. The list includes the store name, rating score, review summary, and location.
[0769] It provides an interface for users to input feedback on the stores they have visited.
[0770] 3. User:
[0771] Enter your desired conditions (e.g., "Sapporo ramen," "budget under 1000 yen," "within a 10-minute walk from the station") into the terminal.
[0772] Visit the suggested store and enter your feedback into the terminal.
[0773] Specific description of the system's operation
[0774] 1. Gathering word-of-mouth information:
[0775] The server retrieves review data from review sites using libraries such as BeautifulSoup and stores it in a temporary database. If an API is available, it retrieves data via a RESTful API.
[0776] 2. Data cleansing and standardization:
[0777] The server cleanses the collected review data and converts data in different formats into a unified format. This is done using a Python library, and the results are stored in this database.
[0778] 3. User preference analysis:
[0779] The server uses machine learning algorithms to analyze user input and past history to profile user preferences.
[0780] 4. Gathering store suggestions and feedback:
[0781] The server searches for the most suitable stores from the user review data in the database, ranks them in order of highest rating, and displays them on the user's device. Users provide feedback after their visit, which is used to improve the accuracy of the recommendation algorithm for the next time.
[0782] 5. Data analysis reports for businesses:
[0783] The server analyzes accumulated word-of-mouth data and user feedback to generate reports on new store location selection and menu optimization. These reports are provided to businesses to assist in strategic decision-making.
[0784] Specific examples and prompt statements
[0785] Specific example:
[0786] User A enters "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station" into the terminal. The server searches its database for restaurants that meet the criteria, ranks them in descending order of rating, and displays them on the terminal. After visiting, User A enters feedback into the terminal, which is used to improve the accuracy of the recommendation algorithm for the next time.
[0787] Example of a prompt:
[0788] Please recommend highly-rated ramen restaurants that fit the following criteria: "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station."
[0789] "Based on your past ramen restaurant visits and ratings, please recommend a suitable ramen restaurant for this occasion."
[0790] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0791] Step 1: Gathering word-of-mouth information
[0792] The server periodically accesses major review sites to collect review data. The input data consists of the URLs of the review sites and authentication information for accessing them. The server uses web scraping tools such as BeautifulSoup and RESTful APIs to retrieve review data from each site and stores it in a temporary database. The output is the collected raw review data.
[0793] Step 2: Data cleansing
[0794] The server performs a cleansing process on the raw review data stored in a temporary database. The input data is the collected raw review data. It removes noisy data and imputes missing values, extracting only the necessary information. Specific operations include filtering inappropriate reviews and standardizing the data. The output is cleansed, clean review data.
[0795] Step 3: Standardization of the book
[0796] The server standardizes the cleansed review data. The input data is clean, purified review data. It converts data in different formats to a unified format and stores it in this database. Specifically, this includes data formatting to match the database schema. The output is standardized data.
[0797] Step 4: User preference analysis
[0798] The server analyzes user preferences using machine learning algorithms based on user input information and past history. Input data includes user search criteria and past history data. The algorithms used are Scikit-learn and TensorFlow, which profile user preferences. Specifically, classification models and clustering analyses are performed for each user. The output is a user preference profile.
[0799] Step 5: Store search and suggestions
[0800] The server searches for the most suitable restaurants from the database of reviews based on the user's preference profile and criteria. The input data consists of the user's preference profile and search criteria. The restaurants are ranked and filtered in order of highest rating. Specifically, a search algorithm is used to retrieve restaurants that match the criteria and assign scores. The output is a list of the most suitable restaurants.
[0801] Step 6: Displaying the results
[0802] The terminal displays a list of the best stores received from the server to the user. The input data is the list of best stores sent from the server. Specifically, it displays store information in list format using a UI interface. The output is the list of stores displayed to the user.
[0803] Step 7: Gathering Feedback
[0804] Users input feedback about the stores they visited via a terminal. The input data is the user's feedback information. The terminal sends this feedback to the server. The output is the collected feedback information.
[0805] Step 8: Saving Feedback
[0806] The server stores user feedback in a database. The input data is user feedback information. The specific operation involves adding the feedback data to the database. The output is the saved feedback data.
[0807] Step 9: Data Analysis and Report Generation
[0808] The server analyzes accumulated word-of-mouth data and user feedback to generate data analysis reports for businesses. The input data consists of accumulated word-of-mouth data and user feedback. Specifically, it performs data mining and statistical analysis, and compiles the analysis results into a report. The output is an analysis report for businesses.
[0809] Step 10: Creating a Generative AI Model and Prompt Text
[0810] The server uses a generative AI model based on the information entered by the user to generate prompt messages. The input data consists of the user's conditions and search history. Specifically, the AI model generates the most appropriate questions and instructions based on the conditions. The output is the prompt message.
[0811] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0812] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[0813] The specific form of implementing this system is described below.
[0814] 1. Collection and standardization of word-of-mouth information
[0815] 1.1 Access to review sites
[0816] The server periodically accesses major review websites. This access is done using APIs (Application Programming Interfaces), or, if APIs are unavailable, by using web scraping techniques.
[0817] 1.2 Acquisition of customer review data
[0818] The server automatically retrieves review data from each site and stores it in a temporary database. This data includes review content, rating scores, and posting dates.
[0819] 1.3 Data Cleansing and Standardization
[0820] The server performs a cleansing process on the word-of-mouth data stored in the temporary database (removing noise data, removing duplicate data, and imputing missing values), and then standardizes it (converting data in different formats to a unified format).
[0821] 1.4 Persistent Data Storage
[0822] The server stores standardized review data in a persistent database. This database is later used for user suggestions and analysis.
[0823] 2. User preferences and sentiment analysis
[0824] 2.1 User Input Conditions
[0825] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on their device.
[0826] 2.2 Referencing User History
[0827] The server retrieves the user's past search history and input information from the database to understand the user's preferences.
[0828] 2.3 Emotion Recognition by an Emotion Engine
[0829] The server uses an emotion engine to recognize emotions from user input and past history. Text analysis technology is used to extract emotions from the text entered by the user.
[0830] 2.4 Integrated Analysis of Preferences and Feelings
[0831] The server uses machine learning algorithms to integrate and analyze the user's past data, current input conditions, and emotions to profile the individual user's preferences and emotions.
[0832] 3. Shop proposals
[0833] 3.1 Searching for suitable stores
[0834] The server searches for shops that match the user's preferences and feelings based on review data in the database.
[0835] 3.2 Ranking and Filtering
[0836] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the results based on the user's criteria and perceived sentiment, leaving only the most relevant shops.
[0837] 3.3 Providing Results
[0838] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[0839] 4. Collecting user feedback
[0840] 4.1 Inputting Feedback
[0841] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[0842] 4.2 Sending Feedback
[0843] The device sends the collected feedback to the server.
[0844] 4.3 Saving Feedback
[0845] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[0846] 5. Providing solutions for businesses
[0847] 5.1 Implementation of Data Analysis
[0848] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[0849] 5.2 Report Generation
[0850] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[0851] 5.3 Provision of Reports
[0852] Businesses can make strategic decisions by referring to reports provided by the server.
[0853] For example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server will list highly-rated ramen restaurants that meet the conditions and display them on the terminal. Furthermore, if the user enters "This ramen restaurant seems to have a good atmosphere," the emotion engine recognizes this positive emotion and uses it to improve the accuracy of the recommendations. Subsequently, the user can provide feedback on the restaurants they visited, which can then be used to improve the accuracy of the recommendation algorithm for the next time.
[0854] The following describes the processing flow.
[0855] Step 1:
[0856] The server periodically accesses major review sites (e.g., Tabelog, Google Reviews, Twitter, etc.) and retrieves review data using APIs or web scraping techniques.
[0857] Step 2:
[0858] The server temporarily stores the acquired review data in a database. This data includes the review content, rating score, and posting date and time.
[0859] Step 3:
[0860] The server performs a cleansing process on the review data stored in the temporary database. Specifically, this involves removing noisy data, eliminating duplicate data, and imputing missing values.
[0861] Step 4:
[0862] The server standardizes the cleansed data. It unifies the format of data collected from different review sites (e.g., rating score scales and date / time formats).
[0863] Step 5:
[0864] The server stores standardized review data in a persistent database. This data can then be used later for user suggestions and analysis.
[0865] Step 6:
[0866] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on the device.
[0867] Step 7:
[0868] The server retrieves past search history and user behavior data from the database, in addition to the user's input conditions.
[0869] Step 8:
[0870] The server uses an emotion engine to recognize emotions from user input and past history. Text analysis technology is used to extract emotions from the text entered by the user.
[0871] Step 9:
[0872] The server uses machine learning algorithms to integrate and analyze the user's past data, current input conditions, and emotions to profile the individual user's preferences and emotions.
[0873] Step 10:
[0874] The server searches a persistent database for stores that match the user's preferences and emotions. This search takes into account the user's input criteria, preference profile, and emotion recognition results.
[0875] Step 11:
[0876] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the results based on the user's criteria and perceived sentiment, leaving only the most relevant shops.
[0877] Step 12:
[0878] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[0879] Step 13:
[0880] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[0881] Step 14:
[0882] The device sends the collected feedback to the server.
[0883] Step 15:
[0884] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[0885] Step 16:
[0886] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[0887] Step 17:
[0888] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[0889] Step 18:
[0890] The server uploads the report generated based on the analysis results to the business operator's dashboard, making it accessible to the business operator.
[0891] Step 19:
[0892] Businesses refer to reports provided by the server to make strategic decisions. This enables effective marketing based on user preferences and the selection of new store locations.
[0893] (Example 2)
[0894] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0895] Traditional systems suffer from insufficient collection of customer reviews and a lack of accuracy due to the use of unstandardized data. Furthermore, they are unable to properly analyze user preferences and emotions, making it difficult to recommend the most suitable stores to users. Additionally, inadequate utilization of feedback prevents improvements in future recommendations, making it difficult to provide effective solutions for businesses.
[0896] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0897] In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing user preferences and emotions based on user input information and past history, means for suggesting the most suitable stores based on the analysis results, means for collecting and storing user feedback, means for providing solutions for businesses based on the accumulated data, means for regularly accessing word-of-mouth sites on a daily basis and obtaining word-of-mouth data using APIs or web scraping technology, means for performing noise reduction, duplicate removal, and missing value imputation on the word-of-mouth data and converting it into a unified format, means for profiling user preferences and emotions using machine learning algorithms, means for using feedback data to improve the accuracy of the next recommendation algorithm, and means for performing trend analysis for businesses and generating reports for strategic decision-making. This enables highly accurate collection and standardization of word-of-mouth data and analysis of user preferences and emotions, as well as the suggestion of the most suitable stores, improved recommendation accuracy utilizing feedback, and the provision of effective solutions for businesses.
[0898] "Word-of-mouth information" refers to evaluations and opinions posted online by users about specific services or stores.
[0899] "Standardization" is the process of converting data from different formats or types into a unified format.
[0900] "Storage" means saving data to a database or storage device so that it can be referenced and used later.
[0901] "User preferences" refer to specific conditions or attributes that users like (e.g., types of food or budget).
[0902] "Emotions" refer to the psychological states and feelings extracted from a user's statements and actions.
[0903] "Analysis" is the process of extracting meaning and patterns from collected data using statistical and machine learning methods.
[0904] A "proposal" is to present the optimal option based on the information collected and analyzed.
[0905] "Feedback" refers to the evaluations and opinions that users provide after using a particular service or store.
[0906] A "solution" refers to suggestions for improvement and optimization provided to businesses based on collected and analyzed data.
[0907] "Access" refers to the act of connecting to a specific website or database and obtaining the necessary information.
[0908] "API" stands for Application Programming Interface, and refers to a mechanism for exchanging data between different software programs.
[0909] "Web scraping" refers to the technique of automatically obtaining the content of web pages on the internet using a program.
[0910] "Noise reduction" is the process of removing unnecessary or inaccurate information from collected data.
[0911] "Duplicate removal" is the process of removing duplicate data when multiple instances of the same content exist.
[0912] "Missing value imputation" refers to a technique for filling in gaps in incomplete data with appropriate values.
[0913] A "machine learning algorithm" refers to an algorithm that learns patterns from data and uses them for prediction and classification.
[0914] "Profiling" is the process of analyzing the characteristics and patterns of a specific subject (in this case, a user) to create a model or profile.
[0915] A "recommendation algorithm" refers to a computational method used to present users with appropriate options based on past data and feedback.
[0916] "Trend analysis" is the process of analyzing data to understand trends and patterns in fluctuations.
[0917] A "report" refers to a document that summarizes analysis results and proposed solutions, and it contains specific data and conclusions.
[0918] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[0919] To implement this system, the following hardware and software will be used. The server will run Python programs to access major review sites, using APIs or web scraping techniques (e.g., BeautifulSoup or Selenium). MySQL will be used for database management, and Pandas and Scikit-Learn will be used for data processing and machine learning.
[0920] Collection and standardization of word-of-mouth information
[0921] The server periodically accesses the APIs of major review sites using a Python program. If the API is unavailable, it performs web scraping using BeautifulSoup or Selenium. The retrieved review data is stored in a temporary database in JSON format, and then the Pandas library is used to remove noise, duplicate data, and impute missing values. Finally, the data, which is in different formats, is converted to a unified format and permanently stored in a MySQL database.
[0922] Analysis of user preferences and emotions
[0923] The user enters their desired criteria (e.g., type of ramen, location, budget) into an input form on the terminal. The server retrieves the user's past search history and input information from a database and analyzes the user's preferences and emotions using Pandas and an emotion engine. For emotion recognition, a natural language processing library (e.g., NLTK) is used to extract emotions from the user's input text. Based on this data, a machine learning algorithm is executed using Scikit-Learn to profile the user's preferences and emotions.
[0924] Suggestions for the optimal store location
[0925] The server searches the database of reviews for restaurants that match the user's preferences and emotions. It then calculates a suitability score, sorts the restaurants in descending order, and ranks them by their highest score. Filtering is also performed based on the user's criteria and perceived emotions. The final restaurant list is sent to the terminal and displayed to the user.
[0926] Collecting and storing user feedback
[0927] Users input their impressions and ratings of the shops they visit via their devices and send them to the server as feedback. The server stores this in a persistent database and uses it to improve the accuracy of the recommendation algorithm for future visits.
[0928] Providing solutions for businesses
[0929] The server analyzes accumulated word-of-mouth data and feedback to understand user behavior and trends. Data mining tools are used for the analysis, and based on the results, reports are generated regarding new store location selection and menu optimization. These reports are created in PDF format using a template engine and provided to businesses.
[0930] For example, if a user enters criteria such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station" into their device, the server searches its database for highly-rated ramen restaurants that meet these criteria and displays a list on the device. If the user enters "This ramen restaurant seems to have a good atmosphere," the emotion engine recognizes this positive emotion and uses it to improve the accuracy of the recommendations. The user then provides feedback about the restaurant they visited, which the server saves to help improve the accuracy of the recommendation algorithm for the next time. Businesses can then receive reports based on this data to make strategic decisions.
[0931] Example of a prompt:
[0932] Please explain the following process when a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," and they feel that a particular ramen shop has a good atmosphere, then the system suggests recommended ramen shops based on those conditions.
[0933] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0934] Step 1: Access the review site
[0935] The server periodically accesses the APIs of major review sites using a Python program. If the APIs are unavailable, it performs web scraping using BeautifulSoup or Selenium. Specifically, the server runs a scheduled job at 2 AM every day to access the target sites and retrieve data. The input is the URL of the site to be accessed, and the output is the retrieved review data.
[0936] Step 2: Obtaining customer review data
[0937] The server retrieves review data (review content, rating score, posting date, etc.) from the accessed website and stores it in a temporary database. Specifically, the server saves the retrieved data in JSON format and records the data retrieval time as a log. The input is a command to retrieve review data, and the output is the review data stored in the temporary database.
[0938] Step 3: Data cleansing and standardization
[0939] The server cleanses the review data stored in a temporary database. It removes noisy data, eliminates duplicates, imputes missing values, and converts data in different formats to a unified format. Specifically, the server uses the Pandas library to cleanse and standardize the data, and then saves the cleaned data to a new table. The input is the review data in the temporary database, and the output is the standardized data.
[0940] Step 4: Data Permanent Storage
[0941] The server stores cleansed and standardized review data in a persistent database. Specifically, the server inserts the standardized data into a MySQL database and creates indexes to speed up queries. The input is standardized review data, and the output is the data stored in the persistent database.
[0942] Step 5: Enter user conditions
[0943] The user enters their desired conditions (e.g., type of ramen, location, budget) into the input form on their device. Specifically, the user enters the conditions into the input form and presses the "Search" button, which then submits the conditions. The input is the user's desired conditions, and the output is the condition data sent from the device to the server.
[0944] Step 6: Referencing User History
[0945] The server retrieves the user's past search history and input information from the database to understand the user's preferences. Specifically, the server queries and retrieves past search queries and browsing history based on the user's ID. The input is the user's ID, and the output is the past search history retrieved from the database.
[0946] Step 7: Emotion recognition by the emotion engine
[0947] The server uses an emotion engine to recognize emotions from user input and past history. Specifically, the server uses a natural language processing library (such as NLTK) to extract emotions from the text entered by the user. The input is the user's input and past history, and the output is the recognized emotion data.
[0948] Step 8: Integrated Analysis of Preferences and Feelings
[0949] The server uses machine learning algorithms (such as Scikit-Learn) to analyze and integrate the user's past data, current input conditions, and sentiment to perform profiling. Specifically, the server extracts features that represent the user's characteristics and runs a clustering algorithm to create a profile. The input is the user's past data, current input conditions, and sentiment data, and the output is the user's profile data.
[0950] Step 9: Find a suitable store
[0951] The server searches for stores that match the user's preferences and emotions from the review data in the database. Specifically, the server queries user profiles and store data to generate a list of highly suitable stores. The input is user profile data and store data, and the output is a list of suitable stores.
[0952] Step 10: Ranking and Filtering
[0953] The server creates a list of stores based on the search results and ranks them in descending order of their rating scores. It also filters the list based on user criteria and perceived sentiment, leaving only the most relevant stores. Specifically, the server calculates a relevance score, sorts it in descending order, and then filters it according to the specified criteria. The input is a list of suitable stores, and the output is a filtered list of stores.
[0954] Step 11: Providing Results
[0955] The terminal displays a list of the most suitable stores received from the server to the user. Specifically, the terminal renders the list in HTML format and displays it in a user-friendly format. The input is the list of stores sent from the server, and the output is the list of stores displayed to the user.
[0956] Step 12: Entering User Feedback
[0957] After visiting a suggested store, users provide feedback, including their impressions and ratings, through a terminal. Specifically, users enter their feedback into an input form and press the "Submit" button. The input is the user's feedback, and the output is the feedback data sent from the terminal to the server.
[0958] Step 13: Submitting Feedback
[0959] The device sends the collected feedback to the server. Specifically, the device sends the feedback data to the server via an HTTP POST request. The input is the user's feedback data, and the output is the feedback data sent to the server.
[0960] Step 14: Saving Feedback
[0961] The server stores the received feedback in a persistent database. Specifically, it inserts new feedback into the database and updates the associated indexes. The input is the feedback data sent from the terminal, and the output is the feedback data stored in the persistent database.
[0962] Step 15: Perform data analysis
[0963] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends. Specifically, the server periodically runs batch jobs and performs trend analysis using data mining tools. The input is accumulated word-of-mouth data and feedback data, and the output is the analysis results.
[0964] Step 16: Generate Report
[0965] The server generates reports on new store location selection and menu optimization based on the analysis results. Specifically, the server uses a template engine to generate the reports and exports them in PDF format. The input is the analysis results, and the output is the generated report.
[0966] Step 17: Submitting the report
[0967] Businesses can make strategic decisions by referring to reports provided by the server. Specifically, businesses log in to the server's dashboard and download or view the latest reports. The input is the reports stored on the server, and the output is the downloaded or viewed reports.
[0968] (Application Example 2)
[0969] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0970] Conventional store recommendation systems often failed to adequately consider user preferences and emotions, resulting in suggested stores frequently failing to meet user expectations. Furthermore, the efficient collection of real-time user feedback and the provision of business-oriented solutions utilizing this data were insufficient. Moreover, advanced analysis utilizing generative AI models was necessary, and there was a need for effective implementation methods of this technology.
[0971] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing the user's preferences and emotions based on the user's input information and past history, means for suggesting the optimal store based on the analysis results, means for collecting and storing user feedback, means for providing business solutions based on the accumulated data, means for displaying the suggestion results in real time using a smartphone and smart glasses, means for using a generative AI model for data analysis of business solutions, and means for inputting into the generative AI model using prompt sentences and obtaining analysis results. This makes it possible to suggest the optimal store based on the user's preferences and emotions, and enables real-time feedback collection and effective provision of business solutions.
[0972] "Customer reviews" refer to information posted online by users who have actually visited stores or services and shared their evaluations and impressions.
[0973] "Standardization" is the process of unifying information and data provided in different formats into a consistent format.
[0974] "User input information" refers to information that users provide to the system, such as the type of store, location, budget, and other desired conditions.
[0975] "Past history" refers to data such as the user's search history and selected stores from when they previously used the system.
[0976] "User preferences" refer to information and patterns that indicate a user's tastes and preferences.
[0977] "Emotions" refer to psychological responses and moods extracted from text entered by the user and past data.
[0978] "Analysis results" refer to information obtained as a result of data analysis based on user preferences, emotions, and other factors.
[0979] "Feedback" refers to the evaluations and opinions that users provide after visiting a suggested store.
[0980] "Solutions for businesses" refer to information and reports that enable businesses to make strategic decisions based on accumulated data.
[0981] A "smartphone" is a portable information terminal that can connect to the internet and use a variety of applications.
[0982] "Smart glasses" are glasses-type wearable devices that incorporate electronic devices and are capable of displaying information and processing data.
[0983] A "generative AI model" is a model that uses artificial intelligence algorithms to analyze data and make decisions or predictions.
[0984] A "prompt statement" is a set of instructions or questions given to a generative AI model to cause it to perform analysis or processing.
[0985] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data. Specific embodiments of this invention are described below.
[0986] Hardware and software to be used
[0987] server
[0988] 1. Collection and standardization of word-of-mouth information
[0989] The server periodically accesses major review sites to retrieve review data. If an API is available, it uses the API; otherwise, it employs web scraping techniques (e.g., Python, BeautifulSoup). This data includes review content, rating scores, and posting dates.
[0990] The acquired data is stored in a temporary database and then cleansed (removes noisy data, eliminates duplicate data, and imputes missing values) and standardized (converts data in different formats to a unified format) (e.g., Pandas).
[0991] Standardized data is stored in a persistent database (e.g., MongoDB, PostgreSQL).
[0992] 2. User preferences and sentiment analysis
[0993] The server retrieves the user's past history from the database based on the user's entered preferences (e.g., store type, location, budget).
[0994] We use an emotion engine (e.g., Google Cloud Natural Language API, BERT model) to recognize emotions from user input and past history.
[0995] We use machine learning algorithms (e.g., TensorFlow, PyTorch) to comprehensively analyze user preferences and emotions and suggest the most suitable stores.
[0996] 3. Collecting and storing feedback
[0997] The server collects and stores feedback that users provide after their visit. This data is used to improve the accuracy of the next recommendation algorithm.
[0998] 4. Providing solutions for businesses
[0999] The server analyzes accumulated data to understand user behavior and trends. Based on these results, it generates reports on selecting locations for new stores and optimizing menus.
[1000] Data analysis is performed using a generative AI model, prompts are used to input data into the model, and the analysis results are obtained.
[1001] terminal
[1002] 1. Smartphones and smart glasses
[1003] It accepts user input and sends it to the server.
[1004] The system displays a real-time list of the best stores received from the server. The list includes the store name, rating score, review summary, and location.
[1005] The system also provides a feature that allows users to enter feedback after their visit.
[1006] Specific example
[1007] The following are some specific scenario examples.
[1008] text
[1009] User: I'm looking for a good ramen restaurant in Sapporo. My budget is under 1000 yen, and it would be great if it's within a 10-minute walk from the station. A nice atmosphere would be a bonus.
[1010] AI Response: Our recommended Sapporo ramen restaurant is "Ramen Taisho". It has a rating score of 4.7, and many reviews praise its pleasant atmosphere. The prices are reasonable, and it's an 8-minute walk from the station. You can check the map from the link below.
[1011] Feedback: Please share your thoughts using the form below after your visit. This will help us improve our recommendation algorithm in the future.
[1012] In this way, we can provide optimal store recommendations based on user preferences and emotions, collect real-time feedback, and deliver effective solutions for businesses.
[1013] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1014] Step 1:
[1015] Gathering word-of-mouth information
[1016] The server accesses major review sites and retrieves review data. Input requires the URL of the site to be accessed and its API key, while output is the retrieved review data (review content, rating score, posting date, etc.). Specific operations include API requests and web scraping (Python, BeautifulSoup).
[1017] Step 2:
[1018] Data cleansing and standardization
[1019] The server cleanses and standardizes the review data stored in the temporary database. The input is the review data from the temporary database, and the output is the cleansed and standardized data. Specifically, it removes noisy data, eliminates duplicate data, and imputes missing values (using Pandas).
[1020] Step 3:
[1021] Persistent data storage
[1022] The server stores the cleansed and standardized data in a persistent database. Standardized word-of-mouth data is required as input, and the stored data is returned as output. Specifically, this involves insert operations into MongoDB or PostgreSQL.
[1023] Step 4:
[1024] User input of conditions and retrieval of past history
[1025] The terminal receives user preferences (e.g., store type, location, budget, etc.) as input and sends it to the server. The server receives the input information and retrieves past history from the database. The output includes the user's preferences and past history. Specifically, it accepts input through the user interface and executes SQL queries.
[1026] Step 5:
[1027] Emotion analysis
[1028] The server analyzes user sentiment based on user input and past history. It requires user input text and past history as input, and outputs user sentiment data. Specifically, it performs text analysis using the Google Cloud Natural Language API and the BERT model.
[1029] Step 6:
[1030] Integrated analysis of preferences and emotions
[1031] The server uses machine learning algorithms to comprehensively analyze user preferences and emotions. Inputs include user preferences, past history, and emotional data, and output is a list of optimal stores. Specifically, it performs model inference using TensorFlow or PyTorch.
[1032] Step 7:
[1033] Suggestions for the optimal store location
[1034] The server searches for, ranks, and filters the best stores based on the analysis results. It requires the results of the integrated analysis as input and outputs a filtered list of the best stores. Specifically, it uses database queries and ranking algorithms.
[1035] Step 8:
[1036] Providing information to users
[1037] The terminal displays a list of optimal stores received from the server to the user. The input is the list of optimal stores sent from the server, and the output is the information displayed to the user. Specifically, it performs display processing on the user interface.
[1038] Step 9:
[1039] Gathering feedback
[1040] Users provide feedback via their device after their visit. The input requires user feedback information, and the output is feedback data. Specifically, data collection is performed through a feedback input form.
[1041] Step 10:
[1042] Save feedback
[1043] The server receives feedback sent from the terminal and stores it in the database. Feedback information is required as input, and the stored feedback data is obtained as output. Specifically, this involves performing an insert operation into the database.
[1044] Step 11:
[1045] Data analysis for business solutions
[1046] The server analyzes accumulated word-of-mouth data and user feedback to provide solutions for businesses. It requires accumulated data as input and outputs analysis results and reports. Specifically, it performs data analysis using a generative AI model and inputs data into the model using prompts to obtain analysis results.
[1047] For example, the following can be used as a prompt:
[1048] text
[1049] User: I'm looking for a good ramen restaurant in Sapporo. My budget is under 1000 yen, and it would be great if it's within a 10-minute walk from the station. A nice atmosphere would be a bonus.
[1050] AI Response: Our recommended Sapporo ramen restaurant is "Ramen Taisho". It has a rating score of 4.7, and many reviews praise its pleasant atmosphere. The prices are reasonable, and it's an 8-minute walk from the station. You can check the map from the link below.
[1051] Feedback: Please share your thoughts using the form below after your visit. This will help us improve our recommendation algorithm in the future.
[1052] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1053] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1054] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[1055] [Third Embodiment]
[1056] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[1057] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[1058] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1059] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[1060] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1061] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1062] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1063] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1064] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1065] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1066] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1067] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[1068] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on user preferences. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[1069] The specific form of implementing this system is described below.
[1070] 1. Collection and standardization of word-of-mouth information
[1071] 1.1 Access to review sites
[1072] The server periodically accesses major review sites. This access is done using APIs (Application Programming Interfaces), or, if APIs are unavailable, by using web scraping techniques.
[1073] 1.2 Acquisition of customer review data
[1074] The server automatically retrieves review data from each site and stores it in a temporary database. This data includes review content, rating scores, and posting dates.
[1075] 1.3 Data Cleansing and Standardization
[1076] The server performs a cleansing process (removing noise data and imputing missing values) on the review data stored in the temporary database, and then standardizes it (converting data in different formats to a unified format).
[1077] 1.4 Persistent Data Storage
[1078] The server stores standardized data in this database. This database will later be used for making suggestions to users and for analysis.
[1079] 2. User preference analysis
[1080] 2.1 User Input Conditions
[1081] Users enter their desired conditions, such as the type of ramen, location, and budget, into an input form on their device.
[1082] 2.2 Referencing User History
[1083] The server retrieves the user's past search history and input information from the database to understand the user's preferences.
[1084] 2.3 Conducting a preference analysis
[1085] The server uses machine learning algorithms to analyze the user's past data and current input conditions, profiling the preferences of individual users.
[1086] 3. Shop proposals
[1087] 3.1 Searching for suitable stores
[1088] The server searches for restaurants that match the user's preferences based on review data in the database.
[1089] 3.2 Ranking and Filtering
[1090] The server ranks businesses in order of highest rating based on search results and filters them according to the user's criteria.
[1091] 3.3 Providing Results
[1092] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[1093] 4. Collecting user feedback
[1094] 4.1 Inputting Feedback
[1095] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[1096] 4.2 Sending Feedback
[1097] The device sends the collected feedback to the server.
[1098] 4.3 Saving Feedback
[1099] The server stores the feedback in a database and uses it to create future suggestions and generate reports for businesses.
[1100] 5. Providing solutions for businesses
[1101] 5.1 Implementation of Data Analysis
[1102] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[1103] 5.2 Report Generation
[1104] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[1105] 5.3 Provision of Reports
[1106] Businesses can make strategic decisions by referring to reports provided by the server.
[1107] Through this configuration, the system can efficiently suggest the most suitable ramen restaurants to users and provide data-driven solutions to businesses. For example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server will list highly-rated ramen restaurants that meet these conditions and display them on the terminal. Subsequently, feedback from the user about the restaurants they visited can be provided to help improve the accuracy of the recommendation algorithm for the next time.
[1108] The following describes the processing flow.
[1109] Step 1:
[1110] The server periodically accesses major review sites (e.g., Tabelog, Google Reviews, Twitter, etc.) and retrieves review data using APIs or web scraping techniques.
[1111] Step 2:
[1112] The server temporarily stores the acquired review data in a database. This data includes the review content, rating score, and posting date and time.
[1113] Step 3:
[1114] The server performs a cleansing process on the review data stored in the temporary database. Specifically, this involves removing noisy data, eliminating duplicate data, and imputing missing values.
[1115] Step 4:
[1116] The server standardizes the cleansed data. It unifies the format of data collected from different review sites (e.g., rating score scales and date / time formats).
[1117] Step 5:
[1118] The server stores standardized review data in a persistent database. This data can then be used later for user suggestions and analysis.
[1119] Step 6:
[1120] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on the device.
[1121] Step 7:
[1122] The server retrieves past search history and user behavior data from the database, in addition to the user's input conditions.
[1123] Step 8:
[1124] The server uses machine learning algorithms to analyze user preferences. Based on the user's past behavior data and current input conditions, it profiles the user's tendencies.
[1125] Step 9:
[1126] The server searches a persistent database for stores that match the user's preferences. This search takes into account the user's input criteria and preference profile.
[1127] Step 10:
[1128] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the list based on the user's criteria, leaving only the most relevant shops.
[1129] Step 11:
[1130] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[1131] Step 12:
[1132] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[1133] Step 13:
[1134] The device sends the user's input to the server.
[1135] Step 14:
[1136] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[1137] Step 15:
[1138] The server analyzes accumulated word-of-mouth data and user feedback to generate reports on new store location selection and menu optimization.
[1139] Step 16:
[1140] The server uploads the report generated based on the analysis results to the business operator's dashboard, making it accessible to the business operator.
[1141] Step 17:
[1142] Businesses refer to reports provided by the server to make strategic decisions. This enables effective marketing based on user preferences and the selection of new store locations.
[1143] (Example 1)
[1144] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1145] Conventional information provision systems struggled to efficiently collect and analyze online word-of-mouth information and provide highly accurate suggestions based on individual user preferences. Furthermore, they were not adequately able to effectively accumulate user feedback and provide it as valuable solutions for businesses. This resulted in challenges in improving user satisfaction while simultaneously enhancing the competitiveness of businesses.
[1146] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1147] In this invention, the server includes means for collecting information from multiple information sites on the internet, means for standardizing and cleaning the collected information and storing it in a database, means for analyzing user preferences based on user input conditions and past operation history, means for presenting optimal options based on the analysis results, means for collecting and storing evaluations and opinions from users, and means for providing solutions for businesses based on the accumulated data. This enables highly accurate suggestions based on user preferences, and further enables the provision of valuable data-driven solutions to businesses based on accumulated feedback.
[1148] "Multiple information sites on the internet" refers to websites that provide various kinds of information on the web, and includes blogs, word-of-mouth sites, review sites, etc.
[1149] "Means of collecting information" refers to methods for obtaining necessary data from websites on the internet, and includes data acquisition using APIs and web scraping techniques.
[1150] Standardization is the process of converting data from different formats into a unified format, with the aim of ensuring data consistency and comparability.
[1151] "Cleansing" refers to the process of removing inaccurate, inappropriate, or incomplete information from data to make it accurate and reliable.
[1152] A "database" refers to a system used to systematically store, manage, and retrieve information, and relational databases are commonly used.
[1153] "User input conditions" refer to the preferences and requirements that users explicitly enter into the system, such as the type of ramen, location, and budget.
[1154] "Past operation history" refers to the history of searches and selections that a user has made using the system in the past.
[1155] "Methods for analyzing preferences" refer to methods for analyzing user preferences and trends using machine learning algorithms and data analysis techniques.
[1156] "Means of presenting optimal options" refers to methods of providing users with the most suitable options and suggestions based on the results of user preference analysis.
[1157] "Means of collecting evaluations and opinions" refers to methods for obtaining feedback from users, and includes online forms and surveys.
[1158] "Solutions for businesses" refers to services that analyze accumulated data and provide reports and suggestions that businesses can use to improve their marketing strategies and services.
[1159] This invention is a system that analyzes user preferences based on word-of-mouth information collected from internet information sites and presents optimal options, and further accumulates user feedback to provide solutions for businesses. The embodiments for carrying out this invention will be described in detail below.
[1160] The entire system is primarily composed of three components: servers, terminals, and users.
[1161] 1. Collection and standardization of word-of-mouth information
[1162] The server periodically accesses multiple information sites on the internet. For access, it uses APIs where available, and for sites without APIs, it employs web scraping techniques. Specifically, it can utilize libraries such as Python's BeautifulSoup and Scrapy.
[1163] The server stores user reviews obtained from each information site in a temporary database. This data includes review content, rating scores, posting dates, and other information.
[1164] Next, the server cleanses the data stored in the temporary database, removing noisy data and imputing missing values, and then standardizes data in different formats. Data manipulation libraries such as Pandas and NumPy are used for this.
[1165] Standardized data is persistently stored in this database by the server. This database will later be used for making suggestions to users and for analysis.
[1166] 2. User preference analysis
[1167] The user enters their desired conditions, such as the type of ramen, location, and budget, into an input form on their device. This form is created using HTML, CSS, and JavaScript.
[1168] The server retrieves the user's past search history and input information from a database, and uses this to understand the user's preferences. The retrieved data is used to profile the user's individual preferences.
[1169] The server uses machine learning algorithms (e.g., Scikit-learn, TensorFlow) to analyze the user's past data and current input conditions. This analysis allows for detailed profiling of individual user preferences.
[1170] 3. Shop proposals
[1171] The server searches for businesses that match the user's preferences from the user review data in the database. The search results are ranked in order of highest rating based on the user's criteria.
[1172] Next, the server filters the search results based on the user's criteria. This filtering creates a list of shops that best match the user's desired conditions.
[1173] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[1174] 4. Collecting user feedback
[1175] After visiting a suggested store, users provide feedback, including their impressions and ratings, via a terminal. This input form is built using HTML, CSS, and JavaScript.
[1176] The device sends the collected feedback to the server.
[1177] The server stores the submitted feedback in a database and uses it to create future suggestions and generate reports for businesses.
[1178] 5. Providing solutions for businesses
[1179] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[1180] Based on the analysis results, the server generates a report on selecting a location for a new store and optimizing the menu. This report includes detailed analysis results of user preferences and feedback.
[1181] Businesses can refer to reports provided by the server and make strategic decisions.
[1182] The above describes a specific embodiment for carrying out the present invention. As a specific example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server lists highly-rated ramen restaurants that meet the conditions and displays them on the terminal. Subsequently, the server can provide feedback on the restaurants the user has visited, which can be used to improve the accuracy of the recommendation algorithm for the next time.
[1183] Examples of prompts for a generative AI model include the following:
[1184] "What are some recommended Sapporo ramen restaurants that are under 1000 yen and within a 10-minute walk from the station?"
[1185] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1186] Step 1: Access the review site
[1187] The server regularly accesses major review sites (e.g., Tabelog, Gurunavi) to collect user reviews daily. If an API is available, it uses that; otherwise, it performs web scraping using Python's BeautifulSoup or Scrapy. Specifically, it accesses the specified URL and retrieves the target HTML content.
[1188] Input: List of URLs for review websites
[1189] Output: HTML content obtained from each review site
[1190] Step 2: Obtaining customer review data
[1191] The server extracts review information from the retrieved HTML content and stores it in a temporary database. Specifically, it performs HTML parsing to extract data such as review content, rating score, and posting date.
[1192] Input: Retrieved HTML content
[1193] Output: Extracted review data (stored in a temporary database)
[1194] Step 3: Data cleansing and standardization
[1195] The server performs data cleansing on the review data stored in the temporary database. This involves removing noisy data and imputing missing values, and then converting data in different formats to a unified format. Specifically, it uses the Pandas library to manipulate dataframes.
[1196] Input: Raw data stored in a temporary database
[1197] Output: Cleansed and standardized data (stored in this database)
[1198] Step 4: Data Permanent Storage
[1199] The server persistently stores standardized data in this database. This database uses a relational database such as MySQL. This allows the data to be used later for making suggestions to users and for data analysis.
[1200] Input: Cleansed and standardized data
[1201] Output: Persistent data stored in this database
[1202] Step 5: Enter user conditions
[1203] The user enters their desired criteria into an input form on their device. For example, they might specify the type of ramen, location, budget, etc. This input form is created using HTML, CSS, and JavaScript.
[1204] Input: User-specified desired conditions
[1205] Output: Data entered into the form (sent to the server)
[1206] Step 6: Referencing User History
[1207] The server retrieves the user's past search history and input information from the database. Specifically, it queries relevant historical data based on the user ID.
[1208] Input: User ID
[1209] Output: User's past search history and input information
[1210] Step 7: Conduct a preference analysis
[1211] The server uses machine learning algorithms to analyze the user's past data and current input conditions. Specifically, it uses Scikit-learn and TensorFlow to profile the user's preferences.
[1212] Input: User's past data, current input conditions
[1213] Output: User preference profile
[1214] Step 8: Find a suitable store
[1215] The server searches for restaurants that match the user's preferences from the review data in the database. It retrieves matching entries using SQL queries.
[1216] Input: User preference profiles, review database
[1217] Output: List of suitable stores
[1218] Step 9: Ranking and Filtering
[1219] The server ranks businesses in descending order of their ratings based on search results and filters them according to the user's criteria. Specifically, it sorts businesses in descending order of their rating scores and then narrows them down by criteria such as budget and distance.
[1220] Input: List of stores in search results, user's preferences
[1221] Output: Filtered and ranked list of stores
[1222] Step 10: Providing Results
[1223] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[1224] Input: List of ranked stores
[1225] Output: Store list displayed to the user
[1226] Step 11: Entering Feedback
[1227] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[1228] Input: Feedback information for the store
[1229] Output: Feedback information (sent to server)
[1230] Step 12: Submit Feedback
[1231] The device sends the collected feedback to the server.
[1232] Input: Feedback information
[1233] Output: Feedback information sent to the server
[1234] Step 13: Saving Feedback
[1235] The server stores the feedback in a database and uses it to create future suggestions and generate reports for businesses.
[1236] Input: Submitted feedback information
[1237] Output: Feedback data stored in the database
[1238] Step 14: Perform data analysis
[1239] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends. Specifically, it uses data mining techniques and machine learning models.
[1240] Input: Accumulated word-of-mouth data, feedback data
[1241] Output: Analysis results regarding trends and developments
[1242] Step 15: Report Generation
[1243] The server generates reports on new store location selection and menu optimization based on the analysis results. These reports include detailed analysis of user preferences and feedback.
[1244] Input: Analysis results regarding trends and developments
[1245] Output: Report for businesses
[1246] Step 16: Submitting the report
[1247] Businesses refer to reports provided by the server to make strategic decisions.
[1248] Input: Business Report
[1249] Output: Providing information for strategic decision-making
[1250] (Application Example 1)
[1251] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1252] Traditional store recommendation systems failed to accurately analyze user preferences, resulting in low accuracy in suggesting optimal stores. Furthermore, inefficient feedback collection and analysis for businesses led to a lack of information necessary for strategic decision-making. Additionally, limited user interfaces on smartphones and other devices meant a lack of user-friendly features.
[1253] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1254] In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing user preferences based on user input information and past history, means for suggesting the most suitable store based on the analysis results, means for collecting and storing user feedback, means for providing solutions for businesses based on the accumulated data, means for displaying on terminals such as smartphones, smart glasses, and head-mounted displays, means for having a function to search for stores that meet user criteria and a function to rank them in order of highest rating, means for profiling user preferences using machine learning algorithms, means for generating data analysis reports for businesses, and means for creating prompt sentences to be input to a generated AI model. This makes it possible to suggest the most suitable store to the user with high accuracy and to provide effective feedback and data analysis to businesses.
[1255] "Word-of-mouth information" refers to evaluations and reviews written by ordinary users based on their experiences using a particular service or product.
[1256] "Means of collection" refers to the software or hardware functions used to acquire specific information and incorporate it into a system.
[1257] "Means of standardization and preservation" refers to processes and systems for converting data acquired in different formats into a consistent format and storing it for a long period of time.
[1258] "Methods for analyzing user preferences" refer to algorithms and technologies that reveal a user's preferences and tastes based on their past behavioral history and input information.
[1259] "A means of suggesting the optimal store" refers to a function that recommends the most suitable store for the user based on the analysis results.
[1260] "Means for collecting and storing feedback" refers to the process or system of receiving ratings and opinions from users and storing them in a database.
[1261] "Means of providing solutions for businesses" refers to functions that provide businesses with information and suggestions to help them make management decisions and develop marketing strategies, based on collected data and analysis results.
[1262] "Means of displaying information on a device" refers to an interface that uses devices such as smartphones, smart glasses, and head-mounted displays to visually provide information to the user.
[1263] A "search function" refers to the process or system of investigating information within a database based on specific criteria and finding the relevant data.
[1264] A "ranking function" is an algorithm that evaluates multiple options based on specific criteria and assigns them a ranking.
[1265] A "machine learning algorithm" is an algorithm that allows a computer to automatically learn from data and perform predictions and classifications.
[1266] "Profiling techniques" refer to technologies and algorithms used to analyze user data and identify the characteristics and patterns of individual users.
[1267] "Means for generating data analysis reports" refers to the process or system that analyzes accumulated data and outputs the analysis results as a report.
[1268] A "generative AI model" is a model that has been trained and developed using artificial intelligence technology to perform a specific task.
[1269] A "prompt" is a question or instruction presented to a user or system to request specific input.
[1270] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on user preferences. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[1271] System Configuration
[1272] This system consists of the following components:
[1273] 1. Server:
[1274] We regularly access major review sites and collect review data. If an API is available, we use it; otherwise, we use web scraping techniques.
[1275] The collected word-of-mouth data is stored in a temporary database, and a cleansing process is performed to remove noise data and impute missing values.
[1276] Standardized data will be stored in this database.
[1277] Based on user input information and past history, machine learning algorithms (such as Scikit-learn and TensorFlow) are used to profile the user's preferences.
[1278] Collect user feedback and store it in a database.
[1279] Based on accumulated data, we perform data analysis for businesses and provide the analysis results as a report.
[1280] 2. Terminal:
[1281] The system uses smartphones, smart glasses, head-mounted displays, etc., to display a list of the most suitable stores to the user. The list includes the store name, rating score, review summary, and location.
[1282] It provides an interface for users to input feedback on the stores they have visited.
[1283] 3. User:
[1284] Enter your desired conditions (e.g., "Sapporo ramen," "budget under 1000 yen," "within a 10-minute walk from the station") into the terminal.
[1285] Visit the suggested store and enter your feedback into the terminal.
[1286] Specific description of the system's operation
[1287] 1. Gathering word-of-mouth information:
[1288] The server retrieves review data from review sites using libraries such as BeautifulSoup and stores it in a temporary database. If an API is available, it retrieves data via a RESTful API.
[1289] 2. Data cleansing and standardization:
[1290] The server cleanses the collected review data and converts data in different formats into a unified format. This is done using a Python library, and the results are stored in this database.
[1291] 3. User preference analysis:
[1292] The server uses machine learning algorithms to analyze user input and past history to profile user preferences.
[1293] 4. Gathering store suggestions and feedback:
[1294] The server searches for the most suitable stores from the user review data in the database, ranks them in order of highest rating, and displays them on the user's device. Users provide feedback after their visit, which is used to improve the accuracy of the recommendation algorithm for the next time.
[1295] 5. Data analysis reports for businesses:
[1296] The server analyzes accumulated word-of-mouth data and user feedback to generate reports on new store location selection and menu optimization. These reports are provided to businesses to assist in strategic decision-making.
[1297] Specific examples and prompt statements
[1298] Specific example:
[1299] User A enters "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station" into the terminal. The server searches its database for restaurants that meet the criteria, ranks them in descending order of rating, and displays them on the terminal. After visiting, User A enters feedback into the terminal, which is used to improve the accuracy of the recommendation algorithm for the next time.
[1300] Example of a prompt:
[1301] Please recommend highly-rated ramen restaurants that fit the following criteria: "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station."
[1302] "Based on your past ramen restaurant visits and ratings, please recommend a suitable ramen restaurant for this occasion."
[1303] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1304] Step 1: Gathering word-of-mouth information
[1305] The server periodically accesses major review sites to collect review data. The input data consists of the URLs of the review sites and authentication information for accessing them. The server uses web scraping tools such as BeautifulSoup and RESTful APIs to retrieve review data from each site and stores it in a temporary database. The output is the collected raw review data.
[1306] Step 2: Data cleansing
[1307] The server performs a cleansing process on the raw review data stored in a temporary database. The input data is the collected raw review data. It removes noisy data and imputes missing values, extracting only the necessary information. Specific operations include filtering inappropriate reviews and standardizing the data. The output is cleansed, clean review data.
[1308] Step 3: Standardization of the book
[1309] The server standardizes the cleansed review data. The input data is clean, purified review data. It converts data in different formats to a unified format and stores it in this database. Specifically, this includes data formatting to match the database schema. The output is standardized data.
[1310] Step 4: User preference analysis
[1311] The server analyzes user preferences using machine learning algorithms based on user input information and past history. Input data includes user search criteria and past history data. The algorithms used are Scikit-learn and TensorFlow, which profile user preferences. Specifically, classification models and clustering analyses are performed for each user. The output is a user preference profile.
[1312] Step 5: Store search and suggestions
[1313] The server searches for the most suitable restaurants from the database of reviews based on the user's preference profile and criteria. The input data consists of the user's preference profile and search criteria. The restaurants are ranked and filtered in order of highest rating. Specifically, a search algorithm is used to retrieve restaurants that match the criteria and assign scores. The output is a list of the most suitable restaurants.
[1314] Step 6: Displaying the results
[1315] The terminal displays a list of the best stores received from the server to the user. The input data is the list of best stores sent from the server. Specifically, it displays store information in list format using a UI interface. The output is the list of stores displayed to the user.
[1316] Step 7: Gathering Feedback
[1317] Users input feedback about the stores they visited via a terminal. The input data is the user's feedback information. The terminal sends this feedback to the server. The output is the collected feedback information.
[1318] Step 8: Saving Feedback
[1319] The server stores user feedback in a database. The input data is user feedback information. The specific operation involves adding the feedback data to the database. The output is the saved feedback data.
[1320] Step 9: Data Analysis and Report Generation
[1321] The server analyzes accumulated word-of-mouth data and user feedback to generate data analysis reports for businesses. The input data consists of accumulated word-of-mouth data and user feedback. Specifically, it performs data mining and statistical analysis, and compiles the analysis results into a report. The output is an analysis report for businesses.
[1322] Step 10: Creating a Generative AI Model and Prompt Text
[1323] The server uses a generative AI model based on the information entered by the user to generate prompt messages. The input data consists of the user's conditions and search history. Specifically, the AI model generates the most appropriate questions and instructions based on the conditions. The output is the prompt message.
[1324] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1325] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[1326] The specific form of implementing this system is described below.
[1327] 1. Collection and standardization of word-of-mouth information
[1328] 1.1 Access to review sites
[1329] The server periodically accesses major review websites. This access is done using APIs (Application Programming Interfaces), or, if APIs are unavailable, by using web scraping techniques.
[1330] 1.2 Acquisition of customer review data
[1331] The server automatically retrieves review data from each site and stores it in a temporary database. This data includes review content, rating scores, and posting dates.
[1332] 1.3 Data Cleansing and Standardization
[1333] The server performs a cleansing process on the word-of-mouth data stored in the temporary database (removing noise data, removing duplicate data, and imputing missing values), and then standardizes it (converting data in different formats to a unified format).
[1334] 1.4 Persistent Data Storage
[1335] The server stores standardized review data in a persistent database. This database is later used for user suggestions and analysis.
[1336] 2. User preferences and sentiment analysis
[1337] 2.1 User Input Conditions
[1338] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on their device.
[1339] 2.2 Referencing User History
[1340] The server retrieves the user's past search history and input information from the database to understand the user's preferences.
[1341] 2.3 Emotion Recognition by an Emotion Engine
[1342] The server uses an emotion engine to recognize emotions from user input and past history. Text analysis technology is used to extract emotions from the text entered by the user.
[1343] 2.4 Integrated Analysis of Preferences and Feelings
[1344] The server uses machine learning algorithms to integrate and analyze the user's past data, current input conditions, and emotions to profile the individual user's preferences and emotions.
[1345] 3. Shop proposals
[1346] 3.1 Searching for suitable stores
[1347] The server searches for shops that match the user's preferences and feelings based on review data in the database.
[1348] 3.2 Ranking and Filtering
[1349] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the results based on the user's criteria and perceived sentiment, leaving only the most relevant shops.
[1350] 3.3 Providing Results
[1351] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[1352] 4. Collecting user feedback
[1353] 4.1 Inputting Feedback
[1354] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[1355] 4.2 Sending Feedback
[1356] The device sends the collected feedback to the server.
[1357] 4.3 Saving Feedback
[1358] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[1359] 5. Providing solutions for businesses
[1360] 5.1 Implementation of Data Analysis
[1361] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[1362] 5.2 Report Generation
[1363] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[1364] 5.3 Provision of Reports
[1365] Businesses can make strategic decisions by referring to reports provided by the server.
[1366] For example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server will list highly-rated ramen restaurants that meet the conditions and display them on the terminal. Furthermore, if the user enters "This ramen restaurant seems to have a good atmosphere," the emotion engine recognizes this positive emotion and uses it to improve the accuracy of the recommendations. Subsequently, the user can provide feedback on the restaurants they visited, which can then be used to improve the accuracy of the recommendation algorithm for the next time.
[1367] The following describes the processing flow.
[1368] Step 1:
[1369] The server periodically accesses major review sites (e.g., Tabelog, Google Reviews, Twitter, etc.) and retrieves review data using APIs or web scraping techniques.
[1370] Step 2:
[1371] The server temporarily stores the acquired review data in a database. This data includes the review content, rating score, and posting date and time.
[1372] Step 3:
[1373] The server performs a cleansing process on the review data stored in the temporary database. Specifically, this involves removing noisy data, eliminating duplicate data, and imputing missing values.
[1374] Step 4:
[1375] The server standardizes the cleansed data. It unifies the format of data collected from different review sites (e.g., rating score scales and date / time formats).
[1376] Step 5:
[1377] The server stores standardized review data in a persistent database. This data can then be used later for user suggestions and analysis.
[1378] Step 6:
[1379] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on the device.
[1380] Step 7:
[1381] The server retrieves past search history and user behavior data from the database, in addition to the user's input conditions.
[1382] Step 8:
[1383] The server uses an emotion engine to recognize emotions from user input and past history. Text analysis technology is used to extract emotions from the text entered by the user.
[1384] Step 9:
[1385] The server uses machine learning algorithms to integrate and analyze the user's past data, current input conditions, and emotions to profile the individual user's preferences and emotions.
[1386] Step 10:
[1387] The server searches a persistent database for stores that match the user's preferences and emotions. This search takes into account the user's input criteria, preference profile, and emotion recognition results.
[1388] Step 11:
[1389] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the results based on the user's criteria and perceived sentiment, leaving only the most relevant shops.
[1390] Step 12:
[1391] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[1392] Step 13:
[1393] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[1394] Step 14:
[1395] The device sends the collected feedback to the server.
[1396] Step 15:
[1397] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[1398] Step 16:
[1399] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[1400] Step 17:
[1401] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[1402] Step 18:
[1403] The server uploads the report generated based on the analysis results to the business operator's dashboard, making it accessible to the business operator.
[1404] Step 19:
[1405] Businesses refer to reports provided by the server to make strategic decisions. This enables effective marketing based on user preferences and the selection of new store locations.
[1406] (Example 2)
[1407] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1408] Traditional systems suffer from insufficient collection of customer reviews and a lack of accuracy due to the use of unstandardized data. Furthermore, they are unable to properly analyze user preferences and emotions, making it difficult to recommend the most suitable stores to users. Additionally, inadequate utilization of feedback prevents improvements in future recommendations, making it difficult to provide effective solutions for businesses.
[1409] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1410] In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing user preferences and emotions based on user input information and past history, means for suggesting the most suitable stores based on the analysis results, means for collecting and storing user feedback, means for providing solutions for businesses based on the accumulated data, means for regularly accessing word-of-mouth sites on a daily basis and obtaining word-of-mouth data using APIs or web scraping technology, means for performing noise reduction, duplicate removal, and missing value imputation on the word-of-mouth data and converting it into a unified format, means for profiling user preferences and emotions using machine learning algorithms, means for using feedback data to improve the accuracy of the next recommendation algorithm, and means for performing trend analysis for businesses and generating reports for strategic decision-making. This enables highly accurate collection and standardization of word-of-mouth data and analysis of user preferences and emotions, as well as the suggestion of the most suitable stores, improved recommendation accuracy utilizing feedback, and the provision of effective solutions for businesses.
[1411] "Word-of-mouth information" refers to evaluations and opinions posted online by users about specific services or stores.
[1412] "Standardization" is the process of converting data from different formats or types into a unified format.
[1413] "Storage" means saving data to a database or storage device so that it can be referenced and used later.
[1414] "User preferences" refer to specific conditions or attributes that users like (e.g., types of food or budget).
[1415] "Emotions" refer to the psychological states and feelings extracted from a user's statements and actions.
[1416] "Analysis" is the process of extracting meaning and patterns from collected data using statistical and machine learning methods.
[1417] A "proposal" is to present the optimal option based on the information collected and analyzed.
[1418] "Feedback" refers to the evaluations and opinions that users provide after using a particular service or store.
[1419] A "solution" refers to suggestions for improvement and optimization provided to businesses based on collected and analyzed data.
[1420] "Access" refers to the act of connecting to a specific website or database and obtaining the necessary information.
[1421] "API" stands for Application Programming Interface, and refers to a mechanism for exchanging data between different software programs.
[1422] "Web scraping" refers to the technique of automatically obtaining the content of web pages on the internet using a program.
[1423] "Noise reduction" is the process of removing unnecessary or inaccurate information from collected data.
[1424] "Duplicate removal" is the process of removing duplicate data when multiple instances of the same content exist.
[1425] "Missing value imputation" refers to a technique for filling in gaps in incomplete data with appropriate values.
[1426] A "machine learning algorithm" refers to an algorithm that learns patterns from data and uses them for prediction and classification.
[1427] "Profiling" is the process of analyzing the characteristics and patterns of a specific subject (in this case, a user) to create a model or profile.
[1428] A "recommendation algorithm" refers to a computational method used to present users with appropriate options based on past data and feedback.
[1429] "Trend analysis" is the process of analyzing data to understand trends and patterns in fluctuations.
[1430] A "report" refers to a document that summarizes analysis results and proposed solutions, and it contains specific data and conclusions.
[1431] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[1432] To implement this system, the following hardware and software will be used. The server will run Python programs to access major review sites, using APIs or web scraping techniques (e.g., BeautifulSoup or Selenium). MySQL will be used for database management, and Pandas and Scikit-Learn will be used for data processing and machine learning.
[1433] Collection and standardization of word-of-mouth information
[1434] The server periodically accesses the APIs of major review sites using a Python program. If the API is unavailable, it performs web scraping using BeautifulSoup or Selenium. The retrieved review data is stored in a temporary database in JSON format, and then the Pandas library is used to remove noise, duplicate data, and impute missing values. Finally, the data, which is in different formats, is converted to a unified format and permanently stored in a MySQL database.
[1435] Analysis of user preferences and emotions
[1436] The user enters their desired criteria (e.g., type of ramen, location, budget) into an input form on the terminal. The server retrieves the user's past search history and input information from a database and analyzes the user's preferences and emotions using Pandas and an emotion engine. For emotion recognition, a natural language processing library (e.g., NLTK) is used to extract emotions from the user's input text. Based on this data, a machine learning algorithm is executed using Scikit-Learn to profile the user's preferences and emotions.
[1437] Suggestions for the optimal store location
[1438] The server searches the database of reviews for restaurants that match the user's preferences and emotions. It then calculates a suitability score, sorts the restaurants in descending order, and ranks them by their highest score. Filtering is also performed based on the user's criteria and perceived emotions. The final restaurant list is sent to the terminal and displayed to the user.
[1439] Collecting and storing user feedback
[1440] Users input their impressions and ratings of the shops they visit via their devices and send them to the server as feedback. The server stores this in a persistent database and uses it to improve the accuracy of the recommendation algorithm for future visits.
[1441] Providing solutions for businesses
[1442] The server analyzes accumulated word-of-mouth data and feedback to understand user behavior and trends. Data mining tools are used for the analysis, and based on the results, reports are generated regarding new store location selection and menu optimization. These reports are created in PDF format using a template engine and provided to businesses.
[1443] For example, if a user enters criteria such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station" into their device, the server searches its database for highly-rated ramen restaurants that meet these criteria and displays a list on the device. If the user enters "This ramen restaurant seems to have a good atmosphere," the emotion engine recognizes this positive emotion and uses it to improve the accuracy of the recommendations. The user then provides feedback about the restaurant they visited, which the server saves to help improve the accuracy of the recommendation algorithm for the next time. Businesses can then receive reports based on this data to make strategic decisions.
[1444] Example of a prompt:
[1445] Please explain the following process when a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," and they feel that a particular ramen shop has a good atmosphere, then the system suggests recommended ramen shops based on those conditions.
[1446] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1447] Step 1: Access the review site
[1448] The server periodically accesses the APIs of major review sites using a Python program. If the APIs are unavailable, it performs web scraping using BeautifulSoup or Selenium. Specifically, the server runs a scheduled job at 2 AM every day to access the target sites and retrieve data. The input is the URL of the site to be accessed, and the output is the retrieved review data.
[1449] Step 2: Obtaining customer review data
[1450] The server retrieves review data (review content, rating score, posting date, etc.) from the accessed website and stores it in a temporary database. Specifically, the server saves the retrieved data in JSON format and records the data retrieval time as a log. The input is a command to retrieve review data, and the output is the review data stored in the temporary database.
[1451] Step 3: Data cleansing and standardization
[1452] The server cleanses the review data stored in a temporary database. It removes noisy data, eliminates duplicates, imputes missing values, and converts data in different formats to a unified format. Specifically, the server uses the Pandas library to cleanse and standardize the data, and then saves the cleaned data to a new table. The input is the review data in the temporary database, and the output is the standardized data.
[1453] Step 4: Data Permanent Storage
[1454] The server stores cleansed and standardized review data in a persistent database. Specifically, the server inserts the standardized data into a MySQL database and creates indexes to speed up queries. The input is standardized review data, and the output is the data stored in the persistent database.
[1455] Step 5: Enter user conditions
[1456] The user enters their desired conditions (e.g., type of ramen, location, budget) into the input form on their device. Specifically, the user enters the conditions into the input form and presses the "Search" button, which then submits the conditions. The input is the user's desired conditions, and the output is the condition data sent from the device to the server.
[1457] Step 6: Referencing User History
[1458] The server retrieves the user's past search history and input information from the database to understand the user's preferences. Specifically, the server queries and retrieves past search queries and browsing history based on the user's ID. The input is the user's ID, and the output is the past search history retrieved from the database.
[1459] Step 7: Emotion recognition by the emotion engine
[1460] The server uses an emotion engine to recognize emotions from user input and past history. Specifically, the server uses a natural language processing library (such as NLTK) to extract emotions from the text entered by the user. The input is the user's input and past history, and the output is the recognized emotion data.
[1461] Step 8: Integrated Analysis of Preferences and Feelings
[1462] The server uses machine learning algorithms (such as Scikit-Learn) to analyze and integrate the user's past data, current input conditions, and sentiment to perform profiling. Specifically, the server extracts features that represent the user's characteristics and runs a clustering algorithm to create a profile. The input is the user's past data, current input conditions, and sentiment data, and the output is the user's profile data.
[1463] Step 9: Find a suitable store
[1464] The server searches for stores that match the user's preferences and emotions from the review data in the database. Specifically, the server queries user profiles and store data to generate a list of highly suitable stores. The input is user profile data and store data, and the output is a list of suitable stores.
[1465] Step 10: Ranking and Filtering
[1466] The server creates a list of stores based on the search results and ranks them in descending order of their rating scores. It also filters the list based on user criteria and perceived sentiment, leaving only the most relevant stores. Specifically, the server calculates a relevance score, sorts it in descending order, and then filters it according to the specified criteria. The input is a list of suitable stores, and the output is a filtered list of stores.
[1467] Step 11: Providing Results
[1468] The terminal displays a list of the most suitable stores received from the server to the user. Specifically, the terminal renders the list in HTML format and displays it in a user-friendly format. The input is the list of stores sent from the server, and the output is the list of stores displayed to the user.
[1469] Step 12: Entering User Feedback
[1470] After visiting a suggested store, users provide feedback, including their impressions and ratings, through a terminal. Specifically, users enter their feedback into an input form and press the "Submit" button. The input is the user's feedback, and the output is the feedback data sent from the terminal to the server.
[1471] Step 13: Submitting Feedback
[1472] The device sends the collected feedback to the server. Specifically, the device sends the feedback data to the server via an HTTP POST request. The input is the user's feedback data, and the output is the feedback data sent to the server.
[1473] Step 14: Saving Feedback
[1474] The server stores the received feedback in a persistent database. Specifically, it inserts new feedback into the database and updates the associated indexes. The input is the feedback data sent from the terminal, and the output is the feedback data stored in the persistent database.
[1475] Step 15: Perform data analysis
[1476] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends. Specifically, the server periodically runs batch jobs and performs trend analysis using data mining tools. The input is accumulated word-of-mouth data and feedback data, and the output is the analysis results.
[1477] Step 16: Generate Report
[1478] The server generates reports on new store location selection and menu optimization based on the analysis results. Specifically, the server uses a template engine to generate the reports and exports them in PDF format. The input is the analysis results, and the output is the generated report.
[1479] Step 17: Submitting the report
[1480] Businesses can make strategic decisions by referring to reports provided by the server. Specifically, businesses log in to the server's dashboard and download or view the latest reports. The input is the reports stored on the server, and the output is the downloaded or viewed reports.
[1481] (Application Example 2)
[1482] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1483] Conventional store recommendation systems often failed to adequately consider user preferences and emotions, resulting in suggested stores frequently failing to meet user expectations. Furthermore, the efficient collection of real-time user feedback and the provision of business-oriented solutions utilizing this data were insufficient. Moreover, advanced analysis utilizing generative AI models was necessary, and there was a need for effective implementation methods of this technology.
[1484] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing the user's preferences and emotions based on the user's input information and past history, means for suggesting the optimal store based on the analysis results, means for collecting and storing user feedback, means for providing business solutions based on the accumulated data, means for displaying the suggestion results in real time using a smartphone and smart glasses, means for using a generative AI model for data analysis of business solutions, and means for inputting into the generative AI model using prompt sentences and obtaining analysis results. This makes it possible to suggest the optimal store based on the user's preferences and emotions, and enables real-time feedback collection and effective provision of business solutions.
[1485] "Customer reviews" refer to information posted online by users who have actually visited stores or services and shared their evaluations and impressions.
[1486] "Standardization" is the process of unifying information and data provided in different formats into a consistent format.
[1487] "User input information" refers to information that users provide to the system, such as the type of store, location, budget, and other desired conditions.
[1488] "Past history" refers to data such as the user's search history and selected stores from when they previously used the system.
[1489] "User preferences" refer to information and patterns that indicate a user's tastes and preferences.
[1490] "Emotions" refer to psychological responses and moods extracted from text entered by the user and past data.
[1491] "Analysis results" refer to information obtained as a result of data analysis based on user preferences, emotions, and other factors.
[1492] "Feedback" refers to the evaluations and opinions that users provide after visiting a suggested store.
[1493] "Solutions for businesses" refer to information and reports that enable businesses to make strategic decisions based on accumulated data.
[1494] A "smartphone" is a portable information terminal that can connect to the internet and use a variety of applications.
[1495] "Smart glasses" are glasses-type wearable devices that incorporate electronic devices and are capable of displaying information and processing data.
[1496] A "generative AI model" is a model that uses artificial intelligence algorithms to analyze data and make decisions or predictions.
[1497] A "prompt statement" is a set of instructions or questions given to a generative AI model to cause it to perform analysis or processing.
[1498] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data. Specific embodiments of this invention are described below.
[1499] Hardware and software to be used
[1500] server
[1501] 1. Collection and standardization of word-of-mouth information
[1502] The server periodically accesses major review sites to retrieve review data. If an API is available, it uses the API; otherwise, it employs web scraping techniques (e.g., Python, BeautifulSoup). This data includes review content, rating scores, and posting dates.
[1503] The acquired data is stored in a temporary database and then cleansed (removes noisy data, eliminates duplicate data, and imputes missing values) and standardized (converts data in different formats to a unified format) (e.g., Pandas).
[1504] Standardized data is stored in a persistent database (e.g., MongoDB, PostgreSQL).
[1505] 2. User preferences and sentiment analysis
[1506] The server retrieves the user's past history from the database based on the user's entered preferences (e.g., store type, location, budget).
[1507] We use an emotion engine (e.g., Google Cloud Natural Language API, BERT model) to recognize emotions from user input and past history.
[1508] We use machine learning algorithms (e.g., TensorFlow, PyTorch) to comprehensively analyze user preferences and emotions and suggest the most suitable stores.
[1509] 3. Collecting and storing feedback
[1510] The server collects and stores feedback that users provide after their visit. This data is used to improve the accuracy of the next recommendation algorithm.
[1511] 4. Providing solutions for businesses
[1512] The server analyzes accumulated data to understand user behavior and trends. Based on these results, it generates reports on selecting locations for new stores and optimizing menus.
[1513] Data analysis is performed using a generative AI model, prompts are used to input data into the model, and the analysis results are obtained.
[1514] terminal
[1515] 1. Smartphones and smart glasses
[1516] It accepts user input and sends it to the server.
[1517] The system displays a real-time list of the best stores received from the server. The list includes the store name, rating score, review summary, and location.
[1518] The system also provides a feature that allows users to enter feedback after their visit.
[1519] Specific example
[1520] The following are some specific scenario examples.
[1521] text
[1522] User: I'm looking for a good ramen restaurant in Sapporo. My budget is under 1000 yen, and it would be great if it's within a 10-minute walk from the station. A nice atmosphere would be a bonus.
[1523] AI Response: Our recommended Sapporo ramen restaurant is "Ramen Taisho". It has a rating score of 4.7, and many reviews praise its pleasant atmosphere. The prices are reasonable, and it's an 8-minute walk from the station. You can check the map from the link below.
[1524] Feedback: Please share your thoughts using the form below after your visit. This will help us improve our recommendation algorithm in the future.
[1525] In this way, we can provide optimal store recommendations based on user preferences and emotions, collect real-time feedback, and deliver effective solutions for businesses.
[1526] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1527] Step 1:
[1528] Gathering word-of-mouth information
[1529] The server accesses major review sites and retrieves review data. Input requires the URL of the site to be accessed and its API key, while output is the retrieved review data (review content, rating score, posting date, etc.). Specific operations include API requests and web scraping (Python, BeautifulSoup).
[1530] Step 2:
[1531] Data cleansing and standardization
[1532] The server cleanses and standardizes the review data stored in the temporary database. The input is the review data from the temporary database, and the output is the cleansed and standardized data. Specifically, it removes noisy data, eliminates duplicate data, and imputes missing values (using Pandas).
[1533] Step 3:
[1534] Persistent data storage
[1535] The server stores the cleansed and standardized data in a persistent database. Standardized word-of-mouth data is required as input, and the stored data is returned as output. Specifically, this involves insert operations into MongoDB or PostgreSQL.
[1536] Step 4:
[1537] User input of conditions and retrieval of past history
[1538] The terminal receives user preferences (e.g., store type, location, budget, etc.) as input and sends it to the server. The server receives the input information and retrieves past history from the database. The output includes the user's preferences and past history. Specifically, it accepts input through the user interface and executes SQL queries.
[1539] Step 5:
[1540] Emotion analysis
[1541] The server analyzes user sentiment based on user input and past history. It requires user input text and past history as input, and outputs user sentiment data. Specifically, it performs text analysis using the Google Cloud Natural Language API and the BERT model.
[1542] Step 6:
[1543] Integrated analysis of preferences and emotions
[1544] The server uses machine learning algorithms to comprehensively analyze user preferences and emotions. Inputs include user preferences, past history, and emotional data, and output is a list of optimal stores. Specifically, it performs model inference using TensorFlow or PyTorch.
[1545] Step 7:
[1546] Suggestions for the optimal store location
[1547] The server searches for, ranks, and filters the best stores based on the analysis results. It requires the results of the integrated analysis as input and outputs a filtered list of the best stores. Specifically, it uses database queries and ranking algorithms.
[1548] Step 8:
[1549] Providing information to users
[1550] The terminal displays a list of optimal stores received from the server to the user. The input is the list of optimal stores sent from the server, and the output is the information displayed to the user. Specifically, it performs display processing on the user interface.
[1551] Step 9:
[1552] Gathering feedback
[1553] Users provide feedback via their device after their visit. The input requires user feedback information, and the output is feedback data. Specifically, data collection is performed through a feedback input form.
[1554] Step 10:
[1555] Save feedback
[1556] The server receives feedback sent from the terminal and stores it in the database. Feedback information is required as input, and the stored feedback data is obtained as output. Specifically, this involves performing an insert operation into the database.
[1557] Step 11:
[1558] Data analysis for business solutions
[1559] The server analyzes accumulated word-of-mouth data and user feedback to provide solutions for businesses. It requires accumulated data as input and outputs analysis results and reports. Specifically, it performs data analysis using a generative AI model and inputs data into the model using prompts to obtain analysis results.
[1560] For example, the following can be used as a prompt:
[1561] text
[1562] User: I'm looking for a good ramen restaurant in Sapporo. My budget is under 1000 yen, and it would be great if it's within a 10-minute walk from the station. A nice atmosphere would be a bonus.
[1563] AI Response: Our recommended Sapporo ramen restaurant is "Ramen Taisho". It has a rating score of 4.7, and many reviews praise its pleasant atmosphere. The prices are reasonable, and it's an 8-minute walk from the station. You can check the map from the link below.
[1564] Feedback: Please share your thoughts using the form below after your visit. This will help us improve our recommendation algorithm in the future.
[1565] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1566] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1567] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[1568] [Fourth Embodiment]
[1569] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1570] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1571] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1572] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[1573] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1574] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1575] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1576] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[1577] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1578] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1579] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1580] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1581] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1582] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on user preferences. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[1583] The specific form of implementing this system is described below.
[1584] 1. Collection and standardization of word-of-mouth information
[1585] 1.1 Access to review sites
[1586] The server periodically accesses major review sites. This access is done using APIs (Application Programming Interfaces), or, if APIs are unavailable, by using web scraping techniques.
[1587] 1.2 Acquisition of customer review data
[1588] The server automatically retrieves review data from each site and stores it in a temporary database. This data includes review content, rating scores, and posting dates.
[1589] 1.3 Data Cleansing and Standardization
[1590] The server performs a cleansing process (removing noise data and imputing missing values) on the review data stored in the temporary database, and then standardizes it (converting data in different formats to a unified format).
[1591] 1.4 Persistent Data Storage
[1592] The server stores standardized data in this database. This database will later be used for making suggestions to users and for analysis.
[1593] 2. User preference analysis
[1594] 2.1 User Input Conditions
[1595] Users enter their desired conditions, such as the type of ramen, location, and budget, into an input form on their device.
[1596] 2.2 Referencing User History
[1597] The server retrieves the user's past search history and input information from the database to understand the user's preferences.
[1598] 2.3 Conducting a preference analysis
[1599] The server uses machine learning algorithms to analyze the user's past data and current input conditions, profiling the preferences of individual users.
[1600] 3. Shop proposals
[1601] 3.1 Searching for suitable stores
[1602] The server searches for restaurants that match the user's preferences based on review data in the database.
[1603] 3.2 Ranking and Filtering
[1604] The server ranks businesses in order of highest rating based on search results and filters them according to the user's criteria.
[1605] 3.3 Providing Results
[1606] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[1607] 4. Collecting user feedback
[1608] 4.1 Inputting Feedback
[1609] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[1610] 4.2 Sending Feedback
[1611] The device sends the collected feedback to the server.
[1612] 4.3 Saving Feedback
[1613] The server stores the feedback in a database and uses it to create future suggestions and generate reports for businesses.
[1614] 5. Providing solutions for businesses
[1615] 5.1 Implementation of Data Analysis
[1616] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[1617] 5.2 Report Generation
[1618] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[1619] 5.3 Provision of Reports
[1620] Businesses can make strategic decisions by referring to reports provided by the server.
[1621] Through this configuration, the system can efficiently suggest the most suitable ramen restaurants to users and provide data-driven solutions to businesses. For example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server will list highly-rated ramen restaurants that meet these conditions and display them on the terminal. Subsequently, feedback from the user about the restaurants they visited can be provided to help improve the accuracy of the recommendation algorithm for the next time.
[1622] The following describes the processing flow.
[1623] Step 1:
[1624] The server periodically accesses major review sites (e.g., Tabelog, Google Reviews, Twitter, etc.) and retrieves review data using APIs or web scraping techniques.
[1625] Step 2:
[1626] The server temporarily stores the acquired review data in a database. This data includes the review content, rating score, and posting date and time.
[1627] Step 3:
[1628] The server performs a cleansing process on the review data stored in the temporary database. Specifically, this involves removing noisy data, eliminating duplicate data, and imputing missing values.
[1629] Step 4:
[1630] The server standardizes the cleansed data. It unifies the format of data collected from different review sites (e.g., rating score scales and date / time formats).
[1631] Step 5:
[1632] The server stores standardized review data in a persistent database. This data can then be used later for user suggestions and analysis.
[1633] Step 6:
[1634] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on the device.
[1635] Step 7:
[1636] The server retrieves past search history and user behavior data from the database, in addition to the user's input conditions.
[1637] Step 8:
[1638] The server uses machine learning algorithms to analyze user preferences. Based on the user's past behavior data and current input conditions, it profiles the user's tendencies.
[1639] Step 9:
[1640] The server searches a persistent database for stores that match the user's preferences. This search takes into account the user's input criteria and preference profile.
[1641] Step 10:
[1642] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the list based on the user's criteria, leaving only the most relevant shops.
[1643] Step 11:
[1644] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[1645] Step 12:
[1646] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[1647] Step 13:
[1648] The device sends the user's input to the server.
[1649] Step 14:
[1650] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[1651] Step 15:
[1652] The server analyzes accumulated word-of-mouth data and user feedback to generate reports on new store location selection and menu optimization.
[1653] Step 16:
[1654] The server uploads the report generated based on the analysis results to the business operator's dashboard, making it accessible to the business operator.
[1655] Step 17:
[1656] Businesses refer to reports provided by the server to make strategic decisions. This enables effective marketing based on user preferences and the selection of new store locations.
[1657] (Example 1)
[1658] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1659] Conventional information provision systems struggled to efficiently collect and analyze online word-of-mouth information and provide highly accurate suggestions based on individual user preferences. Furthermore, they were not adequately able to effectively accumulate user feedback and provide it as valuable solutions for businesses. This resulted in challenges in improving user satisfaction while simultaneously enhancing the competitiveness of businesses.
[1660] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1661] In this invention, the server includes means for collecting information from multiple information sites on the internet, means for standardizing and cleaning the collected information and storing it in a database, means for analyzing user preferences based on user input conditions and past operation history, means for presenting optimal options based on the analysis results, means for collecting and storing evaluations and opinions from users, and means for providing solutions for businesses based on the accumulated data. This enables highly accurate suggestions based on user preferences, and further enables the provision of valuable data-driven solutions to businesses based on accumulated feedback.
[1662] "Multiple information sites on the internet" refers to websites that provide various kinds of information on the web, and includes blogs, word-of-mouth sites, review sites, etc.
[1663] "Means of collecting information" refers to methods for obtaining necessary data from websites on the internet, and includes data acquisition using APIs and web scraping techniques.
[1664] Standardization is the process of converting data from different formats into a unified format, with the aim of ensuring data consistency and comparability.
[1665] "Cleansing" refers to the process of removing inaccurate, inappropriate, or incomplete information from data to make it accurate and reliable.
[1666] A "database" refers to a system used to systematically store, manage, and retrieve information, and relational databases are commonly used.
[1667] "User input conditions" refer to the preferences and requirements that users explicitly enter into the system, such as the type of ramen, location, and budget.
[1668] "Past operation history" refers to the history of searches and selections that a user has made using the system in the past.
[1669] "Methods for analyzing preferences" refer to methods for analyzing user preferences and trends using machine learning algorithms and data analysis techniques.
[1670] "Means of presenting optimal options" refers to methods of providing users with the most suitable options and suggestions based on the results of user preference analysis.
[1671] "Means of collecting evaluations and opinions" refers to methods for obtaining feedback from users, and includes online forms and surveys.
[1672] "Solutions for businesses" refers to services that analyze accumulated data and provide reports and suggestions that businesses can use to improve their marketing strategies and services.
[1673] This invention is a system that analyzes user preferences based on word-of-mouth information collected from internet information sites and presents optimal options, and further accumulates user feedback to provide solutions for businesses. The embodiments for carrying out this invention will be described in detail below.
[1674] The entire system is primarily composed of three components: servers, terminals, and users.
[1675] 1. Collection and standardization of word-of-mouth information
[1676] The server periodically accesses multiple information sites on the internet. For access, it uses APIs where available, and for sites without APIs, it employs web scraping techniques. Specifically, it can utilize libraries such as Python's BeautifulSoup and Scrapy.
[1677] The server stores user reviews obtained from each information site in a temporary database. This data includes review content, rating scores, posting dates, and other information.
[1678] Next, the server cleanses the data stored in the temporary database, removing noisy data and imputing missing values, and then standardizes data in different formats. Data manipulation libraries such as Pandas and NumPy are used for this.
[1679] Standardized data is persistently stored in this database by the server. This database will later be used for making suggestions to users and for analysis.
[1680] 2. User preference analysis
[1681] The user enters their desired conditions, such as the type of ramen, location, and budget, into an input form on their device. This form is created using HTML, CSS, and JavaScript.
[1682] The server retrieves the user's past search history and input information from a database, and uses this to understand the user's preferences. The retrieved data is used to profile the user's individual preferences.
[1683] The server uses machine learning algorithms (e.g., Scikit-learn, TensorFlow) to analyze the user's past data and current input conditions. This analysis allows for detailed profiling of individual user preferences.
[1684] 3. Shop proposals
[1685] The server searches for businesses that match the user's preferences from the user review data in the database. The search results are ranked in order of highest rating based on the user's criteria.
[1686] Next, the server filters the search results based on the user's criteria. This filtering creates a list of shops that best match the user's desired conditions.
[1687] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[1688] 4. Collecting user feedback
[1689] After visiting a suggested store, users provide feedback, including their impressions and ratings, via a terminal. This input form is built using HTML, CSS, and JavaScript.
[1690] The device sends the collected feedback to the server.
[1691] The server stores the submitted feedback in a database and uses it to create future suggestions and generate reports for businesses.
[1692] 5. Providing solutions for businesses
[1693] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[1694] Based on the analysis results, the server generates a report on selecting a location for a new store and optimizing the menu. This report includes detailed analysis results of user preferences and feedback.
[1695] Businesses can refer to reports provided by the server and make strategic decisions.
[1696] The above describes a specific embodiment for carrying out the present invention. As a specific example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server lists highly-rated ramen restaurants that meet the conditions and displays them on the terminal. Subsequently, the server can provide feedback on the restaurants the user has visited, which can be used to improve the accuracy of the recommendation algorithm for the next time.
[1697] Examples of prompts for a generative AI model include the following:
[1698] "What are some recommended Sapporo ramen restaurants that are under 1000 yen and within a 10-minute walk from the station?"
[1699] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1700] Step 1: Access the review site
[1701] The server regularly accesses major review sites (e.g., Tabelog, Gurunavi) to collect user reviews daily. If an API is available, it uses that; otherwise, it performs web scraping using Python's BeautifulSoup or Scrapy. Specifically, it accesses the specified URL and retrieves the target HTML content.
[1702] Input: List of URLs for review websites
[1703] Output: HTML content obtained from each review site
[1704] Step 2: Obtaining customer review data
[1705] The server extracts review information from the retrieved HTML content and stores it in a temporary database. Specifically, it performs HTML parsing to extract data such as review content, rating score, and posting date.
[1706] Input: Retrieved HTML content
[1707] Output: Extracted review data (stored in a temporary database)
[1708] Step 3: Data cleansing and standardization
[1709] The server performs data cleansing on the review data stored in the temporary database. This involves removing noisy data and imputing missing values, and then converting data in different formats to a unified format. Specifically, it uses the Pandas library to manipulate dataframes.
[1710] Input: Raw data stored in a temporary database
[1711] Output: Cleansed and standardized data (stored in this database)
[1712] Step 4: Data Permanent Storage
[1713] The server persistently stores standardized data in this database. This database uses a relational database such as MySQL. This allows the data to be used later for making suggestions to users and for data analysis.
[1714] Input: Cleansed and standardized data
[1715] Output: Persistent data stored in this database
[1716] Step 5: Enter user conditions
[1717] The user enters their desired criteria into an input form on their device. For example, they might specify the type of ramen, location, budget, etc. This input form is created using HTML, CSS, and JavaScript.
[1718] Input: User-specified desired conditions
[1719] Output: Data entered into the form (sent to the server)
[1720] Step 6: Referencing User History
[1721] The server retrieves the user's past search history and input information from the database. Specifically, it queries relevant historical data based on the user ID.
[1722] Input: User ID
[1723] Output: User's past search history and input information
[1724] Step 7: Conduct a preference analysis
[1725] The server uses machine learning algorithms to analyze the user's past data and current input conditions. Specifically, it uses Scikit-learn and TensorFlow to profile the user's preferences.
[1726] Input: User's past data, current input conditions
[1727] Output: User preference profile
[1728] Step 8: Find a suitable store
[1729] The server searches for restaurants that match the user's preferences from the review data in the database. It retrieves matching entries using SQL queries.
[1730] Input: User preference profiles, review database
[1731] Output: List of suitable stores
[1732] Step 9: Ranking and Filtering
[1733] The server ranks businesses in descending order of their ratings based on search results and filters them according to the user's criteria. Specifically, it sorts businesses in descending order of their rating scores and then narrows them down by criteria such as budget and distance.
[1734] Input: List of stores in search results, user's preferences
[1735] Output: Filtered and ranked list of stores
[1736] Step 10: Providing Results
[1737] The device displays a list of the best stores received from the server to the user. This list includes the store name, rating score, review summary, and location.
[1738] Input: List of ranked stores
[1739] Output: Store list displayed to the user
[1740] Step 11: Entering Feedback
[1741] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[1742] Input: Feedback information for the store
[1743] Output: Feedback information (sent to server)
[1744] Step 12: Submit Feedback
[1745] The device sends the collected feedback to the server.
[1746] Input: Feedback information
[1747] Output: Feedback information sent to the server
[1748] Step 13: Saving Feedback
[1749] The server stores the feedback in a database and uses it to create future suggestions and generate reports for businesses.
[1750] Input: Submitted feedback information
[1751] Output: Feedback data stored in the database
[1752] Step 14: Perform data analysis
[1753] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends. Specifically, it uses data mining techniques and machine learning models.
[1754] Input: Accumulated word-of-mouth data, feedback data
[1755] Output: Analysis results regarding trends and developments
[1756] Step 15: Report Generation
[1757] The server generates reports on new store location selection and menu optimization based on the analysis results. These reports include detailed analysis of user preferences and feedback.
[1758] Input: Analysis results regarding trends and developments
[1759] Output: Report for businesses
[1760] Step 16: Submitting the report
[1761] Businesses refer to reports provided by the server to make strategic decisions.
[1762] Input: Business Report
[1763] Output: Providing information for strategic decision-making
[1764] (Application Example 1)
[1765] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1766] Traditional store recommendation systems failed to accurately analyze user preferences, resulting in low accuracy in suggesting optimal stores. Furthermore, inefficient feedback collection and analysis for businesses led to a lack of information necessary for strategic decision-making. Additionally, limited user interfaces on smartphones and other devices meant a lack of user-friendly features.
[1767] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1768] In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing user preferences based on user input information and past history, means for suggesting the most suitable store based on the analysis results, means for collecting and storing user feedback, means for providing solutions for businesses based on the accumulated data, means for displaying on terminals such as smartphones, smart glasses, and head-mounted displays, means for having a function to search for stores that meet user criteria and a function to rank them in order of highest rating, means for profiling user preferences using machine learning algorithms, means for generating data analysis reports for businesses, and means for creating prompt sentences to be input to a generated AI model. This makes it possible to suggest the most suitable store to the user with high accuracy and to provide effective feedback and data analysis to businesses.
[1769] "Word-of-mouth information" refers to evaluations and reviews written by ordinary users based on their experiences using a particular service or product.
[1770] "Means of collection" refers to the software or hardware functions used to acquire specific information and incorporate it into a system.
[1771] "Means of standardization and preservation" refers to processes and systems for converting data acquired in different formats into a consistent format and storing it for a long period of time.
[1772] "Methods for analyzing user preferences" refer to algorithms and technologies that reveal a user's preferences and tastes based on their past behavioral history and input information.
[1773] "A means of suggesting the optimal store" refers to a function that recommends the most suitable store for the user based on the analysis results.
[1774] "Means for collecting and storing feedback" refers to the process or system of receiving ratings and opinions from users and storing them in a database.
[1775] "Means of providing solutions for businesses" refers to functions that provide businesses with information and suggestions to help them make management decisions and develop marketing strategies, based on collected data and analysis results.
[1776] "Means of displaying information on a device" refers to an interface that uses devices such as smartphones, smart glasses, and head-mounted displays to visually provide information to the user.
[1777] A "search function" refers to the process or system of investigating information within a database based on specific criteria and finding the relevant data.
[1778] A "ranking function" is an algorithm that evaluates multiple options based on specific criteria and assigns them a ranking.
[1779] A "machine learning algorithm" is an algorithm that allows a computer to automatically learn from data and perform predictions and classifications.
[1780] "Profiling techniques" refer to technologies and algorithms used to analyze user data and identify the characteristics and patterns of individual users.
[1781] "Means for generating data analysis reports" refers to the process or system that analyzes accumulated data and outputs the analysis results as a report.
[1782] A "generative AI model" is a model that has been trained and developed using artificial intelligence technology to perform a specific task.
[1783] A "prompt" is a question or instruction presented to a user or system to request specific input.
[1784] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on user preferences. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[1785] System Configuration
[1786] This system consists of the following components:
[1787] 1. Server:
[1788] We regularly access major review sites and collect review data. If an API is available, we use it; otherwise, we use web scraping techniques.
[1789] The collected word-of-mouth data is stored in a temporary database, and a cleansing process is performed to remove noise data and impute missing values.
[1790] Standardized data will be stored in this database.
[1791] Based on user input information and past history, machine learning algorithms (such as Scikit-learn and TensorFlow) are used to profile the user's preferences.
[1792] Collect user feedback and store it in a database.
[1793] Based on accumulated data, we perform data analysis for businesses and provide the analysis results as a report.
[1794] 2. Terminal:
[1795] The system uses smartphones, smart glasses, head-mounted displays, etc., to display a list of the most suitable stores to the user. The list includes the store name, rating score, review summary, and location.
[1796] It provides an interface for users to input feedback on the stores they have visited.
[1797] 3. User:
[1798] Enter your desired conditions (e.g., "Sapporo ramen," "budget under 1000 yen," "within a 10-minute walk from the station") into the terminal.
[1799] Visit the suggested store and enter your feedback into the terminal.
[1800] Specific description of the system's operation
[1801] 1. Gathering word-of-mouth information:
[1802] The server retrieves review data from review sites using libraries such as BeautifulSoup and stores it in a temporary database. If an API is available, it retrieves data via a RESTful API.
[1803] 2. Data cleansing and standardization:
[1804] The server cleanses the collected review data and converts data in different formats into a unified format. This is done using a Python library, and the results are stored in this database.
[1805] 3. User preference analysis:
[1806] The server uses machine learning algorithms to analyze user input and past history to profile user preferences.
[1807] 4. Gathering store suggestions and feedback:
[1808] The server searches for the most suitable stores from the user review data in the database, ranks them in order of highest rating, and displays them on the user's device. Users provide feedback after their visit, which is used to improve the accuracy of the recommendation algorithm for the next time.
[1809] 5. Data analysis reports for businesses:
[1810] The server analyzes accumulated word-of-mouth data and user feedback to generate reports on new store location selection and menu optimization. These reports are provided to businesses to assist in strategic decision-making.
[1811] Specific examples and prompt statements
[1812] Specific example:
[1813] User A enters "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station" into the terminal. The server searches its database for restaurants that meet the criteria, ranks them in descending order of rating, and displays them on the terminal. After visiting, User A enters feedback into the terminal, which is used to improve the accuracy of the recommendation algorithm for the next time.
[1814] Example of a prompt:
[1815] Please recommend highly-rated ramen restaurants that fit the following criteria: "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station."
[1816] "Based on your past ramen restaurant visits and ratings, please recommend a suitable ramen restaurant for this occasion."
[1817] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1818] Step 1: Gathering word-of-mouth information
[1819] The server periodically accesses major review sites to collect review data. The input data consists of the URLs of the review sites and authentication information for accessing them. The server uses web scraping tools such as BeautifulSoup and RESTful APIs to retrieve review data from each site and stores it in a temporary database. The output is the collected raw review data.
[1820] Step 2: Data cleansing
[1821] The server performs a cleansing process on the raw review data stored in a temporary database. The input data is the collected raw review data. It removes noisy data and imputes missing values, extracting only the necessary information. Specific operations include filtering inappropriate reviews and standardizing the data. The output is cleansed, clean review data.
[1822] Step 3: Standardization of the book
[1823] The server standardizes the cleansed review data. The input data is clean, purified review data. It converts data in different formats to a unified format and stores it in this database. Specifically, this includes data formatting to match the database schema. The output is standardized data.
[1824] Step 4: User preference analysis
[1825] The server analyzes user preferences using machine learning algorithms based on user input information and past history. Input data includes user search criteria and past history data. The algorithms used are Scikit-learn and TensorFlow, which profile user preferences. Specifically, classification models and clustering analyses are performed for each user. The output is a user preference profile.
[1826] Step 5: Store search and suggestions
[1827] The server searches for the most suitable restaurants from the database of reviews based on the user's preference profile and criteria. The input data consists of the user's preference profile and search criteria. The restaurants are ranked and filtered in order of highest rating. Specifically, a search algorithm is used to retrieve restaurants that match the criteria and assign scores. The output is a list of the most suitable restaurants.
[1828] Step 6: Displaying the results
[1829] The terminal displays a list of the best stores received from the server to the user. The input data is the list of best stores sent from the server. Specifically, it displays store information in list format using a UI interface. The output is the list of stores displayed to the user.
[1830] Step 7: Gathering Feedback
[1831] Users input feedback about the stores they visited via a terminal. The input data is the user's feedback information. The terminal sends this feedback to the server. The output is the collected feedback information.
[1832] Step 8: Saving Feedback
[1833] The server stores user feedback in a database. The input data is user feedback information. The specific operation involves adding the feedback data to the database. The output is the saved feedback data.
[1834] Step 9: Data Analysis and Report Generation
[1835] The server analyzes accumulated word-of-mouth data and user feedback to generate data analysis reports for businesses. The input data consists of accumulated word-of-mouth data and user feedback. Specifically, it performs data mining and statistical analysis, and compiles the analysis results into a report. The output is an analysis report for businesses.
[1836] Step 10: Creating a Generative AI Model and Prompt Text
[1837] The server uses a generative AI model based on the information entered by the user to generate prompt messages. The input data consists of the user's conditions and search history. Specifically, the AI model generates the most appropriate questions and instructions based on the conditions. The output is the prompt message.
[1838] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1839] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[1840] The specific form of implementing this system is described below.
[1841] 1. Collection and standardization of word-of-mouth information
[1842] 1.1 Access to review sites
[1843] The server periodically accesses major review websites. This access is done using APIs (Application Programming Interfaces), or, if APIs are unavailable, by using web scraping techniques.
[1844] 1.2 Acquisition of customer review data
[1845] The server automatically retrieves review data from each site and stores it in a temporary database. This data includes review content, rating scores, and posting dates.
[1846] 1.3 Data Cleansing and Standardization
[1847] The server performs a cleansing process on the word-of-mouth data stored in the temporary database (removing noise data, removing duplicate data, and imputing missing values), and then standardizes it (converting data in different formats to a unified format).
[1848] 1.4 Persistent Data Storage
[1849] The server stores standardized review data in a persistent database. This database is later used for user suggestions and analysis.
[1850] 2. User preferences and sentiment analysis
[1851] 2.1 User Input Conditions
[1852] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on their device.
[1853] 2.2 Referencing User History
[1854] The server retrieves the user's past search history and input information from the database to understand the user's preferences.
[1855] 2.3 Emotion Recognition by an Emotion Engine
[1856] The server uses an emotion engine to recognize emotions from user input and past history. Text analysis technology is used to extract emotions from the text entered by the user.
[1857] 2.4 Integrated Analysis of Preferences and Feelings
[1858] The server uses machine learning algorithms to integrate and analyze the user's past data, current input conditions, and emotions to profile the individual user's preferences and emotions.
[1859] 3. Shop proposals
[1860] 3.1 Searching for suitable stores
[1861] The server searches for shops that match the user's preferences and feelings based on review data in the database.
[1862] 3.2 Ranking and Filtering
[1863] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the results based on the user's criteria and perceived sentiment, leaving only the most relevant shops.
[1864] 3.3 Providing Results
[1865] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[1866] 4. Collecting user feedback
[1867] 4.1 Inputting Feedback
[1868] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[1869] 4.2 Sending Feedback
[1870] The device sends the collected feedback to the server.
[1871] 4.3 Saving Feedback
[1872] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[1873] 5. Providing solutions for businesses
[1874] 5.1 Implementation of Data Analysis
[1875] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[1876] 5.2 Report Generation
[1877] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[1878] 5.3 Provision of Reports
[1879] Businesses can make strategic decisions by referring to reports provided by the server.
[1880] For example, if a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," the server will list highly-rated ramen restaurants that meet the conditions and display them on the terminal. Furthermore, if the user enters "This ramen restaurant seems to have a good atmosphere," the emotion engine recognizes this positive emotion and uses it to improve the accuracy of the recommendations. Subsequently, the user can provide feedback on the restaurants they visited, which can then be used to improve the accuracy of the recommendation algorithm for the next time.
[1881] The following describes the processing flow.
[1882] Step 1:
[1883] The server periodically accesses major review sites (e.g., Tabelog, Google Reviews, Twitter, etc.) and retrieves review data using APIs or web scraping techniques.
[1884] Step 2:
[1885] The server temporarily stores the acquired review data in a database. This data includes the review content, rating score, and posting date and time.
[1886] Step 3:
[1887] The server performs a cleansing process on the review data stored in the temporary database. Specifically, this involves removing noisy data, eliminating duplicate data, and imputing missing values.
[1888] Step 4:
[1889] The server standardizes the cleansed data. It unifies the format of data collected from different review sites (e.g., rating score scales and date / time formats).
[1890] Step 5:
[1891] The server stores standardized review data in a persistent database. This data can then be used later for user suggestions and analysis.
[1892] Step 6:
[1893] Users enter their preferences, such as the type of ramen, location, and budget, into an input form on the device.
[1894] Step 7:
[1895] The server retrieves past search history and user behavior data from the database, in addition to the user's input conditions.
[1896] Step 8:
[1897] The server uses an emotion engine to recognize emotions from user input and past history. Text analysis technology is used to extract emotions from the text entered by the user.
[1898] Step 9:
[1899] The server uses machine learning algorithms to integrate and analyze the user's past data, current input conditions, and emotions to profile the individual user's preferences and emotions.
[1900] Step 10:
[1901] The server searches a persistent database for stores that match the user's preferences and emotions. This search takes into account the user's input criteria, preference profile, and emotion recognition results.
[1902] Step 11:
[1903] The server creates a list of shops based on the search results and ranks them in descending order of their rating scores. It also filters the results based on the user's criteria and perceived sentiment, leaving only the most relevant shops.
[1904] Step 12:
[1905] The device displays a list of the best stores received from the server to the user. The list includes the store name, rating score, review summary, and location.
[1906] Step 13:
[1907] After visiting the suggested store, users provide feedback, including their impressions and ratings, through their device.
[1908] Step 14:
[1909] The device sends the collected feedback to the server.
[1910] Step 15:
[1911] The server stores the received feedback in a persistent database. This data is used to improve the accuracy of the recommendation algorithm in the future.
[1912] Step 16:
[1913] The server analyzes accumulated word-of-mouth data and user feedback to understand user behavior and trends.
[1914] Step 17:
[1915] Based on the analysis results, the server generates reports on selecting locations for new stores and optimizing menus. These reports include detailed analysis of user preferences and feedback.
[1916] Step 18:
[1917] The server uploads the report generated based on the analysis results to the business operator's dashboard, making it accessible to the business operator.
[1918] Step 19:
[1919] Businesses refer to reports provided by the server to make strategic decisions. This enables effective marketing based on user preferences and the selection of new store locations.
[1920] (Example 2)
[1921] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1922] Traditional systems suffer from insufficient collection of customer reviews and a lack of accuracy due to the use of unstandardized data. Furthermore, they are unable to properly analyze user preferences and emotions, making it difficult to recommend the most suitable stores to users. Additionally, inadequate utilization of feedback prevents improvements in future recommendations, making it difficult to provide effective solutions for businesses.
[1923] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1924] In this invention, the server includes means for collecting word-of-mouth information, means for standardizing and storing the collected word-of-mouth information, means for analyzing user preferences and emotions based on user input information and past history, means for suggesting the most suitable stores based on the analysis results, means for collecting and storing user feedback, means for providing solutions for businesses based on the accumulated data, means for regularly accessing word-of-mouth sites on a daily basis and obtaining word-of-mouth data using APIs or web scraping technology, means for performing noise reduction, duplicate removal, and missing value imputation on the word-of-mouth data and converting it into a unified format, means for profiling user preferences and emotions using machine learning algorithms, means for using feedback data to improve the accuracy of the next recommendation algorithm, and means for performing trend analysis for businesses and generating reports for strategic decision-making. This enables highly accurate collection and standardization of word-of-mouth data and analysis of user preferences and emotions, as well as the suggestion of the most suitable stores, improved recommendation accuracy utilizing feedback, and the provision of effective solutions for businesses.
[1925] "Word-of-mouth information" refers to evaluations and opinions posted online by users about specific services or stores.
[1926] "Standardization" is the process of converting data from different formats or types into a unified format.
[1927] "Storage" means saving data to a database or storage device so that it can be referenced and used later.
[1928] "User preferences" refer to specific conditions or attributes that users like (e.g., types of food or budget).
[1929] "Emotions" refer to the psychological states and feelings extracted from a user's statements and actions.
[1930] "Analysis" is the process of extracting meaning and patterns from collected data using statistical and machine learning methods.
[1931] A "proposal" is to present the optimal option based on the information collected and analyzed.
[1932] "Feedback" refers to the evaluations and opinions that users provide after using a particular service or store.
[1933] A "solution" refers to suggestions for improvement and optimization provided to businesses based on collected and analyzed data.
[1934] "Access" refers to the act of connecting to a specific website or database and obtaining the necessary information.
[1935] "API" stands for Application Programming Interface, and refers to a mechanism for exchanging data between different software programs.
[1936] "Web scraping" refers to the technique of automatically obtaining the content of web pages on the internet using a program.
[1937] "Noise reduction" is the process of removing unnecessary or inaccurate information from collected data.
[1938] "Duplicate removal" is the process of removing duplicate data when multiple instances of the same content exist.
[1939] "Missing value imputation" refers to a technique for filling in gaps in incomplete data with appropriate values.
[1940] A "machine learning algorithm" refers to an algorithm that learns patterns from data and uses them for prediction and classification.
[1941] "Profiling" is the process of analyzing the characteristics and patterns of a specific subject (in this case, a user) to create a model or profile.
[1942] A "recommendation algorithm" refers to a computational method used to present users with appropriate options based on past data and feedback.
[1943] "Trend analysis" is the process of analyzing data to understand trends and patterns in fluctuations.
[1944] A "report" refers to a document that summarizes analysis results and proposed solutions, and it contains specific data and conclusions.
[1945] This invention is a system that collects, standardizes, and stores word-of-mouth information, and suggests the most suitable stores based on the user's preferences and emotions. It also collects user feedback and provides solutions for businesses based on the accumulated data.
[1946] To implement this system, the following hardware and software will be used. The server will run Python programs to access major review sites, using APIs or web scraping techniques (e.g., BeautifulSoup or Selenium). MySQL will be used for database management, and Pandas and Scikit-Learn will be used for data processing and machine learning.
[1947] Collection and standardization of word-of-mouth information
[1948] The server periodically accesses the APIs of major review sites using a Python program. If the API is unavailable, it performs web scraping using BeautifulSoup or Selenium. The retrieved review data is stored in a temporary database in JSON format, and then the Pandas library is used to remove noise, duplicate data, and impute missing values. Finally, the data, which is in different formats, is converted to a unified format and permanently stored in a MySQL database.
[1949] Analysis of user preferences and emotions
[1950] The user enters their desired criteria (e.g., type of ramen, location, budget) into an input form on the terminal. The server retrieves the user's past search history and input information from a database and analyzes the user's preferences and emotions using Pandas and an emotion engine. For emotion recognition, a natural language processing library (e.g., NLTK) is used to extract emotions from the user's input text. Based on this data, a machine learning algorithm is executed using Scikit-Learn to profile the user's preferences and emotions.
[1951] Suggestions for the optimal store location
[1952] The server searches the database of reviews for restaurants that match the user's preferences and emotions. It then calculates a suitability score, sorts the restaurants in descending order, and ranks them by their highest score. Filtering is also performed based on the user's criteria and perceived emotions. The final restaurant list is sent to the terminal and displayed to the user.
[1953] Collecting and storing user feedback
[1954] Users input their impressions and ratings of the shops they visit via their devices and send them to the server as feedback. The server stores this in a persistent database and uses it to improve the accuracy of the recommendation algorithm for future visits.
[1955] Providing solutions for businesses
[1956] The server analyzes accumulated word-of-mouth data and feedback to understand user behavior and trends. Data mining tools are used for the analysis, and based on the results, reports are generated regarding new store location selection and menu optimization. These reports are created in PDF format using a template engine and provided to businesses.
[1957] For example, if a user enters criteria such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station" into their device, the server searches its database for highly-rated ramen restaurants that meet these criteria and displays a list on the device. If the user enters "This ramen restaurant seems to have a good atmosphere," the emotion engine recognizes this positive emotion and uses it to improve the accuracy of the recommendations. The user then provides feedback about the restaurant they visited, which the server saves to help improve the accuracy of the recommendation algorithm for the next time. Businesses can then receive reports based on this data to make strategic decisions.
[1958] Example of a prompt:
[1959] Please explain the following process when a user enters conditions such as "Sapporo ramen," "budget under 1000 yen," and "within a 10-minute walk from the station," and they feel that a particular ramen shop has a good atmosphere, then the system suggests recommended ramen shops based on those conditions.
[1960] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1961] Step 1: Access the review site
[1962] The server periodically accesses the APIs of major review sites using a Python program. If the APIs are unavailable, it performs web scraping using BeautifulSoup or Selenium. Specifically, the server runs a scheduled job at 2 AM every day to access the target sites and retrieve data. The input is the URL of the site to be accessed, and the output is the retrieved review data.
[1963] Step 2: Obtaining customer review data
[1964] The server retrieves review data (review content, rating score, posting date, etc.) from the accessed website and stores it in a temporary database. Specifically, the server saves the retrieved data in JSON format and records the data retrieval time as a log. The input is a command to retrieve review data, and the output is the review data stored in the temporary database.
[1965] Step 3: Data cleansing and standardization
[1966] The server cleanses the review data stored in a temporary database. It removes noisy data, eliminates duplicates, imputes missing values, and converts data in different formats to a unified format. Specifically, the server uses the Pandas library to cleanse and standardize the data, and then saves the cleaned data to a new table. The input is the review data in the temporary database, and the output is the standardized data.
[1967] Step 4: Data Permanent Storage
[1968] The server stores cleansed and standardized review data in a persistent database. Specifically, the server inserts the standardized data into a MySQL database and creates indexes to speed up queries. The input is standardized review data, and the output is the data stored in the persistent database.
[1969] Step 5: Enter user conditions
[1970] The user enters their desired conditions (e.g., type of ramen, location, budget) into the input form on their device. Specifically, the user enters the conditions into the input form and presses the "Search" button, which then submits the conditions. The input is the user's desired conditions, and the output is the condition data sent from the device to the server.
[1971] Step 6: Referencing User History
[1972] The server retrieves the user's past search history and input information from the database to understand the user's preferences. Specifically, the server queries and retrieves past search queries and browsing history based on the user's ID. The input is the user's ID, and the output is the past search history retrieved from the database.
[1973] Step 7: Emotion recognition by the emotion engine
[1974] The server uses an emotion engine to recognize emotions from user input and past history. Specifically, the server uses a natural language processing library (such as NLTK) to extract emotions from the text entered by the user. The input is the user's input and past history, and the output is the recognized emotion data.
[1975] Step 8: Integrated Analysis of Preferences and Feelings
[1976] The server uses machine learning algorithms (such as Scikit-Learn) to analyze and integrate the user's past data, current input conditions, and sentiment to perform profiling. Specifically, the server extracts features that represent the user's characteristics and runs a clustering...
Claims
1. Methods for collecting word-of-mouth information, A means of standardizing and storing collected word-of-mouth information, A means of analyzing user preferences based on user input information and past history, A means of proposing the optimal store based on the analysis results, A means of collecting and storing user feedback, A system that includes means of providing solutions for businesses based on accumulated data.
2. The system according to claim 1, wherein the collected word-of-mouth information is obtained from multiple word-of-mouth websites on the internet.
3. The system according to claim 1, which uses a machine learning algorithm to analyze user preferences.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A