WO2021106216A1 - 行動判定装置、行動判定システム、行動判定方法及びプログラム - Google Patents
行動判定装置、行動判定システム、行動判定方法及びプログラム Download PDFInfo
- Publication number
- WO2021106216A1 WO2021106216A1 PCT/JP2019/046859 JP2019046859W WO2021106216A1 WO 2021106216 A1 WO2021106216 A1 WO 2021106216A1 JP 2019046859 W JP2019046859 W JP 2019046859W WO 2021106216 A1 WO2021106216 A1 WO 2021106216A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- behavior
- measurement data
- determination
- action
- Prior art date
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/1036—Measuring load distribution, e.g. podologic studies
- A61B5/1038—Measuring plantar pressure during gait
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
- A61B5/1123—Discriminating type of movement, e.g. walking or running
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/72—Signal processing specially adapted for physiological signals or for diagnostic purposes
- A61B5/7235—Details of waveform analysis
- A61B5/7264—Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
Definitions
- the present invention relates to an action determination device, an action determination system, an action determination method, and a program.
- IoT Internet of Things
- the behavior determination device first generates time-series data in which acceleration is measured by a sensor such as an acceleration sensor. Then, the action determination device cuts out the data from the time series data using the time window. Further, the behavior determination device calculates a plurality of features from the time series data by changing the size of the time window.
- the feature amount is a statistic such as average or variance, or an FFT (Fast Fourier Transform) power spectrum or the like. Based on such a feature amount, the action determination device determines an individual action by assuming actions such as stopping, running, and walking. If such individual behaviors can be determined, it is possible to determine what kind of behavior is being performed as a whole, and a method that enables highly accurate behavior determination is known (see, for example, Patent Document 1 and the like). ..
- the behavior identification device acquires sensor data indicating acceleration or the like worn by the user or measured by an acceleration sensor or the like carried by the user by communication. Then, the action identification device uses an identification model such as a neural network, an SVM (Support Vector Machine), a Bayesian network, or a decision tree to stop, walk, run, go up and down stairs, and make a train. Classify as one of riding, riding in a car, driving a bicycle, etc. Further, after the action is identified, the time interval until the next identification process is started is calculated, and the action identification device performs the next identification process when the calculated time elapses. A method of suppressing power consumption in this way is known (see, for example, Patent Document 2 and the like).
- one embodiment of the present invention aims to accurately determine the action being performed by the user.
- the behavior determination device is an behavior determination device having a classification model used for classifying actions performed by a user.
- a measurement data acquisition unit that acquires measurement data indicating pressure or force measured by one or more sensors installed on the bottom of the user's foot, and a measurement data acquisition unit. It includes a determination unit that processes the measurement data, calculates data features, and determines the behavior of the user using the classification model.
- FIG. 1 is a functional block diagram showing a configuration example of the system.
- the behavior determination system 100 includes a measurement device (as shown in the figure, the following example is an example of a shoe-shaped device) 2, an information terminal 3, a server device 5, and the like.
- the behavior determination system 100 may further include an information processing device such as a management terminal 6.
- the illustrated behavior determination system 100 will be described as an example.
- the behavior determination system 100 shown in the figure is an example in which the server device 5 serves as the behavior determination device.
- the server device 5 will be described as an example of the action determination device, but the action determination device may be used in a form other than the figure shown.
- the shoe 1 used by the user (hereinafter, the configuration is the same on the left and right, and only one of the explanations is given. In addition, the shoes are paired on the left and right).
- the measuring device 2 is provided.
- the measuring device 2 has a functional configuration including a sensor unit 21, a communication unit 22, and the like.
- the measurement device 2 first measures the pressure on the bottom of the user's foot by the sensor unit 21.
- the sensor unit 21 may measure the force on the bottom surface of the user's foot.
- the communication unit 22 transmits the measurement data and the like measured by the sensor unit 21 to the information terminal 3 by wireless communication such as Bluetooth (registered trademark) or wireless LAN (Local Area Network).
- wireless communication such as Bluetooth (registered trademark) or wireless LAN (Local Area Network).
- the information terminal 3 is, for example, an information processing device such as a smartphone, a tablet, a PC (Personal Computer), or a combination thereof.
- the measurement device 2 transmits measurement data to the information terminal 3 every 10 ms (milliseconds, 100 Hz), for example. In this way, the measurement device 2 transmits the measurement data to the information terminal 3 at predetermined intervals set in advance.
- the sensor unit 21 is realized by, for example, a pressure sensor 212 or the like installed at one or more on a so-called insole (insole) type base material 211 or the like.
- the pressure sensor 212 is not limited to being installed on the insole.
- the pressure sensor 212 may be installed on socks, soles, or the like.
- the sensor may further include a shear force (friction force) sensor, an acceleration sensor, a temperature sensor, a humidity sensor, or a combination thereof.
- the insole has a mechanism for changing the color (a mechanism for giving a visual stimulus) or a mechanism for deforming the material or changing the hardness (a mechanism for giving a tactile stimulus) under the control from the information terminal 3 side. ) May be provided.
- the information terminal 3 may be fed back with the state of walking or foot shown to the user. Further, the communication unit 22 may transmit position data or the like by GPS (Global Positioning System) or the like. The position data may be acquired by the information terminal 3.
- GPS Global Positioning System
- the information terminal 3 transmits measurement data received from the measurement device 2 to the server device 5 via a network 4 such as the Internet at predetermined intervals (for example, every 10 seconds) set in advance.
- the information terminal 3 acquires data indicating the walking or foot condition of the user from the server device 5 and displays it on the screen, feeds back the walking or foot condition to the user, and selects shoes. It may have a function to support.
- the measurement data or the like may be directly transmitted from the measurement device 2 to the server device 5.
- the information terminal 3 is used, for example, for an operation on the measuring device 2 or feedback to the user.
- the server device 5 has, for example, a functional configuration including a basic data input unit 501, a measurement data receiving unit 502, a data analysis unit 503, an action determination unit 507, and a database 521. Further, as shown in the figure, the server device 5 may have a functional configuration including a life log writing unit 504 and the like. Hereinafter, the server device 5 will be described by taking the illustrated functional configuration as an example, but the server device 5 is not limited to the illustrated functional configuration.
- the basic data input unit 501 performs a basic data input procedure for accepting settings of basic data such as a user and shoes. For example, the settings accepted by the basic data input unit 501 are registered in the user data 522 or the like on the database 521.
- the measurement data receiving unit 502 performs a measurement data receiving procedure for receiving data or the like transmitted from the measuring device 2 via the information terminal 3. Then, the measurement data receiving unit 502 registers the received data in the measurement data 524 or the like on the database 521.
- the data analysis unit 503 performs a data analysis procedure that analyzes the measurement data 524 and the like and generates the data 525 and the like after the analysis process.
- the life log writing unit 504 registers the life log data 523 in the database 521.
- the learning model generation unit 505 performs learning processing based on the learning data 526 and the like. By performing the learning process in this way, the learning model generation unit 505 generates a learning model.
- the action determination unit 506 performs an action determination procedure for determining what kind of action the user is taking by an action determination process or the like.
- the administrator can access the server device 5 via the network 4 by the management terminal 6 or the like. Then, the administrator can confirm the data managed by the server device 5 or perform maintenance and the like.
- the database 521 holds data such as user data 522, life log data 523, measurement data 524, analysis processing data 525, learning data 526, and behavior data 527.
- each data has the following structure.
- FIG. 2 is a diagram showing an example of data.
- the user data 522 includes “user ID (identification)", “name”, “shoe ID”, “gender”, “date of birth”, “height”, “weight”, “shoe size”, and the like. It is data having items such as “registration date” and “update date”. That is, the user data 522 is data for inputting user characteristics and the like.
- FIG. 3 is a diagram showing an example of data.
- the life log data 523 includes “log ID”, “date and time”, “user ID”, “scheduled day”, “destination”, “distance traveled”, “step count”, and " It is data having items such as “average walking speed”, “most position information (GPS)”, “registration date”, and “update date”. That is, the life log data 523 is data indicating the user's behavior (a schedule may be included).
- FIG. 4 is a diagram showing an example of data.
- the measurement data 524 includes “date and time”, “user ID”, “left foot 1st sensor: hindfoot pressure value”, “left foot 2nd sensor: outer midfoot pressure value”, and “ Left foot 3rd sensor: outer forefoot pressure value ",” left foot 4th sensor: forefoot thumb pressure value “,” left foot 5th sensor: medial forefoot pressure value ",” left foot 6th sensor: middle foot center pressure value " , “Left foot 7th sensor: Forefoot center pressure value”, “Right foot 1st sensor: Hindfoot pressure value”, “Right foot 2nd sensor: Outer midfoot pressure value”, “Right foot 3rd sensor: Outer forefoot pressure value” "Part pressure value”, “Right foot 4th sensor: Forefoot thumb pressure value”, “Right foot 5th sensor: Medial forefoot pressure value”, “Right foot 6th sensor: Midfoot central part pressure value” and “Right foot 7th sensor” : Data having items such as "pressure value at the center of the forefoot”.
- 5 and 6 are diagrams showing an example of data.
- the post-analysis data 525 is data showing the result of analyzing the measurement data and calculating the peak and the like and the setting contents of the window and the like.
- the "window number” (window No.) is a serial number or identification number for identifying each window when there are a plurality of windows.
- Window start time indicates the time when the window starts.
- Window end time indicates the time when the window ends.
- Peak value is the value indicated by the peak point.
- Peak appearance time indicates the time when the peak point was extracted.
- Time distance between peaks indicates a value obtained by averaging the time intervals from the time when the previous peak point is extracted to the appearance of the next peak point (the target peak point).
- Time distance before and after the peak (peak width) indicates the time interval at which data indicating a predetermined value or more appears before and after a certain peak point.
- Time point maximum value time column data of all sensors for one foot is data that continuously stores the maximum value at each time point of the measurement data measured by all the sensors for one foot in chronological order.
- Minimum value between peaks of time point maximum value time column data of all one-leg sensors indicates the minimum value between the peak point indicated by “time point maximum value time column data of all one-legged sensors” and the next peak point.
- Time point maximum value time column data of the forefoot sensor on one foot is data that continuously stores the maximum value at each time point of the measurement data measured by the sensor that measures the forefoot part among all the sensors. is there.
- FFT fast Fourier transform
- the training data 526 includes, for example, "window number”, “statistical feature”, “peak feature”, “walking cycle feature”, “sole pressure deflection feature”, “FFT feature”, and “behavior label” as shown in the figure. Etc. are the data indicating.
- the "window number" is the same data as the post-analysis data 525.
- Statistical features are values obtained by statistically processing pressure values, such as maximum, median, mean and standard deviation.
- Peak features include the number of peak points, the interval between peak points (including values obtained by statistical processing such as mean value and standard deviation), and peak width (statistical processing such as mean value and standard deviation). (Including the value obtained by statistical processing), the value that becomes the peak point (including the value obtained by statistical processing such as the average value and the standard deviation), and the like.
- the "walking cycle feature" is a value obtained by analyzing leg period data or the like indicating a walking step.
- the "sole pressure deflection feature” is a value obtained by analyzing how the pressure applied to the sole of the foot is biased in the anteroposterior direction and the medial-lateral direction.
- the "FFT feature” is a value obtained from the processing result of performing FFT on the data obtained by summing the pressure values measured by all the sensors for one foot into a time series. A detailed description of the ⁇ FFT feature> will be described later.
- the "behavior label” indicates the classification of the behavior that was being performed among the pre-classified user behaviors.
- the behavior data 527 is data showing the result of determining the user's behavior by the behavior determination unit 506. That is, the action data 527 holds what kind of action the user has taken.
- the user data 522 and the life log data 523 are not essential data.
- the measurement data 524, the post-analysis data 525, and the learning data 526 do not have to be the data as shown. Further, each data does not have to have all the items as shown in the figure. That is, the measurement data 524 may be data indicating the pressure or force measured by the sensor unit 21. Therefore, statistical values such as mean value, variance, standard deviation, median value, etc. may be calculated and generated when used in the subsequent processing, and are not an essential configuration.
- the behavior determination system 100 does not have to have the overall configuration as shown in the figure.
- the measurement device 2, the information terminal 3, the server device 5, the management terminal 6, and the like may be integrated.
- a configuration for generating measurement data is installed in the shoe 1, such as the sensor unit 21 and the communication unit 22, and the measurement data is processed and stored separately from the shoe 1. It is desirable that the server device 5 and the like are installed. Specifically, in the behavior determination system 100, the sensor and the transmitter for transmitting the measurement data, the receiver for receiving the measurement data, the arithmetic unit for performing the processing based on the measurement data, and the like are separately connected via the network. It is desirable that the device is.
- the server device 5 Since many sensors and communication devices are small and lightweight devices, it is unlikely that they will affect the user's behavior even if they are installed on shoes 1 or the like. On the other hand, many devices having an arithmetic unit, a storage device, and the like, such as the server device 5, are larger than the sensors and the like. Therefore, it is desirable that the server device 5 is installed in a place such as a room for managing the information processing device.
- the device installed on the shoe 1 is often liable to break down due to the user exercising violently or acting in a harsh environment such as rainy weather. Therefore, it is desirable to have a hardware configuration in which hardware that can be easily replaced, such as the sensor unit 21, is installed in the shoe 1.
- the hardware configuration is such that the sensor, the electronic circuit, and the like are all provided in the shoe 1 (for example, the configuration shown in Japanese Patent Application Laid-Open No. 2009-106545), for example, when only the sensor fails.
- the hardware configuration is such that the sensor, the electronic circuit, and the like are all provided in the shoe 1 (for example, the configuration shown in Japanese Patent Application Laid-Open No. 2009-106545), for example, when only the sensor fails.
- the hardware configuration is such that the sensor, the electronic circuit, and the like are all provided in the shoe 1 (for example, the configuration shown in Japanese Patent Application Laid-Open No. 2009-106545), for example, when only the sensor fails.
- FIG. 7 is a layout diagram showing an example of the sensor position.
- the sensor is installed at a position as shown.
- the sensor is, for example, a direction (hereinafter, simply referred to as "orthogonal direction") of the sole of the foot that is orthogonal to the traveling direction (vertical direction in the figure) of the user, such as "Sensor No. 7."
- the orthogonal direction is the lateral direction in the figure) or the central portion of the widest width (in the figure, any position on the line of "maximum width MXW") in the width of the shoe. It is desirable that the sensor is installed.
- the sensor position is the center of the straight line connecting the end of the metatarsal bone of the thumb and the metatarsal bone of the little finger on the metatarsal joint side, or the center of the straight line connecting the ball of the thumb and the ball of the little finger.
- the sensors at other positions may be omitted, or the sensors may be arranged at positions other than those shown in the figure.
- the position of the sensor does not have to be exactly the position shown, and may be calculated from, for example, measurement data measured by another sensor.
- the senor is arranged so as to include the position shown in "Sensor No. 7".
- the sensor arrangement for example, as compared with the case of measuring the big toe part, the tip part of the middle bone foot, the part close to the side surface of the foot, and the heel part shown in Japanese Patent Application Laid-Open No. 2013-503660.
- the action determination system 100 can accurately determine the action.
- the user must wear trousers or socks on which the sensor is installed.
- the sole of the foot or the like is targeted, only the insole or the like is dedicated. Therefore, if the insole is changed, it is possible to determine whether the shoe is a shoe preferred by the user. Further, since clothing and the like have little influence on the determination, the user can determine any clothing.
- the senor does not have a binary output (meaning an output whose output is either "0” or “OFF") that can tell whether or not the foot is in contact with the ground, but a numerical value of force or pressure. It is desirable to use a sensor that outputs such as (how many Pa, etc., which means an output that shows not only whether or not it is grounded, but also the strength of force or pressure). That is, the sensor is preferably a sensor capable of multi-stage or analog output.
- the behavior determination system 100 is installed on trousers or the like and can determine the behavior without combining with a sensor for measuring tensile force or the like. That is, the behavior determination system 100 can determine the behavior even if there is no data on what angle the user's knee joint is at. Therefore, the behavior determination system 100 has a hardware configuration that does not require a sensor for measuring the knee joint or the like. Similarly, the behavior determination system 100 does not have to have a hardware configuration (for example, the configuration shown in Japanese Patent Application Laid-Open No. 2011-138530) that uses a combination of a plurality of types of sensors such as GPS (Global Positioning System). , A sensor that can measure force or pressure on the bottom of the foot is sufficient hardware configuration.
- GPS Global Positioning System
- the "No. 1 sensor” or the like measures the rear part and generates measurement data. That is, the sensor installed on the hindfoot HEL is an example of a sensor for measuring the hindfoot on the bottom of the foot.
- the sensor installed on the hindfoot HEL mainly measures a range called the so-called "hindfoot” where the heel and the like are located.
- the "No. 2 sensor”, the “No. 6 sensor”, etc. measure the central part and generate measurement data. That is, the sensors installed on the outer midfoot LMF, the midfoot central MMF, and the like are examples of sensors for measuring the middle part on the bottom surface of the foot.
- the sensors installed in the outer midfoot LMF and the midfoot central MMF mainly measure a range called the so-called "midfoot”.
- the "3rd sensor”, “4th sensor”, “5th sensor”, “7th sensor”, etc. measure the front part and generate measurement data. That is, the sensors installed on the lateral forefoot part LFF, the forefoot thumb part TOE, the medial forefoot part FMT, the forefoot central part CFF, and the like are examples of sensors for measuring the front part on the sole of the foot.
- the sensors installed on the lateral forefoot LFF, forefoot thumb TOE, medial forefoot FMT, and forefoot central CFF mainly measure the so-called "forefoot” range where the toes and the like are located.
- FIG. 8 is a block diagram showing a hardware configuration example related to information processing possessed by information processing devices such as measurement devices, information terminals, server devices, and management terminals.
- information processing devices such as measurement devices, information terminals, server devices, and management terminals are, for example, general computers.
- each information processing device will be described with an example of the same hardware configuration, but each information processing device may have a different hardware configuration.
- the measuring device 2 and the like include a CPU (Central Processing Unit) 201, a ROM (Read Only Memory) 202, a RAM (Random Access Memory) 203, and an SSD (Solid State Drive) / HDD (Hard) connected to each other via the bus 207. It has a Disk Drive) 204 and the like. Further, the measurement device 2 and the like have an input device and an output device such as a connection I / F (Interface) 205 and a communication I / F 206.
- a connection I / F Interface
- CPU 201 is an example of an arithmetic unit and a control unit. Then, the CPU 201 can perform each process and each control by executing a program stored in the auxiliary storage device such as the ROM 202 or the SSD / HDD 204 with the main storage device such as the RAM 203 as the work area. Then, each function of the measuring device 2 and the like is realized by, for example, executing a predetermined program in the CPU 201.
- the program may be acquired via a recording medium, may be acquired via a network or the like, or may be input in advance to a ROM or the like.
- the measurement data receiving unit 502 is realized by the connection I / F205, the communication I / F206, or the like. Further, the data analysis unit 503 and the action determination unit 506 are realized by, for example, the CPU 201 or the like.
- FIG. 9 is a flowchart showing an example of overall processing. As shown in the figure, the overall processing is divided into a process of "learning process” which is a process of generating a model for classifying the behavior performed by the user (hereinafter referred to as “classification model”) and a classification model generated in advance by the learning process. Based on this, it has a process of "performing a determination using a classification model”.
- learning process is a process of generating a model for classifying the behavior performed by the user
- classification model a classification model generated in advance by the learning process. Based on this, it has a process of "performing a determination using a classification model”.
- the classification model is generated by the learning process before executing the determination using the classification model, so that the processes need to be executed continuously. There is no.
- the configuration of the whole process may be such that the learning process is executed before to generate the classification model, and then only the process of executing the determination using the classification model is performed. That is, at least one classification model may be generated in advance, and the same classification model may be used many times, or a classification model may be generated each time a determination using the classification model is executed. Good.
- step S1 and step S2 the learning process is performed in the order of step S1 and step S2, for example, as shown in the figure.
- step S1 the behavior determination device acquires measurement data to be learning data.
- the measurement data and the like are given an action label indicating the action that was performed when the measurement data was acquired.
- step S2 the behavior determination device generates a classification model.
- the classification model is, for example, the following decision tree.
- FIG. 10 is a diagram showing an example of a decision tree.
- the illustrated decision tree TRB is part of a classification model generated by the learning process.
- the decision tree TRB is used to classify the user's behavior indicated by the measurement data in the process of executing the determination using the classification model performed in the subsequent stage. Therefore, in the learning process, using the learning data obtained from the measurement data and the data after the analysis process, a determination process is performed in which some determinations are made step by step like the decision tree TRB and finally the user's behavior is classified. To do so, a decision tree TRB is generated.
- the decision tree TRB is obtained by first creating post-analysis data 525 for obtaining training data in the subsequent stage in the illustrated example.
- the behavior determination device is made to perform the uppermost determination (hereinafter referred to as "first determination J1"). That is, in the first determination J1, the determination conditions for the parameters (hereinafter simply referred to as “determination conditions”) and the like are determined by learning the values and the like (hereinafter referred to as "parameters”) that are the learning data to be determined. ..
- a classification model such as a decision tree TRB can be generated.
- the data feature is a value or tendency showing various features shown by the measurement data.
- the data feature is a parameter such as a statistical value calculated when data processing such as statistical processing is performed on the measured data.
- the data feature may be one sensor and one parameter in total, or two or more sensors or parameters and a total of two or more.
- the determination is performed for the third determination J3. That is, in the decision tree TRB, a plurality of determinations are made in order from top to bottom so as to make a determination of the second determination J2 or the third determination J3 after the first determination J1. It is shown that the judgment is made.) The judgment processing is realized so that one judgment result can be reached by performing the judgment.
- the judgment condition described at the top for example, “peakwthstdL” in the first judgment J1 is represented by the left foot (indicated by “L")). (Indicates the average value of the peak widths in) indicates the data feature to which the determination condition is applied in the determination (in this case, the first determination J1).
- the other notation "gini” indicates Gini purity.
- number indicates the number of window records used in the determination.
- value indicates the number of processed sample data.
- class indicates an action label given as a result of the determination.
- the determination conditions may include types other than these.
- the action determination device uses each decision tree TRB separately, and "executes the determination using the decision tree" for each decision tree TRB. To execute.
- the decision tree TRB is generated so as to have different judgment conditions or parameters. Therefore, a plurality of "execution of determination using a decision tree” often results in different determination results (however, even if the determination conditions are different, all of them have the same determination result). In such a case, it is desirable that the classification model aggregates the judgment results by the plurality of decision trees TRB and performs the "judgment by the classification model" so as to adopt the most judgment result.
- the parameter may be a statistical value such as an average value obtained by averaging these plurality of values.
- the behavior determination device can accurately determine the user's behavior. The details of the parameters will be described later.
- the classification model is not limited to the decision tree TRB as shown in the figure. That is, the classification model does not have to be a decision tree as long as it is data in which the determination conditions and the like that can classify the user's behavior are determined based on the parameters and the like based on the measurement data.
- the classification model includes a decision tree
- the decision tree is often so-called “over-learning” (or over-training) (sometimes referred to as “overfitting” or the like) or the like.
- Limiting the branching of a tree in a decision tree indirectly results in the maximum depth of the decision tree (in the figure, the number of steps or boxes in the vertical direction). .) Can be limited.
- the minimum number of samples contained in the end of the branch (for example, the first terminal L1 or the second terminal L2 in the figure) (temporarily, the number required for branching in the judgment one level higher). Even if there are samples, if there are too few samples on one side of the next branch, the branch may be stopped.) Or the like. Further, the minimum value of the value at which the Gini impureness is reduced (the branching is stopped when the branching does not substantially improve the "decision"), the maximum value of the depth of the decision tree, or the like may be set. ..
- the determination conditions, the values of the parameters used in the determination, and the like may be changed by the learning process.
- the determination conditions and the values of the parameters used in the determination may be set or changed by the user or the like.
- the setting value of ⁇ minimum number of required samples that allow branching>, which is the optimum "decision", that is, the optimum value is "2" on average.
- step S1 and step S2 as described above, for example, the learning process is performed as follows.
- FIG. 11 is a diagram showing a learning data set used for learning processing and an example of learning processing.
- window No is a serial number for identifying a window (details will be described later).
- start (sec) and “end (sec)” are values that specify the range of measurement data that is the learning data specified in the window, that is, the range of data used for learning. Specifically, “start (sec)” indicates the start time of the window as the time elapsed from the start time of the measurement data (in this example, the unit system is "seconds").
- end (sec) indicates the end time of the window as the time elapsed from the start time of the measurement data.
- “Feat # 1" to "feat # 168" are values calculated based on the measurement data 524 or the post-analysis data 525, and are data features used in this determination. That is, "feat # 1" and the like indicate parameters. Therefore, this example is an example of calculating and determining different types of parameters of "168". The number of parameters is not limited to "168".
- the number of parameters is the number of sensors or the location where the sensor is installed (for example, the location where the sensor is installed is only one foot or both feet, or the sensor is on the forefoot or hindfoot. It is desirable to determine based on the above.
- the number of sensors When the number of sensors is increased, the number of parameters that can be generated based on the measurement data output by the sensors can often be increased. Therefore, in order to use as many sensors as effectively as possible, it is desirable to increase or decrease the number of parameters according to the number of sensors.
- ACTIVITY indicates an action label given in advance for an action performed during the relevant window time. Therefore, in the learning process, learning is performed so that the type of action actually performed by the user, that is, "ACTIVITY” is correctly classified according to the condition of the data feature, that is, according to the given action label. ..
- the actual action shown in “ACTIVITY” in the figure, it is “run slow”.
- the first action AC11 The classification result (in the figure, “run slow”.
- the first classification result AC21) may match.
- the first action AC11 and the first classification result AC21 are examples showing the same action type. In such a case, it is evaluated as "correct answer”.
- the classification model that collects the decision tree and a plurality of decision trees becomes large, that is, the classification model can accurately determine the user's behavior. Will be generated.
- the classification model can classify user behavior as follows, for example.
- FIG. 12 is a diagram showing a first example of classifying user behavior. As shown in the figure, it is desirable that the classification model can finally classify and label the user's behavior into one of nine types. That is, it is desirable that the action label given in advance by "ACTIVITY" is one of the nine types shown in the figure.
- “Sitting” is an action label indicating that the user is sitting (hereinafter referred to as “sitting action TP1").
- “Standing” is an action label indicating that the user is performing a standing action (hereinafter referred to as “standing posture action TP2").
- Non-locomotive is an action label indicating that the user is performing an action that does not have directivity in the direction of movement (hereinafter referred to as “non-uniform action action TP3").
- non-directional movements are household chores (such as vacuuming or drying laundry).
- Walking is an action label indicating that the user is walking (hereinafter referred to as “walking action TP4").
- “Walking slope” is an action label indicating that the user is walking on an incline (hereinafter referred to as “inclination walking action TP5").
- “Climbing stairs” is an action label indicating that the user is performing an action of climbing stairs (hereinafter referred to as “action of climbing stairs TP6").
- “Going downstairs” is an action label indicating that the user is performing an action of going down the stairs (hereinafter referred to as “action of going down the stairs TP7").
- Running action TP8 is an action label indicating that the user is performing a running action (hereinafter referred to as “running action TP8").
- Bicycle is an action label indicating that the user is riding a bicycle (hereinafter referred to as "bicycle action TP9").
- FIG. 13 is a diagram showing a second example of classifying user behavior.
- the second example is different in that the user's behavior is finally classified into one of 11 types of behavior labels as shown in the figure.
- the second example differs from the first example in that the walking behavior TP4 and the running behavior TP8 are further classified into two.
- the same points as in the first example will be described by adding the same reference numerals and omitting description, focusing on different points.
- “Walking slow” is an action label indicating that the user is walking at a low speed (hereinafter referred to as "low-speed walking action TP41").
- “Walking fast” is an action label indicating that the user is walking at high speed (hereinafter referred to as “high-speed walking action TP42").
- “Running slow” is an action label indicating that the user is running at a low speed (hereinafter referred to as “low speed running action TP81").
- “Running fast” is an action label indicating that the user is running at high speed (hereinafter referred to as “high-speed running action TP82").
- the classification model classifies behaviors such as running and running at low speed or high speed. For example, after setting the energy consumption per unit time to be allocated to each classified action in advance and executing the judgment using the classification model, the total energy consumption is calculated based on the type of the judged action. Processing using the judgment result may be performed in a later stage such as calculation.
- the total energy consumption can be calculated more accurately if the classification is finer as in the second example than in the first example.
- the data set of the learning data used for the learning process may be used separately for learning and verification. For example, after generating a classification model with the training data set, it is determined to classify the verification data set with the generated classification model. When the data set for learning and the data set for verification are used separately in this way, the data set used for verification is not provided with "ACTIVITY” (that is, "behavior label”). Then, a determination is made to classify the verification data set by the classification model. After the judgment, the correct "ACTIVITY” and the judgment result are collated to verify the accuracy of the classification model.
- ACTIVITY that is, "behavior label”
- the number of data features is preferably between "80" and "168". In this case, it is known that an accuracy of about 80% or more can be obtained. It is desirable that "statistical features" and “peak features” are preferentially selected as the types of data features.
- step S3 the action determination device acquires measurement data.
- the measurement data acquired in step S3 is not the learning data acquired in step S1, but the measurement data generated while the action of the user to be determined is being performed.
- step S4 the action determination device performs the determination process.
- the determination process for example, it is desirable to target the data determined by the following window acquisition, or to use the following parameters.
- the range of the measurement data to be subject to the determination process is determined by setting the window to slide on the time axis as follows, for example.
- the measurement data for one window leads to the data features and the like constituting one record of the data set of the determination data.
- FIG. 14 is a diagram showing an example of window acquisition.
- the horizontal axis is the time axis and the vertical axis is the pressure.
- the upper figure is the measurement data of the left foot, and the lower figure is the measurement data of the right foot.
- the windows are set in the order of the first window W1, the second window W2, the third window W3, the fourth window W4, and the fifth window W5 (in the figure, the window is on the right). It is set to slide to).
- size WDS The window size (hereinafter referred to as "size WDS”) can be calculated and set by the following formula (1).
- the “windowsize” in the above equation (1) is the time width of the data to be processed (the unit system is “seconds” or the like). Further, “f” is a sampling frequency (the unit system is “Hz”). Further, “ceil” is the number of data samples (the unit system is “pieces”).
- the size of the window may take into consideration the characteristics of the target user. For example, if the user has a characteristic of slow walking speed, it is desirable that the size of the window is set large. That is, if one action has the property of being relatively slow, the size of the window may be set large so that one action is more likely to fit in the window.
- overlap portion OVL the same range
- the overlap portion OVL is not limited to 50% or more, and may be about 25% to 75%.
- the window contains one cycle of action. Without the overlapping portion OVL, if the time when the window is set is in the middle of one cycle of the action, the data for one cycle is often not the target of analysis and learning. On the other hand, if there is an overlap portion OVL, the target of the next window is started from the rear portion included in the previous window. Therefore, there is a high possibility that data that was not available for analysis in the previous window will be available in the next window.
- the data pattern of each window changes.
- the measurement data shows the same tendency for that certain period of time.
- a window is taken from the measurement data of a periodic data pattern, if there is no overlapping part OVL, multiple windows cut out the same data pattern, and in many cases the diversity in analysis cannot be maintained. ..
- the target of the next window is started from the rear portion included in the previous window. Therefore, there is a high possibility that the window can be cut with a data pattern different from that of the previous window. Therefore, it is possible to increase the possibility that the behavior can be judged accurately.
- the overlap portion OVL is preferably about 50%.
- FIG. 15 is a diagram showing an example of parameters.
- the figure is an example of measurement data measured by one sensor for one leg, with time shown on the horizontal axis and pressure measured on the vertical axis (hereinafter, although the example of pressure will be described, force is used. It may be done.) Is shown.
- measurement data as shown in the figure (results extracted by a window or the like) as a determination target will be described as an example. For example, it is desirable that the following parameters are used in the determination process.
- parameters are set for each window in which the measurement data is divided by a fixed time. Specifically, one eleventh window W11 is set in which the window start time is "3000 milliseconds" and the window end time is "3500 milliseconds" in the figure.
- the parameters extracted in each window identify the maximum or maximum value of force or pressure in a predetermined category, the so-called peak value, and analyze the height, peak width, periodicity, etc. of the peak value in the measurement data. It is a value or the like indicating the result of the above.
- the peak value is extracted by a process such as differentiating or identifying the highest value in comparison with other values.
- the peak value used in the analysis for example, the peak value corresponding to the following conditions is extracted.
- One is a condition that the difference between the maximum value and the minimum value after the maximum value is twice or more the standard deviation in the measurement data acquired from the same sensor.
- the other is the condition that the time difference between the maximum value and the next maximum value is 30 milliseconds or more.
- Data features that serve as parameters include, for example, “statistical features”, “peak features”, “walking cycle features”, “FFT features”, and “sole pressure deflection features”. It is desirable that all of these features are used for learning, but at least one of them, or any combination of two or more, may be used.
- the parameters included in the statistical features are, for example, the maximum pressure value, the median pressure value, the standard deviation of the pressure value, the average pressure value, and the like.
- a value is calculated from the measurement data for each sensor measured in one window.
- the maximum pressure value is the maximum value among the plurality of maximum values appearing in the 11th window W11, and is the maximum value of the measured pressure data DM1 in the 11th window W11 (in this example, the value of the 14th peak point PK14). Is).
- the median pressure value is the median value in the 11th window W11 of the measured pressure data DM1.
- the standard deviation of the pressure value is the standard deviation of the measured pressure data DM1 in the 11th window W11.
- the average pressure value is the average value in the 11th window W11 of the measured pressure data DM1.
- the first example of the parameter included in the peak feature is, for example, the average value of the peak values.
- the average value of the peak values is the average value of the maximum value or the maximum value specified as the peak value in the window, that is, the 11th measured value X11, the 12th measured value X12, and the 13th measured value X13.
- the values include the average value of the maximum value or the maximum value such as the 11th measured value X11, the 12th measured value X12, the 13th measured value X13, and the 14th measured value X14, which are included in the measurement data. The behavior may be judged.
- the standard deviation of the peak value (including 3 ⁇ and the like) and the like may be taken into consideration. If there is no specified peak value in the target window, the peak feature may be processed as "0 (zero)".
- the second example of the parameter included in the peak feature is the average value of the interval (hereinafter referred to as "peak interval") of the peak point on the time axis.
- the average value of the peak intervals is a value obtained by summing the first peak interval PI1, the second peak interval PI2, and the third peak interval PI3 and dividing the total value by "3". is there. That is, the peak interval and its average value are calculated from the value of the peak appearance time included in the data after the analysis process, or the average value is calculated from the value of the inter-peak time distance, and the action is determined using this as a parameter. May be done.
- the standard deviation of the peak interval (including 3 ⁇ and the like) and the like may be taken into consideration.
- the peak feature may be processed as "0 (zero)".
- the third example of the parameter included in the peak feature is the time before and after the peak value when the pressure is above the predetermined value.
- peak width the time before and after the peak value when the pressure is above the predetermined value.
- the "height" is calculated centering on the target peak point.
- the previous inter-peak minimum value LP11 that appears before the 11th peak point PK11 on the time axis is compared with the later inter-peak minimum value LP12 that appears later on the time axis from the 11th peak point PK11.
- Extract the minimum value between the smaller peaks is the inter-peak minimum value LP12.
- the pressure value M11 before the peak and the pressure value M11 after the peak which is the smaller one and is at the height position obtained by adding the value of "30%" of the height X21 to the extracted minimum inter-peak value LP12, and the post-peak pressure value M11. Two points of pressure value M12 are specified.
- the peak width is calculated.
- the predetermined value it is desirable to use a value at a position where the height is about "30%" from the minimum value between peaks, which is a small value before and after the peak point, but the setting of the predetermined value is not limited to this. ..
- the average value of the peak widths is the average value of the peak widths calculated for each peak in the window, that is, the first peak width PW11, the second peak width PW12, and the third peak appearing in the 21st window W21. It is a value obtained by summing the four widths PW13 and the fourth peak width PW14 and dividing the total value by "4". That is, the average value may be calculated from the value of the peak width included in the data after the analysis process, and the action may be determined using this as a parameter. Further, as the parameter, the standard deviation of the peak width (including 3 ⁇ and the like) and the like may be taken into consideration. If there is no specified peak value in the target window, the peak feature may be processed as "0 (zero)".
- a parameter included in a peak feature is the number of peaks.
- the 11th peak point PK11, the 12th peak point PK12, the 13th peak point PK13, and the 14th peak point PK14 are the values calculated as "4" as the number in the 21st window W21. That is, the number may be calculated from the peak value or the value of the peak appearance time included in the data after the analysis process, and the action may be determined using this as a parameter.
- FIG. 16 is a diagram showing an example of parameters.
- the maximum value is extracted for each time point from the measurement data measured by all the sensors installed on one leg, and the data is continuous in the time column (that is, the time column data EP of the data after analysis processing).
- the horizontal axis shows the time
- the vertical axis shows the measured pressure.
- one 21st window W21 whose window start time is "0 milliseconds” and whose window end time is "500 milliseconds” is set. For example, it is desirable that the following parameters are used in the determination process.
- the time column data EP is divided into four cycles, for example, the 21st cycle C21, the 22nd cycle C22, the 23rd cycle C23, and the 24th cycle C24.
- Examples described below include the 21st peak point PK21, the 22nd peak point PK22, the 23rd peak point PK23, the 24th peak point PK24, the 25th peak point PK25, the 26th peak point PK26, the 27th peak point PK27, and , 28th peak point PK28, and so on, it is assumed that two peak points are calculated for each action cycle.
- the action cycle is the time zone data EP of the time point maximum value of all the sensors on one leg included in the post-analysis data, starting from the time zone when it is "0 (zero)", and then "0 (zero)". It is extracted by dividing until the time zone in "" appears.
- the cycle of action corresponds to one step when applied to the mode of action.
- the threshold value TH may be set in advance, and the time point at which the threshold value TH or less may be set as a reference of “0 (zero)”. That is, a time point at which the force or pressure becomes equal to or less than the threshold value TH and becomes almost "0", that is, so-called “near zero” may be used.
- the threshold value is set to "1", but the value may be a value other than "1".
- the first example of the parameter included in the walking cycle feature is the average value of the difference between a plurality of peak points included in one window (hereinafter referred to as "peak difference"). Specifically, in the 21st cycle C21, the peak difference is the first peak difference DF1.
- the first peak difference DF1 is obtained by calculating the difference between the 21st peak point PK21 and the 22nd peak point PK22.
- the average value of the peak differences is the average value of a plurality of peak differences calculated for each cycle, that is, the first peak difference DF1, the second peak difference DF2, the third peak difference DF3, and the fourth peak difference. It is a value obtained by summing the four DF4s and dividing the total value by "4". That is, from the time column data EP showing the time-time maximum values of all the one-legged sensors included in the data after the analysis process, first, the maximum maximum value and the next largest maximum value are obtained for each cycle.
- the behavior may be determined using the average value or the like of a plurality of peak differences calculated by using the difference between the two values as the peak difference as a parameter. Further, as the parameter, the standard deviation of the peak difference (including 3 ⁇ and the like) and the like may be taken into consideration.
- the walking cycle feature may be processed as "0 (zero)". Further, even when two peaks are not detected in the cycle, the walking cycle feature may be treated as "0 (zero)".
- the peak difference of this parameter corresponds to the difference between the contact period pressure and the bed leaving period pressure when applied to the behavioral mode. That is, the 21st peak point PK21, the 23rd peak point PK23, the 25th peak point PK25, and the 27th peak point PK27 indicate the contact period pressure of the foot in a certain behavior.
- the 22nd peak point PK22, the 24th peak point PK24, the 26th peak point PK26, and the 28th peak point PK28 indicate the pressure during the bed leaving period of the foot in a certain behavior. That is, in the measurement data, the behavior may be determined using the average value of all the steps in the window as a parameter, which is the difference between the contact period pressure and the bed leaving period pressure.
- the second example of the parameter included in the walking cycle feature is the ratio of the support period for both feet.
- FIG. 17 is a diagram showing an example of parameters.
- the figure is a diagram showing an example of data displaying both feet of the time point maximum value time column data of all the sensors of one foot used in FIG.
- the illustrated example is an example of data in which the maximum value is extracted for each foot and each time point from the measurement data measured by installing one or more sensors on each of the left foot and the right foot and continuously arranged in a time sequence. Is.
- the horizontal axis indicates the time and the vertical axis indicates the measured pressure (hereinafter, although the example of pressure will be described, a force may be used).
- One 31st window W31 is set in which the window start time is "0 ms" and the window end time is "500 ms”.
- the current maximum values of all the sensors for the left foot are continuous data (hereinafter referred to as "left foot data DL")
- the time maximum values of all the sensors for the right foot are continuous data (hereinafter referred to as “right foot data DR"). .) Is displayed as shown.
- the left foot which is one foot
- the other foot that is, the right foot
- the second foot there is a time point when the first foot becomes "0" (hereinafter referred to as “first time point”).
- first time point a time point when the value of the second leg starts to increase from "0" (hereinafter referred to as "second time point”).
- second time point a time point when the first foot is the right foot and the second foot is the left foot, that is, both the left and right feet are reversed
- the first time point and the second time point occur in the same manner.
- the time from the first time point and the second time point is shown by NS between time points.
- the time zone in which the pressure of both feet is not “0 (zero)” is called the "both foot support period”. That is, the inter-point-time NS is a time zone in which the pressure of the first foot decreases and becomes almost “0 (zero)", that is, the first foot floats in the air away from the ground.
- the pressure of the second foot is almost "0 (zero)", and when the foot starts to touch the ground, the pressure or the like increases, that is, the second foot touches the ground. It is in a state to start.
- the inter-point-time NS is a time zone in which the grounding and non-grounding of both left and right feet are switched, and the pressure of both feet can be detected.
- the ratio of the support period for both feet is a value obtained by summing the time widths of NS between a plurality of time points and dividing by the time width of the 31st window W31. That is, the action is determined by using the sum of the times when the left and right pressure values included in the data after the analysis process are not "0 (zero)" and the value obtained by calculating the time ratio in the window as a parameter. May be done.
- the threshold value TH may be set in advance, and the first time point and the second time point may be determined based on the time point when the threshold value is TH or less. That is, the first time point and the second time point, that is, the inter-time point NS is calculated by specifying the case where the time column data EP indicating the time point maximum value of all the one-legged sensors included in the data after the analysis process is equal to or less than the threshold value. You may. As described above, the time point at which the force or pressure becomes equal to or less than the threshold value TH and becomes substantially "0", that is, the so-called "near zero" may be used. In this case, for example, the threshold value is set to "1" or the like. However, a value other than "1" may be set for the threshold value.
- a state in which one foot is in contact with the ground and the other foot is not in contact with the ground that is, a time zone in which one foot is standing may also be used.
- the so-called “both foot support period” the time when only one of the left foot and the right foot is in contact with the ground, the so-called “single foot support period”. May be determined. Then, the behavior may be determined by the length of the single-leg support period or the like.
- the length of the single-leg support period which is the length obtained by subtracting the total of NS from the time width of the 31st window W31, may be a parameter.
- the synchronization of the left foot data DL and the right foot data DR may be used as parameters for the determination.
- FIG. 18 is a diagram showing an approximate shape of the left and right soles and an example in which four sensors are arranged on the forefoot and one sensor is arranged on the heel. For example, as illustrated, each foot is pre-populated with areas such as anterior, medial, posterior, medial, and lateral.
- the first example of the parameters included in the sole pressure deflection feature is the average value between the two feet for the difference in the pressure average value between the forefoot and the hindfoot, and the distance between the two feet for the difference between the medial and lateral pressure average values. Is the average value of.
- sensors installed at a plurality of sensors in the forefoot region for example, first forefoot measurement point TOE1, second forefoot measurement point FMT1, third forefoot measurement point CFF1 and fourth forefoot measurement point LFF1.
- the maximum value at each time point is extracted from the measurement data obtained by (.), And the time sequence data of the time point maximum value of the forefoot sensor on one foot is obtained.
- the average value of the time-point maximum value of the forefoot sensor on one foot and the sensor in the hindfoot region (for example, the sensor installed at the hindfoot measurement point HEL1). ) To get the difference between the average values.
- the time column data of the time point maximum value of the forefoot sensor on one leg is obtained, and then the difference between the average value of the time column data and the average value of the sensor in the hindfoot region. To get.
- the behavior may be determined using the average value of both feet of this difference value as a parameter.
- the measured values of some of all the sensors or all the sensors are compared, and the time column data of the maximum time value is averaged. It is used to calculate.
- the measured value of one sensor is used to calculate the average value.
- the second example of the parameters included in the sole pressure deflection feature is the correlation function of the pressure values of the forefoot and the hindfoot and the correlation function of the inner and outer pressure values.
- pressure or force in the traveling direction that is, the direction connecting the forefoot and the hindfoot
- the orthogonal direction that is, the direction connecting the inside and the outside
- R in the above equation (2) is the Pearson correlation coefficient.
- the "x” and “y” in the above equation (2) are the measured forces or pressures in the traveling direction (vertical direction in the figure) and the orthogonal direction (horizontal direction in the figure). The value. Therefore, the subscripts "i” of "x” and “y” in the above equation (2) are numbers for identifying each value, and if “i” is the same, the same measurement result, that is, It will be measured by the same sensor.
- the correlation coefficient is calculated by the above equation (2) from the measurement data of the hindfoot sensor of one foot, which is the same as the time column data of the time point maximum value of the forefoot sensor on one foot included in the data after the analysis processing, and the phase.
- the action may be determined using the number of relationships as a parameter.
- the correlation coefficient may be calculated by the above equation (2), and the behavior may be determined using the correlation coefficient as a parameter. When such a Pearson correlation coefficient is used, the determination can be made more accurately.
- the pressure distribution and the like may be used as the parameters included in the sole pressure deflection feature. That is, the behavior may be determined based on the distribution of the region where the pressure is high or the region where the pressure is low.
- the pressure may be an average value of measurement data measured by a plurality of sensors in the region.
- the parameters included in the FFT feature are, for example, the weighted average of energy and frequency, the skewness of the spectrum of 0 to 10 Hz, the average value of the spectrum of 2 to 10 Hz, and the standard deviation of the spectrum of 2 to 10 Hz.
- FFTW frequency quantity data obtained by fast Fourier transforming the total sensor pressure values at each time point. That is, first, in the window, the total value of the pressure values at each time point of all the sensors is calculated. Next, the frequency quantity data obtained by fast Fourier transforming the time sequence data on the time axis becomes "FFTW".
- the second peak value appearing in "FFTW”, the spectrum of FFTW, the standard deviation, the power spectrum density, the entropy, etc. may be calculated and used as parameters to determine the behavior.
- the parameters of the "FFT feature” are generated as follows.
- FIG. 19 is a diagram showing an example of time series data.
- a case where seven sensors are installed for each of the time series data as shown in the figure, that is, the left foot and the right foot, and the force or pressure on the bottom of the user's foot is measured at a total of 14 places will be described as an example.
- a calculation is performed to add the measured values at each time indicated by the 14 time-series data shown in the figure. When such a calculation is performed, for example, the following calculation result can be obtained.
- FIG. 20 is a diagram showing an example of the addition result. As shown in the figure, the value of the measured value indicated by the time series data at each time, the value at each time shown in the addition result is calculated by adding all 14 values. When FFT is performed on this calculation result, for example, the following FFT result can be obtained.
- FIG. 21 is a diagram showing an example of FFT results. For example, when the FFT process is executed on the calculation result as shown in FIG. 20, the FFT result as shown in the figure is obtained. Then, for example, the following parameters can be obtained from the FFT result.
- Energy is, for example, a value calculated by the following formula (3) (variable “E” in the following formula (3)). Further, “energy” is an example of “energy” of "FFT feature" in FIG.
- the “frequency weighted average” is, for example, a value calculated by the following equation (4) (the variable “WA” in the following equation (4)). Further, the “frequency weighted average” is an example of the "frequency weighted average” of the "FFT feature" in FIG.
- the “FFT feature” may be, for example, the skewness of the spectrum (hereinafter simply referred to as "skewness”) or the like at a fundamental frequency of 0 Hz to 10 Hz, which is determined by calculation as follows.
- FIG. 22 is a diagram showing an extraction example of a fundamental frequency of 0 Hz to 150 Hz.
- the fundamental frequency of 0 to 150 Hz in FIG. 22 is the result of extracting the fundamental frequency of 0 Hz to 150 Hz (hereinafter referred to as “first frequency band FR1”) from all the frequencies shown in FIG. 21.
- the skewness can be calculated by calculating the extraction result as shown in the following equation (5).
- n may be a value other than "150” depending on the setting or the like.
- the skewness is an example of the "skewness of the spectrum of 0 to 10 Hz" of the "FFT feature" in FIG.
- the fundamental frequency of 0 Hz to 150 Hz (“n” in the above equation (5)) is a fundamental frequency of 0 Hz to 150 Hz (above (5)) depending on the relationship between the fundamental frequency and the frequency shown in the above equation (5).
- “F” in the equation) is a frequency of 0 Hz to 10 Hz.
- the "FFT feature” may be, for example, "the average value of the spectrum of 2 Hz to 10 Hz” and "the standard deviation of the spectrum of 2 Hz to 10 Hz", which are calculated and determined as follows.
- a process of extracting a frequency of 2 Hz to 10 Hz is performed on the extraction result shown in FIG. 22.
- the fundamental frequency of 30 Hz to 150 Hz in FIG. 22 hereinafter referred to as “second frequency band FR2” is extracted.
- the extraction result is, for example, as follows.
- FIG. 23 is a diagram showing an extraction example of a fundamental frequency of 30 to 150 Hz. That is, FIG. 23 is the result of extracting the fundamental frequencies of 30 Hz to 150 Hz from all the frequencies shown in FIG. 22.
- a frequency of 2 Hz or less is a frequency considered to be a walking cycle. Therefore, it is desirable to exclude frequencies below 2 Hz, as it overlaps with peak features. Therefore, as shown in the figure, it is desirable to extract a fundamental frequency of 30 Hz to 150 Hz (the frequency is 2 Hz to 10 Hz depending on the relationship between the fundamental frequency and the frequency shown in the above equation (5)).
- the average value of the spectrum is calculated based on the result of extracting the fundamental frequency of 30 Hz to 150 Hz.
- This calculation result serves as an example of the "average value of the spectrum of 2 to 10 Hz" of the "FFT feature" in FIG.
- the standard deviation of the spectrum is calculated based on the result of extracting the fundamental frequency of 30 Hz to 150 Hz. This calculation result serves as an example of the "standard deviation of the spectrum of 2 to 10 Hz" of the "FFT feature" in FIG.
- a bandpass filter (Bandpass filter), a Butterworth filter (Butterworth filter), or a lowpass filter (Lowpass filter) is applied to the measurement data to be subjected to the determination processing.
- a Butterworth filter it is desirable to use a Butterworth filter.
- the filtering process is applied to the measurement data, it is desirable that the filtering process is performed, for example, after step S3 and before step S4.
- the measurement data is as follows by the filtering process.
- FIG. 24 is a diagram showing an example of measurement data before the filtering process is performed.
- 7 sensors are installed for each of the left foot and the right foot, and measurement data for measuring the force or pressure on the bottom of the user's foot is measured at a total of 14 places. Take as an example. Therefore, the illustrated measurement data (hereinafter referred to as “pre-filter data D1”) is so-called raw data.
- the pre-filter data D1 is subjected to a filter process for attenuating the frequency of 5 Hz or higher included in the measurement data.
- the data including the frequency of 5 Hz or higher is likely to be noise indicating a movement other than the movement in which a person can operate. Therefore, if a filter that attenuates frequencies of 5 Hz or higher is applied, the noise contained in the measurement data can be reduced.
- the values are normalized to the pre-filter data D1 so that each value indicated by the measurement data is expressed by a numerical value within a predetermined range.
- the result of such processing is as follows.
- FIG. 25 is a diagram showing an example of measurement data after filtering.
- the illustrated example is data showing an example of the result of applying a Butterworth filter to the pre-filter data D1 (hereinafter referred to as “post-filter data D2”).
- the filtered data D2 is the data obtained by attenuating the noise included in the measurement data acquired in step S3.
- the behavior determination device can accurately determine the user's behavior.
- FIG. 26 is a functional block diagram showing a functional configuration example of the behavior determination system.
- the action determination system 100 has a functional configuration including a measurement data acquisition unit FN1, a generation unit FN2, a determination unit FN3, and the like. Further, as shown in the figure, it is desirable that the action determination system 100 has a functional configuration further including a filter unit FN4, a window acquisition unit FN5, an energy consumption calculation unit FN6, and the like.
- the illustrated functional configuration will be described as an example.
- the measurement data acquisition unit FN1 performs a measurement data acquisition procedure for acquiring measurement data DM indicating pressure or force measured by one or more sensors installed on the bottom of the user's foot.
- the measurement data acquisition unit FN1 is realized by the connection I / F205 or the like.
- the generation unit FN2 uses the measurement data DM and the data features obtained from the measurement data DM as learning data DLE in machine learning, and performs a generation procedure for generating a classification model for classifying the behavior performed by the user.
- the generation unit FN2 is realized by the CPU 201 or the like.
- the generation unit FN2 has a data feature generation unit FN21, a classification model generation unit FN22, and the like.
- the data feature generation unit FN21 generates data features and the like to generate learning data DLE.
- the classification model generation unit FN22 generates a classification model MDL based on the learning process of the learning data DLE.
- the determination unit FN3 performs a determination procedure for determining the user's behavior using the classification model MDL based on the measurement data DM.
- the determination unit FN3 is realized by the CPU 201 or the like.
- the filter unit FN4 performs a filter procedure of applying, for example, a Butterworth filter or a low-pass filter that attenuates a frequency of 5 Hz or higher to the measurement data DM.
- the filter unit FN4 is realized by the CPU 201 or the like.
- the window acquisition unit FN5 sets a window for determining the range used for the determination by the determination unit FN3 for the measurement data DM, and slides it on the time axis to set the window.
- the window acquisition unit FN5 is realized by the CPU 201 or the like.
- the energy consumption calculation unit FN6 allocates each energy consumption to the action, and performs an energy consumption calculation procedure for calculating the total energy consumption of the user by totaling the energy consumption.
- the energy consumption calculation unit FN6 is realized by the CPU 201 or the like.
- the action determination system 100 may have the following functional configurations.
- FIG. 27 is a functional block diagram showing a modified example of the functional configuration of the action determination system.
- the measurement data acquisition unit FN1 may have a functional configuration including a learning measurement data acquisition unit FN11, a determination measurement data acquisition unit FN12, and the like.
- the learning measurement data acquisition unit FN11 acquires measurement data such as learning data used to generate the classification model MDL.
- the main data flow in the learning process is indicated by a “broken line”.
- Judgment measurement data acquisition unit FN12 acquires measurement data to be determined for behavior.
- the main data flow in the determination process is shown by a “solid line”.
- the functional configuration is not limited to the configuration shown in the figure.
- the data feature generation unit FN21 and the determination unit FN3 may be integrated.
- the filter unit FN4, the window acquisition unit FN5, the data feature generation unit FN21, and the like may be integrated.
- the filter unit FN4, the window acquisition unit FN5, the data feature generation unit FN21, the determination unit FN3, and the like may be integrated.
- processing can be performed as follows, for example.
- FIG. 28 is a diagram showing an example of determination processing of arbitrary measurement data by the behavior determination system.
- the measurement data acquisition unit FN1 acquires the measurement data for generating the learning data DLE.
- the generation unit FN2 performs a process of generating data features to generate training data DLE, and further performs a process of generating a classification model MDL, that is, a learning process, and the classification is performed.
- a model MDL can be generated.
- the determination process is performed in order from the measurement data acquisition procedure PR1.
- the behavior determination system acquires the measurement data DM.
- the action judgment system filters the measurement data DM.
- the action judgment system sets a window for the filtered measurement data DM and the like.
- the action determination system performs an extraction procedure PR4 or the like in which parameters or the like are extracted from the range in which the window is set. In this way, the determination procedure PR5 and the like are performed using the range specified in the window, the extraction parameters, and the like.
- the behavior judgment system judges the behavior by the classification model MDL generated by the learning process or the like. Specifically, the classification model MDL sets the behavior to be classified in advance as shown in FIG. 12 or FIG.
- the classification model MDL is based on the measurement data and the data features (parameters, etc.) obtained from the measurement data, such as the first judgment result RS1, the second judgment result RS2, ... Then, the action is judged for each window.
- the processing using the determination result is performed like the energy consumption calculation unit FN6 by using the data such as the first determination result RS1 and the second determination result RS2 to be determined in this way.
- the process using the determination result is not limited to the energy consumption calculation.
- the behavior determination system determines the behavior at predetermined time intervals (hereinafter, outputting the result of determining the behavior by processing using the classification model at predetermined time intervals is referred to as "voting"). You may output the judgment result which finally judged one action using the voting result.
- a predetermined time which is a unit of time for voting, is set in advance to about several seconds.
- the predetermined time may be the size of the window. That is, voting is a judgment made in units of time shorter than the final judgment. Specifically, when the final judgment is made in units of about "30" to "60” seconds, voting is performed in units of, for example, "2.5" to "7.5” seconds. You may. With such a time, multiple voting results can be obtained before making the final decision.
- the action judgment system makes a final judgment based on a plurality of voting results.
- the action judgment system adopts the action of the most voting result among a plurality of voting results as the final judgment result.
- the behavior determination system makes a final determination that the user's behavior during the time when these three voting results are obtained is "walking", and outputs the determination result indicating "walking" to the user or the like.
- the first determination result RS1 is output for a window for a certain 10 seconds.
- the second determination result RS2 is output to the window for the next 10 seconds by the same determination process.
- "X" determination results are output, such as "first determination result RS1" to "X determination result”.
- each judgment result from the first judgment result to the X judgment result is regarded as "voting".
- the most votes are totaled from the voting results from the start to 60 seconds later. In this way, the determination result with the most votes may be adopted as the final determination result of the target "60 seconds".
- the action judgment system can accurately judge the action.
- FIG. 29 is a diagram showing the experimental results.
- the illustrated experimental result is the result of verifying whether or not the judgment result of the behavior judgment system, which is the functional configuration shown in FIG. 26, classifies the behavior and the actual behavior, and evaluates the so-called "correct answer rate".
- the measurement data is the data measured when 14 people acted 11 action patterns in 4 minutes for each pattern, the window acquisition is performed every 5 seconds, and one window possesses the measurement data for 10 seconds. did.
- a random forest is used for the classification model, and the number of decision trees is "100", the minimum number of required samples that allow branching is "2", Verbose is "1", and Number of each.
- An experiment was conducted with an example in which jobs were set to "-1" and Random status was set to "25". The numerical value in the figure indicates a ratio, and for example, "1.00” indicates "100%”.
- the horizontal axis "Predicted label” is the behavior predicted by the behavior judgment system, that is, the judgment result.
- the vertical axis "True label” is an action actually performed (hereinafter referred to as "actual action”).
- the experimental result shown on the diagonal line is the case where the judgment result and the actual behavior match.
- the experimental results shown diagonally are referred to as "correct answer GD".
- the accuracy as a whole that is, the ratio of correct answer GD is "84%", and the action can be judged with accuracy as a whole.
- the behavior determination system can determine behaviors such as running, sitting, walking, and riding a bicycle with a high accuracy of 80% or more, as shown in the figure.
- FIG. 30 is a diagram showing the experimental results using the SVM classification model.
- the horizontal axis and the vertical axis are the determination result and the actual action as in FIG. 29. Therefore, as in FIG. 29, in the figure, the experimental result shown on the diagonal line is the case where the judgment result and the actual action are the same “correct answer”.
- the accuracy as a whole that is, the percentage of correct answers is "92.6%", and the action can be judged with high accuracy as a whole.
- FIG. 31 is a diagram showing the experimental results using the classification model of the decision tree.
- the horizontal axis and the vertical axis are the determination result and the actual action as in FIG. 29. Therefore, as in FIG. 29, in the figure, the experimental result shown on the diagonal line is the case where the judgment result and the actual action are the same “correct answer”.
- FIG. 31 is an experimental result when the same measurement data as in FIG. 30 is targeted and the classification model used is changed.
- the accuracy as a whole that is, the percentage of correct answers is "93.7%”, and the action can be judged with high accuracy as a whole. Further, as can be seen in comparison with FIG. 30, it is possible to judge the action more accurately by using the decision tree.
- the classification model is not limited to SVM or decision tree as described above. That is, the behavior determination system may have a configuration in which so-called AI (Artificial Intelligence), in which machine learning is performed to learn the determination method, is applied.
- AI Artificial Intelligence
- pressure was mainly used as an example, but the force may be measured using a force sensor. Further, a pressure or the like that can be calculated by measuring the force and dividing the force by the area may be used in a state where the area for measuring the force is known in advance.
- the behavior determination system 100 is not limited to the system configuration shown in the figure. That is, the behavior determination system 100 may further include an information processing device other than the one shown in the figure. On the other hand, the behavior determination system 100 may be realized by one or more information processing devices, and may be realized by fewer information processing devices than the illustrated information processing devices.
- each device does not have to be realized by one device. That is, each device may be composed of a plurality of devices. For example, each device in the action determination system 100 may perform each process in a plurality of devices in a distributed manner, in parallel, or redundantly.
- each process according to the present invention is described in a low-level language such as an assembler or a high-level language such as an object-oriented language and is realized by a program for causing a computer to execute an action determination method.
- the program is a computer program for causing a computer such as an information processing device or an information processing system having a plurality of information processing devices to execute each process.
- the arithmetic unit and the control device of the computer perform the arithmetic and control based on the program in order to execute each process.
- the storage device of the computer stores the data used for the processing based on the program in order to execute each processing.
- the program can be recorded and distributed on a computer-readable recording medium.
- the recording medium is a medium such as an auxiliary storage device, a magnetic tape, a flash memory, an optical disk, a magneto-optical disk, or a magnetic disk.
- the program can be distributed over telecommunication lines.
Landscapes
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Pathology (AREA)
- Veterinary Medicine (AREA)
- Biomedical Technology (AREA)
- Heart & Thoracic Surgery (AREA)
- Medical Informatics (AREA)
- Public Health (AREA)
- Surgery (AREA)
- Animal Behavior & Ethology (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Physiology (AREA)
- Dentistry (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Psychiatry (AREA)
- Signal Processing (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
行動判定装置は、ユーザが行う行動を分類するのに用いられる分類モデルを有する行動判定装置であって、前記ユーザの足底面に設置される1以上のセンサが計測する圧力又は力を示す計測データを取得する計測データ取得部と、前記計測データをデータ処理してデータ特徴を計算し、前記分類モデルを用いて前記ユーザの行動を判定する判定部とを含む。
Description
本発明は、行動判定装置、行動判定システム、行動判定方法及びプログラムに関する。
IoT(Internet of Things)技術が知られている。そして、IoT技術等により、日常生活等におけるユーザの行動を分析する方法が知られている。
具体的には、例えば、行動判定装置が、まず、加速度センサ等のセンサによって、加速度を計測した時系列データを生成する。そして、行動判定装置は、時系列データから時間窓を用いてデータを切り出す。さらに、行動判定装置は、時間窓の大きさを変えて、時系列データから複数の特徴量を計算する。なお、特徴量は、平均若しくは分散等の統計量、又は、FFT(Fast Fourier Transform)パワースペクトル等である。このような特徴量に基づいて、止まる、走る、及び、歩くといった行動を想定して、行動判定装置は、個別の行動を判定する。このような個別の行動が判定できると、全体としてどのような行動をしているかが判定でき、高精度な行動判定が可能となる方法が知られている(例えば、特許文献1等を参照)。
例えば、ユーザが身に付ける、又は、ユーザが携帯する加速度センサ等が計測する加速度等を示すセンサデータを通信によって行動識別装置が取得する。そして、行動識別装置は、ニューラルネットワーク、SVM(Support Vector Machine)、ベイジアンネットワーク又は決定木等の識別モデルを用いることで、ユーザが行っている行動を停止、歩行、走行、階段を昇降、電車に乗車、自動車に乗車又は自転車の運転等のうち、いずれかに分類する。さらに、行動の識別を行った後、次に識別処理を開始するまでの時間的な間隔を算出して、行動識別装置は、算出した時間が経過すると次回の識別処理を行う。このようにして、消費電力を抑制する方法が知られている(例えば、特許文献2等を参照)。
しかしながら、従来の方法は、ユーザの行動を判定する精度が十分でない場合が多い。
そこで、本発明に係る一実施形態は、ユーザが行っている行動を精度よく判定することを目的とする。
上記目的を達成するために、本発明の一実施形態に係る、行動判定装置は、ユーザが行う行動を分類するのに用いられる分類モデルを有する行動判定装置であって、
前記ユーザの足底面に設置される1以上のセンサが計測する圧力又は力を示す計測データを取得する計測データ取得部と、
前記計測データをデータ処理してデータ特徴を計算し、前記分類モデルを用いて前記ユーザの行動を判定する判定部と
を含む。
前記ユーザの足底面に設置される1以上のセンサが計測する圧力又は力を示す計測データを取得する計測データ取得部と、
前記計測データをデータ処理してデータ特徴を計算し、前記分類モデルを用いて前記ユーザの行動を判定する判定部と
を含む。
上記構成により、ユーザが行っている行動を精度よく判定することができる。
以下、本発明に係る最適な実施形態について、添付する図面を参照して具体例を説明する。
<システム構成例>
図1は、システムの構成例を示す機能ブロック図である。例えば、行動判定システム100は、計測デバイス(図示するように、以下の例は、靴型のデバイスとする例である。)2、情報端末3及びサーバ装置5等を有する。なお、行動判定システム100には、図示するように、管理端末6等の情報処理装置が更にあってもよい。以下、図示する行動判定システム100を例に説明する。また、図示する行動判定システム100は、サーバ装置5が行動判定装置となる例である。以下、サーバ装置5を行動判定装置の例として説明するが、行動判定装置は、図示する以外の形態で用いられてもよい。
図1は、システムの構成例を示す機能ブロック図である。例えば、行動判定システム100は、計測デバイス(図示するように、以下の例は、靴型のデバイスとする例である。)2、情報端末3及びサーバ装置5等を有する。なお、行動判定システム100には、図示するように、管理端末6等の情報処理装置が更にあってもよい。以下、図示する行動判定システム100を例に説明する。また、図示する行動判定システム100は、サーバ装置5が行動判定装置となる例である。以下、サーバ装置5を行動判定装置の例として説明するが、行動判定装置は、図示する以外の形態で用いられてもよい。
行動判定システム100では、図示するように、ユーザが使用する靴1(以下、左右同一の構成であるとし、一方の説明だけとする。また、靴は、左右で1対である。)には、計測デバイス2が設けられる。
図示するように、計測デバイス2は、センサ部21及び通信部22等を有する機能構成である。
計測デバイス2は、まず、センサ部21によって、ユーザの足底面における圧力を計測する。又は、センサ部21は、ユーザの足底面における力を計測してもよい。
次に、通信部22は、センサ部21によって計測される計測データ等をBluetooth(登録商標)又は無線LAN(Local Area Network)等の無線通信により、情報端末3に送信する。
情報端末3は、例えば、スマートフォン、タブレット、PC(Personal Computer)又はこれらの組み合わせ等の情報処理装置である。
計測デバイス2は、例えば、10ms(ミリ秒、100Hz)ごとに、計測データを情報端末3に送信する。このように、計測デバイス2は、あらかじめ設定される所定間隔で計測データを情報端末3に送信する。
センサ部21は、例えば、いわゆるインソール(中敷き)型の基材211等に1以上設置される圧力センサ212等で実現される。なお、圧力センサ212は、インソールに設置されるに限られない。例えば、圧力センサ212は、靴下又は靴底等に設置されてもよい。
なお、センサは、圧力センサ212以外に、剪断力(摩擦力)センサ、加速度センサ、温度センサ、湿度センサ又はこれらの組み合わせ等が更にあってもよい。
また、インソールには、情報端末3側からの制御により、色が変化する機構(視覚刺激を与える機構)、又は、素材が変形したり、硬さが変化したりする機構(触覚刺激を与える機構)が設けられてもよい。
ほかにも、情報端末3には、ユーザに示す歩行又は足部の状態がフィードバックされてもよい。また、通信部22は、GPS(Global Positioning System)等によって、位置データ等を送信してもよい。なお、位置データは、情報端末3によって取得されてもよい。
情報端末3は、あらかじめ設定される所定間隔(例えば、10秒ごと等である。)ごとに、計測デバイス2から受信する計測データをインターネット等のネットワーク4を介してサーバ装置5に送信する。
また、情報端末3は、サーバ装置5から、ユーザの歩行又は足部の状態等を示すデータを取得して画面に表示し、ユーザに歩行又は足部の状態等をフィードバックしたり、靴の選択を支援したりする機能を有してもよい。
なお、計測データ等は、計測デバイス2からサーバ装置5にデータが直接に送信されてもよい。この場合には、情報端末3は、例えば、計測デバイス2に対する操作又はユーザへのフィードバック等に用いられる。
サーバ装置5は、例えば、基本データ入力部501と、計測データ受信部502と、データ解析部503と、行動判定部507と、データベース521とを含む機能構成である。また、サーバ装置5は、図示するように、ライフログ書込部504等を含む機能構成でもよい。以下、図示する機能構成を例にサーバ装置5を説明するが、サーバ装置5は、図示する機能構成に限られない。
基本データ入力部501は、ユーザ及び靴等の基本的なデータの設定を受け付ける基本データ入力手順を行う。例えば、基本データ入力部501が受け付けた設定は、データベース521上のユーザデータ522等に登録される。
計測データ受信部502は、計測デバイス2から情報端末3を介して送信されるデータ等を受信する計測データ受信手順を行う。そして、計測データ受信部502は、データベース521上の計測データ524等に受信したデータを登録する。
データ解析部503は、計測データ524等を解析して解析処理後データ525等を生成するデータ解析手順を行う。
ライフログ書込部504は、ライフログデータ523をデータベース521上に登録する。
学習モデル生成部505は、学習データ526等に基づいて、学習処理を行う。このように、学習処理を行うことで、学習モデル生成部505は、学習モデルを生成する。
行動判定部506は、行動判定処理等によってユーザがどのような行動をしているかを判定する行動判定手順を行う。
また、管理者は、管理端末6等によって、ネットワーク4を介してサーバ装置5にアクセスできる。そして、管理者は、サーバ装置5で管理されるデータを確認したり、又は、メンテナンス等ができたりする。
図示するように、データベース521には、例えば、ユーザデータ522、ライフログデータ523、計測データ524、解析処理後データ525、学習データ526及び行動データ527等のデータが保持される。例えば、各データは、以下のような構成である。
<データ例>
図2は、データの一例を示す図である。
図2は、データの一例を示す図である。
ユーザデータ522は、図示するように、「ユーザID(Identification)」、「名前」、「靴ID」、「性別」、「生年月日」、「身長」、「体重」、「靴サイズ」、「登録日」及び「更新日」等の項目を有するデータである。すなわち、ユーザデータ522は、ユーザの特徴等を入力するデータである。
図3は、データの一例を示す図である。
ライフログデータ523は、図示するように、「ログID」、「年月日時刻」、「ユーザID」、「1日の予定」、「目的地」、「移動距離」、「歩数」、「平均歩行速度」、「最多位置情報(GPS)」、「登録日」及び「更新日」等の項目を有するデータである。すなわち、ライフログデータ523は、ユーザの行動(予定が含まれてもよい。)を示すデータである。
図4は、データの一例を示す図である。
計測データ524は、図示するように、「年月日時刻」、「ユーザID」、「左足1番センサ:後足部圧力値」、「左足2番センサ:外側中足部圧力値」、「左足3番センサ:外側前足部圧力値」、「左足4番センサ:前足親指部圧力値」、「左足5番センサ:内側前足部圧力値」、「左足6番センサ:中足中央部圧力値」、「左足7番センサ:前足中央部圧力値」、「右足1番センサ:後足部圧力値」、「右足2番センサ:外側中足部圧力値」、「右足3番センサ:外側前足部圧力値」、「右足4番センサ:前足親指部圧力値」、「右足5番センサ:内側前足部圧力値」、「右足6番センサ:中足中央部圧力値」及び「右足7番センサ:前足中央部圧力値」等の項目を有するデータである。なお、各センサの具体的な配置例は、図7等で説明する。また、計測データ524が示す各圧力値は、計測された時間でプロットして波形データの形式としてもよい。
図5及び図6は、データの一例を示す図である。
解析処理後データ525は、図示するように、計測データを解析して、ピーク等を算出した結果及びウィンドウ等の設定内容を示すデータである。
「ウィンドウ番号」(window No)は、複数のウィンドウがある場合において、それぞれのウィンドウを識別するための通し番号又は識別番号等である。
「ウィンドウ開始時間」は、ウィンドウの開始となる時点を示す。
「ウィンドウ終了時間」は、ウィンドウの終了となる時点を示す。
「ピーク値」は、ピーク点が示す値である。
「ピーク出現時間」は、ピーク点が抽出された時点を示す。
「ピーク間時間距離」は、前のピーク点が抽出された時点から次のピーク点(対象となるピーク点である。)が出現するまでの時間の間隔を平均した値等を示す。
「ピーク前後の時間距離(ピーク幅)」は、あるピーク点の前後で所定値以上を示すデータが現れる時間の間隔を示す。
「片足全センサの時点最大値時間列データ」は、片足分の全センサが計測する計測データの各時点の最大値を時系列で連続して記憶するデータである。
「片足全センサの時点最大値時間列データのピーク間最小値」は、「片足全センサの時点最大値時間列データ」で示されるピーク点と次のピーク点の間で最小の値を示す。
「左右の圧力値がともに非ゼロである時間の和」は、左足及び右足がどちらも「0(ゼロ)」でない(すなわち、足が接地して圧力が発生している状態である。)時間を総和した値を示す。
「片足にある前足部センサの時点最大値時間列データ」は、全センサのうち、前足部を計測するセンサが計測する計測データの各時点の最大値を時系列で連続して記憶するデータである。
「各時点の全センサ圧力総和値を高速フーリエ変換した周波数分量データ」は、全センサが示す計測値を時点ごとに総和した時間列データに対して、高速フーリエ変換(FFT)を行った結果を示すデータである。
学習データ526は、例えば、図示するような「ウィンドウ番号」、「統計学特徴」、「ピーク特徴」、「歩行周期特徴」、「足底圧力偏向特徴」、「FFT特徴」及び「行動ラベル」等を示すデータである。
「ウィンドウ番号」は、解析処理後データ525と同様のデータである。
「統計学特徴」は、最大値、中央値、平均値及び標準偏差のように、圧力値を統計処理して得られる値である。
「ピーク特徴」は、ピーク点の数、ピーク点間の間隔(平均値及び標準偏差といった統計処理をして得られる値を含む。)、ピークの幅(平均値及び標準偏差といった統計処理をして得られる値を含む。)、及び、ピーク点となる値(平均値及び標準偏差といった統計処理をして得られる値を含む。)等である。
「歩行周期特徴」は、歩行のステップを示す脚期データ等を解析して得られる値である。
「足底圧力偏向特徴」は、足底面にかかる圧力の前後方向および内側外側方向の偏り方を分析して得られる値である。
「FFT特徴」は、片足分の全センサが計測した圧力値を総和して時系列としたデータに対してFFTを行った処理結果から得られる値である。なお、<FFT特徴>の詳細な説明は後述する。
「行動ラベル」は、あらかじめ分類されているユーザの行動のうち、行っていた行動の分類を示す。
行動データ527は、行動判定部506によるユーザの行動を判定した結果を示すデータである。すなわち、行動データ527は、ユーザがどのような行動をしたか等が保持される。
なお、ユーザデータ522及びライフログデータ523は、必須なデータではない。同様に、計測データ524、解析処理後データ525及び学習データ526は、図示するようなデータでなくともよい。また、各データは、図示するような項目をすべて有さなくともよい。すなわち、計測データ524は、センサ部21が計測する圧力又は力を示すデータであればよい。そのため、平均値、分散、標準偏差又は中央値等のような統計値は、後段の処理に用いる場合に計算して生成される等でもよく、必須な構成ではない。
また、行動判定システム100は、図示するような全体構成でなくともよい。例えば、計測デバイス2、情報端末3、サーバ装置5及び管理端末6等は、一体であってもよい。
ただし、システム構成において、図示するように、センサ部21及び通信部22等のように、計測データを生成するための構成が靴1に設置され、靴1とは別に、計測データを処理及び記憶等するサーバ装置5等が設置される構成が望ましい。具体的には、行動判定システム100は、センサ及び計測データを送信する送信器と、計測データを受信する受信器及び計測データに基づく処理を行う演算装置等とは、ネットワークを介して接続する別の装置であるのが望ましい。
センサ及び通信器等は、小型で軽量な装置が多いため、靴1等に設置してもユーザの行動に影響を与える可能性が低い。一方で、演算装置及び記憶装置等を有する装置は、サーバ装置5のように、センサ等と比較すると大型の装置が多い。そこで、サーバ装置5は、情報処理装置を管理する部屋のような場所に設置される方が望ましい。
また、靴1に設置される装置は、ユーザが激しい運動をする、又は、雨天等の厳しい環境下で行動する等によって、故障しやすい場合が多い。そのため、センサ部21のように、交換が容易なハードウェアが靴1に設置されるハードウェア構成が望ましい。
一方で、センサ及び電子回路等が靴1にすべて備わるようなハードウェア構成(例えば、特開2009-106545号公報が示す構成等である。)であると、例えば、センサだけが故障した場合のように、一部の部品等が故障した場合であっても、まだ使用が可能な部品も含めてすべて取り換えなければならない場合が多い。
ゆえに、ハードウェアが故障しやすい環境となる、靴1には、判定行動システム及び行動判定装置を実現するハードウェアのうち、センサのように、できるだけ、安価、小型、軽量、交換容易、又は、衝撃等に対して高耐久性のある等の特性があるハードウェアが設置されるハードウェア構成であるのが望ましい。
<センサの配置例>
図7は、センサ位置の例を示す配置図である。例えば、センサは、図示するような位置に設置される。なお、センサは、例えば、「7番センサ」のように、足底面のうち、ユーザの進行方向(図では、縦方向である。)に対して直交する方向(以下単に「直交方向」という。直交方向は、図では、横方向である。)又は靴の幅において、最も広い幅(図では、「最大幅MXW」の線上のうち、いずれかの位置である。)の中央部分等に、センサが設置される配置であるのが望ましい。すなわち、センサ位置は、親指中足骨と小指中足骨の中足趾節関節側の端部を結ぶ直線の中央、又は、母指球と小指球を直線で結ぶ中央等である。
図7は、センサ位置の例を示す配置図である。例えば、センサは、図示するような位置に設置される。なお、センサは、例えば、「7番センサ」のように、足底面のうち、ユーザの進行方向(図では、縦方向である。)に対して直交する方向(以下単に「直交方向」という。直交方向は、図では、横方向である。)又は靴の幅において、最も広い幅(図では、「最大幅MXW」の線上のうち、いずれかの位置である。)の中央部分等に、センサが設置される配置であるのが望ましい。すなわち、センサ位置は、親指中足骨と小指中足骨の中足趾節関節側の端部を結ぶ直線の中央、又は、母指球と小指球を直線で結ぶ中央等である。
一方で、他の位置にあるセンサは省略されてもよいし、又は、図示する以外の位置にセンサがある配置でもよい。ただし、センサの位置は、図示する位置に厳密でなくともよく、例えば、他のセンサで計測される計測データ等から計算されてもよい。
少なくとも、「7番センサ」に示す位置を含むようなセンサの配置であるのが望ましい。このようなセンサの配置であると、例えば、特表2013-503660号公報に示す、親指部分、中骨足の先端部分、足の側面に近い部分、及び、踵部分を計測する場合よりも、行動判定システム100は、精度良く行動を判定できる。
また、ズボン又は靴下等にセンサを設置する構成であると、ユーザは、センサが設置されたズボン及び靴下等を着ないとならない。一方で、図示するように、足底面等を対象とする場合には、インソール等だけが専用であるため、インソールを変えれば、靴もユーザが好む靴でも判定が可能である。さらに、衣類等は、判定に影響が少ないため、ユーザがどのような衣類であっても、判定が可能である。
また、センサは、足が接地しているか否かが分かる程度の2値出力(出力が「0」か、又は、「OFF」のどちらである出力をいう。)でなく、力又は圧力を数値等(何Pa等のように、接地しているか否かだけでなく、力又は圧力の強弱まで分かる出力をいう。)で出力するセンサが望ましい。すなわち、センサは、多段階又はアナログの出力が可能なセンサが望ましい。
2値出力のセンサであると、圧力又は力の強弱等が不明であるため、計測データを解析しても、ピーク点等を抽出するのが難しい。また、2値出力では、平均値又は最大値等の統計値のような値が算出できない場合があり、2値出力のセンサを用いると、算出できる種類が、数値等を出力できる場合と比較して少ない。一方で、力又は圧力を数値等で出力するセンサを用いると、行動判定システム100は、精度よく行動を判定できる。
さらに、行動判定システム100は、ズボン等に設置され、引張力等を計測するセンサと組み合わせなくとも行動が判定できる。つまり、行動判定システム100は、ユーザの膝関節がどのような角度になっているかというデータがなくとも行動が判定できる。したがって、行動判定システム100は、膝関節等を計測するセンサが不要にできるハードウェア構成である。同様に、GPS(Global Positioning System)等の複数種類のセンサを組み合わせて使用するハードウェア構成(例えば、特開2011-138530号公報が示す構成等である。)でなくとも、行動判定システム100は、足底面において、力又は圧力が計測できるセンサがあれば十分なハードウェア構成である。
図示する配置例では、「1番センサ」等が、後部を計測し、計測データを生成する。すなわち、後足部HELに設置されるセンサが、足底面における後部を計測するためのセンサの例となる。そして、後足部HELに設置されるセンサは、主に、踵部等がある、いわゆる「後足部」と呼ばれる範囲を計測対象とする。
また、図示する配置例では、「2番センサ」及び「6番センサ」等が、中部を計測し、計測データを生成する。すなわち、外側中足部LMF及び中足中央部MMF等に設置されるセンサが、足底面における中部を計測するためのセンサの例となる。そして、外側中足部LMF及び中足中央部MMFに設置されるセンサは、主に、いわゆる「中足部」と呼ばれる範囲を計測対象とする。
さらに、図示する配置例では、「3番センサ」、「4番センサ」、「5番センサ」及び「7番センサ」等が、前部を計測し、計測データを生成する。すなわち、外側前足部LFF、前足親指部TOE、内側前足部FMT及び前足中央部CFF等に設置されるセンサが、足底面における前部を計測するためのセンサの例となる。
外側前足部LFF、前足親指部TOE、内側前足部FMT及び前足中央部CFFに設置されるセンサは、主に、つま先等がある、いわゆる「前足部」と呼ばれる範囲を計測対象とする。
<ハードウェア構成例>
図8は、計測デバイス、情報端末、サーバ装置及び管理端末等の情報処理装置が有する情報処理に係るハードウェア構成例を示すブロック図である。図示するように、計測デバイス、情報端末、サーバ装置及び管理端末等の情報処理装置は、例えば、一般的なコンピュータである。以下、各情報処理装置が同一のハードウェア構成の例で説明するが、各情報処理装置は、異なるハードウェア構成でもよい。
図8は、計測デバイス、情報端末、サーバ装置及び管理端末等の情報処理装置が有する情報処理に係るハードウェア構成例を示すブロック図である。図示するように、計測デバイス、情報端末、サーバ装置及び管理端末等の情報処理装置は、例えば、一般的なコンピュータである。以下、各情報処理装置が同一のハードウェア構成の例で説明するが、各情報処理装置は、異なるハードウェア構成でもよい。
計測デバイス2等は、バス207を介して相互に接続されるCPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203及びSSD(Solid State Drive)/HDD(Hard Disk Drive)204等を有する。また、計測デバイス2等は、接続I/F(Interface)205及び通信I/F206等の入力装置及び出力装置を有する。
CPU201は、演算装置及び制御装置の例である。そして、CPU201は、RAM203等の主記憶装置をワークエリアとし、ROM202又はSSD/HDD204等の補助記憶装置に格納されたプログラムを実行すると、各処理及び各制御を行うことができる。そして、計測デバイス2等が有する各機能は、例えば、CPU201において所定のプログラムが実行されることで実現される。なお、プログラムは、記録媒体を経由して取得されてよいし、ネットワーク等を経由して取得されるものでもよいし、ROM等にあらかじめ入力されてもよい。
図示するようなハードウェア構成では、例えば、計測データ受信部502は、接続I/F205又は通信I/F206等で実現される。また、データ解析部503及び行動判定部506は、例えば、CPU201等で実現される。
<全体処理例>
図9は、全体処理例を示すフローチャートである。図示するように、全体処理は、ユーザが行う行動を分類するモデル(以下「分類モデル」という。)を生成する処理である「学習処理」のプロセスと、学習処理であらかじめ生成される分類モデルに基づいて、「分類モデルを用いる判定を実行」するプロセスとを有する。
図9は、全体処理例を示すフローチャートである。図示するように、全体処理は、ユーザが行う行動を分類するモデル(以下「分類モデル」という。)を生成する処理である「学習処理」のプロセスと、学習処理であらかじめ生成される分類モデルに基づいて、「分類モデルを用いる判定を実行」するプロセスとを有する。
なお、学習処理と分類モデルを用いる判定を実行の処理は、分類モデルを用いる判定を実行する前に、学習処理によって分類モデルが生成されていればよいため、処理が連続して実行される必要はない。
また、以前に学習処理を実行して分類モデルを生成し、以降、分類モデルを用いる判定を実行する処理のみを行うような全体処理の構成でもよい。すなわち、分類モデルは、少なくともあらかじめ1つ生成されていればよく、何度も同じ分類モデルが用いられてもよいし、又は、分類モデルを用いる判定を実行するごとに分類モデルが生成されてもよい。
まず、学習処理が、例えば、図示するように、ステップS1及びステップS2の順序で行われる。
<学習データとなる計測データの取得例>
ステップS1では、行動判定装置は、学習データとなる計測データを取得する。また、計測データ等には、計測データが取得される際に行われていた行動を示す行動ラベルが付与される。
ステップS1では、行動判定装置は、学習データとなる計測データを取得する。また、計測データ等には、計測データが取得される際に行われていた行動を示す行動ラベルが付与される。
<分類モデルの生成例>
ステップS2では、行動判定装置は、分類モデルを生成する。
ステップS2では、行動判定装置は、分類モデルを生成する。
分類モデルは、例えば、以下のような決定木であるのが望ましい。
<分類モデルの例>
図10は、決定木の例を示す図である。図示する決定木TRBは、学習処理で生成される分類モデルの一部である。
図10は、決定木の例を示す図である。図示する決定木TRBは、学習処理で生成される分類モデルの一部である。
図示するように、決定木TRBは、後段に行われる分類モデルを用いる判定を実行する処理において、計測データが示すユーザの行動を分類するのに用いられる。したがって、学習処理では、計測データ及び解析処理後データから得られる学習データを用いて、決定木TRBのように段階的にいくつかの判定を行って最終的にユーザの行動を分類する判定処理を行うため、決定木TRBが生成される。
具体的には、決定木TRBは、ステップS1において計測データが取得されると、図示する例では、最初に、後段で学習データを得るための解析処理後データ525が作成され、それによって得られるデータ特徴を学習データとして、最も上段の判定(以下「第1判定J1」という。)を行動判定装置に行わせる。すなわち、第1判定J1において、学習データである判定の対象となる値等(以下「パラメータ」という。)を学習処理することによってパラメータに対する判定条件(以下単に「判定条件」という。)等が決まる。このように判定条件が複数定まっていくと、決定木TRBのような分類モデルが生成できる。
以下、パラメータをデータ特徴の例とする。データ特徴は、計測データが示す様々な特徴を示す値又は傾向等である。例えば、データ特徴は、計測データに対し、統計処理等のデータ処理を行うと計算される統計値等のパラメータである。
なお、データ特徴は、センサが1つ、かつ、パラメータが1つであって、合計で1つでもよいし、又は、センサ若しくはパラメータが2つ以上であって、合計が複数でもよい。
次に、図示する決定木TRBを用いる判定では、第1判定J1の判定条件を満たす学習データが対象であると(図において「True」の場合である。)、第2判定J2について、判定が行われる。
一方で、第1判定J1の判定条件を満たさない学習データが対象であると(図において「False」の場合である。)、第3判定J3について、判定が行われる。すなわち、決定木TRBは、第1判定J1の次に、第2判定J2又は第3判定J3の判定を行うように、段階的に(図では、上から下に向かって複数の判定が順に行われることを示す。)判定を行うようにして、1つの判定結果に辿り着けるようにする判定処理を実現させる。
なお、図では、第1判定J1乃至第3判定J3等の各判定で、一番上に表記する判定条件(例えば、第1判定J1における「peakwthstdL」は、左足(「L」で示す。)におけるピーク幅の平均値を示す。)は、その判定(この場合には、第1判定J1を指す。)において、判定条件が適用されているデータ特徴を示す。
また、そのほかの表記である「gini」は、ジニ不純度を示す。また、「samples」は、その判定で利用されているウィンドウレコード数を示す。さらに、「value」は、サンプルデータの処理数を示す。また、「class」は、判定の結果、与えられる行動ラベルを示す。なお、判定条件には、これら以外の種類が含まれてもよい。
また、決定木TRBは、複数生成されるのが望ましい。ただし、決定木TRBは、1つでもよい。このように、ひとつの分類モデルに複数の決定木TRBがある場合には、行動判定装置は、それぞれの決定木TRBを別々に用いて、決定木TRBごとに「決定木を用いる判定の実行」を実行する。
決定木TRBは、異なる判定条件又はパラメータとなるように生成される。したがって、複数行われる「決定木を用いる判定の実行」は、異なる判定結果となる場合が多い(ただし、判定条件が異なっても、すべて同じ判定結果になる場合を含む)。このような場合には、分類モデルは、複数の決定木TRBによる判定結果を集計し、最も多い判定結果を採用するように「分類モデルによる判定」を行うのが望ましい。
なお、パラメータには、データ特徴として、例えば、統計学特徴、ピーク特徴、歩行周期特徴、FFT特徴、足底圧力偏向特徴の各特徴を示す学習データ、又は、これらの組み合わせが用いられるのが望ましい。また、パラメータは、これらの複数の値を平均した平均値等の統計値であってもよい。このようなパラメータが用いられると、行動判定装置は、精度良くユーザの行動を判定できる。パラメータの詳細は後述する。
なお、分類モデルは、図示するような決定木TRBに限られない。すなわち、分類モデルは、計測データに基づくパラメータ等に基づいて、ユーザの行動が分類できる判定条件等が定まるデータであれば、形式等は決定木でなくともよい。
一方で、分類モデルに決定木が含まれる場合には、決定木を生成する処理、すなわち、学習処理には、設定等がされるのが望ましい。例えば、設定がないと、決定木は、いわゆる「過学習」(over-learning又はover-training)(「過剰適合」(overfitting)等と呼ばれる場合もある。)等になる場合が多い。
したがって、学習処理は、過学習等を回避するために、ひとつは、分類モデル(ランダムフォレスト、決定木が集まった森)に含まれる決定木の数、もうひとつは判定処理(木の分岐)を許すために必要とされるサンプルの最小数をあらかじめ考慮することが望ましい。
決定木における木の分岐(主に、決定木における分岐の数となる。)を制限すると、間接的にその決定木の最大の深さ(図では、上下方向の段階数又はボックスの数となる。)を限定できる。
このほかには、分岐の末端(図では、例えば、第1末端部L1又は第2末端部L2である。)に含まれるサンプルの最小数(仮に、ひとつ上の判定で分岐に必要な数のサンプルがあったとしても、次の分岐の片側にサンプルが少なくなり過ぎる場合に、分岐を止める。)等が設定されてもよい。さらに、ジニ不純度が減少する値の最小値(分岐が「決定」を実質的に改善しない場合に、分岐を止める。)、又は、決定木の深さの最大値等が設定されてもよい。
学習処理が行われると、各判定で用いられる、パラメータの種類、判定条件で基準に用いられるパラメータの値、又は、これらの組み合わせ等が変更される。したがって、学習処理によって、判定条件及び判定で用いられるパラメータの値等が変更されてもよい。一方で、ユーザ等によって判定条件及び判定で用いられるパラメータの値等が設定又は変更されてもよい。
<過学習軽減処理の実験例>
例えば、最初に、それぞれ「10」、「20」、「100」、「200」の数の木に対して、<分岐を許す必要サンプル数の最小数>の幅を「2」乃至「5」に設定して、学習プロセスを「10」回繰り返す実行とする。以上のような条件下で、「過学習」が軽減するような結果が得られた実験の結果を示す。
例えば、最初に、それぞれ「10」、「20」、「100」、「200」の数の木に対して、<分岐を許す必要サンプル数の最小数>の幅を「2」乃至「5」に設定して、学習プロセスを「10」回繰り返す実行とする。以上のような条件下で、「過学習」が軽減するような結果が得られた実験の結果を示す。
この場合、最適な「決定」となる<分岐を許す必要サンプル数の最小数>の設定値、すなわち、最適値は、平均で「2」となる。
次に、検証データセットに対して<分岐を許す必要サンプル数の最小数>を「2」に設定し、より粒度の細かい方法で<木の数>を最適化した。
以上のような条件下で、「1」乃至「500」までの<木の数>に対して学習プロセスを「100」回繰り返し実行した。この実験の結果、分類モデル(ランダムフォレスト)における決定木の<木の数>は、「100」が最適である実験結果となった。
なお、上記の実験結果は、実験を行う条件によって結果が異なる。したがって、<分岐を許す必要サンプル数の最小数>及び<木の数>に設定される最適な値は、上記の値に限られない。
<学習処理例>(Training phase)
以上のようなステップS1及びステップS2では、例えば、以下のように学習処理が行われる。
以上のようなステップS1及びステップS2では、例えば、以下のように学習処理が行われる。
図11は、学習処理に用いられる学習データセットと学習処理例を示す図である。図において、「window No」は、ウィンドウ(詳細は後述する。)を識別するための通し番号である。
また、「start(sec)」及び「end(sec)」は、ウィンドウで特定された学習データとなる計測データの範囲、すなわち、学習に用いるデータの範囲を特定する値である。具体的には、「start(sec)」は、ウィンドウの開始時点を計測データの開始時点から経過した時間(この例では、単位系は、「秒」である。)で示す。
一方で、「end(sec)」は、ウィンドウの終了時点を計測データの開始時点から経過した時間で示す。
具体的には、「window No」が「1」の場合、計測データの開始時点から「5」秒経過した時点を開始時点とし、かつ、計測データの開始時点から「15」秒経過した時点を終了時点とした「10」秒の範囲が判定の対象となるデータとなる。
「feat#1」乃至「feat#168」は、計測データ524又は解析処理後データ525に基づいて算出された値で、この判定に用いられるデータ特徴である。すなわち、「feat#1」等は、パラメータを示す。したがって、この例は、「168」の異なる種類のパラメータを算出して判定を行う例である。なお、パラメータの数は、「168」に限られない。
すなわち、パラメータの数は、センサの数又はセンサの設置個所(例えば、センサの設置個所が、片足のみであるか、若しくは、両足であるか、又は、センサが、前足部又は後足部にあるか等である。)に基づいて定まるのが望ましい。
センサの数を多くした場合には、センサが出力する計測データ等に基づいて生成できるパラメータの数も多くできる場合が多い。そこで、多くのセンサをなるべく有効に使用するには、センサの数に応じて、パラメータの数も増減するのが望ましい。
「ACTIVITY」は、あらかじめ当該のウィンドウ時間中に行われた行動について与えた行動ラベルを示す。そのため、学習処理では、実際にユーザが行った行動の種類、すなわち、「ACTIVITY」が、データ特徴の条件によって正しく、つまり、与えられた行動ラベルの通りに分類されるように、学習が行われる。
具体的には、「window No」が「4」の場合のように、「ACTIVITY」に示される実際の行動(図では、「run slow」である。以下、第1行動AC11という。)と、分類結果(図では、「run slow」である。以下、第1分類結果AC21という。)とが一致する場合がある。このように、「window No」が「4」の場合は、第1行動AC11及び第1分類結果AC21は、同一の行動の種類を示す結果となる例である。このような場合は、「正解」と評価される。
一方で、「window No」が「5」の場合のように、「ACTIVITY」に示される実際の行動(図では、「run slow」である。以下、第2行動AC12という。)と、分類結果(図では、「upstairs」である。以下、第2分類結果AC22という。)とが一致しない場合がある。このように、「window No」が「5」の場合は、第2行動AC12及び第2分類結果AC22は、異なる行動の種類を示す結果となる例である。このような場合は、「不正解」と評価される。
このようにして、学習処理では、「正解」が多くなり、かつ、決定木及び複数の決定木を集めた分類モデルが大きくなる、すなわち、ユーザの行動が精度よく判定できるように、分類モデルが生成される。
また、分類モデルは、例えば、以下のように、ユーザの行動を分類できるのが望ましい。
図12は、ユーザの行動を分類する第1例を示す図である。図示するように、分類モデルは、ユーザの行動を最終的に9種類のいずれかに分類ラベルできるのが望ましい。すなわち、「ACTIVITY」であらかじめ付与する行動ラベルは、図示する9種類のいずれかであることが望ましい。
「Sitting」は、ユーザが座っている行動(以下「座位行動TP1」という。)をしていると示す行動ラベルである。
「Standing」は、ユーザが立っている行動(以下「立姿勢行動TP2」という。)をしていると示す行動ラベルである。
「Non-locomotive」は、ユーザが動く方向の指向性を持たない動作をしている行動(以下「非一律動作行動TP3」という。)をしていると示す行動ラベルである。方向の指向性を持たない動作の例は、家事活動(掃除機をかけている、又は、洗濯物を干している等である。)である。
「Walking」は、ユーザが歩行している行動(以下「歩行行動TP4」という。)をしていると示す行動ラベルである。
「Walking slope」は、ユーザが傾斜を歩行している行動(以下「傾斜歩行行動TP5」という。)をしていると示す行動ラベルである。
「Climbing stairs」は、ユーザが階段を上っている行動(以下「階段を上る行動TP6」という。)をしていると示す行動ラベルである。
「Going downstairs」は、ユーザが階段を下っている行動(以下「階段を下る行動TP7」という。)をしていると示す行動ラベルである。
「Running」は、ユーザが走行している行動(以下「走行行動TP8」という。)をしていると示す行動ラベルである。
「Bicycle」は、ユーザが自転車に乗っている行動(以下「自転車行動TP9」という。)をしていると示す行動ラベルである。
なお、行動の種類は、以下のように、より細かく分類できるのが望ましい。
図13は、ユーザの行動を分類する第2例を示す図である。第1例と比較すると、第2例は、図示するようにユーザの行動を最終的に11種類の行動ラベルのいずれかに分類する点が異なる。具体的には、第2例では、歩行行動TP4、及び、走行行動TP8が、更に2つに分類される点が第1例と異なる。以下、第1例と同一の点は、同一の符号を付して説明を省略し、異なる点を中心に説明する。
「Walking slow」は、ユーザが低速で歩行している行動(以下「低速歩行行動TP41」という。)をしていると示す行動ラベルである。
「Walking fast」は、ユーザが高速で歩行している行動(以下「高速歩行行動TP42」という。)をしていると示す行動ラベルである。
「Running slow」は、ユーザが低速で走行している行動(以下「低速走行行動TP81」という。)をしていると示す行動ラベルである。
「Running fast」は、ユーザが高速で走行している行動(以下「高速走行行動TP82」という。)をしていると示す行動ラベルである。
このように、分類モデルによって、走行及び走行といった行動が低速であるか、又は、高速であるかまで分類されるのが望ましい。例えば、分類された行動ごとに、あらかじめ単位時間当たりに消費する消費エネルギーを割り当てる等の設定を行い、分類モデルを用いる判定を実行した後に、判定された行動の種類に基づいて、総消費エネルギーを計算する等といった、後段で判定結果を使用した処理が行われる場合がある。
このように、後段の処理がある場合には、行動が詳細に分類されている方が、後段の処理結果が精度良くなる場合が多い。具体的には、総消費エネルギーを計算する場合には、分類が第1例より第2例のように細かい方が、総消費エネルギーが精度良く計算できる。
<検証例>(Test phase)
また、学習処理に用いられる学習データのデータセットは、学習用と検証用に分けて利用されてもよい。例えば、学習データセットで分類モデルを生成した後、生成した分類モデルで検証データセットを分類するように判定する。なお、このように学習用と検証用に分けてデータセットを用いる場合には、検証用に用いられるデータセットには「ACTIVITY」(すなわち、「行動ラベル」である。)を持たせない。そして、分類モデルによる検証データセットを分類させる判定を行う。判定後、正しい「ACTIVITY」と判定の結果を照合し、分類モデルの精度を検証する。
また、学習処理に用いられる学習データのデータセットは、学習用と検証用に分けて利用されてもよい。例えば、学習データセットで分類モデルを生成した後、生成した分類モデルで検証データセットを分類するように判定する。なお、このように学習用と検証用に分けてデータセットを用いる場合には、検証用に用いられるデータセットには「ACTIVITY」(すなわち、「行動ラベル」である。)を持たせない。そして、分類モデルによる検証データセットを分類させる判定を行う。判定後、正しい「ACTIVITY」と判定の結果を照合し、分類モデルの精度を検証する。
より精度の高い分類モデルを生成するためには、学習処理を実行する際のデータ特徴の数と種類の選択を操作するのが望ましい。また、データ特徴の数は、「80」乃至「168」の間程度であるのが望ましい。この場合には、およそ80%以上の精度が得られることがわかっている。なお、データ特徴の種類は、「統計学特徴」と「ピーク特徴」が優先的に選択されることが望ましい。
<分類モデルを用いる判定を実行する例>
学習処理が行われた後、すなわち、分類モデルが準備された後、例えば、ステップS3及びステップS4等によって、分類モデルを用いる判定が実行される。
学習処理が行われた後、すなわち、分類モデルが準備された後、例えば、ステップS3及びステップS4等によって、分類モデルを用いる判定が実行される。
<計測データの取得例>
ステップS3では、行動判定装置は、計測データを取得する。なお、ステップS3で取得される計測データは、ステップS1で取得される学習データとなるデータではなく、判定したいユーザの行動が行われている間に生成された計測データとなる。
ステップS3では、行動判定装置は、計測データを取得する。なお、ステップS3で取得される計測データは、ステップS1で取得される学習データとなるデータではなく、判定したいユーザの行動が行われている間に生成された計測データとなる。
<判定処理例>
ステップS4では、行動判定装置は、判定処理を行う。判定処理は、例えば、以下のようなウィンドウ取得によって定まるデータを対象とする、又は、以下のようなパラメータを用いるのが望ましい。
ステップS4では、行動判定装置は、判定処理を行う。判定処理は、例えば、以下のようなウィンドウ取得によって定まるデータを対象とする、又は、以下のようなパラメータを用いるのが望ましい。
<ウィンドウ取得の例>
計測データのうち、判定処理の対象となる範囲は、例えば、以下のように、時間軸においてウィンドウをスライドさせるように設定することで定まるのが望ましい。この場合、1ウィンドウ分の計測データが、判定用データのデータセットの1レコードを構成するデータ特徴等を導く。
計測データのうち、判定処理の対象となる範囲は、例えば、以下のように、時間軸においてウィンドウをスライドさせるように設定することで定まるのが望ましい。この場合、1ウィンドウ分の計測データが、判定用データのデータセットの1レコードを構成するデータ特徴等を導く。
図14は、ウィンドウ取得の例を示す図である。図示する例では、横軸を時間軸とし、縦軸を圧力とする。また、上図を左足の計測データとし、下図を右足の計測データとする。
例えば、図示するように、ウィンドウは、第1ウィンドウW1、第2ウィンドウW2、第3ウィンドウW3、第4ウィンドウW4、及び、第5ウィンドウW5の順で設定される(図では、ウィンドウは、右へスライドしていくように設定される)。
また、ウィンドウのサイズ(以下「サイズWDS」という。)は、下記(1)式で計算されて設定することができる。
上記(1)式で計算された値のサイズWDSであるウィンドウをスライドさせて判定処理等の処理対象となる範囲をひと続きの行動計測データから複数取得することが望ましい。
ただし、ウィンドウのサイズは、対象となるユーザの特性等が考慮されてもよい。例えば、ユーザが歩行の速度が遅い特性である場合には、ウィンドウのサイズは、大きく設定されるのが望ましい。すなわち、1つの行動が比較的にゆっくりであるような特性がある場合には、ウィンドウのサイズは、1つの行動がウィンドウに収まる可能性が高くなるように、大きく設定されてもよい。
さらに、ウィンドウは、異なる範囲となるように、複数設定され、かつ、複数のウィンドウは、一部の範囲が同一であるのが望ましい。具体的には、第1ウィンドウW1、及び、第2ウィンドウW2の場合には、図示するように、同一の範囲(以下「オーバラップ部分OVL」という。)がどちらにも含まれるのが望ましい。さらにまた、複数のウィンドウは、50%以上が同一、すなわち、オーバラップ部分OVLが第1ウィンドウW1、及び、第2ウィンドウW2の50%以上を占めるのが望ましい。ただし、オーバラップ部分OVLは、50%以上に限られず、25%乃至75%程度であってもよい。
ウィンドウは、行動の1周期を含むのが望ましい。オーバラップ部分OVLがないと、一度ウィンドウが設定された時点が行動の1周期の途中である場合には、1周期分のデータは、解析及び学習の対象とならない場合が多い。一方で、オーバラップ部分OVLがあると、次のウィンドウは、前のウィンドウに含まれる後ろ部分から対象が開始される。そのため、前のウィンドウでは解析に利用できなかったデータを次のウィンドウでは利用できるようにする可能性が高くなる。
また、ウィンドウは、それぞれのウィンドウごとに、データパターンの変化があるのが望ましい。ひとつの行動が一定時間持続している場合には、計測データは、その一定時間において同じ傾向を示す。このように、周期性のあるデータパターンの計測データからウィンドウをとる場合、オーバラップ部分OVLがないと、複数のウィンドウが同じデータパターンを切り取ることで、解析における多様性が保たれない場合が多い。一方で、オーバラップ部分OVLがあると、次のウィンドウは、前のウィンドウに含まれる後ろ部分から対象が開始される。そのため、前のウィンドウとは異なるデータパターンでウィンドウを切り取ることができる可能性が高くなる。ゆえに、行動を精度良く判定できる可能性を高くできる。
ただし、オーバラップ部分OVLがあまり重なると、何度も同じデータを判定することになり、計算量が多くなりやすい。そこで、オーバラップ部分OVLは、50%程度であるのが望ましい。
<データ特徴の例>
図15は、パラメータの例を示す図である。図は、片足分について、1つのセンサによって計測される計測データの例であって、横軸に時間を示し、縦軸に計測される圧力(以下、圧力の例で説明するが、力を用いるようにしてもよい。)を示す。以下、図示するような計測データ(ウィンドウ等で抽出された結果とする。)を判定の対象とする場合を例に説明する。例えば、判定処理では、以下のようなパラメータが用いられるのが望ましい。
図15は、パラメータの例を示す図である。図は、片足分について、1つのセンサによって計測される計測データの例であって、横軸に時間を示し、縦軸に計測される圧力(以下、圧力の例で説明するが、力を用いるようにしてもよい。)を示す。以下、図示するような計測データ(ウィンドウ等で抽出された結果とする。)を判定の対象とする場合を例に説明する。例えば、判定処理では、以下のようなパラメータが用いられるのが望ましい。
まず、判定処理では、計測データを一定時間で区切ったウィンドウ単位ごとにパラメータが設定される。具体的には、図においてウィンドウ開始時点が「3000ミリ秒」、かつ、ウィンドウ終了時点が「3500ミリ秒」であるひとつの第11ウィンドウW11が設定される。
各ウィンドウで抽出されるパラメータは、計測データにおいて、所定の区分における力又は圧力の極大値又は最大値、いわゆるピーク値を特定して、ピーク値の高さ、ピーク幅、又は周期性等を解析した結果を示す値等である。ピーク値は、例えば、微分又は他の値と比較して最も高い値を特定する等の処理で抽出される。
この場合、解析に用いるピーク値は、例えば、次の条件に該当するピーク値を抽出する。ひとつには、同一のセンサから取得した計測データにおいて極大値と、極大後の最小値の差が標準偏差の2倍以上である条件である。もうひとつは、極大値と、次の極大値の時間差が30ミリ秒以上である条件である。この2つの条件をいずれも満たす極大値をピーク値とすることで、以下のパラメータ(すなわち、データ特徴である。)の抽出をより的確に行うことができる。
パラメータとなるデータ特徴は、例えば、「統計学特徴」、「ピーク特徴」、「歩行周期特徴」、「FFT特徴」、及び、「足底圧力偏向特徴」等がある。これらの特徴がすべて学習に用いられることが望ましいが、いずれか少なくともひとつ、又は、任意の複数の組み合わせであっても構わない。
<「統計学特徴」の例>
統計学特徴に含まれるパラメータは、例えば、最大圧力値、圧力値の中央値、圧力値の標準偏差、又は、平均圧力値等である。また、統計学特徴は、それぞれ、1ウィンドウ内で計測されるすべてのセンサについて1センサごとに、計測データから値が計算される。
統計学特徴に含まれるパラメータは、例えば、最大圧力値、圧力値の中央値、圧力値の標準偏差、又は、平均圧力値等である。また、統計学特徴は、それぞれ、1ウィンドウ内で計測されるすべてのセンサについて1センサごとに、計測データから値が計算される。
最大圧力値は、第11ウィンドウW11に現れる複数の極大値の内で最大の値であり、第11ウィンドウW11における計測圧力データDM1の最大値である(この例では、第14ピーク点PK14の値である)。
圧力値の中央値は、計測圧力データDM1の第11ウィンドウW11内の中央値である。
圧力値の標準偏差は、計測圧力データDM1の第11ウィンドウW11内での標準偏差である。
平均圧力値は、計測圧力データDM1の第11ウィンドウW11内での平均値である。
<「ピーク特徴」の例>
ピーク特徴に含まれるパラメータの第1例は、例えば、ピーク値の平均値である。具体的には、ピーク値の平均値は、ウィンドウ内でピーク値と特定された極大値又は最大値を平均した値、すなわち、第11計測値X11、第12計測値X12、第13計測値X13、及び、第14計測値X14の4つを合計して合計値を「4」で除算した値等である。つまり、計測データ中に含まれる、第11計測値X11、第12計測値X12、第13計測値X13、及び、第14計測値X14のような極大値又は最大値の平均値等が、パラメータとなって行動が判定されてもよい。
ピーク特徴に含まれるパラメータの第1例は、例えば、ピーク値の平均値である。具体的には、ピーク値の平均値は、ウィンドウ内でピーク値と特定された極大値又は最大値を平均した値、すなわち、第11計測値X11、第12計測値X12、第13計測値X13、及び、第14計測値X14の4つを合計して合計値を「4」で除算した値等である。つまり、計測データ中に含まれる、第11計測値X11、第12計測値X12、第13計測値X13、及び、第14計測値X14のような極大値又は最大値の平均値等が、パラメータとなって行動が判定されてもよい。
また、パラメータは、ピーク値の標準偏差(3σ等を含む。)等が考慮されてもよい。なお、対象のウィンドウに特定されたピーク値が一個もない場合には、ピーク特徴は、「0(ゼロ)」として処理してもよい。
ピーク特徴に含まれるパラメータの第2例は、ピーク点の時間軸における間隔(以下「ピーク間隔」という。)の平均値である。具体的には、ピーク間隔の平均値は、第1ピーク間隔PI1、第2ピーク間隔PI2、及び、第3ピーク間隔PI3の3つを合計して合計値を「3」で除算した値等である。つまり、解析処理後データ中に含まれるピーク出現時間の値からピーク間隔とその平均値が算出されて、又は、ピーク間時間距離の値から平均値が算出されて、これをパラメータとして行動が判定されてもよい。
また、パラメータは、ピーク間隔の標準偏差(3σ等を含む。)等が考慮されてもよい。
なお、対象のウィンドウに特定されたピーク値が一個のみである場合、又は、ピーク値が一個も検出しない場合には、ピーク特徴は、「0(ゼロ)」として処理されてもよい。
ピーク特徴に含まれるパラメータの第3例は、圧力が所定値以上となっているピーク値前後の時間である。以下「ピーク幅」という。
具体的には、ピーク幅を計算するには、第一に、対象とするピーク点を中心に「高さ」を計算する。まず、第11ピーク点PK11より時間軸において、前に出現する、前のピーク間最小値LP11と、第11ピーク点PK11より時間軸において、後に出現する、後のピーク間最小値LP12を比較し、小さい方のピーク間最小値を抽出する。この例では、抽出されるピーク間最小値は、ピーク間最小値LP12となる。
次に、抽出されたピーク間最小値LP12と第11ピーク点PK11の差(図では、「高さX21」となる。)を高さとする。
第二に、小さい方であって、抽出されるピーク間最小値LP12に、高さX21の「30%」の値を加算した高さ位置にある、ピーク前の圧力値M11と、ピーク後の圧力値M12の2点が特定される。
第三に、ピーク前の圧力値M11と、ピーク後の圧力値M12の幅を「第1ピーク幅PW11」とすると、ピーク幅が計算される。
なお、所定値には、ピーク点前後の値の小さいピーク間最小値から高さが「30%」程度の位置にある値を用いるのが望ましいが、所定値の設定は、これには限らない。
この例では、ピーク幅の平均値は、ピークごとに算出されるピーク幅をウィンドウ内で平均した値、すなわち、第21ウィンドウW21に現れる第1ピーク幅PW11、第2ピーク幅PW12、第3ピーク幅PW13、及び、第4ピーク幅PW14の4つを合計して合計値を「4」で除算した値等である。つまり、解析処理後データ中に含まれるピーク幅の値から平均値が算出されて、これをパラメータとして行動が判定されてもよい。また、パラメータは、ピーク幅の標準偏差(3σ等を含む。)等が考慮されてもよい。なお、対象のウィンドウに特定されたピーク値が一個もない場合等には、ピーク特徴は、「0(ゼロ)」として処理してもよい。
ピーク特徴に含まれるパラメータのその他の例には、ピーク数がある。この例では、第11ピーク点PK11、第12ピーク点PK12、第13ピーク点PK13、及び、第14ピーク点PK14を第21ウィンドウW21内の個数として「4」と計算した値等である。つまり、解析処理後データ中に含まれるピーク値またはピーク出現時間の値から個数が算出されて、これをパラメータとして行動が判定されてもよい。
<「歩行周期特徴」の例>
図16は、パラメータの例を示す図である。図は、片足分に設置されているすべてのセンサによって計測される計測データから時点ごとに最大値を抽出し、かつ、時間列に連続させたデータ(すなわち、解析処理後データの時間列データEPとなる。)の例である。そして、横軸に時間を示し、縦軸に計測される圧力を示す。また、ウィンドウ開始時点が「0ミリ秒」、かつ、ウィンドウ終了時点が「500ミリ秒」であるひとつの第21ウィンドウW21が設定される。例えば、判定処理では、以下のようなパラメータが用いられるのが望ましい。
図16は、パラメータの例を示す図である。図は、片足分に設置されているすべてのセンサによって計測される計測データから時点ごとに最大値を抽出し、かつ、時間列に連続させたデータ(すなわち、解析処理後データの時間列データEPとなる。)の例である。そして、横軸に時間を示し、縦軸に計測される圧力を示す。また、ウィンドウ開始時点が「0ミリ秒」、かつ、ウィンドウ終了時点が「500ミリ秒」であるひとつの第21ウィンドウW21が設定される。例えば、判定処理では、以下のようなパラメータが用いられるのが望ましい。
なお、この例では、時間列データEPは、例えば、第21サイクルC21、第22サイクルC22、第23サイクルC23、及び、第24サイクルC24というように、4つのサイクルに区分される。
以下に説明する例は、第21ピーク点PK21、第22ピーク点PK22、第23ピーク点PK23、第24ピーク点PK24、第25ピーク点PK25、第26ピーク点PK26、第27ピーク点PK27、及び、第28ピーク点PK28というように、行動のサイクルごとに、2つずつピーク点が算出された例であるとする。
この場合、行動のサイクルは、解析処理後データに含まれる、片足にある全センサの時点最大値の時間列データEPが、「0(ゼロ)」にある時間帯から次に「0(ゼロ)」にある時間帯が現れるまでを区切って抽出される。また、行動のサイクルは、行動の様態に当てはめると、ひとつのステップに相当する。
なお、時間列データEPが「0(ゼロ)」にある時間帯は、「0」が基準でなくともよい。具体的には、図示するように、閾値THがあらかじめ設定され、閾値TH以下となる時点を「0(ゼロ)」の基準にしてもよい。すなわち、力又は圧力が閾値TH以下となり、ほぼ「0」となる、いわゆる「near zero」となる時点等を用いてもよい。この場合、例えば、閾値には「1」を設定するが、値は「1」以外の値であってもよい。
歩行周期特徴に含まれるパラメータの第1例は、1ウィンドウに含まれる複数のピーク点の差(以下「ピーク差」という。)の平均値である。具体的には、第21サイクルC21では、ピーク差は、第1ピーク差DF1である。
第1ピーク差DF1は、第21ピーク点PK21と、第22ピーク点PK22との差を計算して求まる。そして、ピーク差の平均値は、サイクルごとに算出される複数のピーク差を平均した値、すなわち、第1ピーク差DF1、第2ピーク差DF2、第3ピーク差DF3、及び、第4ピーク差DF4の4つを合計して合計値を「4」で除算した値等である。つまり、解析処理後データ中に含まれる片足全センサの時点最大値を示す時間列データEPから、まず、サイクルごとに最大の極大値と、次に大きい極大値が求められる。次に、2つの値の差をピーク差として算出する複数のピーク差の平均値等が、パラメータとなって行動が判定されてもよい。また、パラメータは、ピーク差の標準偏差(3σ等を含む。)等が考慮されてもよい。
なお、ウィンドウにおいてサイクルが検出されない場合には、歩行周期特徴は、「0(ゼロ)」として処理されてもよい。また、サイクルに2つのピークが検出されない場合も、歩行周期特徴は、「0(ゼロ)」として処理されてもよい。
なお、このパラメータのピーク差は、行動の様態に当てはめると、接地期圧力と離床期圧力の差に相当する。すなわち、第21ピーク点PK21、第23ピーク点PK23、第25ピーク点PK25、及び、第27ピーク点PK27は、ある行動における足の接地期圧力を示す。一方で、第22ピーク点PK22、第24ピーク点PK24、第26ピーク点PK26、及び、第28ピーク点PK28は、ある行動における足の離床期圧力を示す。つまり、計測データは、接地期圧力と離床期圧力の差の、ウィンドウ中の全ステップの平均値をパラメータとして、行動が判定されてもよい。
歩行周期特徴に含まれるパラメータの第2例は、両足支持期の割合である。
図17は、パラメータの例を示す図である。図は、図16で用いた片足全センサの時点最大値時間列データの両足分を表示したデータの例を示す図である。図示する例は、左足及び右足において、それぞれに1つ以上のセンサが設置されて計測される計測データから、各足かつ、時点ごとに最大値を抽出して時間列に連続させたデータの例である。また、図15等と同様に、横軸に時間を示し、かつ、縦軸に計測される圧力(以下、圧力の例で説明するが、力を用いるようにしてもよい。)を示す。
ウィンドウ開始時点が「0ミリ秒」、かつ、ウィンドウ終了時点が「500ミリ秒」であるひとつの第31ウィンドウW31が設定される。
また、この例では、左足について全センサの時点最大値を連続したデータ(以下「左足データDL」という。)と、右足について全センサの時点最大値を連続したデータ(以下「右足データDR」という。)とが図示するように表示される。
例えば、左右両足のうち、一方の足である左足を「第1足」とし、かつ、他方の足、すなわち、右足を「第2足」とする。そして、図示する例には、第1足が「0」になる時点(以下「第1時点」という。)がある。一方で、図示する例には、第2足が「0」から値が大きくなり始める時点(以下「第2時点」という。)がある。次に、第1足を右足とし、かつ、第2足を左足、すなわち、左右両足を逆にすると、同様に、第1時点及び第2時点が発生する。
このような第1時点及びから第2時点までの時間を図では、時点間NSで示す。時点間NSは、両足の圧力がいずれも「0(ゼロ)」ではない時間帯を「両足支持期」という。すなわち、時点間NSは、第1足の圧力等が減少し、ほぼ「0(ゼロ)」になる時間帯、すなわち、第1足が地面から離れて宙に浮くような状態である。
一方で、時点間NSは、第2足の圧力がほぼ「0(ゼロ)」の状態から、足が接地し始めると圧力等が高まっていく時間帯、すなわち、第2足が地面に接地し始める状態である。
したがって、時点間NSは、左右両足の接地及び非接地が切り替わる時間帯であり、両足の圧力がいずれも検出できる時間帯である。
両足支持期の割合は、複数の時点間NSの時間幅を合計し、第31ウィンドウW31の時間幅で除算した値等である。つまり、解析処理後データに含まれる左右の圧力値がいずれも「0(ゼロ)」でない状態である時間の和を用いて、ウィンドウに占める時間割合を算出した値等をパラメータとし、行動が判定されてもよい。
なお、第1時点及び第2時点は、「0」が基準でなくてもよい。具体的には、図示するように、閾値THがあらかじめ設定され、閾値TH以下となる時点を基準に第1時点及び第2時点が定まってもよい。つまり、解析処理後データに含まれる片足全センサの時点最大値を示す時間列データEPが閾値以下となる場合を特定することで、第1時点及び第2時点、すなわち、時点間NSを算出してもよい。このように、力又は圧力が閾値TH以下となり、ほぼ「0」となる、いわゆる「near zero」となる時点等を用いてもよい。この場合、例えば、閾値には、「1」等が設定される。ただし、閾値には「1」以外の値が設定されてもよい。
さらに、図示する以外に、一方の足が接地している状態かつ他方の足が接地していない状態、すなわち、片足で立脚している時間帯等も用いられてもよい。
例えば、左足及び右足の両方が接地している時間、いわゆる「両足支持期」のほかに、左足及び右足のうち、どちらか一方の足のみが接地している時間、いわゆる「単足支持期」が判定されてもよい。そして、単足支持期の長さ等によって、行動が判定されてもよい。例えば、第31ウィンドウW31の時間幅からNSの合計を減算した長さである、単足支持期の長さがパラメータであってもよい。
このように、歩行周期特徴に関しては左足データDL及び右足データDRの同期等をパラメータとして判定に用いてもよい。
<「足底圧力偏向特徴」の例>
図18は、左右の足底のおおよその形状と、前足部に4つ、踵部に1つのセンサが配置された場合の例を示す図である。例えば、図示するように、それぞれの足は、前部、中部、後部、内側、及び、外側のように領域をあらかじめ区切るように設定される。
図18は、左右の足底のおおよその形状と、前足部に4つ、踵部に1つのセンサが配置された場合の例を示す図である。例えば、図示するように、それぞれの足は、前部、中部、後部、内側、及び、外側のように領域をあらかじめ区切るように設定される。
足底圧力偏向特徴に含まれるパラメータの第1例は、前足部と後足部の圧力平均値の差についての両足間の平均値、及び、内側と外側の圧力平均値の差についての両足間の平均値である。
例えば、前足部の領域にある複数のセンサ(例えば、第1前足部計測点TOE1、第2前足部計測点FMT1、第3前足部計測点CFF1及び第4前足部計測点LFF1に設置されるセンサである。)による計測データから各時点の最大値を抽出し、片足にある前足部センサの時点最大値の時間列データを得る。
さらに、まず、同様の片足にある前足部センサの時点最大値の時間列データの平均値と、後足部の領域にあるセンサ(例えば、後足部計測点HEL1に設置されるセンサである。)の平均値の差を取得する。同様に、反対の片足についても、片足にある前足部センサの時点最大値の時間列データを得、その後、当該時間列データの平均値と、後足部の領域にあるセンサの平均値の差を取得する。この差分の値の両足の平均値等をパラメータとして行動が判定されてもよい。
つまり、前足部及び後足部のそれぞれの領域に配置するセンサの数によって、センサすべて又はすべてのセンサのうち、いくつかのセンサの計測値を比較し、時点最大値の時間列データを平均値の算出に利用する。一方で、センサが1つの場合には、ひとつのセンサの計測値を平均値の算出に利用する。
また、足底圧力偏向特徴に含まれるパラメータの第2例は、前足部と後足部の圧力値の相関関数及び内側と外側の圧力値の相関関数である。
例えば、下記(2)式等によって計算される進行方向(すなわち、前足部と後足部を結ぶ方向である。)及び直交方向(すなわち、内側と外側を結ぶ方向である。)における圧力若しくは力のピアソン相関係数が用いられるのが望ましい。
また、上記(2)式において、オーバラインが付く「x」及び「y」は、平均値を示す。さらに、上記(2)式における「n」は、計測データが有するデータの数となる。
例えば、解析処理後データに含まれる片足にある前足部センサの時点最大値の時間列データと同じ片足の後足部センサの計測データから、上記(2)式によって相関係数を算出し、相関係数をパラメータとして行動が判定されてもよい。
また、例えば、内側の領域にあるセンサ(図における、第2前足部計測点FMT1等である。)の計測データと、外側の領域にあるセンサ(図における、第4前足部計測点LFF1である。)の計測データに基づいて、上記(2)式によって相関係数を算出し、相関係数をパラメータとして、行動が判定されてもよい。このようなピアソン相関係数を用いると、より精度よく判定を行うことができる。
足底圧力偏向特徴に含まれるパラメータには、圧力の分布等が用いられてもよい。つまり、圧力が高い領域、又は、圧力が低い領域等の分布に基づいて、行動が判定されてもよい。なお、圧力は、領域にある複数のセンサによる計測データの平均値等でもよい。
<「FFT特徴」の例>
図6における「FFT特徴」には、例えば、以下のようなパラメータが用いられる。
図6における「FFT特徴」には、例えば、以下のようなパラメータが用いられる。
FFT特徴に含まれるパラメータは、例えば、エネルギー、周波数の加重平均、0乃至10Hzのスペクトルの歪度、2乃至10Hzのスペクトルの平均値、及び、2乃至10Hzのスペクトルの標準偏差等である。
「FFTW」は、各時点の全センサ圧力総和値を高速フーリエ変換した周波数分量データである。つまり、まず、ウィンドウにおいて、全センサの各時点での圧力値の総和値が計算される。次に、時間軸において時間列データを高速フーリエ変換すると得られる周波数分量データが「FFTW」となる。
「FFTW」に現れる、2番目のピーク値、FFTWのスペクトル、標準偏差、パワースペクトル密度、エントロピー等を計算して、パラメータとして用いて、行動が判定されてもよい。
具体的には、「FFT特徴」のパラメータは、以下のように生成される。
図19は、時系列データの例を示す図である。以下、図示するような時系列データ、すなわち、左足及び右足について、7つずつセンサが設置されて、合計で14か所について、ユーザの足底面における力又は圧力が計測される場合を例に説明する。まず、図示する14個の時系列データが示す各時間における計測値を加算する計算が行われる。このような計算を行うと、例えば、以下のような計算結果が得られる。
図20は、加算結果例を示す図である。図示するように、各時間における時系列データが示す計測値の値、14個をすべて加算すると、加算結果に示す各時間における値が算出される。この計算結果に対して、FFTを行うと、例えば、以下のようなFFT結果が得られる。
図21は、FFT結果例を示す図である。例えば、図20のような計算結果に対してFFTの処理が実行されると、図示するようなFFT結果が得られる。そして、FFT結果から、例えば、以下のようなパラメータが得られる。
「エネルギー」は、例えば、下記(3)式で計算される値(下記(3)式における変数「E」である。)である。また、「エネルギー」は、図6における「FFT特徴」の「エネルギー」の例である。
図22は、0Hz乃至150Hzの基本周波数の抽出例を示す図である。図22における、0乃至150Hzの基本周波数は、図21に示す全周波数のうち、0Hz乃至150Hzの基本周波数(以下「第1周波数帯FR1」という。)を抽出した結果である。このような抽出結果に対して、下記(5)式のように計算すると、歪度が計算できる。
歪度は、図6における「FFT特徴」の「0~10Hzのスペクトルの歪度」の例である。また、0Hz乃至150Hzの基本周波数(上記(5)式における「n」である。)は、上記(5)式に示す基本周波数と周波数の関係により、0Hz乃至150Hzの基本周波数(上記(5)式における「f」である。)は、0Hz乃至10Hzの周波数である。
人は、動作が10Hz以下の周波数である場合が多い。そこで、0Hz乃至10Hzの周波数が抽出されるのが望ましい。
さらに、「FFT特徴」は、例えば、以下のように計算して定まる、「2Hz乃至10Hzのスペクトルの平均値」及び「2Hz乃至10Hzのスペクトルの標準偏差」等でもよい。これらの値を計算するには、まず、図22に示す抽出結果に対して、2Hz乃至10Hzの周波数を抽出する処理が行われる。具体的には、図22における30Hz乃至150Hzの基本周波数(以下「第2周波数帯FR2」という。)が抽出される。この抽出結果は、例えば、以下のようになる。
図23は、30乃至150Hzの基本周波数の抽出例を示す図である。すなわち、図23は、図22に示す全周波数のうち、30Hz乃至150Hzの基本周波数を抽出した結果である。
2Hz以下の周波数は、歩行周期と考えられる周波数である。したがって、ピーク特徴と重複するので、2Hz以下の周波数が除かれるのが望ましい。ゆえに、図示するように、30Hz乃至150Hzの基本周波数(上記(5)式に示す基本周波数と周波数の関係により、周波数では、2Hz乃至10Hzとなる。)が抽出されるのが望ましい。
次に、30Hz乃至150Hzの基本周波数を抽出した結果に基づいて、スペクトルの平均値が計算される。この計算結果が、図6における「FFT特徴」の「2~10Hzのスペクトルの平均値」の例となる。
また、30Hz乃至150Hzの基本周波数を抽出した結果に基づいて、スペクトルの標準偏差が計算される。この計算結果が、図6における「FFT特徴」の「2~10Hzのスペクトルの標準偏差」の例となる。
なお、これら以外の統計値が更に計算されてもよい。
<フィルタ例>
なお、判定処理の対象となる計測データに対しては、バンドパスフィルタ(Band pass filter)、バターワースフィルタ(Butterworth filter)又はローパスフィルタ(Low pass filter)がかけられているのが望ましい。特に、バターワースフィルタが用いられるのが望ましい。また、フィルタ処理は、計測データに対してかけるため、例えば、ステップS3の後、かつ、ステップS4の前に行われるのが望ましい。具体的には、フィルタ処理により、計測データは、以下のようになる。
なお、判定処理の対象となる計測データに対しては、バンドパスフィルタ(Band pass filter)、バターワースフィルタ(Butterworth filter)又はローパスフィルタ(Low pass filter)がかけられているのが望ましい。特に、バターワースフィルタが用いられるのが望ましい。また、フィルタ処理は、計測データに対してかけるため、例えば、ステップS3の後、かつ、ステップS4の前に行われるのが望ましい。具体的には、フィルタ処理により、計測データは、以下のようになる。
図24は、フィルタ処理が行われる前の計測データの例を示す図である。例えば、図示するように、図7に示すように、左足及び右足について、7つずつセンサが設置されて、合計で14か所について、ユーザの足底面における力又は圧力が計測される計測データを例とする。したがって、図示する計測データ(以下「フィルタ前データD1」という。)は、いわゆる生データである。
そして、フィルタ前データD1に対して、計測データに含まれる5Hz以上の周波数を減衰させるフィルタ処理を行う。
足の運動特徴より、人は、5Hz以上の速い動きが難しい。したがって、5Hz以上の周波数を含むデータは、人が動作可能な動き以外を示すノイズである可能性が高い。ゆえに、5Hz以上の周波数を減衰させるようなフィルタがかけられると、計測データに含まれるノイズを少なくできる。
したがって、例えば、余裕等を考慮して、10Hz以下をカットオフにするバターワースフィルタ等が用いられるのが望ましい。
さらに、図示する例では、フィルタ前データD1に対して値を正規化して、計測データが示す各値を所定の範囲内の数値で表現するようにする。このような処理結果が、以下のようになる。
図25は、フィルタ処理が行われた後の計測データの例を示す図である。図示する例は、フィルタ前データD1に対して、バターワースフィルタをかけた結果の例を示すデータ(以下「フィルタ後データD2」という。)である。
すなわち、フィルタ後データD2は、ステップS3で取得された計測データに含まれるノイズを減衰させたデータである。このようなデータが判定処理の対象となると、行動判定装置は、ユーザの行動が精度よく判定できる。
<機能構成例>
図26は、行動判定システムの機能構成例を示す機能ブロック図である。例えば、行動判定システム100は、計測データ取得部FN1、生成部FN2及び判定部FN3等を含む機能構成である。また、行動判定システム100は、図示するように、フィルタ部FN4、ウィンドウ取得部FN5及び消費エネルギー計算部FN6等を更に含む機能構成であるのが望ましい。以下、図示する機能構成を例に説明する。
図26は、行動判定システムの機能構成例を示す機能ブロック図である。例えば、行動判定システム100は、計測データ取得部FN1、生成部FN2及び判定部FN3等を含む機能構成である。また、行動判定システム100は、図示するように、フィルタ部FN4、ウィンドウ取得部FN5及び消費エネルギー計算部FN6等を更に含む機能構成であるのが望ましい。以下、図示する機能構成を例に説明する。
計測データ取得部FN1は、ユーザの足底面に設置される1以上のセンサが計測する圧力又は力を示す計測データDMを取得する計測データ取得手順を行う。例えば、計測データ取得部FN1は、接続I/F205等で実現する。
生成部FN2は、計測データDM、及び、計測データDMから得られるデータ特徴等を機械学習における学習データDLEにして、ユーザが行う行動を分類する分類モデルを生成する生成手順を行う。例えば、生成部FN2は、CPU201等で実現する。
また、生成部FN2は、図示するように、データ特徴生成部FN21及び分類モデル生成部FN22等を有する構成が望ましい。
データ特徴生成部FN21は、データ特徴等を生成して学習データDLEを生成する。
分類モデル生成部FN22は、学習データDLEの学習処理に基づいて、分類モデルMDLを生成する。
判定部FN3は、計測データDMに基づいて、分類モデルMDLを用いてユーザの行動を判定する判定手順を行う。例えば、判定部FN3は、CPU201等で実現する。
フィルタ部FN4は、計測データDMに対して、例えば、5Hz以上の周波数を減衰させるバターワースフィルタ又はローパスフィルタをかけるフィルタ手順を行う。例えば、フィルタ部FN4は、CPU201等で実現する。
ウィンドウ取得部FN5は、計測データDMに対して、判定部FN3が判定に用いる範囲を定めるウィンドウを設定して、時間軸においてスライドさせてウィンドウを設定していくウィンドウ取得手順を行う。例えば、ウィンドウ取得部FN5は、CPU201等で実現する。
消費エネルギー計算部FN6は、行動に対して、それぞれの消費エネルギーを割り当て、消費エネルギーを合計してユーザの総消費エネルギーを計算する消費エネルギー計算手順を行う。例えば、消費エネルギー計算部FN6は、CPU201等で実現する。
また、行動判定システム100は、以下のような機能構成でもよい。
図27は、行動判定システムの機能構成の変形例を示す機能ブロック図である。図示するように、計測データ取得部FN1は、学習用計測データ取得部FN11及び判定用計測データ取得部FN12等を有する機能構成でもよい。
学習用計測データ取得部FN11は、分類モデルMDLを生成するのに用いられる学習データ等となる計測データを取得する。図では、学習処理における主なデータの流れを「破線」で示す。
判定用計測データ取得部FN12は、行動を判定する対象となる計測データを取得する。図では、判定処理における主なデータの流れを「実線」で示す。
なお、機能構成は、図示する構成に限られない。例えば、データ特徴生成部FN21及び判定部FN3は、一体であってもよい。また、同様に、フィルタ部FN4、ウィンドウ取得部FN5及びデータ特徴生成部FN21等は、一体であってもよい。さらに、フィルタ部FN4、ウィンドウ取得部FN5、データ特徴生成部FN21及び判定部FN3等は、一体であってもよい。
以上のような機能構成であると、例えば、以下のように、処理を行うことができる。
図28は、行動判定システムによる任意の計測データの判定処理例を示す図である。まず、図26に図示するように、処理を行う前に、計測データ取得部FN1によって学習データDLEを生成するための計測データが取得される。このように取得された計測データDMによって、生成部FN2は、データ特徴を生成して学習データDLEを生成する処理を行い、さらに分類モデルMDLを生成する処理、すなわち、学習処理を行うと、分類モデルMDLを生成できる。
このようにして、分類モデルMDLがあらかじめ学習処理により生成された上で、判定処理は、計測データ取得手順PR1から順に処理が行われる。
計測データ取得手順PR1では、行動判定システムは、計測データDMを取得する。
フィルタ手順PR2では、行動判定システムは、計測データDMに対してフィルタをかける。
ウィンドウ取得手順PR3では、行動判定システムは、フィルタがかけられた計測データDM等に対してウィンドウを設定する。次に、行動判定システムは、ウィンドウが設定された範囲から、パラメータ等が抽出される抽出手順PR4等を行う。このように、ウィンドウで特定された範囲及び抽出パラメータ等を用いて、判定手順PR5等が行われる。
判定手順PR5では、行動判定システムは、学習処理等で生成された分類モデルMDLによって、行動を判定する。具体的には、分類モデルMDLによって、行動は、あらかじめ図12又は図13等のように分類されるように設定される。
そして、分類モデルMDLによって、図示するように、第1判定結果RS1、第2判定結果RS2、・・・・、というように、計測データおよびその計測データから得られるデータ特徴(パラメータ等)に基づいて、ウィンドウごとに行動が判定される。
このようにして、判定される第1判定結果RS1、及び、第2判定結果RS2等のデータを利用して、消費エネルギー計算部FN6のように、判定結果を用いる処理が行われるのが望ましい。なお、判定結果を用いる処理は、消費エネルギー計算に限られない。
<投票を用いる例>
また、行動判定システムは、所定の時間ごとに、行動を判定し(以下、所定の時間ごとに分類モデルを用いる処理によって行動を判定した結果を出力することを「投票」という。)、複数の投票結果を用いて最終的に1つの行動を判定した判定結果を出力してもよい。例えば、投票を行う時間の単位である、所定の時間は、数秒程度にあらかじめ設定される。
また、行動判定システムは、所定の時間ごとに、行動を判定し(以下、所定の時間ごとに分類モデルを用いる処理によって行動を判定した結果を出力することを「投票」という。)、複数の投票結果を用いて最終的に1つの行動を判定した判定結果を出力してもよい。例えば、投票を行う時間の単位である、所定の時間は、数秒程度にあらかじめ設定される。
なお、所定の時間は、ウィンドウのサイズとなってもよい。すなわち、投票は、最終的な判定より短い時間の単位で行われる判定である。具体的には、「30」乃至「60」秒程度の単位で最終的な判定を行う場合には、投票は、例えば、「2.5」乃至「7.5」秒程度の単位で行われてもよい。このような時間とすると、最終的な判定を行う前に、複数の投票結果が得られる。
そして、行動判定システムは、複数の投票結果に基づいて、最終的な判定を行う。例えば、行動判定システムは、複数の投票結果のうち、最も多い投票結果の行動を最終的な判定結果に採用する。
例えば、「歩行」、「走行」、及び、「歩行」という3つの投票結果が得られたとする。この例では、「歩行」という投票結果が2つであり、最も多い投票結果となる。したがって、行動判定システムは、この3つの投票結果が得られた時間におけるユーザの行動が「歩行」であると最終的な判定を行い、「歩行」を示す判定結果をユーザ等に出力する。
例えば、図28に示す判定処理では、まず、ある10秒間のウィンドウに対して、第1判定結果RS1が出力される。次に、オーバーラップが50%であるとすると、5秒後に、同様の判定処理によって、次の10秒間のウィンドウに対して、第2判定結果RS2が出力される。このように、判定処理により、「第1判定結果RS1」から「第X判定結果」というように、「X」個の判定結果が出力される。
そして、第1判定結果から第X判定結果までそれぞれの判定結果を「投票」とする。次に、開始から60秒後までの投票結果から最も多い投票を集計する。このようにして、対象とする「60秒間」の最終的な判定結果に、最も投票が多い判定結果を採用してよい。
このように、複数の投票結果に基づいて、判定を行うと、行動判定システムは、精度よく行動を判定できる。
<第1実験結果>
上記のような構成であると、例えば、以下のように、高精度に行動を判定できる。
上記のような構成であると、例えば、以下のように、高精度に行動を判定できる。
図29は、実験結果を示す図である。図示する実験結果は、図26に示す機能構成である行動判定システムが行動を分類した判定結果と、実際の行動とが一致しているか否かを検証し、いわゆる「正解率」を評価した結果を示す。このとき、計測データは14人が11の行動パターンを各パターン4分で行動した際に計測したデータであり、5秒ごとにウィンドウ取得が行われ、ひとつのウィンドウは10秒間の計測データを所持した。また、分類モデルにはランダムフォレストを用い、計算限界はそれぞれ、決定木の数を「100」、分岐を許す必要サンプル数の最小数Minimum Sample Splitを「2」、Verboseを「1」、Number of jobsを「-1」、Random stateを「25」と設定した例で実験した。なお、図における数値は、割合を示し、例えば、「1.00」が「100%」を示す。
具体的には、横軸「Predicted label」は、行動判定システムが予測した行動、すなわち、判定結果である。一方で、縦軸「True label」は、実際に行っていた行動(以下「実際行動」という。)である。
したがって、横軸に示す判定結果と、縦軸に示す実際行動とが一致する割合が高いほど、精度良く行動が判定できたと評価できる。図では、対角線に示す実験結果が、判定結果と、実際行動とが一致する場合である。以下、図示するように、対角線に示す実験結果を「正解GD」という。
全体としての精度、すなわち、正解GDとなる割合は、「84%」となり、全体的に精度良く行動を判断できる。特に、行動判定システムは、走行、座っている、歩行、自転車に乗っている等の行動は、図示するように、80%以上の高い精度で判定が可能である。
特に走行、座っている、歩行の各行動では90%以上の精度で判定が可能であり、このような高精度な判定は、上記特許文献2等では難しい。
<第2実験結果>
また、分類モデルには、以下のように、SVM(Support Vector Machine)又は決定木を用いるのが望ましい。
また、分類モデルには、以下のように、SVM(Support Vector Machine)又は決定木を用いるのが望ましい。
図30は、SVMの分類モデルを用いた実験結果を示す図である。なお、横軸及び縦軸は、図29と同様に、判定結果及び実際行動である。したがって、図29と同様に、図において、対角線に示す実験結果が、判定結果及び実際行動が一致する「正解」となる場合である。
全体としての精度、すなわち、正解となる割合は、「92.6%」となり、全体的に精度良く行動を判断できる。
図31は、決定木の分類モデルを用いた実験結果を示す図である。なお、横軸及び縦軸は、図29と同様に、判定結果及び実際行動である。したがって、図29と同様に、図において、対角線に示す実験結果が、判定結果及び実際行動が一致する「正解」となる場合である。図31は、図30と同一の計測データを対象とし、用いる分類モデルを変更した場合の実験結果である。
全体としての精度、すなわち、正解となる割合は、「93.7%」となり、全体的に精度良く行動を判断できる。また、図30と比較して分かるように、決定木を用いる方がより精度良く行動を判断できる。
このような行動判定システムを使用すると、特に、非一律動作運動の判定が高精度に可能になる(上記特許文献2では難しい精度が実現できる)。
なお、分類モデルは、上記のように、SVM又は決定木に限られない。すなわち、行動判定システムは、機械学習を行って判定方法を学習する、いわゆるAI(Artificial Intelligence)を適用した構成であればよい。
上記説明では、主に圧力を例に説明したが、計測されるのは、力センサを用いて力が計測されてもよい。また、力を計測する面積があらかじめ分かる状態であって、力を計測し、力を面積で除算して算出できる圧力等が用いられてもよい。
行動判定システム100は、図示したシステム構成に限られない。すなわち、行動判定システム100は、図示した以外の情報処理装置を更に有してもよい。一方で、行動判定システム100は、1以上の情報処理装置で実現され、図示した情報処理装置より少ない情報処理装置で実現されてもよい。
なお、各装置は、1台の装置で実現されなくともよい。すなわち、各装置は、複数の装置で構成されてもよい。例えば、行動判定システム100における各装置は、各処理を複数の装置で分散、並列又は冗長して行ってもよい。
なお、本発明に係る各処理の全部又は一部は、アセンブラ等の低水準言語又はオブジェクト指向言語等の高水準言語で記述され、コンピュータに行動判定方法を実行させるためのプログラムによって実現されてもよい。すなわち、プログラムは、情報処理装置又は複数の情報処理装置を有する情報処理システム等のコンピュータに各処理を実行させるためのコンピュータプログラムである。
したがって、プログラムに基づいて行動判定方法が実行されると、コンピュータが有する演算装置及び制御装置は、各処理を実行するため、プログラムに基づいて演算及び制御を行う。また、コンピュータが有する記憶装置は、各処理を実行するため、プログラムに基づいて、処理に用いられるデータを記憶する。
また、プログラムは、コンピュータが読み取り可能な記録媒体に記録されて頒布することができる。なお、記録媒体は、補助記憶装置、磁気テープ、フラッシュメモリ、光ディスク、光磁気ディスク又は磁気ディスク等のメディアである。さらに、プログラムは、電気通信回線を通じて頒布することができる。
以上、本発明の好ましい実施形態について詳述したが、本発明は、上記に説明した実施形態等に限定されるものではない。したがって、特許請求の範囲に記載された本発明の要旨の範囲内において、実施形態は、種々の変形又は変更が可能である。
1 靴
2 計測デバイス
3 情報端末
4 ネットワーク
5 サーバ装置
6 管理端末
21 センサ部
22 通信部
100 行動判定システム
201 CPU
202 ROM
203 RAM
204 SSD/HDD
205 接続I/F
206 通信I/F
207 バス
211 基材
212 圧力センサ
501 基本データ入力部
502 計測データ受信部
503 データ解析部
504 ライフログ書込部
505 学習モデル生成部
506 行動判定部
521 データベース
522 ユーザデータ
523 ライフログデータ
524 計測データ
525 解析処理後データ
526 学習データ
527 行動データ
AC11 第1行動
AC12 第2行動
AC21 第1分類結果
AC22 第2分類結果
C21 第21サイクル
C22 第22サイクル
C23 第23サイクル
C24 第24サイクル
CFF 前足中央部
D1 フィルタ前データ
D2 フィルタ後データ
DF1 第1ピーク差
DF2 第2ピーク差
DF3 第3ピーク差
DF4 第4ピーク差
DL 左足データ
DLE 学習データ
DM 計測データ
DM1 計測圧力データ
DR 右足データ
EP 時間列データ
FMT 内側前足部
FMT1 第2前足部計測点
FN1 計測データ取得部
FN2 生成部
FN21 データ特徴生成部
FN22 分類モデル生成部
FN3 判定部
FN4 フィルタ部
FN5 ウィンドウ取得部
FN6 消費エネルギー計算部
GD 正解
HEL 後足部
HEL1 後足部計測点
J1 第1判定
J2 第2判定
J3 第3判定
LFF 外側前足部
LFF1 第4前足部計測点
LMF 外側中足部
L1 第1末端部
L2 第2末端部
MDL 分類モデル
MMF 中足中央部
MXW 最大幅
NS 時点間
OVL オーバラップ部分
PI1 第1ピーク間隔
PI2 第2ピーク間隔
PI3 第3ピーク間隔
PK11 第11ピーク点
PK21 第21ピーク点
PK22 第22ピーク点
PK23 第23ピーク点
PK24 第24ピーク点
PK25 第25ピーク点
PK26 第26ピーク点
PK27 第27ピーク点
PK28 第28ピーク点
PR1 計測データ取得手順
PR2 フィルタ手順
PR3 ウィンドウ取得手順
PR4 抽出手順
PR5 判定手順
PW11 第1ピーク幅
PW12 第2ピーク幅
PW13 第3ピーク幅
PW14 第4ピーク幅
RS1 第1判定結果
RS2 第2判定結果
TH 閾値
TOE 前足親指部
TP1 座位行動
TP2 立姿勢行動
TP3 非一律動作行動
TP4 歩行行動
TP5 傾斜歩行行動
TP6 階段を上る行動
TP7 階段を下る行動
TP8 走行行動
TP9 自転車行動
TP41 低速歩行行動
TP42 高速歩行行動
TP81 低速走行行動
TP82 高速走行行動
TRB 決定木
W1 第1ウィンドウ
W2 第2ウィンドウ
W3 第3ウィンドウ
W4 第4ウィンドウ
W5 第5ウィンドウ
W11 第11ウィンドウ
W21 第21ウィンドウ
W31 第31ウィンドウ
WDS サイズ
X11 第11計測値
X12 第12計測値
X13 第13計測値
X14 第14計測値
2 計測デバイス
3 情報端末
4 ネットワーク
5 サーバ装置
6 管理端末
21 センサ部
22 通信部
100 行動判定システム
201 CPU
202 ROM
203 RAM
204 SSD/HDD
205 接続I/F
206 通信I/F
207 バス
211 基材
212 圧力センサ
501 基本データ入力部
502 計測データ受信部
503 データ解析部
504 ライフログ書込部
505 学習モデル生成部
506 行動判定部
521 データベース
522 ユーザデータ
523 ライフログデータ
524 計測データ
525 解析処理後データ
526 学習データ
527 行動データ
AC11 第1行動
AC12 第2行動
AC21 第1分類結果
AC22 第2分類結果
C21 第21サイクル
C22 第22サイクル
C23 第23サイクル
C24 第24サイクル
CFF 前足中央部
D1 フィルタ前データ
D2 フィルタ後データ
DF1 第1ピーク差
DF2 第2ピーク差
DF3 第3ピーク差
DF4 第4ピーク差
DL 左足データ
DLE 学習データ
DM 計測データ
DM1 計測圧力データ
DR 右足データ
EP 時間列データ
FMT 内側前足部
FMT1 第2前足部計測点
FN1 計測データ取得部
FN2 生成部
FN21 データ特徴生成部
FN22 分類モデル生成部
FN3 判定部
FN4 フィルタ部
FN5 ウィンドウ取得部
FN6 消費エネルギー計算部
GD 正解
HEL 後足部
HEL1 後足部計測点
J1 第1判定
J2 第2判定
J3 第3判定
LFF 外側前足部
LFF1 第4前足部計測点
LMF 外側中足部
L1 第1末端部
L2 第2末端部
MDL 分類モデル
MMF 中足中央部
MXW 最大幅
NS 時点間
OVL オーバラップ部分
PI1 第1ピーク間隔
PI2 第2ピーク間隔
PI3 第3ピーク間隔
PK11 第11ピーク点
PK21 第21ピーク点
PK22 第22ピーク点
PK23 第23ピーク点
PK24 第24ピーク点
PK25 第25ピーク点
PK26 第26ピーク点
PK27 第27ピーク点
PK28 第28ピーク点
PR1 計測データ取得手順
PR2 フィルタ手順
PR3 ウィンドウ取得手順
PR4 抽出手順
PR5 判定手順
PW11 第1ピーク幅
PW12 第2ピーク幅
PW13 第3ピーク幅
PW14 第4ピーク幅
RS1 第1判定結果
RS2 第2判定結果
TH 閾値
TOE 前足親指部
TP1 座位行動
TP2 立姿勢行動
TP3 非一律動作行動
TP4 歩行行動
TP5 傾斜歩行行動
TP6 階段を上る行動
TP7 階段を下る行動
TP8 走行行動
TP9 自転車行動
TP41 低速歩行行動
TP42 高速歩行行動
TP81 低速走行行動
TP82 高速走行行動
TRB 決定木
W1 第1ウィンドウ
W2 第2ウィンドウ
W3 第3ウィンドウ
W4 第4ウィンドウ
W5 第5ウィンドウ
W11 第11ウィンドウ
W21 第21ウィンドウ
W31 第31ウィンドウ
WDS サイズ
X11 第11計測値
X12 第12計測値
X13 第13計測値
X14 第14計測値
Claims (17)
- ユーザが行う行動を分類するのに用いられる分類モデルを有する行動判定装置であって、
前記ユーザの足底面に設置される1以上のセンサが計測する圧力又は力を示す計測データを取得する計測データ取得部と、
前記計測データをデータ処理してデータ特徴を計算し、前記分類モデルを用いて前記ユーザの行動を判定する判定部と
を含む行動判定装置。 - 前記計測データに対して、人が動作可能な周波数より高い周波数を減衰させるフィルタ部を更に含む
請求項1に記載の行動判定装置。 - 前記センサが、少なくとも、前記足底面のうち、前記ユーザの進行方向に対して直交する方向で最も広い幅のいずれかに設置される
請求項1に記載の行動判定装置。 - 前記データ処理において、前記計測データに対してデータ特徴の計算に用いる範囲を定めるウィンドウを、時間軸においてスライドさせて設定するウィンドウ取得部を更に含む
請求項1に記載の行動判定装置。 - 前記計測データに基づく、統計学特徴、ピーク特徴、歩行周期特徴、FFT特徴、足底圧力偏向特徴のうち、少なくともいずれか、又は、これらの組み合わせを前記データ特徴にして、前記分類モデルの生成及び前記分類モデルを用いる判定が行われる
請求項1に記載の行動判定装置。 - 前記計測データに基づく、進行方向及び直交方向における前記圧力、若しくは、前記力のいずれかの分布、
進行方向及び直交方向における前記圧力、若しくは、前記力のいずれかのピアソン相関係数、
又は、
進行方向及び直交方向における前記圧力、若しくは、前記力のいずれかを平均した値の分布を前記データ特徴にして、前記分類モデルの生成及び前記分類モデルを用いる判定が行われる
請求項1に記載の行動判定装置。 - 左右両足の同じ位置にあるセンサによる前記計測データに基づいて、前記左右両足のうち、一方の足となる第1足における前記力、若しくは、前記圧力が閾値より小さい値となる第1時点から第2足における前記力、若しくは、前記圧力が前記閾値より小さい値から値が大きくなり始める第2時点までの時間、
又は、
前記第1時点から前記第2時点までの時間の平均のうち、いずれかを前記データ特徴にして、前記分類モデルの生成及び前記分類モデルを用いる判定が行われる
請求項1に記載の行動判定装置。 - 前記データ特徴が、前記センサの数及び設置個所に基づいて定まる
請求項1に記載の行動判定装置。 - 前記分類モデルは、決定木であり、
前記決定木では、前記データ特徴に基づいて、前記行動が判定される
請求項1に記載の行動判定装置。 - 前記分類モデルは、複数の決定木であり、
前記判定部は、
前記複数の決定木を用いた判定結果に基づいて、最も多い判定結果を前記ユーザの行動と判定する
請求項9に記載の行動判定装置。 - 複数のユーザを対象として計測される計測データを機械学習の学習データとして、前記分類モデルを生成する生成部を更に含む
請求項1に記載の行動判定装置。 - 前記生成部は、前記データ特徴と、計測データの得られた際の行動に基づき付与された行動ラベルとを前記学習データとして用いる
請求項11に記載の行動判定装置。 - 前記分類モデルは、座っている、立っている、方向の指向性を持たない動作をしている、低速で歩行している、高速で歩行している、傾斜を歩行している、階段を上がっている、階段を下っている、低速で走行している、高速で走行している、又は、自転車に乗っているのうち、いずれかに前記行動を分類する
請求項1に記載の行動判定装置。 - 所定の時間ごとに投票が行われ、前記投票による複数の投票結果のうち、最も多い投票結果に基づいて、前記判定部は、行動を判定する
請求項1に記載の行動判定装置。 - ユーザが行う行動を分類するのに用いられる分類モデルを有する行動判定システムであって、
前記ユーザの足底面に設置される1以上のセンサが計測する圧力又は力を示す計測データを取得する計測データ取得部と、
前記計測データをデータ処理してデータ特徴を計算し、前記分類モデルを用いて前記ユーザの行動を判定する判定部と
を含む行動判定システム。 - ユーザが行う行動を分類するのに用いられる分類モデルを有する行動判定装置が行う行動判定方法であって、
行動判定装置が、前記ユーザの足底面に設置される1以上のセンサが計測する圧力又は力を示す計測データを取得する計測データ取得手順と、
行動判定装置が、前記計測データをデータ処理してデータ特徴を計算し、前記分類モデルを用いて前記ユーザの行動を判定する判定手順と
を含む行動判定方法。 - 請求項16に記載の行動判定方法をコンピュータに実行させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021561128A JPWO2021106216A1 (ja) | 2019-11-29 | 2019-11-29 | |
PCT/JP2019/046859 WO2021106216A1 (ja) | 2019-11-29 | 2019-11-29 | 行動判定装置、行動判定システム、行動判定方法及びプログラム |
US17/664,945 US20220280074A1 (en) | 2019-11-29 | 2022-05-25 | Behavior determination apparatus, behavior determination system, behavior determination method, and computer-readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/046859 WO2021106216A1 (ja) | 2019-11-29 | 2019-11-29 | 行動判定装置、行動判定システム、行動判定方法及びプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/664,945 Continuation US20220280074A1 (en) | 2019-11-29 | 2022-05-25 | Behavior determination apparatus, behavior determination system, behavior determination method, and computer-readable storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021106216A1 true WO2021106216A1 (ja) | 2021-06-03 |
Family
ID=76129454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/046859 WO2021106216A1 (ja) | 2019-11-29 | 2019-11-29 | 行動判定装置、行動判定システム、行動判定方法及びプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220280074A1 (ja) |
JP (1) | JPWO2021106216A1 (ja) |
WO (1) | WO2021106216A1 (ja) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009106545A (ja) * | 2007-10-30 | 2009-05-21 | Univ Of Occupational & Environmental Health Japan | 足底圧計測装置及び行動姿勢判別方法 |
JP2011120684A (ja) * | 2009-12-09 | 2011-06-23 | Nec Corp | 行動判定装置、行動判定システム、行動判定方法、及びプログラム |
JP2013041323A (ja) * | 2011-08-11 | 2013-02-28 | Nec Corp | 行動識別装置、行動識別方法、及びプログラム |
WO2013157332A1 (ja) * | 2012-04-17 | 2013-10-24 | 日本電気株式会社 | 行動識別装置、行動識別システム及び行動識別プログラム |
JP2017109062A (ja) * | 2015-12-18 | 2017-06-22 | Cyberdyne株式会社 | 歩行トレーニングシステム及び歩行トレーニング器 |
WO2019163714A1 (ja) * | 2018-02-26 | 2019-08-29 | 国立大学法人お茶の水女子大学 | 行動判定装置、行動判定システム、行動判定方法及びプログラム |
-
2019
- 2019-11-29 JP JP2021561128A patent/JPWO2021106216A1/ja active Pending
- 2019-11-29 WO PCT/JP2019/046859 patent/WO2021106216A1/ja active Application Filing
-
2022
- 2022-05-25 US US17/664,945 patent/US20220280074A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009106545A (ja) * | 2007-10-30 | 2009-05-21 | Univ Of Occupational & Environmental Health Japan | 足底圧計測装置及び行動姿勢判別方法 |
JP2011120684A (ja) * | 2009-12-09 | 2011-06-23 | Nec Corp | 行動判定装置、行動判定システム、行動判定方法、及びプログラム |
JP2013041323A (ja) * | 2011-08-11 | 2013-02-28 | Nec Corp | 行動識別装置、行動識別方法、及びプログラム |
WO2013157332A1 (ja) * | 2012-04-17 | 2013-10-24 | 日本電気株式会社 | 行動識別装置、行動識別システム及び行動識別プログラム |
JP2017109062A (ja) * | 2015-12-18 | 2017-06-22 | Cyberdyne株式会社 | 歩行トレーニングシステム及び歩行トレーニング器 |
WO2019163714A1 (ja) * | 2018-02-26 | 2019-08-29 | 国立大学法人お茶の水女子大学 | 行動判定装置、行動判定システム、行動判定方法及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
US20220280074A1 (en) | 2022-09-08 |
JPWO2021106216A1 (ja) | 2021-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3649883B1 (en) | A method for manufacturing an outsole and a method for generating a visual ousole pattern | |
Antwi-Afari et al. | Automated detection and classification of construction workers' loss of balance events using wearable insole pressure sensors | |
CN108244744B (zh) | 一种运动状态识别的方法、鞋底及鞋 | |
CN105411593B (zh) | 用于识别步态任务的方法和设备 | |
Benson et al. | Classifying running speed conditions using a single wearable sensor: Optimal segmentation and feature extraction methods | |
US11006860B1 (en) | Method and apparatus for gait analysis | |
JP2022550301A (ja) | カスタムソールの設計のためのパーソナライズされたソールパラメータ値を計算するための方法及びシステム | |
CN108836337A (zh) | 一种通过足部运动状态进行个性化足型健康检测的方法 | |
US20180236352A1 (en) | Wearable inertial electronic device | |
CN112617807A (zh) | 一种预防和解除帕金森病患者冻结步态的装置和方法 | |
WO2019018371A1 (en) | METHODS, SYSTEMS, AND COMPUTER-READABLE NON-TEMPORARY ENVIRONMENT FOR ASSESSING THE QUALITY OF LOWER LIMBS MOVEMENTS | |
Prado et al. | Gait segmentation of data collected by instrumented shoes using a recurrent neural network classifier | |
Rastegari et al. | A bag-of-words feature engineering approach for assessing health conditions using accelerometer data | |
Aderinola et al. | Learning age from gait: A survey | |
KR102280291B1 (ko) | 검출정보별 신경망 분석을 실시하여 파킨슨 환자 및 족관절염 환자를 식별하는 장치 및 방법 | |
US11439334B2 (en) | Method and apparatus for context-adaptive personalized psychological state sampling for wearable device | |
KR102175191B1 (ko) | 스마트 인솔의 압력 센서를 이용한 보행 패턴 분류를 위한 장치 및 방법 | |
Eskofier et al. | Pattern classification of foot strike type using body worn accelerometers | |
Xiang et al. | Automatic classification of barefoot and shod populations based on the foot metrics and plantar pressure patterns | |
WO2021106216A1 (ja) | 行動判定装置、行動判定システム、行動判定方法及びプログラム | |
Chang et al. | Diagnosing Parkinson’s disease from gait | |
Monica et al. | RETRACTED ARTICLE: Hybrid FOW—a novel whale optimized firefly feature selector for gait analysis | |
KR102302234B1 (ko) | 검출정보별 판별 분석을 실시하여 개인을 식별하는 장치 및 방법 | |
Altilio et al. | A genetic algorithm for feature selection in gait analysis | |
KR102194313B1 (ko) | 검출정보별 신경망 분석을 실시하여 개인을 식별하는 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19953722 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021561128 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19953722 Country of ref document: EP Kind code of ref document: A1 |