Information processing device, information processing method, and program

By using a structured neural network with subnetworks that incorporate time data represented by XY coordinates, the device addresses the challenge of temporal correlation in input variables, achieving accurate and explainable predictions.

JP7845563B1Active Publication Date: 2026-04-14FUJI ELECTRIC CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
FUJI ELECTRIC CO LTD
Filing Date
2025-08-28
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

Structured neural networks struggle to accurately represent the relationship between input variables strongly related to time, leading to decreased prediction accuracy for data with a strong temporal correlation.

Method used

The information processing device employs a structured neural network with subnetworks that incorporate time data represented by XY coordinates on a unit circle, allowing for accurate predictions by associating elapsed time with positions on the circle, thus maintaining the explanatory function of the prediction basis.

Benefits of technology

This approach enables accurate predictions for data with strong temporal correlations while preserving the ability to explain the prediction basis, enhancing the network's predictive capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007845563000001_ABST
    Figure 0007845563000001_ABST
Patent Text Reader

Abstract

The goal is to enable accurate predictions while maintaining explanatory power for the prediction basis, for data where time and input variables are strongly correlated. [Solution] An information processing device comprising: a time feature creation unit that creates time data indicating the elapsed time from the start of a predetermined period; a subnetwork creation unit that creates a plurality of subnetworks constituting a neural network for each input data indicating an input variable; and a subnetwork output unit that calculates and outputs output data when the input data and time data are input to the subnetwork, wherein the subnetwork creation unit creates subnetworks such that the input data and time data related to the input data are input to the subnetworks.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an information processing apparatus, an information processing method, and a program.

Background Art

[0002] In a neural network, when predicting an output from a plurality of input variables, a network structure that can explain why the output is predicted from each of the input variables is required. For example, as the above network structure, a structured neural network having a sub-network independent for each input variable in an input layer and an intermediate layer (hidden layer) is known (for example, Patent Document 1).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] By using a structured neural network, the relationship between the input variables and the output of each sub-network can be extracted, and the prediction basis of the learning model can be explained. However, in a structured neural network, since the relationship between different input variables is divided by the input layer and the intermediate layer, when a plurality of input variables are strongly related to, for example, the time in a time series, it is difficult to represent the relationship between the input variables and the time, and there is a risk that the prediction accuracy of the target variable will decrease.

[0005] The present invention has been made in view of the above problems, and an object thereof is to provide an information processing apparatus, an information processing method, and a program that can accurately predict while maintaining the function of explaining the prediction basis for data strongly related to time and input variables. [Means for solving the problem]

[0006] An information processing device according to a first aspect of the present invention that solves the aforementioned problems includes: a time feature creation unit that creates time data indicating the elapsed time from the beginning of a predetermined period; a subnetwork creation unit that creates a plurality of subnetworks constituting a neural network for each input data indicating an input variable; and a subnetwork output unit that calculates and outputs output data when the input data and the time data are input to the subnetwork, wherein the subnetwork creation unit creates the subnetwork so that the input data and the time data related to the input data are input to the subnetwork. death , The elapsed time is associated with a position on the unit circle such that it completes one revolution of the unit circle in the predetermined period, and the time data is represented by the X and Y coordinate values ​​at the position on the unit circle corresponding to the elapsed time. . [Effects of the Invention]

[0007] According to the present invention, it is possible to make accurate predictions for data that has a strong correlation with time and input variables, while maintaining the explanatory function of the prediction basis. [Brief explanation of the drawing]

[0008] [Figure 1] This is a block diagram showing the general functions of the information processing device 1. [Figure 2] This diagram illustrates the process of converting 24 hourly intervals within a day into 24 time data points represented by XY coordinates. [Figure 3] This table shows the relationship between time, time intervals, and the X and Y coordinates of the time data. [Figure 4] This figure shows an example of the schematic structure of structured neural network 10, including subnetworks 20A and 20B. [Figure 5] This graph shows an example of visualizing the input / output relationships of subnetwork 20A. [Figure 6A] This is a three-dimensional graph illustrating an example of the input / output relationships of subnetwork 20A. [Figure 6B]This is a graph of Figure 6A viewed from the +Z side towards the -Z side. [Figure 7] This block diagram shows an example of the hardware of the information processing device 1, which implements a function to explain the basis for predictions made by subnetworks 20A and 20B. [Modes for carrying out the invention]

[0009] The following matters will become clear from this specification and the accompanying drawings. The present invention will be described below with reference to the accompanying drawings, with reference to one embodiment thereof. Note that the input variables and prediction targets described below may differ depending on the data. Furthermore, the input variables are not limited to temperature and humidity in this embodiment, and may include other variables other than temperature and humidity, or other variables may be included instead of temperature and humidity. Also, the number of subnetworks is not limited to two, but may be three or more.

[0010] ===Information Processing Device 1=== Figure 1 is a block diagram illustrating the general functions of the information processing device 1. For the sake of clarity, the machine learning algorithm that the information processing device 1 processes is assumed to be a structured neural network 10 having, for example, two subnetworks 20A and 20B. Here, the predetermined cyclical period is assumed to be, for example, 24 hours, and the 24 time data points representing 24 one-hour intervals obtained by dividing 24 hours equally are denoted as T1 to T24.

[0011] Furthermore, the input variables are the predicted (or actual) hourly temperature and humidity values ​​for a given region, and the input data representing the predicted (or actual) temperature and humidity values ​​are designated as X11~X124 and X21~X224, respectively.

[0012] Furthermore, one of the outputs shall be the predicted hourly electricity demand in a given region, predicted based on the time data T1 to T24 and the input data X11 to X124 showing predicted temperature values, or the actual electricity demand corresponding to the actual values ​​of the input data X11 to X124, and the output data showing this predicted (or actual) electricity demand shall be Y11 to Y124. The other output shall be the predicted hourly electricity demand in a given region, predicted based on the time data T1 to T24 and the input data X21 to X224 showing predicted humidity values, or the actual electricity demand corresponding to the actual values ​​of the input data X21 to X224, and the output data showing this predicted (or actual) electricity demand shall be Y21 to Y224.

[0013] In subnetwork 20A, time data T1 to T24 and input data X11 to X124 correspond to output data Y11 to Y124, while in subnetwork 20B, time data T1 to T24 and input data X21 to X224 correspond to output data Y21 to Y224.

[0014] The information processing device 1 uses a structured neural network 10, including subnetworks 20A and 20B, to make accurate predictions for data that has a strong correlation between time and input variables, while maintaining explanatory power for the prediction basis.

[0015] Specifically, the information processing device 1 extracts the input-output relationship between the predicted temperature value for a predetermined region input to subnetwork 20A and the predicted power demand value for the predetermined region output from subnetwork 20A, every hour. The information processing device 1 makes accurate predictions for power demand predictions that have a strong correlation with time and temperature predictions, while maintaining the function to explain the basis of the predictions. Similarly, the information processing device 1 extracts the input-output relationship between the predicted humidity value for a predetermined region input to subnetwork 20B and the predicted power demand value for the predetermined region output from subnetwork 20B, every hour. The information processing device 1 makes accurate predictions for power demand predictions that have a strong correlation with time and humidity predictions, while maintaining the function to explain the basis of the predictions.

[0016] The information processing device 1 is comprised of a data acquisition unit 100, a time feature creation unit 200, a subnetwork creation unit 300, a prediction model creation unit 400, a prediction result output unit 500, and a subnetwork output unit 600.

[0017] <<Data acquisition unit 100>> The data acquisition unit 100 acts as an interface between the information processing device 1 and an external device (not shown), acquiring input data from an external source that is necessary for the time feature creation unit 200, subnetwork creation unit 300, prediction model creation unit 400, and prediction result output unit 500 to perform their respective processes.

[0018] The above input data is assumed to be input to the data acquisition unit 100 from an external device via a communication network (not shown). The communication network may be, for example, a LAN (Local Area Network), a WAN (Wide Area Network), a dedicated line, a power line communication network, or various public communication networks.

[0019] The external device may be (a) an integrated device that includes a keyboard (not shown) and a storage device (not shown) internally, or (b) two separate devices that each include a keyboard and a storage device. The input data acquired by the data acquisition unit 100 may be, for example, data obtained by an operator operating the keyboard of the external device, or it may be pre-stored data read from the storage device.

[0020] <<Time Feature Generation Unit 200>> The time feature generation unit 200 creates time data as features, which represents the elapsed time from the start of a predetermined period. When the predetermined period is one day, the elapsed time is expressed in seconds, minutes, or hours. For example, the elapsed time may be 24 time intervals obtained by dividing 24 hours equally into 24 parts.

[0021] The above time data is required when the subnetwork creation unit 300 creates a subnetwork, when the prediction model creation unit 400 creates a prediction model, when the prediction model creation unit 400 performs a prediction using the prediction model it has created, and when the subnetwork output unit 600 outputs the input / output relationship between the input / output data of subnetworks 20A and 20B in relation to the time data.

[0022] Figure 2 illustrates the process of converting 24 hourly intervals within a day into 24 time data points represented by XY coordinates. Figure 2 also includes a unit circle centered at the intersection of the X-axis (horizontal axis) and Y-axis (vertical axis) (the origin).

[0023] Furthermore, if we quantify the time intervals of 0:00, 1:00, ..., 23:00 as time divisions "0.00, 1.00, ..., 23.00", the 24 central angles θ(θ1~θ24)[degrees] of the unit circle are:

number

[0024] If we let θr (=15°) be the central angle of the unit circle every hour, then in the first quadrant, which is demarcated by the X-axis on the positive side of the origin and the Y-axis on the positive side of the origin, there are six central angles θ (θ1~θ6) that increase by θr starting from the X-axis. The central angles θ1~θ6 are θ1=θr, θ2=2θr, θ3=3θr, θ4=4θr, θ5=5θr, and θ6=6θr.

[0025] Furthermore, in the second quadrant, which is demarcated by the X-axis on the negative side of the origin and the Y-axis on the positive side of the origin, six central angles θ (θ7 to θ12) are set, increasing by θr from the central angle θ6. The central angles θ7 to θ12 are θ7=7θr, θ8=8θr, θ9=9θr, θ10=10θr, θ11=11θr, and θ12=12θr.

[0026] Furthermore, in the third quadrant, which is demarcated by the X-axis on the negative side of the origin and the Y-axis on the negative side of the origin, six central angles θ (θ13 to θ18) are set, increasing by θr from the central angle θ12. The central angles θ13 to θ18 are θ13=13θr, θ14=14θr, θ15=15θr, θ16=16θr, θ17=17θr, and θ18=18θr.

[0027] Furthermore, in the fourth quadrant, which is demarcated by the X-axis on the positive side of the origin and the Y-axis on the negative side of the origin, six central angles θ (θ19 to θ24) are set, increasing by θr from central angle θ18. The central angles θ19 to θ24 are θ19=19θr, θ20=20θr, θ21=21θr, θ22=22θr, θ23=23θr, and θ24=24θr.

[0028] The time data T1 to T24 consists of a set of two values ​​calculated using a sine function and a cosine function with different phases (or two sine functions with different phases, or two cosine functions with different phases) when 24 time periods are associated with the central angle θ of the unit circle, so that the unit circle completes one rotation every 24 hours. In this embodiment, 24 time periods, each representing an hourly interval within the period from 0:00 to 24:00 which cycles daily, are each associated with the central angle θ of a unit circle centered at the origins of the orthogonal X and Y axes, and the central angle θ is defined as the angle made counterclockwise from a line extending from the origin in the positive direction of the X axis. The time feature creation unit 200 then calculates the XY coordinate values ​​of the intersection points where a line extending from the center of the unit circle toward the circumference intersects the circumference for each of the 24 time periods with a central angle θ, and the calculated 24 XY coordinate values ​​t x ,t y This is output as 24 time data points T1 to T24, each representing a specific time.

[0029] Specifically, the XY coordinate values ​​(t) for each of the time data T1 to T24. x ,t y ) is, t x =cosθ, t yIt is expressed as = sinθ. That is, the time data T1 to T24 consists of combinations of two values obtained by the sine function sinθ and the cosine function cosθ. Also, the 24 hours are assumed to be "0:00, 1:00, ··· 23:00". And 0:00 is associated with the central angle of 0°. The XY coordinate values (t x , t y ) can be expressed as in equations (2) and (3) using the above equation (1).

[0030] [Number] [Number]

[0031] Figure 3 is a table showing the relationships among time, time intervals, and the X and Y coordinates of time data. [Time data in the first quadrant] When the time is 0:00, the time interval is 0.00, and from equation (1), the central angle θ is 0°. When the central angle θ is 0°, the XY coordinate values of the intersection point P0 where the straight line extending from the center of the unit circle to the circumference intersects the circumference become the time data T24 when the time is 0:00. That is, the time data T24 when the time is 0:00 is the combination of the value cos0° which is the X coordinate value t x and the value sin0° which is the Y coordinate value t y , represented as (cos0°, sin0°) = (1.00, 0.00).

[0032] Next, when the time becomes 1:00, the time interval is 1.00, and from equation (1), the central angle θ becomes θ1 = θr. When the central angle θ is θ1, the XY coordinate values of the intersection point P1 where the straight line extending from the center of the unit circle to the circumference intersects the circumference become the time data T1 when the time is 1:00. That is, the time data T1 when the time is 1:00 is the combination of the value cosθ1 which is the X coordinate value t x and the value sinθ1 which is the Y coordinate value t y , represented as (cos15°, sin15°) = (0.96, 0.26).

[0033] When the time is 2 o'clock, the time division is 2.00, and the time data T2 at this time is the value of the X coordinate t at the intersection point P2 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ2. x cosθ² and the Y-coordinate value t y This can be expressed as (cos30°, sin30°) = (0.86, 0.50) by combining sinθ².

[0034] When the time is 3 o'clock, the time division is 3.00, and the time data T3 at this time is the value of the X coordinate t at the intersection point P3 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ3. x cosθ3 and the Y-coordinate value t y This can be expressed as (cos45°, sin45°) = (0.70, 0.70) by combining sinθ3.

[0035] When the time is 4 o'clock, the time segment is 4.00, and the time data T4 at this time is the value of the X coordinate t at the intersection point P4 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ4. x cosθ4 and the Y-coordinate value t y The combination of sinθ4 is expressed as (cos60°, sin60°) = (0.50, 0.86).

[0036] When the time is 5 o'clock, the time segment is 5.00, and the time data T5 at this time is the value of the X coordinate t at the intersection point P5 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ5. x cosθ5 and the Y-coordinate value t y The combination of sinθ5 is expressed as (cos75°, sin75°) = (0.26, 0.96).

[0037] When the time is 6 o'clock, the time division is 6.00, and the time data T6 at this time is the value of the X coordinate t at the intersection point P6 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ6. xcosθ6 and the Y-coordinate value t y The combination of sinθ6 is expressed as (cos90°, sin90°) = (0.00, 1.00).

[0038] <Time data for the second quadrant> When the time is 7 o'clock, the time division is 7.00, and the time data T7 at this time is the value of the X coordinate t at the intersection point P7 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ7. x cosθ7 and the Y-coordinate value t y The combination of sinθ7 is expressed as (cos105°, sin105°) = (-0.26, 0.96).

[0039] When the time is 8 o'clock, the time division is 8.00, and the time data T8 at this time is the value of the X coordinate t at the intersection point P8 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ8. x cosθ8 and the Y-coordinate value t y The combination of sinθ8 is expressed as (cos120°, sin120°) = (-0.50, 0.86).

[0040] When the time is 9 o'clock, the time division is 9.00, and the time data T9 at this time is the value of the X coordinate t at the intersection point P9 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ9. x The cosθ9 and the Y-coordinate value t y The combination of sinθ9 is expressed as (cos135°, sin135°) = (-0.70, 0.70).

[0041] When the time is 10 o'clock, the time division is 10.00, and the time data T10 at this time is the value of the X coordinate t at the intersection point P10 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ10. x cosθ10 and the Y-coordinate value t y The combination of sinθ10 is expressed as (cos150°, sin150°) = (-0.86, 0.50).

[0042] When the time is 11:00, the time division is 11.00, and the time data T11 at this time is the value of the X coordinate t at the intersection point P11 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ11. x cosθ11 and the Y-coordinate value t y The combination of sinθ11 is expressed as (cos165°, sin165°) = (-0.96, 0.26).

[0043] When the time is 12 o'clock, the time division is 12.00, and the time data T12 at this time is the value of the X coordinate t at the intersection point P12 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ12. x1 cosθ12 and the Y-coordinate value t y The combination of sinθ12 is expressed as (cos180°, sin180°) = (-1.00, 0.00).

[0044] <Time data for the third quadrant> When the time is 13:00, the time division is 13.00, and the time data T13 at this time is the value of the X coordinate t at the intersection point P13 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ13. x cosθ13 and the Y-coordinate value t y The expression (cos195°, sin195°) is expressed as (-0.96, -0.25) by combining sinθ13.

[0045] When the time is 14:00, the time division is 14.00, and the time data T14 at this time is the value of the X coordinate t at the intersection point P14 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ14. x cosθ14 and the Y-coordinate value t y The combination of sinθ14 is expressed as (cos210°, sin210°) = (-0.86, -0.50).

[0046] When the time is 15:00, the time division is 15.00, and the time data T15 at this time is the value of the X coordinate t at the intersection point P15 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ15. x cosθ15 and the Y coordinate value t y The expression (cos225°, sin225°) = (-0.70, -0.70) is obtained by combining sinθ15.

[0047] When the time is 16:00, the time division is 16.00, and the time data T16 at this time is the value of the X coordinate t at the intersection point P16 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ16. x cosθ16 and the Y-coordinate value t y The expression (cos240°, sin240°) = (-0.50, -0.86) is obtained by combining sinθ16.

[0048] When the time is 17:00, the time division is 17.00, and the time data T17 at this time is the value of the X coordinate t at the intersection point P17 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ17. x cosθ17 and the Y-coordinate value t y The expression (cos255°, sin255°) is expressed as (-0.26, -0.96) by combining sinθ17.

[0049] When the time is 18:00, the time division is 18.00, and the time data T18 at this time is the value of the X coordinate t at the intersection point P18 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ18. x cosθ18 and the Y-coordinate value t y The combination of sinθ18 is expressed as (cos270°, sin270°) = (0.00, -1.00).

[0050] <Time data for the fourth quadrant> When the time is 19:00, the time division is 19.00, and the time data T19 is the value of the X coordinate t at the intersection point P19 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ19. x cosθ19 and the Y-coordinate value t y The combination of sinθ19 is expressed as (cos285°, sin285°) = (0.26, -0.96).

[0051] When the time is 20:00, the time division is 20:00, and the time data T20 at this time is the value of the X coordinate t at the intersection point P20 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ20. x cosθ² and the Y-coordinate value t y The combination of sinθ20 is expressed as (cos300°, sin300°) = (0.50, -0.86).

[0052] When the time is 21:00, the time division is 21:00, and the time data T21 at this time is the value of the X coordinate t at the intersection point P21 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ21. x cosθ²¹ and the Y-coordinate value t y The expression (cos315°, sin315°) = (0.70, -0.70) is obtained by combining sinθ21.

[0053] When the time is 22:00, the time division is 22:00, and the time data T22 at this time is the value of the X coordinate t at the intersection point P22 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ22. x The cosθ²² and the Y-coordinate value t y The combination of sinθ22 is expressed as (cos330°, sin330°) = (0.86, -0.50).

[0054] When the time is 23:00, the time division is 23:00, and the time data T23 at this time is the value of the X coordinate t at the intersection point P23 where a line extending from the center of the unit circle toward the circumference intersects the circumference, when the central angle θ is θ23. x cosθ23 and the Y-coordinate value t y The combination of sinθ23 is expressed as (cos345°, sin345°) = (0.96, -0.26).

[0055] Thus, the time data T1~T6 on the circumference of the unit circle in the first quadrant change stepwise as the central angle θ increases, gradually approaching the position of the intersection point P6 on the Y axis, which marks the boundary between the first and second quadrants. Similarly, the time data T7~T12 on the circumference of the unit circle in the second quadrant change stepwise as the central angle θ increases, gradually approaching the position of the intersection point P12 on the X axis, which marks the boundary between the second and third quadrants. Furthermore, the time data T13~T18 on the circumference of the unit circle in the third quadrant change stepwise as the central angle θ increases, gradually approaching the position of the intersection point P36 on the Y axis, which marks the boundary between the third and fourth quadrants. Finally, the time data T19~T24 on the circumference of the unit circle in the fourth quadrant change stepwise as the central angle θ increases, gradually approaching the position of the intersection point P0 on the X axis, which marks the boundary between the fourth and first quadrants. Therefore, when the day changes from one day to the next, it is possible to keep the numerical difference between the time data at 23:00 on the current day (0.96, -0.26) and the time data at 0:00 on the next day (1.00, 0.00) to a minimum.

[0056] The data indicating "time," the data indicating "time segment," and the time data T1 to T24 in Figure 3 may be stored, for example, in a storage device within the external device, in a storage device independent of the external device, or in the storage unit 700 provided by the information processing device 1.

[0057] In this embodiment, the predetermined period is set to 24 hours, which is one day, but it is not limited to this. For example, the predetermined period may be one month or one year.

[0058] When the specified period is one month, the elapsed time is expressed in days or hours. For the sake of clarity in the following explanation, we will assume that one month has 30 days.

[0059] Specifically, when expressing the elapsed time of a month in days, the number of elapsed time periods included in a month is 30. When calculating 30 time data points, the t included in equations (2) and (3) num You can set it to =30 and the central angle of the unit circle θr = 12°. On the other hand, when expressing the elapsed time in a month in hours, the number of elapsed hours in a month is 720, which is 24 hours divided equally into 24 parts for 30 consecutive days. When calculating 720 time data, the t included in equations (2) and (3) num Set it to =720 and set the central angle of the unit circle θr = 0.5°.

[0060] When the specified period is one year, the elapsed time can be expressed in months, days, hours, or seasons (spring, summer, autumn, winter). For the sake of clarity in the following explanation, we will assume that there are 365 days in a year.

[0061] Specifically, when expressing the elapsed time of a year in months, the number of elapsed time periods included in a year is 12. When calculating the 12 time data points, the t included in equations (2) and (3) num You can set it to =12 and the central angle of the unit circle θr = 30°. That's all you need to do.

[0062] Furthermore, when expressing the elapsed time of a year in days, the number of elapsed time points included in a year is 365. To calculate 365 time data points, the t included in equations (2) and (3) num Set it to =365 and set the central angle of the unit circle θr = 0.99°.

[0063] Furthermore, when expressing the elapsed time of a year in hours, the number of elapsed hours included in a year is 8760, which is obtained by dividing the 24 hours of a day into 24 equal parts for 365 consecutive days. When calculating 8760 time data, the t included in equations (2) and (3) num Set it to =8760 and set the central angle of the unit circle θr = 0.04°.

[0064] Furthermore, when expressing the elapsed time of a year in terms of the four seasons, the number of elapsed time periods included in a year is four, for spring, summer, autumn, and winter. When calculating the four time data points, the t included in equations (2) and (3) num Set it to =4 and set the central angle of the unit circle θr = 90°.

[0065] The predetermined period for the time data input to each of subnetworks 20A and 20B may include not only one day, but also periods of one month or one year. If the predetermined period is only one day, the time data input to each of subnetworks 20A and 20B is t, which is represented by XY coordinates. x t y There will only be two data points, but for example, if the predetermined period includes both a 1-day and a 1-month period, the time data input to each of the subnetworks 20A and 20B will be t, which is shown in XY coordinates when the predetermined period is 1 day. x t y And, when the predetermined period is 1 month, other t shown in XY coordinates x t y This results in four data points, including the following.

[0066] Time data for predetermined periods of one month or one year is also associated with the time and time segment data shown in Figure 3 and stored, for example, in a storage device within the external device, a storage device independent of the external device, or in the storage unit 700 of the information processing device 1.

[0067] Furthermore, as can be seen from the fact that the calculation process for time data converts it to angles during the calculation, if the variable can be expressed in terms of angles, the conversion from time to angle can be omitted and the same calculation can be performed even if it is not time data. For example, this applies to wind direction in wind power generation forecasting.

[0068] <<Subnetwork Creation Unit 300>> The subnetwork creation unit 300 creates subnetworks 20A and 20B that are included in the structured neural network 10.

[0069] Figure 4 shows an example of a schematic structure of the structured neural network 10, including subnetworks 20A and 20B.

[0070] The structured neural network 10 consists of an input layer 30, a hidden layer 40, and an output layer 50. The input layer 30 includes input layers 30A and 30B corresponding to subnetworks 20A and 20B, respectively, and the hidden layer 40 includes hidden layers 40A and 40B corresponding to subnetworks 20A and 20B, respectively. Input layer 30A and hidden layer 40A constitute subnetwork 20A, and input layer 30B and hidden layer 40B constitute subnetwork 20B. The former input layer 30A and hidden layer 40A and the latter input layer 30B and hidden layer 40B are independent of each other. In other words, subnetworks 20A and 20B perform calculations independently. As a result, input data input to subnetworks 20A and 20B is processed within subnetworks 20A and 20B without mutual influence between them.

[0071] Subnetwork 20A, for example, outputs output data Y11-Y124 representing predicted power demand in a given region when it receives input data X11-X124 representing predicted temperature values ​​in that region and time data T1-T24. Input layer 30A includes input nodes 31A, 32A, and 33A. Input node 31A receives input data X11-X124, and input nodes 32A and 33A receive X coordinate values ​​t that represent the time data T1-T24 corresponding to the input data X11-X124, respectively. x and the value of the Y coordinate t y The following is input. The intermediate layer 40A includes multiple intermediate nodes 41A connected in multiple stages. The intermediate nodes 41A are connected to the input nodes 31A, 32A, and 33A in predetermined relationships, and output data Y11 to Y124 corresponding to the input data X11 to X124 and time data T1 to T24 are output from the intermediate layer 40A. Specifically, calculations are performed for each data point in time for the input data X11 to X124 and time data T1 to T24. For example, when making a prediction when the data for one time point is input data X11 and time data T1, input node 31A receives input data X11, and input nodes 32A and 33A receive the X coordinate value t that represents the time data T1 corresponding to input data X11. x and the value of the Y coordinate t y The data is input, and the hidden layer 40A outputs output data Y11 corresponding to the input data X11 and time data T1. In this way, the subnetwork 20A can represent the relationship between time and the input variable by inputting data related to time together, and can make accurate predictions while maintaining explanatory functions regarding the input time.

[0072] Subnetwork 20B, for example, outputs output data Y11-Y124 indicating predicted power demand in a given region when it receives input data X21-X224 indicating predicted humidity values ​​in that region and time data T1-T24. Input layer 30B includes input nodes 31B, 32B, and 33B. Input node 31B receives input data X21-X224, and input nodes 32B and 33B receive X coordinate values ​​t, which respectively represent the time data T1-T24 corresponding to the input data X21-X224. x and the value of the Y coordinate t y The following is input. The intermediate layer 40B includes multiple intermediate nodes 41B connected in multiple stages. The intermediate nodes 41B are connected to the input nodes 31B, 32B, and 33B in predetermined relationships, and output data Y21 to Y224 corresponding to the input data X21 to X224 and time data T1 to T24 is output from the intermediate layer 40B. Specifically, calculations are performed for each data point in time for the input data X21 to X224 and time data T1 to T24. For example, when making a prediction when the data for one time point is input data X21 and time data T1, input node 31B receives input data X21, and input nodes 32B and 33B receive the X coordinate value t that represents the time data T1 corresponding to input data X21. x and the value of the Y coordinate t y The data is input, and the hidden layer 40B outputs output data Y21 corresponding to the input data X21 and time data T1. In this way, the subnetwork 20B can represent the relationship between time and the input variable by inputting data related to time together, and can make accurate predictions while maintaining explanatory functions regarding the input time.

[0073] The intermediate layers 40A and 40B of the subnetworks 20A and 20B are connected to the output layer 50 in a predetermined relationship. The output data output from the intermediate layers 40A and 40B is appropriately corrected in the output layer 50 by constants of, for example, bias nodes (not shown).

[0074] In this way, the structured neural network 10 is configured to include subnetworks 20A and 20B created by the subnetwork creation unit 300.

[0075] <<Predictive Model Creation Unit 400>> The prediction model creation unit 400 creates a prediction model by training the structured neural network 10, which includes subnetworks 20A and 20B.

[0076] To train subnetwork 20A, first training data is prepared, which includes input data X11~X124 showing actual temperature values ​​in a given region, time data T1~T24 corresponding to the input data X11~X124, and output data Y11~Y124 showing actual power demand values ​​corresponding to the input data X11~X124. Subnetwork 20A then inputs the input data X11~X124 to input node 31A and input nodes 32A and 33A with the X coordinate values ​​t representing the time data T1~T24. x and the value of the Y coordinate t y When input is received, the learning process is performed so that output data Y11~Y124 is output from the final stage node in intermediate node 41A.

[0077] Furthermore, in order to train subnetwork 20B, a second set of training data is prepared, which includes input data X21~X224 showing actual humidity values ​​in a predetermined region, time data T1~T24 corresponding to the input data X21~X224, and output data Y21~Y224 showing actual power demand values ​​corresponding to the input data X21~X224. Then, subnetwork 20B inputs the input data X21~X224 to input node 31B and input nodes 32B and 33B receive the X coordinate values ​​t representing the time data T1~T24. x and the value of the Y coordinate t y When input is received, the learning process is performed so that output data Y21~Y224 is output from the final stage node in intermediate node 41B.

[0078] In this way, the prediction model creation unit 400 completes the creation of the prediction model by training subnetwork 20A using the first training data and training subnetwork 20B using the second training data. This prediction model is stored, for example, in the storage unit 700 of the information processing device 1.

[0079] Furthermore, the first training data used when training subnetwork 20A includes hourly time data T1-T24 that cycles daily, and input data X11-X124 that shows actual temperature values ​​for a predetermined region corresponding to the time data T1-T24. However, other time data that cycles with periods other than one day may also be included. For example, an input node may be added to input layer 30A, and at least one X-coordinate value t representing time data from among daily time data that cycles monthly, hourly time data that cycles monthly, monthly time data that cycles yearly, daily time data that cycles yearly, hourly time data that cycles yearly, and seasonal time data that cycles yearly. x and the value of the Y coordinate t y The data may also be input to the added input node. This allows the subnetwork 20A to learn to output output data from the intermediate layer 40A that indicates the actual value of electricity demand in a given region, corresponding to the time data, when input data indicating the actual value of temperature in a given region, corresponding to the time data, is input to the input layer 30A. Then, when input data indicating the predicted value of temperature in a given region is input to the input layer 30A, the learned subnetwork 20A will output output data indicating the predicted value of electricity demand in the given region, based on the learning results. The second training data used in subnetwork 20B can also be configured in the same way as the first training data.

[0080] <<Prediction result output unit 500>> The prediction result output unit 500 performs predictions using the prediction model created by the prediction model creation unit 400 and outputs the prediction results. Specifically, the prediction result output unit 500 receives input data X11 to X124 indicating predicted temperature values ​​in a predetermined region at input node 31A of the subnetwork 20A, and input nodes 32A and 33A receive X coordinate values ​​t indicating time data T1 to T24. x and the value of the Y coordinate t y The following is input, and further input data X21~X224 indicating predicted humidity values ​​in a predetermined area is input to input node 31B of subnetwork 20B, and the X coordinate values ​​t indicating time data T1~T24 are input to input nodes 32B and 33B. x and the value of the Y coordinate t y When input is received, the output node 51 of the output layer 50 outputs output data showing the predicted value of power demand in a predetermined region, associated with input data X11~X124 showing the predicted value of temperature in the predetermined region, input data X21~X224 showing the predicted value of humidity in the predetermined region, and time data T1~T24. The prediction results from the prediction result output unit 500 may be visualized and displayed using numerical values ​​or graphs.

[0081] <<Subnetwork output section 600>> The subnetwork output unit 600 extracts input data X11~X124 and time data T1~T24, which represent predicted temperature values ​​in a predetermined region, input to the input layer 30A of subnetwork 20A, and output data Y11~Y124, which represent predicted power demand values ​​in the predetermined region, output from the intermediate layer 40A of subnetwork 20A. The subnetwork output unit 600 visualizes and outputs the input-output relationship between the predicted temperature values ​​and the predicted power demand values ​​in the predetermined region, in relation to time, using numerical values, graphs, etc. Furthermore, the subnetwork output unit 600 extracts input data X21~X224 and time data T1~T24, which represent predicted humidity values ​​in a predetermined region, input to the input layer 30B of subnetwork 20B, and output data Y21~Y224, which represent predicted power demand values ​​in the predetermined region, output from the intermediate layer 40B of subnetwork 20B at the same time. The subnetwork output unit 600 visualizes and outputs the input-output relationship between the predicted humidity values ​​and the predicted power demand values ​​in the predetermined region, in relation to time, using numerical values, graphs, etc.

[0082] Figure 5 is a graph showing an example of the input-output relationships of subnetwork 20A, visualized and output from subnetwork output unit 600. The horizontal axis represents the magnitude of input data X11 to X124 input to input layer 30A, and the vertical axis represents the magnitude of output data Y11 to Y124 output from hidden layer 40A. In Figure 5, for example, in subnetwork 20A, a curve (dashed line) showing the input-output relationship between input data X112 and output data Y112 at 12 o'clock, and a curve (dotted line) showing the input-output relationship between input data X124 and output data Y124 at 24 o'clock are shown. In this way, subnetwork output unit 600 can display the input-output relationships between input and output data in subnetwork 20A in relation to time. Similarly, subnetwork output unit 600 can also display the input-output relationships between input and output data in subnetwork 20B in relation to time.

[0083] FIG. 6A is a three-dimensional graph showing an example of the input / output relationship of the visualized sub-network 20A output from the sub-network output unit 600. The direction along the X-axis indicates the value t of the X coordinate x and the direction along the Y-axis indicates the value t of the Y coordinate y and the direction along the Z-axis indicates the magnitude of the output data Y11 to Y124. As shown in FIG. 2, the value t of the X coordinate x and the value t of the Y coordinate y Assume that the time data T1 to T24 are arranged so as to go around a unit circle centered at the intersection (origin) where both are 0. Further, FIG. 6B is a graph of the graph of FIG. 6A viewed from the +Z side toward the -Z side. FIGS. 6A and 6B are graphs obtained by visualizing by connecting the output data Y11 to Y124 at each time interval of one hour.

[0084] In FIG. 6A, the section D1 of the bidirectional arrow indicates the magnitude of the output data with respect to time, and in FIG. 6B, the section D2 of the bidirectional arrow indicates the magnitude of the input variable, and the value of the input variable increases as it goes toward the +Y side. Thus, in the sub-network output unit 600, the input / output relationship between the input / output data in the sub-network 20A can be associated with time and displayed as a graph so that it can be confirmed at once. Similar to the sub-network 20A, the sub-network output unit 600 can also associate the input / output relationship between the input / output data in the sub-network 20B with time and display it as a graph so that it can be confirmed at once.

[0085] Therefore, by providing the sub-network output unit 600, it becomes possible to extract the input / output relationships of the sub-networks 20A and 20B and to visualize the prediction results by the sub-networks 20A and 20B in an easy-to-understand manner.

[0086] ==Information Processing Apparatus 1== FIG. 7 is a block diagram showing an example of the hardware of an information processing apparatus 1 that realizes a function of explaining the basis for prediction when the sub-networks 20A and 20B perform prediction.

[0087] The information processing device 1 comprises a processor 1010, a main memory 1020, an auxiliary memory 1030, an input device 1040, an output device 1050, and a communication device 1060.

[0088] The information processing device 1 is, for example, a personal computer, an office computer, various server devices, a general-purpose machine, etc. The information processing device 1000 may be implemented in whole or in part using virtual information processing resources provided using virtualization technology, such as a virtual server provided by a cloud system.

[0089] The processor 1010 is composed of components such as a CPU (Central Processing Unit), MPU (Micro Processing Unit), GPU (Graphics Processing Unit), FPGA (Field Programmable Gate Array), ASIC (Application Specific Integrated Circuit), and AI (Artificial Intelligence) chip.

[0090] The main memory 1020 is a device for storing programs and data, and can be, for example, ROM (Read Only Memory), RAM (Random Access Memory), or non-volatile memory (NVRAM (Non-Volatile RAM)).

[0091] The auxiliary storage device 1030 is, for example, an SSD (Solid State Drive), a hard disk drive, an optical storage device (CD (Compact Disc), DVD (Digital Versatile Disc), etc.), a storage system, an IC card, an SD card, a reader / writer for optical recording media, or the storage area of ​​a cloud server. Programs and data can be read into the auxiliary storage device 1030 via a recording media reader or a communication device 1060. Programs and data stored in the auxiliary storage device 1030 are read into the main memory 1020 as needed.

[0092] The input device 1040 is an interface that accepts input from an external source, and can be, for example, a keyboard, mouse, touch panel, card reader, pen-input tablet, or voice input device.

[0093] The output device 1050 is an interface that outputs various information such as processing progress and processing results. The output device 1050 is, for example, a display device that visualizes the above information (LCD (Liquid Crystal Display), graphics card, etc.), a device that converts the above information into sound (speaker, etc.), or a device that converts the above information into text (printer, etc.). The information processing device 1000 may also be configured to input and output information to and from other devices via the communication device 1060.

[0094] The input device 1040 and the output device 1050 constitute a user interface for receiving and presenting information with the user.

[0095] The communication device 1060 is a device that enables communication (wired or wireless communication) with other devices via a communication infrastructure, and is configured using, for example, a NIC (Network Interface Card), a wireless communication module, a USB module, etc.

[0096] Furthermore, the information processing device 1 may have, for example, an operating system, a file system, a DBMS (Database Management System) (relational database, NoSQL, etc.), a KVS (Key-Value Store), etc. installed on it.

[0097] The functions of the time feature creation unit 200, subnetwork creation unit 300, prediction model creation unit 400, prediction result output unit 500, and subnetwork output unit 600 are implemented by the processor 1010 of the information processing device 1, which reads and executes control programs stored in the main memory 1020. The storage unit 700 of the information processing device 1 is implemented by the main memory 1020 and the auxiliary storage unit 1030. The data acquisition unit 100 is implemented by the input device 1040 and the communication device 1060, and among the functions of the subnetwork output unit 600, the function of outputting the relationship between input and output data associated with time is implemented by the output device 1050 and the communication device 1060.

[0098] ==Summary== As described above, the information processing device 1 includes a time feature creation unit 200 that creates time data indicating the elapsed time from the start of a predetermined period, a subnetwork creation unit 300 that creates subnetworks 20A and 20B constituting the structured neural network 10 for each input data indicating the input variables, and a subnetwork output unit 600 that calculates and outputs output data when the input data and time data are input to subnetworks 20A and 20B. The subnetwork creation unit 300 creates subnetworks 20A and 20B so that the input data and time data related to the input data are input to subnetworks 20A and 20B.

[0099] Furthermore, in the information processing device 1, the elapsed time is associated with a position on the unit circle so that it completes one revolution of the unit circle in a predetermined period, and the time data is data represented by the X and Y coordinate values ​​of the position on the unit circle corresponding to the elapsed time.

[0100] Furthermore, in the information processing device 1, the predetermined period may include periods of one month or one year in addition to one day. When the predetermined period is one month, the elapsed time is expressed in units of days or hours. When the predetermined period is one year, the elapsed time is expressed in units of months, days, hours, or seasons.

[0101] Furthermore, in the information processing device 1, the subnetwork creation unit 300 can create subnetworks 20A and 20B into which input data representing one input variable and time data having one time period are input. Alternatively, subnetworks 20A and 20B can be created into which input data representing one input variable and multiple time data having different time periods are input.

[0102] Furthermore, in the information processing device 1, the subnetwork output unit 600 visualizes and outputs the relationship between the input data and time data input to subnetworks 20A and 20B and the output data output from subnetworks 20A and 20B. This makes it possible to clearly explain why the values ​​of the input data and the corresponding output data in subnetworks 20A and 20B are what they are.

[0103] Furthermore, the information processing device 1 further includes a prediction model creation unit 400 that creates a prediction model by learning with a structured neural network 10 including subnetworks 20A and 20B, and a prediction result output unit 500 that outputs the prediction results made by the prediction model.

[0104] Furthermore, by employing the information processing device 1, it becomes possible to accurately predict data that has a strong correlation with time and input variables while maintaining the explanatory function of the prediction basis.

[0105] This embodiment is provided to facilitate understanding of the present invention and is not intended to limit its interpretation. The present invention may be modified or improved without departing from its spirit, and equivalents thereof are also included. [Explanation of Symbols]

[0106] 1. Information Processing Device 10 Structured Neural Networks 20A, 20B Subnetwork 30, 30A, 30B Input Layer 31A, 32A, 33A, 31B, 32B, 33B Input Nodes 40,40A,40B middle layer 41A, 41B intermediate node 50 Output Layers 51 Output Nodes 100 Data acquisition unit 200-hour feature generation unit 300 Subnetwork Creation Section 400 Predictive Model Creation Department 500 Prediction Result Output Unit 600 Subnetwork Output Section 700 Storage section 1010 Processor 1020 Main storage 1030 Auxiliary storage 1040 Input device 1050 Output device 1060 Communication equipment

Claims

1. A time feature creation unit that creates time data indicating the elapsed time from the start of a predetermined period, A subnetwork creation unit that creates multiple subnetworks that constitute a neural network for each input data representing an input variable, A subnetwork output unit that calculates and outputs output data when the input data and the time data are input to the subnetwork, Includes, The subnetwork creation unit, Create the subnetwork so that the input data and the time data related to the input data are input to the subnetwork. The elapsed time is associated with a position on the unit circle such that it completes one revolution of the unit circle in the predetermined period. The aforementioned time data is represented by the X and Y coordinate values ​​at the position on the unit circle corresponding to the elapsed time. Information processing device.

2. An information processing apparatus according to claim 1, The aforementioned predetermined period is at least one period of one day, one month, or one year. When the predetermined period is one day, the elapsed time is expressed in seconds, minutes, or hours. When the aforementioned predetermined period is one month, the elapsed time is expressed in days or hours. When the predetermined period is one year, the elapsed time is expressed in months, days, or hours. Information processing device.

3. An information processing apparatus according to claim 2, When the predetermined period is one year, the elapsed time is measured in months, days, hours, or seasons. Information processing device.

4. An information processing apparatus according to claim 1, The subnetwork creation unit creates a subnetwork for each input variable, into which one input data and one time data are input. Information processing device.

5. An information processing apparatus according to claim 1, The subnetwork creation unit creates a subnetwork for each input variable, into which one input data and multiple time data are input. Information processing device.

6. An information processing apparatus according to claim 1, The subnetwork output unit visualizes and outputs the relationship between the input data and time data input to the subnetwork and the output data output from the subnetwork. Information processing device.

7. An information processing apparatus according to claim 1, A predictive model creation unit that creates a predictive model by performing training on the neural network including the subnetwork, A prediction result output unit that outputs the prediction results made by the prediction model described above, Includes Information processing device.

8. The first step is to create time data that shows the elapsed time from the start of a predetermined period, The second step involves creating multiple subnetworks that make up the neural network, for each input data representing the input variables. A third step involves calculating and outputting output data when the aforementioned input data and the aforementioned time data are input to the subnetwork, Includes, In the second step described above, Create the subnetwork so that the input data and the time data related to the input data are input to the subnetwork. In the first step described above, The elapsed time is associated with a position on the unit circle such that it completes one revolution of the unit circle in the predetermined period. The aforementioned time data is represented by the X and Y coordinate values ​​at the position on the unit circle corresponding to the elapsed time. Information processing methods.

9. On the computer, A first process that creates time data indicating the elapsed time from the start of a predetermined period, A second process involves creating multiple subnetworks that constitute the neural network, for each input data representing the input variables. A third process that calculates and outputs output data when the aforementioned input data and the aforementioned time data are input to the subnetwork, Make it run, In the second process described above, Create the subnetwork so that the input data and the time data related to the input data are input to the subnetwork. In the first process, The elapsed time is associated with a position on the unit circle such that it completes one revolution of the unit circle in the predetermined period. The aforementioned time data is represented by the X and Y coordinate values ​​at the position on the unit circle corresponding to the elapsed time. program.

Citation Information

Patent Citations

  • Plant load predicting method, steady plant simulator, optimum operating method of plant, and optimum designing method of plant

    JP2003084805A

  • Neural network learning method

    JP2011054200A

  • Internal combustion engine control device, on-vehicle electronic control unit, machine learning system, internal combustion engine control method, electronic control unit manufacturing method and output parameter calculation device

    JP2020125694A

  • Object processing method based on time and value factors

    US20230342797A1

  • Optimal menu determination system, optimal menu determination method, and program

    WO2018016037A1