system

The system automates budget management by integrating data acquisition, processing, analysis, and sentiment-driven visualization to enhance efficiency and user experience, addressing inefficiencies in conventional methods.

JP2026101293APending Publication Date: 2026-06-22SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
SOFTBANK GROUP CORP
Filing Date
2024-12-10
Publication Date
2026-06-22

AI Technical Summary

Technical Problem

Conventional budget management processes require significant manual effort for data aggregation, analysis, and report creation, leading to inefficiencies and delays in decision-making.

Method used

A system comprising data acquisition, processing, analysis, and visualization tools that automatically retrieve, format, aggregate, and analyze budget data, and generate reports, with sentiment analysis to adapt displays to user emotions, enabling efficient and timely information sharing.

Benefits of technology

Significantly reduces manual processing time and effort, enhances user experience by adapting to user emotions, and facilitates rapid decision-making through automated and intuitive data presentation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026101293000001_ABST
    Figure 2026101293000001_ABST
Patent Text Reader

Abstract

Provide a system. 【Solution means】 An information acquisition means for acquiring budget data, An information processing means for shaping and aggregating the acquired information, An analysis means for calculating the difference from the previous month, A visualization means for visualizing the analysis results, A reporting means for saving the generated report and giving notice, A public information providing means for providing the budget utilization status to the public, A public use comparison means for visually presenting the comparison with the previous year or the previous month, A system including.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0005] ,

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

Background Art

[0002] Patent Document 1 discloses a method for controlling a persona chatbot, which is performed by at least one processor, the method including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a character of the chatbot, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance as a 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] In the conventional budget management work, there is a problem that the work of manually aggregating the budgets for a large number of cases and calculating the monthly differences requires a very large amount of time and labor. In addition, creating a report based on the aggregation results also takes a lot of time, hindering quick decision-making. The purpose of the present invention is to significantly reduce time and labor and improve work efficiency by automating these business processes.

Means for Solving the Problems

[0005] This invention provides a system comprising data acquisition means for acquiring budget data, data processing means for formatting and aggregating the acquired data, and analysis means for calculating the difference with the previous month. This allows for automatic acquisition, rapid formatting, and aggregation of budget data. Furthermore, the analysis results are intuitively displayed by visualization means, and the generated reports are saved and notified via email or other means. This significantly reduces the manual processing time and effort previously required.

[0006] "Data acquisition means" refers to a device or program for automatically acquiring budget data from an external data source.

[0007] "Data processing means" refers to a device or program that has the function of formatting and aggregating acquired data.

[0008] "Analysis tool" refers to a device or program that has the function of calculating the difference from the previous month based on aggregated data and analyzing trends.

[0009] "Visualization means" refers to a device or program that has the function of visually displaying analysis results, such as in graphs or tables.

[0010] A "reporting device" is a device or program that has the function of saving the generated report and notifying the necessary recipients. [Brief explanation of the drawing]

[0011] [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] This is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] This 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] This is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] This 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] This shows an emotion map where multiple emotions are mapped. [Figure 10] This shows an emotion map where multiple emotions are mapped. [Figure 11] This is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] This is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] This is a sequence diagram showing the processing flow of the data processing system in Example 2, which incorporates an emotion engine. [Figure 14] This is a sequence diagram showing the processing flow of the data processing system in Application Example 2, which combines an emotion engine. [Modes for carrying out the invention]

[0012] Hereinafter, an example of an embodiment of the system relating to the technology of this disclosure will be described with reference to the attached drawings.

[0013] First, let's explain the terminology used in the following explanation.

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

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

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

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

[0018] 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."

[0019] [First Embodiment]

[0020] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.

[0021] 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.

[0022] 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).

[0023] 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.

[0024] 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.

[0025] 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.

[0026] 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.

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

[0028] 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.

[0029] 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.

[0030] 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.

[0031] 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".

[0032] This invention aims to realize a system for automatically acquiring, processing, analyzing, visualizing, and reporting budget data. Specific embodiments are described below.

[0033] First, the server periodically retrieves budget data from a pre-specified spreadsheet using the Google Sheets API. The retrieved data is then stored on the server using the data retrieval method. This operation requires appropriate authentication credentials, which the server uses to securely access the data.

[0034] Next, the server uses data processing tools to format the acquired raw data. This process imputes missing data values ​​and standardizes date and numerical formats. For example, missing data is filled in with the average value or a specified default value. This organizes the data into a format suitable for aggregation.

[0035] After formatting, the server further uses data processing tools to aggregate monthly budgets for each project. The aggregated results are stored in a database and used in subsequent analysis steps. Using analysis tools, the server calculates the difference from the previous month based on this aggregated data and identifies trends in increases and decreases.

[0036] Subsequently, the terminal has visualization capabilities to visually display the analysis results for the user. The terminal presents the data as graphs and tables, allowing the user to intuitively understand the information. For example, a line graph can be used to show the trend of the budget over time.

[0037] Ultimately, the server utilizes reporting mechanisms to generate a report containing the analysis results and saves it as a file in PDF format or another suitable location. This report is automatically sent via email to designated stakeholders. This allows users to receive the latest analysis information immediately. This process significantly reduces the time and effort previously required for manual work.

[0038] This invention aims to improve the efficiency of budget management operations and contribute to the work of finance teams and project managers.

[0039] The following describes the processing flow.

[0040] Step 1:

[0041] The server uses the Google Sheets API to retrieve the latest budget data from the spreadsheet. It accesses the API using authentication credentials and retrieves the data in JSON format according to the specified spreadsheet ID.

[0042] Step 2:

[0043] The server preprocesses the acquired data. This involves formatting the data, imputing missing values, and standardizing date and numerical formats. This prepares the data for aggregation.

[0044] Step 3:

[0045] The server categorizes the data by project and uses a data processing script to aggregate the monthly budget. Here, the data is grouped using the project ID as the key, and the total for each month is calculated.

[0046] Step 4:

[0047] The server analyzes the budget difference from the previous month based on the aggregated data. It calculates the difference and generates a new dataset to understand the trend of increase or decrease.

[0048] Step 5:

[0049] The device uses visualization tools to present the analysis results to the user. The target data is displayed in graph or tabular format, presented in an intuitive and easy-to-understand manner.

[0050] Step 6:

[0051] The server automatically generates reports and creates reports in formats such as PDF based on the analysis results. It also uses templates to typeset the documents and arrange the data appropriately.

[0052] Step 7:

[0053] The server sends the generated report to the designated stakeholders via email or other notification means. Information is shared immediately by sending emails using the SMTP protocol.

[0054] Step 8:

[0055] The user reviews the analysis results displayed on the dashboard and requests additional analysis from the system as needed. The terminal updates its interface in response to the user's instructions.

[0056] (Example 1)

[0057] 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."

[0058] In modern organizational management, budget management is often inefficient, requiring significant time and effort for manual data acquisition, formatting, and aggregation. Furthermore, delays in updating information can lead to delays in management decisions. There is a need to automate and efficiently resolve these challenges using new technologies.

[0059] 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.

[0060] In this invention, the server includes information acquisition means for automatically acquiring data, information processing means for formatting the acquired raw data, imputing missing values, and standardizing the format, and analysis means for aggregating monthly budgets for each project, calculating the difference from the previous month, and analyzing trends in increases and decreases. This makes it possible to automate a series of processes from acquiring budget data to analysis and notification.

[0061] "Information acquisition means" refers to technologies and methods for automatically collecting data from specific information sources.

[0062] "Information processing means" refers to the technologies and methods used to organize acquired data into a format that can be analyzed and used.

[0063] "Analysis methods" refer to techniques and methods that use aggregated data to identify specific patterns or trends and derive useful insights from them.

[0064] "Visualization methods" refer to technologies and methods that visually display analysis results and data, making them easier for users to understand intuitively.

[0065] "Notification means" refers to the technologies and methods used to deliver generated information and reports to relevant parties.

[0066] A description of embodiments for carrying out this invention will be given.

[0067] First, the server uses the Google Sheets API to automatically retrieve budget data from a specified spreadsheet at regular intervals. To do this, it securely retrieves the data using appropriate authentication credentials. The retrieved data is then stored in a database.

[0068] Next, the server uses data processing techniques to format the acquired data. This process imputes missing values ​​in the raw data with the previous month's average or a specified default value, and standardizes the format of dates and numbers. For example, all dates are converted to the "YYYY-MM-DD" format.

[0069] Furthermore, the server uses analytical techniques to aggregate the monthly budget for each project using the formatted data. Based on the aggregated data, it calculates the difference from the previous month and analyzes trends in increases and decreases.

[0070] The device then utilizes visualization technology to visually display the analysis results. This allows users to intuitively understand budget trends and allocations by category through line graphs and bar graphs.

[0071] Finally, the server uses reporting technology to generate a PDF report and automatically emails it to the designated stakeholders. This report includes visualized graphs and detailed analysis results.

[0072] For example, if a user specifies a spreadsheet titled "Monthly Budget Analysis for Project X, FY2023," the system retrieves data from that spreadsheet at the beginning of each month and emails the analysis results as a PDF report to the relevant project manager and finance team. This process allows users to quickly grasp the latest budget status and trends.

[0073] An example of a prompt message for a generating AI model is: "Retrieve the monthly budget data for Project X for fiscal year 2023 from the spreadsheet, generate a PDF report visualizing the monthly budget trends in a line graph, and send it to the specified email address."

[0074] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0075] Step 1:

[0076] The server uses an information retrieval method to obtain budget data from a specified Google Spreadsheet. The inputs used are authentication information and the spreadsheet ID. The specific data retrieval process involves accessing the Google Spreadsheet API and reading data from the specified range. The output is stored on the server as raw data.

[0077] Step 2:

[0078] The server uses information processing tools to format the acquired raw data. The input is the raw data acquired in step 1. Specifically, missing values ​​are imputed with the mean or default value, dates are converted to "YYYY-MM-DD" format, and numerical values ​​are standardized to two decimal places. The output is formatted data in a format suitable for analysis and aggregation.

[0079] Step 3:

[0080] The server uses analysis tools to aggregate the monthly budget for each project. The input is the data formatted in step 2. Specifically, it accesses the database, sums the monthly budget for each project, and aggregates it by category. The output is the aggregated data, which is stored in the database.

[0081] Step 4:

[0082] The server then uses further analysis tools to calculate the difference from the previous month and analyze the trend of increase or decrease. The input is the data aggregated in step 3. Specifically, it calculates the difference from the previous month for each category and calculates the rate of increase or decrease. The output is the analysis result, which is stored in the database in a user-friendly format.

[0083] Step 5:

[0084] The terminal utilizes visualization tools to visually display the analysis results. The input is the analysis results obtained in step 4. Specifically, it generates line graphs and bar graphs using a graph creation library. The output is graphs and tables that are visually displayed to the user. The user can use this intuitively.

[0085] Step 6:

[0086] The server uses a notification system to generate a report and send it to the relevant parties. The input is the analysis results from step 4. Specifically, it creates a report using PDF generation software and sends it via email to the configured email address. The output is the sent PDF report, which allows the relevant parties to check the latest information.

[0087] (Application Example 1)

[0088] 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."

[0089] In modern cities, it is difficult for citizens to have a transparent and real-time understanding of how public services and infrastructure projects are being used. This results in a lack of sufficient information for citizens regarding whether budgets are being used efficiently and fairly. Furthermore, understanding trends in budget usage is crucial for quickly determining future plans and areas for improvement.

[0090] 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.

[0091] In this invention, the server includes an information acquisition means for acquiring budget data, an information processing means for formatting and aggregating the acquired information, an analysis means for calculating the difference with the previous month, a visualization means for visualizing the analysis results, a reporting means for saving the generated report and providing notifications, a public information provision means for providing budget usage status to citizens, and a public usage comparison means for visually presenting comparisons with the previous year and the previous month. As a result, citizens can grasp the status of budget usage transparently and in real time, and it becomes possible to promote the efficient and fair use of public services.

[0092] "Budget data" is a general term for financial information used in public services, infrastructure projects, and other similar activities.

[0093] "Information acquisition methods" refer to the processes and technologies used to collect data from external information sources.

[0094] "Information processing means" refers to techniques for formatting acquired data, imputing missing values, and performing aggregation.

[0095] "Analysis methods" refer to techniques used to analyze aggregated data and understand the differences from the previous month and trends in budget increases or decreases.

[0096] "Visualization methods" refer to technologies that visually display analysis results using graphs and tables, enabling users to understand them intuitively.

[0097] "Reporting methods" refer to the technologies and processes for saving the generated analysis results as documents and notifying designated stakeholders.

[0098] "Public information provision means" refers to the processes and technologies used to provide citizens with budget information on public services and infrastructure projects.

[0099] "Public use comparison tools" refer to technologies that compare budget usage with past usage and visually present changes to users.

[0100] This invention is a system for periodically acquiring, processing, analyzing, visualizing, and reporting budget data. The server automatically acquires budget data from pre-specified information sources using information acquisition means. A highly reliable external data acquisition application programming interface is used for data collection.

[0101] The server uses data processing tools to format the acquired raw data. This process imputes missing values ​​and standardizes the data format. Specifically, data processing libraries such as NumPy and Pandas are utilized. As a result, the data is prepared in a format suitable for subsequent processing.

[0102] Using analytical tools, the server analyzes the formatted data and calculates trends of increase or decrease by comparing it with past data. The results of the analysis are displayed on the terminal in graph or tabular format using visualization tools. Visualization libraries such as Matplotlib are used for visualization. For example, a user can view the time-dependent changes in the budget for public services as a line graph.

[0103] Next, a report of the generated analysis results is created in PDF format or another suitable format using the reporting system. This report is automatically sent via email to the contacts specified by the user. Electronic communication technologies such as SMTP servers are used for the notification system.

[0104] Furthermore, through public information provision tools, citizens can check the budget status of public services and infrastructure projects in real time via their smartphones. This application is implemented as a web application using the Flask framework and is accessible from smartphones. Citizens can use public usage comparison tools to compare past budget performance with current figures and make informed decisions. This function includes generating predictive data based on past usage.

[0105] One concrete example is viewing the progress of a "city park development project." Users can launch the app and select the relevant project to visualize the latest budget usage. Additionally, checking the "year-on-year comparison" helps users understand the increase or decrease in budget usage compared to the same period last year.

[0106] An example of a prompt for the generated AI model might be: "Generate Python code to visualize the budget usage for park development in a smart city project. The data will be retrieved from Google Sheets and displayed as a graph using Matplotlib."

[0107] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0108] Step 1:

[0109] The server retrieves budget data from external sources using information acquisition methods. In this process, an application programming interface is used for data collection, ensuring secure data access that requires authentication credentials. Inputs include authentication credentials for accessing the external source and a data acquisition request, while output is the retrieved raw budget data.

[0110] Step 2:

[0111] The server processes the acquired data using information processing tools. NumPy and Pandas are used to impute missing values ​​and standardize data formats. The input is the acquired raw data, and the output is the formatted data. Specific operations include imputing missing values ​​and standardizing date formats.

[0112] Step 3:

[0113] The server uses analysis tools to aggregate formatted data monthly and compare it with past monthly data. It performs data calculations to identify differences and trends in increases and decreases, and generates analysis results. The input is formatted aggregated data, and the output is analysis results showing differences and trends in increases and decreases. The specific operations include aggregation and comparison calculations.

[0114] Step 4:

[0115] The terminal uses visualization tools to display the analysis results received from the server as line graphs and bar graphs. The input is the analysis result data, and the output is visualized information presented to the user. Specifically, it generates graphs using Matplotlib and draws them on the user interface.

[0116] Step 5:

[0117] The server saves the generated report in PDF format via its electronic communication function, which is the reporting method, and sends it via email to the designated user. The input is the report data created based on the analysis results, and the output is the sent report file. The specific operations are report generation and email sending using the SMTP protocol.

[0118] Step 6:

[0119] Users access a smartphone app via public information provision channels to view budget data for public services and infrastructure projects in real time. Input is the latest budget data processed on the server, and output displays updated budget usage on the user screen. The specific actions involve launching the app, sending data update requests, and displaying the results.

[0120] Step 7:

[0121] Users can use a public usage comparison tool to compare current and past budget usage and visually understand the differences. The input is budget data from two different points in time, and the output is a graph showing the comparison results. Specific operations include dataset selection and graph generation.

[0122] 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.

[0123] This invention combines a system for automatically acquiring, processing, analyzing, visualizing, and reporting budget data with an emotion engine that recognizes user emotions. Specific embodiments of this invention are described below.

[0124] In this invention, the server uses the Google Sheets API to retrieve the latest budget data from a spreadsheet. The data is retrieved securely using authentication credentials. Next, the server uses data processing means to format and aggregate the retrieved data. This formatting process eliminates missing values ​​and ensures the data is stored in a unified format.

[0125] Subsequently, the server uses analytical tools to calculate the difference from the previous month based on the aggregated data. The analysis results are saved as a new dataset to understand the trend of increase or decrease. The terminal uses visualization tools to display these analysis results to the user. The data is presented in an intuitively understandable format using graphs and tables.

[0126] The sentiment engine analyzes the user's interaction history and reactions on the dashboard. As the user interacts with the dashboard, the sentiment engine infers the user's emotions in real time and adjusts the display of visualizations accordingly. For example, if the user expresses dissatisfaction, it can provide more detailed data information or suggest an alternative visualization format.

[0127] Finally, the server utilizes reporting mechanisms to create a final report. This report includes user sentiment data obtained through the sentiment engine, along with analysis that contributes to improving the user experience. The generated report is saved in PDF format and automatically sent to relevant parties via email. This automated process enables users to respond quickly and efficiently to changing situations and make decisions.

[0128] This invention goes beyond mere data processing, enabling comprehensive system operation that enhances user experience and operational efficiency.

[0129] The following describes the processing flow.

[0130] Step 1:

[0131] The server uses the Google Sheets API to retrieve the latest budget data from a specified spreadsheet. It securely accesses the API using authentication credentials and receives the data in JSON format.

[0132] Step 2:

[0133] The server formats the acquired data. Scripts are executed to impute missing values ​​and standardize date and numerical formats. This prepares the data for analysis and aggregation.

[0134] Step 3:

[0135] The server aggregates the formatted data. It groups the data by project and calculates the monthly budget total. Here, SQL-like queries are used to perform the aggregation quickly and accurately.

[0136] Step 4:

[0137] The server calculates the difference from the previous month based on the aggregated data. By generating new difference data and understanding the trend of increase or decrease, it provides data to support future decision-making.

[0138] Step 5:

[0139] The device uses visualization tools to display the analysis results. Line graphs and bar graphs are drawn to visually present data trends in a user-friendly format.

[0140] Step 6:

[0141] The emotion engine monitors user actions and infers their emotional state. It analyzes clicks, dwell time, and interaction patterns when users interact with the dashboard, and adjusts the interface according to their emotional state.

[0142] Step 7:

[0143] The server generates the report. It combines the analysis results with user sentiment data to create a more useful report based on a template.

[0144] Step 8:

[0145] The server sends the generated report to relevant parties via email. SMTP is used to ensure rapid distribution of the report and information sharing.

[0146] Step 9:

[0147] Users review the information on the dashboard and request additional analysis as needed. The system then generates new visualizations and performs further data analysis based on user feedback.

[0148] (Example 2)

[0149] 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".

[0150] Traditional budget management systems often involved manual data acquisition, processing, analysis, and visualization, resulting in inefficiencies. Furthermore, they displayed data without considering user emotions or reactions, hindering information comprehension and decision-making. Additionally, the failure to share generated reports with stakeholders in a timely manner hindered rapid decision-making.

[0151] 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.

[0152] In this invention, the server includes means for acquiring information, information processing means for formatting and aggregating the acquired information, analysis means for calculating the difference with past data, sentiment analysis means for analyzing user reactions and adjusting information using a generation AI model, and reporting means for saving the generated report and providing notifications. This enables efficient data processing and information provision adapted to the user, realizing rapid information sharing and decision support for stakeholders.

[0153] "Means of acquiring information" refers to functions for automatically collecting necessary data from external sources.

[0154] "Information processing means" refers to functions that format collected data, fill in missing information, and aggregate it based on specific criteria.

[0155] "Analysis tools" are functions that analyze changes by comparing them with past data and calculate specific indicators.

[0156] "Means of representation" refers to functions that display analyzed data in a visually easy-to-understand format.

[0157] "Emotional analysis tools" are functions that infer the user's psychological state based on their actions and reactions, and adjust the data display accordingly.

[0158] "Reporting means" refers to a function for saving generated analysis results and reports, and for informing relevant parties as needed.

[0159] A "generative AI model" is an artificial intelligence technology that uses machine learning techniques to detect user reactions and data characteristics, and to perform appropriate analysis and display.

[0160] An "interface" is a means of connection for exchanging information between different systems or programs.

[0161] "Electronic communication" refers to communication methods that use the internet, email, and other means to exchange information.

[0162] This invention provides a system that streamlines budget management and improves the user experience by combining multiple information processing elements. Specific embodiments are described below.

[0163] The server is equipped with means to retrieve information using external data storage. This means includes, for example, utilizing specific APIs, enabling real-time data reception via an internet connection. The retrieved data is then formatted by information processing tools, including the imputation of missing data and data aggregation. This processing ensures the data is presented in a uniform format and stored in a state suitable for analysis.

[0164] Next, the server uses analysis tools to compare current data with historical data and calculate specific fluctuation indicators. These indicators can be used by users to understand trends in budget increases and decreases. The calculated indicators are displayed on the terminal through a display tool, allowing users to visually confirm the data.

[0165] On the other hand, emotion analysis tools analyze user actions and reactions, and adjust the displayed content based on the resulting emotion data. For example, if a user expresses dissatisfaction with specific data, the server automatically provides detailed information to help the user easily decide on their next action.

[0166] Ultimately, the server stores the reports generated using the reporting mechanism and automatically transmits them to relevant parties via electronic communication. This allows users to quickly share information and accelerate decision-making.

[0167] As a concrete example, consider the case of evaluating a product budget. The system automatically retrieves expenditures for all projects, analyzes fluctuations in expenditures for a specific product category, and visualizes the results as a graph. When the user enters a prompt such as, "Please show me the details of why the development cost of a particular product increased," the system presents the analysis results of the main factors influencing development costs.

[0168] Thus, the system of the present invention maximizes the value provided to the user by integrating automatic data acquisition, efficient analysis, user-adaptive display, and rapid reporting functions.

[0169] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0170] Step 1:

[0171] The server initiates a mechanism to retrieve information from external data storage. It obtains information from the user-specified data source via the internet using a specific API and stores the input data in temporary memory within the server. This ensures that the raw data is securely stored on the server.

[0172] Step 2:

[0173] The server formats the input data acquired using information processing tools. It performs processes to ensure data integrity, such as imputing missing values ​​and deleting irrelevant data. Based on the formatted data, it aggregates it by date and category and calculates statistical indicators. As output, aggregated data in a uniform format can be obtained.

[0174] Step 3:

[0175] The server uses analytical tools to analyze the differences between current and past data. It takes aggregated data as input, checks for increases and decreases in values ​​over a specific period, and calculates the fluctuations as an index. The calculation results are saved as a new dataset, and the output fluctuation index is used in subsequent processes.

[0176] Step 4:

[0177] The terminal receives analytical data transmitted from the server. It then displays the data in a visualized form, such as graphs or tables, using various representational tools. It provides users with an intuitive and easy-to-understand interface, allowing them to deepen their insights into the data through the outputted visual information.

[0178] Step 5:

[0179] As the user operates the device, the emotion analysis system analyzes the user's input and actions in real time. The user's reactions are acquired as input data, and a generative AI model is used to infer their emotions. Based on the analysis results, the device's display content is adjusted as needed to provide the user with optimal information.

[0180] Step 6:

[0181] The server generates the final report using a reporting mechanism. It automatically creates the report content using data including analysis results and user feedback as input. As a result, a report in PDF format is output and sent to relevant parties via electronic communication. This allows users to share information in a timely manner.

[0182] (Application Example 2)

[0183] 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".

[0184] In modern commerce, it is necessary to respond to users' thoughts and emotions in real time, but existing data analytics systems fail to meet this requirement. Traditional systems focus on visualizing and analyzing information, but struggle to dynamically adjust displays to take user emotions into account, hindering improvements in the user experience. Furthermore, there is a lack of mechanisms to efficiently integrate automated data acquisition and processing and provide information in an intuitively understandable format.

[0185] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0186] In this invention, the server includes an information acquisition means for acquiring budget information, an information processing means for formatting and aggregating the acquired information, and a function for analyzing the user's emotions using emotion recognition means and dynamically adjusting the display of the visualization means. This enables dynamic display adjustment based on the user's emotions, making it possible to provide a more personalized experience.

[0187] "Information acquisition means" refers to a mechanism for automatically acquiring budget-related data from external sources.

[0188] "Information processing means" refers to functions for formatting acquired data and performing necessary calculations and aggregations.

[0189] "Analysis techniques" are technologies that calculate the differences between past data and current data, and save the results as a new dataset.

[0190] A "visualization method" is a system that displays analysis results in a way that users can intuitively understand.

[0191] An "emotion recognition tool" is an engine that analyzes a user's operation history and reactions to infer their emotional state.

[0192] A "reporting mechanism" is a system that saves generated reports and automatically transmits them to relevant parties for notification.

[0193] "Electronic communication means" refers to digital communication technologies used to transmit reports to users and relevant parties.

[0194] An "interface" is a means of connection for exchanging data between different systems or programs.

[0195] The embodiments for carrying out the invention are described below. This system combines the functions of information acquisition, processing, analysis, visualization, sentiment recognition, and reporting to improve the user experience.

[0196] The server uses APIs to automatically retrieve budget information from external sources. Secure and reliable protocols are used for this information retrieval, ensuring data integrity and confidentiality.

[0197] The acquired information is formatted by information processing tools, handling missing values ​​and converting it to the required format. This involves using dedicated data processing software to create a unified dataset. The server then uses analysis tools to compare the current data with past data and saves it as a new dataset in a format that clearly shows trends of increase or decrease.

[0198] The terminal displays analysis results through visualization tools, providing information in a user-friendly format. Statistical analysis software is used to generate graphs and charts, which are updated in real time.

[0199] When a user interacts with the dashboard, emotion recognition mechanisms activate to analyze the user's interaction history and reactions. This allows the device to dynamically adjust its display, focusing on areas of user interest. For example, if a user spends a long time on a particular piece of information, that category will be displayed in more detail.

[0200] As a reporting mechanism, the server sends the generated report to relevant parties via electronic communication. This report includes insights gained from sentiment recognition and incorporates a user feedback process.

[0201] As a concrete example, if a user expresses interest in summer fashion items, an algorithm will be implemented to display related products at the top. An example of a prompt statement for this process is shown below.

[0202] "Use an emotion recognition engine to identify product categories that users are interested in, and then prioritize displaying products from those categories. Specifically, pick out summer fashion items."

[0203] In this way, the system can provide a more personalized experience and accurately meet user needs.

[0204] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0205] Step 1:

[0206] The server retrieves budget information from external sources via APIs. The API key and parameters for the data to be retrieved are required as input. This allows the server to store the latest budget data in a database.

[0207] Step 2:

[0208] The server processes the acquired data using information processing tools. The raw data acquired in step 1 is used as input. Missing values ​​are imputed and the format is converted, and the data is output in a standardized format.

[0209] Step 3:

[0210] The server uses analytical tools to compare the formatted data with historical data. It uses historical data and the formatted data as input. This generates aggregated data to identify trends and outliers.

[0211] Step 4:

[0212] The terminal displays the analysis results to the user using visualization methods. The aggregated data generated in step 3 is used as input. This provides the user with information in a visually appealing format, such as graphs and charts.

[0213] Step 5:

[0214] When a user interacts with the dashboard, emotion recognition measures analyze their reactions. This analysis uses user interaction data and operation history as input. Based on this, the system infers the user's emotional state and dynamically adjusts the displayed content accordingly.

[0215] Step 6:

[0216] The server generates the final report and sends it to the relevant parties using electronic communication methods. It uses the sentiment recognition results and analysis data as input. This generates a report reflecting the sentiment data in PDF format, which is automatically sent via email.

[0217] In this way, the system goes through a series of processes, from data acquisition to emotion recognition, to provide users with personalized information.

[0218] 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.

[0219] 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.

[0220] 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.

[0221] [Second Embodiment]

[0222] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.

[0223] 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.

[0224] 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).

[0225] 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.

[0226] 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.

[0227] 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).

[0228] 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.

[0229] 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.

[0230] 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.

[0231] 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.

[0232] 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.

[0233] 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".

[0234] This invention aims to realize a system for automatically acquiring, processing, analyzing, visualizing, and reporting budget data. Specific embodiments are described below.

[0235] First, the server periodically retrieves budget data from a pre-specified spreadsheet using the Google Sheets API. The retrieved data is then stored on the server using the data retrieval method. This operation requires appropriate authentication credentials, which the server uses to securely access the data.

[0236] Next, the server uses data processing tools to format the acquired raw data. This process imputes missing data values ​​and standardizes date and numerical formats. For example, missing data is filled in with the average value or a specified default value. This organizes the data into a format suitable for aggregation.

[0237] After formatting, the server further uses data processing tools to aggregate monthly budgets for each project. The aggregated results are stored in a database and used in subsequent analysis steps. Using analysis tools, the server calculates the difference from the previous month based on this aggregated data and identifies trends in increases and decreases.

[0238] Subsequently, the terminal has visualization capabilities to visually display the analysis results for the user. The terminal presents the data as graphs and tables, allowing the user to intuitively understand the information. For example, a line graph can be used to show the trend of the budget over time.

[0239] Ultimately, the server utilizes reporting mechanisms to generate a report containing the analysis results and saves it as a file in PDF format or another suitable location. This report is automatically sent via email to designated stakeholders. This allows users to receive the latest analysis information immediately. This process significantly reduces the time and effort previously required for manual work.

[0240] This invention aims to improve the efficiency of budget management operations and contribute to the work of finance teams and project managers.

[0241] The following describes the processing flow.

[0242] Step 1:

[0243] The server uses the Google Sheets API to retrieve the latest budget data from the spreadsheet. It accesses the API using authentication credentials and retrieves the data in JSON format according to the specified spreadsheet ID.

[0244] Step 2:

[0245] The server preprocesses the acquired data. This involves formatting the data, imputing missing values, and standardizing date and numerical formats. This prepares the data for aggregation.

[0246] Step 3:

[0247] The server categorizes the data by project and uses a data processing script to aggregate the monthly budget. Here, the data is grouped using the project ID as the key, and the total for each month is calculated.

[0248] Step 4:

[0249] The server analyzes the budget difference from the previous month based on the aggregated data. It calculates the difference and generates a new dataset to understand the trend of increase or decrease.

[0250] Step 5:

[0251] The device uses visualization tools to present the analysis results to the user. The target data is displayed in graph or tabular format, presented in an intuitive and easy-to-understand manner.

[0252] Step 6:

[0253] The server automatically generates reports and creates reports in formats such as PDF based on the analysis results. It also uses templates to typeset the documents and arrange the data appropriately.

[0254] Step 7:

[0255] The server sends the generated report to the designated stakeholders via email or other notification means. Information is shared immediately by sending emails using the SMTP protocol.

[0256] Step 8:

[0257] The user reviews the analysis results displayed on the dashboard and requests additional analysis from the system as needed. The terminal updates its interface in response to the user's instructions.

[0258] (Example 1)

[0259] 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."

[0260] In modern organizational management, budget management is often inefficient, requiring significant time and effort for manual data acquisition, formatting, and aggregation. Furthermore, delays in updating information can lead to delays in management decisions. There is a need to automate and efficiently resolve these challenges using new technologies.

[0261] 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.

[0262] In this invention, the server includes information acquisition means for automatically acquiring data, information processing means for formatting the acquired raw data, imputing missing values, and standardizing the format, and analysis means for aggregating monthly budgets for each project, calculating the difference from the previous month, and analyzing trends in increases and decreases. This makes it possible to automate a series of processes from acquiring budget data to analysis and notification.

[0263] "Information acquisition means" refers to technologies and methods for automatically collecting data from specific information sources.

[0264] "Information processing means" refers to the technologies and methods used to organize acquired data into a format that can be analyzed and used.

[0265] "Analysis methods" refer to techniques and methods that use aggregated data to identify specific patterns or trends and derive useful insights from them.

[0266] "Visualization methods" refer to technologies and methods that visually display analysis results and data, making them easier for users to understand intuitively.

[0267] "Notification means" refers to the technologies and methods used to deliver generated information and reports to relevant parties.

[0268] A description of embodiments for carrying out this invention will be given.

[0269] First, the server uses the Google Sheets API to automatically retrieve budget data from a specified spreadsheet at regular intervals. To do this, it securely retrieves the data using appropriate authentication credentials. The retrieved data is then stored in a database.

[0270] Next, the server uses data processing techniques to format the acquired data. This process imputes missing values ​​in the raw data with the previous month's average or a specified default value, and standardizes the format of dates and numbers. For example, all dates are converted to the "YYYY-MM-DD" format.

[0271] Furthermore, the server uses analytical techniques to aggregate the monthly budget for each project using the formatted data. Based on the aggregated data, it calculates the difference from the previous month and analyzes trends in increases and decreases.

[0272] The device then utilizes visualization technology to visually display the analysis results. This allows users to intuitively understand budget trends and allocations by category through line graphs and bar graphs.

[0273] Finally, the server uses reporting technology to generate a PDF report and automatically emails it to the designated stakeholders. This report includes visualized graphs and detailed analysis results.

[0274] For example, if a user specifies a spreadsheet titled "Monthly Budget Analysis for Project X, FY2023," the system retrieves data from that spreadsheet at the beginning of each month and emails the analysis results as a PDF report to the relevant project manager and finance team. This process allows users to quickly grasp the latest budget status and trends.

[0275] An example of a prompt message for a generating AI model is: "Retrieve the monthly budget data for Project X for fiscal year 2023 from the spreadsheet, generate a PDF report visualizing the monthly budget trends in a line graph, and send it to the specified email address."

[0276] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0277] Step 1:

[0278] The server uses an information retrieval method to obtain budget data from a specified Google Spreadsheet. The inputs used are authentication information and the spreadsheet ID. The specific data retrieval process involves accessing the Google Spreadsheet API and reading data from the specified range. The output is stored on the server as raw data.

[0279] Step 2:

[0280] The server uses information processing tools to format the acquired raw data. The input is the raw data acquired in step 1. Specifically, missing values ​​are imputed with the mean or default value, dates are converted to "YYYY-MM-DD" format, and numerical values ​​are standardized to two decimal places. The output is formatted data in a format suitable for analysis and aggregation.

[0281] Step 3:

[0282] The server uses analysis means to aggregate the monthly budget for each case. The input is the data formatted in Step 2. As a specific operation, it accesses the database, sums up the monthly budget for each case, and aggregates them by category. The output is the aggregated data, which is saved in the database.

[0283] Step 4:

[0284] The server further uses analysis means to calculate the difference from the previous month and analyze the increasing or decreasing trend. The input is the data aggregated in Step 3. Specifically, it calculates the difference from the previous month for each category and calculates the growth rate. The output is the analysis result, which is saved in the database in a format that is easy for users to understand.

[0285] Step 5:

[0286] The terminal utilizes visualization means to visually display the analysis result. The input is the analysis result obtained in Step 4. As a specific operation, it uses a library for graph creation to generate a line graph or a bar graph. The output is the graph or table visually displayed to the user. The user can utilize this intuitively.

[0287] Step 6:

[0288] The server uses notification means to generate a report and send it to relevant personnel. The input is the analysis result of Step 4. As a specific operation, it uses PDF generation software to create a report and sends it by email to the set email address. The output is the sent PDF report, and relevant personnel can confirm the latest information based on this.

[0289] (Application Example 1)

[0290] Next, Application Example 1 will be described. In the following description, the data processing device 12 is referred to as the "server", and the smart glasses 214 are referred to as the "terminal".

[0291] In modern cities, it is difficult for citizens to have a transparent and real-time understanding of how public services and infrastructure projects are being used. This results in a lack of sufficient information for citizens regarding whether budgets are being used efficiently and fairly. Furthermore, understanding trends in budget usage is crucial for quickly determining future plans and areas for improvement.

[0292] 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.

[0293] In this invention, the server includes an information acquisition means for acquiring budget data, an information processing means for formatting and aggregating the acquired information, an analysis means for calculating the difference with the previous month, a visualization means for visualizing the analysis results, a reporting means for saving the generated report and providing notifications, a public information provision means for providing budget usage status to citizens, and a public usage comparison means for visually presenting comparisons with the previous year and the previous month. As a result, citizens can grasp the status of budget usage transparently and in real time, and it becomes possible to promote the efficient and fair use of public services.

[0294] "Budget data" is a general term for financial information used in public services, infrastructure projects, and other similar activities.

[0295] "Information acquisition methods" refer to the processes and technologies used to collect data from external information sources.

[0296] "Information processing means" refers to techniques for formatting acquired data, imputing missing values, and performing aggregation.

[0297] "Analysis methods" refer to techniques used to analyze aggregated data and understand the differences from the previous month and trends in budget increases or decreases.

[0298] "Visualization methods" refer to technologies that visually display analysis results using graphs and tables, enabling users to understand them intuitively.

[0299] "Reporting methods" refer to the technologies and processes for saving the generated analysis results as documents and notifying designated stakeholders.

[0300] "Public information provision means" refers to the processes and technologies used to provide citizens with budget information on public services and infrastructure projects.

[0301] "Public use comparison tools" refer to technologies that compare budget usage with past usage and visually present changes to users.

[0302] This invention is a system for periodically acquiring, processing, analyzing, visualizing, and reporting budget data. The server automatically acquires budget data from pre-specified information sources using information acquisition means. A highly reliable external data acquisition application programming interface is used for data collection.

[0303] The server uses data processing tools to format the acquired raw data. This process imputes missing values ​​and standardizes the data format. Specifically, data processing libraries such as NumPy and Pandas are utilized. As a result, the data is prepared in a format suitable for subsequent processing.

[0304] Using analytical tools, the server analyzes the formatted data and calculates trends of increase or decrease by comparing it with past data. The results of the analysis are displayed on the terminal in graph or tabular format using visualization tools. Visualization libraries such as Matplotlib are used for visualization. For example, a user can view the time-dependent changes in the budget for public services as a line graph.

[0305] Next, a report of the generated analysis results is created in PDF format or another suitable format using the reporting system. This report is automatically sent via email to the contacts specified by the user. Electronic communication technologies such as SMTP servers are used for the notification system.

[0306] Furthermore, through the public information provision means, citizens can check the budget status of public services and infrastructure projects in real time via their smartphones. This application is implemented as a web application using the Flask framework and is accessible from smartphones. Citizens can use the public utilization comparison means to compare past budget performance with the present and make accurate judgments. This function includes the generation of prediction data based on past usage situations.

[0307] As a specific example, there may be a case of checking the progress of the "City Park Maintenance Project". The user launches the app and selects the corresponding project to visualize the latest budget usage situation. Also, by checking the "YoY (Year-on-Year)", the increase or decrease in budget usage compared to the same period of the previous year helps the user's understanding.

[0308] As an example of the prompt text for the generative AI model, content such as "Please generate Python code for visualizing the budget usage situation of park maintenance in a smart city project. The data is obtained from a Google Spreadsheet and displayed as a graph using Matplotlib." can be considered.

[0309] The flow of the specific process in Application Example 1 will be described using FIG. 12.

[0310] Step 1:

[0311] The server uses the information acquisition means to obtain budget data from an external information source. At this time, an application programming interface is used for data collection, and data access that requires authentication information is performed securely. The inputs are the access authentication information for the external information source and the data acquisition request, and the output is the raw budget data obtained.

[0312] Step 2:

[0313] The server processes the acquired data using information processing tools. NumPy and Pandas are used to impute missing values ​​and standardize data formats. The input is the acquired raw data, and the output is the formatted data. Specific operations include imputing missing values ​​and standardizing date formats.

[0314] Step 3:

[0315] The server uses analysis tools to aggregate formatted data monthly and compare it with past monthly data. It performs data calculations to identify differences and trends in increases and decreases, and generates analysis results. The input is formatted aggregated data, and the output is analysis results showing differences and trends in increases and decreases. The specific operations include aggregation and comparison calculations.

[0316] Step 4:

[0317] The terminal uses visualization tools to display the analysis results received from the server as line graphs and bar graphs. The input is the analysis result data, and the output is visualized information presented to the user. Specifically, it generates graphs using Matplotlib and draws them on the user interface.

[0318] Step 5:

[0319] The server saves the generated report in PDF format via its electronic communication function, which is the reporting method, and sends it via email to the designated user. The input is the report data created based on the analysis results, and the output is the sent report file. The specific operations are report generation and email sending using the SMTP protocol.

[0320] Step 6:

[0321] Users access a smartphone app via public information provision channels to view budget data for public services and infrastructure projects in real time. Input is the latest budget data processed on the server, and output displays updated budget usage on the user screen. The specific actions involve launching the app, sending data update requests, and displaying the results.

[0322] Step 7:

[0323] Users can use a public usage comparison tool to compare current and past budget usage and visually understand the differences. The input is budget data from two different points in time, and the output is a graph showing the comparison results. Specific operations include dataset selection and graph generation.

[0324] 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.

[0325] This invention combines a system for automatically acquiring, processing, analyzing, visualizing, and reporting budget data with an emotion engine that recognizes user emotions. Specific embodiments of this invention are described below.

[0326] In this invention, the server uses the Google Sheets API to retrieve the latest budget data from a spreadsheet. The data is retrieved securely using authentication credentials. Next, the server uses data processing means to format and aggregate the retrieved data. This formatting process eliminates missing values ​​and ensures the data is stored in a unified format.

[0327] Subsequently, the server uses analytical tools to calculate the difference from the previous month based on the aggregated data. The analysis results are saved as a new dataset to understand the trend of increase or decrease. The terminal uses visualization tools to display these analysis results to the user. The data is presented in an intuitively understandable format using graphs and tables.

[0328] The sentiment engine analyzes the user's interaction history and reactions on the dashboard. As the user interacts with the dashboard, the sentiment engine infers the user's emotions in real time and adjusts the display of visualizations accordingly. For example, if the user expresses dissatisfaction, it can provide more detailed data information or suggest an alternative visualization format.

[0329] Finally, the server utilizes reporting mechanisms to create a final report. This report includes user sentiment data obtained through the sentiment engine, along with analysis that contributes to improving the user experience. The generated report is saved in PDF format and automatically sent to relevant parties via email. This automated process enables users to respond quickly and efficiently to changing situations and make decisions.

[0330] This invention goes beyond mere data processing, enabling comprehensive system operation that enhances user experience and operational efficiency.

[0331] The following describes the processing flow.

[0332] Step 1:

[0333] The server uses the Google Sheets API to retrieve the latest budget data from a specified spreadsheet. It securely accesses the API using authentication credentials and receives the data in JSON format.

[0334] Step 2:

[0335] The server formats the acquired data. Scripts are executed to impute missing values ​​and standardize date and numerical formats. This prepares the data for analysis and aggregation.

[0336] Step 3:

[0337] The server aggregates the formatted data. It groups the data by project and calculates the monthly budget total. Here, SQL-like queries are used to perform the aggregation quickly and accurately.

[0338] Step 4:

[0339] The server calculates the difference from the previous month based on the aggregated data. By generating new difference data and understanding the trend of increase or decrease, it provides data to support future decision-making.

[0340] Step 5:

[0341] The device uses visualization tools to display the analysis results. Line graphs and bar graphs are drawn to visually present data trends in a user-friendly format.

[0342] Step 6:

[0343] The emotion engine monitors user actions and infers their emotional state. It analyzes clicks, dwell time, and interaction patterns when users interact with the dashboard, and adjusts the interface according to their emotional state.

[0344] Step 7:

[0345] The server generates the report. It combines the analysis results with user sentiment data to create a more useful report based on a template.

[0346] Step 8:

[0347] The server sends the generated report to relevant parties via email. SMTP is used to ensure rapid distribution of the report and information sharing.

[0348] Step 9:

[0349] Users review the information on the dashboard and request additional analysis as needed. The system then generates new visualizations and performs further data analysis based on user feedback.

[0350] (Example 2)

[0351] 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".

[0352] Traditional budget management systems often involved manual data acquisition, processing, analysis, and visualization, resulting in inefficiencies. Furthermore, they displayed data without considering user emotions or reactions, hindering information comprehension and decision-making. Additionally, the failure to share generated reports with stakeholders in a timely manner hindered rapid decision-making.

[0353] 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.

[0354] In this invention, the server includes means for acquiring information, information processing means for formatting and aggregating the acquired information, analysis means for calculating the difference with past data, sentiment analysis means for analyzing user reactions and adjusting information using a generation AI model, and reporting means for saving the generated report and providing notifications. This enables efficient data processing and information provision adapted to the user, realizing rapid information sharing and decision support for stakeholders.

[0355] "Means of acquiring information" refers to functions for automatically collecting necessary data from external sources.

[0356] "Information processing means" refers to functions that format collected data, fill in missing information, and aggregate it based on specific criteria.

[0357] "Analysis tools" are functions that analyze changes by comparing them with past data and calculate specific indicators.

[0358] "Means of representation" refers to functions that display analyzed data in a visually easy-to-understand format.

[0359] "Emotional analysis tools" are functions that infer the user's psychological state based on their actions and reactions, and adjust the data display accordingly.

[0360] "Reporting means" refers to a function for saving generated analysis results and reports, and for informing relevant parties as needed.

[0361] A "generative AI model" is an artificial intelligence technology that uses machine learning techniques to detect user reactions and data characteristics, and to perform appropriate analysis and display.

[0362] An "interface" is a means of connection for exchanging information between different systems or programs.

[0363] "Electronic communication" refers to communication methods that use the internet, email, and other means to exchange information.

[0364] This invention provides a system that streamlines budget management and improves the user experience by combining multiple information processing elements. Specific embodiments are described below.

[0365] The server is equipped with means to retrieve information using external data storage. This means includes, for example, utilizing specific APIs, enabling real-time data reception via an internet connection. The retrieved data is then formatted by information processing tools, including the imputation of missing data and data aggregation. This processing ensures the data is presented in a uniform format and stored in a state suitable for analysis.

[0366] Next, the server uses analysis tools to compare current data with historical data and calculate specific fluctuation indicators. These indicators can be used by users to understand trends in budget increases and decreases. The calculated indicators are displayed on the terminal through a display tool, allowing users to visually confirm the data.

[0367] On the other hand, emotion analysis tools analyze user actions and reactions, and adjust the displayed content based on the resulting emotion data. For example, if a user expresses dissatisfaction with specific data, the server automatically provides detailed information to help the user easily decide on their next action.

[0368] Ultimately, the server stores the reports generated using the reporting mechanism and automatically transmits them to relevant parties via electronic communication. This allows users to quickly share information and accelerate decision-making.

[0369] As a concrete example, consider the case of evaluating a product budget. The system automatically retrieves expenditures for all projects, analyzes fluctuations in expenditures for a specific product category, and visualizes the results as a graph. When the user enters a prompt such as, "Please show me the details of why the development cost of a particular product increased," the system presents the analysis results of the main factors influencing development costs.

[0370] Thus, the system of the present invention maximizes the value provided to the user by integrating automatic data acquisition, efficient analysis, user-adaptive display, and rapid reporting functions.

[0371] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0372] Step 1:

[0373] The server initiates a mechanism to retrieve information from external data storage. It obtains information from the user-specified data source via the internet using a specific API and stores the input data in temporary memory within the server. This ensures that the raw data is securely stored on the server.

[0374] Step 2:

[0375] The server formats the input data acquired using information processing tools. It performs processes to ensure data integrity, such as imputing missing values ​​and deleting irrelevant data. Based on the formatted data, it aggregates it by date and category and calculates statistical indicators. As output, aggregated data in a uniform format can be obtained.

[0376] Step 3:

[0377] The server uses analytical tools to analyze the differences between current and past data. It takes aggregated data as input, checks for increases and decreases in values ​​over a specific period, and calculates the fluctuations as an index. The calculation results are saved as a new dataset, and the output fluctuation index is used in subsequent processes.

[0378] Step 4:

[0379] The terminal receives analytical data transmitted from the server. It then displays the data in a visualized form, such as graphs or tables, using various representational tools. It provides users with an intuitive and easy-to-understand interface, allowing them to deepen their insights into the data through the outputted visual information.

[0380] Step 5:

[0381] As the user operates the device, the emotion analysis system analyzes the user's input and actions in real time. The user's reactions are acquired as input data, and a generative AI model is used to infer their emotions. Based on the analysis results, the device's display content is adjusted as needed to provide the user with optimal information.

[0382] Step 6:

[0383] The server generates the final report using a reporting mechanism. It automatically creates the report content using data including analysis results and user feedback as input. As a result, a report in PDF format is output and sent to relevant parties via electronic communication. This allows users to share information in a timely manner.

[0384] (Application Example 2)

[0385] 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 as the "terminal".

[0386] In modern commerce, it is necessary to respond to users' thoughts and emotions in real time, but existing data analytics systems fail to meet this requirement. Traditional systems focus on visualizing and analyzing information, but struggle to dynamically adjust displays to take user emotions into account, hindering improvements in the user experience. Furthermore, there is a lack of mechanisms to efficiently integrate automated data acquisition and processing and provide information in an intuitively understandable format.

[0387] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0388] In this invention, the server includes an information acquisition means for acquiring budget information, an information processing means for formatting and aggregating the acquired information, and a function for analyzing the user's emotions using emotion recognition means and dynamically adjusting the display of the visualization means. This enables dynamic display adjustment based on the user's emotions, making it possible to provide a more personalized experience.

[0389] "Information acquisition means" refers to a mechanism for automatically acquiring budget-related data from external sources.

[0390] "Information processing means" refers to functions for formatting acquired data and performing necessary calculations and aggregations.

[0391] "Analysis techniques" are technologies that calculate the differences between past data and current data, and save the results as a new dataset.

[0392] A "visualization method" is a system that displays analysis results in a way that users can intuitively understand.

[0393] An "emotion recognition tool" is an engine that analyzes a user's operation history and reactions to infer their emotional state.

[0394] A "reporting mechanism" is a system that saves generated reports and automatically transmits them to relevant parties for notification.

[0395] "Electronic communication means" refers to digital communication technologies used to transmit reports to users and relevant parties.

[0396] An "interface" is a means of connection for exchanging data between different systems or programs.

[0397] The embodiments for carrying out the invention are described below. This system combines the functions of information acquisition, processing, analysis, visualization, sentiment recognition, and reporting to improve the user experience.

[0398] The server uses APIs to automatically retrieve budget information from external sources. Secure and reliable protocols are used for this information retrieval, ensuring data integrity and confidentiality.

[0399] The acquired information is formatted by information processing tools, handling missing values ​​and converting it to the required format. This involves using dedicated data processing software to create a unified dataset. The server then uses analysis tools to compare the current data with past data and saves it as a new dataset in a format that clearly shows trends of increase or decrease.

[0400] The terminal displays analysis results through visualization tools, providing information in a user-friendly format. Statistical analysis software is used to generate graphs and charts, which are updated in real time.

[0401] When a user interacts with the dashboard, emotion recognition mechanisms activate to analyze the user's interaction history and reactions. This allows the device to dynamically adjust its display, focusing on areas of user interest. For example, if a user spends a long time on a particular piece of information, that category will be displayed in more detail.

[0402] As a reporting mechanism, the server sends the generated report to relevant parties via electronic communication. This report includes insights gained from sentiment recognition and incorporates a user feedback process.

[0403] As a concrete example, if a user expresses interest in summer fashion items, an algorithm will be implemented to display related products at the top. An example of a prompt statement for this process is shown below.

[0404] "Use an emotion recognition engine to identify product categories that users are interested in, and then prioritize displaying products from those categories. Specifically, pick out summer fashion items."

[0405] In this way, the system can provide a more personalized experience and accurately meet user needs.

[0406] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0407] Step 1:

[0408] The server retrieves budget information from external sources via APIs. The API key and parameters for the data to be retrieved are required as input. This allows the server to store the latest budget data in a database.

[0409] Step 2:

[0410] The server processes the acquired data using information processing tools. The raw data acquired in step 1 is used as input. Missing values ​​are imputed and the format is converted, and the data is output in a standardized format.

[0411] Step 3:

[0412] The server uses analytical tools to compare the formatted data with historical data. It uses historical data and the formatted data as input. This generates aggregated data to identify trends and outliers.

[0413] Step 4:

[0414] The terminal displays the analysis results to the user using visualization methods. The aggregated data generated in step 3 is used as input. This provides the user with information in a visually appealing format, such as graphs and charts.

[0415] Step 5:

[0416] When a user interacts with the dashboard, emotion recognition measures analyze their reactions. This analysis uses user interaction data and operation history as input. Based on this, the system infers the user's emotional state and dynamically adjusts the displayed content accordingly.

[0417] Step 6:

[0418] The server generates the final report and sends it to the relevant parties using electronic communication methods. It uses the sentiment recognition results and analysis data as input. This generates a report reflecting the sentiment data in PDF format, which is automatically sent via email.

[0419] In this way, the system goes through a series of processes, from data acquisition to emotion recognition, to provide users with personalized information.

[0420] 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.

[0421] 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.

[0422] 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.

[0423] [Third Embodiment]

[0424] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.

[0425] 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.

[0426] 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).

[0427] 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.

[0428] 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.

[0429] 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).

[0430] 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.

[0431] 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.

[0432] 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.

[0433] 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.

[0434] 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.

[0435] 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".

[0436] This invention aims to realize a system for automatically acquiring, processing, analyzing, visualizing, and reporting budget data. Specific embodiments are described below.

[0437] First, the server periodically retrieves budget data from a pre-specified spreadsheet using the Google Sheets API. The retrieved data is then stored on the server using the data retrieval method. This operation requires appropriate authentication credentials, which the server uses to securely access the data.

[0438] Next, the server uses data processing tools to format the acquired raw data. This process imputes missing data values ​​and standardizes date and numerical formats. For example, missing data is filled in with the average value or a specified default value. This organizes the data into a format suitable for aggregation.

[0439] After formatting, the server further uses data processing tools to aggregate monthly budgets for each project. The aggregated results are stored in a database and used in subsequent analysis steps. Using analysis tools, the server calculates the difference from the previous month based on this aggregated data and identifies trends in increases and decreases.

[0440] Subsequently, the terminal has visualization capabilities to visually display the analysis results for the user. The terminal presents the data as graphs and tables, allowing the user to intuitively understand the information. For example, a line graph can be used to show the trend of the budget over time.

[0441] Ultimately, the server utilizes reporting mechanisms to generate a report containing the analysis results and saves it as a file in PDF format or another suitable location. This report is automatically sent via email to designated stakeholders. This allows users to receive the latest analysis information immediately. This process significantly reduces the time and effort previously required for manual work.

[0442] This invention aims to improve the efficiency of budget management operations and contribute to the work of finance teams and project managers.

[0443] The following describes the processing flow.

[0444] Step 1:

[0445] The server uses the Google Sheets API to retrieve the latest budget data from the spreadsheet. It accesses the API using authentication credentials and retrieves the data in JSON format according to the specified spreadsheet ID.

[0446] Step 2:

[0447] The server preprocesses the acquired data. This involves formatting the data, imputing missing values, and standardizing date and numerical formats. This prepares the data for aggregation.

[0448] Step 3:

[0449] The server categorizes the data by project and uses a data processing script to aggregate the monthly budget. Here, the data is grouped using the project ID as the key, and the total for each month is calculated.

[0450] Step 4:

[0451] The server analyzes the budget difference from the previous month based on the aggregated data. It calculates the difference and generates a new dataset to understand the trend of increase or decrease.

[0452] Step 5:

[0453] The device uses visualization tools to present the analysis results to the user. The target data is displayed in graph or tabular format, presented in an intuitive and easy-to-understand manner.

[0454] Step 6:

[0455] The server automatically generates reports and creates reports in formats such as PDF based on the analysis results. It also uses templates to typeset the documents and arrange the data appropriately.

[0456] Step 7:

[0457] The server sends the generated report to the designated stakeholders via email or other notification means. Information is shared immediately by sending emails using the SMTP protocol.

[0458] Step 8:

[0459] The user reviews the analysis results displayed on the dashboard and requests additional analysis from the system as needed. The terminal updates its interface in response to the user's instructions.

[0460] (Example 1)

[0461] 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."

[0462] In modern organizational management, budget management is often inefficient, requiring significant time and effort for manual data acquisition, formatting, and aggregation. Furthermore, delays in updating information can lead to delays in management decisions. There is a need to automate and efficiently resolve these challenges using new technologies.

[0463] 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.

[0464] In this invention, the server includes information acquisition means for automatically acquiring data, information processing means for formatting the acquired raw data, imputing missing values, and standardizing the format, and analysis means for aggregating monthly budgets for each project, calculating the difference from the previous month, and analyzing trends in increases and decreases. This makes it possible to automate a series of processes from acquiring budget data to analysis and notification.

[0465] "Information acquisition means" refers to technologies and methods for automatically collecting data from specific information sources.

[0466] "Information processing means" refers to the technologies and methods used to organize acquired data into a format that can be analyzed and used.

[0467] "Analysis methods" refer to techniques and methods that use aggregated data to identify specific patterns or trends and derive useful insights from them.

[0468] "Visualization methods" refer to technologies and methods that visually display analysis results and data, making them easier for users to understand intuitively.

[0469] "Notification means" refers to the technologies and methods used to deliver generated information and reports to relevant parties.

[0470] A description of embodiments for carrying out this invention will be given.

[0471] First, the server uses the Google Sheets API to automatically retrieve budget data from a specified spreadsheet at regular intervals. To do this, it securely retrieves the data using appropriate authentication credentials. The retrieved data is then stored in a database.

[0472] Next, the server uses data processing techniques to format the acquired data. This process imputes missing values ​​in the raw data with the previous month's average or a specified default value, and standardizes the format of dates and numbers. For example, all dates are converted to the "YYYY-MM-DD" format.

[0473] Furthermore, the server uses analytical techniques to aggregate the monthly budget for each project using the formatted data. Based on the aggregated data, it calculates the difference from the previous month and analyzes trends in increases and decreases.

[0474] The device then utilizes visualization technology to visually display the analysis results. This allows users to intuitively understand budget trends and allocations by category through line graphs and bar graphs.

[0475] Finally, the server uses reporting technology to generate a PDF report and automatically emails it to the designated stakeholders. This report includes visualized graphs and detailed analysis results.

[0476] For example, if a user specifies a spreadsheet titled "Monthly Budget Analysis for Project X, FY2023," the system retrieves data from that spreadsheet at the beginning of each month and emails the analysis results as a PDF report to the relevant project manager and finance team. This process allows users to quickly grasp the latest budget status and trends.

[0477] An example of a prompt message for a generating AI model is: "Retrieve the monthly budget data for Project X for fiscal year 2023 from the spreadsheet, generate a PDF report visualizing the monthly budget trends in a line graph, and send it to the specified email address."

[0478] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0479] Step 1:

[0480] The server uses an information retrieval method to obtain budget data from a specified Google Spreadsheet. The inputs used are authentication information and the spreadsheet ID. The specific data retrieval process involves accessing the Google Spreadsheet API and reading data from the specified range. The output is stored on the server as raw data.

[0481] Step 2:

[0482] The server uses information processing tools to format the acquired raw data. The input is the raw data acquired in step 1. Specifically, missing values ​​are imputed with the mean or default value, dates are converted to "YYYY-MM-DD" format, and numerical values ​​are standardized to two decimal places. The output is formatted data in a format suitable for analysis and aggregation.

[0483] Step 3:

[0484] The server uses analysis tools to aggregate the monthly budget for each project. The input is the data formatted in step 2. Specifically, it accesses the database, sums the monthly budget for each project, and aggregates it by category. The output is the aggregated data, which is stored in the database.

[0485] Step 4:

[0486] The server then uses further analysis tools to calculate the difference from the previous month and analyze the trend of increase or decrease. The input is the data aggregated in step 3. Specifically, it calculates the difference from the previous month for each category and calculates the rate of increase or decrease. The output is the analysis result, which is stored in the database in a user-friendly format.

[0487] Step 5:

[0488] The terminal utilizes visualization tools to visually display the analysis results. The input is the analysis results obtained in step 4. Specifically, it generates line graphs and bar graphs using a graph creation library. The output is graphs and tables that are visually displayed to the user. The user can use this intuitively.

[0489] Step 6:

[0490] The server uses a notification system to generate a report and send it to the relevant parties. The input is the analysis results from step 4. Specifically, it creates a report using PDF generation software and sends it via email to the configured email address. The output is the sent PDF report, which allows the relevant parties to check the latest information.

[0491] (Application Example 1)

[0492] 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."

[0493] In modern cities, it is difficult for citizens to have a transparent and real-time understanding of how public services and infrastructure projects are being used. This results in a lack of sufficient information for citizens regarding whether budgets are being used efficiently and fairly. Furthermore, understanding trends in budget usage is crucial for quickly determining future plans and areas for improvement.

[0494] 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.

[0495] In this invention, the server includes an information acquisition means for acquiring budget data, an information processing means for formatting and aggregating the acquired information, an analysis means for calculating the difference with the previous month, a visualization means for visualizing the analysis results, a reporting means for saving the generated report and providing notifications, a public information provision means for providing budget usage status to citizens, and a public usage comparison means for visually presenting comparisons with the previous year and the previous month. As a result, citizens can grasp the status of budget usage transparently and in real time, and it becomes possible to promote the efficient and fair use of public services.

[0496] "Budget data" is a general term for financial information used in public services, infrastructure projects, and other similar activities.

[0497] "Information acquisition methods" refer to the processes and technologies used to collect data from external information sources.

[0498] "Information processing means" refers to techniques for formatting acquired data, imputing missing values, and performing aggregation.

[0499] "Analysis methods" refer to techniques used to analyze aggregated data and understand the differences from the previous month and trends in budget increases or decreases.

[0500] "Visualization methods" refer to technologies that visually display analysis results using graphs and tables, enabling users to understand them intuitively.

[0501] "Reporting methods" refer to the technologies and processes for saving the generated analysis results as documents and notifying designated stakeholders.

[0502] "Public information provision means" refers to the processes and technologies used to provide citizens with budget information on public services and infrastructure projects.

[0503] "Public use comparison tools" refer to technologies that compare budget usage with past usage and visually present changes to users.

[0504] This invention is a system for periodically acquiring, processing, analyzing, visualizing, and reporting budget data. The server automatically acquires budget data from pre-specified information sources using information acquisition means. A highly reliable external data acquisition application programming interface is used for data collection.

[0505] The server uses data processing tools to format the acquired raw data. This process imputes missing values ​​and standardizes the data format. Specifically, data processing libraries such as NumPy and Pandas are utilized. As a result, the data is prepared in a format suitable for subsequent processing.

[0506] Using analytical tools, the server analyzes the formatted data and calculates trends of increase or decrease by comparing it with past data. The results of the analysis are displayed on the terminal in graph or tabular format using visualization tools. Visualization libraries such as Matplotlib are used for visualization. For example, a user can view the time-dependent changes in the budget for public services as a line graph.

[0507] Next, a report of the generated analysis results is created in PDF format or another suitable format using the reporting system. This report is automatically sent via email to the contacts specified by the user. Electronic communication technologies such as SMTP servers are used for the notification system.

[0508] Furthermore, through public information provision tools, citizens can check the budget status of public services and infrastructure projects in real time via their smartphones. This application is implemented as a web application using the Flask framework and is accessible from smartphones. Citizens can use public usage comparison tools to compare past budget performance with current figures and make informed decisions. This function includes generating predictive data based on past usage.

[0509] One concrete example is viewing the progress of a "city park development project." Users can launch the app and select the relevant project to visualize the latest budget usage. Additionally, checking the "year-on-year comparison" helps users understand the increase or decrease in budget usage compared to the same period last year.

[0510] An example of a prompt for the generated AI model might be: "Generate Python code to visualize the budget usage for park development in a smart city project. The data will be retrieved from Google Sheets and displayed as a graph using Matplotlib."

[0511] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0512] Step 1:

[0513] The server retrieves budget data from external sources using information acquisition methods. In this process, an application programming interface is used for data collection, ensuring secure data access that requires authentication credentials. Inputs include authentication credentials for accessing the external source and a data acquisition request, while output is the retrieved raw budget data.

[0514] Step 2:

[0515] The server processes the acquired data using information processing tools. NumPy and Pandas are used to impute missing values ​​and standardize data formats. The input is the acquired raw data, and the output is the formatted data. Specific operations include imputing missing values ​​and standardizing date formats.

[0516] Step 3:

[0517] The server uses analysis tools to aggregate formatted data monthly and compare it with past monthly data. It performs data calculations to identify differences and trends in increases and decreases, and generates analysis results. The input is formatted aggregated data, and the output is analysis results showing differences and trends in increases and decreases. The specific operations include aggregation and comparison calculations.

[0518] Step 4:

[0519] The terminal uses visualization tools to display the analysis results received from the server as line graphs and bar graphs. The input is the analysis result data, and the output is visualized information presented to the user. Specifically, it generates graphs using Matplotlib and draws them on the user interface.

[0520] Step 5:

[0521] The server saves the generated report in PDF format via its electronic communication function, which is the reporting method, and sends it via email to the designated user. The input is the report data created based on the analysis results, and the output is the sent report file. The specific operations are report generation and email sending using the SMTP protocol.

[0522] Step 6:

[0523] Users access a smartphone app via public information provision channels to view budget data for public services and infrastructure projects in real time. Input is the latest budget data processed on the server, and output displays updated budget usage on the user screen. The specific actions involve launching the app, sending data update requests, and displaying the results.

[0524] Step 7:

[0525] Users can use a public usage comparison tool to compare current and past budget usage and visually understand the differences. The input is budget data from two different points in time, and the output is a graph showing the comparison results. Specific operations include dataset selection and graph generation.

[0526] 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.

[0527] This invention combines a system for automatically acquiring, processing, analyzing, visualizing, and reporting budget data with an emotion engine that recognizes user emotions. Specific embodiments of this invention are described below.

[0528] In this invention, the server uses the Google Sheets API to retrieve the latest budget data from a spreadsheet. The data is retrieved securely using authentication credentials. Next, the server uses data processing means to format and aggregate the retrieved data. This formatting process eliminates missing values ​​and ensures the data is stored in a unified format.

[0529] Subsequently, the server uses analytical tools to calculate the difference from the previous month based on the aggregated data. The analysis results are saved as a new dataset to understand the trend of increase or decrease. The terminal uses visualization tools to display these analysis results to the user. The data is presented in an intuitively understandable format using graphs and tables.

[0530] The sentiment engine analyzes the user's interaction history and reactions on the dashboard. As the user interacts with the dashboard, the sentiment engine infers the user's emotions in real time and adjusts the display of visualizations accordingly. For example, if the user expresses dissatisfaction, it can provide more detailed data information or suggest an alternative visualization format.

[0531] Finally, the server utilizes reporting mechanisms to create a final report. This report includes user sentiment data obtained through the sentiment engine, along with analysis that contributes to improving the user experience. The generated report is saved in PDF format and automatically sent to relevant parties via email. This automated process enables users to respond quickly and efficiently to changing situations and make decisions.

[0532] This invention goes beyond mere data processing, enabling comprehensive system operation that enhances user experience and operational efficiency.

[0533] The following describes the processing flow.

[0534] Step 1:

[0535] The server uses the Google Sheets API to retrieve the latest budget data from a specified spreadsheet. It securely accesses the API using authentication credentials and receives the data in JSON format.

[0536] Step 2:

[0537] The server formats the acquired data. Scripts are executed to impute missing values ​​and standardize date and numerical formats. This prepares the data for analysis and aggregation.

[0538] Step 3:

[0539] The server aggregates the formatted data. It groups the data by project and calculates the monthly budget total. Here, SQL-like queries are used to perform the aggregation quickly and accurately.

[0540] Step 4:

[0541] The server calculates the difference from the previous month based on the aggregated data. By generating new difference data and understanding the trend of increase or decrease, it provides data to support future decision-making.

[0542] Step 5:

[0543] The device uses visualization tools to display the analysis results. Line graphs and bar graphs are drawn to visually present data trends in a user-friendly format.

[0544] Step 6:

[0545] The emotion engine monitors user actions and infers their emotional state. It analyzes clicks, dwell time, and interaction patterns when users interact with the dashboard, and adjusts the interface according to their emotional state.

[0546] Step 7:

[0547] The server generates the report. It combines the analysis results with user sentiment data to create a more useful report based on a template.

[0548] Step 8:

[0549] The server sends the generated report to relevant parties via email. SMTP is used to ensure rapid distribution of the report and information sharing.

[0550] Step 9:

[0551] Users review the information on the dashboard and request additional analysis as needed. The system then generates new visualizations and performs further data analysis based on user feedback.

[0552] (Example 2)

[0553] 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."

[0554] Traditional budget management systems often involved manual data acquisition, processing, analysis, and visualization, resulting in inefficiencies. Furthermore, they displayed data without considering user emotions or reactions, hindering information comprehension and decision-making. Additionally, the failure to share generated reports with stakeholders in a timely manner hindered rapid decision-making.

[0555] 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.

[0556] In this invention, the server includes means for acquiring information, information processing means for formatting and aggregating the acquired information, analysis means for calculating the difference with past data, sentiment analysis means for analyzing user reactions and adjusting information using a generation AI model, and reporting means for saving the generated report and providing notifications. This enables efficient data processing and information provision adapted to the user, realizing rapid information sharing and decision support for stakeholders.

[0557] "Means of acquiring information" refers to functions for automatically collecting necessary data from external sources.

[0558] "Information processing means" refers to functions that format collected data, fill in missing information, and aggregate it based on specific criteria.

[0559] "Analysis tools" are functions that analyze changes by comparing them with past data and calculate specific indicators.

[0560] "Means of representation" refers to functions that display analyzed data in a visually easy-to-understand format.

[0561] "Emotional analysis tools" are functions that infer the user's psychological state based on their actions and reactions, and adjust the data display accordingly.

[0562] "Reporting means" refers to a function for saving generated analysis results and reports, and for informing relevant parties as needed.

[0563] A "generative AI model" is an artificial intelligence technology that uses machine learning techniques to detect user reactions and data characteristics, and to perform appropriate analysis and display.

[0564] An "interface" is a means of connection for exchanging information between different systems or programs.

[0565] "Electronic communication" refers to communication methods that use the internet, email, and other means to exchange information.

[0566] This invention provides a system that streamlines budget management and improves the user experience by combining multiple information processing elements. Specific embodiments are described below.

[0567] The server is equipped with means to retrieve information using external data storage. This means includes, for example, utilizing specific APIs, enabling real-time data reception via an internet connection. The retrieved data is then formatted by information processing tools, including the imputation of missing data and data aggregation. This processing ensures the data is presented in a uniform format and stored in a state suitable for analysis.

[0568] Next, the server uses analysis tools to compare current data with historical data and calculate specific fluctuation indicators. These indicators can be used by users to understand trends in budget increases and decreases. The calculated indicators are displayed on the terminal through a display tool, allowing users to visually confirm the data.

[0569] On the other hand, emotion analysis tools analyze user actions and reactions, and adjust the displayed content based on the resulting emotion data. For example, if a user expresses dissatisfaction with specific data, the server automatically provides detailed information to help the user easily decide on their next action.

[0570] Ultimately, the server stores the reports generated using the reporting mechanism and automatically transmits them to relevant parties via electronic communication. This allows users to quickly share information and accelerate decision-making.

[0571] As a concrete example, consider the case of evaluating a product budget. The system automatically retrieves expenditures for all projects, analyzes fluctuations in expenditures for a specific product category, and visualizes the results as a graph. When the user enters a prompt such as, "Please show me the details of why the development cost of a particular product increased," the system presents the analysis results of the main factors influencing development costs.

[0572] Thus, the system of the present invention maximizes the value provided to the user by integrating automatic data acquisition, efficient analysis, user-adaptive display, and rapid reporting functions.

[0573] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0574] Step 1:

[0575] The server initiates a mechanism to retrieve information from external data storage. It obtains information from the user-specified data source via the internet using a specific API and stores the input data in temporary memory within the server. This ensures that the raw data is securely stored on the server.

[0576] Step 2:

[0577] The server formats the input data acquired using information processing tools. It performs processes to ensure data integrity, such as imputing missing values ​​and deleting irrelevant data. Based on the formatted data, it aggregates it by date and category and calculates statistical indicators. As output, aggregated data in a uniform format can be obtained.

[0578] Step 3:

[0579] The server uses analytical tools to analyze the differences between current and past data. It takes aggregated data as input, checks for increases and decreases in values ​​over a specific period, and calculates the fluctuations as an index. The calculation results are saved as a new dataset, and the output fluctuation index is used in subsequent processes.

[0580] Step 4:

[0581] The terminal receives analytical data transmitted from the server. It then displays the data in a visualized form, such as graphs or tables, using various representational tools. It provides users with an intuitive and easy-to-understand interface, allowing them to deepen their insights into the data through the outputted visual information.

[0582] Step 5:

[0583] As the user operates the device, the emotion analysis system analyzes the user's input and actions in real time. The user's reactions are acquired as input data, and a generative AI model is used to infer their emotions. Based on the analysis results, the device's display content is adjusted as needed to provide the user with optimal information.

[0584] Step 6:

[0585] The server generates the final report using a reporting mechanism. It automatically creates the report content using data including analysis results and user feedback as input. As a result, a report in PDF format is output and sent to relevant parties via electronic communication. This allows users to share information in a timely manner.

[0586] (Application Example 2)

[0587] 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."

[0588] In modern commerce, it is necessary to respond to users' thoughts and emotions in real time, but existing data analytics systems fail to meet this requirement. Traditional systems focus on visualizing and analyzing information, but struggle to dynamically adjust displays to take user emotions into account, hindering improvements in the user experience. Furthermore, there is a lack of mechanisms to efficiently integrate automated data acquisition and processing and provide information in an intuitively understandable format.

[0589] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0590] In this invention, the server includes an information acquisition means for acquiring budget information, an information processing means for formatting and aggregating the acquired information, and a function for analyzing the user's emotions using emotion recognition means and dynamically adjusting the display of the visualization means. This enables dynamic display adjustment based on the user's emotions, making it possible to provide a more personalized experience.

[0591] "Information acquisition means" refers to a mechanism for automatically acquiring budget-related data from external sources.

[0592] "Information processing means" refers to functions for formatting acquired data and performing necessary calculations and aggregations.

[0593] "Analysis techniques" are technologies that calculate the differences between past data and current data, and save the results as a new dataset.

[0594] A "visualization method" is a system that displays analysis results in a way that users can intuitively understand.

[0595] An "emotion recognition tool" is an engine that analyzes a user's operation history and reactions to infer their emotional state.

[0596] A "reporting mechanism" is a system that saves generated reports and automatically transmits them to relevant parties for notification.

[0597] "Electronic communication means" refers to digital communication technologies used to transmit reports to users and relevant parties.

[0598] An "interface" is a means of connection for exchanging data between different systems or programs.

[0599] The embodiments for carrying out the invention are described below. This system combines the functions of information acquisition, processing, analysis, visualization, sentiment recognition, and reporting to improve the user experience.

[0600] The server uses APIs to automatically retrieve budget information from external sources. Secure and reliable protocols are used for this information retrieval, ensuring data integrity and confidentiality.

[0601] The acquired information is formatted by information processing tools, handling missing values ​​and converting it to the required format. This involves using dedicated data processing software to create a unified dataset. The server then uses analysis tools to compare the current data with past data and saves it as a new dataset in a format that clearly shows trends of increase or decrease.

[0602] The terminal displays analysis results through visualization tools, providing information in a user-friendly format. Statistical analysis software is used to generate graphs and charts, which are updated in real time.

[0603] When a user interacts with the dashboard, emotion recognition mechanisms activate to analyze the user's interaction history and reactions. This allows the device to dynamically adjust its display, focusing on areas of user interest. For example, if a user spends a long time on a particular piece of information, that category will be displayed in more detail.

[0604] As a reporting mechanism, the server sends the generated report to relevant parties via electronic communication. This report includes insights gained from sentiment recognition and incorporates a user feedback process.

[0605] As a concrete example, if a user expresses interest in summer fashion items, an algorithm will be implemented to display related products at the top. An example of a prompt statement for this process is shown below.

[0606] "Use an emotion recognition engine to identify product categories that users are interested in, and then prioritize displaying products from those categories. Specifically, pick out summer fashion items."

[0607] In this way, the system can provide a more personalized experience and accurately meet user needs.

[0608] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0609] Step 1:

[0610] The server retrieves budget information from external sources via APIs. The API key and parameters for the data to be retrieved are required as input. This allows the server to store the latest budget data in a database.

[0611] Step 2:

[0612] The server processes the acquired data using information processing tools. The raw data acquired in step 1 is used as input. Missing values ​​are imputed and the format is converted, and the data is output in a standardized format.

[0613] Step 3:

[0614] The server uses analytical tools to compare the formatted data with historical data. It uses historical data and the formatted data as input. This generates aggregated data to identify trends and outliers.

[0615] Step 4:

[0616] The terminal displays the analysis results to the user using visualization methods. The aggregated data generated in step 3 is used as input. This provides the user with information in a visually appealing format, such as graphs and charts.

[0617] Step 5:

[0618] When a user interacts with the dashboard, emotion recognition measures analyze their reactions. This analysis uses user interaction data and operation history as input. Based on this, the system infers the user's emotional state and dynamically adjusts the displayed content accordingly.

[0619] Step 6:

[0620] The server generates the final report and sends it to the relevant parties using electronic communication methods. It uses the sentiment recognition results and analysis data as input. This generates a report reflecting the sentiment data in PDF format, which is automatically sent via email.

[0621] In this way, the system goes through a series of processes, from data acquisition to emotion recognition, to provide users with personalized information.

[0622] 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.

[0623] 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.

[0624] 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.

[0625] [Fourth Embodiment]

[0626] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.

[0627] 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.

[0628] 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).

[0629] 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.

[0630] 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.

[0631] 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).

[0632] 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.

[0633] 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.

[0634] 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.

[0635] 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.

[0636] 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.

[0637] 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.

[0638] 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".

[0639] This invention aims to realize a system for automatically acquiring, processing, analyzing, visualizing, and reporting budget data. Specific embodiments are described below.

[0640] First, the server periodically retrieves budget data from a pre-specified spreadsheet using the Google Sheets API. The retrieved data is then stored on the server using the data retrieval method. This operation requires appropriate authentication credentials, which the server uses to securely access the data.

[0641] Next, the server uses data processing tools to format the acquired raw data. This process imputes missing data values ​​and standardizes date and numerical formats. For example, missing data is filled in with the average value or a specified default value. This organizes the data into a format suitable for aggregation.

[0642] After formatting, the server further uses data processing tools to aggregate monthly budgets for each project. The aggregated results are stored in a database and used in subsequent analysis steps. Using analysis tools, the server calculates the difference from the previous month based on this aggregated data and identifies trends in increases and decreases.

[0643] Subsequently, the terminal has visualization capabilities to visually display the analysis results for the user. The terminal presents the data as graphs and tables, allowing the user to intuitively understand the information. For example, a line graph can be used to show the trend of the budget over time.

[0644] Ultimately, the server utilizes reporting mechanisms to generate a report containing the analysis results and saves it as a file in PDF format or another suitable location. This report is automatically sent via email to designated stakeholders. This allows users to receive the latest analysis information immediately. This process significantly reduces the time and effort previously required for manual work.

[0645] This invention aims to improve the efficiency of budget management operations and contribute to the work of finance teams and project managers.

[0646] The following describes the processing flow.

[0647] Step 1:

[0648] The server uses the Google Sheets API to retrieve the latest budget data from the spreadsheet. It accesses the API using authentication credentials and retrieves the data in JSON format according to the specified spreadsheet ID.

[0649] Step 2:

[0650] The server preprocesses the acquired data. This involves formatting the data, imputing missing values, and standardizing date and numerical formats. This prepares the data for aggregation.

[0651] Step 3:

[0652] The server categorizes the data by project and uses a data processing script to aggregate the monthly budget. Here, the data is grouped using the project ID as the key, and the total for each month is calculated.

[0653] Step 4:

[0654] The server analyzes the budget difference from the previous month based on the aggregated data. It calculates the difference and generates a new dataset to understand the trend of increase or decrease.

[0655] Step 5:

[0656] The device uses visualization tools to present the analysis results to the user. The target data is displayed in graph or tabular format, presented in an intuitive and easy-to-understand manner.

[0657] Step 6:

[0658] The server automatically generates reports and creates reports in formats such as PDF based on the analysis results. It also uses templates to typeset the documents and arrange the data appropriately.

[0659] Step 7:

[0660] The server sends the generated report to the designated stakeholders via email or other notification means. Information is shared immediately by sending emails using the SMTP protocol.

[0661] Step 8:

[0662] The user reviews the analysis results displayed on the dashboard and requests additional analysis from the system as needed. The terminal updates its interface in response to the user's instructions.

[0663] (Example 1)

[0664] 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".

[0665] In modern organizational management, budget management is often inefficient, requiring significant time and effort for manual data acquisition, formatting, and aggregation. Furthermore, delays in updating information can lead to delays in management decisions. There is a need to automate and efficiently resolve these challenges using new technologies.

[0666] 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.

[0667] In this invention, the server includes information acquisition means for automatically acquiring data, information processing means for formatting the acquired raw data, imputing missing values, and standardizing the format, and analysis means for aggregating monthly budgets for each project, calculating the difference from the previous month, and analyzing trends in increases and decreases. This makes it possible to automate a series of processes from acquiring budget data to analysis and notification.

[0668] "Information acquisition means" refers to technologies and methods for automatically collecting data from specific information sources.

[0669] "Information processing means" refers to the technologies and methods used to organize acquired data into a format that can be analyzed and used.

[0670] "Analysis methods" refer to techniques and methods that use aggregated data to identify specific patterns or trends and derive useful insights from them.

[0671] "Visualization methods" refer to technologies and methods that visually display analysis results and data, making them easier for users to understand intuitively.

[0672] "Notification means" refers to the technologies and methods used to deliver generated information and reports to relevant parties.

[0673] A description of embodiments for carrying out this invention will be given.

[0674] First, the server uses the Google Sheets API to automatically retrieve budget data from a specified spreadsheet at regular intervals. To do this, it securely retrieves the data using appropriate authentication credentials. The retrieved data is then stored in a database.

[0675] Next, the server uses data processing techniques to format the acquired data. This process imputes missing values ​​in the raw data with the previous month's average or a specified default value, and standardizes the format of dates and numbers. For example, all dates are converted to the "YYYY-MM-DD" format.

[0676] Furthermore, the server uses analytical techniques to aggregate the monthly budget for each project using the formatted data. Based on the aggregated data, it calculates the difference from the previous month and analyzes trends in increases and decreases.

[0677] The device then utilizes visualization technology to visually display the analysis results. This allows users to intuitively understand budget trends and allocations by category through line graphs and bar graphs.

[0678] Finally, the server uses reporting technology to generate a PDF report and automatically emails it to the designated stakeholders. This report includes visualized graphs and detailed analysis results.

[0679] For example, if a user specifies a spreadsheet titled "Monthly Budget Analysis for Project X, FY2023," the system retrieves data from that spreadsheet at the beginning of each month and emails the analysis results as a PDF report to the relevant project manager and finance team. This process allows users to quickly grasp the latest budget status and trends.

[0680] An example of a prompt message for a generating AI model is: "Retrieve the monthly budget data for Project X for fiscal year 2023 from the spreadsheet, generate a PDF report visualizing the monthly budget trends in a line graph, and send it to the specified email address."

[0681] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0682] Step 1:

[0683] The server uses an information retrieval method to obtain budget data from a specified Google Spreadsheet. The inputs used are authentication information and the spreadsheet ID. The specific data retrieval process involves accessing the Google Spreadsheet API and reading data from the specified range. The output is stored on the server as raw data.

[0684] Step 2:

[0685] The server uses information processing tools to format the acquired raw data. The input is the raw data acquired in step 1. Specifically, missing values ​​are imputed with the mean or default value, dates are converted to "YYYY-MM-DD" format, and numerical values ​​are standardized to two decimal places. The output is formatted data in a format suitable for analysis and aggregation.

[0686] Step 3:

[0687] The server uses analysis tools to aggregate the monthly budget for each project. The input is the data formatted in step 2. Specifically, it accesses the database, sums the monthly budget for each project, and aggregates it by category. The output is the aggregated data, which is stored in the database.

[0688] Step 4:

[0689] The server then uses further analysis tools to calculate the difference from the previous month and analyze the trend of increase or decrease. The input is the data aggregated in step 3. Specifically, it calculates the difference from the previous month for each category and calculates the rate of increase or decrease. The output is the analysis result, which is stored in the database in a user-friendly format.

[0690] Step 5:

[0691] The terminal utilizes visualization tools to visually display the analysis results. The input is the analysis results obtained in step 4. Specifically, it generates line graphs and bar graphs using a graph creation library. The output is graphs and tables that are visually displayed to the user. The user can use this intuitively.

[0692] Step 6:

[0693] The server uses a notification system to generate a report and send it to the relevant parties. The input is the analysis results from step 4. Specifically, it creates a report using PDF generation software and sends it via email to the configured email address. The output is the sent PDF report, which allows the relevant parties to check the latest information.

[0694] (Application Example 1)

[0695] 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".

[0696] In modern cities, it is difficult for citizens to have a transparent and real-time understanding of how public services and infrastructure projects are being used. This results in a lack of sufficient information for citizens regarding whether budgets are being used efficiently and fairly. Furthermore, understanding trends in budget usage is crucial for quickly determining future plans and areas for improvement.

[0697] 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.

[0698] In this invention, the server includes an information acquisition means for acquiring budget data, an information processing means for formatting and aggregating the acquired information, an analysis means for calculating the difference with the previous month, a visualization means for visualizing the analysis results, a reporting means for saving the generated report and providing notifications, a public information provision means for providing budget usage status to citizens, and a public usage comparison means for visually presenting comparisons with the previous year and the previous month. As a result, citizens can grasp the status of budget usage transparently and in real time, and it becomes possible to promote the efficient and fair use of public services.

[0699] "Budget data" is a general term for financial information used in public services, infrastructure projects, and other similar activities.

[0700] "Information acquisition methods" refer to the processes and technologies used to collect data from external information sources.

[0701] "Information processing means" refers to techniques for formatting acquired data, imputing missing values, and performing aggregation.

[0702] "Analysis methods" refer to techniques used to analyze aggregated data and understand the differences from the previous month and trends in budget increases or decreases.

[0703] "Visualization methods" refer to technologies that visually display analysis results using graphs and tables, enabling users to understand them intuitively.

[0704] "Reporting methods" refer to the technologies and processes for saving the generated analysis results as documents and notifying designated stakeholders.

[0705] "Public information provision means" refers to the processes and technologies used to provide citizens with budget information on public services and infrastructure projects.

[0706] "Public use comparison tools" refer to technologies that compare budget usage with past usage and visually present changes to users.

[0707] This invention is a system for periodically acquiring, processing, analyzing, visualizing, and reporting budget data. The server automatically acquires budget data from pre-specified information sources using information acquisition means. A highly reliable external data acquisition application programming interface is used for data collection.

[0708] The server uses data processing tools to format the acquired raw data. This process imputes missing values ​​and standardizes the data format. Specifically, data processing libraries such as NumPy and Pandas are utilized. As a result, the data is prepared in a format suitable for subsequent processing.

[0709] Using analytical tools, the server analyzes the formatted data and calculates trends of increase or decrease by comparing it with past data. The results of the analysis are displayed on the terminal in graph or tabular format using visualization tools. Visualization libraries such as Matplotlib are used for visualization. For example, a user can view the time-dependent changes in the budget for public services as a line graph.

[0710] Next, a report of the generated analysis results is created in PDF format or another suitable format using the reporting system. This report is automatically sent via email to the contacts specified by the user. Electronic communication technologies such as SMTP servers are used for the notification system.

[0711] Furthermore, through public information provision tools, citizens can check the budget status of public services and infrastructure projects in real time via their smartphones. This application is implemented as a web application using the Flask framework and is accessible from smartphones. Citizens can use public usage comparison tools to compare past budget performance with current figures and make informed decisions. This function includes generating predictive data based on past usage.

[0712] One concrete example is viewing the progress of a "city park development project." Users can launch the app and select the relevant project to visualize the latest budget usage. Additionally, checking the "year-on-year comparison" helps users understand the increase or decrease in budget usage compared to the same period last year.

[0713] An example of a prompt for the generated AI model might be: "Generate Python code to visualize the budget usage for park development in a smart city project. The data will be retrieved from Google Sheets and displayed as a graph using Matplotlib."

[0714] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0715] Step 1:

[0716] The server retrieves budget data from external sources using information acquisition methods. In this process, an application programming interface is used for data collection, ensuring secure data access that requires authentication credentials. Inputs include authentication credentials for accessing the external source and a data acquisition request, while output is the retrieved raw budget data.

[0717] Step 2:

[0718] The server processes the acquired data using information processing tools. NumPy and Pandas are used to impute missing values ​​and standardize data formats. The input is the acquired raw data, and the output is the formatted data. Specific operations include imputing missing values ​​and standardizing date formats.

[0719] Step 3:

[0720] The server uses analysis tools to aggregate formatted data monthly and compare it with past monthly data. It performs data calculations to identify differences and trends in increases and decreases, and generates analysis results. The input is formatted aggregated data, and the output is analysis results showing differences and trends in increases and decreases. The specific operations include aggregation and comparison calculations.

[0721] Step 4:

[0722] The terminal uses visualization tools to display the analysis results received from the server as line graphs and bar graphs. The input is the analysis result data, and the output is visualized information presented to the user. Specifically, it generates graphs using Matplotlib and draws them on the user interface.

[0723] Step 5:

[0724] The server saves the generated report in PDF format via its electronic communication function, which is the reporting method, and sends it via email to the designated user. The input is the report data created based on the analysis results, and the output is the sent report file. The specific operations are report generation and email sending using the SMTP protocol.

[0725] Step 6:

[0726] Users access a smartphone app via public information provision channels to view budget data for public services and infrastructure projects in real time. Input is the latest budget data processed on the server, and output displays updated budget usage on the user screen. The specific actions involve launching the app, sending data update requests, and displaying the results.

[0727] Step 7:

[0728] Users can use a public usage comparison tool to compare current and past budget usage and visually understand the differences. The input is budget data from two different points in time, and the output is a graph showing the comparison results. Specific operations include dataset selection and graph generation.

[0729] 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.

[0730] This invention combines a system for automatically acquiring, processing, analyzing, visualizing, and reporting budget data with an emotion engine that recognizes user emotions. Specific embodiments of this invention are described below.

[0731] In this invention, the server uses the Google Sheets API to retrieve the latest budget data from a spreadsheet. The data is retrieved securely using authentication credentials. Next, the server uses data processing means to format and aggregate the retrieved data. This formatting process eliminates missing values ​​and ensures the data is stored in a unified format.

[0732] Subsequently, the server uses analytical tools to calculate the difference from the previous month based on the aggregated data. The analysis results are saved as a new dataset to understand the trend of increase or decrease. The terminal uses visualization tools to display these analysis results to the user. The data is presented in an intuitively understandable format using graphs and tables.

[0733] The sentiment engine analyzes the user's interaction history and reactions on the dashboard. As the user interacts with the dashboard, the sentiment engine infers the user's emotions in real time and adjusts the display of visualizations accordingly. For example, if the user expresses dissatisfaction, it can provide more detailed data information or suggest an alternative visualization format.

[0734] Finally, the server utilizes reporting mechanisms to create a final report. This report includes user sentiment data obtained through the sentiment engine, along with analysis that contributes to improving the user experience. The generated report is saved in PDF format and automatically sent to relevant parties via email. This automated process enables users to respond quickly and efficiently to changing situations and make decisions.

[0735] This invention goes beyond mere data processing, enabling comprehensive system operation that enhances user experience and operational efficiency.

[0736] The following describes the processing flow.

[0737] Step 1:

[0738] The server uses the Google Sheets API to retrieve the latest budget data from a specified spreadsheet. It securely accesses the API using authentication credentials and receives the data in JSON format.

[0739] Step 2:

[0740] The server formats the acquired data. Scripts are executed to impute missing values ​​and standardize date and numerical formats. This prepares the data for analysis and aggregation.

[0741] Step 3:

[0742] The server aggregates the formatted data. It groups the data by project and calculates the monthly budget total. Here, SQL-like queries are used to perform the aggregation quickly and accurately.

[0743] Step 4:

[0744] The server calculates the difference from the previous month based on the aggregated data. By generating new difference data and understanding the trend of increase or decrease, it provides data to support future decision-making.

[0745] Step 5:

[0746] The device uses visualization tools to display the analysis results. Line graphs and bar graphs are drawn to visually present data trends in a user-friendly format.

[0747] Step 6:

[0748] The emotion engine monitors user actions and infers their emotional state. It analyzes clicks, dwell time, and interaction patterns when users interact with the dashboard, and adjusts the interface according to their emotional state.

[0749] Step 7:

[0750] The server generates the report. It combines the analysis results with user sentiment data to create a more useful report based on a template.

[0751] Step 8:

[0752] The server sends the generated report to relevant parties via email. SMTP is used to ensure rapid distribution of the report and information sharing.

[0753] Step 9:

[0754] Users review the information on the dashboard and request additional analysis as needed. The system then generates new visualizations and performs further data analysis based on user feedback.

[0755] (Example 2)

[0756] 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".

[0757] Traditional budget management systems often involved manual data acquisition, processing, analysis, and visualization, resulting in inefficiencies. Furthermore, they displayed data without considering user emotions or reactions, hindering information comprehension and decision-making. Additionally, the failure to share generated reports with stakeholders in a timely manner hindered rapid decision-making.

[0758] 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.

[0759] In this invention, the server includes means for acquiring information, information processing means for formatting and aggregating the acquired information, analysis means for calculating the difference with past data, sentiment analysis means for analyzing user reactions and adjusting information using a generation AI model, and reporting means for saving the generated report and providing notifications. This enables efficient data processing and information provision adapted to the user, realizing rapid information sharing and decision support for stakeholders.

[0760] "Means of acquiring information" refers to functions for automatically collecting necessary data from external sources.

[0761] "Information processing means" refers to functions that format collected data, fill in missing information, and aggregate it based on specific criteria.

[0762] "Analysis tools" are functions that analyze changes by comparing them with past data and calculate specific indicators.

[0763] "Means of representation" refers to functions that display analyzed data in a visually easy-to-understand format.

[0764] "Emotional analysis tools" are functions that infer the user's psychological state based on their actions and reactions, and adjust the data display accordingly.

[0765] "Reporting means" refers to a function for saving generated analysis results and reports, and for informing relevant parties as needed.

[0766] A "generative AI model" is an artificial intelligence technology that uses machine learning techniques to detect user reactions and data characteristics, and to perform appropriate analysis and display.

[0767] An "interface" is a means of connection for exchanging information between different systems or programs.

[0768] "Electronic communication" refers to communication methods that use the internet, email, and other means to exchange information.

[0769] This invention provides a system that streamlines budget management and improves the user experience by combining multiple information processing elements. Specific embodiments are described below.

[0770] The server is equipped with means to retrieve information using external data storage. This means includes, for example, utilizing specific APIs, enabling real-time data reception via an internet connection. The retrieved data is then formatted by information processing tools, including the imputation of missing data and data aggregation. This processing ensures the data is presented in a uniform format and stored in a state suitable for analysis.

[0771] Next, the server uses analysis tools to compare current data with historical data and calculate specific fluctuation indicators. These indicators can be used by users to understand trends in budget increases and decreases. The calculated indicators are displayed on the terminal through a display tool, allowing users to visually confirm the data.

[0772] On the other hand, emotion analysis tools analyze user actions and reactions, and adjust the displayed content based on the resulting emotion data. For example, if a user expresses dissatisfaction with specific data, the server automatically provides detailed information to help the user easily decide on their next action.

[0773] Ultimately, the server stores the reports generated using the reporting mechanism and automatically transmits them to relevant parties via electronic communication. This allows users to quickly share information and accelerate decision-making.

[0774] As a concrete example, consider the case of evaluating a product budget. The system automatically retrieves expenditures for all projects, analyzes fluctuations in expenditures for a specific product category, and visualizes the results as a graph. When the user enters a prompt such as, "Please show me the details of why the development cost of a particular product increased," the system presents the analysis results of the main factors influencing development costs.

[0775] Thus, the system of the present invention maximizes the value provided to the user by integrating automatic data acquisition, efficient analysis, user-adaptive display, and rapid reporting functions.

[0776] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0777] Step 1:

[0778] The server initiates a mechanism to retrieve information from external data storage. It obtains information from the user-specified data source via the internet using a specific API and stores the input data in temporary memory within the server. This ensures that the raw data is securely stored on the server.

[0779] Step 2:

[0780] The server formats the input data acquired using information processing tools. It performs processes to ensure data integrity, such as imputing missing values ​​and deleting irrelevant data. Based on the formatted data, it aggregates it by date and category and calculates statistical indicators. As output, aggregated data in a uniform format can be obtained.

[0781] Step 3:

[0782] The server uses analytical tools to analyze the differences between current and past data. It takes aggregated data as input, checks for increases and decreases in values ​​over a specific period, and calculates the fluctuations as an index. The calculation results are saved as a new dataset, and the output fluctuation index is used in subsequent processes.

[0783] Step 4:

[0784] The terminal receives analytical data transmitted from the server. It then displays the data in a visualized form, such as graphs or tables, using various representational tools. It provides users with an intuitive and easy-to-understand interface, allowing them to deepen their insights into the data through the outputted visual information.

[0785] Step 5:

[0786] As the user operates the device, the emotion analysis system analyzes the user's input and actions in real time. The user's reactions are acquired as input data, and a generative AI model is used to infer their emotions. Based on the analysis results, the device's display content is adjusted as needed to provide the user with optimal information.

[0787] Step 6:

[0788] The server generates the final report using a reporting mechanism. It automatically creates the report content using data including analysis results and user feedback as input. As a result, a report in PDF format is output and sent to relevant parties via electronic communication. This allows users to share information in a timely manner.

[0789] (Application Example 2)

[0790] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[0791] In modern commerce, it is necessary to respond to users' thoughts and emotions in real time, but existing data analytics systems fail to meet this requirement. Traditional systems focus on visualizing and analyzing information, but struggle to dynamically adjust displays to take user emotions into account, hindering improvements in the user experience. Furthermore, there is a lack of mechanisms to efficiently integrate automated data acquisition and processing and provide information in an intuitively understandable format.

[0792] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0793] In this invention, the server includes an information acquisition means for acquiring budget information, an information processing means for formatting and aggregating the acquired information, and a function for analyzing the user's emotions using emotion recognition means and dynamically adjusting the display of the visualization means. This enables dynamic display adjustment based on the user's emotions, making it possible to provide a more personalized experience.

[0794] "Information acquisition means" refers to a mechanism for automatically acquiring budget-related data from external sources.

[0795] "Information processing means" refers to functions for formatting acquired data and performing necessary calculations and aggregations.

[0796] "Analysis techniques" are technologies that calculate the differences between past data and current data, and save the results as a new dataset.

[0797] A "visualization method" is a system that displays analysis results in a way that users can intuitively understand.

[0798] An "emotion recognition tool" is an engine that analyzes a user's operation history and reactions to infer their emotional state.

[0799] A "reporting mechanism" is a system that saves generated reports and automatically transmits them to relevant parties for notification.

[0800] "Electronic communication means" refers to digital communication technologies used to transmit reports to users and relevant parties.

[0801] An "interface" is a means of connection for exchanging data between different systems or programs.

[0802] The embodiments for carrying out the invention are described below. This system combines the functions of information acquisition, processing, analysis, visualization, sentiment recognition, and reporting to improve the user experience.

[0803] The server uses APIs to automatically retrieve budget information from external sources. Secure and reliable protocols are used for this information retrieval, ensuring data integrity and confidentiality.

[0804] The acquired information is formatted by information processing tools, handling missing values ​​and converting it to the required format. This involves using dedicated data processing software to create a unified dataset. The server then uses analysis tools to compare the current data with past data and saves it as a new dataset in a format that clearly shows trends of increase or decrease.

[0805] The terminal displays analysis results through visualization tools, providing information in a user-friendly format. Statistical analysis software is used to generate graphs and charts, which are updated in real time.

[0806] When a user interacts with the dashboard, emotion recognition mechanisms activate to analyze the user's interaction history and reactions. This allows the device to dynamically adjust its display, focusing on areas of user interest. For example, if a user spends a long time on a particular piece of information, that category will be displayed in more detail.

[0807] As a reporting mechanism, the server sends the generated report to relevant parties via electronic communication. This report includes insights gained from sentiment recognition and incorporates a user feedback process.

[0808] As a concrete example, if a user expresses interest in summer fashion items, an algorithm will be implemented to display related products at the top. An example of a prompt statement for this process is shown below.

[0809] "Use an emotion recognition engine to identify product categories that users are interested in, and then prioritize displaying products from those categories. Specifically, pick out summer fashion items."

[0810] In this way, the system can provide a more personalized experience and accurately meet user needs.

[0811] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0812] Step 1:

[0813] The server retrieves budget information from external sources via APIs. The API key and parameters for the data to be retrieved are required as input. This allows the server to store the latest budget data in a database.

[0814] Step 2:

[0815] The server processes the acquired data using information processing tools. The raw data acquired in step 1 is used as input. Missing values ​​are imputed and the format is converted, and the data is output in a standardized format.

[0816] Step 3:

[0817] The server uses analytical tools to compare the formatted data with historical data. It uses historical data and the formatted data as input. This generates aggregated data to identify trends and outliers.

[0818] Step 4:

[0819] The terminal displays the analysis results to the user using visualization methods. The aggregated data generated in step 3 is used as input. This provides the user with information in a visually appealing format, such as graphs and charts.

[0820] Step 5:

[0821] When a user interacts with the dashboard, emotion recognition measures analyze their reactions. This analysis uses user interaction data and operation history as input. Based on this, the system infers the user's emotional state and dynamically adjusts the displayed content accordingly.

[0822] Step 6:

[0823] The server generates the final report and sends it to the relevant parties using electronic communication methods. It uses the sentiment recognition results and analysis data as input. This generates a report reflecting the sentiment data in PDF format, which is automatically sent via email.

[0824] In this way, the system goes through a series of processes, from data acquisition to emotion recognition, to provide users with personalized information.

[0825] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[0826] 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.

[0827] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.

[0828] Furthermore, the emotion identification model 59, acting as an emotion engine, may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[0829] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. In the upper and lower directions of the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. Also, the upper side of the concentric circles is where "pleasant" emotions are located, and the lower side is where "unpleasant" emotions are located. In this way, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.

[0830] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.

[0831] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.

[0832] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.

[0833] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."

[0834] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values ​​representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.

[0835] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.

[0836] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.

[0837] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.

[0838] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.

[0839] Furthermore, it is not necessary to store the entirety of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.

[0840] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.

[0841] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Alternatively, the hardware resource that performs a specific process may consist of a single processor.

[0842] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.

[0843] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.

[0844] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.

[0845] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.

[0846] The following is further disclosed regarding the embodiments described above.

[0847] (Claim 1)

[0848] Data acquisition methods for obtaining budget data,

[0849] A data processing means for formatting and aggregating the acquired data,

[0850] An analytical method for calculating the difference from the previous month,

[0851] A visualization method for visualizing the analysis results,

[0852] A system that includes a reporting mechanism for saving generated reports and providing notifications.

[0853] (Claim 2)

[0854] The system according to claim 1, comprising scripts and APIs for automatically acquiring data and executing data processing means.

[0855] (Claim 3)

[0856] The system according to claim 1, wherein email transmission is used as a means of notification.

[0857] "Example 1"

[0858] (Claim 1)

[0859] Information acquisition means for automatically acquiring data,

[0860] Information processing means for formatting acquired raw data, imputing missing values, and standardizing the format,

[0861] An analytical method that aggregates monthly budgets for each project, calculates the difference from the previous month, and analyzes trends in increases and decreases,

[0862] A visualization method that visualizes the analysis results and displays them in a way that users can intuitively understand,

[0863] A system that includes a notification mechanism to save generated reports and automatically send them via email to designated stakeholders.

[0864] (Claim 2)

[0865] The system according to claim 1, comprising scripts and APIs for periodically obtaining budget data.

[0866] (Claim 3)

[0867] The system according to claim 1, which delivers the latest analytical information immediately using email transmission.

[0868] "Application Example 1"

[0869] (Claim 1)

[0870] Information acquisition methods for obtaining budget data,

[0871] Information processing means for formatting and aggregating the acquired information,

[0872] An analysis method for calculating the difference from the previous month,

[0873] A visualization means for visualizing the analysis results,

[0874] A reporting method for saving generated reports and providing notifications,

[0875] Public information provision methods that provide citizens with information on budget usage,

[0876] A public usage comparison tool that visually presents comparisons with the previous year or the previous month,

[0877] A system that includes this.

[0878] (Claim 2)

[0879] The system according to claim 1, comprising a script and an application programming interface for automatically acquiring information and executing information processing means.

[0880] (Claim 3)

[0881] The system according to claim 1, wherein electronic communication transmission is used as a means of notification.

[0882] "Example 2 of combining an emotion engine"

[0883] (Claim 1)

[0884] Means of obtaining information,

[0885] Information processing means for formatting and aggregating the acquired information,

[0886] An analytical means for calculating the difference with past data,

[0887] Means of representing the analysis results,

[0888] A sentiment analysis method that uses a generative AI model to analyze user reactions and adjust information,

[0889] A system that includes a reporting mechanism for saving generated reports and providing notifications.

[0890] (Claim 2)

[0891] The system according to claim 1, comprising scripts and interfaces for automatically acquiring information and executing information processing means.

[0892] (Claim 3)

[0893] The system according to claim 1, wherein electronic communication is used as a means of notification.

[0894] "Application example 2 when combining with an emotional engine"

[0895] (Claim 1)

[0896] Information acquisition methods for obtaining budget information,

[0897] Information processing means for formatting and aggregating the acquired information,

[0898] An analytical method for calculating the difference with past periods,

[0899] A means of visualization to visualize the analysis results,

[0900] A function that analyzes the user's emotions using emotion recognition means and dynamically adjusts the display of the visualization means,

[0901] A system including a reporting means for saving generated reports and providing notifications.

[0902] (Claim 2)

[0903] The system according to claim 1, comprising a program and interface for automatically acquiring information and executing information processing means.

[0904] (Claim 3)

[0905] The system according to claim 1, wherein electronic communication means are used as a means of notification. [Explanation of Symbols]

[0906] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>

Claims

1. Information acquisition methods for obtaining budget data, Information processing means for formatting and aggregating the acquired information, An analysis method for calculating the difference from the previous month, A visualization means for visualizing the analysis results, A reporting method for saving generated reports and providing notifications, Public information provision methods that provide citizens with information on budget usage, A public usage comparison tool that visually presents comparisons with the previous year or the previous month, A system that includes this.

2. The system according to claim 1, comprising a script and an application programming interface for automatically acquiring information and executing information processing means.

3. The system according to claim 1, wherein electronic communication transmission is used as a means of notification.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A