System

The system addresses the challenges of inaccurate crop yield predictions by employing data preprocessing and machine learning to provide timely and actionable insights for sustainable agriculture.

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

Patent Information

Application Number
JP2024118231
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-23
Publication Date
2026-02-04

AI Technical Summary

Technical Problem

Existing agricultural systems struggle to provide accurate and actionable insights for sustainable crop management, soil health maintenance, and yield maximization due to insufficient handling of missing data and outliers, lack of real-time yield prediction integration, and inadequate user interfaces for data input.

Method used

A system comprising a data storage means, data preprocessing means, predictive model generation using machine learning algorithms like random forest regression, and a user-friendly data input and output mechanism to generate accurate crop yield predictions and recommendations.

Benefits of technology

Enables users to obtain highly reliable and timely crop yield predictions and actionable insights, facilitating efficient implementation of sustainable agricultural practices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026017449000001_ABST
    Figure 2026017449000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system comprising: means for recording agricultural data; means for pre-processing the recorded agricultural data; means for generating a prediction model based on the pre-processed data; means for inputting new environmental data and predicting a crop yield based on the data; and means for outputting a prediction result.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

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

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

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

[0004] The present invention addresses climate change, a shrinking rural workforce, and the need for sustainable agricultural practices. While optimal crop management, maintaining soil health, and maximizing yields are critical in agriculture, traditional approaches have struggled to address these challenges. Therefore, there is a need for a system that can provide accurate and actionable insights to support sustainable agricultural growth. [Means for solving the problem]

[0005] The present invention solves the above-mentioned problems by providing a system including a means for recording agricultural data, a means for preprocessing the recorded agricultural data, a means for generating a prediction model based on the preprocessed data, a means for inputting new environmental data and predicting crop yields based on the data, and a means for outputting the prediction results, thereby providing accurate predictions and recommendations based on data at agricultural sites and realizing sustainable agricultural practices.

[0006] "Agricultural data" refers to agriculturally relevant environmental information such as temperature, humidity, soil pH, and rainfall, as well as data on crop yields.

[0007] "Preprocessing" refers to the processing performed to prepare data, such as filling in missing values ​​and processing outliers, before conducting data analysis or building a predictive model.

[0008] A "predictive model" is a model that uses algorithms or computational methods to predict future values ​​based on past data.

[0009] "Environmental data" refers to data such as weather conditions and soil conditions in a particular region or location.

[0010] "Yield" refers to the amount of crop harvested per unit area.

[0011] "Output" refers to the system providing information such as predictions and calculation results to the user. [Brief explanation of the drawings]

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

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

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

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

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

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

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

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

[0020] [First embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0033] The system for implementing the present invention generates a predictive model based on agricultural data and provides users with crop yield predictions and insights into appropriate agricultural practices. This system mainly consists of the following components: a database, a data preprocessing section, a predictive model generation section, a new data input section, a prediction execution section, and a result output section.

[0034] The server first loads agricultural data from a database. This data includes information such as temperature, humidity, soil pH, rainfall, and yield. The server then preprocesses the data. This preprocessing includes filling in missing values ​​and handling outliers. Specifically, it fills in missing values ​​with the average value of each indicator.

[0035] The server generates a predictive model based on the preprocessed data. A machine learning algorithm is used to generate this model. A typical example is random forest regression. The server divides the data into a training set and a test set, and trains the model using the training set. Once the model training is complete, the accuracy of the model is evaluated using the test set.

[0036] The user inputs new environmental data into the device, including temperature, humidity, soil pH, rainfall, and other factors relevant to future crop growth. This new data is sent to the server, which uses a trained predictive model to predict crop yields based on this new data.

[0037] Finally, the server outputs the predicted yield results to the user, providing useful information for the user to make appropriate agricultural plans, including the yield forecast figures, agricultural practice recommendations based on the forecasts, and insights into potential risks.

[0038] This provides users with accurate, data-driven predictions and recommendations, helping them to efficiently implement sustainable agricultural practices.

[0039] The processing flow will be explained below.

[0040] Step 1:

[0041] The server loads agricultural data from a database. Specifically, it uses the pandas library to read a CSV file (e.g., "agricultural_data.csv") and stores it in a data frame. The data includes temperature, humidity, soil pH, rainfall, and yield.

[0042] Step 2:

[0043] The server preprocesses the data. This preprocessing includes filling missing values ​​(NaN) in the data frame with the mean value. Specifically, it uses the pandas fillna method to fill missing values ​​with the mean value of each column.

[0044] Step 3:

[0045] The server generates a predictive model. First, the dataset is split into a training set and a test set. This split is done using the train_test_split method, with 80% of the dataset being trained and 20% being test. Next, the model is trained on the training set using RandomForestRegressor.

[0046] Step 4:

[0047] The server evaluates the trained model and calculates the model's accuracy (score) using the test set. Specifically, it uses the score method to evaluate the prediction accuracy on the test set.

[0048] Step 5:

[0049] The user inputs new environmental data, such as temperature, humidity, soil pH, and rainfall, via a terminal. This data is the basis for the user to plan future farming.

[0050] Step 6:

[0051] The server makes a prediction based on the new data input. It converts the new data into a data frame and uses the trained model to predict crop yields. It generates a specific yield number as a prediction result.

[0052] Step 7:

[0053] The server outputs the prediction results to the user. The predicted yield results are displayed and provided to the user. The output includes the yield prediction figures, agricultural practice recommendations based on the predictions, and insights into potential risks. This allows the user to obtain accurate predictions and recommendations based on data.

[0054] Example 1

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

[0056] Conventional crop yield prediction systems based on agricultural data have limited accuracy due to insufficient handling of missing data and outliers. Furthermore, they lack an interface that allows users to easily input new environmental data and quickly obtain prediction results. This makes it difficult to achieve both immediate and accurate predictions in actual agricultural activities.

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

[0058] In this invention, the server includes: a data storage means for recording agricultural data; a data preprocessing means for preprocessing the recorded agricultural data, including missing value imputation and outlier correction; a means for generating a predictive model using a machine learning algorithm including random forest regression based on the preprocessed data; a data input means for inputting new environmental data via a terminal and inputting the input data into the predictive model to predict crop yield; and a prediction result output means for outputting the predicted yield, recommendations for agricultural practices, and potential risks. This enables users to easily input new data and quickly obtain highly reliable prediction results by using a highly accurate predictive model that has undergone missing data processing and outlier correction.

[0059] "Agricultural data" refers to data that includes information about the growing environment and management of crops, such as temperature, humidity, soil pH, rainfall, and yield data.

[0060] "Data storage means" refers to a device or system for storing agricultural data over a long period of time and enabling it to be retrieved as needed, and generally refers to a relational database.

[0061] "Data preprocessing means" refers to a process or system that performs missing value imputation and outlier correction to improve data quality.

[0062] A "machine learning algorithm" is an algorithm that allows a computer to improve its performance based on large amounts of data; random forest regression is one example.

[0063] "Random forest regression" is a machine learning algorithm that uses multiple decision trees to make predictions, and is particularly effective at preventing overfitting of data and making highly accurate predictions.

[0064] A "predictive model" is a mathematical model for predicting future data based on past data.

[0065] "Data input means" refers to an interface for users to input new environmental data, and generally corresponds to a web form or dedicated application via a terminal.

[0066] The "prediction result output means" is a device or system for presenting to a user the predicted yield results and agricultural practice recommendations and potential risks based thereon.

[0067] "Environmental data" refers to data on various factors that affect crop growth, including temperature, humidity, soil pH, and rainfall.

[0068] MODE FOR CARRYING OUT THE INVENTION

[0069] This invention is a system that generates a predictive model based on agricultural data and provides users with crop yield predictions and insights into appropriate agricultural practices. The system is composed of a data storage means, a data preprocessing means, a predictive model generation means, a data input means, and a prediction result output means.

[0070] Data Storage Means

[0071] The server uses database software to record and store agricultural data, including information such as temperature, humidity, soil pH, rainfall, and yield. This data is stored in a relational database and is easily accessible using a query language (e.g., SQL).

[0072] Data preprocessing measures

[0073] The server preprocesses the loaded data. Specifically, it uses the pandas library to impute missing values ​​with the average value of each indicator and correct outliers. This preprocessing process improves the quality of the dataset and the accuracy of the model.

[0074] Prediction model generation method

[0075] The server generates a predictive model using machine learning algorithms, including random forest regression, based on the preprocessed data. It splits the data into a training set and a test set using the scikit-learn library, trains the model on the training set, and then evaluates the accuracy of the model using the test set to select the appropriate predictive model.

[0076] Data Entry Method

[0077] The user inputs new environmental data via a terminal, such as temperature, humidity, soil pH, and rainfall, using a web form or a dedicated application. This input data is then sent to the server.

[0078] Prediction result output means

[0079] The server inputs the received new data into the trained predictive model to predict crop yields. The prediction results include yield figures, agricultural practice recommendations, and information on potential risks, providing users with useful information for appropriate agricultural planning.

[0080] Specific examples

[0081] For example, to predict the next season's tomato production, the steps are as follows:

[0082] 1. The server reads agricultural data about tomato cultivation for the past few years from a relational database.

[0083] 2. The server uses the pandas library to fill in missing values ​​with the average value of each indicator and correct outliers.

[0084] 3. The server generates a random forest regression model using the scikit-learn library on the preprocessed data, and performs training and evaluation.

[0085] 4. The user inputs and transmits new environmental data via the terminal, such as "Temperature: 27°C, Humidity: 65%, Soil pH: 6.8, Rainfall: 40mm."

[0086] 5. The server inputs the new data into the model and calculates the predicted yield.

[0087] 6. The server outputs the predicted results to the user, such as "Predicted yield: 5 tons, Recommendation: Emphasis on humidity control, Potential risk: Risk of disease outbreak if there is heavy rainfall."

[0088] Prompt Sentence Examples

[0089] "What are your yield expectations and recommendations for growing tomatoes next season? Temperature is 27°C, humidity is 65%, soil pH is 6.8, and rainfall is 40mm."

[0090] This provides users with accurate, data-driven predictions and recommendations to help them efficiently implement sustainable agricultural practices.

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

[0092] Step 1:

[0093] The server uses database software to record and store agricultural data. First, the server reads the necessary agricultural data (temperature, humidity, soil pH, rainfall, yield, etc.) from the relational database using an SQL query. Specifically, it executes the query "SELECT temperature, humidity, soil_pH, rainfall, yield FROM agricultural_data". The input data is the agricultural data in the database, and the output data is data in data frame format on the server.

[0094] Step 2:

[0095] The server preprocesses the loaded data. It uses the pandas library to fill missing values ​​with the mean value of each indicator and executes code such as "df.fillna(df.mean(), inplace=True)". It also processes outliers using statistical methods (e.g., correcting values ​​that exceed the standard deviation). The input data is agricultural data in a data frame format stored on the server, and the output data is a data frame with missing values ​​filled and outliers corrected.

[0096] Step 3:

[0097] The server generates a predictive model based on the preprocessed data. It uses the scikit-learn library to split the data into a training set (80%) and a test set (20%) using the "train_test_split" function. It then uses the random forest regression algorithm to train the model using "RandomForestRegressor". It then executes "model.fit(X_train, y_train)" to complete the model training. It then evaluates the accuracy of the model using the test set and calculates an accuracy score. The input data is the preprocessed data frame, and the output data is the trained model and its accuracy score.

[0098] Step 4:

[0099] The user inputs new environmental data via a terminal. Using a web form or a dedicated application, the user enters data such as temperature, humidity, soil pH, and rainfall into the form. Specifically, the user enters the data "Temperature: 27°C, Humidity: 65%, Soil pH: 6.8, Rainfall: 40mm" and presses the send button. The input data is the new environmental data entered by the user, and the output data is the data sent to the server.

[0100] Step 5:

[0101] The server receives new data sent by the user and predicts crop yields using the trained prediction model. It executes "model.predict(new_data)" on the new data to obtain the prediction result. The input data is the new environmental data, and the output data is the predicted yield value.

[0102] Step 6:

[0103] The server outputs the prediction results to the user. In addition to the predicted yield results, the yield figures, agricultural practice recommendations, and information on potential risks are displayed on a web page or application. Specifically, the server generates the results: "Predicted yield: 5 tons, Recommendation: Focus on humidity control, Potential risk: Risk of disease outbreak if there is heavy rainfall." The input data are the predicted yield figures and related information, and the output data are the visualized prediction results provided to the user.

[0104] (Application example 1)

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

[0106] While existing agricultural systems exist that can predict crop yields, there are no systems that utilize crop yield predictions for inventory management or delivery planning at logistics centers. As a result, logistics centers face issues such as excess inventory and shortages, making efficient inventory management and transportation difficult. In particular, there is a need for systems that can reflect yield prediction data in real time and provide optimal shipping schedules.

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

[0108] In this invention, the server includes a means for recording agricultural data, a means for preprocessing the recorded agricultural data, and a means for generating a prediction model based on the preprocessed data, which makes it possible to optimize inventory management and delivery plans at logistics centers based on crop yield prediction data.

[0109] "Agricultural data" is a general term for information related to crop growing conditions and results, such as temperature, humidity, soil pH, rainfall and yield.

[0110] "Preprocessing" refers to the process of reformatting incomplete data before analyzing it, such as by filling in missing values ​​and treating outliers.

[0111] A "predictive model" refers to a mathematical model or algorithm used to predict future yields, etc. based on past data.

[0112] "New environmental data" refers to new information on temperature, humidity, soil pH, rainfall, etc. that will be relevant to future crop cultivation.

[0113] "Crop yield" refers to the amount of crop production obtained under specific growing conditions.

[0114] "Prediction results" are numerical values ​​or assessments of future crop yields obtained using a predictive model.

[0115] "Distribution Center" means a facility that stores, stocks, and distributes products.

[0116] "Inventory management" is the process of efficiently managing the quantity and location of goods in a distribution center.

[0117] "Distribution planning" is the process of determining schedules and routes to efficiently deliver products to their final destinations.

[0118] "Recommendations" are suggestions for optimal actions or plans based on the prediction results.

[0119] The system for implementing this invention is a system that optimizes inventory management and delivery planning at a logistics center using a predictive model based on agricultural data. Specifically, this system is composed of the following main elements:

[0120] First, the server retrieves agricultural data from a database, including information on the growing conditions and results of crops, such as temperature, humidity, soil pH, rainfall, and yield.

[0121] The acquired data is preprocessed by the server, which includes imputing missing values ​​and processing outliers. Specifically, missing values ​​are imputed with the average value of each indicator.

[0122] Next, the server uses the preprocessed data to generate a predictive model. This model is generated using a machine learning algorithm (e.g., random forest regression). The data is split into a training set and a test set, and the training set is used to train the model. Once the model is trained, the test set is used to evaluate the accuracy of the model.

[0123] Users of the system input new environmental data into their terminals, including temperature, humidity, soil pH, rainfall, and other information relevant to future crop cultivation, and this new data is sent to the server.

[0124] The server uses the trained predictive model to predict crop yields based on new data, and the predictions are updated in real time to the distribution center's inventory management system, optimizing inventory management and delivery planning at the distribution center.

[0125] Additionally, the forecast results are communicated to users and recommendations are provided to optimize logistics center operations (e.g., shipping schedules and inventory replenishment timing).

[0126] In this system, the hardware used is mainly servers and terminals (smartphones and tablets), and examples of the software used include Python, scikit-learn, and the requests library.

[0127] As a specific example, suppose new data such as "Temperature: 25°C, Humidity: 60%, Soil pH: 6.5, Rainfall: 100mm" is input. The crop yield predicted based on this data is notified to the user, with a message such as "Next month's yield is expected to be X tons," along with recommendations such as "the appropriate harvest time" and "measures to take in response to future environmental changes."

[0128] An example of a prompt sentence to input to the generative AI model is as follows:

[0129] "Please predict next month's tomato yield based on current weather conditions, soil conditions, and other environmental factors. Also, please recommend agricultural practices to maximize yield."

[0130] As described above, the present invention is a system that uses agricultural data to predict crop yields and optimize inventory management and delivery plans at logistics centers.

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

[0132] Step 1:

[0133] The server retrieves "agricultural data" from a database. The input is a database query condition, and the output is agricultural data related to temperature, humidity, soil pH, rainfall, and yield. The specific operation of this is that the server accesses the database and retrieves the required data using means such as an SQL query.

[0134] Step 2:

[0135] The server preprocesses the acquired "agricultural data." The input is raw data, and the output is clean data in which missing values ​​have been filled and outliers have been processed. During this process, the server performs operations such as mean value filling and outlier removal. Specifically, it fills missing values ​​with the mean value of each attribute and performs processing to keep outliers within the standard deviation range.

[0136] Step 3:

[0137] The server uses the preprocessed data to generate a "predictive model." The input is the preprocessed dataset, and the output is a trained predictive model for predicting crop yield. Specifically, the server splits the data into a training set and a test set, and trains the model using a machine learning algorithm such as random forest regression. After training, the accuracy of the model is verified on the test set.

[0138] Step 4:

[0139] The user inputs new "environmental data" into the terminal. The input includes new environmental data such as temperature, humidity, soil pH, and rainfall, and the output is sent to the server. Specifically, the user enters the required data into the input form on the terminal and clicks the send button.

[0140] Step 5:

[0141] The server uses a trained "prediction model" to predict "crop yield" based on new environmental data. The inputs are new environmental data and the trained prediction model, and the output is a predicted crop yield value. Specifically, the server inputs new environmental data into the prediction model and obtains the predicted yield value output by the model.

[0142] Step 6:

[0143] The server notifies the user of the "prediction results" and provides "recommendations" to optimize the operations of the logistics center. The input is predicted yield data, and the output is a notification message sent to the user's device. Specifically, the server formats the prediction results in a format that is useful for future agricultural and logistics planning, and sends them to the user via email or app notification.

[0144] These processing steps enable the server to effectively utilize agricultural data to optimize inventory management and delivery planning at the logistics center.

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

[0146] A system for implementing the present invention combines a predictive model based on agricultural data with a user's emotional recognition function, which predicts crop yields based on user-provided environmental data and takes the user's emotional state into account when providing the prediction results.

[0147] The system mainly consists of the following elements: a database, a data preprocessing part, a predictive model generation part, a new data input part, a prediction execution part, a result output part, and an emotion engine.

[0148] The server first loads agricultural data from a database, including temperature, humidity, soil pH, rainfall, and yield. The server then preprocesses the data, which includes imputing missing values ​​(NaN) in the data frame with the mean value.

[0149] The server generates a predictive model based on the preprocessed data. A machine learning algorithm is used to generate this model. A typical example is random forest regression. The server divides the data into a training set and a test set, and trains the model using the training set. Once the model training is complete, the accuracy of the model is evaluated using the test set.

[0150] The user inputs new environmental data into the device, including temperature, humidity, soil pH, rainfall, and other factors relevant to future crop growth. This new data is sent to the server, which uses a trained predictive model to predict crop yields based on this new data.

[0151] The emotion engine is a means for recognizing the user's emotional state. The emotion engine analyzes the user's voice data and facial expression data to recognize emotions such as joy, surprise, sadness, and anger. For example, when a user inputs voice and facial expressions into the system using a microphone or camera, the emotion engine analyzes the data and determines the user's emotional state.

[0152] The server adjusts the output format of the prediction results based on the emotional state obtained from the emotion engine. For example, if the user is stressed, the server can provide more detailed and supportive feedback, while if the user is happy, the server can provide more concise and summary feedback.

[0153] Finally, the server outputs the predicted yield results and appropriate feedback to the user, allowing the user to receive information according to their emotional state and providing useful information for making appropriate agricultural plans.

[0154] For example, if a user inputs data into the device such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and rainfall of 200mm, the server will use this data to predict yields. At the same time, if the user inputs their emotional state using the camera and microphone, the emotion engine will analyze that state. If the analysis results indicate that the plant is "stressed," the server will provide a detailed explanation and additional advice such as "consider optimal cultivation techniques and risk avoidance methods."

[0155] This allows users to not only receive accurate data-based predictions, but also appropriate information based on their emotional state, helping them to efficiently implement sustainable agricultural practices.

[0156] The processing flow will be explained below.

[0157] Step 1:

[0158] The server loads agricultural data from a database. Specifically, it uses the pandas library to read a CSV file (e.g., "agricultural_data.csv") and stores it in a data frame. The loaded data includes temperature, humidity, soil pH, rainfall, and yield.

[0159] Step 2:

[0160] The server preprocesses the data. This preprocessing includes filling missing values ​​(NaN) in the data frame with the mean value. Specifically, it uses the pandas fillna method to fill missing values ​​with the mean value of each column.

[0161] Step 3:

[0162] The server generates a predictive model. First, the dataset is split into a training set and a test set. The train_test_split method is used to split the dataset, with 80% being the training set and 20% being the test set. Next, the model is trained on the training set using RandomForestRegressor.

[0163] Step 4:

[0164] The server evaluates the trained model and calculates the model's accuracy (score) using the test set. Specifically, it uses the score method to evaluate the prediction accuracy on the test set.

[0165] Step 5:

[0166] The user inputs new environmental data through a terminal, specifically inputting values ​​such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and rainfall of 200mm. These data become part of the future agricultural plan.

[0167] Step 6:

[0168] The server receives new data, converts it into a data frame to predict crop yield based on the environmental data entered by the user, and uses the trained model to predict yield from the new data.

[0169] Step 7:

[0170] The user inputs emotional data, specifically, voice and facial expressions captured using a camera and microphone, which are used to recognize the user's current emotional state.

[0171] Step 8:

[0172] The emotion engine analyzes the user's emotions. It analyzes voice data and facial expression data to detect emotional states such as joy, surprise, sadness, and anger. The emotion engine transmits the obtained emotional state to the server.

[0173] Step 9:

[0174] The server takes into account the user's emotional state and adjusts its predictions accordingly: for example, if the user is stressed, the server will provide detailed feedback and supportive comments, while if the user is happy, it will provide more concise feedback.

[0175] Step 10:

[0176] The server outputs the final prediction results, and displays appropriate feedback to the user based on the predicted yield results and emotional state. Specifically, this includes the yield prediction figures, agricultural practice recommendations based on the predictions, and insights into potential risks. This allows users to receive accurate data-based predictions and emotionally appropriate advice.

[0177] Example 2

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

[0179] Conventional agricultural data forecasting systems predict yields based on environmental data, but lack the functionality to provide forecast results that take the user's emotional state into account. This means that appropriate feedback based on the user's mental stress and satisfaction cannot be obtained, which poses a problem in improving the accuracy and efficiency of agricultural planning.

[0180] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for recording agricultural data, means for preprocessing the recorded agricultural data, means for generating a prediction model based on the preprocessed data, means for inputting new environmental data and predicting crop yield based on the data, means for outputting the prediction results, means for recognizing the user's emotional state, and means for adjusting the output format of the prediction results based on the user's emotional state. This enables the user to receive appropriate feedback and prediction information according to their emotional state.

[0181] Definitions of important words

[0182] "Agricultural data" refers to data that includes environmental conditions and management information that affect crop yields, specifically information on temperature, humidity, soil pH, rainfall, etc.

[0183] "Recording means" refers to devices or systems for storing agricultural data and retaining it for later use.

[0184] "Preprocessing means" refers to devices or systems that perform processes to prepare data in a format suitable for a predictive model, such as filling in missing values ​​and normalizing data.

[0185] "Means for generating a predictive model" refers to a device or system that uses pre-processed data to create a model based on a machine learning algorithm.

[0186] "New environmental data" refers to data that is input into the predictive model to predict new crop yields, specifically information such as temperature, humidity, soil pH, and rainfall.

[0187] "Prediction means" refers to a device or system that uses the generated prediction model to predict yield based on new environmental data.

[0188] The "means for outputting the predicted results" refers to a device or system for presenting the predicted yield results to a user.

[0189] "Means for recognizing the emotional state of a user" refers to a device or system for analyzing the user's voice data and facial expression data to determine the user's emotions.

[0190] "Means for adjusting the output format" refers to a device or system that changes the way the prediction results are presented based on the recognized emotional state of the user.

[0191] MODE FOR CARRYING OUT THE INVENTION

[0192] This invention provides a system that generates a predictive model based on agricultural data and combines it with a function to recognize user emotions. The system predicts crop yields based on environmental data provided by the user and can take the user's emotional state into account when providing the prediction results.

[0193] System components and hardware / software used

[0194] The system mainly consists of the following elements: a database, a data preprocessing part, a predictive model generation part, a new data input part, a prediction execution part, a result output part, and an emotion engine.

[0195] 1. Loading data

[0196] The server reads agricultural data from a database, which includes temperature, humidity, soil pH, rainfall, and yield. The database is a relational database management system (RDBMS).

[0197] 2. Data Preprocessing

[0198] The server uses the Pandas library to impute missing values ​​(NaN) in the data frame with the mean value. This preprocessing is necessary to improve the accuracy of the predictive model.

[0199] 3. Generate a predictive model

[0200] The server uses the preprocessed data to generate a predictive model using the Scikit-learn library. Specifically, the random forest regression algorithm is typically used. The data is divided into a training set and a test set, and the model is trained on the training set and its accuracy is evaluated on the test set.

[0201] 4. Enter new data

[0202] The user inputs new environmental data, such as temperature, humidity, soil pH, and rainfall, into the device via a dedicated input form or a smartphone app. The input data is sent to the server in JSON format.

[0203] 5. Performing yield prediction

[0204] The server uses the trained prediction model to predict crop yields based on new data, and the prediction results are temporarily stored and used in the next step.

[0205] 6. Emotion Recognition by Emotion Engine

[0206] The device uses a microphone and camera to collect the user's voice and facial expression data, which is then sent to a server.

[0207] The server uses a speech recognition API for voice analysis and OpenCV and Dlib libraries for facial expression analysis to determine emotional states, including happiness, surprise, sadness, anger, etc.

[0208] 7. Adjusting the result output

[0209] The server adjusts the output format of the prediction results based on the perceived emotional state, for example providing detailed and supportive feedback if the user is stressed and providing concise feedback if the user is happy.

[0210] 8. Providing Feedback

[0211] Finally, the server outputs the predicted yield results and appropriate feedback to the user, which the terminal displays to help the user make appropriate farming plans.

[0212] Specific examples

[0213] For example, a user inputs data into an input terminal: temperature 20°C, humidity 80%, soil pH 6.5, and rainfall 200mm. This data is sent to the server in JSON format. The server uses a trained model to predict the yield, calculating it as 5 tons. At the same time, if the user inputs emotional data using the microphone and camera, the emotion engine determines that the user is feeling "stressed." As a result, the server provides a detailed explanation and additional advice, such as "Consider optimal cultivation techniques and risk avoidance methods."

[0214] Example prompts for generative AI models

[0215] "Predict crop yield based on data such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and 200mm of rainfall. Provide feedback while taking into account the user's 'stressed' situation."

[0216] By combining these elements, users can get accurate data-driven predictions and relevant information based on their emotional state.

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

[0218] System program processing flow

[0219] Step 1:

[0220] The server reads agricultural data from a database, specifically using SQL queries to retrieve temperature, humidity, soil pH, rainfall, and yield data. The input is the agricultural data stored in the database, and the output is a data frame of the retrieved data.

[0221] Step 2:

[0222] The server preprocesses the data it reads. Specifically, it uses the Pandas library to fill in missing values ​​(NaN) with the mean value. The input is data read from the database, and the output is preprocessed data with missing values ​​filled in. This preprocessing ensures data consistency.

[0223] Step 3:

[0224] The server generates a predictive model based on the preprocessed data. Specifically, it uses the Scikit-learn library to split the data into a training set and a test set, and then trains the model using the random forest regression algorithm. The input is the preprocessed data, and the output is a trained predictive model. During the training period, the accuracy of the model is also evaluated.

[0225] Step 4:

[0226] The user inputs new environmental data (temperature, humidity, soil pH, rainfall) into the device. Specifically, they use a dedicated input form or a smartphone app. The input data is sent to the server in JSON format. The input is the environmental data entered by the user, and the output is the JSON data sent to the server.

[0227] Step 5:

[0228] The server inputs the received new data into the prediction model and predicts the crop yield. Specifically, it uses the predict method of the prediction model. The input is new environmental data (in JSON format), and the output is the predicted crop yield. The prediction result is temporarily saved.

[0229] Step 6:

[0230] The device collects the user's voice and facial expression data to obtain the user's emotional state. Specifically, it uses a microphone and a camera. This data is sent to a server. The input is the user's voice and facial expression data, and the output is the data sent to the server.

[0231] Step 7:

[0232] The server uses an emotion engine to analyze the user's emotional state. Specifically, it uses a speech recognition API for voice analysis and OpenCV and Dlib libraries for facial expression analysis. The input is the transmitted voice and facial expression data, and the output is the analyzed emotional state. For example, "joy" or "stress" is determined.

[0233] Step 8:

[0234] The server adjusts the output format of the prediction results based on the recognized emotional state of the user. The inputs are the predicted yield results and the analyzed emotional state, and the output is adjusted feedback results, such as detailed explanations or additional advice.

[0235] Step 9:

[0236] Finally, the server sends the adjusted prediction results and feedback to the device, which displays them to the user. The input is the adjusted feedback results, and the output is the information presented in a user-viewable format.

[0237] This allows the user to receive appropriate feedback and predictive information according to their emotional state.

[0238] (Application example 2)

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

[0240] In conventional agricultural systems, crop yield predictions are based on data, but in many cases, no consideration is given to how to communicate the prediction results to users. In particular, there is a lack of appropriate communication that takes into account the user's emotional state, making it difficult for users to accurately understand the prediction results and take appropriate action when they are stressed or in need of specific support.

[0241] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for recording agricultural data, means for preprocessing the recorded agricultural data, means for generating a prediction model based on the preprocessed data, means for inputting new environmental data and predicting crop yield based on the data, means for outputting the prediction results, means for recognizing the user's emotional state, and means for adjusting the output format of the prediction results based on the emotional state. This makes it possible to provide feedback according to the user's emotional state.

[0242] "Agricultural data" refers to information such as weather conditions, soil condition, rainfall, temperature, and humidity that affect crop growth and yield.

[0243] "Preprocessing" refers to the process of preparing data for analysis, such as filling in missing values ​​and standardizing data, which is carried out prior to data analysis.

[0244] "Predictive Model" refers to a mathematical or statistical model created to predict future outcomes based on historical data.

[0245] "Environmental data" refers to information about the growing environment of crops, such as temperature, humidity, soil pH, and rainfall.

[0246] "Yield forecasting" refers to predicting future crop yields based on input environmental data.

[0247] "Emotional state" indicates the user's psychological state, and refers to emotions such as joy, surprise, sadness, and anger.

[0248] "Emotion recognition means" refers to means for analyzing the user's voice data and facial expression data to recognize what emotion the user is currently feeling.

[0249] The "output format adjustment means" refers to a means for changing the output content and presentation method according to the emotional state of the user when providing the prediction results to the user.

[0250] A system for implementing this invention combines the functionality of generating a predictive model based on agricultural data and recognizing the emotional state of a user. The system predicts crop yield based on environmental data provided by a user and takes the user's emotional state into consideration when providing the prediction results. The system mainly includes the following means: a means for recording agricultural data, a means for pre-processing the data, a means for generating a predictive model, a means for inputting new environmental data, a means for predicting yield, a means for recognizing the emotional state, and a means for adjusting the output format.

[0251] The server first reads agricultural data from a database. This data includes temperature, humidity, soil pH, rainfall, and yield. Data preprocessing includes filling missing values ​​(NaN) and standardizing the data. Based on the preprocessed data, the server generates a predictive model using a machine learning algorithm (e.g., random forest regression). The model is trained and tested by dividing the data into a training set and a test set. The user inputs new environmental data (e.g., temperature, humidity, soil pH, rainfall) into the terminal and sends it from the terminal to the server. The server uses the new data to predict yield using the trained model.

[0252] Next, emotion recognition means include a system that analyzes the user's voice data and facial expression data. For example, data collected using a camera and microphone can be analyzed using an emotion engine (e.g., the FER library) to recognize the user's emotional state (happiness, surprise, sadness, anger, etc.). The server then adjusts the output format of the prediction results based on this emotional state. For example, if the server determines that the user is feeling stressed, it provides more detailed and supportive feedback. On the other hand, if the user is satisfied, it provides concise feedback that summarizes the main points.

[0253] As a concrete example, consider the case where a user inputs the following data into a terminal: temperature 20°C, humidity 80%, soil pH 6.5, and rainfall 200mm. The server predicts yield based on this data while simultaneously recognizing the user's emotional state (e.g., "feeling stressed"). If the analysis results indicate "feeling stressed," the server provides a detailed explanation and additional advice, such as "consider optimal cultivation techniques and risk avoidance methods."

[0254] Examples of input prompts to a generative AI model include the following:

[0255] "If a customer is stressed, advise them on how to provide detailed feedback. It helps if you take into account their questions and their current emotional state."

[0256] In this way, users can receive not only accurate data-based predictions but also appropriate information based on their emotional state, helping them to efficiently implement sustainable agricultural practices.

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

[0258] Step 1:

[0259] The server reads agricultural data from a database, specifically temperature, humidity, soil pH, rainfall, and yield data, which is used to generate predictive models.

[0260] Step 2:

[0261] The server preprocesses the agricultural data it loads, imputes missing values ​​with the mean value, and standardizes the data as needed. The preprocessed data is then output as input data for training the predictive model.

[0262] Step 3:

[0263] The server generates a predictive model based on the preprocessed data. Specifically, it splits the data into a training set and a test set, and trains the model using a machine learning algorithm such as random forest regression. The accuracy of the model is evaluated, and the trained predictive model is output.

[0264] Step 4:

[0265] The user inputs new environmental data (e.g., temperature, humidity, soil pH, rainfall) into the terminal, which then transmits the input data to the server.

[0266] Step 5:

[0267] The server receives new environmental data sent by the user, predicts crop yields using the trained predictive model based on the received data, and outputs the prediction results.

[0268] Step 6:

[0269] The user inputs voice data and facial expression data into the system using a microphone or camera, and the device transmits this data to the server.

[0270] Step 7:

[0271] The server receives voice data and facial expression data sent by the user. It analyzes this data using an emotion engine (e.g., the FER library) to recognize the user's emotional state. The analysis result is output as the user's emotional state.

[0272] Step 8:

[0273] The server adjusts the output format of the prediction results based on the emotional state obtained from the emotion engine. For example, if the user is stressed, it provides detailed feedback and advice. If the user is satisfied, it provides concise feedback. The adjusted output format of the prediction results is then sent to the user.

[0274] Step 9:

[0275] Users receive the adjusted forecast results and use the displayed feedback and advice to plan their future farming. At this stage, users consider optimal cultivation techniques and risk avoidance methods.

[0276] These are the processing steps of this system. At each step, data is input, processed, and calculated to obtain the appropriate output, making it possible to provide the user with highly accurate predictions and feedback based on their emotions.

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

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

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

[0280] [Second embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0293] The system for implementing the present invention generates a predictive model based on agricultural data and provides users with crop yield predictions and insights into appropriate agricultural practices. This system mainly consists of the following components: a database, a data preprocessing section, a predictive model generation section, a new data input section, a prediction execution section, and a result output section.

[0294] The server first loads agricultural data from a database. This data includes information such as temperature, humidity, soil pH, rainfall, and yield. The server then preprocesses the data. This preprocessing includes filling in missing values ​​and handling outliers. Specifically, it fills in missing values ​​with the average value of each indicator.

[0295] The server generates a predictive model based on the preprocessed data. A machine learning algorithm is used to generate this model. A typical example is random forest regression. The server divides the data into a training set and a test set, and trains the model using the training set. Once the model training is complete, the accuracy of the model is evaluated using the test set.

[0296] The user inputs new environmental data into the device, including temperature, humidity, soil pH, rainfall, and other factors relevant to future crop growth. This new data is sent to the server, which uses a trained predictive model to predict crop yields based on this new data.

[0297] Finally, the server outputs the predicted yield results to the user, providing useful information for the user to make appropriate agricultural plans, including the yield forecast figures, agricultural practice recommendations based on the forecasts, and insights into potential risks.

[0298] This provides users with accurate, data-driven predictions and recommendations, helping them to efficiently implement sustainable agricultural practices.

[0299] The processing flow will be explained below.

[0300] Step 1:

[0301] The server loads agricultural data from a database. Specifically, it uses the pandas library to read a CSV file (e.g., "agricultural_data.csv") and stores it in a data frame. The data includes temperature, humidity, soil pH, rainfall, and yield.

[0302] Step 2:

[0303] The server preprocesses the data. This preprocessing includes filling missing values ​​(NaN) in the data frame with the mean value. Specifically, it uses the pandas fillna method to fill missing values ​​with the mean value of each column.

[0304] Step 3:

[0305] The server generates a predictive model. First, the dataset is split into a training set and a test set. This split is done using the train_test_split method, with 80% of the dataset being trained and 20% being test. Next, the model is trained on the training set using RandomForestRegressor.

[0306] Step 4:

[0307] The server evaluates the trained model and calculates the model's accuracy (score) using the test set. Specifically, it uses the score method to evaluate the prediction accuracy on the test set.

[0308] Step 5:

[0309] The user inputs new environmental data, such as temperature, humidity, soil pH, and rainfall, via a terminal. This data is the basis for the user to plan future farming.

[0310] Step 6:

[0311] The server makes a prediction based on the new data input. It converts the new data into a data frame and uses the trained model to predict crop yields. It generates a specific yield number as a prediction result.

[0312] Step 7:

[0313] The server outputs the prediction results to the user. The predicted yield results are displayed and provided to the user. The output includes the yield prediction figures, agricultural practice recommendations based on the predictions, and insights into potential risks. This allows the user to obtain accurate predictions and recommendations based on data.

[0314] Example 1

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

[0316] Conventional crop yield prediction systems based on agricultural data have limited accuracy due to insufficient handling of missing data and outliers. Furthermore, they lack an interface that allows users to easily input new environmental data and quickly obtain prediction results. This makes it difficult to achieve both immediate and accurate predictions in actual agricultural activities.

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

[0318] In this invention, the server includes: a data storage means for recording agricultural data; a data preprocessing means for preprocessing the recorded agricultural data, including missing value imputation and outlier correction; a means for generating a predictive model using a machine learning algorithm including random forest regression based on the preprocessed data; a data input means for inputting new environmental data via a terminal and inputting the input data into the predictive model to predict crop yield; and a prediction result output means for outputting the predicted yield, recommendations for agricultural practices, and potential risks. This enables users to easily input new data and quickly obtain highly reliable prediction results by using a highly accurate predictive model that has undergone missing data processing and outlier correction.

[0319] "Agricultural data" refers to data that includes information about the growing environment and management of crops, such as temperature, humidity, soil pH, rainfall, and yield data.

[0320] "Data storage means" refers to a device or system for storing agricultural data over a long period of time and enabling it to be retrieved as needed, and generally refers to a relational database.

[0321] "Data preprocessing means" refers to a process or system that performs missing value imputation and outlier correction to improve data quality.

[0322] A "machine learning algorithm" is an algorithm that allows a computer to improve its performance based on large amounts of data; random forest regression is one example.

[0323] "Random forest regression" is a machine learning algorithm that uses multiple decision trees to make predictions, and is particularly effective at preventing overfitting of data and making highly accurate predictions.

[0324] A "predictive model" is a mathematical model for predicting future data based on past data.

[0325] "Data input means" refers to an interface for users to input new environmental data, and generally corresponds to a web form or dedicated application via a terminal.

[0326] The "prediction result output means" is a device or system for presenting to a user the predicted yield results and agricultural practice recommendations and potential risks based thereon.

[0327] "Environmental data" refers to data on various factors that affect crop growth, including temperature, humidity, soil pH, and rainfall.

[0328] MODE FOR CARRYING OUT THE INVENTION

[0329] This invention is a system that generates a predictive model based on agricultural data and provides users with crop yield predictions and insights into appropriate agricultural practices. The system is composed of a data storage means, a data preprocessing means, a predictive model generation means, a data input means, and a prediction result output means.

[0330] Data Storage Means

[0331] The server uses database software to record and store agricultural data, including information such as temperature, humidity, soil pH, rainfall, and yield. This data is stored in a relational database and is easily accessible using a query language (e.g., SQL).

[0332] Data preprocessing measures

[0333] The server preprocesses the loaded data. Specifically, it uses the pandas library to impute missing values ​​with the average value of each indicator and correct outliers. This preprocessing process improves the quality of the dataset and the accuracy of the model.

[0334] Prediction model generation method

[0335] The server generates a predictive model using machine learning algorithms, including random forest regression, based on the preprocessed data. It splits the data into a training set and a test set using the scikit-learn library, trains the model on the training set, and then evaluates the accuracy of the model using the test set to select the appropriate predictive model.

[0336] Data Entry Method

[0337] The user inputs new environmental data via a terminal, such as temperature, humidity, soil pH, and rainfall, using a web form or a dedicated application. This input data is then sent to the server.

[0338] Prediction result output means

[0339] The server inputs the received new data into the trained predictive model to predict crop yields. The prediction results include yield figures, agricultural practice recommendations, and information on potential risks, providing users with useful information for appropriate agricultural planning.

[0340] Specific examples

[0341] For example, to predict the next season's tomato production, the steps are as follows:

[0342] 1. The server reads agricultural data about tomato cultivation for the past few years from a relational database.

[0343] 2. The server uses the pandas library to fill in missing values ​​with the average value of each indicator and correct outliers.

[0344] 3. The server generates a random forest regression model using the scikit-learn library on the preprocessed data, and performs training and evaluation.

[0345] 4. The user inputs and transmits new environmental data via the terminal, such as "Temperature: 27°C, Humidity: 65%, Soil pH: 6.8, Rainfall: 40mm."

[0346] 5. The server inputs the new data into the model and calculates the predicted yield.

[0347] 6. The server outputs the predicted results to the user, such as "Predicted yield: 5 tons, Recommendation: Emphasis on humidity control, Potential risk: Risk of disease outbreak if there is heavy rainfall."

[0348] Prompt Sentence Examples

[0349] "What are your yield expectations and recommendations for growing tomatoes next season? Temperature is 27°C, humidity is 65%, soil pH is 6.8, and rainfall is 40mm."

[0350] This provides users with accurate, data-driven predictions and recommendations to help them efficiently implement sustainable agricultural practices.

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

[0352] Step 1:

[0353] The server uses database software to record and store agricultural data. First, the server reads the necessary agricultural data (temperature, humidity, soil pH, rainfall, yield, etc.) from the relational database using an SQL query. Specifically, it executes the query "SELECT temperature, humidity, soil_pH, rainfall, yield FROM agricultural_data". The input data is the agricultural data in the database, and the output data is data in data frame format on the server.

[0354] Step 2:

[0355] The server preprocesses the loaded data. It uses the pandas library to fill missing values ​​with the mean value of each indicator and executes code such as "df.fillna(df.mean(), inplace=True)". It also processes outliers using statistical methods (e.g., correcting values ​​that exceed the standard deviation). The input data is agricultural data in a data frame format stored on the server, and the output data is a data frame with missing values ​​filled and outliers corrected.

[0356] Step 3:

[0357] The server generates a predictive model based on the preprocessed data. It uses the scikit-learn library to split the data into a training set (80%) and a test set (20%) using the "train_test_split" function. It then uses the random forest regression algorithm to train the model using "RandomForestRegressor". It then executes "model.fit(X_train, y_train)" to complete the model training. It then evaluates the accuracy of the model using the test set and calculates an accuracy score. The input data is the preprocessed data frame, and the output data is the trained model and its accuracy score.

[0358] Step 4:

[0359] The user inputs new environmental data via a terminal. Using a web form or a dedicated application, the user enters data such as temperature, humidity, soil pH, and rainfall into the form. Specifically, the user enters the data "Temperature: 27°C, Humidity: 65%, Soil pH: 6.8, Rainfall: 40mm" and presses the send button. The input data is the new environmental data entered by the user, and the output data is the data sent to the server.

[0360] Step 5:

[0361] The server receives new data sent by the user and predicts crop yields using the trained prediction model. It executes "model.predict(new_data)" on the new data to obtain the prediction result. The input data is the new environmental data, and the output data is the predicted yield value.

[0362] Step 6:

[0363] The server outputs the prediction results to the user. In addition to the predicted yield results, the yield figures, agricultural practice recommendations, and information on potential risks are displayed on a web page or application. Specifically, the server generates the results: "Predicted yield: 5 tons, Recommendation: Focus on humidity control, Potential risk: Risk of disease outbreak if there is heavy rainfall." The input data are the predicted yield figures and related information, and the output data are the visualized prediction results provided to the user.

[0364] (Application example 1)

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

[0366] While existing agricultural systems exist that can predict crop yields, there are no systems that utilize crop yield predictions for inventory management or delivery planning at logistics centers. As a result, logistics centers face issues such as excess inventory and shortages, making efficient inventory management and transportation difficult. In particular, there is a need for systems that can reflect yield prediction data in real time and provide optimal shipping schedules.

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

[0368] In this invention, the server includes a means for recording agricultural data, a means for preprocessing the recorded agricultural data, and a means for generating a prediction model based on the preprocessed data, which makes it possible to optimize inventory management and delivery plans at logistics centers based on crop yield prediction data.

[0369] "Agricultural data" is a general term for information related to crop growing conditions and results, such as temperature, humidity, soil pH, rainfall and yield.

[0370] "Preprocessing" refers to the process of reformatting incomplete data before analyzing it, such as by filling in missing values ​​and treating outliers.

[0371] A "predictive model" refers to a mathematical model or algorithm used to predict future yields, etc. based on past data.

[0372] "New environmental data" refers to new information on temperature, humidity, soil pH, rainfall, etc. that will be relevant to future crop cultivation.

[0373] "Crop yield" refers to the amount of crop production obtained under specific growing conditions.

[0374] "Prediction results" are numerical values ​​or assessments of future crop yields obtained using a predictive model.

[0375] "Distribution Center" means a facility that stores, stocks, and distributes products.

[0376] "Inventory management" is the process of efficiently managing the quantity and location of goods in a distribution center.

[0377] "Distribution planning" is the process of determining schedules and routes to efficiently deliver products to their final destinations.

[0378] "Recommendations" are suggestions for optimal actions or plans based on the prediction results.

[0379] The system for implementing this invention is a system that optimizes inventory management and delivery planning at a logistics center using a predictive model based on agricultural data. Specifically, this system is composed of the following main elements:

[0380] First, the server retrieves agricultural data from a database, including information on the growing conditions and results of crops, such as temperature, humidity, soil pH, rainfall, and yield.

[0381] The acquired data is preprocessed by the server, which includes imputing missing values ​​and processing outliers. Specifically, missing values ​​are imputed with the average value of each indicator.

[0382] Next, the server uses the preprocessed data to generate a predictive model. This model is generated using a machine learning algorithm (e.g., random forest regression). The data is split into a training set and a test set, and the training set is used to train the model. Once the model is trained, the test set is used to evaluate the accuracy of the model.

[0383] Users of the system input new environmental data into their terminals, including temperature, humidity, soil pH, rainfall, and other information relevant to future crop cultivation, and this new data is sent to the server.

[0384] The server uses the trained predictive model to predict crop yields based on new data, and the predictions are updated in real time to the distribution center's inventory management system, optimizing inventory management and delivery planning at the distribution center.

[0385] Additionally, the forecast results are communicated to users and recommendations are provided to optimize logistics center operations (e.g., shipping schedules and inventory replenishment timing).

[0386] In this system, the hardware used is mainly servers and terminals (smartphones and tablets), and examples of the software used include Python, scikit-learn, and the requests library.

[0387] As a specific example, suppose new data such as "Temperature: 25°C, Humidity: 60%, Soil pH: 6.5, Rainfall: 100mm" is input. The crop yield predicted based on this data is notified to the user, with a message such as "Next month's yield is expected to be X tons," along with recommendations such as "the appropriate harvest time" and "measures to take in response to future environmental changes."

[0388] An example of a prompt sentence to input to the generative AI model is as follows:

[0389] "Please predict next month's tomato yield based on current weather conditions, soil conditions, and other environmental factors. Also, please recommend agricultural practices to maximize yield."

[0390] As described above, the present invention is a system that uses agricultural data to predict crop yields and optimize inventory management and delivery plans at logistics centers.

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

[0392] Step 1:

[0393] The server retrieves "agricultural data" from a database. The input is a database query condition, and the output is agricultural data related to temperature, humidity, soil pH, rainfall, and yield. The specific operation of this is that the server accesses the database and retrieves the required data using means such as an SQL query.

[0394] Step 2:

[0395] The server preprocesses the acquired "agricultural data." The input is raw data, and the output is clean data in which missing values ​​have been filled and outliers have been processed. During this process, the server performs operations such as mean value filling and outlier removal. Specifically, it fills missing values ​​with the mean value of each attribute and performs processing to keep outliers within the standard deviation range.

[0396] Step 3:

[0397] The server uses the preprocessed data to generate a "predictive model." The input is the preprocessed dataset, and the output is a trained predictive model for predicting crop yield. Specifically, the server splits the data into a training set and a test set, and trains the model using a machine learning algorithm such as random forest regression. After training, the accuracy of the model is verified on the test set.

[0398] Step 4:

[0399] The user inputs new "environmental data" into the terminal. The input includes new environmental data such as temperature, humidity, soil pH, and rainfall, and the output is sent to the server. Specifically, the user enters the required data into the input form on the terminal and clicks the send button.

[0400] Step 5:

[0401] The server uses a trained "prediction model" to predict "crop yield" based on new environmental data. The inputs are new environmental data and the trained prediction model, and the output is a predicted crop yield value. Specifically, the server inputs new environmental data into the prediction model and obtains the predicted yield value output by the model.

[0402] Step 6:

[0403] The server notifies the user of the "prediction results" and provides "recommendations" to optimize the operations of the logistics center. The input is predicted yield data, and the output is a notification message sent to the user's device. Specifically, the server formats the prediction results in a format that is useful for future agricultural and logistics planning, and sends them to the user via email or app notification.

[0404] These processing steps enable the server to effectively utilize agricultural data to optimize inventory management and delivery planning at the logistics center.

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

[0406] A system for implementing the present invention combines a predictive model based on agricultural data with a user's emotional recognition function, which predicts crop yields based on user-provided environmental data and takes the user's emotional state into account when providing the prediction results.

[0407] The system mainly consists of the following elements: a database, a data preprocessing part, a predictive model generation part, a new data input part, a prediction execution part, a result output part, and an emotion engine.

[0408] The server first loads agricultural data from a database, including temperature, humidity, soil pH, rainfall, and yield. The server then preprocesses the data, which includes imputing missing values ​​(NaN) in the data frame with the mean value.

[0409] The server generates a predictive model based on the preprocessed data. A machine learning algorithm is used to generate this model. A typical example is random forest regression. The server divides the data into a training set and a test set, and trains the model using the training set. Once the model training is complete, the accuracy of the model is evaluated using the test set.

[0410] The user inputs new environmental data into the device, including temperature, humidity, soil pH, rainfall, and other factors relevant to future crop growth. This new data is sent to the server, which uses a trained predictive model to predict crop yields based on this new data.

[0411] The emotion engine is a means for recognizing the user's emotional state. The emotion engine analyzes the user's voice data and facial expression data to recognize emotions such as joy, surprise, sadness, and anger. For example, when a user inputs voice and facial expressions into the system using a microphone or camera, the emotion engine analyzes the data and determines the user's emotional state.

[0412] The server adjusts the output format of the prediction results based on the emotional state obtained from the emotion engine. For example, if the user is stressed, the server can provide more detailed and supportive feedback, while if the user is happy, the server can provide more concise and summary feedback.

[0413] Finally, the server outputs the predicted yield results and appropriate feedback to the user, allowing the user to receive information according to their emotional state and providing useful information for making appropriate agricultural plans.

[0414] For example, if a user inputs data into the device such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and rainfall of 200mm, the server will use this data to predict yields. At the same time, if the user inputs their emotional state using the camera and microphone, the emotion engine will analyze that state. If the analysis results indicate that the plant is "stressed," the server will provide a detailed explanation and additional advice such as "consider optimal cultivation techniques and risk avoidance methods."

[0415] This allows users to not only receive accurate data-based predictions, but also appropriate information based on their emotional state, helping them to efficiently implement sustainable agricultural practices.

[0416] The processing flow will be explained below.

[0417] Step 1:

[0418] The server loads agricultural data from a database. Specifically, it uses the pandas library to read a CSV file (e.g., "agricultural_data.csv") and stores it in a data frame. The loaded data includes temperature, humidity, soil pH, rainfall, and yield.

[0419] Step 2:

[0420] The server preprocesses the data. This preprocessing includes filling missing values ​​(NaN) in the data frame with the mean value. Specifically, it uses the pandas fillna method to fill missing values ​​with the mean value of each column.

[0421] Step 3:

[0422] The server generates a predictive model. First, the dataset is split into a training set and a test set. The train_test_split method is used to split the dataset, with 80% being the training set and 20% being the test set. Next, the model is trained on the training set using RandomForestRegressor.

[0423] Step 4:

[0424] The server evaluates the trained model and calculates the model's accuracy (score) using the test set. Specifically, it uses the score method to evaluate the prediction accuracy on the test set.

[0425] Step 5:

[0426] The user inputs new environmental data through a terminal, specifically inputting values ​​such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and rainfall of 200mm. These data become part of the future agricultural plan.

[0427] Step 6:

[0428] The server receives new data, converts it into a data frame to predict crop yield based on the environmental data entered by the user, and uses the trained model to predict yield from the new data.

[0429] Step 7:

[0430] The user inputs emotional data, specifically, voice and facial expressions captured using a camera and microphone, which are used to recognize the user's current emotional state.

[0431] Step 8:

[0432] The emotion engine analyzes the user's emotions. It analyzes voice data and facial expression data to detect emotional states such as joy, surprise, sadness, and anger. The emotion engine transmits the obtained emotional state to the server.

[0433] Step 9:

[0434] The server takes into account the user's emotional state and adjusts its predictions accordingly: for example, if the user is stressed, the server will provide detailed feedback and supportive comments, while if the user is happy, it will provide more concise feedback.

[0435] Step 10:

[0436] The server outputs the final prediction results, and displays appropriate feedback to the user based on the predicted yield results and emotional state. Specifically, this includes the yield prediction figures, agricultural practice recommendations based on the predictions, and insights into potential risks. This allows users to receive accurate data-based predictions and emotionally appropriate advice.

[0437] Example 2

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

[0439] Conventional agricultural data forecasting systems predict yields based on environmental data, but lack the functionality to provide forecast results that take the user's emotional state into account. This means that appropriate feedback based on the user's mental stress and satisfaction cannot be obtained, which poses a problem in improving the accuracy and efficiency of agricultural planning.

[0440] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for recording agricultural data, means for preprocessing the recorded agricultural data, means for generating a prediction model based on the preprocessed data, means for inputting new environmental data and predicting crop yield based on the data, means for outputting the prediction results, means for recognizing the user's emotional state, and means for adjusting the output format of the prediction results based on the user's emotional state. This enables the user to receive appropriate feedback and prediction information according to their emotional state.

[0441] Definitions of important words

[0442] "Agricultural data" refers to data that includes environmental conditions and management information that affect crop yields, specifically information on temperature, humidity, soil pH, rainfall, etc.

[0443] "Recording means" refers to devices or systems for storing agricultural data and retaining it for later use.

[0444] "Preprocessing means" refers to devices or systems that perform processes to prepare data in a format suitable for a predictive model, such as filling in missing values ​​and normalizing data.

[0445] "Means for generating a predictive model" refers to a device or system that uses pre-processed data to create a model based on a machine learning algorithm.

[0446] "New environmental data" refers to data that is input into the predictive model to predict new crop yields, specifically information such as temperature, humidity, soil pH, and rainfall.

[0447] "Prediction means" refers to a device or system that uses the generated prediction model to predict yield based on new environmental data.

[0448] The "means for outputting the predicted results" refers to a device or system for presenting the predicted yield results to a user.

[0449] "Means for recognizing the emotional state of a user" refers to a device or system for analyzing the user's voice data and facial expression data to determine the user's emotions.

[0450] "Means for adjusting the output format" refers to a device or system that changes the way the prediction results are presented based on the recognized emotional state of the user.

[0451] MODE FOR CARRYING OUT THE INVENTION

[0452] This invention provides a system that generates a predictive model based on agricultural data and combines it with a function to recognize user emotions. The system predicts crop yields based on environmental data provided by the user and can take the user's emotional state into account when providing the prediction results.

[0453] System components and hardware / software used

[0454] The system mainly consists of the following elements: a database, a data preprocessing part, a predictive model generation part, a new data input part, a prediction execution part, a result output part, and an emotion engine.

[0455] 1. Loading data

[0456] The server reads agricultural data from a database, which includes temperature, humidity, soil pH, rainfall, and yield. The database is a relational database management system (RDBMS).

[0457] 2. Data Preprocessing

[0458] The server uses the Pandas library to impute missing values ​​(NaN) in the data frame with the mean value. This preprocessing is necessary to improve the accuracy of the predictive model.

[0459] 3. Generate a predictive model

[0460] The server uses the preprocessed data to generate a predictive model using the Scikit-learn library. Specifically, the random forest regression algorithm is typically used. The data is divided into a training set and a test set, and the model is trained on the training set and its accuracy is evaluated on the test set.

[0461] 4. Enter new data

[0462] The user inputs new environmental data, such as temperature, humidity, soil pH, and rainfall, into the device via a dedicated input form or a smartphone app. The input data is sent to the server in JSON format.

[0463] 5. Performing yield prediction

[0464] The server uses the trained prediction model to predict crop yields based on new data, and the prediction results are temporarily stored and used in the next step.

[0465] 6. Emotion Recognition by Emotion Engine

[0466] The device uses a microphone and camera to collect the user's voice and facial expression data, which is then sent to a server.

[0467] The server uses a speech recognition API for voice analysis and OpenCV and Dlib libraries for facial expression analysis to determine emotional states, including happiness, surprise, sadness, anger, etc.

[0468] 7. Adjusting the result output

[0469] The server adjusts the output format of the prediction results based on the perceived emotional state, for example providing detailed and supportive feedback if the user is stressed and providing concise feedback if the user is happy.

[0470] 8. Providing Feedback

[0471] Finally, the server outputs the predicted yield results and appropriate feedback to the user, which the terminal displays to help the user make appropriate farming plans.

[0472] Specific examples

[0473] For example, a user inputs data into an input terminal: temperature 20°C, humidity 80%, soil pH 6.5, and rainfall 200mm. This data is sent to the server in JSON format. The server uses a trained model to predict the yield, calculating it as 5 tons. At the same time, if the user inputs emotional data using the microphone and camera, the emotion engine determines that the user is feeling "stressed." As a result, the server provides a detailed explanation and additional advice, such as "Consider optimal cultivation techniques and risk avoidance methods."

[0474] Example prompts for generative AI models

[0475] "Predict crop yield based on data such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and 200mm of rainfall. Provide feedback while taking into account the user's 'stressed' situation."

[0476] By combining these elements, users can get accurate data-driven predictions and relevant information based on their emotional state.

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

[0478] System program processing flow

[0479] Step 1:

[0480] The server reads agricultural data from a database, specifically using SQL queries to retrieve temperature, humidity, soil pH, rainfall, and yield data. The input is the agricultural data stored in the database, and the output is a data frame of the retrieved data.

[0481] Step 2:

[0482] The server preprocesses the data it reads. Specifically, it uses the Pandas library to fill in missing values ​​(NaN) with the mean value. The input is data read from the database, and the output is preprocessed data with missing values ​​filled in. This preprocessing ensures data consistency.

[0483] Step 3:

[0484] The server generates a predictive model based on the preprocessed data. Specifically, it uses the Scikit-learn library to split the data into a training set and a test set, and then trains the model using the random forest regression algorithm. The input is the preprocessed data, and the output is a trained predictive model. During the training period, the accuracy of the model is also evaluated.

[0485] Step 4:

[0486] The user inputs new environmental data (temperature, humidity, soil pH, rainfall) into the device. Specifically, they use a dedicated input form or a smartphone app. The input data is sent to the server in JSON format. The input is the environmental data entered by the user, and the output is the JSON data sent to the server.

[0487] Step 5:

[0488] The server inputs the received new data into the prediction model and predicts the crop yield. Specifically, it uses the predict method of the prediction model. The input is new environmental data (in JSON format), and the output is the predicted crop yield. The prediction result is temporarily saved.

[0489] Step 6:

[0490] The device collects the user's voice and facial expression data to obtain the user's emotional state. Specifically, it uses a microphone and a camera. This data is sent to a server. The input is the user's voice and facial expression data, and the output is the data sent to the server.

[0491] Step 7:

[0492] The server uses an emotion engine to analyze the user's emotional state. Specifically, it uses a speech recognition API for voice analysis and OpenCV and Dlib libraries for facial expression analysis. The input is the transmitted voice and facial expression data, and the output is the analyzed emotional state. For example, "joy" or "stress" is determined.

[0493] Step 8:

[0494] The server adjusts the output format of the prediction results based on the recognized emotional state of the user. The inputs are the predicted yield results and the analyzed emotional state, and the output is adjusted feedback results, such as detailed explanations or additional advice.

[0495] Step 9:

[0496] Finally, the server sends the adjusted prediction results and feedback to the device, which displays them to the user. The input is the adjusted feedback results, and the output is the information presented in a user-viewable format.

[0497] This allows the user to receive appropriate feedback and predictive information according to their emotional state.

[0498] (Application example 2)

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

[0500] In conventional agricultural systems, crop yield predictions are based on data, but in many cases, no consideration is given to how to communicate the prediction results to users. In particular, there is a lack of appropriate communication that takes into account the user's emotional state, making it difficult for users to accurately understand the prediction results and take appropriate action when they are stressed or in need of specific support.

[0501] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for recording agricultural data, means for preprocessing the recorded agricultural data, means for generating a prediction model based on the preprocessed data, means for inputting new environmental data and predicting crop yield based on the data, means for outputting the prediction results, means for recognizing the user's emotional state, and means for adjusting the output format of the prediction results based on the emotional state. This makes it possible to provide feedback according to the user's emotional state.

[0502] "Agricultural data" refers to information such as weather conditions, soil condition, rainfall, temperature, and humidity that affect crop growth and yield.

[0503] "Preprocessing" refers to the process of preparing data for analysis, such as filling in missing values ​​and standardizing data, which is carried out prior to data analysis.

[0504] "Predictive Model" refers to a mathematical or statistical model created to predict future outcomes based on historical data.

[0505] "Environmental data" refers to information about the growing environment of crops, such as temperature, humidity, soil pH, and rainfall.

[0506] "Yield forecasting" refers to predicting future crop yields based on input environmental data.

[0507] "Emotional state" indicates the user's psychological state, and refers to emotions such as joy, surprise, sadness, and anger.

[0508] "Emotion recognition means" refers to means for analyzing the user's voice data and facial expression data to recognize what emotion the user is currently feeling.

[0509] The "output format adjustment means" refers to a means for changing the output content and presentation method according to the emotional state of the user when providing the prediction results to the user.

[0510] A system for implementing this invention combines the functionality of generating a predictive model based on agricultural data and recognizing the emotional state of a user. The system predicts crop yield based on environmental data provided by a user and takes the user's emotional state into consideration when providing the prediction results. The system mainly includes the following means: a means for recording agricultural data, a means for pre-processing the data, a means for generating a predictive model, a means for inputting new environmental data, a means for predicting yield, a means for recognizing the emotional state, and a means for adjusting the output format.

[0511] The server first reads agricultural data from a database. This data includes temperature, humidity, soil pH, rainfall, and yield. Data preprocessing includes filling missing values ​​(NaN) and standardizing the data. Based on the preprocessed data, the server generates a predictive model using a machine learning algorithm (e.g., random forest regression). The model is trained and tested by dividing the data into a training set and a test set. The user inputs new environmental data (e.g., temperature, humidity, soil pH, rainfall) into the terminal and sends it from the terminal to the server. The server uses the new data to predict yield using the trained model.

[0512] Next, emotion recognition means include a system that analyzes the user's voice data and facial expression data. For example, data collected using a camera and microphone can be analyzed using an emotion engine (e.g., the FER library) to recognize the user's emotional state (happiness, surprise, sadness, anger, etc.). The server then adjusts the output format of the prediction results based on this emotional state. For example, if the server determines that the user is feeling stressed, it provides more detailed and supportive feedback. On the other hand, if the user is satisfied, it provides concise feedback that summarizes the main points.

[0513] As a concrete example, consider the case where a user inputs the following data into a terminal: temperature 20°C, humidity 80%, soil pH 6.5, and rainfall 200mm. The server predicts yield based on this data while simultaneously recognizing the user's emotional state (e.g., "feeling stressed"). If the analysis results indicate "feeling stressed," the server provides a detailed explanation and additional advice, such as "consider optimal cultivation techniques and risk avoidance methods."

[0514] Examples of input prompts to a generative AI model include the following:

[0515] "If a customer is stressed, advise them on how to provide detailed feedback. It helps if you take into account their questions and their current emotional state."

[0516] In this way, users can receive not only accurate data-based predictions but also appropriate information based on their emotional state, helping them to efficiently implement sustainable agricultural practices.

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

[0518] Step 1:

[0519] The server reads agricultural data from a database, specifically temperature, humidity, soil pH, rainfall, and yield data, which is used to generate predictive models.

[0520] Step 2:

[0521] The server preprocesses the agricultural data it loads, imputes missing values ​​with the mean value, and standardizes the data as needed. The preprocessed data is then output as input data for training the predictive model.

[0522] Step 3:

[0523] The server generates a predictive model based on the preprocessed data. Specifically, it splits the data into a training set and a test set, and trains the model using a machine learning algorithm such as random forest regression. The accuracy of the model is evaluated, and the trained predictive model is output.

[0524] Step 4:

[0525] The user inputs new environmental data (e.g., temperature, humidity, soil pH, rainfall) into the terminal, which then transmits the input data to the server.

[0526] Step 5:

[0527] The server receives new environmental data sent by the user, predicts crop yields using the trained predictive model based on the received data, and outputs the prediction results.

[0528] Step 6:

[0529] The user inputs voice data and facial expression data into the system using a microphone or camera, and the device transmits this data to the server.

[0530] Step 7:

[0531] The server receives voice data and facial expression data sent by the user. It analyzes this data using an emotion engine (e.g., the FER library) to recognize the user's emotional state. The analysis result is output as the user's emotional state.

[0532] Step 8:

[0533] The server adjusts the output format of the prediction results based on the emotional state obtained from the emotion engine. For example, if the user is stressed, it provides detailed feedback and advice. If the user is satisfied, it provides concise feedback. The adjusted output format of the prediction results is then sent to the user.

[0534] Step 9:

[0535] Users receive the adjusted forecast results and use the displayed feedback and advice to plan their future farming. At this stage, users consider optimal cultivation techniques and risk avoidance methods.

[0536] These are the processing steps of this system. At each step, data is input, processed, and calculated to obtain the appropriate output, making it possible to provide the user with highly accurate predictions and feedback based on their emotions.

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

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

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

[0540] [Third embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0553] The system for implementing the present invention generates a predictive model based on agricultural data and provides users with crop yield predictions and insights into appropriate agricultural practices. This system mainly consists of the following components: a database, a data preprocessing section, a predictive model generation section, a new data input section, a prediction execution section, and a result output section.

[0554] The server first loads agricultural data from a database. This data includes information such as temperature, humidity, soil pH, rainfall, and yield. The server then preprocesses the data. This preprocessing includes filling in missing values ​​and handling outliers. Specifically, it fills in missing values ​​with the average value of each indicator.

[0555] The server generates a predictive model based on the preprocessed data. A machine learning algorithm is used to generate this model. A typical example is random forest regression. The server divides the data into a training set and a test set, and trains the model using the training set. Once the model training is complete, the accuracy of the model is evaluated using the test set.

[0556] The user inputs new environmental data into the device, including temperature, humidity, soil pH, rainfall, and other factors relevant to future crop growth. This new data is sent to the server, which uses a trained predictive model to predict crop yields based on this new data.

[0557] Finally, the server outputs the predicted yield results to the user, providing useful information for the user to make appropriate agricultural plans, including the yield forecast figures, agricultural practice recommendations based on the forecasts, and insights into potential risks.

[0558] This provides users with accurate, data-driven predictions and recommendations, helping them to efficiently implement sustainable agricultural practices.

[0559] The processing flow will be explained below.

[0560] Step 1:

[0561] The server loads agricultural data from a database. Specifically, it uses the pandas library to read a CSV file (e.g., "agricultural_data.csv") and stores it in a data frame. The data includes temperature, humidity, soil pH, rainfall, and yield.

[0562] Step 2:

[0563] The server preprocesses the data. This preprocessing includes filling missing values ​​(NaN) in the data frame with the mean value. Specifically, it uses the pandas fillna method to fill missing values ​​with the mean value of each column.

[0564] Step 3:

[0565] The server generates a predictive model. First, the dataset is split into a training set and a test set. This split is done using the train_test_split method, with 80% of the dataset being trained and 20% being test. Next, the model is trained on the training set using RandomForestRegressor.

[0566] Step 4:

[0567] The server evaluates the trained model and calculates the model's accuracy (score) using the test set. Specifically, it uses the score method to evaluate the prediction accuracy on the test set.

[0568] Step 5:

[0569] The user inputs new environmental data, such as temperature, humidity, soil pH, and rainfall, via a terminal. This data is the basis for the user to plan future farming.

[0570] Step 6:

[0571] The server makes a prediction based on the new data input. It converts the new data into a data frame and uses the trained model to predict crop yields. It generates a specific yield number as a prediction result.

[0572] Step 7:

[0573] The server outputs the prediction results to the user. The predicted yield results are displayed and provided to the user. The output includes the yield prediction figures, agricultural practice recommendations based on the predictions, and insights into potential risks. This allows the user to obtain accurate predictions and recommendations based on data.

[0574] Example 1

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

[0576] Conventional crop yield prediction systems based on agricultural data have limited accuracy due to insufficient handling of missing data and outliers. Furthermore, they lack an interface that allows users to easily input new environmental data and quickly obtain prediction results. This makes it difficult to achieve both immediate and accurate predictions in actual agricultural activities.

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

[0578] In this invention, the server includes: a data storage means for recording agricultural data; a data preprocessing means for preprocessing the recorded agricultural data, including missing value imputation and outlier correction; a means for generating a predictive model using a machine learning algorithm including random forest regression based on the preprocessed data; a data input means for inputting new environmental data via a terminal and inputting the input data into the predictive model to predict crop yield; and a prediction result output means for outputting the predicted yield, recommendations for agricultural practices, and potential risks. This enables users to easily input new data and quickly obtain highly reliable prediction results by using a highly accurate predictive model that has undergone missing data processing and outlier correction.

[0579] "Agricultural data" refers to data that includes information about the growing environment and management of crops, such as temperature, humidity, soil pH, rainfall, and yield data.

[0580] "Data storage means" refers to a device or system for storing agricultural data over a long period of time and enabling it to be retrieved as needed, and generally refers to a relational database.

[0581] "Data preprocessing means" refers to a process or system that performs missing value imputation and outlier correction to improve data quality.

[0582] A "machine learning algorithm" is an algorithm that allows a computer to improve its performance based on large amounts of data; random forest regression is one example.

[0583] "Random forest regression" is a machine learning algorithm that uses multiple decision trees to make predictions, and is particularly effective at preventing overfitting of data and making highly accurate predictions.

[0584] A "predictive model" is a mathematical model for predicting future data based on past data.

[0585] "Data input means" refers to an interface for users to input new environmental data, and generally corresponds to a web form or dedicated application via a terminal.

[0586] The "prediction result output means" is a device or system for presenting to a user the predicted yield results and agricultural practice recommendations and potential risks based thereon.

[0587] "Environmental data" refers to data on various factors that affect crop growth, including temperature, humidity, soil pH, and rainfall.

[0588] MODE FOR CARRYING OUT THE INVENTION

[0589] This invention is a system that generates a predictive model based on agricultural data and provides users with crop yield predictions and insights into appropriate agricultural practices. The system is composed of a data storage means, a data preprocessing means, a predictive model generation means, a data input means, and a prediction result output means.

[0590] Data Storage Means

[0591] The server uses database software to record and store agricultural data, including information such as temperature, humidity, soil pH, rainfall, and yield. This data is stored in a relational database and is easily accessible using a query language (e.g., SQL).

[0592] Data preprocessing measures

[0593] The server preprocesses the loaded data. Specifically, it uses the pandas library to impute missing values ​​with the average value of each indicator and correct outliers. This preprocessing process improves the quality of the dataset and the accuracy of the model.

[0594] Prediction model generation method

[0595] The server generates a predictive model using machine learning algorithms, including random forest regression, based on the preprocessed data. It splits the data into a training set and a test set using the scikit-learn library, trains the model on the training set, and then evaluates the accuracy of the model using the test set to select the appropriate predictive model.

[0596] Data Entry Method

[0597] The user inputs new environmental data via a terminal, such as temperature, humidity, soil pH, and rainfall, using a web form or a dedicated application. This input data is then sent to the server.

[0598] Prediction result output means

[0599] The server inputs the received new data into the trained predictive model to predict crop yields. The prediction results include yield figures, agricultural practice recommendations, and information on potential risks, providing users with useful information for appropriate agricultural planning.

[0600] Specific examples

[0601] For example, to predict the next season's tomato production, the steps are as follows:

[0602] 1. The server reads agricultural data about tomato cultivation for the past few years from a relational database.

[0603] 2. The server uses the pandas library to fill in missing values ​​with the average value of each indicator and correct outliers.

[0604] 3. The server generates a random forest regression model using the scikit-learn library on the preprocessed data, and performs training and evaluation.

[0605] 4. The user inputs and transmits new environmental data via the terminal, such as "Temperature: 27°C, Humidity: 65%, Soil pH: 6.8, Rainfall: 40mm."

[0606] 5. The server inputs the new data into the model and calculates the predicted yield.

[0607] 6. The server outputs the predicted results to the user, such as "Predicted yield: 5 tons, Recommendation: Emphasis on humidity control, Potential risk: Risk of disease outbreak if there is heavy rainfall."

[0608] Prompt Sentence Examples

[0609] "What are your yield expectations and recommendations for growing tomatoes next season? Temperature is 27°C, humidity is 65%, soil pH is 6.8, and rainfall is 40mm."

[0610] This provides users with accurate, data-driven predictions and recommendations to help them efficiently implement sustainable agricultural practices.

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

[0612] Step 1:

[0613] The server uses database software to record and store agricultural data. First, the server reads the necessary agricultural data (temperature, humidity, soil pH, rainfall, yield, etc.) from the relational database using an SQL query. Specifically, it executes the query "SELECT temperature, humidity, soil_pH, rainfall, yield FROM agricultural_data". The input data is the agricultural data in the database, and the output data is data in data frame format on the server.

[0614] Step 2:

[0615] The server preprocesses the loaded data. It uses the pandas library to fill missing values ​​with the mean value of each indicator and executes code such as "df.fillna(df.mean(), inplace=True)". It also processes outliers using statistical methods (e.g., correcting values ​​that exceed the standard deviation). The input data is agricultural data in a data frame format stored on the server, and the output data is a data frame with missing values ​​filled and outliers corrected.

[0616] Step 3:

[0617] The server generates a predictive model based on the preprocessed data. It uses the scikit-learn library to split the data into a training set (80%) and a test set (20%) using the "train_test_split" function. It then uses the random forest regression algorithm to train the model using "RandomForestRegressor". It then executes "model.fit(X_train, y_train)" to complete the model training. It then evaluates the accuracy of the model using the test set and calculates an accuracy score. The input data is the preprocessed data frame, and the output data is the trained model and its accuracy score.

[0618] Step 4:

[0619] The user inputs new environmental data via a terminal. Using a web form or a dedicated application, the user enters data such as temperature, humidity, soil pH, and rainfall into the form. Specifically, the user enters the data "Temperature: 27°C, Humidity: 65%, Soil pH: 6.8, Rainfall: 40mm" and presses the send button. The input data is the new environmental data entered by the user, and the output data is the data sent to the server.

[0620] Step 5:

[0621] The server receives new data sent by the user and predicts crop yields using the trained prediction model. It executes "model.predict(new_data)" on the new data to obtain the prediction result. The input data is the new environmental data, and the output data is the predicted yield value.

[0622] Step 6:

[0623] The server outputs the prediction results to the user. In addition to the predicted yield results, the yield figures, agricultural practice recommendations, and information on potential risks are displayed on a web page or application. Specifically, the server generates the results: "Predicted yield: 5 tons, Recommendation: Focus on humidity control, Potential risk: Risk of disease outbreak if there is heavy rainfall." The input data are the predicted yield figures and related information, and the output data are the visualized prediction results provided to the user.

[0624] (Application example 1)

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

[0626] While existing agricultural systems exist that can predict crop yields, there are no systems that utilize crop yield predictions for inventory management or delivery planning at logistics centers. As a result, logistics centers face issues such as excess inventory and shortages, making efficient inventory management and transportation difficult. In particular, there is a need for systems that can reflect yield prediction data in real time and provide optimal shipping schedules.

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

[0628] In this invention, the server includes a means for recording agricultural data, a means for preprocessing the recorded agricultural data, and a means for generating a prediction model based on the preprocessed data, which makes it possible to optimize inventory management and delivery plans at logistics centers based on crop yield prediction data.

[0629] "Agricultural data" is a general term for information related to crop growing conditions and results, such as temperature, humidity, soil pH, rainfall and yield.

[0630] "Preprocessing" refers to the process of reformatting incomplete data before analyzing it, such as by filling in missing values ​​and treating outliers.

[0631] A "predictive model" refers to a mathematical model or algorithm used to predict future yields, etc. based on past data.

[0632] "New environmental data" refers to new information on temperature, humidity, soil pH, rainfall, etc. that will be relevant to future crop cultivation.

[0633] "Crop yield" refers to the amount of crop production obtained under specific growing conditions.

[0634] "Prediction results" are numerical values ​​or assessments of future crop yields obtained using a predictive model.

[0635] "Distribution Center" means a facility that stores, stocks, and distributes products.

[0636] "Inventory management" is the process of efficiently managing the quantity and location of goods in a distribution center.

[0637] "Distribution planning" is the process of determining schedules and routes to efficiently deliver products to their final destinations.

[0638] "Recommendations" are suggestions for optimal actions or plans based on the prediction results.

[0639] The system for implementing this invention is a system that optimizes inventory management and delivery planning at a logistics center using a predictive model based on agricultural data. Specifically, this system is composed of the following main elements:

[0640] First, the server retrieves agricultural data from a database, including information on the growing conditions and results of crops, such as temperature, humidity, soil pH, rainfall, and yield.

[0641] The acquired data is preprocessed by the server, which includes imputing missing values ​​and processing outliers. Specifically, missing values ​​are imputed with the average value of each indicator.

[0642] Next, the server uses the preprocessed data to generate a predictive model. This model is generated using a machine learning algorithm (e.g., random forest regression). The data is split into a training set and a test set, and the training set is used to train the model. Once the model is trained, the test set is used to evaluate the accuracy of the model.

[0643] Users of the system input new environmental data into their terminals, including temperature, humidity, soil pH, rainfall, and other information relevant to future crop cultivation, and this new data is sent to the server.

[0644] The server uses the trained predictive model to predict crop yields based on new data, and the predictions are updated in real time to the distribution center's inventory management system, optimizing inventory management and delivery planning at the distribution center.

[0645] Additionally, the forecast results are communicated to users and recommendations are provided to optimize logistics center operations (e.g., shipping schedules and inventory replenishment timing).

[0646] In this system, the hardware used is mainly servers and terminals (smartphones and tablets), and examples of the software used include Python, scikit-learn, and the requests library.

[0647] As a specific example, suppose new data such as "Temperature: 25°C, Humidity: 60%, Soil pH: 6.5, Rainfall: 100mm" is input. The crop yield predicted based on this data is notified to the user, with a message such as "Next month's yield is expected to be X tons," along with recommendations such as "the appropriate harvest time" and "measures to take in response to future environmental changes."

[0648] An example of a prompt sentence to input to the generative AI model is as follows:

[0649] "Please predict next month's tomato yield based on current weather conditions, soil conditions, and other environmental factors. Also, please recommend agricultural practices to maximize yield."

[0650] As described above, the present invention is a system that uses agricultural data to predict crop yields and optimize inventory management and delivery plans at logistics centers.

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

[0652] Step 1:

[0653] The server retrieves "agricultural data" from a database. The input is a database query condition, and the output is agricultural data related to temperature, humidity, soil pH, rainfall, and yield. The specific operation of this is that the server accesses the database and retrieves the required data using means such as an SQL query.

[0654] Step 2:

[0655] The server preprocesses the acquired "agricultural data." The input is raw data, and the output is clean data in which missing values ​​have been filled and outliers have been processed. During this process, the server performs operations such as mean value filling and outlier removal. Specifically, it fills missing values ​​with the mean value of each attribute and performs processing to keep outliers within the standard deviation range.

[0656] Step 3:

[0657] The server uses the preprocessed data to generate a "predictive model." The input is the preprocessed dataset, and the output is a trained predictive model for predicting crop yield. Specifically, the server splits the data into a training set and a test set, and trains the model using a machine learning algorithm such as random forest regression. After training, the accuracy of the model is verified on the test set.

[0658] Step 4:

[0659] The user inputs new "environmental data" into the terminal. The input includes new environmental data such as temperature, humidity, soil pH, and rainfall, and the output is sent to the server. Specifically, the user enters the required data into the input form on the terminal and clicks the send button.

[0660] Step 5:

[0661] The server uses a trained "prediction model" to predict "crop yield" based on new environmental data. The inputs are new environmental data and the trained prediction model, and the output is a predicted crop yield value. Specifically, the server inputs new environmental data into the prediction model and obtains the predicted yield value output by the model.

[0662] Step 6:

[0663] The server notifies the user of the "prediction results" and provides "recommendations" to optimize the operations of the logistics center. The input is predicted yield data, and the output is a notification message sent to the user's device. Specifically, the server formats the prediction results in a format that is useful for future agricultural and logistics planning, and sends them to the user via email or app notification.

[0664] These processing steps enable the server to effectively utilize agricultural data to optimize inventory management and delivery planning at the logistics center.

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

[0666] A system for implementing the present invention combines a predictive model based on agricultural data with a user's emotional recognition function, which predicts crop yields based on user-provided environmental data and takes the user's emotional state into account when providing the prediction results.

[0667] The system mainly consists of the following elements: a database, a data preprocessing part, a predictive model generation part, a new data input part, a prediction execution part, a result output part, and an emotion engine.

[0668] The server first loads agricultural data from a database, including temperature, humidity, soil pH, rainfall, and yield. The server then preprocesses the data, which includes imputing missing values ​​(NaN) in the data frame with the mean value.

[0669] The server generates a predictive model based on the preprocessed data. A machine learning algorithm is used to generate this model. A typical example is random forest regression. The server divides the data into a training set and a test set, and trains the model using the training set. Once the model training is complete, the accuracy of the model is evaluated using the test set.

[0670] The user inputs new environmental data into the device, including temperature, humidity, soil pH, rainfall, and other factors relevant to future crop growth. This new data is sent to the server, which uses a trained predictive model to predict crop yields based on this new data.

[0671] The emotion engine is a means for recognizing the user's emotional state. The emotion engine analyzes the user's voice data and facial expression data to recognize emotions such as joy, surprise, sadness, and anger. For example, when a user inputs voice and facial expressions into the system using a microphone or camera, the emotion engine analyzes the data and determines the user's emotional state.

[0672] The server adjusts the output format of the prediction results based on the emotional state obtained from the emotion engine. For example, if the user is stressed, the server can provide more detailed and supportive feedback, while if the user is happy, the server can provide more concise and summary feedback.

[0673] Finally, the server outputs the predicted yield results and appropriate feedback to the user, allowing the user to receive information according to their emotional state and providing useful information for making appropriate agricultural plans.

[0674] For example, if a user inputs data into the device such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and rainfall of 200mm, the server will use this data to predict yields. At the same time, if the user inputs their emotional state using the camera and microphone, the emotion engine will analyze that state. If the analysis results indicate that the plant is "stressed," the server will provide a detailed explanation and additional advice such as "consider optimal cultivation techniques and risk avoidance methods."

[0675] This allows users to not only receive accurate data-based predictions, but also appropriate information based on their emotional state, helping them to efficiently implement sustainable agricultural practices.

[0676] The processing flow will be explained below.

[0677] Step 1:

[0678] The server loads agricultural data from a database. Specifically, it uses the pandas library to read a CSV file (e.g., "agricultural_data.csv") and stores it in a data frame. The loaded data includes temperature, humidity, soil pH, rainfall, and yield.

[0679] Step 2:

[0680] The server preprocesses the data. This preprocessing includes filling missing values ​​(NaN) in the data frame with the mean value. Specifically, it uses the pandas fillna method to fill missing values ​​with the mean value of each column.

[0681] Step 3:

[0682] The server generates a predictive model. First, the dataset is split into a training set and a test set. The train_test_split method is used to split the dataset, with 80% being the training set and 20% being the test set. Next, the model is trained on the training set using RandomForestRegressor.

[0683] Step 4:

[0684] The server evaluates the trained model and calculates the model's accuracy (score) using the test set. Specifically, it uses the score method to evaluate the prediction accuracy on the test set.

[0685] Step 5:

[0686] The user inputs new environmental data through a terminal, specifically inputting values ​​such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and rainfall of 200mm. These data become part of the future agricultural plan.

[0687] Step 6:

[0688] The server receives new data, converts it into a data frame to predict crop yield based on the environmental data entered by the user, and uses the trained model to predict yield from the new data.

[0689] Step 7:

[0690] The user inputs emotional data, specifically, voice and facial expressions captured using a camera and microphone, which are used to recognize the user's current emotional state.

[0691] Step 8:

[0692] The emotion engine analyzes the user's emotions. It analyzes voice data and facial expression data to detect emotional states such as joy, surprise, sadness, and anger. The emotion engine transmits the obtained emotional state to the server.

[0693] Step 9:

[0694] The server takes into account the user's emotional state and adjusts its predictions accordingly: for example, if the user is stressed, the server will provide detailed feedback and supportive comments, while if the user is happy, it will provide more concise feedback.

[0695] Step 10:

[0696] The server outputs the final prediction results, and displays appropriate feedback to the user based on the predicted yield results and emotional state. Specifically, this includes the yield prediction figures, agricultural practice recommendations based on the predictions, and insights into potential risks. This allows users to receive accurate data-based predictions and emotionally appropriate advice.

[0697] Example 2

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

[0699] Conventional agricultural data forecasting systems predict yields based on environmental data, but lack the functionality to provide forecast results that take the user's emotional state into account. This means that appropriate feedback based on the user's mental stress and satisfaction cannot be obtained, which poses a problem in improving the accuracy and efficiency of agricultural planning.

[0700] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for recording agricultural data, means for preprocessing the recorded agricultural data, means for generating a prediction model based on the preprocessed data, means for inputting new environmental data and predicting crop yield based on the data, means for outputting the prediction results, means for recognizing the user's emotional state, and means for adjusting the output format of the prediction results based on the user's emotional state. This enables the user to receive appropriate feedback and prediction information according to their emotional state.

[0701] Definitions of important words

[0702] "Agricultural data" refers to data that includes environmental conditions and management information that affect crop yields, specifically information on temperature, humidity, soil pH, rainfall, etc.

[0703] "Recording means" refers to devices or systems for storing agricultural data and retaining it for later use.

[0704] "Preprocessing means" refers to devices or systems that perform processes to prepare data in a format suitable for a predictive model, such as filling in missing values ​​and normalizing data.

[0705] "Means for generating a predictive model" refers to a device or system that uses pre-processed data to create a model based on a machine learning algorithm.

[0706] "New environmental data" refers to data that is input into the predictive model to predict new crop yields, specifically information such as temperature, humidity, soil pH, and rainfall.

[0707] "Prediction means" refers to a device or system that uses the generated prediction model to predict yield based on new environmental data.

[0708] The "means for outputting the predicted results" refers to a device or system for presenting the predicted yield results to a user.

[0709] "Means for recognizing the emotional state of a user" refers to a device or system for analyzing the user's voice data and facial expression data to determine the user's emotions.

[0710] "Means for adjusting the output format" refers to a device or system that changes the way the prediction results are presented based on the recognized emotional state of the user.

[0711] MODE FOR CARRYING OUT THE INVENTION

[0712] This invention provides a system that generates a predictive model based on agricultural data and combines it with a function to recognize user emotions. The system predicts crop yields based on environmental data provided by the user and can take the user's emotional state into account when providing the prediction results.

[0713] System components and hardware / software used

[0714] The system mainly consists of the following elements: a database, a data preprocessing part, a predictive model generation part, a new data input part, a prediction execution part, a result output part, and an emotion engine.

[0715] 1. Loading data

[0716] The server reads agricultural data from a database, which includes temperature, humidity, soil pH, rainfall, and yield. The database is a relational database management system (RDBMS).

[0717] 2. Data Preprocessing

[0718] The server uses the Pandas library to impute missing values ​​(NaN) in the data frame with the mean value. This preprocessing is necessary to improve the accuracy of the predictive model.

[0719] 3. Generate a predictive model

[0720] The server uses the preprocessed data to generate a predictive model using the Scikit-learn library. Specifically, the random forest regression algorithm is typically used. The data is divided into a training set and a test set, and the model is trained on the training set and its accuracy is evaluated on the test set.

[0721] 4. Enter new data

[0722] The user inputs new environmental data, such as temperature, humidity, soil pH, and rainfall, into the device via a dedicated input form or a smartphone app. The input data is sent to the server in JSON format.

[0723] 5. Performing yield prediction

[0724] The server uses the trained prediction model to predict crop yields based on new data, and the prediction results are temporarily stored and used in the next step.

[0725] 6. Emotion Recognition by Emotion Engine

[0726] The device uses a microphone and camera to collect the user's voice and facial expression data, which is then sent to a server.

[0727] The server uses a speech recognition API for voice analysis and OpenCV and Dlib libraries for facial expression analysis to determine emotional states, including happiness, surprise, sadness, anger, etc.

[0728] 7. Adjusting the result output

[0729] The server adjusts the output format of the prediction results based on the perceived emotional state, for example providing detailed and supportive feedback if the user is stressed and providing concise feedback if the user is happy.

[0730] 8. Providing Feedback

[0731] Finally, the server outputs the predicted yield results and appropriate feedback to the user, which the terminal displays to help the user make appropriate farming plans.

[0732] Specific examples

[0733] For example, a user inputs data into an input terminal: temperature 20°C, humidity 80%, soil pH 6.5, and rainfall 200mm. This data is sent to the server in JSON format. The server uses a trained model to predict the yield, calculating it as 5 tons. At the same time, if the user inputs emotional data using the microphone and camera, the emotion engine determines that the user is feeling "stressed." As a result, the server provides a detailed explanation and additional advice, such as "Consider optimal cultivation techniques and risk avoidance methods."

[0734] Example prompts for generative AI models

[0735] "Predict crop yield based on data such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and 200mm of rainfall. Provide feedback while taking into account the user's 'stressed' situation."

[0736] By combining these elements, users can get accurate data-driven predictions and relevant information based on their emotional state.

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

[0738] System program processing flow

[0739] Step 1:

[0740] The server reads agricultural data from a database, specifically using SQL queries to retrieve temperature, humidity, soil pH, rainfall, and yield data. The input is the agricultural data stored in the database, and the output is a data frame of the retrieved data.

[0741] Step 2:

[0742] The server preprocesses the data it reads. Specifically, it uses the Pandas library to fill in missing values ​​(NaN) with the mean value. The input is data read from the database, and the output is preprocessed data with missing values ​​filled in. This preprocessing ensures data consistency.

[0743] Step 3:

[0744] The server generates a predictive model based on the preprocessed data. Specifically, it uses the Scikit-learn library to split the data into a training set and a test set, and then trains the model using the random forest regression algorithm. The input is the preprocessed data, and the output is a trained predictive model. During the training period, the accuracy of the model is also evaluated.

[0745] Step 4:

[0746] The user inputs new environmental data (temperature, humidity, soil pH, rainfall) into the device. Specifically, they use a dedicated input form or a smartphone app. The input data is sent to the server in JSON format. The input is the environmental data entered by the user, and the output is the JSON data sent to the server.

[0747] Step 5:

[0748] The server inputs the received new data into the prediction model and predicts the crop yield. Specifically, it uses the predict method of the prediction model. The input is new environmental data (in JSON format), and the output is the predicted crop yield. The prediction result is temporarily saved.

[0749] Step 6:

[0750] The device collects the user's voice and facial expression data to obtain the user's emotional state. Specifically, it uses a microphone and a camera. This data is sent to a server. The input is the user's voice and facial expression data, and the output is the data sent to the server.

[0751] Step 7:

[0752] The server uses an emotion engine to analyze the user's emotional state. Specifically, it uses a speech recognition API for voice analysis and OpenCV and Dlib libraries for facial expression analysis. The input is the transmitted voice and facial expression data, and the output is the analyzed emotional state. For example, "joy" or "stress" is determined.

[0753] Step 8:

[0754] The server adjusts the output format of the prediction results based on the recognized emotional state of the user. The inputs are the predicted yield results and the analyzed emotional state, and the output is adjusted feedback results, such as detailed explanations or additional advice.

[0755] Step 9:

[0756] Finally, the server sends the adjusted prediction results and feedback to the device, which displays them to the user. The input is the adjusted feedback results, and the output is the information presented in a user-viewable format.

[0757] This allows the user to receive appropriate feedback and predictive information according to their emotional state.

[0758] (Application example 2)

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

[0760] In conventional agricultural systems, crop yield predictions are based on data, but in many cases, no consideration is given to how to communicate the prediction results to users. In particular, there is a lack of appropriate communication that takes into account the user's emotional state, making it difficult for users to accurately understand the prediction results and take appropriate action when they are stressed or in need of specific support.

[0761] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for recording agricultural data, means for preprocessing the recorded agricultural data, means for generating a prediction model based on the preprocessed data, means for inputting new environmental data and predicting crop yield based on the data, means for outputting the prediction results, means for recognizing the user's emotional state, and means for adjusting the output format of the prediction results based on the emotional state. This makes it possible to provide feedback according to the user's emotional state.

[0762] "Agricultural data" refers to information such as weather conditions, soil condition, rainfall, temperature, and humidity that affect crop growth and yield.

[0763] "Preprocessing" refers to the process of preparing data for analysis, such as filling in missing values ​​and standardizing data, which is carried out prior to data analysis.

[0764] "Predictive Model" refers to a mathematical or statistical model created to predict future outcomes based on historical data.

[0765] "Environmental data" refers to information about the growing environment of crops, such as temperature, humidity, soil pH, and rainfall.

[0766] "Yield forecasting" refers to predicting future crop yields based on input environmental data.

[0767] "Emotional state" indicates the user's psychological state, and refers to emotions such as joy, surprise, sadness, and anger.

[0768] "Emotion recognition means" refers to means for analyzing the user's voice data and facial expression data to recognize what emotion the user is currently feeling.

[0769] The "output format adjustment means" refers to a means for changing the output content and presentation method according to the emotional state of the user when providing the prediction results to the user.

[0770] A system for implementing this invention combines the functionality of generating a predictive model based on agricultural data and recognizing the emotional state of a user. The system predicts crop yield based on environmental data provided by a user and takes the user's emotional state into consideration when providing the prediction results. The system mainly includes the following means: a means for recording agricultural data, a means for pre-processing the data, a means for generating a predictive model, a means for inputting new environmental data, a means for predicting yield, a means for recognizing the emotional state, and a means for adjusting the output format.

[0771] The server first reads agricultural data from a database. This data includes temperature, humidity, soil pH, rainfall, and yield. Data preprocessing includes filling missing values ​​(NaN) and standardizing the data. Based on the preprocessed data, the server generates a predictive model using a machine learning algorithm (e.g., random forest regression). The model is trained and tested by dividing the data into a training set and a test set. The user inputs new environmental data (e.g., temperature, humidity, soil pH, rainfall) into the terminal and sends it from the terminal to the server. The server uses the new data to predict yield using the trained model.

[0772] Next, emotion recognition means include a system that analyzes the user's voice data and facial expression data. For example, data collected using a camera and microphone can be analyzed using an emotion engine (e.g., the FER library) to recognize the user's emotional state (happiness, surprise, sadness, anger, etc.). The server then adjusts the output format of the prediction results based on this emotional state. For example, if the server determines that the user is feeling stressed, it provides more detailed and supportive feedback. On the other hand, if the user is satisfied, it provides concise feedback that summarizes the main points.

[0773] As a concrete example, consider the case where a user inputs the following data into a terminal: temperature 20°C, humidity 80%, soil pH 6.5, and rainfall 200mm. The server predicts yield based on this data while simultaneously recognizing the user's emotional state (e.g., "feeling stressed"). If the analysis results indicate "feeling stressed," the server provides a detailed explanation and additional advice, such as "consider optimal cultivation techniques and risk avoidance methods."

[0774] Examples of input prompts to a generative AI model include the following:

[0775] "If a customer is stressed, advise them on how to provide detailed feedback. It helps if you take into account their questions and their current emotional state."

[0776] In this way, users can receive not only accurate data-based predictions but also appropriate information based on their emotional state, helping them to efficiently implement sustainable agricultural practices.

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

[0778] Step 1:

[0779] The server reads agricultural data from a database, specifically temperature, humidity, soil pH, rainfall, and yield data, which is used to generate predictive models.

[0780] Step 2:

[0781] The server preprocesses the agricultural data it loads, imputes missing values ​​with the mean value, and standardizes the data as needed. The preprocessed data is then output as input data for training the predictive model.

[0782] Step 3:

[0783] The server generates a predictive model based on the preprocessed data. Specifically, it splits the data into a training set and a test set, and trains the model using a machine learning algorithm such as random forest regression. The accuracy of the model is evaluated, and the trained predictive model is output.

[0784] Step 4:

[0785] The user inputs new environmental data (e.g., temperature, humidity, soil pH, rainfall) into the terminal, which then transmits the input data to the server.

[0786] Step 5:

[0787] The server receives new environmental data sent by the user, predicts crop yields using the trained predictive model based on the received data, and outputs the prediction results.

[0788] Step 6:

[0789] The user inputs voice data and facial expression data into the system using a microphone or camera, and the device transmits this data to the server.

[0790] Step 7:

[0791] The server receives voice data and facial expression data sent by the user. It analyzes this data using an emotion engine (e.g., the FER library) to recognize the user's emotional state. The analysis result is output as the user's emotional state.

[0792] Step 8:

[0793] The server adjusts the output format of the prediction results based on the emotional state obtained from the emotion engine. For example, if the user is stressed, it provides detailed feedback and advice. If the user is satisfied, it provides concise feedback. The adjusted output format of the prediction results is then sent to the user.

[0794] Step 9:

[0795] Users receive the adjusted forecast results and use the displayed feedback and advice to plan their future farming. At this stage, users consider optimal cultivation techniques and risk avoidance methods.

[0796] These are the processing steps of this system. At each step, data is input, processed, and calculated to obtain the appropriate output, making it possible to provide the user with highly accurate predictions and feedback based on their emotions.

[0797] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

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

[0799] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.

[0800] [Fourth embodiment]

[0801] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[0802] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

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

[0804] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.

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

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

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

[0808] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.

[0809] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

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

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

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

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

[0814] The system for implementing the present invention generates a predictive model based on agricultural data and provides users with crop yield predictions and insights into appropriate agricultural practices. This system mainly consists of the following components: a database, a data preprocessing section, a predictive model generation section, a new data input section, a prediction execution section, and a result output section.

[0815] The server first loads agricultural data from a database. This data includes information such as temperature, humidity, soil pH, rainfall, and yield. The server then preprocesses the data. This preprocessing includes filling in missing values ​​and handling outliers. Specifically, it fills in missing values ​​with the average value of each indicator.

[0816] The server generates a predictive model based on the preprocessed data. A machine learning algorithm is used to generate this model. A typical example is random forest regression. The server divides the data into a training set and a test set, and trains the model using the training set. Once the model training is complete, the accuracy of the model is evaluated using the test set.

[0817] The user inputs new environmental data into the device, including temperature, humidity, soil pH, rainfall, and other factors relevant to future crop growth. This new data is sent to the server, which uses a trained predictive model to predict crop yields based on this new data.

[0818] Finally, the server outputs the predicted yield results to the user, providing useful information for the user to make appropriate agricultural plans, including the yield forecast figures, agricultural practice recommendations based on the forecasts, and insights into potential risks.

[0819] This provides users with accurate, data-driven predictions and recommendations, helping them to efficiently implement sustainable agricultural practices.

[0820] The processing flow will be explained below.

[0821] Step 1:

[0822] The server loads agricultural data from a database. Specifically, it uses the pandas library to read a CSV file (e.g., "agricultural_data.csv") and stores it in a data frame. The data includes temperature, humidity, soil pH, rainfall, and yield.

[0823] Step 2:

[0824] The server preprocesses the data. This preprocessing includes filling missing values ​​(NaN) in the data frame with the mean value. Specifically, it uses the pandas fillna method to fill missing values ​​with the mean value of each column.

[0825] Step 3:

[0826] The server generates a predictive model. First, the dataset is split into a training set and a test set. This split is done using the train_test_split method, with 80% of the dataset being trained and 20% being test. Next, the model is trained on the training set using RandomForestRegressor.

[0827] Step 4:

[0828] The server evaluates the trained model and calculates the model's accuracy (score) using the test set. Specifically, it uses the score method to evaluate the prediction accuracy on the test set.

[0829] Step 5:

[0830] The user inputs new environmental data, such as temperature, humidity, soil pH, and rainfall, via a terminal. This data is the basis for the user to plan future farming.

[0831] Step 6:

[0832] The server makes a prediction based on the new data input. It converts the new data into a data frame and uses the trained model to predict crop yields. It generates a specific yield number as a prediction result.

[0833] Step 7:

[0834] The server outputs the prediction results to the user. The predicted yield results are displayed and provided to the user. The output includes the yield prediction figures, agricultural practice recommendations based on the predictions, and insights into potential risks. This allows the user to obtain accurate predictions and recommendations based on data.

[0835] Example 1

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

[0837] Conventional crop yield prediction systems based on agricultural data have limited accuracy due to insufficient handling of missing data and outliers. Furthermore, they lack an interface that allows users to easily input new environmental data and quickly obtain prediction results. This makes it difficult to achieve both immediate and accurate predictions in actual agricultural activities.

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

[0839] In this invention, the server includes: a data storage means for recording agricultural data; a data preprocessing means for preprocessing the recorded agricultural data, including missing value imputation and outlier correction; a means for generating a predictive model using a machine learning algorithm including random forest regression based on the preprocessed data; a data input means for inputting new environmental data via a terminal and inputting the input data into the predictive model to predict crop yield; and a prediction result output means for outputting the predicted yield, recommendations for agricultural practices, and potential risks. This enables users to easily input new data and quickly obtain highly reliable prediction results by using a highly accurate predictive model that has undergone missing data processing and outlier correction.

[0840] "Agricultural data" refers to data that includes information about the growing environment and management of crops, such as temperature, humidity, soil pH, rainfall, and yield data.

[0841] "Data storage means" refers to a device or system for storing agricultural data over a long period of time and enabling it to be retrieved as needed, and generally refers to a relational database.

[0842] "Data preprocessing means" refers to a process or system that performs missing value imputation and outlier correction to improve data quality.

[0843] A "machine learning algorithm" is an algorithm that allows a computer to improve its performance based on large amounts of data; random forest regression is one example.

[0844] "Random forest regression" is a machine learning algorithm that uses multiple decision trees to make predictions, and is particularly effective at preventing overfitting of data and making highly accurate predictions.

[0845] A "predictive model" is a mathematical model for predicting future data based on past data.

[0846] "Data input means" refers to an interface for users to input new environmental data, and generally corresponds to a web form or dedicated application via a terminal.

[0847] The "prediction result output means" is a device or system for presenting to a user the predicted yield results and agricultural practice recommendations and potential risks based thereon.

[0848] "Environmental data" refers to data on various factors that affect crop growth, including temperature, humidity, soil pH, and rainfall.

[0849] MODE FOR CARRYING OUT THE INVENTION

[0850] This invention is a system that generates a predictive model based on agricultural data and provides users with crop yield predictions and insights into appropriate agricultural practices. The system is composed of a data storage means, a data preprocessing means, a predictive model generation means, a data input means, and a prediction result output means.

[0851] Data Storage Means

[0852] The server uses database software to record and store agricultural data, including information such as temperature, humidity, soil pH, rainfall, and yield. This data is stored in a relational database and is easily accessible using a query language (e.g., SQL).

[0853] Data preprocessing measures

[0854] The server preprocesses the loaded data. Specifically, it uses the pandas library to impute missing values ​​with the average value of each indicator and correct outliers. This preprocessing process improves the quality of the dataset and the accuracy of the model.

[0855] Prediction model generation method

[0856] The server generates a predictive model using machine learning algorithms, including random forest regression, based on the preprocessed data. It splits the data into a training set and a test set using the scikit-learn library, trains the model on the training set, and then evaluates the accuracy of the model using the test set to select the appropriate predictive model.

[0857] Data Entry Method

[0858] The user inputs new environmental data via a terminal, such as temperature, humidity, soil pH, and rainfall, using a web form or a dedicated application. This input data is then sent to the server.

[0859] Prediction result output means

[0860] The server inputs the received new data into the trained predictive model to predict crop yields. The prediction results include yield figures, agricultural practice recommendations, and information on potential risks, providing users with useful information for appropriate agricultural planning.

[0861] Specific examples

[0862] For example, to predict the next season's tomato production, the steps are as follows:

[0863] 1. The server reads agricultural data about tomato cultivation for the past few years from a relational database.

[0864] 2. The server uses the pandas library to fill in missing values ​​with the average value of each indicator and correct outliers.

[0865] 3. The server generates a random forest regression model using the scikit-learn library on the preprocessed data, and performs training and evaluation.

[0866] 4. The user inputs and transmits new environmental data via the terminal, such as "Temperature: 27°C, Humidity: 65%, Soil pH: 6.8, Rainfall: 40mm."

[0867] 5. The server inputs the new data into the model and calculates the predicted yield.

[0868] 6. The server outputs the predicted results to the user, such as "Predicted yield: 5 tons, Recommendation: Emphasis on humidity control, Potential risk: Risk of disease outbreak if there is heavy rainfall."

[0869] Prompt Sentence Examples

[0870] "What are your yield expectations and recommendations for growing tomatoes next season? Temperature is 27°C, humidity is 65%, soil pH is 6.8, and rainfall is 40mm."

[0871] This provides users with accurate, data-driven predictions and recommendations to help them efficiently implement sustainable agricultural practices.

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

[0873] Step 1:

[0874] The server uses database software to record and store agricultural data. First, the server reads the necessary agricultural data (temperature, humidity, soil pH, rainfall, yield, etc.) from the relational database using an SQL query. Specifically, it executes the query "SELECT temperature, humidity, soil_pH, rainfall, yield FROM agricultural_data". The input data is the agricultural data in the database, and the output data is data in data frame format on the server.

[0875] Step 2:

[0876] The server preprocesses the loaded data. It uses the pandas library to fill missing values ​​with the mean value of each indicator and executes code such as "df.fillna(df.mean(), inplace=True)". It also processes outliers using statistical methods (e.g., correcting values ​​that exceed the standard deviation). The input data is agricultural data in a data frame format stored on the server, and the output data is a data frame with missing values ​​filled and outliers corrected.

[0877] Step 3:

[0878] The server generates a predictive model based on the preprocessed data. It uses the scikit-learn library to split the data into a training set (80%) and a test set (20%) using the "train_test_split" function. It then uses the random forest regression algorithm to train the model using "RandomForestRegressor". It then executes "model.fit(X_train, y_train)" to complete the model training. It then evaluates the accuracy of the model using the test set and calculates an accuracy score. The input data is the preprocessed data frame, and the output data is the trained model and its accuracy score.

[0879] Step 4:

[0880] The user inputs new environmental data via a terminal. Using a web form or a dedicated application, the user enters data such as temperature, humidity, soil pH, and rainfall into the form. Specifically, the user enters the data "Temperature: 27°C, Humidity: 65%, Soil pH: 6.8, Rainfall: 40mm" and presses the send button. The input data is the new environmental data entered by the user, and the output data is the data sent to the server.

[0881] Step 5:

[0882] The server receives new data sent by the user and predicts crop yields using the trained prediction model. It executes "model.predict(new_data)" on the new data to obtain the prediction result. The input data is the new environmental data, and the output data is the predicted yield value.

[0883] Step 6:

[0884] The server outputs the prediction results to the user. In addition to the predicted yield results, the yield figures, agricultural practice recommendations, and information on potential risks are displayed on a web page or application. Specifically, the server generates the results: "Predicted yield: 5 tons, Recommendation: Focus on humidity control, Potential risk: Risk of disease outbreak if there is heavy rainfall." The input data are the predicted yield figures and related information, and the output data are the visualized prediction results provided to the user.

[0885] (Application example 1)

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

[0887] While existing agricultural systems exist that can predict crop yields, there are no systems that utilize crop yield predictions for inventory management or delivery planning at logistics centers. As a result, logistics centers face issues such as excess inventory and shortages, making efficient inventory management and transportation difficult. In particular, there is a need for systems that can reflect yield prediction data in real time and provide optimal shipping schedules.

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

[0889] In this invention, the server includes a means for recording agricultural data, a means for preprocessing the recorded agricultural data, and a means for generating a prediction model based on the preprocessed data, which makes it possible to optimize inventory management and delivery plans at logistics centers based on crop yield prediction data.

[0890] "Agricultural data" is a general term for information related to crop growing conditions and results, such as temperature, humidity, soil pH, rainfall and yield.

[0891] "Preprocessing" refers to the process of reformatting incomplete data before analyzing it, such as by filling in missing values ​​and treating outliers.

[0892] A "predictive model" refers to a mathematical model or algorithm used to predict future yields, etc. based on past data.

[0893] "New environmental data" refers to new information on temperature, humidity, soil pH, rainfall, etc. that will be relevant to future crop cultivation.

[0894] "Crop yield" refers to the amount of crop production obtained under specific growing conditions.

[0895] "Prediction results" are numerical values ​​or assessments of future crop yields obtained using a predictive model.

[0896] "Distribution Center" means a facility that stores, stocks, and distributes products.

[0897] "Inventory management" is the process of efficiently managing the quantity and location of goods in a distribution center.

[0898] "Distribution planning" is the process of determining schedules and routes to efficiently deliver products to their final destinations.

[0899] "Recommendations" are suggestions for optimal actions or plans based on the prediction results.

[0900] The system for implementing this invention is a system that optimizes inventory management and delivery planning at a logistics center using a predictive model based on agricultural data. Specifically, this system is composed of the following main elements:

[0901] First, the server retrieves agricultural data from a database, including information on the growing conditions and results of crops, such as temperature, humidity, soil pH, rainfall, and yield.

[0902] The acquired data is preprocessed by the server, which includes imputing missing values ​​and processing outliers. Specifically, missing values ​​are imputed with the average value of each indicator.

[0903] Next, the server uses the preprocessed data to generate a predictive model. This model is generated using a machine learning algorithm (e.g., random forest regression). The data is split into a training set and a test set, and the training set is used to train the model. Once the model is trained, the test set is used to evaluate the accuracy of the model.

[0904] Users of the system input new environmental data into their terminals, including temperature, humidity, soil pH, rainfall, and other information relevant to future crop cultivation, and this new data is sent to the server.

[0905] The server uses the trained predictive model to predict crop yields based on new data, and the predictions are updated in real time to the distribution center's inventory management system, optimizing inventory management and delivery planning at the distribution center.

[0906] Additionally, the forecast results are communicated to users and recommendations are provided to optimize logistics center operations (e.g., shipping schedules and inventory replenishment timing).

[0907] In this system, the hardware used is mainly servers and terminals (smartphones and tablets), and examples of the software used include Python, scikit-learn, and the requests library.

[0908] As a specific example, suppose new data such as "Temperature: 25°C, Humidity: 60%, Soil pH: 6.5, Rainfall: 100mm" is input. The crop yield predicted based on this data is notified to the user, with a message such as "Next month's yield is expected to be X tons," along with recommendations such as "the appropriate harvest time" and "measures to take in response to future environmental changes."

[0909] An example of a prompt sentence to input to the generative AI model is as follows:

[0910] "Please predict next month's tomato yield based on current weather conditions, soil conditions, and other environmental factors. Also, please recommend agricultural practices to maximize yield."

[0911] As described above, the present invention is a system that uses agricultural data to predict crop yields and optimize inventory management and delivery plans at logistics centers.

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

[0913] Step 1:

[0914] The server retrieves "agricultural data" from a database. The input is a database query condition, and the output is agricultural data related to temperature, humidity, soil pH, rainfall, and yield. The specific operation of this is that the server accesses the database and retrieves the required data using means such as an SQL query.

[0915] Step 2:

[0916] The server preprocesses the acquired "agricultural data." The input is raw data, and the output is clean data in which missing values ​​have been filled and outliers have been processed. During this process, the server performs operations such as mean value filling and outlier removal. Specifically, it fills missing values ​​with the mean value of each attribute and performs processing to keep outliers within the standard deviation range.

[0917] Step 3:

[0918] The server uses the preprocessed data to generate a "predictive model." The input is the preprocessed dataset, and the output is a trained predictive model for predicting crop yield. Specifically, the server splits the data into a training set and a test set, and trains the model using a machine learning algorithm such as random forest regression. After training, the accuracy of the model is verified on the test set.

[0919] Step 4:

[0920] The user inputs new "environmental data" into the terminal. The input includes new environmental data such as temperature, humidity, soil pH, and rainfall, and the output is sent to the server. Specifically, the user enters the required data into the input form on the terminal and clicks the send button.

[0921] Step 5:

[0922] The server uses a trained "prediction model" to predict "crop yield" based on new environmental data. The inputs are new environmental data and the trained prediction model, and the output is a predicted crop yield value. Specifically, the server inputs new environmental data into the prediction model and obtains the predicted yield value output by the model.

[0923] Step 6:

[0924] The server notifies the user of the "prediction results" and provides "recommendations" to optimize the operations of the logistics center. The input is predicted yield data, and the output is a notification message sent to the user's device. Specifically, the server formats the prediction results in a format that is useful for future agricultural and logistics planning, and sends them to the user via email or app notification.

[0925] These processing steps enable the server to effectively utilize agricultural data to optimize inventory management and delivery planning at the logistics center.

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

[0927] A system for implementing the present invention combines a predictive model based on agricultural data with a user's emotional recognition function, which predicts crop yields based on user-provided environmental data and takes the user's emotional state into account when providing the prediction results.

[0928] The system mainly consists of the following elements: a database, a data preprocessing part, a predictive model generation part, a new data input part, a prediction execution part, a result output part, and an emotion engine.

[0929] The server first loads agricultural data from a database, including temperature, humidity, soil pH, rainfall, and yield. The server then preprocesses the data, which includes imputing missing values ​​(NaN) in the data frame with the mean value.

[0930] The server generates a predictive model based on the preprocessed data. A machine learning algorithm is used to generate this model. A typical example is random forest regression. The server divides the data into a training set and a test set, and trains the model using the training set. Once the model training is complete, the accuracy of the model is evaluated using the test set.

[0931] The user inputs new environmental data into the device, including temperature, humidity, soil pH, rainfall, and other factors relevant to future crop growth. This new data is sent to the server, which uses a trained predictive model to predict crop yields based on this new data.

[0932] The emotion engine is a means for recognizing the user's emotional state. The emotion engine analyzes the user's voice data and facial expression data to recognize emotions such as joy, surprise, sadness, and anger. For example, when a user inputs voice and facial expressions into the system using a microphone or camera, the emotion engine analyzes the data and determines the user's emotional state.

[0933] The server adjusts the output format of the prediction results based on the emotional state obtained from the emotion engine. For example, if the user is stressed, the server can provide more detailed and supportive feedback, while if the user is happy, the server can provide more concise and summary feedback.

[0934] Finally, the server outputs the predicted yield results and appropriate feedback to the user, allowing the user to receive information according to their emotional state and providing useful information for making appropriate agricultural plans.

[0935] For example, if a user inputs data into the device such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and rainfall of 200mm, the server will use this data to predict yields. At the same time, if the user inputs their emotional state using the camera and microphone, the emotion engine will analyze that state. If the analysis results indicate that the plant is "stressed," the server will provide a detailed explanation and additional advice such as "consider optimal cultivation techniques and risk avoidance methods."

[0936] This allows users to not only receive accurate data-based predictions, but also appropriate information based on their emotional state, helping them to efficiently implement sustainable agricultural practices.

[0937] The processing flow will be explained below.

[0938] Step 1:

[0939] The server loads agricultural data from a database. Specifically, it uses the pandas library to read a CSV file (e.g., "agricultural_data.csv") and stores it in a data frame. The loaded data includes temperature, humidity, soil pH, rainfall, and yield.

[0940] Step 2:

[0941] The server preprocesses the data. This preprocessing includes filling missing values ​​(NaN) in the data frame with the mean value. Specifically, it uses the pandas fillna method to fill missing values ​​with the mean value of each column.

[0942] Step 3:

[0943] The server generates a predictive model. First, the dataset is split into a training set and a test set. The train_test_split method is used to split the dataset, with 80% being the training set and 20% being the test set. Next, the model is trained on the training set using RandomForestRegressor.

[0944] Step 4:

[0945] The server evaluates the trained model and calculates the model's accuracy (score) using the test set. Specifically, it uses the score method to evaluate the prediction accuracy on the test set.

[0946] Step 5:

[0947] The user inputs new environmental data through a terminal, specifically inputting values ​​such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and rainfall of 200mm. These data become part of the future agricultural plan.

[0948] Step 6:

[0949] The server receives new data, converts it into a data frame to predict crop yield based on the environmental data entered by the user, and uses the trained model to predict yield from the new data.

[0950] Step 7:

[0951] The user inputs emotional data, specifically, voice and facial expressions captured using a camera and microphone, which are used to recognize the user's current emotional state.

[0952] Step 8:

[0953] The emotion engine analyzes the user's emotions. It analyzes voice data and facial expression data to detect emotional states such as joy, surprise, sadness, and anger. The emotion engine transmits the obtained emotional state to the server.

[0954] Step 9:

[0955] The server takes into account the user's emotional state and adjusts its predictions accordingly: for example, if the user is stressed, the server will provide detailed feedback and supportive comments, while if the user is happy, it will provide more concise feedback.

[0956] Step 10:

[0957] The server outputs the final prediction results, and displays appropriate feedback to the user based on the predicted yield results and emotional state. Specifically, this includes the yield prediction figures, agricultural practice recommendations based on the predictions, and insights into potential risks. This allows users to receive accurate data-based predictions and emotionally appropriate advice.

[0958] Example 2

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

[0960] Conventional agricultural data forecasting systems predict yields based on environmental data, but lack the functionality to provide forecast results that take the user's emotional state into account. This means that appropriate feedback based on the user's mental stress and satisfaction cannot be obtained, which poses a problem in improving the accuracy and efficiency of agricultural planning.

[0961] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for recording agricultural data, means for preprocessing the recorded agricultural data, means for generating a prediction model based on the preprocessed data, means for inputting new environmental data and predicting crop yield based on the data, means for outputting the prediction results, means for recognizing the user's emotional state, and means for adjusting the output format of the prediction results based on the user's emotional state. This enables the user to receive appropriate feedback and prediction information according to their emotional state.

[0962] Definitions of important words

[0963] "Agricultural data" refers to data that includes environmental conditions and management information that affect crop yields, specifically information on temperature, humidity, soil pH, rainfall, etc.

[0964] "Recording means" refers to devices or systems for storing agricultural data and retaining it for later use.

[0965] "Preprocessing means" refers to devices or systems that perform processes to prepare data in a format suitable for a predictive model, such as filling in missing values ​​and normalizing data.

[0966] "Means for generating a predictive model" refers to a device or system that uses pre-processed data to create a model based on a machine learning algorithm.

[0967] "New environmental data" refers to data that is input into the predictive model to predict new crop yields, specifically information such as temperature, humidity, soil pH, and rainfall.

[0968] "Prediction means" refers to a device or system that uses the generated prediction model to predict yield based on new environmental data.

[0969] The "means for outputting the predicted results" refers to a device or system for presenting the predicted yield results to a user.

[0970] "Means for recognizing the emotional state of a user" refers to a device or system for analyzing the user's voice data and facial expression data to determine the user's emotions.

[0971] "Means for adjusting the output format" refers to a device or system that changes the way the prediction results are presented based on the recognized emotional state of the user.

[0972] MODE FOR CARRYING OUT THE INVENTION

[0973] This invention provides a system that generates a predictive model based on agricultural data and combines it with a function to recognize user emotions. The system predicts crop yields based on environmental data provided by the user and can take the user's emotional state into account when providing the prediction results.

[0974] System components and hardware / software used

[0975] The system mainly consists of the following elements: a database, a data preprocessing part, a predictive model generation part, a new data input part, a prediction execution part, a result output part, and an emotion engine.

[0976] 1. Loading data

[0977] The server reads agricultural data from a database, which includes temperature, humidity, soil pH, rainfall, and yield. The database is a relational database management system (RDBMS).

[0978] 2. Data Preprocessing

[0979] The server uses the Pandas library to impute missing values ​​(NaN) in the data frame with the mean value. This preprocessing is necessary to improve the accuracy of the predictive model.

[0980] 3. Generate a predictive model

[0981] The server uses the preprocessed data to generate a predictive model using the Scikit-learn library. Specifically, the random forest regression algorithm is typically used. The data is divided into a training set and a test set, and the model is trained on the training set and its accuracy is evaluated on the test set.

[0982] 4. Enter new data

[0983] The user inputs new environmental data, such as temperature, humidity, soil pH, and rainfall, into the device via a dedicated input form or a smartphone app. The input data is sent to the server in JSON format.

[0984] 5. Performing yield prediction

[0985] The server uses the trained prediction model to predict crop yields based on new data, and the prediction results are temporarily stored and used in the next step.

[0986] 6. Emotion Recognition by Emotion Engine

[0987] The device uses a microphone and camera to collect the user's voice and facial expression data, which is then sent to a server.

[0988] The server uses a speech recognition API for voice analysis and OpenCV and Dlib libraries for facial expression analysis to determine emotional states, including happiness, surprise, sadness, anger, etc.

[0989] 7. Adjusting the result output

[0990] The server adjusts the output format of the prediction results based on the perceived emotional state, for example providing detailed and supportive feedback if the user is stressed and providing concise feedback if the user is happy.

[0991] 8. Providing Feedback

[0992] Finally, the server outputs the predicted yield results and appropriate feedback to the user, which the terminal displays to help the user make appropriate farming plans.

[0993] Specific examples

[0994] For example, a user inputs data into an input terminal: temperature 20°C, humidity 80%, soil pH 6.5, and rainfall 200mm. This data is sent to the server in JSON format. The server uses a trained model to predict the yield, calculating it as 5 tons. At the same time, if the user inputs emotional data using the microphone and camera, the emotion engine determines that the user is feeling "stressed." As a result, the server provides a detailed explanation and additional advice, such as "Consider optimal cultivation techniques and risk avoidance methods."

[0995] Example prompts for generative AI models

[0996] "Predict crop yield based on data such as a temperature of 20°C, humidity of 80%, soil pH of 6.5, and 200mm of rainfall. Provide feedback while taking into account the user's 'stressed' situation."

[0997] By combining these elements, users can get accurate data-driven predictions and relevant information based on their emotional state.

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

[0999] System program processing flow

[1000] Step 1:

[1001] The server reads agricultural data from a database, specifically using SQL queries to retrieve temperature, humidity, soil pH, rainfall, and yield data. The input is the agricultural data stored in the database, and the output is a data frame of the retrieved data.

[1002] Step 2:

[1003] The server preprocesses the data it reads. Specifically, it uses the Pandas library to fill in missing values ​​(NaN) with the mean value. The input is data read from the database, and the output is preprocessed data with missing values ​​filled in. This preprocessing ensures data consistency.

[1004] Step 3:

[1005] The server generates a predictive model based on the preprocessed data. Specifically, it uses the Scikit-learn library to split the data into a training set and a test set, and then trains the model using the random forest regression algorithm. The input is the preprocessed data, and the output is a trained predictive model. During the training period, the accuracy of the model is also evaluated.

[1006] Step 4:

[1007] The user inputs new environmental data (temperature, humidity, soil pH, rainfall) into the device. Specifically, they use a dedicated input form or a smartphone app. The input data is sent to the server in JSON format. The input is the environmental data entered by the user, and the output is the JSON data sent to the server.

[1008] Step 5:

[1009] The server inputs the received new data into the prediction model and predicts the crop yield. Specifically, it uses the predict method of the prediction model. The input is new environmental data (in JSON format), and the output is the predicted crop yield. The prediction result is temporarily saved.

[1010] Step 6:

[1011] The device collects the user's voice and facial expression data to obtain the user's emotional state. Specifically, it uses a microphone and a camera. This data is sent to a server. The input is the user's voice and facial expression data, and the output is the data sent to the server.

[1012] Step 7:

[1013] The server uses an emotion engine to analyze the user's emotional state. Specifically, it uses a speech recognition API for voice analysis and OpenCV and Dlib libraries for facial expression analysis. The input is the transmitted voice and facial expression data, and the output is the analyzed emotional state. For example, "joy" or "stress" is determined.

[1014] Step 8:

[1015] The server adjusts the output format of the prediction results based on the recognized emotional state of the user. The inputs are the predicted yield results and the analyzed emotional state, and the output is adjusted feedback results, such as detailed explanations or additional advice.

[1016] Step 9:

[1017] Finally, the server sends the adjusted prediction results and feedback to the device, which displays them to the user. The input is the adjusted feedback results, and the output is the information presented in a user-viewable format.

[1018] This allows the user to receive appropriate feedback and predictive information according to their emotional state.

[1019] (Application example 2)

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

[1021] In conventional agricultural systems, crop yield predictions are based on data, but in many cases, no consideration is given to how to communicate the prediction results to users. In particular, there is a lack of appropriate communication that takes into account the user's emotional state, making it difficult for users to accurately understand the prediction results and take appropriate action when they are stressed or in need of specific support.

[1022] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for recording agricultural data, means for preprocessing the recorded agricultural data, means for generating a prediction model based on the preprocessed data, means for inputting new environmental data and predicting crop yield based on the data, means for outputting the prediction results, means for recognizing the user's emotional state, and means for adjusting the output format of the prediction results based on the emotional state. This makes it possible to provide feedback according to the user's emotional state.

[1023] "Agricultural data" refers to information such as weather conditions, soil condition, rainfall, temperature, and humidity that affect crop growth and yield.

[1024] "Preprocessing" refers to the process of preparing data for analysis, such as filling in missing values ​​and standardizing data, which is carried out prior to data analysis.

[1025] "Predictive Model" refers to a mathematical or statistical model created to predict future outcomes based on historical data.

[1026] "Environmental data" refers to information about the growing environment of crops, such as temperature, humidity, soil pH, and rainfall.

[1027] "Yield forecasting" refers to predicting future crop yields based on input environmental data.

[1028] "Emotional state" indicates the user's psychological state, and refers to emotions such as joy, surprise, sadness, and anger.

[1029] "Emotion recognition means" refers to means for analyzing the user's voice data and facial expression data to recognize what emotion the user is currently feeling.

[1030] The "output format adjustment means" refers to a means for changing the output content and presentation method according to the emotional state of the user when providing the prediction results to the user.

[1031] A system for implementing this invention combines the functionality of generating a predictive model based on agricultural data and recognizing the emotional state of a user. The system predicts crop yield based on environmental data provided by a user and takes the user's emotional state into consideration when providing the prediction results. The system mainly includes the following means: a means for recording agricultural data, a means for pre-processing the data, a means for generating a predictive model, a means for inputting new environmental data, a means for predicting yield, a means for recognizing the emotional state, and a means for adjusting the output format.

[1032] The server first reads agricultural data from a database. This data includes temperature, humidity, soil pH, rainfall, and yield. Data preprocessing includes filling missing values ​​(NaN) and standardizing the data. Based on the preprocessed data, the server generates a predictive model using a machine learning algorithm (e.g., random forest regression). The model is trained and tested by dividing the data into a training set and a test set. The user inputs new environmental data (e.g., temperature, humidity, soil pH, rainfall) into the terminal and sends it from the terminal to the server. The server uses the new data to predict yield using the trained model.

[1033] Next, emotion recognition means include a system that analyzes the user's voice data and facial expression data. For example, data collected using a camera and microphone can be analyzed using an emotion engine (e.g., the FER library) to recognize the user's emotional state (happiness, surprise, sadness, anger, etc.). The server then adjusts the output format of the prediction results based on this emotional state. For example, if the server determines that the user is feeling stressed, it provides more detailed and supportive feedback. On the other hand, if the user is satisfied, it provides concise feedback that summarizes the main points.

[1034] As a concrete example, consider the case where a user inputs the following data into a terminal: temperature 20°C, humidity 80%, soil pH 6.5, and rainfall 200mm. The server predicts yield based on this data while simultaneously recognizing the user's emotional state (e.g., "feeling stressed"). If the analysis results indicate "feeling stressed," the server provides a detailed explanation and additional advice, such as "consider optimal cultivation techniques and risk avoidance methods."

[1035] Examples of input prompts to a generative AI model include the following:

[1036] "If a customer is stressed, advise them on how to provide detailed feedback. It helps if you take into account their questions and their current emotional state."

[1037] In this way, users can receive not only accurate data-based predictions but also appropriate information based on their emotional state, helping them to efficiently implement sustainable agricultural practices.

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

[1039] Step 1:

[1040] The server reads agricultural data from a database, specifically temperature, humidity, soil pH, rainfall, and yield data, which is used to generate predictive models.

[1041] Step 2:

[1042] The server preprocesses the agricultural data it loads, imputes missing values ​​with the mean value, and standardizes the data as needed. The preprocessed data is then output as input data for training the predictive model.

[1043] Step 3:

[1044] The server generates a predictive model based on the preprocessed data. Specifically, it splits the data into a training set and a test set, and trains the model using a machine learning algorithm such as random forest regression. The accuracy of the model is evaluated, and the trained predictive model is output.

[1045] Step 4:

[1046] The user inputs new environmental data (e.g., temperature, humidity, soil pH, rainfall) into the terminal, which then transmits the input data to the server.

[1047] Step 5:

[1048] The server receives new environmental data sent by the user, predicts crop yields using the trained predictive model based on the received data, and outputs the prediction results.

[1049] Step 6:

[1050] The user inputs voice data and facial expression data into the system using a microphone or camera, and the device transmits this data to the server.

[1051] Step 7:

[1052] The server receives voice data and facial expression data sent by the user. It analyzes this data using an emotion engine (e.g., the FER library) to recognize the user's emotional state. The analysis result is output as the user's emotional state.

[1053] Step 8:

[1054] The server adjusts the output format of the prediction results based on the emotional state obtained from the emotion engine. For example, if the user is stressed, it provides detailed feedback and advice. If the user is satisfied, it provides concise feedback. The adjusted output format of the prediction results is then sent to the user.

[1055] Step 9:

[1056] Users receive the adjusted forecast results and use the displayed feedback and advice to plan their future farming. At this stage, users consider optimal cultivation techniques and risk avoidance methods.

[1057] These are the processing steps of this system. At each step, data is input, processed, and calculated to obtain the appropriate output, making it possible to provide the user with highly accurate predictions and feedback based on their emotions.

[1058] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.

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

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

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

[1062] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.

[1063] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.

[1064] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).

[1065] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.

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

[1067] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values ​​indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.

[1068] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).

[1069] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.

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

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

[1072] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.

[1073] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.

[1074] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.

[1075] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.

[1076] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.

[1077] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.

[1078] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.

[1079] The following is further disclosed regarding the above embodiment.

[1080] (Claim 1)

[1081] a means for recording agricultural data;

[1082] means for pre-processing the recorded agricultural data;

[1083] a means for generating a predictive model based on the preprocessed data;

[1084] a means for inputting new environmental data and predicting crop yield based on the data;

[1085] A means for outputting a prediction result;

[1086] A system including:

[1087] (Claim 2)

[1088] 2. The system according to claim 1, wherein the means for recording agricultural data uses a database.

[1089] (Claim 3)

[1090] 10. The system of claim 1, wherein the predictive model utilizes a machine learning algorithm.

[1091] "Example 1"

[1092] (Claim 1)

[1093] a data storage means for recording agricultural data;

[1094] a data preprocessing means for preprocessing the recorded agricultural data, including missing value completion and outlier correction;

[1095] A means for generating a predictive model using a machine learning algorithm including random forest regression based on the preprocessed data;

[1096] a data input means for inputting new environmental data via a terminal and inputting the input data into a prediction model to predict crop yield;

[1097] a prediction result output means for outputting predicted yield results and agricultural practice recommendations and potential risks;

[1098] A system including:

[1099] (Claim 2)

[1100] 2. The system according to claim 1, wherein the means for recording agricultural data uses a relational database.

[1101] (Claim 3)

[1102] The system of claim 1, which utilizes random forest regression to generate the predictive model.

[1103] "Application Example 1"

[1104] (Claim 1)

[1105] a means for recording agricultural data;

[1106] means for pre-processing the recorded agricultural data;

[1107] a means for generating a predictive model based on the preprocessed data;

[1108] a means for inputting new environmental data and predicting crop yield based on the data;

[1109] A means for outputting a prediction result;

[1110] A means of providing recommendations to optimize inventory management and delivery planning in distribution centers;

[1111] A system including:

[1112] (Claim 2)

[1113] 2. The system according to claim 1, wherein the means for recording agricultural data uses a database.

[1114] (Claim 3)

[1115] 10. The system of claim 1, wherein the predictive model utilizes a machine learning algorithm.

[1116] "Example 2: Combining Emotion Engines"

[1117] Claiming a new invention

[1118] (Claim 1)

[1119] a means for recording agricultural data;

[1120] means for pre-processing the recorded agricultural data;

[1121] a means for generating a predictive model based on the preprocessed data;

[1122] a means for inputting new environmental data and predicting crop yield based on the data;

[1123] A means for outputting a prediction result;

[1124] means for recognizing the emotional state of a user;

[1125] means for adjusting the output format of the prediction result based on the emotional state of the user;

[1126] A system including:

[1127] (Claim 2)

[1128] 2. The system according to claim 1, wherein the means for recording agricultural data uses a storage device.

[1129] (Claim 3)

[1130] 10. The system of claim 1, wherein the predictive model utilizes an artificial intelligence algorithm.

[1131] "Application example 2 when combining emotion engines"

[1132] (Claim 1)

[1133] a means for recording agricultural data;

[1134] means for pre-processing the recorded agricultural data;

[1135] a means for generating a predictive model based on the preprocessed data;

[1136] a means for inputting new environmental data and predicting crop yield based on the data;

[1137] A means for outputting a prediction result;

[1138] means for recognizing the emotional state of a user;

[1139] means for adjusting the output format of the prediction result based on the emotional state;

[1140] A system including:

[1141] (Claim 2)

[1142] 2. The system according to claim 1, wherein the means for recording agricultural data uses a database.

[1143] (Claim 3)

[1144] 10. The system of claim 1, wherein the predictive model utilizes a machine learning algorithm. [Explanation of symbols]

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

Claims

1. a means for recording agricultural data; means for pre-processing the recorded agricultural data; a means for generating a predictive model based on the preprocessed data; a means for inputting new environmental data and predicting crop yield based on the data; A means for outputting a prediction result; A system including:

2. 2. The system according to claim 1, wherein the means for recording agricultural data uses a database.

3. The system of claim 1 , wherein the predictive model utilizes a machine learning algorithm.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A