System
A system that integrates and preprocesses weather and soil data to train a crop prediction model, facilitating efficient and effective crop selection and production planning.
Patent Information
- Application Number
- JP2024137442
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-16
- Publication Date
- 2026-02-27
AI Technical Summary
Conventional methods in agriculture struggle to comprehensively analyze weather and soil conditions to select optimal crops, making it difficult to improve yields and reduce risk.
A system that integrates past weather and soil information, preprocesses the data, trains a crop prediction model, and provides prediction results to users, enabling efficient crop selection and production planning.
Enables farmers to select optimal crops based on historical data, improving agricultural efficiency and sustainability.
Smart Images

Figure 2026034321000001_ABST
Abstract
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] In today's agricultural sector, efficient and appropriate crop selection and production planning are required. In particular, selecting appropriate crops that respond to fluctuations in weather and soil conditions is essential for improving yields and reducing risk. However, conventional methods make it difficult to comprehensively analyze these factors and propose optimal crops. Therefore, there is a need to provide a method that utilizes past weather and soil information to enable farmers to easily select optimal crops. [Means for solving the problem]
[0005] The present invention solves the above-mentioned problems by providing a system including a means for acquiring past weather information, a means for acquiring soil information, a means for integrating and preprocessing the weather information and the soil information, a means for training a crop prediction model using the preprocessed data, a means for receiving new environmental data as input and predicting crop suitability using the prediction model, and a means for providing the prediction results to a user, thereby predicting the crops that are optimal for weather and soil conditions, enabling farmers to effectively select crops and plan production.
[0006] "Historical weather information" refers to data about past weather conditions in a particular area, including information such as temperature, rainfall, wind speed, and humidity.
[0007] "Soil information" refers to data about the physical and chemical properties of soil in a particular area, including information such as soil pH, soil moisture, and nutrient content.
[0008] "Means for integration and preprocessing" refers to the process of combining the acquired meteorological and soil information into a database and performing data cleansing processes such as processing missing values and standardizing the data.
[0009] "Means for training a predictive model" refers to the process of training a machine learning algorithm (e.g., random forest) using the integrated and preprocessed data to build a model for predicting crop yield and suitability.
[0010] "New environmental data" refers to the most up-to-date data farmers have on current weather and soil conditions, including temperature, rainfall, soil pH, and soil moisture.
[0011] A "predictive model" refers to a machine learning model built using training data that can predict yield and crop suitability for new data.
[0012] "Crop suitability predictors" refers to the process of using predictive models to predict from new environmental data whether a particular crop is suitable for a given region or condition.
[0013] "Means for providing to users" refers to an interface or system that displays the prediction results in a format that is easy for users to visualize, allowing users to select appropriate crops. [Brief explanation of the drawings]
[0014] [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
[0015] 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.
[0016] First, the terms used in the following description will be explained.
[0017] 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).
[0018] 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.
[0019] 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.
[0020] 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.
[0021] 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."
[0022] [First embodiment]
[0023] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0024] 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.
[0025] 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).
[0026] 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.
[0027] 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.
[0028] 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.
[0029] 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.
[0030] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0031] 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.
[0032] 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.
[0033] 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.
[0034] 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."
[0035] The present invention relates to a system for acquiring past weather and soil information and predicting the optimum crops from that information. The system includes a process in which a server acquires weather and soil information, integrates and preprocesses the data, and then predicts the suitability of the crops using a trained prediction model.
[0036] The server first obtains historical weather information for the specified area. For example, it obtains information such as temperature, rainfall, wind speed, and humidity from a weather data provider through an HTTP request. Similarly, the server obtains information such as soil pH, soil moisture, and nutrient content from a soil data provider. These data are received in JSON format and converted into a Pandas data frame.
[0037] The server then integrates the weather and soil information and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[0038] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. For training, the data is split into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop yield and suitability.
[0039] When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability. New data could include current temperature, rainfall, soil pH, soil moisture, etc. The resulting prediction indicates how well a particular crop is suited to specific conditions.
[0040] The server sends the prediction results to the terminal, which visually displays them to the user. Based on this information, the user can select the most suitable crop and create a production plan. For example, if new data is entered for the Tokyo area: temperature 25°C, rainfall 120mm, soil pH 6.5, and soil moisture 20%, the system will suggest the most suitable crop (e.g., corn) based on this data.
[0041] In this way, the present invention provides a system that predicts the suitability of agricultural crops based on past weather and soil information, and provides useful information to farmers, thereby supporting efficient and effective agricultural management.
[0042] The processing flow will be explained below.
[0043] Step 1:
[0044] The server receives the local information and retrieves historical weather information for the specified area via the Internet, for example, using an API from a weather data provider to retrieve data such as temperature, precipitation, wind speed, and humidity.
[0045] Step 2:
[0046] The server also obtains soil information for the same region, such as soil pH, soil moisture, and nutrient content, from soil data providers via API.
[0047] Step 3:
[0048] The server converts the weather and soil information into a Pandas data frame, which facilitates subsequent data processing.
[0049] Step 4:
[0050] The server merges both data frames based on date, and this merged dataset contains weather and soil information for the date of each data point.
[0051] Step 5:
[0052] The server preprocesses the combined dataset, removing or imputing missing values and scaling and standardizing the data to prepare it for efficient training of machine learning models.
[0053] Step 6:
[0054] The server creates a random forest regression model, trains the model using the preprocessed dataset, splits the data into a training set and a test set, and fits the model on the training set.
[0055] Step 7:
[0056] The server receives new environmental data (e.g., temperature, rainfall, soil pH, soil humidity) as input. It uses the most recent data provided by the user.
[0057] Step 8:
[0058] The server uses a trained random forest regression model to make predictions based on new environmental data, predicting which crops are most suitable.
[0059] Step 9:
[0060] The server generates the predictions and formats the information about crop suitability, organizing the information in a format that is easy for users to understand.
[0061] Step 10:
[0062] The server sends the prediction results to the device, which receives the information and displays it on its user interface.
[0063] Step 11:
[0064] The device visually displays the prediction results to the user, for example displaying a specific message such as "The best crop for your area is corn."
[0065] Step 12:
[0066] The user selects the most suitable crops based on the information provided, and then sends the selection results to the server to finalize the production plan.
[0067] This allows users to efficiently and effectively select the best crops, improving agricultural profitability and sustainability.
[0068] Example 1
[0069] 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."
[0070] The problem that this invention aims to solve is to provide a system that uses past weather and soil information to predict the optimal crops for specific regions and conditions. Conventional methods rely heavily on manual data collection and experience, making it difficult to efficiently and accurately select crops. To solve this problem, a system that automates data integration and preprocessing and uses machine learning to improve prediction accuracy is essential.
[0071] 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.
[0072] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for converting the weather information and the soil information into a data structure, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, and means for transmitting the prediction results to an output device and visually displaying them, thereby enabling crop selection based on appropriate information and enabling farmers to create optimal production plans.
[0073] "Historical weather information" refers to meteorological data such as historical temperature, rainfall, wind speed, and humidity for a specific region or period.
[0074] "Soil information" refers to data on soil characteristics such as pH, soil moisture, and nutrient content in a particular area.
[0075] "Means for converting into data structure" refers to a method for converting the acquired meteorological and soil information into a format that can be processed by machine learning algorithms, such as a data frame or array.
[0076] "Integration and preprocessing methods" are techniques that integrate information obtained from multiple data sources, fill in missing values, and scale the data to prepare the machine learning model for optimal learning.
[0077] A "predictive model" is a model that uses trained machine learning algorithms to predict future crop suitability and yield based on new data.
[0078] "New environmental data" refers to data such as temperature, rainfall, soil pH, and soil moisture under specific current or future conditions.
[0079] An "output device" is a device such as a display, a mobile terminal, or a computer screen that provides the prediction results to a user.
[0080] The "visual display means" is an interface that presents the prediction results in a graph or text format in an easy-to-understand manner to the user.
[0081] A "random forest regression model" is a statistical method that uses a large number of decision trees to make predictions and averages the outputs of the individual models to make a final prediction.
[0082] This invention is a system for acquiring past meteorological and soil information and predicting optimal crops based on that information. This system is implemented in the following manner.
[0083] First, the server retrieves past weather information from a weather data provider via an HTTP request. Specific past weather information includes temperature, precipitation, wind speed, humidity, etc. The retrieved data is received in JSON format and converted into a data frame using the pandas library. Similarly, soil information is retrieved from a soil data provider. The soil information includes soil pH, soil moisture, nutrient content, etc., and is also received in JSON format and converted into a data frame.
[0084] The server then integrates and preprocesses the weather and soil information, merging them using dates as keys, removing or imputing missing values, and scaling and standardizing them using StandardScaler to prepare the data for efficient learning by machine learning algorithms.
[0085] The server then uses the preprocessed data to train a random forest regression model. This model takes historical weather and soil information as input and is used to predict crop suitability. Because the trained model predicts based on previous data, it can also be applied to new environmental data.
[0086] For example, suppose new environmental data is provided: temperature 25 degrees, rainfall 120 mm, soil pH 6.5, and soil moisture 20%. In this case, the server receives this new data as input and predicts the optimal crop (e.g., corn) using the trained model. An example of a specific prompt is, "Predict the optimal crop under the following new environmental data: temperature 25 degrees, rainfall 120 mm, soil pH 6.5, and soil moisture 20%."
[0087] The server sends the prediction results to the device, which then visually displays them to the user. The user can use this information to select the optimal crop and create a production plan. For example, if corn is predicted to be the best crop based on the above conditions, the user can plan to plant corn.
[0088] This system enables farmers to select appropriate crops based on past weather and soil information, supporting efficient and effective agricultural management.
[0089] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0090] Step 1: Get the data
[0091] The server retrieves historical weather information from a weather data provider. Specifically, the server sends an HTTP request to retrieve information such as temperature, precipitation, wind speed, and humidity. The data is returned in JSON format. For example, the following data is input:
[0092] json
[0093] {
[0094] "date": "2023-10-01",
[0095] "temperature": 22,
[0096] "rainfall": 100,
[0097] "wind_speed": 5,
[0098] "humidity": 70
[0099] }
[0100] The server converts this JSON data into a pandas dataframe, and the output is a formatted dataframe.
[0101] Step 2: Obtaining soil information
[0102] The server retrieves soil information from the soil data provider. Specifically, the server sends an HTTP request to retrieve information such as soil pH, soil moisture, and nutrient content. The data is returned in JSON format. For example, the following data is input:
[0103] json
[0104] {
[0105] "date": "2023-10-01",
[0106] "soil_ph": 6.5,
[0107] "soil_moisture": 15,
[0108] "nutrient_content": {
[0109] "nitrogen": 30,
[0110] "phosphorus": 20,
[0111] "potassium": 15
[0112] }
[0113] }
[0114] The server also converts this JSON data into a pandas dataframe, and the output is a formatted dataframe.
[0115] Step 3: Data integration and preprocessing
[0116] The weather and soil information acquired by the server is integrated. Specifically, the two are merged using the date as a key and missing values are forward imputed. The input is various formatted data frames. Missing values in the data frames are imputed using the fillna method. Next, the server scales and standardizes the data using StandardScaler. The output is the preprocessed integrated data.
[0117] Step 4: Training the model
[0118] The server trains a random forest regression model using the preprocessed data. First, the preprocessed data is divided into explanatory variables and target variables, and then split into a training set and a test set. The input is the preprocessed integrated data. The server uses RandomForestRegressor to train the model based on the training set. The output is a trained random forest regression model.
[0119] Step 5: Receiving new environmental data and making predictions
[0120] The server receives new environmental data and uses it to predict crop suitability. For example, the following new data is received as input:
[0121] Temperature: 25 degrees, rainfall: 120 mm, soil pH: 6.5, soil humidity: 20%
[0122] The server preprocesses the received data and inputs it into the trained model. The output is predicted crop suitability information. For example, "corn is suitable."
[0123] Step 6: View the results
[0124] The server sends the prediction results to the terminal, which receives them and displays them visually to the user. Specifically, the terminal displays the received prediction results in the form of a GUI or web app, providing the user with an easy-to-understand format. A message such as "Corn is optimal" is displayed on the output device. The user can then create a production plan based on this information.
[0125] (Application example 1)
[0126] 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."
[0127] The objective of this invention is to provide comprehensive risk management to farmers by integrating disaster risk prediction as a new function into a crop suitability prediction system based on past meteorological and soil information. This will make it easier for farmers to take advance measures against natural disasters and improve the stability of agricultural production.
[0128] 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.
[0129] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for receiving new environmental data as input and predicting disaster risk using the prediction model, and means for providing the prediction results to a user. This enables disaster risk prediction in addition to crop suitability prediction, allowing farmers to implement more appropriate production plans and advance measures.
[0130] "Historical weather information" refers to meteorological data such as historical temperature, rainfall, wind speed, and humidity for a particular area.
[0131] "Soil information" refers to data such as soil pH, humidity, and nutrient content in a particular area.
[0132] "Integration and preprocessing" refers to the process of bringing together meteorological and soil information, complementing incomplete data, and standardizing it.
[0133] "Predictive model" refers to a machine learning algorithm trained to predict a specific objective (e.g., crop suitability or disaster risk) using integrated and preprocessed data.
[0134] "New environmental data" refers to new data acquired in real time, such as current temperature, rainfall, soil pH, and soil moisture.
[0135] "Disaster risk" refers to the predicted likelihood of natural disasters such as floods or landslides based on specific environmental conditions.
[0136] "Means to provide to users" refers to a mechanism for visually displaying prediction results and allowing users to conveniently view the information.
[0137] The present invention describes a system for simultaneously predicting crop suitability and disaster risk. Detailed embodiments for implementing this system are described below.
[0138] This system consists of three main components: a server, a terminal, and a user. The server collects meteorological and soil information, integrates this data, and performs preprocessing. Specifically, data is collected from meteorological and soil data providers via HTTP requests using APIs. The data is in JSON format and converted into a data frame using the Python Pandas library.
[0139] The server then integrates the weather and soil information and performs a data cleansing process, merging the weather and soil information using date and time as keys, removing or filling in missing values, and scaling and standardizing the data to enable machine learning algorithms to learn more effectively.
[0140] Using the preprocessed data, the server trains a random forest regression model. In this model training process, the data is divided into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop suitability and disaster risk based on new environmental data.
[0141] When new environmental data is provided, the server receives this data as input and uses a random forest regression model to predict crop suitability and disaster risk. Specific data items include current temperature, rainfall, soil pH, and soil moisture. The prediction results are sent to the user's device and displayed visually.
[0142] Based on these predictions, users can select the most suitable crops, create production plans, and take precautions against natural disasters. For example, if new data for the Tokyo area is entered, such as a temperature of 25°C, rainfall of 120mm, soil pH of 6.5, and soil moisture of 20%, the system will use this information to evaluate the most suitable crop (such as corn) and disaster risk.
[0143] This will enable farmers to operate their farms efficiently and effectively, and also minimize the risks posed by natural disasters.
[0144] Examples of concrete examples and prompts
[0145] For example, consider the following input data:
[0146] Temperature: 25 degrees
[0147] Rainfall: 120mm
[0148] Soil pH: 6.5
[0149] Soil moisture: 20%
[0150] Wind speed: 3m / s
[0151] Example prompt for a generative AI model:
[0152] For the natural disaster prediction application, we have prepared the following new environmental data. We would like to predict the disaster risk level based on this data. The data is as follows:
[0153] Temperature: 25 degrees
[0154] Rainfall: 120mm
[0155] Soil pH: 6.5
[0156] Soil moisture: 20%
[0157] Wind speed: 3m / s
[0158] What is the predicted disaster risk level?
[0159] The above is a specific embodiment of the present invention. This system can provide significant benefits in both agriculture and disaster risk management.
[0160] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0161] Step 1:
[0162] The server retrieves past weather information. Specifically, it retrieves data such as past temperature, precipitation, wind speed, and humidity from a weather data provider via HTTP requests and receives this data in JSON format. The input is the specified region name, and the output is the retrieved weather data.
[0163] Step 2:
[0164] The server obtains soil information, specifically soil pH, moisture, nutrient content, and other data from a soil data provider via HTTP requests, also in JSON format. The input is the specified region name, and the output is the obtained soil data.
[0165] Step 3:
[0166] The server integrates and preprocesses the acquired meteorological and soil information. Specifically, it converts them into data frames using the Python Pandas library and merges these data frames using dates as keys. It also imputes and removes missing values and scales the data. The input is the acquired meteorological and soil data, and the output is the integrated and preprocessed data frame.
[0167] Step 4:
[0168] The server uses the preprocessed data to train a crop prediction model. Specifically, the server inputs the integrated and preprocessed data into a random forest regression model and trains the model based on a machine learning algorithm. The input is the integrated and preprocessed data frame, and the output is a trained random forest regression model.
[0169] Step 5:
[0170] The server receives new environmental data as input and predicts crop suitability using a predictive model. Specifically, it inputs new environmental data such as current temperature, rainfall, soil pH, and soil moisture, and makes predictions based on a trained random forest regression model. The input is the new environmental data, and the output is the predicted crop suitability.
[0171] Step 6:
[0172] The server receives new environmental data as input and uses a predictive model to predict disaster risk. Specifically, it uses the same new environmental data used to predict crop suitability and simultaneously predicts disaster risk. The input is the new environmental data, and the output is the disaster risk prediction result.
[0173] Step 7:
[0174] The server sends the prediction results to the terminal. Specifically, it sends the crop suitability prediction results and disaster risk prediction results to the terminal so that they can be visually provided to the user. The input is the prediction results, and the output is information displayed on the terminal in a format that can be viewed by the user.
[0175] Step 8:
[0176] Users select crops and make production plans based on the provided prediction results. In addition, they take necessary measures based on disaster risks. Specifically, they select the most suitable crops based on the information provided by the system and make preparations for natural disasters. The input is the prediction results provided by the server, and the output is the user's production plan and disaster prevention measures.
[0177] 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.
[0178] This invention adds an emotion engine that recognizes the user's emotions to a system that acquires past weather and soil information and predicts the optimum crops based on that information. In this system, the server acquires weather and soil information and predicts crop suitability using a prediction model, and also adjusts the way the information is presented based on the user's emotions.
[0179] The server first obtains historical weather information for the specified area via the Internet. For example, it uses APIs from weather data providers to obtain data such as temperature, rainfall, wind speed, and humidity. Similarly, the server obtains information such as soil pH, soil moisture, and nutrient content from soil data providers via APIs. These data are received in JSON format and converted into a Pandas data frame.
[0180] The server then integrates the weather and soil information and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[0181] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. For training, the data is split into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop yield and suitability.
[0182] When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability. New data might include current temperature, rainfall, soil pH, soil moisture, etc. This predicts how well a particular crop is suited to that region and conditions.
[0183] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, text input, etc. Based on this emotion data, the server adjusts the way the prediction results are presented. For example, if the user is feeling anxious, the server will display a message that gives a sense of security.
[0184] The device receives the prediction results and visually displays them to the user. The user interface is optimized based on the recognized emotions and designed to allow users to receive information more intuitively. For example, the emotion engine determines whether the user is interested in the message "The best crop for your area is corn." If so, the device provides more detailed information (e.g., cultivation methods, expected profits, etc.).
[0185] In this way, the present invention provides a system that supports more user-friendly and effective crop selection by taking into account the user's emotional state in addition to predictions based on past weather information and soil information.
[0186] The processing flow will be explained below.
[0187] Step 1:
[0188] The server retrieves historical weather information for the specified area by sending an HTTP request to the weather data provider's API to retrieve weather data such as temperature, precipitation, wind speed, and humidity.
[0189] Step 2:
[0190] The server retrieves soil information for the specified area by sending an HTTP request to the soil data provider's API to obtain data such as soil pH, soil moisture, and nutrient content.
[0191] Step 3:
[0192] The weather information and soil information acquired by the server are converted into Pandas data frames, and the data is organized.
[0193] Step 4:
[0194] The server combines the weather and soil information, merging both data frames using the date as the key, and removing or imputing missing values, if any.
[0195] Step 5:
[0196] The server preprocesses the aggregated data, specifically scaling and standardizing it to prepare it for efficient machine learning algorithms.
[0197] Step 6:
[0198] The server trains a random forest regression model using the preprocessed data, splits the data into a training set and a test set, and fits the model using the training set.
[0199] Step 7:
[0200] The server receives new environmental data as input: the user enters the latest information such as current temperature, rainfall, soil pH, and soil humidity.
[0201] Step 8:
[0202] The server uses the trained model to predict crop suitability based on new environmental data input.
[0203] Step 9:
[0204] The server uses an emotion engine to recognize the user's emotions. Specifically, it determines emotions from the user's facial expressions, voice, text input, etc., and analyzes the data.
[0205] Step 10:
[0206] The server generates predictions and adjusts the presentation of the results based on the user's emotions, for example adding encouraging messages or detailed explanations if the user is feeling anxious.
[0207] Step 11:
[0208] The server sends the final prediction results to the device, which receives this information and displays it to the user.
[0209] Step 12:
[0210] The device visually presents the received prediction results to the user, showing specific information such as "The best crop for your area is corn."
[0211] Step 13:
[0212] The user selects the most suitable crop based on the information presented, and then feeds the selection results back to the server while referring to the results of the emotion engine.
[0213] In this way, the present invention realizes a system that allows users to efficiently and effectively select the most suitable crops by predicting the suitability of crops based on past weather and soil information, and by providing information in a presentation method that takes into account the user's emotional state.
[0214] Example 2
[0215] 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."
[0216] Conventional crop forecasting systems can make relatively accurate predictions using past weather and soil information, but they do not provide information that takes into account the psychological state of the user. As a result, users may use the system with anxiety or doubts, which creates the problem of not being able to effectively support the selection of optimal crops.
[0217] 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.
[0218] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for recognizing a user's emotional state, means for adjusting a presentation method for the prediction result based on the emotional state, and means for providing the prediction result to the user, thereby enabling information provision that takes the user's emotional state into consideration.
[0219] "Past weather information" refers to data such as past temperature, rainfall, wind speed, and humidity in a specific area.
[0220] "Soil information" refers to data such as soil pH, soil moisture, and nutrient content in a particular area.
[0221] "Integration and preprocessing" refers to combining the acquired datasets and performing processes such as filling in missing values, scaling the data, and standardizing it.
[0222] "Predictive model" refers to a mathematical model that uses machine learning algorithms to predict crop yield and suitability.
[0223] "New environmental data" refers to the latest weather and soil data, such as current temperature, rainfall, soil pH, and soil moisture.
[0224] "Emotional state" refers to a psychological state assessed based on a user's facial expressions, voice, text input, etc.
[0225] "Adjusting the presentation method of prediction results based on the emotional state" refers to changing the format and content of the information provided based on the user's emotions.
[0226] This invention is a system in which a server acquires past weather and soil information and predicts crop suitability using a predictive model, and adds a function that recognizes the user's emotional state and adjusts the information presentation method. This system not only predicts crop suitability based on weather and soil information, but also provides a user-friendly experience by optimizing the information presentation method based on the user's emotions.
[0227] First, the server retrieves past weather information for the specified area via the Internet. For example, it uses the weather data provider's API to retrieve data such as temperature, precipitation, wind speed, and humidity. This data is generally provided in JSON format, so it is converted into a Pandas data frame.
[0228] Similarly, the server retrieves information such as soil pH, soil moisture, and nutrient content through the soil data provider's API. This data is also received in JSON format and converted into a Pandas data frame.
[0229] The server integrates the weather and soil information it has acquired and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[0230] Using the preprocessed data, the server creates a random forest regression model and trains the model. For training, the data is divided into a training set and a test set, and the model is fitted to the training set. This model is used to predict crop yield and suitability.
[0231] The server uses the trained model to predict crop suitability when new environmental data is received as input, such as current temperature, rainfall, soil pH, and soil moisture, allowing it to predict how well a particular crop will perform in that region and conditions.
[0232] Next, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, and text input. Based on this emotion data, the server adjusts how the prediction results are presented. For example, if the user is feeling anxious, it displays a message that provides reassurance.
[0233] The device receives the prediction results and visually displays them to the user. The user interface is optimized based on the recognized emotions and designed to allow users to receive information more intuitively. For example, the emotion engine determines whether the user is interested in the message "The best crop for your area is corn," and if so, provides more detailed information (e.g., cultivation methods, expected profits, etc.).
[0234] As a concrete example, suppose the data acquired by the server indicates that the average temperature in a certain region over the past year was 20°C, that rainfall tends to be high at the end of the year, and that the soil has a neutral pH and is rich in nutrients. Based on this data, the server uses a trained model to predict that "wheat is the crop best suited to that region." If the user becomes uneasy after seeing this information, the server will display a reassuring message such as "growing wheat is easy to care for and is expected to bring high profits."
[0235] An example of an input prompt for a generative AI model could be, "Please predict the best crops based on weather and soil information from the past year. Please also explain how to present the information while taking the user's emotions into consideration."
[0236] As described above, this system predicts crops based on past weather and soil information, and also takes into account the user's emotional state, thereby supporting more user-friendly and effective crop selection.
[0237] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0238] Step 1:
[0239] The server retrieves past weather information. Specifically, the server sends a request to the weather data provider's API endpoint and receives data such as temperature, precipitation, wind speed, and humidity in JSON format. The input is the specified region and acquisition period, and the output is JSON data containing past weather information. The received data is converted into a Pandas data frame. Specifically, the requests library is used to access the API and pd.json_normalize is used to convert it into a data frame.
[0240] Step 2:
[0241] The server obtains soil information. Specifically, the server sends a request to the soil data provider's API endpoint and receives data such as soil pH, soil moisture, and nutrient content in JSON format. The input is the specified region and acquisition period, and the output is JSON data containing the soil information. The received data is converted into a Pandas data frame. Specifically, as with weather information, the requests library is used to convert the data into a data frame using pd.json_normalize.
[0242] Step 3:
[0243] The server integrates and preprocesses the weather and soil information. Specifically, it merges the weather and soil information using the date as a key. The input is a data frame of weather information and a data frame of soil information, and the output is an integrated data frame. Missing values are deleted or imputed, and the data is scaled and standardized. Specifically, it merges using the Pandas merge function, processes missing values using the dropna and fillna functions, and standardizes the data using StandardScaler.
[0244] Step 4:
[0245] The server trains the predictive model. Specifically, it splits the preprocessed data into a training set and a test set, and creates and trains a random forest regression model. The input is the integrated and preprocessed data frame, and the output is the predictive model. Specifically, it splits the data using the train_test_split function, and trains the model using RandomForestRegressor.
[0246] Step 5:
[0247] The server receives new environmental data as input and makes predictions. Specifically, it preprocesses new data such as temperature, rainfall, soil pH, and soil moisture, and uses the trained model to predict crop suitability. The input is new environmental data, and the output is a predicted crop suitability. Specifically, it standardizes the new data and makes predictions using model.predict.
[0248] Step 6:
[0249] The server recognizes the user's emotional state. The emotion engine analyzes the user's facial expressions, voice, text input, etc. to determine the emotion. The input is data about the user's emotional state, and the output is the recognized emotion. Specifically, emotion analysis is performed using image recognition libraries and voice recognition libraries.
[0250] Step 7:
[0251] The server adjusts the presentation of the prediction result based on the user's emotional state. For example, if the user is feeling anxious, it generates a reassuring message. The input is the recognized emotion and the prediction result, and the output is the adjusted presentation method. Specifically, it uses a message template corresponding to a specific emotion to generate the optimal message.
[0252] Step 8:
[0253] The terminal visually displays the prediction results to the user. The user interface is optimized based on the recognized emotions, allowing the user to receive information intuitively. The input is the adjusted prediction results, and the output is a visual display. Specifically, the results are displayed in a dashboard format using a web front-end library.
[0254] The above is the specific processing flow of the program.
[0255] (Application example 2)
[0256] 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."
[0257] Conventional crop suitability prediction systems predict crop suitability based on meteorological and soil information, but are unable to adjust the way information is presented based on the user's emotions and interests. This has resulted in problems such as not being able to provide optimal information for the user and not improving the user experience. Furthermore, in sales promotion activities at physical stores, product information displayed in a way that reflects customer emotions has been insufficient, resulting in missed sales opportunities. The present invention aims to solve these problems.
[0258] 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 acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for providing the prediction results to a user, means for recognizing the user's emotions, means for adjusting the presentation method of the prediction results based on the recognized emotions, and means for the terminal to visually display the prediction results. This makes it possible to present information according to the user's emotions, thereby enabling effective information provision in sales promotion activities in physical stores.
[0259] definition statement
[0260] "Past weather information" refers to past weather data for a specified area, including information on temperature, rainfall, wind speed, humidity, and the like.
[0261] "Soil information" means data on the characteristics of soil in a specified area, including information such as soil pH, soil moisture, and nutrient content.
[0262] "Integration and preprocessing" refers to combining data from different sources and formatting them into a consistent format, including handling missing values and scaling and standardizing the data.
[0263] A "crop prediction model" is a machine learning model for predicting the suitability and yield of specific crops based on meteorological and soil information, and in this invention, a random forest regression model is used.
[0264] "New environmental data" refers to the latest environmental information, such as current temperature, rainfall, soil pH, and soil moisture, and this data is used to predict the suitability of agricultural crops.
[0265] The "prediction results" are information regarding the suitability of agricultural crops obtained using a prediction model, and are provided to the user.
[0266] The "means for providing to the user" refers to a means for visually displaying the prediction results processed by the server to the user or providing them in some other way.
[0267] "Means for recognizing user emotions" refers to technology for determining a user's emotional state using data such as the user's facial expressions, voice, and text input.
[0268] The "means for adjusting the presentation method" is a means for changing the display method and content of the prediction results based on the recognized user's emotions.
[0269] The "means for visually displaying by the terminal" refers to a means for visually displaying the prediction results to the user via a user interface, and includes devices such as smart glasses.
[0270] MODE FOR CARRYING OUT THE INVENTION
[0271] This invention is a system that predicts optimal crops and adjusts the method of providing information by taking into account past weather information, soil information, and user emotions. To realize this system, the following hardware and software are used.
[0272] Hardware Configuration
[0273] Server: Acquires data, processes it, trains models, recognizes emotions, and presents results.
[0274] Smart glasses: Capture the user's viewpoint and voice and display information.
[0275] Camera and microphone: Devices installed in smart glasses to collect the user's facial and voice data.
[0276] Software Configuration
[0277] OpenCV: An image processing library that performs facial recognition and facial expression analysis of users from camera images.
[0278] dlib: A library for facial recognition.
[0279] TENSORFLOW®: Used to implement deep learning models for recognizing emotions from a user's facial expressions.
[0280] Pandas: A data processing library for retrieving and preprocessing meteorological and soil information.
[0281] requests: An HTTP library for retrieving external data from APIs.
[0282] Scikit-learn: A machine learning library for creating crop suitability prediction models.
[0283] Program processing explanation
[0284] The server first obtains past weather information for the specified area via the Internet. Weather information includes temperature, rainfall, wind speed, humidity, etc. Then, it obtains soil information and collects data including soil pH, soil moisture, and nutrient content. This data is received in JSON format and converted into a Pandas data frame.
[0285] The server then integrates the weather and soil information and performs data preprocessing, merging the weather and soil information using dates as keys, removing or filling in missing values, and scaling and standardizing the data to enable efficient training by machine learning algorithms.
[0286] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability.
[0287] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, and text input. Based on this emotion data, the server adjusts how the prediction results are presented. For example, if the user shows interest, the server may provide detailed cultivation instructions and recipes for the crop in question in addition to the prediction results.
[0288] Information is visually displayed to users through the smart glasses, which makes it possible to provide effective information for sales promotion activities in brick-and-mortar stores.
[0289] Specific examples
[0290] For example, consider how a system can predict the suitability of tomatoes for a certain region and sell them in a physical store. When a user sees a tomato in the store, the smart glasses automatically recognize it, and the camera and microphone analyze the user's facial expressions and voice. The emotion engine recognizes the user's interests and anxieties, and if it determines that the user is interested, a message such as "Here are tips on how to grow this tomato and how to cultivate it" will appear on the smart glasses' display. Additional information such as detailed cultivation instructions and recipe links will also be provided.
[0291] Prompt Sentence Examples
[0292] Develop a smart glasses application for the following purpose: When a user looks at vegetables or fruits for sale in a store, it needs to have the ability to display detailed information about the product. It also needs to recognize the customer's emotions and display appropriate information. Generate the code in Python.
[0293] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0294] Program processing steps
[0295] Step 1:
[0296] The server retrieves past weather information for a specified region via the Internet. Region information is given as input, and based on that, data such as temperature, precipitation, wind speed, and humidity is retrieved from a weather data provider using an API. The retrieved data is received in JSON format and converted into a Pandas data frame. This makes it easy to manage past weather information in a unified format.
[0297] Input: Region information
[0298] Data processing: Using API to retrieve data from weather data providers and convert the JSON format into a Pandas data frame.
[0299] Output: Historical weather information data frame
[0300] Step 2:
[0301] The server similarly obtains soil information. Regional information is given as input, and based on that, information such as soil pH, soil moisture, and nutrient content is obtained from the soil data provider via API. The obtained data is also received in JSON format and converted into a Pandas data frame. This allows soil properties to be managed in a unified format.
[0302] Input: Region information
[0303] Data processing: Retrieve data from soil data providers using APIs and convert the JSON format into a Pandas data frame.
[0304] Output: Soil information data frame
[0305] Step 3:
[0306] The server integrates and preprocesses weather and soil information. It receives weather and soil data frames as input and merges them using dates as keys. It then removes or imputes missing values and scales and standardizes the data. This results in preprocessed data that machine learning algorithms can use to learn efficiently.
[0307] Input: Meteorological information data frame, Soil information data frame
[0308] Data manipulation: merging data frames, removing or imputing missing values, scaling and standardizing data
[0309] Output: Preprocessed data frame
[0310] Step 4:
[0311] The server trains a crop prediction model using the preprocessed data. The preprocessed data frame is given as input and a random forest regression model is trained using this data. Specifically, the data is split into a training set and a test set, and the model is fitted to the training set. This results in a model that predicts crop yield and suitability.
[0312] Input: Preprocessed data frame
[0313] Data computation: data partitioning, model training
[0314] Output: A crop prediction model
[0315] Step 5:
[0316] The server receives new environmental data as input and uses the trained model to predict crop suitability. It receives input from the latest environmental information, such as current temperature, rainfall, soil pH, and soil moisture, and uses this data to make predictions. This results in a prediction of how well a particular crop is suited to that region and conditions.
[0317] Input: Current environment data
[0318] Data Computing: Predicting with Trained Models
[0319] Output: Crop suitability prediction results
[0320] Step 6:
[0321] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine analyzes the user's facial expressions, voice, text input, etc. as input to determine the user's emotional state. This allows the server to understand the user's emotional state.
[0322] Input: User facial expressions, voice, and text input
[0323] Data Computation: Emotional Data Analysis
[0324] Output: User's emotional state
[0325] Step 7:
[0326] The server adjusts the presentation of the prediction results based on the recognized emotion. It receives the prediction results and the user's emotional state as input and generates an optimal message or additional information based on the emotion. For example, if the user is interested, it can provide detailed cultivation instructions or recipe information.
[0327] Input: Prediction result, user's emotional state
[0328] Data Computation: Message Generation Based on User Emotions
[0329] Output: How to present the adjusted prediction results
[0330] Step 8:
[0331] The device (smart glasses) visually displays the adjusted prediction results sent from the server. Specifically, it displays detailed information about the crop the user is looking at, cultivation methods, recipe links, etc. This allows the user to receive information intuitively.
[0332] Input: Adjusted forecast results
[0333] Data calculation: Information displayed via user interface
[0334] Output: Visually displayed prediction results and additional information
[0335] 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.
[0336] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (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.
[0337] 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.
[0338] [Second embodiment]
[0339] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0340] 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.
[0341] 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).
[0342] 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.
[0343] 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.
[0344] 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).
[0345] 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. 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.
[0346] 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.
[0347] 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.
[0348] 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.
[0349] 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.
[0350] 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."
[0351] The present invention relates to a system for acquiring past weather and soil information and predicting the optimum crops from that information. The system includes a process in which a server acquires weather and soil information, integrates and preprocesses the data, and then predicts the suitability of the crops using a trained prediction model.
[0352] The server first obtains historical weather information for the specified area. For example, it obtains information such as temperature, rainfall, wind speed, and humidity from a weather data provider through an HTTP request. Similarly, the server obtains information such as soil pH, soil moisture, and nutrient content from a soil data provider. These data are received in JSON format and converted into a Pandas data frame.
[0353] The server then integrates the weather and soil information and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[0354] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. For training, the data is split into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop yield and suitability.
[0355] When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability. New data could include current temperature, rainfall, soil pH, soil moisture, etc. The resulting prediction indicates how well a particular crop is suited to specific conditions.
[0356] The server sends the prediction results to the terminal, which visually displays them to the user. Based on this information, the user can select the most suitable crop and create a production plan. For example, if new data is entered for the Tokyo area: temperature 25°C, rainfall 120mm, soil pH 6.5, and soil moisture 20%, the system will suggest the most suitable crop (e.g., corn) based on this data.
[0357] In this way, the present invention provides a system that predicts the suitability of agricultural crops based on past weather and soil information, and provides useful information to farmers, thereby supporting efficient and effective agricultural management.
[0358] The processing flow will be explained below.
[0359] Step 1:
[0360] The server receives the local information and retrieves historical weather information for the specified area via the Internet, for example, using an API from a weather data provider to retrieve data such as temperature, precipitation, wind speed, and humidity.
[0361] Step 2:
[0362] The server also obtains soil information for the same region, such as soil pH, soil moisture, and nutrient content, from soil data providers via API.
[0363] Step 3:
[0364] The server converts the weather and soil information into a Pandas data frame, which facilitates subsequent data processing.
[0365] Step 4:
[0366] The server merges both data frames based on date, and this merged dataset contains weather and soil information for the date of each data point.
[0367] Step 5:
[0368] The server preprocesses the combined dataset, removing or imputing missing values and scaling and standardizing the data to prepare it for efficient training of machine learning models.
[0369] Step 6:
[0370] The server creates a random forest regression model, trains the model using the preprocessed dataset, splits the data into a training set and a test set, and fits the model on the training set.
[0371] Step 7:
[0372] The server receives new environmental data (e.g., temperature, rainfall, soil pH, soil humidity) as input. It uses the most recent data provided by the user.
[0373] Step 8:
[0374] The server uses a trained random forest regression model to make predictions based on new environmental data, predicting which crops are most suitable.
[0375] Step 9:
[0376] The server generates the predictions and formats the information about crop suitability, organizing the information in a format that is easy for users to understand.
[0377] Step 10:
[0378] The server sends the prediction results to the device, which receives the information and displays it on its user interface.
[0379] Step 11:
[0380] The device visually displays the prediction results to the user, for example displaying a specific message such as "The best crop for your area is corn."
[0381] Step 12:
[0382] The user selects the most suitable crops based on the information provided, and then sends the selection results to the server to finalize the production plan.
[0383] This allows users to efficiently and effectively select the best crops, improving agricultural profitability and sustainability.
[0384] Example 1
[0385] 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."
[0386] The problem that this invention aims to solve is to provide a system that uses past weather and soil information to predict the optimal crops for specific regions and conditions. Conventional methods rely heavily on manual data collection and experience, making it difficult to efficiently and accurately select crops. To solve this problem, a system that automates data integration and preprocessing and uses machine learning to improve prediction accuracy is essential.
[0387] 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.
[0388] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for converting the weather information and the soil information into a data structure, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, and means for transmitting the prediction results to an output device and visually displaying them, thereby enabling crop selection based on appropriate information and enabling farmers to create optimal production plans.
[0389] "Historical weather information" refers to meteorological data such as historical temperature, rainfall, wind speed, and humidity for a specific region or period.
[0390] "Soil information" refers to data on soil characteristics such as pH, soil moisture, and nutrient content in a particular area.
[0391] "Means for converting into data structure" refers to a method for converting the acquired meteorological and soil information into a format that can be processed by machine learning algorithms, such as a data frame or array.
[0392] "Integration and preprocessing methods" are techniques that integrate information obtained from multiple data sources, fill in missing values, and scale the data to prepare the machine learning model for optimal learning.
[0393] A "predictive model" is a model that uses trained machine learning algorithms to predict future crop suitability and yield based on new data.
[0394] "New environmental data" refers to data such as temperature, rainfall, soil pH, and soil moisture under specific current or future conditions.
[0395] An "output device" is a device such as a display, a mobile terminal, or a computer screen that provides the prediction results to a user.
[0396] The "visual display means" is an interface that presents the prediction results in a graph or text format in an easy-to-understand manner to the user.
[0397] A "random forest regression model" is a statistical method that uses a large number of decision trees to make predictions and averages the outputs of the individual models to make a final prediction.
[0398] This invention is a system for acquiring past meteorological and soil information and predicting optimal crops based on that information. This system is implemented in the following manner.
[0399] First, the server retrieves past weather information from a weather data provider via an HTTP request. Specific past weather information includes temperature, precipitation, wind speed, humidity, etc. The retrieved data is received in JSON format and converted into a data frame using the pandas library. Similarly, soil information is retrieved from a soil data provider. The soil information includes soil pH, soil moisture, nutrient content, etc., and is also received in JSON format and converted into a data frame.
[0400] The server then integrates and preprocesses the weather and soil information, merging them using dates as keys, removing or imputing missing values, and scaling and standardizing them using StandardScaler to prepare the data for efficient learning by machine learning algorithms.
[0401] The server then uses the preprocessed data to train a random forest regression model. This model takes historical weather and soil information as input and is used to predict crop suitability. Because the trained model predicts based on previous data, it can also be applied to new environmental data.
[0402] For example, suppose new environmental data is provided: temperature 25 degrees, rainfall 120 mm, soil pH 6.5, and soil moisture 20%. In this case, the server receives this new data as input and predicts the optimal crop (e.g., corn) using the trained model. An example of a specific prompt is, "Predict the optimal crop under the following new environmental data: temperature 25 degrees, rainfall 120 mm, soil pH 6.5, and soil moisture 20%."
[0403] The server sends the prediction results to the device, which then visually displays them to the user. The user can use this information to select the optimal crop and create a production plan. For example, if corn is predicted to be the best crop based on the above conditions, the user can plan to plant corn.
[0404] This system enables farmers to select appropriate crops based on past weather and soil information, supporting efficient and effective agricultural management.
[0405] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0406] Step 1: Get the data
[0407] The server retrieves historical weather information from a weather data provider. Specifically, the server sends an HTTP request to retrieve information such as temperature, precipitation, wind speed, and humidity. The data is returned in JSON format. For example, the following data is input:
[0408] json
[0409] {
[0410] "date": "2023-10-01",
[0411] "temperature": 22,
[0412] "rainfall": 100,
[0413] "wind_speed": 5,
[0414] "humidity": 70
[0415] }
[0416] The server converts this JSON data into a pandas dataframe, and the output is a formatted dataframe.
[0417] Step 2: Obtaining soil information
[0418] The server retrieves soil information from the soil data provider. Specifically, the server sends an HTTP request to retrieve information such as soil pH, soil moisture, and nutrient content. The data is returned in JSON format. For example, the following data is input:
[0419] json
[0420] {
[0421] "date": "2023-10-01",
[0422] "soil_ph": 6.5,
[0423] "soil_moisture": 15,
[0424] "nutrient_content": {
[0425] "nitrogen": 30,
[0426] "phosphorus": 20,
[0427] "potassium": 15
[0428] }
[0429] }
[0430] The server also converts this JSON data into a pandas dataframe, and the output is a formatted dataframe.
[0431] Step 3: Data integration and preprocessing
[0432] The weather and soil information acquired by the server is integrated. Specifically, the two are merged using the date as a key and missing values are forward imputed. The input is various formatted data frames. Missing values in the data frames are imputed using the fillna method. Next, the server scales and standardizes the data using StandardScaler. The output is the preprocessed integrated data.
[0433] Step 4: Training the model
[0434] The server trains a random forest regression model using the preprocessed data. First, the preprocessed data is divided into explanatory variables and target variables, and then split into a training set and a test set. The input is the preprocessed integrated data. The server uses RandomForestRegressor to train the model based on the training set. The output is a trained random forest regression model.
[0435] Step 5: Receiving new environmental data and making predictions
[0436] The server receives new environmental data and uses it to predict crop suitability. For example, the following new data is received as input:
[0437] Temperature: 25 degrees, rainfall: 120 mm, soil pH: 6.5, soil humidity: 20%
[0438] The server preprocesses the received data and inputs it into the trained model. The output is predicted crop suitability information. For example, "corn is suitable."
[0439] Step 6: View the results
[0440] The server sends the prediction results to the terminal, which receives them and displays them visually to the user. Specifically, the terminal displays the received prediction results in the form of a GUI or web app, providing the user with an easy-to-understand format. A message such as "Corn is optimal" is displayed on the output device. The user can then create a production plan based on this information.
[0441] (Application example 1)
[0442] 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."
[0443] The objective of this invention is to provide comprehensive risk management to farmers by integrating disaster risk prediction as a new function into a crop suitability prediction system based on past meteorological and soil information. This will make it easier for farmers to take advance measures against natural disasters and improve the stability of agricultural production.
[0444] 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.
[0445] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for receiving new environmental data as input and predicting disaster risk using the prediction model, and means for providing the prediction results to a user. This enables disaster risk prediction in addition to crop suitability prediction, allowing farmers to implement more appropriate production plans and advance measures.
[0446] "Historical weather information" refers to meteorological data such as historical temperature, rainfall, wind speed, and humidity for a particular area.
[0447] "Soil information" refers to data such as soil pH, humidity, and nutrient content in a particular area.
[0448] "Integration and preprocessing" refers to the process of bringing together meteorological and soil information, complementing incomplete data, and standardizing it.
[0449] "Predictive model" refers to a machine learning algorithm trained to predict a specific objective (e.g., crop suitability or disaster risk) using integrated and preprocessed data.
[0450] "New environmental data" refers to new data acquired in real time, such as current temperature, rainfall, soil pH, and soil moisture.
[0451] "Disaster risk" refers to the predicted likelihood of natural disasters such as floods or landslides based on specific environmental conditions.
[0452] "Means to provide to users" refers to a mechanism for visually displaying prediction results and allowing users to conveniently view the information.
[0453] The present invention describes a system for simultaneously predicting crop suitability and disaster risk. Detailed embodiments for implementing this system are described below.
[0454] This system consists of three main components: a server, a terminal, and a user. The server collects meteorological and soil information, integrates this data, and performs preprocessing. Specifically, data is collected from meteorological and soil data providers via HTTP requests using APIs. The data is in JSON format and converted into a data frame using the Python Pandas library.
[0455] The server then integrates the weather and soil information and performs a data cleansing process, merging the weather and soil information using date and time as keys, removing or filling in missing values, and scaling and standardizing the data to enable machine learning algorithms to learn more effectively.
[0456] Using the preprocessed data, the server trains a random forest regression model. In this model training process, the data is divided into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop suitability and disaster risk based on new environmental data.
[0457] When new environmental data is provided, the server receives this data as input and uses a random forest regression model to predict crop suitability and disaster risk. Specific data items include current temperature, rainfall, soil pH, and soil moisture. The prediction results are sent to the user's device and displayed visually.
[0458] Based on these predictions, users can select the most suitable crops, create production plans, and take precautions against natural disasters. For example, if new data for the Tokyo area is entered, such as a temperature of 25°C, rainfall of 120mm, soil pH of 6.5, and soil moisture of 20%, the system will use this information to evaluate the most suitable crop (such as corn) and disaster risk.
[0459] This will enable farmers to operate their farms efficiently and effectively, and also minimize the risks posed by natural disasters.
[0460] Examples of concrete examples and prompts
[0461] For example, consider the following input data:
[0462] Temperature: 25 degrees
[0463] Rainfall: 120mm
[0464] Soil pH: 6.5
[0465] Soil moisture: 20%
[0466] Wind speed: 3m / s
[0467] Example prompt for a generative AI model:
[0468] For the natural disaster prediction application, we have prepared the following new environmental data. We would like to predict the disaster risk level based on this data. The data is as follows:
[0469] Temperature: 25 degrees
[0470] Rainfall: 120mm
[0471] Soil pH: 6.5
[0472] Soil moisture: 20%
[0473] Wind speed: 3m / s
[0474] What is the predicted disaster risk level?
[0475] The above is a specific embodiment of the present invention. This system can provide significant benefits in both agriculture and disaster risk management.
[0476] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0477] Step 1:
[0478] The server retrieves past weather information. Specifically, it retrieves data such as past temperature, precipitation, wind speed, and humidity from a weather data provider via HTTP requests and receives this data in JSON format. The input is the specified region name, and the output is the retrieved weather data.
[0479] Step 2:
[0480] The server obtains soil information, specifically soil pH, moisture, nutrient content, and other data from a soil data provider via HTTP requests, also in JSON format. The input is the specified region name, and the output is the obtained soil data.
[0481] Step 3:
[0482] The server integrates and preprocesses the acquired meteorological and soil information. Specifically, it converts them into data frames using the Python Pandas library and merges these data frames using dates as keys. It also imputes and removes missing values and scales the data. The input is the acquired meteorological and soil data, and the output is the integrated and preprocessed data frame.
[0483] Step 4:
[0484] The server uses the preprocessed data to train a crop prediction model. Specifically, the server inputs the integrated and preprocessed data into a random forest regression model and trains the model based on a machine learning algorithm. The input is the integrated and preprocessed data frame, and the output is a trained random forest regression model.
[0485] Step 5:
[0486] The server receives new environmental data as input and predicts crop suitability using a predictive model. Specifically, it inputs new environmental data such as current temperature, rainfall, soil pH, and soil moisture, and makes predictions based on a trained random forest regression model. The input is the new environmental data, and the output is the predicted crop suitability.
[0487] Step 6:
[0488] The server receives new environmental data as input and uses a predictive model to predict disaster risk. Specifically, it uses the same new environmental data used to predict crop suitability and simultaneously predicts disaster risk. The input is the new environmental data, and the output is the disaster risk prediction result.
[0489] Step 7:
[0490] The server sends the prediction results to the terminal. Specifically, it sends the crop suitability prediction results and disaster risk prediction results to the terminal so that they can be visually provided to the user. The input is the prediction results, and the output is information displayed on the terminal in a format that can be viewed by the user.
[0491] Step 8:
[0492] Users select crops and make production plans based on the provided prediction results. In addition, they take necessary measures based on disaster risks. Specifically, they select the most suitable crops based on the information provided by the system and make preparations for natural disasters. The input is the prediction results provided by the server, and the output is the user's production plan and disaster prevention measures.
[0493] 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.
[0494] This invention adds an emotion engine that recognizes the user's emotions to a system that acquires past weather and soil information and predicts the optimum crops based on that information. In this system, the server acquires weather and soil information and predicts crop suitability using a prediction model, and also adjusts the way the information is presented based on the user's emotions.
[0495] The server first obtains historical weather information for the specified area via the Internet. For example, it uses APIs from weather data providers to obtain data such as temperature, rainfall, wind speed, and humidity. Similarly, the server obtains information such as soil pH, soil moisture, and nutrient content from soil data providers via APIs. These data are received in JSON format and converted into a Pandas data frame.
[0496] The server then integrates the weather and soil information and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[0497] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. For training, the data is split into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop yield and suitability.
[0498] When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability. New data might include current temperature, rainfall, soil pH, soil moisture, etc. This predicts how well a particular crop is suited to that region and conditions.
[0499] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, text input, etc. Based on this emotion data, the server adjusts the way the prediction results are presented. For example, if the user is feeling anxious, the server will display a message that gives a sense of security.
[0500] The device receives the prediction results and visually displays them to the user. The user interface is optimized based on the recognized emotions and designed to allow users to receive information more intuitively. For example, the emotion engine determines whether the user is interested in the message "The best crop for your area is corn." If so, the device provides more detailed information (e.g., cultivation methods, expected profits, etc.).
[0501] In this way, the present invention provides a system that supports more user-friendly and effective crop selection by taking into account the user's emotional state in addition to predictions based on past weather information and soil information.
[0502] The processing flow will be explained below.
[0503] Step 1:
[0504] The server retrieves historical weather information for the specified area by sending an HTTP request to the weather data provider's API to retrieve weather data such as temperature, precipitation, wind speed, and humidity.
[0505] Step 2:
[0506] The server retrieves soil information for the specified area by sending an HTTP request to the soil data provider's API to obtain data such as soil pH, soil moisture, and nutrient content.
[0507] Step 3:
[0508] The weather information and soil information acquired by the server are converted into Pandas data frames, and the data is organized.
[0509] Step 4:
[0510] The server combines the weather and soil information, merging both data frames using the date as the key, and removing or imputing missing values, if any.
[0511] Step 5:
[0512] The server preprocesses the aggregated data, specifically scaling and standardizing it to prepare it for efficient machine learning algorithms.
[0513] Step 6:
[0514] The server trains a random forest regression model using the preprocessed data, splits the data into a training set and a test set, and fits the model using the training set.
[0515] Step 7:
[0516] The server receives new environmental data as input: the user enters the latest information such as current temperature, rainfall, soil pH, and soil humidity.
[0517] Step 8:
[0518] The server uses the trained model to predict crop suitability based on new environmental data input.
[0519] Step 9:
[0520] The server uses an emotion engine to recognize the user's emotions. Specifically, it determines emotions from the user's facial expressions, voice, text input, etc., and analyzes the data.
[0521] Step 10:
[0522] The server generates predictions and adjusts the presentation of the results based on the user's emotions, for example adding encouraging messages or detailed explanations if the user is feeling anxious.
[0523] Step 11:
[0524] The server sends the final prediction results to the device, which receives this information and displays it to the user.
[0525] Step 12:
[0526] The device visually presents the received prediction results to the user, showing specific information such as "The best crop for your area is corn."
[0527] Step 13:
[0528] The user selects the most suitable crop based on the information presented, and then feeds the selection results back to the server while referring to the results of the emotion engine.
[0529] In this way, the present invention realizes a system that allows users to efficiently and effectively select the most suitable crops by predicting the suitability of crops based on past weather and soil information, and by providing information in a presentation method that takes into account the user's emotional state.
[0530] Example 2
[0531] 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."
[0532] Conventional crop forecasting systems can make relatively accurate predictions using past weather and soil information, but they do not provide information that takes into account the psychological state of the user. As a result, users may use the system with anxiety or doubts, which creates the problem of not being able to effectively support the selection of optimal crops.
[0533] 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.
[0534] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for recognizing a user's emotional state, means for adjusting a presentation method for the prediction result based on the emotional state, and means for providing the prediction result to the user, thereby enabling information provision that takes the user's emotional state into consideration.
[0535] "Past weather information" refers to data such as past temperature, rainfall, wind speed, and humidity in a specific area.
[0536] "Soil information" refers to data such as soil pH, soil moisture, and nutrient content in a particular area.
[0537] "Integration and preprocessing" refers to combining the acquired datasets and performing processes such as filling in missing values, scaling the data, and standardizing it.
[0538] "Predictive model" refers to a mathematical model that uses machine learning algorithms to predict crop yield and suitability.
[0539] "New environmental data" refers to the latest weather and soil data, such as current temperature, rainfall, soil pH, and soil moisture.
[0540] "Emotional state" refers to a psychological state assessed based on a user's facial expressions, voice, text input, etc.
[0541] "Adjusting the presentation method of prediction results based on the emotional state" refers to changing the format and content of the information provided based on the user's emotions.
[0542] This invention is a system in which a server acquires past weather and soil information and predicts crop suitability using a predictive model, and adds a function that recognizes the user's emotional state and adjusts the information presentation method. This system not only predicts crop suitability based on weather and soil information, but also provides a user-friendly experience by optimizing the information presentation method based on the user's emotions.
[0543] First, the server retrieves past weather information for the specified area via the Internet. For example, it uses the weather data provider's API to retrieve data such as temperature, precipitation, wind speed, and humidity. This data is generally provided in JSON format, so it is converted into a Pandas data frame.
[0544] Similarly, the server retrieves information such as soil pH, soil moisture, and nutrient content through the soil data provider's API. This data is also received in JSON format and converted into a Pandas data frame.
[0545] The server integrates the weather and soil information it has acquired and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[0546] Using the preprocessed data, the server creates a random forest regression model and trains the model. For training, the data is divided into a training set and a test set, and the model is fitted to the training set. This model is used to predict crop yield and suitability.
[0547] The server uses the trained model to predict crop suitability when new environmental data is received as input, such as current temperature, rainfall, soil pH, and soil moisture, allowing it to predict how well a particular crop will perform in that region and conditions.
[0548] Next, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, and text input. Based on this emotion data, the server adjusts how the prediction results are presented. For example, if the user is feeling anxious, it displays a message that provides reassurance.
[0549] The device receives the prediction results and visually displays them to the user. The user interface is optimized based on the recognized emotions and designed to allow users to receive information more intuitively. For example, the emotion engine determines whether the user is interested in the message "The best crop for your area is corn," and if so, provides more detailed information (e.g., cultivation methods, expected profits, etc.).
[0550] As a concrete example, suppose the data acquired by the server indicates that the average temperature in a certain region over the past year was 20°C, that rainfall tends to be high at the end of the year, and that the soil has a neutral pH and is rich in nutrients. Based on this data, the server uses a trained model to predict that "wheat is the crop best suited to that region." If the user becomes uneasy after seeing this information, the server will display a reassuring message such as "growing wheat is easy to care for and is expected to bring high profits."
[0551] An example of an input prompt for a generative AI model could be, "Please predict the best crops based on weather and soil information from the past year. Please also explain how to present the information while taking the user's emotions into consideration."
[0552] As described above, this system predicts crops based on past weather and soil information, and also takes into account the user's emotional state, thereby supporting more user-friendly and effective crop selection.
[0553] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0554] Step 1:
[0555] The server retrieves past weather information. Specifically, the server sends a request to the weather data provider's API endpoint and receives data such as temperature, precipitation, wind speed, and humidity in JSON format. The input is the specified region and acquisition period, and the output is JSON data containing past weather information. The received data is converted into a Pandas data frame. Specifically, the requests library is used to access the API and pd.json_normalize is used to convert it into a data frame.
[0556] Step 2:
[0557] The server obtains soil information. Specifically, the server sends a request to the soil data provider's API endpoint and receives data such as soil pH, soil moisture, and nutrient content in JSON format. The input is the specified region and acquisition period, and the output is JSON data containing the soil information. The received data is converted into a Pandas data frame. Specifically, as with weather information, the requests library is used to convert the data into a data frame using pd.json_normalize.
[0558] Step 3:
[0559] The server integrates and preprocesses the weather and soil information. Specifically, it merges the weather and soil information using the date as a key. The input is a data frame of weather information and a data frame of soil information, and the output is an integrated data frame. Missing values are deleted or imputed, and the data is scaled and standardized. Specifically, it merges using the Pandas merge function, processes missing values using the dropna and fillna functions, and standardizes the data using StandardScaler.
[0560] Step 4:
[0561] The server trains the predictive model. Specifically, it splits the preprocessed data into a training set and a test set, and creates and trains a random forest regression model. The input is the integrated and preprocessed data frame, and the output is the predictive model. Specifically, it splits the data using the train_test_split function, and trains the model using RandomForestRegressor.
[0562] Step 5:
[0563] The server receives new environmental data as input and makes predictions. Specifically, it preprocesses new data such as temperature, rainfall, soil pH, and soil moisture, and uses the trained model to predict crop suitability. The input is new environmental data, and the output is a predicted crop suitability. Specifically, it standardizes the new data and makes predictions using model.predict.
[0564] Step 6:
[0565] The server recognizes the user's emotional state. The emotion engine analyzes the user's facial expressions, voice, text input, etc. to determine the emotion. The input is data about the user's emotional state, and the output is the recognized emotion. Specifically, emotion analysis is performed using image recognition libraries and voice recognition libraries.
[0566] Step 7:
[0567] The server adjusts the presentation of the prediction result based on the user's emotional state. For example, if the user is feeling anxious, it generates a reassuring message. The input is the recognized emotion and the prediction result, and the output is the adjusted presentation method. Specifically, it uses a message template corresponding to a specific emotion to generate the optimal message.
[0568] Step 8:
[0569] The terminal visually displays the prediction results to the user. The user interface is optimized based on the recognized emotions, allowing the user to receive information intuitively. The input is the adjusted prediction results, and the output is a visual display. Specifically, the results are displayed in a dashboard format using a web front-end library.
[0570] The above is the specific processing flow of the program.
[0571] (Application example 2)
[0572] 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."
[0573] Conventional crop suitability prediction systems predict crop suitability based on meteorological and soil information, but are unable to adjust the way information is presented based on the user's emotions and interests. This has resulted in problems such as not being able to provide optimal information for the user and not improving the user experience. Furthermore, in sales promotion activities at physical stores, product information displayed in a way that reflects customer emotions has been insufficient, resulting in missed sales opportunities. The present invention aims to solve these problems.
[0574] 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 acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for providing the prediction results to a user, means for recognizing the user's emotions, means for adjusting the presentation method of the prediction results based on the recognized emotions, and means for the terminal to visually display the prediction results. This makes it possible to present information according to the user's emotions, thereby enabling effective information provision in sales promotion activities in physical stores.
[0575] definition statement
[0576] "Past weather information" refers to past weather data for a specified area, including information on temperature, rainfall, wind speed, humidity, and the like.
[0577] "Soil information" means data on the characteristics of soil in a specified area, including information such as soil pH, soil moisture, and nutrient content.
[0578] "Integration and preprocessing" refers to combining data from different sources and formatting them into a consistent format, including handling missing values and scaling and standardizing the data.
[0579] A "crop prediction model" is a machine learning model for predicting the suitability and yield of specific crops based on meteorological and soil information, and in this invention, a random forest regression model is used.
[0580] "New environmental data" refers to the latest environmental information, such as current temperature, rainfall, soil pH, and soil moisture, and this data is used to predict the suitability of agricultural crops.
[0581] The "prediction results" are information regarding the suitability of agricultural crops obtained using a prediction model, and are provided to the user.
[0582] The "means for providing to the user" refers to a means for visually displaying the prediction results processed by the server to the user or providing them in some other way.
[0583] "Means for recognizing user emotions" refers to technology for determining a user's emotional state using data such as the user's facial expressions, voice, and text input.
[0584] The "means for adjusting the presentation method" is a means for changing the display method and content of the prediction results based on the recognized user's emotions.
[0585] The "means for visually displaying by the terminal" refers to a means for visually displaying the prediction results to the user via a user interface, and includes devices such as smart glasses.
[0586] MODE FOR CARRYING OUT THE INVENTION
[0587] This invention is a system that predicts optimal crops and adjusts the method of providing information by taking into account past weather information, soil information, and user emotions. To realize this system, the following hardware and software are used.
[0588] Hardware Configuration
[0589] Server: Acquires data, processes it, trains models, recognizes emotions, and presents results.
[0590] Smart glasses: Capture the user's viewpoint and voice and display information.
[0591] Camera and microphone: Devices installed in smart glasses to collect the user's facial and voice data.
[0592] Software Configuration
[0593] OpenCV: An image processing library that performs facial recognition and facial expression analysis of users from camera images.
[0594] dlib: A library for facial recognition.
[0595] TensorFlow: Used to run a deep learning model for recognizing emotions from a user's facial expressions.
[0596] Pandas: A data processing library for retrieving and preprocessing meteorological and soil information.
[0597] requests: An HTTP library for retrieving external data from APIs.
[0598] Scikit-learn: A machine learning library for creating crop suitability prediction models.
[0599] Program processing explanation
[0600] The server first obtains past weather information for the specified area via the Internet. Weather information includes temperature, rainfall, wind speed, humidity, etc. Then, it obtains soil information and collects data including soil pH, soil moisture, and nutrient content. This data is received in JSON format and converted into a Pandas data frame.
[0601] The server then integrates the weather and soil information and performs data preprocessing, merging the weather and soil information using dates as keys, removing or filling in missing values, and scaling and standardizing the data to enable efficient training by machine learning algorithms.
[0602] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability.
[0603] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, and text input. Based on this emotion data, the server adjusts how the prediction results are presented. For example, if the user shows interest, the server may provide detailed cultivation instructions and recipes for the crop in question in addition to the prediction results.
[0604] Information is visually displayed to users through the smart glasses, which makes it possible to provide effective information for sales promotion activities in brick-and-mortar stores.
[0605] Specific examples
[0606] For example, consider how a system can predict the suitability of tomatoes for a certain region and sell them in a physical store. When a user sees a tomato in the store, the smart glasses automatically recognize it, and the camera and microphone analyze the user's facial expressions and voice. The emotion engine recognizes the user's interests and anxieties, and if it determines that the user is interested, a message such as "Here are tips on how to grow this tomato and how to cultivate it" will appear on the smart glasses' display. Additional information such as detailed cultivation instructions and recipe links will also be provided.
[0607] Prompt Sentence Examples
[0608] Develop a smart glasses application for the following purpose: When a user looks at vegetables or fruits for sale in a store, it needs to have the ability to display detailed information about the product. It also needs to recognize the customer's emotions and display appropriate information. Generate the code in Python.
[0609] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0610] Program processing steps
[0611] Step 1:
[0612] The server retrieves past weather information for a specified region via the Internet. Region information is given as input, and based on that, data such as temperature, precipitation, wind speed, and humidity is retrieved from a weather data provider using an API. The retrieved data is received in JSON format and converted into a Pandas data frame. This makes it easy to manage past weather information in a unified format.
[0613] Input: Region information
[0614] Data processing: Using API to retrieve data from weather data providers and convert the JSON format into a Pandas data frame.
[0615] Output: Historical weather information data frame
[0616] Step 2:
[0617] The server similarly obtains soil information. Regional information is given as input, and based on that, information such as soil pH, soil moisture, and nutrient content is obtained from the soil data provider via API. The obtained data is also received in JSON format and converted into a Pandas data frame. This allows soil properties to be managed in a unified format.
[0618] Input: Region information
[0619] Data processing: Retrieve data from soil data providers using APIs and convert the JSON format into a Pandas data frame.
[0620] Output: Soil information data frame
[0621] Step 3:
[0622] The server integrates and preprocesses weather and soil information. It receives weather and soil data frames as input and merges them using dates as keys. It then removes or imputes missing values and scales and standardizes the data. This results in preprocessed data that machine learning algorithms can use to learn efficiently.
[0623] Input: Meteorological information data frame, Soil information data frame
[0624] Data manipulation: merging data frames, removing or imputing missing values, scaling and standardizing data
[0625] Output: Preprocessed data frame
[0626] Step 4:
[0627] The server trains a crop prediction model using the preprocessed data. The preprocessed data frame is given as input and a random forest regression model is trained using this data. Specifically, the data is split into a training set and a test set, and the model is fitted to the training set. This results in a model that predicts crop yield and suitability.
[0628] Input: Preprocessed data frame
[0629] Data computation: data partitioning, model training
[0630] Output: A crop prediction model
[0631] Step 5:
[0632] The server receives new environmental data as input and uses the trained model to predict crop suitability. It receives input from the latest environmental information, such as current temperature, rainfall, soil pH, and soil moisture, and uses this data to make predictions. This results in a prediction of how well a particular crop is suited to that region and conditions.
[0633] Input: Current environment data
[0634] Data Computing: Predicting with Trained Models
[0635] Output: Crop suitability prediction results
[0636] Step 6:
[0637] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine analyzes the user's facial expressions, voice, text input, etc. as input to determine the user's emotional state. This allows the server to understand the user's emotional state.
[0638] Input: User facial expressions, voice, and text input
[0639] Data Computation: Emotional Data Analysis
[0640] Output: User's emotional state
[0641] Step 7:
[0642] The server adjusts the presentation of the prediction results based on the recognized emotion. It receives the prediction results and the user's emotional state as input and generates an optimal message or additional information based on the emotion. For example, if the user is interested, it can provide detailed cultivation instructions or recipe information.
[0643] Input: Prediction result, user's emotional state
[0644] Data Computation: Message Generation Based on User Emotions
[0645] Output: How to present the adjusted prediction results
[0646] Step 8:
[0647] The device (smart glasses) visually displays the adjusted prediction results sent from the server. Specifically, it displays detailed information about the crop the user is looking at, cultivation methods, recipe links, etc. This allows the user to receive information intuitively.
[0648] Input: Adjusted forecast results
[0649] Data calculation: Information displayed via user interface
[0650] Output: Visually displayed prediction results and additional information
[0651] 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.
[0652] 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.
[0653] 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.
[0654] [Third embodiment]
[0655] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0656] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[0657] 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).
[0658] 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.
[0659] 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.
[0660] 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).
[0661] 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. 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.
[0662] 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.
[0663] 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.
[0664] 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.
[0665] 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.
[0666] 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."
[0667] The present invention relates to a system for acquiring past weather and soil information and predicting the optimum crops from that information. The system includes a process in which a server acquires weather and soil information, integrates and preprocesses the data, and then predicts the suitability of the crops using a trained prediction model.
[0668] The server first obtains historical weather information for the specified area. For example, it obtains information such as temperature, rainfall, wind speed, and humidity from a weather data provider through an HTTP request. Similarly, the server obtains information such as soil pH, soil moisture, and nutrient content from a soil data provider. These data are received in JSON format and converted into a Pandas data frame.
[0669] The server then integrates the weather and soil information and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[0670] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. For training, the data is split into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop yield and suitability.
[0671] When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability. New data could include current temperature, rainfall, soil pH, soil moisture, etc. The resulting prediction indicates how well a particular crop is suited to specific conditions.
[0672] The server sends the prediction results to the terminal, which visually displays them to the user. Based on this information, the user can select the most suitable crop and create a production plan. For example, if new data is entered for the Tokyo area: temperature 25°C, rainfall 120mm, soil pH 6.5, and soil moisture 20%, the system will suggest the most suitable crop (e.g., corn) based on this data.
[0673] In this way, the present invention provides a system that predicts the suitability of agricultural crops based on past weather and soil information, and provides useful information to farmers, thereby supporting efficient and effective agricultural management.
[0674] The processing flow will be explained below.
[0675] Step 1:
[0676] The server receives the local information and retrieves historical weather information for the specified area via the Internet, for example, using an API from a weather data provider to retrieve data such as temperature, precipitation, wind speed, and humidity.
[0677] Step 2:
[0678] The server also obtains soil information for the same region, such as soil pH, soil moisture, and nutrient content, from soil data providers via API.
[0679] Step 3:
[0680] The server converts the weather and soil information into a Pandas data frame, which facilitates subsequent data processing.
[0681] Step 4:
[0682] The server merges both data frames based on date, and this merged dataset contains weather and soil information for the date of each data point.
[0683] Step 5:
[0684] The server preprocesses the combined dataset, removing or imputing missing values and scaling and standardizing the data to prepare it for efficient training of machine learning models.
[0685] Step 6:
[0686] The server creates a random forest regression model, trains the model using the preprocessed dataset, splits the data into a training set and a test set, and fits the model on the training set.
[0687] Step 7:
[0688] The server receives new environmental data (e.g., temperature, rainfall, soil pH, soil humidity) as input. It uses the most recent data provided by the user.
[0689] Step 8:
[0690] The server uses a trained random forest regression model to make predictions based on new environmental data, predicting which crops are most suitable.
[0691] Step 9:
[0692] The server generates the predictions and formats the information about crop suitability, organizing the information in a format that is easy for users to understand.
[0693] Step 10:
[0694] The server sends the prediction results to the device, which receives the information and displays it on its user interface.
[0695] Step 11:
[0696] The device visually displays the prediction results to the user, for example displaying a specific message such as "The best crop for your area is corn."
[0697] Step 12:
[0698] The user selects the most suitable crops based on the information provided, and then sends the selection results to the server to finalize the production plan.
[0699] This allows users to efficiently and effectively select the best crops, improving agricultural profitability and sustainability.
[0700] Example 1
[0701] 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."
[0702] The problem that this invention aims to solve is to provide a system that uses past weather and soil information to predict the optimal crops for specific regions and conditions. Conventional methods rely heavily on manual data collection and experience, making it difficult to efficiently and accurately select crops. To solve this problem, a system that automates data integration and preprocessing and uses machine learning to improve prediction accuracy is essential.
[0703] 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.
[0704] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for converting the weather information and the soil information into a data structure, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, and means for transmitting the prediction results to an output device and visually displaying them, thereby enabling crop selection based on appropriate information and enabling farmers to create optimal production plans.
[0705] "Historical weather information" refers to meteorological data such as historical temperature, rainfall, wind speed, and humidity for a specific region or period.
[0706] "Soil information" refers to data on soil characteristics such as pH, soil moisture, and nutrient content in a particular area.
[0707] "Means for converting into data structure" refers to a method for converting the acquired meteorological and soil information into a format that can be processed by machine learning algorithms, such as a data frame or array.
[0708] "Integration and preprocessing methods" are techniques that integrate information obtained from multiple data sources, fill in missing values, and scale the data to prepare the machine learning model for optimal learning.
[0709] A "predictive model" is a model that uses trained machine learning algorithms to predict future crop suitability and yield based on new data.
[0710] "New environmental data" refers to data such as temperature, rainfall, soil pH, and soil moisture under specific current or future conditions.
[0711] An "output device" is a device such as a display, a mobile terminal, or a computer screen that provides the prediction results to a user.
[0712] The "visual display means" is an interface that presents the prediction results in a graph or text format in an easy-to-understand manner to the user.
[0713] A "random forest regression model" is a statistical method that uses a large number of decision trees to make predictions and averages the outputs of the individual models to make a final prediction.
[0714] This invention is a system for acquiring past meteorological and soil information and predicting optimal crops based on that information. This system is implemented in the following manner.
[0715] First, the server retrieves past weather information from a weather data provider via an HTTP request. Specific past weather information includes temperature, precipitation, wind speed, humidity, etc. The retrieved data is received in JSON format and converted into a data frame using the pandas library. Similarly, soil information is retrieved from a soil data provider. The soil information includes soil pH, soil moisture, nutrient content, etc., and is also received in JSON format and converted into a data frame.
[0716] The server then integrates and preprocesses the weather and soil information, merging them using dates as keys, removing or imputing missing values, and scaling and standardizing them using StandardScaler to prepare the data for efficient learning by machine learning algorithms.
[0717] The server then uses the preprocessed data to train a random forest regression model. This model takes historical weather and soil information as input and is used to predict crop suitability. Because the trained model predicts based on previous data, it can also be applied to new environmental data.
[0718] For example, suppose new environmental data is provided: temperature 25 degrees, rainfall 120 mm, soil pH 6.5, and soil moisture 20%. In this case, the server receives this new data as input and predicts the optimal crop (e.g., corn) using the trained model. An example of a specific prompt is, "Predict the optimal crop under the following new environmental data: temperature 25 degrees, rainfall 120 mm, soil pH 6.5, and soil moisture 20%."
[0719] The server sends the prediction results to the device, which then visually displays them to the user. The user can use this information to select the optimal crop and create a production plan. For example, if corn is predicted to be the best crop based on the above conditions, the user can plan to plant corn.
[0720] This system enables farmers to select appropriate crops based on past weather and soil information, supporting efficient and effective agricultural management.
[0721] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0722] Step 1: Get the data
[0723] The server retrieves historical weather information from a weather data provider. Specifically, the server sends an HTTP request to retrieve information such as temperature, precipitation, wind speed, and humidity. The data is returned in JSON format. For example, the following data is input:
[0724] json
[0725] {
[0726] "date": "2023-10-01",
[0727] "temperature": 22,
[0728] "rainfall": 100,
[0729] "wind_speed": 5,
[0730] "humidity": 70
[0731] }
[0732] The server converts this JSON data into a pandas dataframe, and the output is a formatted dataframe.
[0733] Step 2: Obtaining soil information
[0734] The server retrieves soil information from the soil data provider. Specifically, the server sends an HTTP request to retrieve information such as soil pH, soil moisture, and nutrient content. The data is returned in JSON format. For example, the following data is input:
[0735] json
[0736] {
[0737] "date": "2023-10-01",
[0738] "soil_ph": 6.5,
[0739] "soil_moisture": 15,
[0740] "nutrient_content": {
[0741] "nitrogen": 30,
[0742] "phosphorus": 20,
[0743] "potassium": 15
[0744] }
[0745] }
[0746] The server also converts this JSON data into a pandas dataframe, and the output is a formatted dataframe.
[0747] Step 3: Data integration and preprocessing
[0748] The weather and soil information acquired by the server is integrated. Specifically, the two are merged using the date as a key and missing values are forward imputed. The input is various formatted data frames. Missing values in the data frames are imputed using the fillna method. Next, the server scales and standardizes the data using StandardScaler. The output is the preprocessed integrated data.
[0749] Step 4: Training the model
[0750] The server trains a random forest regression model using the preprocessed data. First, the preprocessed data is divided into explanatory variables and target variables, and then split into a training set and a test set. The input is the preprocessed integrated data. The server uses RandomForestRegressor to train the model based on the training set. The output is a trained random forest regression model.
[0751] Step 5: Receiving new environmental data and making predictions
[0752] The server receives new environmental data and uses it to predict crop suitability. For example, the following new data is received as input:
[0753] Temperature: 25 degrees, rainfall: 120 mm, soil pH: 6.5, soil humidity: 20%
[0754] The server preprocesses the received data and inputs it into the trained model. The output is predicted crop suitability information. For example, "corn is suitable."
[0755] Step 6: View the results
[0756] The server sends the prediction results to the terminal, which receives them and displays them visually to the user. Specifically, the terminal displays the received prediction results in the form of a GUI or web app, providing the user with an easy-to-understand format. A message such as "Corn is optimal" is displayed on the output device. The user can then create a production plan based on this information.
[0757] (Application example 1)
[0758] 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."
[0759] The objective of this invention is to provide comprehensive risk management to farmers by integrating disaster risk prediction as a new function into a crop suitability prediction system based on past meteorological and soil information. This will make it easier for farmers to take advance measures against natural disasters and improve the stability of agricultural production.
[0760] 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.
[0761] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for receiving new environmental data as input and predicting disaster risk using the prediction model, and means for providing the prediction results to a user. This enables disaster risk prediction in addition to crop suitability prediction, allowing farmers to implement more appropriate production plans and advance measures.
[0762] "Historical weather information" refers to meteorological data such as historical temperature, rainfall, wind speed, and humidity for a particular area.
[0763] "Soil information" refers to data such as soil pH, humidity, and nutrient content in a particular area.
[0764] "Integration and preprocessing" refers to the process of bringing together meteorological and soil information, complementing incomplete data, and standardizing it.
[0765] "Predictive model" refers to a machine learning algorithm trained to predict a specific objective (e.g., crop suitability or disaster risk) using integrated and preprocessed data.
[0766] "New environmental data" refers to new data acquired in real time, such as current temperature, rainfall, soil pH, and soil moisture.
[0767] "Disaster risk" refers to the predicted likelihood of natural disasters such as floods or landslides based on specific environmental conditions.
[0768] "Means to provide to users" refers to a mechanism for visually displaying prediction results and allowing users to conveniently view the information.
[0769] The present invention describes a system for simultaneously predicting crop suitability and disaster risk. Detailed embodiments for implementing this system are described below.
[0770] This system consists of three main components: a server, a terminal, and a user. The server collects meteorological and soil information, integrates this data, and performs preprocessing. Specifically, data is collected from meteorological and soil data providers via HTTP requests using APIs. The data is in JSON format and converted into a data frame using the Python Pandas library.
[0771] The server then integrates the weather and soil information and performs a data cleansing process, merging the weather and soil information using date and time as keys, removing or filling in missing values, and scaling and standardizing the data to enable machine learning algorithms to learn more effectively.
[0772] Using the preprocessed data, the server trains a random forest regression model. In this model training process, the data is divided into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop suitability and disaster risk based on new environmental data.
[0773] When new environmental data is provided, the server receives this data as input and uses a random forest regression model to predict crop suitability and disaster risk. Specific data items include current temperature, rainfall, soil pH, and soil moisture. The prediction results are sent to the user's device and displayed visually.
[0774] Based on these predictions, users can select the most suitable crops, create production plans, and take precautions against natural disasters. For example, if new data for the Tokyo area is entered, such as a temperature of 25°C, rainfall of 120mm, soil pH of 6.5, and soil moisture of 20%, the system will use this information to evaluate the most suitable crop (such as corn) and disaster risk.
[0775] This will enable farmers to operate their farms efficiently and effectively, and also minimize the risks posed by natural disasters.
[0776] Examples of concrete examples and prompts
[0777] For example, consider the following input data:
[0778] Temperature: 25 degrees
[0779] Rainfall: 120mm
[0780] Soil pH: 6.5
[0781] Soil moisture: 20%
[0782] Wind speed: 3m / s
[0783] Example prompt for a generative AI model:
[0784] For the natural disaster prediction application, we have prepared the following new environmental data. We would like to predict the disaster risk level based on this data. The data is as follows:
[0785] Temperature: 25 degrees
[0786] Rainfall: 120mm
[0787] Soil pH: 6.5
[0788] Soil moisture: 20%
[0789] Wind speed: 3m / s
[0790] What is the predicted disaster risk level?
[0791] The above is a specific embodiment of the present invention. This system can provide significant benefits in both agriculture and disaster risk management.
[0792] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0793] Step 1:
[0794] The server retrieves past weather information. Specifically, it retrieves data such as past temperature, precipitation, wind speed, and humidity from a weather data provider via HTTP requests and receives this data in JSON format. The input is the specified region name, and the output is the retrieved weather data.
[0795] Step 2:
[0796] The server obtains soil information, specifically soil pH, moisture, nutrient content, and other data from a soil data provider via HTTP requests, also in JSON format. The input is the specified region name, and the output is the obtained soil data.
[0797] Step 3:
[0798] The server integrates and preprocesses the acquired meteorological and soil information. Specifically, it converts them into data frames using the Python Pandas library and merges these data frames using dates as keys. It also imputes and removes missing values and scales the data. The input is the acquired meteorological and soil data, and the output is the integrated and preprocessed data frame.
[0799] Step 4:
[0800] The server uses the preprocessed data to train a crop prediction model. Specifically, the server inputs the integrated and preprocessed data into a random forest regression model and trains the model based on a machine learning algorithm. The input is the integrated and preprocessed data frame, and the output is a trained random forest regression model.
[0801] Step 5:
[0802] The server receives new environmental data as input and predicts crop suitability using a predictive model. Specifically, it inputs new environmental data such as current temperature, rainfall, soil pH, and soil moisture, and makes predictions based on a trained random forest regression model. The input is the new environmental data, and the output is the predicted crop suitability.
[0803] Step 6:
[0804] The server receives new environmental data as input and uses a predictive model to predict disaster risk. Specifically, it uses the same new environmental data used to predict crop suitability and simultaneously predicts disaster risk. The input is the new environmental data, and the output is the disaster risk prediction result.
[0805] Step 7:
[0806] The server sends the prediction results to the terminal. Specifically, it sends the crop suitability prediction results and disaster risk prediction results to the terminal so that they can be visually provided to the user. The input is the prediction results, and the output is information displayed on the terminal in a format that can be viewed by the user.
[0807] Step 8:
[0808] Users select crops and make production plans based on the provided prediction results. In addition, they take necessary measures based on disaster risks. Specifically, they select the most suitable crops based on the information provided by the system and make preparations for natural disasters. The input is the prediction results provided by the server, and the output is the user's production plan and disaster prevention measures.
[0809] 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.
[0810] This invention adds an emotion engine that recognizes the user's emotions to a system that acquires past weather and soil information and predicts the optimum crops based on that information. In this system, the server acquires weather and soil information and predicts crop suitability using a prediction model, and also adjusts the way the information is presented based on the user's emotions.
[0811] The server first obtains historical weather information for the specified area via the Internet. For example, it uses APIs from weather data providers to obtain data such as temperature, rainfall, wind speed, and humidity. Similarly, the server obtains information such as soil pH, soil moisture, and nutrient content from soil data providers via APIs. These data are received in JSON format and converted into a Pandas data frame.
[0812] The server then integrates the weather and soil information and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[0813] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. For training, the data is split into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop yield and suitability.
[0814] When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability. New data might include current temperature, rainfall, soil pH, soil moisture, etc. This predicts how well a particular crop is suited to that region and conditions.
[0815] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, text input, etc. Based on this emotion data, the server adjusts the way the prediction results are presented. For example, if the user is feeling anxious, the server will display a message that gives a sense of security.
[0816] The device receives the prediction results and visually displays them to the user. The user interface is optimized based on the recognized emotions and designed to allow users to receive information more intuitively. For example, the emotion engine determines whether the user is interested in the message "The best crop for your area is corn." If so, the device provides more detailed information (e.g., cultivation methods, expected profits, etc.).
[0817] In this way, the present invention provides a system that supports more user-friendly and effective crop selection by taking into account the user's emotional state in addition to predictions based on past weather information and soil information.
[0818] The processing flow will be explained below.
[0819] Step 1:
[0820] The server retrieves historical weather information for the specified area by sending an HTTP request to the weather data provider's API to retrieve weather data such as temperature, precipitation, wind speed, and humidity.
[0821] Step 2:
[0822] The server retrieves soil information for the specified area by sending an HTTP request to the soil data provider's API to obtain data such as soil pH, soil moisture, and nutrient content.
[0823] Step 3:
[0824] The weather information and soil information acquired by the server are converted into Pandas data frames, and the data is organized.
[0825] Step 4:
[0826] The server combines the weather and soil information, merging both data frames using the date as the key, and removing or imputing missing values, if any.
[0827] Step 5:
[0828] The server preprocesses the aggregated data, specifically scaling and standardizing it to prepare it for efficient machine learning algorithms.
[0829] Step 6:
[0830] The server trains a random forest regression model using the preprocessed data, splits the data into a training set and a test set, and fits the model using the training set.
[0831] Step 7:
[0832] The server receives new environmental data as input: the user enters the latest information such as current temperature, rainfall, soil pH, and soil humidity.
[0833] Step 8:
[0834] The server uses the trained model to predict crop suitability based on new environmental data input.
[0835] Step 9:
[0836] The server uses an emotion engine to recognize the user's emotions. Specifically, it determines emotions from the user's facial expressions, voice, text input, etc., and analyzes the data.
[0837] Step 10:
[0838] The server generates predictions and adjusts the presentation of the results based on the user's emotions, for example adding encouraging messages or detailed explanations if the user is feeling anxious.
[0839] Step 11:
[0840] The server sends the final prediction results to the device, which receives this information and displays it to the user.
[0841] Step 12:
[0842] The device visually presents the received prediction results to the user, showing specific information such as "The best crop for your area is corn."
[0843] Step 13:
[0844] The user selects the most suitable crop based on the information presented, and then feeds the selection results back to the server while referring to the results of the emotion engine.
[0845] In this way, the present invention realizes a system that allows users to efficiently and effectively select the most suitable crops by predicting the suitability of crops based on past weather and soil information, and by providing information in a presentation method that takes into account the user's emotional state.
[0846] Example 2
[0847] 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."
[0848] Conventional crop forecasting systems can make relatively accurate predictions using past weather and soil information, but they do not provide information that takes into account the psychological state of the user. As a result, users may use the system with anxiety or doubts, which creates the problem of not being able to effectively support the selection of optimal crops.
[0849] 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.
[0850] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for recognizing a user's emotional state, means for adjusting a presentation method for the prediction result based on the emotional state, and means for providing the prediction result to the user, thereby enabling information provision that takes the user's emotional state into consideration.
[0851] "Past weather information" refers to data such as past temperature, rainfall, wind speed, and humidity in a specific area.
[0852] "Soil information" refers to data such as soil pH, soil moisture, and nutrient content in a particular area.
[0853] "Integration and preprocessing" refers to combining the acquired datasets and performing processes such as filling in missing values, scaling the data, and standardizing it.
[0854] "Predictive model" refers to a mathematical model that uses machine learning algorithms to predict crop yield and suitability.
[0855] "New environmental data" refers to the latest weather and soil data, such as current temperature, rainfall, soil pH, and soil moisture.
[0856] "Emotional state" refers to a psychological state assessed based on a user's facial expressions, voice, text input, etc.
[0857] "Adjusting the presentation method of prediction results based on the emotional state" refers to changing the format and content of the information provided based on the user's emotions.
[0858] This invention is a system in which a server acquires past weather and soil information and predicts crop suitability using a predictive model, and adds a function that recognizes the user's emotional state and adjusts the information presentation method. This system not only predicts crop suitability based on weather and soil information, but also provides a user-friendly experience by optimizing the information presentation method based on the user's emotions.
[0859] First, the server retrieves past weather information for the specified area via the Internet. For example, it uses the weather data provider's API to retrieve data such as temperature, precipitation, wind speed, and humidity. This data is generally provided in JSON format, so it is converted into a Pandas data frame.
[0860] Similarly, the server retrieves information such as soil pH, soil moisture, and nutrient content through the soil data provider's API. This data is also received in JSON format and converted into a Pandas data frame.
[0861] The server integrates the weather and soil information it has acquired and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[0862] Using the preprocessed data, the server creates a random forest regression model and trains the model. For training, the data is divided into a training set and a test set, and the model is fitted to the training set. This model is used to predict crop yield and suitability.
[0863] The server uses the trained model to predict crop suitability when new environmental data is received as input, such as current temperature, rainfall, soil pH, and soil moisture, allowing it to predict how well a particular crop will perform in that region and conditions.
[0864] Next, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, and text input. Based on this emotion data, the server adjusts how the prediction results are presented. For example, if the user is feeling anxious, it displays a message that provides reassurance.
[0865] The device receives the prediction results and visually displays them to the user. The user interface is optimized based on the recognized emotions and designed to allow users to receive information more intuitively. For example, the emotion engine determines whether the user is interested in the message "The best crop for your area is corn," and if so, provides more detailed information (e.g., cultivation methods, expected profits, etc.).
[0866] As a concrete example, suppose the data acquired by the server indicates that the average temperature in a certain region over the past year was 20°C, that rainfall tends to be high at the end of the year, and that the soil has a neutral pH and is rich in nutrients. Based on this data, the server uses a trained model to predict that "wheat is the crop best suited to that region." If the user becomes uneasy after seeing this information, the server will display a reassuring message such as "growing wheat is easy to care for and is expected to bring high profits."
[0867] An example of an input prompt for a generative AI model could be, "Please predict the best crops based on weather and soil information from the past year. Please also explain how to present the information while taking the user's emotions into consideration."
[0868] As described above, this system predicts crops based on past weather and soil information, and also takes into account the user's emotional state, thereby supporting more user-friendly and effective crop selection.
[0869] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0870] Step 1:
[0871] The server retrieves past weather information. Specifically, the server sends a request to the weather data provider's API endpoint and receives data such as temperature, precipitation, wind speed, and humidity in JSON format. The input is the specified region and acquisition period, and the output is JSON data containing past weather information. The received data is converted into a Pandas data frame. Specifically, the requests library is used to access the API and pd.json_normalize is used to convert it into a data frame.
[0872] Step 2:
[0873] The server obtains soil information. Specifically, the server sends a request to the soil data provider's API endpoint and receives data such as soil pH, soil moisture, and nutrient content in JSON format. The input is the specified region and acquisition period, and the output is JSON data containing the soil information. The received data is converted into a Pandas data frame. Specifically, as with weather information, the requests library is used to convert the data into a data frame using pd.json_normalize.
[0874] Step 3:
[0875] The server integrates and preprocesses the weather and soil information. Specifically, it merges the weather and soil information using the date as a key. The input is a data frame of weather information and a data frame of soil information, and the output is an integrated data frame. Missing values are deleted or imputed, and the data is scaled and standardized. Specifically, it merges using the Pandas merge function, processes missing values using the dropna and fillna functions, and standardizes the data using StandardScaler.
[0876] Step 4:
[0877] The server trains the predictive model. Specifically, it splits the preprocessed data into a training set and a test set, and creates and trains a random forest regression model. The input is the integrated and preprocessed data frame, and the output is the predictive model. Specifically, it splits the data using the train_test_split function, and trains the model using RandomForestRegressor.
[0878] Step 5:
[0879] The server receives new environmental data as input and makes predictions. Specifically, it preprocesses new data such as temperature, rainfall, soil pH, and soil moisture, and uses the trained model to predict crop suitability. The input is new environmental data, and the output is a predicted crop suitability. Specifically, it standardizes the new data and makes predictions using model.predict.
[0880] Step 6:
[0881] The server recognizes the user's emotional state. The emotion engine analyzes the user's facial expressions, voice, text input, etc. to determine the emotion. The input is data about the user's emotional state, and the output is the recognized emotion. Specifically, emotion analysis is performed using image recognition libraries and voice recognition libraries.
[0882] Step 7:
[0883] The server adjusts the presentation of the prediction result based on the user's emotional state. For example, if the user is feeling anxious, it generates a reassuring message. The input is the recognized emotion and the prediction result, and the output is the adjusted presentation method. Specifically, it uses a message template corresponding to a specific emotion to generate the optimal message.
[0884] Step 8:
[0885] The terminal visually displays the prediction results to the user. The user interface is optimized based on the recognized emotions, allowing the user to receive information intuitively. The input is the adjusted prediction results, and the output is a visual display. Specifically, the results are displayed in a dashboard format using a web front-end library.
[0886] The above is the specific processing flow of the program.
[0887] (Application example 2)
[0888] 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."
[0889] Conventional crop suitability prediction systems predict crop suitability based on meteorological and soil information, but are unable to adjust the way information is presented based on the user's emotions and interests. This has resulted in problems such as not being able to provide optimal information for the user and not improving the user experience. Furthermore, in sales promotion activities at physical stores, product information displayed in a way that reflects customer emotions has been insufficient, resulting in missed sales opportunities. The present invention aims to solve these problems.
[0890] 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 acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for providing the prediction results to a user, means for recognizing the user's emotions, means for adjusting the presentation method of the prediction results based on the recognized emotions, and means for the terminal to visually display the prediction results. This makes it possible to present information according to the user's emotions, thereby enabling effective information provision in sales promotion activities in physical stores.
[0891] definition statement
[0892] "Past weather information" refers to past weather data for a specified area, including information on temperature, rainfall, wind speed, humidity, and the like.
[0893] "Soil information" means data on the characteristics of soil in a specified area, including information such as soil pH, soil moisture, and nutrient content.
[0894] "Integration and preprocessing" refers to combining data from different sources and formatting them into a consistent format, including handling missing values and scaling and standardizing the data.
[0895] A "crop prediction model" is a machine learning model for predicting the suitability and yield of specific crops based on meteorological and soil information, and in this invention, a random forest regression model is used.
[0896] "New environmental data" refers to the latest environmental information, such as current temperature, rainfall, soil pH, and soil moisture, and this data is used to predict the suitability of agricultural crops.
[0897] The "prediction results" are information regarding the suitability of agricultural crops obtained using a prediction model, and are provided to the user.
[0898] The "means for providing to the user" refers to a means for visually displaying the prediction results processed by the server to the user or providing them in some other way.
[0899] "Means for recognizing user emotions" refers to technology for determining a user's emotional state using data such as the user's facial expressions, voice, and text input.
[0900] The "means for adjusting the presentation method" is a means for changing the display method and content of the prediction results based on the recognized user's emotions.
[0901] The "means for visually displaying by the terminal" refers to a means for visually displaying the prediction results to the user via a user interface, and includes devices such as smart glasses.
[0902] MODE FOR CARRYING OUT THE INVENTION
[0903] This invention is a system that predicts optimal crops and adjusts the method of providing information by taking into account past weather information, soil information, and user emotions. To realize this system, the following hardware and software are used.
[0904] Hardware Configuration
[0905] Server: Acquires data, processes it, trains models, recognizes emotions, and presents results.
[0906] Smart glasses: Capture the user's viewpoint and voice and display information.
[0907] Camera and microphone: Devices installed in smart glasses to collect the user's facial and voice data.
[0908] Software Configuration
[0909] OpenCV: An image processing library that performs facial recognition and facial expression analysis of users from camera images.
[0910] dlib: A library for facial recognition.
[0911] TensorFlow: Used to run a deep learning model for recognizing emotions from a user's facial expressions.
[0912] Pandas: A data processing library for retrieving and preprocessing meteorological and soil information.
[0913] requests: An HTTP library for retrieving external data from APIs.
[0914] Scikit-learn: A machine learning library for creating crop suitability prediction models.
[0915] Program processing explanation
[0916] The server first obtains past weather information for the specified area via the Internet. Weather information includes temperature, rainfall, wind speed, humidity, etc. Then, it obtains soil information and collects data including soil pH, soil moisture, and nutrient content. This data is received in JSON format and converted into a Pandas data frame.
[0917] The server then integrates the weather and soil information and performs data preprocessing, merging the weather and soil information using dates as keys, removing or filling in missing values, and scaling and standardizing the data to enable efficient training by machine learning algorithms.
[0918] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability.
[0919] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, and text input. Based on this emotion data, the server adjusts how the prediction results are presented. For example, if the user shows interest, the server may provide detailed cultivation instructions and recipes for the crop in question in addition to the prediction results.
[0920] Information is visually displayed to users through the smart glasses, which makes it possible to provide effective information for sales promotion activities in brick-and-mortar stores.
[0921] Specific examples
[0922] For example, consider how a system can predict the suitability of tomatoes for a certain region and sell them in a physical store. When a user sees a tomato in the store, the smart glasses automatically recognize it, and the camera and microphone analyze the user's facial expressions and voice. The emotion engine recognizes the user's interests and anxieties, and if it determines that the user is interested, a message such as "Here are tips on how to grow this tomato and how to cultivate it" will appear on the smart glasses' display. Additional information such as detailed cultivation instructions and recipe links will also be provided.
[0923] Prompt Sentence Examples
[0924] Develop a smart glasses application for the following purpose: When a user looks at vegetables or fruits for sale in a store, it needs to have the ability to display detailed information about the product. It also needs to recognize the customer's emotions and display appropriate information. Generate the code in Python.
[0925] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0926] Program processing steps
[0927] Step 1:
[0928] The server retrieves past weather information for a specified region via the Internet. Region information is given as input, and based on that, data such as temperature, precipitation, wind speed, and humidity is retrieved from a weather data provider using an API. The retrieved data is received in JSON format and converted into a Pandas data frame. This makes it easy to manage past weather information in a unified format.
[0929] Input: Region information
[0930] Data processing: Using API to retrieve data from weather data providers and convert the JSON format into a Pandas data frame.
[0931] Output: Historical weather information data frame
[0932] Step 2:
[0933] The server similarly obtains soil information. Regional information is given as input, and based on that, information such as soil pH, soil moisture, and nutrient content is obtained from the soil data provider via API. The obtained data is also received in JSON format and converted into a Pandas data frame. This allows soil properties to be managed in a unified format.
[0934] Input: Region information
[0935] Data processing: Retrieve data from soil data providers using APIs and convert the JSON format into a Pandas data frame.
[0936] Output: Soil information data frame
[0937] Step 3:
[0938] The server integrates and preprocesses weather and soil information. It receives weather and soil data frames as input and merges them using dates as keys. It then removes or imputes missing values and scales and standardizes the data. This results in preprocessed data that machine learning algorithms can use to learn efficiently.
[0939] Input: Meteorological information data frame, Soil information data frame
[0940] Data manipulation: merging data frames, removing or imputing missing values, scaling and standardizing data
[0941] Output: Preprocessed data frame
[0942] Step 4:
[0943] The server trains a crop prediction model using the preprocessed data. The preprocessed data frame is given as input and a random forest regression model is trained using this data. Specifically, the data is split into a training set and a test set, and the model is fitted to the training set. This results in a model that predicts crop yield and suitability.
[0944] Input: Preprocessed data frame
[0945] Data computation: data partitioning, model training
[0946] Output: A crop prediction model
[0947] Step 5:
[0948] The server receives new environmental data as input and uses the trained model to predict crop suitability. It receives input from the latest environmental information, such as current temperature, rainfall, soil pH, and soil moisture, and uses this data to make predictions. This results in a prediction of how well a particular crop is suited to that region and conditions.
[0949] Input: Current environment data
[0950] Data Computing: Predicting with Trained Models
[0951] Output: Crop suitability prediction results
[0952] Step 6:
[0953] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine analyzes the user's facial expressions, voice, text input, etc. as input to determine the user's emotional state. This allows the server to understand the user's emotional state.
[0954] Input: User facial expressions, voice, and text input
[0955] Data Computation: Emotional Data Analysis
[0956] Output: User's emotional state
[0957] Step 7:
[0958] The server adjusts the presentation of the prediction results based on the recognized emotion. It receives the prediction results and the user's emotional state as input and generates an optimal message or additional information based on the emotion. For example, if the user is interested, it can provide detailed cultivation instructions or recipe information.
[0959] Input: Prediction result, user's emotional state
[0960] Data Computation: Message Generation Based on User Emotions
[0961] Output: How to present the adjusted prediction results
[0962] Step 8:
[0963] The device (smart glasses) visually displays the adjusted prediction results sent from the server. Specifically, it displays detailed information about the crop the user is looking at, cultivation methods, recipe links, etc. This allows the user to receive information intuitively.
[0964] Input: Adjusted forecast results
[0965] Data calculation: Information displayed via user interface
[0966] Output: Visually displayed prediction results and additional information
[0967] 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.
[0968] 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.
[0969] 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.
[0970] [Fourth embodiment]
[0971] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[0972] 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.
[0973] 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).
[0974] 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.
[0975] 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.
[0976] 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).
[0977] 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. 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.
[0978] 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.
[0979] 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.
[0980] 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.
[0981] 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.
[0982] 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.
[0983] 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."
[0984] The present invention relates to a system for acquiring past weather and soil information and predicting the optimum crops from that information. The system includes a process in which a server acquires weather and soil information, integrates and preprocesses the data, and then predicts the suitability of the crops using a trained prediction model.
[0985] The server first obtains historical weather information for the specified area. For example, it obtains information such as temperature, rainfall, wind speed, and humidity from a weather data provider through an HTTP request. Similarly, the server obtains information such as soil pH, soil moisture, and nutrient content from a soil data provider. These data are received in JSON format and converted into a Pandas data frame.
[0986] The server then integrates the weather and soil information and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[0987] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. For training, the data is split into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop yield and suitability.
[0988] When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability. New data could include current temperature, rainfall, soil pH, soil moisture, etc. The resulting prediction indicates how well a particular crop is suited to specific conditions.
[0989] The server sends the prediction results to the terminal, which visually displays them to the user. Based on this information, the user can select the most suitable crop and create a production plan. For example, if new data is entered for the Tokyo area: temperature 25°C, rainfall 120mm, soil pH 6.5, and soil moisture 20%, the system will suggest the most suitable crop (e.g., corn) based on this data.
[0990] In this way, the present invention provides a system that predicts the suitability of agricultural crops based on past weather and soil information, and provides useful information to farmers, thereby supporting efficient and effective agricultural management.
[0991] The processing flow will be explained below.
[0992] Step 1:
[0993] The server receives the local information and retrieves historical weather information for the specified area via the Internet, for example, using an API from a weather data provider to retrieve data such as temperature, precipitation, wind speed, and humidity.
[0994] Step 2:
[0995] The server also obtains soil information for the same region, such as soil pH, soil moisture, and nutrient content, from soil data providers via API.
[0996] Step 3:
[0997] The server converts the weather and soil information into a Pandas data frame, which facilitates subsequent data processing.
[0998] Step 4:
[0999] The server merges both data frames based on date, and this merged dataset contains weather and soil information for the date of each data point.
[1000] Step 5:
[1001] The server preprocesses the combined dataset, removing or imputing missing values and scaling and standardizing the data to prepare it for efficient training of machine learning models.
[1002] Step 6:
[1003] The server creates a random forest regression model, trains the model using the preprocessed dataset, splits the data into a training set and a test set, and fits the model on the training set.
[1004] Step 7:
[1005] The server receives new environmental data (e.g., temperature, rainfall, soil pH, soil humidity) as input. It uses the most recent data provided by the user.
[1006] Step 8:
[1007] The server uses a trained random forest regression model to make predictions based on new environmental data, predicting which crops are most suitable.
[1008] Step 9:
[1009] The server generates the predictions and formats the information about crop suitability, organizing the information in a format that is easy for users to understand.
[1010] Step 10:
[1011] The server sends the prediction results to the device, which receives the information and displays it on its user interface.
[1012] Step 11:
[1013] The device visually displays the prediction results to the user, for example displaying a specific message such as "The best crop for your area is corn."
[1014] Step 12:
[1015] The user selects the most suitable crops based on the information provided, and then sends the selection results to the server to finalize the production plan.
[1016] This allows users to efficiently and effectively select the best crops, improving agricultural profitability and sustainability.
[1017] Example 1
[1018] 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."
[1019] The problem that this invention aims to solve is to provide a system that uses past weather and soil information to predict the optimal crops for specific regions and conditions. Conventional methods rely heavily on manual data collection and experience, making it difficult to efficiently and accurately select crops. To solve this problem, a system that automates data integration and preprocessing and uses machine learning to improve prediction accuracy is essential.
[1020] 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.
[1021] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for converting the weather information and the soil information into a data structure, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, and means for transmitting the prediction results to an output device and visually displaying them, thereby enabling crop selection based on appropriate information and enabling farmers to create optimal production plans.
[1022] "Historical weather information" refers to meteorological data such as historical temperature, rainfall, wind speed, and humidity for a specific region or period.
[1023] "Soil information" refers to data on soil characteristics such as pH, soil moisture, and nutrient content in a particular area.
[1024] "Means for converting into data structure" refers to a method for converting the acquired meteorological and soil information into a format that can be processed by machine learning algorithms, such as a data frame or array.
[1025] "Integration and preprocessing methods" are techniques that integrate information obtained from multiple data sources, fill in missing values, and scale the data to prepare the machine learning model for optimal learning.
[1026] A "predictive model" is a model that uses trained machine learning algorithms to predict future crop suitability and yield based on new data.
[1027] "New environmental data" refers to data such as temperature, rainfall, soil pH, and soil moisture under specific current or future conditions.
[1028] An "output device" is a device such as a display, a mobile terminal, or a computer screen that provides the prediction results to a user.
[1029] The "visual display means" is an interface that presents the prediction results in a graph or text format in an easy-to-understand manner to the user.
[1030] A "random forest regression model" is a statistical method that uses a large number of decision trees to make predictions and averages the outputs of the individual models to make a final prediction.
[1031] This invention is a system for acquiring past meteorological and soil information and predicting optimal crops based on that information. This system is implemented in the following manner.
[1032] First, the server retrieves past weather information from a weather data provider via an HTTP request. Specific past weather information includes temperature, precipitation, wind speed, humidity, etc. The retrieved data is received in JSON format and converted into a data frame using the pandas library. Similarly, soil information is retrieved from a soil data provider. The soil information includes soil pH, soil moisture, nutrient content, etc., and is also received in JSON format and converted into a data frame.
[1033] The server then integrates and preprocesses the weather and soil information, merging them using dates as keys, removing or imputing missing values, and scaling and standardizing them using StandardScaler to prepare the data for efficient learning by machine learning algorithms.
[1034] The server then uses the preprocessed data to train a random forest regression model. This model takes historical weather and soil information as input and is used to predict crop suitability. Because the trained model predicts based on previous data, it can also be applied to new environmental data.
[1035] For example, suppose new environmental data is provided: temperature 25 degrees, rainfall 120 mm, soil pH 6.5, and soil moisture 20%. In this case, the server receives this new data as input and predicts the optimal crop (e.g., corn) using the trained model. An example of a specific prompt is, "Predict the optimal crop under the following new environmental data: temperature 25 degrees, rainfall 120 mm, soil pH 6.5, and soil moisture 20%."
[1036] The server sends the prediction results to the device, which then visually displays them to the user. The user can use this information to select the optimal crop and create a production plan. For example, if corn is predicted to be the best crop based on the above conditions, the user can plan to plant corn.
[1037] This system enables farmers to select appropriate crops based on past weather and soil information, supporting efficient and effective agricultural management.
[1038] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1039] Step 1: Get the data
[1040] The server retrieves historical weather information from a weather data provider. Specifically, the server sends an HTTP request to retrieve information such as temperature, precipitation, wind speed, and humidity. The data is returned in JSON format. For example, the following data is input:
[1041] json
[1042] {
[1043] "date": "2023-10-01",
[1044] "temperature": 22,
[1045] "rainfall": 100,
[1046] "wind_speed": 5,
[1047] "humidity": 70
[1048] }
[1049] The server converts this JSON data into a pandas dataframe, and the output is a formatted dataframe.
[1050] Step 2: Obtaining soil information
[1051] The server retrieves soil information from the soil data provider. Specifically, the server sends an HTTP request to retrieve information such as soil pH, soil moisture, and nutrient content. The data is returned in JSON format. For example, the following data is input:
[1052] json
[1053] {
[1054] "date": "2023-10-01",
[1055] "soil_ph": 6.5,
[1056] "soil_moisture": 15,
[1057] "nutrient_content": {
[1058] "nitrogen": 30,
[1059] "phosphorus": 20,
[1060] "potassium": 15
[1061] }
[1062] }
[1063] The server also converts this JSON data into a pandas dataframe, and the output is a formatted dataframe.
[1064] Step 3: Data integration and preprocessing
[1065] The weather and soil information acquired by the server is integrated. Specifically, the two are merged using the date as a key and missing values are forward imputed. The input is various formatted data frames. Missing values in the data frames are imputed using the fillna method. Next, the server scales and standardizes the data using StandardScaler. The output is the preprocessed integrated data.
[1066] Step 4: Training the model
[1067] The server trains a random forest regression model using the preprocessed data. First, the preprocessed data is divided into explanatory variables and target variables, and then split into a training set and a test set. The input is the preprocessed integrated data. The server uses RandomForestRegressor to train the model based on the training set. The output is a trained random forest regression model.
[1068] Step 5: Receiving new environmental data and making predictions
[1069] The server receives new environmental data and uses it to predict crop suitability. For example, the following new data is received as input:
[1070] Temperature: 25 degrees, rainfall: 120 mm, soil pH: 6.5, soil humidity: 20%
[1071] The server preprocesses the received data and inputs it into the trained model. The output is predicted crop suitability information. For example, "corn is suitable."
[1072] Step 6: View the results
[1073] The server sends the prediction results to the terminal, which receives them and displays them visually to the user. Specifically, the terminal displays the received prediction results in the form of a GUI or web app, providing the user with an easy-to-understand format. A message such as "Corn is optimal" is displayed on the output device. The user can then create a production plan based on this information.
[1074] (Application example 1)
[1075] 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."
[1076] The objective of this invention is to provide comprehensive risk management to farmers by integrating disaster risk prediction as a new function into a crop suitability prediction system based on past meteorological and soil information. This will make it easier for farmers to take advance measures against natural disasters and improve the stability of agricultural production.
[1077] 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.
[1078] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for receiving new environmental data as input and predicting disaster risk using the prediction model, and means for providing the prediction results to a user. This enables disaster risk prediction in addition to crop suitability prediction, allowing farmers to implement more appropriate production plans and advance measures.
[1079] "Historical weather information" refers to meteorological data such as historical temperature, rainfall, wind speed, and humidity for a particular area.
[1080] "Soil information" refers to data such as soil pH, humidity, and nutrient content in a particular area.
[1081] "Integration and preprocessing" refers to the process of bringing together meteorological and soil information, complementing incomplete data, and standardizing it.
[1082] "Predictive model" refers to a machine learning algorithm trained to predict a specific objective (e.g., crop suitability or disaster risk) using integrated and preprocessed data.
[1083] "New environmental data" refers to new data acquired in real time, such as current temperature, rainfall, soil pH, and soil moisture.
[1084] "Disaster risk" refers to the predicted likelihood of natural disasters such as floods or landslides based on specific environmental conditions.
[1085] "Means to provide to users" refers to a mechanism for visually displaying prediction results and allowing users to conveniently view the information.
[1086] The present invention describes a system for simultaneously predicting crop suitability and disaster risk. Detailed embodiments for implementing this system are described below.
[1087] This system consists of three main components: a server, a terminal, and a user. The server collects meteorological and soil information, integrates this data, and performs preprocessing. Specifically, data is collected from meteorological and soil data providers via HTTP requests using APIs. The data is in JSON format and converted into a data frame using the Python Pandas library.
[1088] The server then integrates the weather and soil information and performs a data cleansing process, merging the weather and soil information using date and time as keys, removing or filling in missing values, and scaling and standardizing the data to enable machine learning algorithms to learn more effectively.
[1089] Using the preprocessed data, the server trains a random forest regression model. In this model training process, the data is divided into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop suitability and disaster risk based on new environmental data.
[1090] When new environmental data is provided, the server receives this data as input and uses a random forest regression model to predict crop suitability and disaster risk. Specific data items include current temperature, rainfall, soil pH, and soil moisture. The prediction results are sent to the user's device and displayed visually.
[1091] Based on these predictions, users can select the most suitable crops, create production plans, and take precautions against natural disasters. For example, if new data for the Tokyo area is entered, such as a temperature of 25°C, rainfall of 120mm, soil pH of 6.5, and soil moisture of 20%, the system will use this information to evaluate the most suitable crop (such as corn) and disaster risk.
[1092] This will enable farmers to operate their farms efficiently and effectively, and also minimize the risks posed by natural disasters.
[1093] Examples of concrete examples and prompts
[1094] For example, consider the following input data:
[1095] Temperature: 25 degrees
[1096] Rainfall: 120mm
[1097] Soil pH: 6.5
[1098] Soil moisture: 20%
[1099] Wind speed: 3m / s
[1100] Example prompt for a generative AI model:
[1101] For the natural disaster prediction application, we have prepared the following new environmental data. We would like to predict the disaster risk level based on this data. The data is as follows:
[1102] Temperature: 25 degrees
[1103] Rainfall: 120mm
[1104] Soil pH: 6.5
[1105] Soil moisture: 20%
[1106] Wind speed: 3m / s
[1107] What is the predicted disaster risk level?
[1108] The above is a specific embodiment of the present invention. This system can provide significant benefits in both agriculture and disaster risk management.
[1109] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1110] Step 1:
[1111] The server retrieves past weather information. Specifically, it retrieves data such as past temperature, precipitation, wind speed, and humidity from a weather data provider via HTTP requests and receives this data in JSON format. The input is the specified region name, and the output is the retrieved weather data.
[1112] Step 2:
[1113] The server obtains soil information, specifically soil pH, moisture, nutrient content, and other data from a soil data provider via HTTP requests, also in JSON format. The input is the specified region name, and the output is the obtained soil data.
[1114] Step 3:
[1115] The server integrates and preprocesses the acquired meteorological and soil information. Specifically, it converts them into data frames using the Python Pandas library and merges these data frames using dates as keys. It also imputes and removes missing values and scales the data. The input is the acquired meteorological and soil data, and the output is the integrated and preprocessed data frame.
[1116] Step 4:
[1117] The server uses the preprocessed data to train a crop prediction model. Specifically, the server inputs the integrated and preprocessed data into a random forest regression model and trains the model based on a machine learning algorithm. The input is the integrated and preprocessed data frame, and the output is a trained random forest regression model.
[1118] Step 5:
[1119] The server receives new environmental data as input and predicts crop suitability using a predictive model. Specifically, it inputs new environmental data such as current temperature, rainfall, soil pH, and soil moisture, and makes predictions based on a trained random forest regression model. The input is the new environmental data, and the output is the predicted crop suitability.
[1120] Step 6:
[1121] The server receives new environmental data as input and uses a predictive model to predict disaster risk. Specifically, it uses the same new environmental data used to predict crop suitability and simultaneously predicts disaster risk. The input is the new environmental data, and the output is the disaster risk prediction result.
[1122] Step 7:
[1123] The server sends the prediction results to the terminal. Specifically, it sends the crop suitability prediction results and disaster risk prediction results to the terminal so that they can be visually provided to the user. The input is the prediction results, and the output is information displayed on the terminal in a format that can be viewed by the user.
[1124] Step 8:
[1125] Users select crops and make production plans based on the provided prediction results. In addition, they take necessary measures based on disaster risks. Specifically, they select the most suitable crops based on the information provided by the system and make preparations for natural disasters. The input is the prediction results provided by the server, and the output is the user's production plan and disaster prevention measures.
[1126] 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.
[1127] This invention adds an emotion engine that recognizes the user's emotions to a system that acquires past weather and soil information and predicts the optimum crops based on that information. In this system, the server acquires weather and soil information and predicts crop suitability using a prediction model, and also adjusts the way the information is presented based on the user's emotions.
[1128] The server first obtains historical weather information for the specified area via the Internet. For example, it uses APIs from weather data providers to obtain data such as temperature, rainfall, wind speed, and humidity. Similarly, the server obtains information such as soil pH, soil moisture, and nutrient content from soil data providers via APIs. These data are received in JSON format and converted into a Pandas data frame.
[1129] The server then integrates the weather and soil information and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[1130] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. For training, the data is split into a training set and a test set, and the model is fitted to the training set. This model is then used to predict crop yield and suitability.
[1131] When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability. New data might include current temperature, rainfall, soil pH, soil moisture, etc. This predicts how well a particular crop is suited to that region and conditions.
[1132] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, text input, etc. Based on this emotion data, the server adjusts the way the prediction results are presented. For example, if the user is feeling anxious, the server will display a message that gives a sense of security.
[1133] The device receives the prediction results and visually displays them to the user. The user interface is optimized based on the recognized emotions and designed to allow users to receive information more intuitively. For example, the emotion engine determines whether the user is interested in the message "The best crop for your area is corn." If so, the device provides more detailed information (e.g., cultivation methods, expected profits, etc.).
[1134] In this way, the present invention provides a system that supports more user-friendly and effective crop selection by taking into account the user's emotional state in addition to predictions based on past weather information and soil information.
[1135] The processing flow will be explained below.
[1136] Step 1:
[1137] The server retrieves historical weather information for the specified area by sending an HTTP request to the weather data provider's API to retrieve weather data such as temperature, precipitation, wind speed, and humidity.
[1138] Step 2:
[1139] The server retrieves soil information for the specified area by sending an HTTP request to the soil data provider's API to obtain data such as soil pH, soil moisture, and nutrient content.
[1140] Step 3:
[1141] The weather information and soil information acquired by the server are converted into Pandas data frames, and the data is organized.
[1142] Step 4:
[1143] The server combines the weather and soil information, merging both data frames using the date as the key, and removing or imputing missing values, if any.
[1144] Step 5:
[1145] The server preprocesses the aggregated data, specifically scaling and standardizing it to prepare it for efficient machine learning algorithms.
[1146] Step 6:
[1147] The server trains a random forest regression model using the preprocessed data, splits the data into a training set and a test set, and fits the model using the training set.
[1148] Step 7:
[1149] The server receives new environmental data as input: the user enters the latest information such as current temperature, rainfall, soil pH, and soil humidity.
[1150] Step 8:
[1151] The server uses the trained model to predict crop suitability based on new environmental data input.
[1152] Step 9:
[1153] The server uses an emotion engine to recognize the user's emotions. Specifically, it determines emotions from the user's facial expressions, voice, text input, etc., and analyzes the data.
[1154] Step 10:
[1155] The server generates predictions and adjusts the presentation of the results based on the user's emotions, for example adding encouraging messages or detailed explanations if the user is feeling anxious.
[1156] Step 11:
[1157] The server sends the final prediction results to the device, which receives this information and displays it to the user.
[1158] Step 12:
[1159] The device visually presents the received prediction results to the user, showing specific information such as "The best crop for your area is corn."
[1160] Step 13:
[1161] The user selects the most suitable crop based on the information presented, and then feeds the selection results back to the server while referring to the results of the emotion engine.
[1162] In this way, the present invention realizes a system that allows users to efficiently and effectively select the most suitable crops by predicting the suitability of crops based on past weather and soil information, and by providing information in a presentation method that takes into account the user's emotional state.
[1163] Example 2
[1164] 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."
[1165] Conventional crop forecasting systems can make relatively accurate predictions using past weather and soil information, but they do not provide information that takes into account the psychological state of the user. As a result, users may use the system with anxiety or doubts, which can lead to the issue of not being able to effectively support the selection of optimal crops.
[1166] 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.
[1167] In this invention, the server includes means for acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for recognizing a user's emotional state, means for adjusting a presentation method for the prediction result based on the emotional state, and means for providing the prediction result to the user, thereby enabling information provision that takes the user's emotional state into consideration.
[1168] "Past weather information" refers to data such as past temperature, rainfall, wind speed, and humidity in a specific area.
[1169] "Soil information" refers to data such as soil pH, soil moisture, and nutrient content in a particular area.
[1170] "Integration and preprocessing" refers to combining the acquired datasets and performing processes such as filling in missing values, scaling the data, and standardizing it.
[1171] "Predictive model" refers to a mathematical model that uses machine learning algorithms to predict crop yield and suitability.
[1172] "New environmental data" refers to the latest weather and soil data, such as current temperature, rainfall, soil pH, and soil moisture.
[1173] "Emotional state" refers to a psychological state assessed based on a user's facial expressions, voice, text input, etc.
[1174] "Adjusting the presentation method of prediction results based on the emotional state" refers to changing the format and content of the information provided based on the user's emotions.
[1175] This invention is a system in which a server acquires past weather and soil information and predicts crop suitability using a predictive model, and adds a function that recognizes the user's emotional state and adjusts the information presentation method. This system not only predicts crop suitability based on weather and soil information, but also provides a user-friendly experience by optimizing the information presentation method based on the user's emotions.
[1176] First, the server retrieves past weather information for the specified area via the Internet. For example, it uses the weather data provider's API to retrieve data such as temperature, precipitation, wind speed, and humidity. This data is generally provided in JSON format, so it is converted into a Pandas data frame.
[1177] Similarly, the server retrieves information such as soil pH, soil moisture, and nutrient content through the soil data provider's API. This data is also received in JSON format and converted into a Pandas data frame.
[1178] The server integrates the weather and soil information it has acquired and performs data cleansing. Specifically, it merges the weather and soil information using dates as keys, removes or fills in missing values, and scales and standardizes the data to enable efficient learning by machine learning algorithms.
[1179] Using the preprocessed data, the server creates a random forest regression model and trains the model. For training, the data is divided into a training set and a test set, and the model is fitted to the training set. This model is used to predict crop yield and suitability.
[1180] The server uses the trained model to predict crop suitability when new environmental data is received as input, such as current temperature, rainfall, soil pH, and soil moisture, allowing it to predict how well a particular crop will perform in that region and conditions.
[1181] Next, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, and text input. Based on this emotion data, the server adjusts how the prediction results are presented. For example, if the user is feeling anxious, it displays a message that provides reassurance.
[1182] The device receives the prediction results and visually displays them to the user. The user interface is optimized based on the recognized emotions and designed to allow users to receive information more intuitively. For example, the emotion engine determines whether the user is interested in the message "The best crop for your area is corn," and if so, provides more detailed information (e.g., cultivation methods, expected profits, etc.).
[1183] As a concrete example, suppose the data acquired by the server indicates that the average temperature in a certain region over the past year was 20°C, that rainfall tends to be high at the end of the year, and that the soil has a neutral pH and is rich in nutrients. Based on this data, the server uses a trained model to predict that "wheat is the crop best suited to that region." If the user becomes uneasy after seeing this information, the server will display a reassuring message such as "growing wheat is easy to care for and is expected to bring high profits."
[1184] An example of an input prompt for a generative AI model could be, "Please predict the best crops based on weather and soil information from the past year. Please also explain how to present the information while taking the user's emotions into consideration."
[1185] As described above, this system predicts crops based on past weather and soil information, and also takes into account the user's emotional state, thereby supporting more user-friendly and effective crop selection.
[1186] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1187] Step 1:
[1188] The server retrieves past weather information. Specifically, the server sends a request to the weather data provider's API endpoint and receives data such as temperature, precipitation, wind speed, and humidity in JSON format. The input is the specified region and acquisition period, and the output is JSON data containing past weather information. The received data is converted into a Pandas data frame. Specifically, the requests library is used to access the API and pd.json_normalize is used to convert it into a data frame.
[1189] Step 2:
[1190] The server obtains soil information. Specifically, the server sends a request to the soil data provider's API endpoint and receives data such as soil pH, soil moisture, and nutrient content in JSON format. The input is the specified region and acquisition period, and the output is JSON data containing the soil information. The received data is converted into a Pandas data frame. Specifically, as with weather information, the requests library is used to convert the data into a data frame using pd.json_normalize.
[1191] Step 3:
[1192] The server integrates and preprocesses the weather and soil information. Specifically, it merges the weather and soil information using the date as a key. The input is a data frame of weather information and a data frame of soil information, and the output is an integrated data frame. Missing values are deleted or imputed, and the data is scaled and standardized. Specifically, it merges using the Pandas merge function, processes missing values using the dropna and fillna functions, and standardizes the data using StandardScaler.
[1193] Step 4:
[1194] The server trains the predictive model. Specifically, it splits the preprocessed data into a training set and a test set, and creates and trains a random forest regression model. The input is the integrated and preprocessed data frame, and the output is the predictive model. Specifically, it splits the data using the train_test_split function, and trains the model using RandomForestRegressor.
[1195] Step 5:
[1196] The server receives new environmental data as input and makes predictions. Specifically, it preprocesses new data such as temperature, rainfall, soil pH, and soil moisture, and uses the trained model to predict crop suitability. The input is new environmental data, and the output is a predicted crop suitability. Specifically, it standardizes the new data and makes predictions using model.predict.
[1197] Step 6:
[1198] The server recognizes the user's emotional state. The emotion engine analyzes the user's facial expressions, voice, text input, etc. to determine the emotion. The input is data about the user's emotional state, and the output is the recognized emotion. Specifically, emotion analysis is performed using image recognition libraries and voice recognition libraries.
[1199] Step 7:
[1200] The server adjusts the presentation of the prediction result based on the user's emotional state. For example, if the user is feeling anxious, it generates a reassuring message. The input is the recognized emotion and the prediction result, and the output is the adjusted presentation method. Specifically, it uses a message template corresponding to a specific emotion to generate the optimal message.
[1201] Step 8:
[1202] The terminal visually displays the prediction results to the user. The user interface is optimized based on the recognized emotions, allowing the user to receive information intuitively. The input is the adjusted prediction results, and the output is a visual display. Specifically, the results are displayed in a dashboard format using a web front-end library.
[1203] The above is the specific processing flow of the program.
[1204] (Application example 2)
[1205] 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."
[1206] Conventional crop suitability prediction systems predict crop suitability based on meteorological and soil information, but are unable to adjust the way information is presented based on the user's emotions and interests. This has resulted in problems such as not being able to provide optimal information for the user and not improving the user experience. Furthermore, in sales promotion activities at physical stores, product information displayed in a way that reflects customer emotions has been insufficient, resulting in missed sales opportunities. The present invention aims to solve these problems.
[1207] 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 acquiring past weather information, means for acquiring soil information, means for integrating and preprocessing the weather information and the soil information, means for training a crop prediction model using the preprocessed data, means for receiving new environmental data as input and predicting crop suitability using the prediction model, means for providing the prediction results to a user, means for recognizing the user's emotions, means for adjusting the presentation method of the prediction results based on the recognized emotions, and means for the terminal to visually display the prediction results. This makes it possible to present information according to the user's emotions, thereby enabling effective information provision in sales promotion activities in physical stores.
[1208] definition statement
[1209] "Past weather information" refers to past weather data for a specified area, including information on temperature, rainfall, wind speed, humidity, and the like.
[1210] "Soil information" means data on the characteristics of soil in a specified area, including information such as soil pH, soil moisture, and nutrient content.
[1211] "Integration and preprocessing" refers to combining data from different sources and formatting them into a consistent format, including handling missing values and scaling and standardizing the data.
[1212] A "crop prediction model" is a machine learning model for predicting the suitability and yield of specific crops based on meteorological and soil information, and in this invention, a random forest regression model is used.
[1213] "New environmental data" refers to the latest environmental information, such as current temperature, rainfall, soil pH, and soil moisture, and this data is used to predict the suitability of agricultural crops.
[1214] The "prediction results" are information regarding the suitability of agricultural crops obtained using a prediction model, and are provided to the user.
[1215] The "means for providing to the user" refers to a means for visually displaying the prediction results processed by the server to the user or providing them in some other way.
[1216] "Means for recognizing user emotions" refers to technology for determining a user's emotional state using data such as the user's facial expressions, voice, and text input.
[1217] The "means for adjusting the presentation method" is a means for changing the display method and content of the prediction results based on the recognized user's emotions.
[1218] The "means for visually displaying by the terminal" refers to a means for visually displaying the prediction results to the user via a user interface, and includes devices such as smart glasses.
[1219] MODE FOR CARRYING OUT THE INVENTION
[1220] This invention is a system that predicts optimal crops and adjusts the method of providing information by taking into account past weather information, soil information, and user emotions. To realize this system, the following hardware and software are used.
[1221] Hardware Configuration
[1222] Server: Acquires data, processes it, trains models, recognizes emotions, and presents results.
[1223] Smart glasses: Capture the user's viewpoint and voice and display information.
[1224] Camera and microphone: Devices installed in smart glasses to collect the user's facial and voice data.
[1225] Software Configuration
[1226] OpenCV: An image processing library that performs facial recognition and facial expression analysis of users from camera images.
[1227] dlib: A library for facial recognition.
[1228] TensorFlow: Used to run a deep learning model for recognizing emotions from a user's facial expressions.
[1229] Pandas: A data processing library for retrieving and preprocessing meteorological and soil information.
[1230] requests: An HTTP library for retrieving external data from APIs.
[1231] Scikit-learn: A machine learning library for creating crop suitability prediction models.
[1232] Program processing explanation
[1233] The server first obtains past weather information for the specified area via the Internet. Weather information includes temperature, rainfall, wind speed, humidity, etc. Then, it obtains soil information and collects data including soil pH, soil moisture, and nutrient content. This data is received in JSON format and converted into a Pandas data frame.
[1234] The server then integrates the weather and soil information and performs data preprocessing, merging the weather and soil information using dates as keys, removing or filling in missing values, and scaling and standardizing the data to enable efficient training by machine learning algorithms.
[1235] After the data is preprocessed, the server creates a random forest regression model and trains it using the preprocessed data. When new environmental data is provided, the server takes this data as input and uses the trained model to predict crop suitability.
[1236] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine determines emotions based on the user's facial expressions, voice, and text input. Based on this emotion data, the server adjusts how the prediction results are presented. For example, if the user shows interest, the server may provide detailed cultivation instructions and recipes for the crop in question in addition to the prediction results.
[1237] Information is visually displayed to users through the smart glasses, which makes it possible to provide effective information for sales promotion activities in brick-and-mortar stores.
[1238] Specific examples
[1239] For example, consider how a system can predict the suitability of tomatoes for a certain region and sell them in a physical store. When a user sees a tomato in the store, the smart glasses automatically recognize it, and the camera and microphone analyze the user's facial expressions and voice. The emotion engine recognizes the user's interests and anxieties, and if it determines that the user is interested, a message such as "Here are tips on how to grow this tomato and how to cultivate it" will appear on the smart glasses' display. Additional information such as detailed cultivation instructions and recipe links will also be provided.
[1240] Prompt Sentence Examples
[1241] Develop a smart glasses application for the following purpose: When a user looks at vegetables or fruits for sale in a store, it needs to have the ability to display detailed information about the product. It also needs to recognize the customer's emotions and display appropriate information. Generate the code in Python.
[1242] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1243] Program processing steps
[1244] Step 1:
[1245] The server retrieves past weather information for a specified region via the Internet. Region information is given as input, and based on that, data such as temperature, precipitation, wind speed, and humidity is retrieved from a weather data provider using an API. The retrieved data is received in JSON format and converted into a Pandas data frame. This makes it easy to manage past weather information in a unified format.
[1246] Input: Region information
[1247] Data processing: Using API to retrieve data from weather data providers and convert the JSON format into a Pandas data frame.
[1248] Output: Historical weather information data frame
[1249] Step 2:
[1250] The server similarly obtains soil information. Regional information is given as input, and based on that, information such as soil pH, soil moisture, and nutrient content is obtained from the soil data provider via API. The obtained data is also received in JSON format and converted into a Pandas data frame. This allows soil properties to be managed in a unified format.
[1251] Input: Region information
[1252] Data processing: Retrieve data from soil data providers using APIs and convert the JSON format into a Pandas data frame.
[1253] Output: Soil information data frame
[1254] Step 3:
[1255] The server integrates and preprocesses weather and soil information. It receives weather and soil data frames as input and merges them using dates as keys. It then removes or imputes missing values and scales and standardizes the data. This results in preprocessed data that machine learning algorithms can use to learn efficiently.
[1256] Input: Meteorological information data frame, Soil information data frame
[1257] Data manipulation: merging data frames, removing or imputing missing values, scaling and standardizing data
[1258] Output: Preprocessed data frame
[1259] Step 4:
[1260] The server trains a crop prediction model using the preprocessed data. The preprocessed data frame is given as input and a random forest regression model is trained using this data. Specifically, the data is split into a training set and a test set, and the model is fitted to the training set. This results in a model that predicts crop yield and suitability.
[1261] Input: Preprocessed data frame
[1262] Data computation: data partitioning, model training
[1263] Output: A crop prediction model
[1264] Step 5:
[1265] The server receives new environmental data as input and uses the trained model to predict crop suitability. It receives input from the latest environmental information, such as current temperature, rainfall, soil pH, and soil moisture, and uses this data to make predictions. This results in a prediction of how well a particular crop is suited to that region and conditions.
[1266] Input: Current environment data
[1267] Data Computing: Predicting with Trained Models
[1268] Output: Crop suitability prediction results
[1269] Step 6:
[1270] Before providing the prediction results to the user, the server uses an emotion engine to recognize the user's emotions. The emotion engine analyzes the user's facial expressions, voice, text input, etc. as input to determine the user's emotional state. This allows the server to understand the user's emotional state.
[1271] Input: User facial expressions, voice, and text input
[1272] Data Computation: Emotional Data Analysis
[1273] Output: User's emotional state
[1274] Step 7:
[1275] The server adjusts the presentation of the prediction results based on the recognized emotion. It receives the prediction results and the user's emotional state as input and generates an optimal message or additional information based on the emotion. For example, if the user is interested, it can provide detailed cultivation instructions or recipe information.
[1276] Input: Prediction result, user's emotional state
[1277] Data Computation: Message Generation Based on User Emotions
[1278] Output: How to present the adjusted prediction results
[1279] Step 8:
[1280] The device (smart glasses) visually displays the adjusted prediction results sent from the server. Specifically, it displays detailed information about the crop the user is looking at, cultivation methods, recipe links, etc. This allows the user to receive information intuitively.
[1281] Input: Adjusted forecast results
[1282] Data calculation: Information displayed via user interface
[1283] Output: Visually displayed prediction results and additional information
[1284] 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.
[1285] 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.
[1286] 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.
[1287] 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.
[1288] 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.
[1289] 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.
[1290] 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).
[1291] 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.
[1292] 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."
[1293] 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.
[1294] 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).
[1295] 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.
[1296] 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.
[1297] 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.
[1298] 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.
[1299] 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.
[1300] 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.
[1301] 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.
[1302] 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.
[1303] 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.
[1304] 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.
[1305] The following is further disclosed regarding the above embodiment.
[1306] (Claim 1)
[1307] A means for obtaining past weather information;
[1308] A means for acquiring soil information;
[1309] means for integrating and preprocessing the meteorological information and the soil information;
[1310] means for training a predictive model for the crop using the preprocessed data;
[1311] means for receiving new environmental data as input and predicting crop suitability using said predictive model;
[1312] means for providing the prediction result to a user;
[1313] A system including:
[1314] (Claim 2)
[1315] 10. The system of claim 1, wherein the means for receiving new environmental data as input receives data relating to temperature, rainfall, soil pH, and soil moisture.
[1316] (Claim 3)
[1317] 10. The system of claim 1, wherein the predictive model comprises a random forest regression model.
[1318] "Example 1"
[1319] (Claim 1)
[1320] A means for obtaining past weather information;
[1321] A means for acquiring soil information;
[1322] means for converting the meteorological information and the soil information into a data structure;
[1323] means for integrating and preprocessing the meteorological information and the soil information;
[1324] means for training a predictive model for the crop using the preprocessed data;
[1325] means for receiving new environmental data as input and predicting crop suitability using said predictive model;
[1326] means for transmitting the prediction result to an output device and visually displaying it;
[1327] A system including:
[1328] (Claim 2)
[1329] 10. The system of claim 1, wherein the means for receiving new environmental data as input receives data relating to temperature, rainfall, soil pH, and soil moisture.
[1330] (Claim 3)
[1331] 10. The system of claim 1, wherein the predictive model comprises a random forest regression model.
[1332] "Application Example 1"
[1333] (Claim 1)
[1334] A means for obtaining past weather information;
[1335] A means for acquiring soil information;
[1336] means for integrating and preprocessing the meteorological information and the soil information;
[1337] means for training a predictive model for the crop using the preprocessed data;
[1338] means for receiving new environmental data as input and predicting crop suitability using said predictive model;
[1339] means for receiving new environmental data as input and predicting disaster risk using said predictive model;
[1340] means for providing the prediction result to a user;
[1341] A system including:
[1342] (Claim 2)
[1343] 10. The system of claim 1, wherein the means for receiving new environmental data as input receives data relating to temperature, rainfall, soil pH, and soil moisture.
[1344] (Claim 3)
[1345] 10. The system of claim 1, wherein the predictive model comprises a random forest regression model.
[1346] "Example 2: Combining Emotion Engines"
[1347] (Claim 1)
[1348] A means for obtaining past weather information;
[1349] A means for acquiring soil information;
[1350] means for integrating and preprocessing the meteorological information and the soil information;
[1351] means for training a predictive model for the crop using the preprocessed data;
[1352] means for receiving new environmental data as input and predicting crop suitability using said predictive model;
[1353] means for recognizing the emotional state of a user;
[1354] means for adjusting a presentation method of the prediction result based on the emotional state;
[1355] means for providing the prediction result to a user;
[1356] A system including:
[1357] (Claim 2)
[1358] 10. The system of claim 1, wherein the means for receiving new environmental data as input receives data relating to temperature, rainfall, soil pH, and soil moisture.
[1359] (Claim 3)
[1360] 10. The system of claim 1, wherein the predictive model comprises a regression algorithm.
[1361] "Application example 2 when combining emotion engines"
[1362] (Claim 1)
[1363] A means for obtaining past weather information;
[1364] A means for acquiring soil information;
[1365] means for integrating and preprocessing the meteorological information and the soil information;
[1366] means for training a predictive model for the crop using the preprocessed data;
[1367] means for receiving new environmental data as input and predicting crop suitability using said predictive model;
[1368] means for providing the prediction result to a user;
[1369] means for recognizing a user's emotion;
[1370] means for adjusting the presentation of the prediction results based on the recognized emotions;
[1371] A means for the terminal to visually display the prediction result;
[1372] A system including:
[1373] (Claim 2)
[1374] 10. The system of claim 1, wherein the means for receiving new environmental data as input receives data relating to temperature, rainfall, soil pH, and soil moisture.
[1375] (Claim 3)
[1376] 10. The system of claim 1, wherein the predictive model comprises a random forest regression model. [Explanation of symbols]
[1377] 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 obtaining past weather information; A means for acquiring soil information; means for integrating and preprocessing the meteorological information and the soil information; means for training a predictive model for the crop using the preprocessed data; means for receiving new environmental data as input and predicting crop suitability using said predictive model; means for providing the prediction result to a user; A system including:
2. 2. The system of claim 1, wherein the means for receiving new environmental data as input receives data relating to temperature, rainfall, soil pH, and soil moisture.
3. The system of claim 1 , wherein the predictive model comprises a random forest regression model.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A