WO2021132281A1 - 訓練データ選別装置、ロボットシステム及び訓練データ選別方法 - Google Patents

訓練データ選別装置、ロボットシステム及び訓練データ選別方法 Download PDF

Info

Publication number
WO2021132281A1
WO2021132281A1 PCT/JP2020/048038 JP2020048038W WO2021132281A1 WO 2021132281 A1 WO2021132281 A1 WO 2021132281A1 JP 2020048038 W JP2020048038 W JP 2020048038W WO 2021132281 A1 WO2021132281 A1 WO 2021132281A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
evaluation
training data
evaluated
training
Prior art date
Application number
PCT/JP2020/048038
Other languages
English (en)
French (fr)
Inventor
武司 山本
仁志 蓮沼
一輝 倉島
Original Assignee
川崎重工業株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 川崎重工業株式会社 filed Critical 川崎重工業株式会社
Priority to EP20904310.8A priority Critical patent/EP4082726A4/en
Priority to CN202080090021.0A priority patent/CN115087521A/zh
Priority to US17/789,227 priority patent/US20230045162A1/en
Publication of WO2021132281A1 publication Critical patent/WO2021132281A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39314Ann for identification, ann for convergence, ann for tracking control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40032Peg and hole insertion, mating and joining, remote center compliance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40515Integration of simulation and planning

Definitions

  • the present invention relates to selection of training data for training a learning model.
  • Patent Document 1 discloses this type of system.
  • the motion prediction system of Patent Document 1 has a configuration in which a motion prediction model is constructed by machine learning a motion prediction model corresponding to each group in which learning motion case data (collected data) is classified into a plurality of groups. ing.
  • the data collected for learning includes movement data intended by an operator and movement data not intended by the operator. include.
  • the learning model learns the motion data in the collected data in the same way regardless of whether or not it is in line with the worker's intention.
  • the operation data intended by the worker is generally considerably larger than the unintended operation data. Therefore, it is expected that the robot will perform the movement intended by the worker as the learning is repeated.
  • the machine learning model since the machine learning model also performs machine learning for inappropriate motion data that the worker does not intend, it takes time for the learning to converge and it takes a lot of time to output the result intended by the worker. I needed it.
  • whether or not the robot has acquired the motion intended by the worker by learning has to be determined by visually confirming the motion after learning of the robot. Even after learning for a long time, if the robot does not perform the intended movement and it is unlikely that the movement will improve in the future, it may be necessary to start over from the data collection stage, which takes time and man-hours. There was a lot of waste.
  • the present invention has been made in view of the above circumstances, and an object of the present invention is training that can reduce the time and man-hours required for trial and error of machine learning and shorten the learning time until a result according to an intention can be output.
  • the purpose is to provide a training data sorting device capable of providing data.
  • a training data sorting device sorts training data for constructing a learning model by machine learning from the collected data collected by the data collecting device.
  • This training data sorting device includes a data evaluation model, a data evaluation unit, a storage unit, and a training data sorting unit.
  • the data evaluation model is constructed by machine learning on at least a part of the collected data or by machine learning on data different from the collected data.
  • the data evaluation unit evaluates the input collected data using the data evaluation model.
  • the storage unit stores evaluated data, which is collected data evaluated by the data evaluation unit. From the evaluated data stored by the storage unit, the training data selection unit obtains training data for constructing the learning model according to the instruction of the operator presented with the evaluation result of the data evaluation unit, or. , Automatically select based on the evaluation result.
  • this training data selection method selects training data for constructing a learning model by machine learning from the collected data collected by the data acquisition device.
  • This training data sorting method performs a process including a data evaluation step, a storage step, and a training data sorting step.
  • data evaluation process data is input using a data evaluation model constructed by machine learning on at least a part of the collected data or by machine learning on data different from the collected data. Evaluate the collected data.
  • the evaluated data which is the collected data evaluated in the data evaluation step, is stored.
  • the training data selection step the training data for constructing the learning model is obtained from the evaluated data stored in the storage step by the instruction of the operator whose evaluation result in the data evaluation step is presented, or the said. Sort automatically based on the evaluation result.
  • the present invention it is possible to reduce the time and man-hours required for trial and error of machine learning, and to provide training data that can shorten the learning time until a good result can be output.
  • the block diagram which shows the relationship between the training data sorting apparatus which concerns on one Embodiment of this invention, a robot system, and a learning apparatus.
  • the figure which shows the flow of an example of work performed by a robot, and each work state.
  • Explanatory drawing which shows evaluation for operation information.
  • the figure which shows an example of the data displayed on the display device.
  • the figure which shows the example which the presented data is sorted by an operator.
  • Explanatory drawing which shows one of the effects of a training data sorting apparatus.
  • FIG. 1 is a block diagram showing a relationship between the training data sorting device 2 according to the present embodiment, the robot system 1, and the learning device 3.
  • the robot system 1 is a system for causing the robot 11 to perform work. As this work, various things such as welding, assembly, processing, handling, painting, cleaning, and polishing can be considered.
  • the robot system (controlled machine) 1 includes a robot control device 10, a robot 11, an operation device 12, and a data collection device 13. Each device is connected to each other via a wired or wireless network, and can exchange signals (data).
  • the robot control device 10 is composed of a known computer, and includes an arithmetic processing unit such as a microcontroller, CPU, MPU, PLC, DSP, ASIC, or FPGA, a robot storage unit such as ROM, RAM, and HDD, and an external device. It is equipped with a communication unit capable of communicating with.
  • the robot storage unit stores a control application or the like for controlling the arm unit or the like.
  • the robot control device 10 can switch the operation mode of the robot 11 between a manual operation mode, an automatic operation mode, and an autonomous operation mode.
  • the operator manually operates the operation device 12 described later to operate the robot 11.
  • the robot 11 operates following a preset operation trajectory.
  • This automatic operation mode is used when the same operation is repeated, such as the movement of an end effector described later attached to the tip of the arm portion of the robot 11.
  • the movement of the end effector for example, a movement from a preset initial position to a position where autonomous operation is started in the autonomous operation mode can be considered.
  • the robot 11 In the autonomous operation mode, the robot 11 automatically operates based on the result of learning the operation of the robot 11 by manual operation in advance.
  • the operation of the robot 11 is controlled by using a learning model constructed by machine learning the training data selected by the training data selection device 2 described later. ..
  • the robot 11 is configured as, for example, a vertical articulated robot having 6 degrees of freedom of movement.
  • the robot 11 includes an arm portion attached to a pedestal.
  • the arm portion has a plurality of joints. Each joint is provided with an actuator (for example, an electric motor) shown in the drawing for driving the arm portion around the joint.
  • An end effector according to the work content is attached to the tip of the arm portion.
  • the arm portion and end effector of the robot 11 operate based on the operation command for operating the robot 11.
  • This operation command includes, for example, a linear velocity command, an angular velocity command, and the like.
  • the robot 11 is equipped with a sensor for detecting the operation of the robot 11 and the surrounding environment.
  • the motion sensor 11a, the force sensor 11b, and the camera 11c are attached to the robot 11.
  • the motion sensor 11a is composed of, for example, an encoder and is provided for each joint of the arm portion of the robot 11 to detect the rotation angle or the angular velocity of each joint.
  • the force sensor 11b detects the force applied to each joint of the arm portion of the robot 11 or the end effector attached to the tip of the arm portion when the robot 11 operates.
  • the force sensor 11b may be configured to detect moments in place of or in addition to force.
  • the camera 11c detects the image of the work to be worked on (the progress of the work on the work).
  • a sound sensor for detecting sound and / or a vibration sensor for detecting vibration may be provided in order to detect the progress of work on the work.
  • the robot 11 or the like may be provided with a sensor for collecting distance information such as a laser scan sensor or an infrared scan sensor.
  • the data detected by the motion sensor 11a is motion data indicating the motion of the robot 11, and the data detected by the force sensor 11b and the camera 11c is ambient environment data indicating the state of the environment around the robot 11.
  • the ambient environment data is a state value indicating the state of progress of the work of the robot 11 at the time when the sensor detects the data.
  • the data detected by the motion sensor 11a, the force sensor 11b, and the camera 11c is collected as state information by the data collecting device 13 described later.
  • the operating device 12 is a member operated by an operator to operate the robot 11.
  • the operating device 12 is different depending on the work content, but is, for example, a lever operated by the operator or a pedal operated by the foot.
  • the operation device 12 is configured as, for example, a remote control device arranged at a location physically separated from the robot 11.
  • the operating device 12 is provided with an operating force detection sensor 12a.
  • the operating force detection sensor 12a detects an operating force, which is a force applied by the operator to the operating device 12.
  • the operating force may be a value including the direction and magnitude of the force, for example, a vector. Further, the operating force may be a value such as acceleration linked to the force as well as the force applied by the operator.
  • the operating force detected by the operating force detection sensor 12a includes, for example, as shown in FIG. 3, the force and velocity components (force x and velocity x) on the x-axis in the coordinate system of the robot 11. Includes force and velocity components (force y and velocity y) on the y-axis.
  • the data related to the operating force detected by the operating force detection sensor 12a is collected by the data collecting device 13 as operating information.
  • the data collection device 13 is composed of, for example, a known computer, and includes an arithmetic processing unit such as a microcontroller, CPU, MPU, PLC, DSP, ASIC or FPGA, a robot storage unit such as ROM, RAM, and HDD. It includes a communication unit capable of communicating with an external device. A data collection application or the like that collects various types of data is stored in the storage unit.
  • the data collection device 13 may be provided separately from the robot control device 10, or may be integrally configured with the robot control device 10. When the data collection device 13 and the robot control device 10 are integrally configured, the robot control device 10 functions as the data collection device 13 by the cooperation of the hardware and software included in the robot control device 10.
  • the collected data collected by the data collecting device 13 includes state information indicating the surrounding environment data of the robot 11, operation information reflecting the operating force of the operator corresponding to the surrounding environment data of the robot 11, and operation information. including.
  • this collected data is a series of state information and operation information obtained when the operator continuously operates the operation device 12 to perform the work (or a part of the work) on the robot 11. It is time series data. That is, the data collecting device 13 collects each of the state information and each of the operation information in relation to the time.
  • the state information and the operation information include measurement values based on the detection values obtained by the camera 11c, the operation force detection sensor 12a, and the like.
  • the learning device 3 is composed of at least one known computer.
  • the computer constituting the learning device 3 includes, for example, a GPU, a ROM, a RAM, an HDD, and the like.
  • An application for machine learning is stored in the HDD or the like.
  • the learning device 3 constructs a learning model used in the robot system 1 by machine learning (for example, supervised learning).
  • the learning device 3 constructs a learning model by machine learning the training data selected from the collected data collected by the data collecting device 13 by the training data sorting device 2.
  • This training data includes, for example, at least the surrounding environment data (that is, state information) that reflects the working state of the robot 11 and the operating force (that is, operating information) associated with the surrounding environment data.
  • This learning model is, for example, a neural network having a general configuration having an input layer, a hidden layer, and an output layer. In each layer, a plurality of units simulating brain cells are arranged.
  • the hidden layer is provided between the input layer and the output layer, and is composed of an appropriate number of intermediate units.
  • the sensor information (training data) input to the learning device 3 flows in the order of the input layer, the hidden layer, and the output layer. The number of hidden layers is determined as appropriate.
  • the format of the learning model is arbitrary, not limited to this.
  • the data input to the input layer is the sensor information that reflects the above-mentioned ambient environment data.
  • the data output by the output layer is the estimation result of the detection value of the operating force detection sensor 12a. This essentially means an estimated operator maneuverability. Therefore, the data output by the output layer indicates the operator's operation estimated by the model.
  • Each input unit and each intermediate unit are connected by a path through which information flows, and each intermediate unit and each output unit are connected by a path through which information flows.
  • the influence (weight) of the information of the upstream unit on the information of the downstream unit is set.
  • the learning device 3 inputs sensor information to the model and compares the operating force output from the model with the operating force by the operator.
  • the learning device 3 updates the model by updating the weights by, for example, an error backpropagation method, which is a known algorithm, so that the error obtained by this comparison becomes small.
  • the model update is not limited to the backpropagation method.
  • the model can be updated by a known algorithm, SOM (Self-organizing map). Learning is realized by continuously performing such processing.
  • the learning model constructed by machine learning the training data in the learning device 3 is mounted on the robot control device 10 of the robot system 1, and is used for autonomous driving of the robot 11, for example.
  • the learning model implemented in the robot control device 10 operates in the inference phase, estimates and outputs the operating force of the operator corresponding to the input ambient environment data with respect to the input ambient data.
  • training data sorting device 2 of the present embodiment and the sorting of training data from the collected data by the training data sorting device 2 will be described in detail with reference to FIGS. 2 to 7 and the like.
  • the training data sorting device 2 includes a data evaluation model 20, a data evaluation unit 21, a storage unit 22, a presentation device (evaluation presentation unit) 23, and an input device (instruction reception unit) 24. , A training data selection unit 25, and so on.
  • the training data sorting device 2 includes, for example, an arithmetic processing unit such as a microcontroller, CPU, MPU, PLC, DSP, ASIC or FPGA, a memory such as ROM, RAM, HDD, and a communication unit capable of communicating with an external device.
  • an arithmetic processing unit such as a microcontroller, CPU, MPU, PLC, DSP, ASIC or FPGA
  • a memory such as ROM, RAM, HDD
  • a communication unit capable of communicating with an external device.
  • a known computer comprising.
  • the HDD or the like of the computer constitutes the storage unit 22 of the training data sorting device 2.
  • the storage unit 22 stores a program executed by the arithmetic processing unit, evaluated data described later, and the like.
  • the computer can function as a data evaluation unit 21 and a training data selection unit 25.
  • the storage unit 22 performs the processing included in the storage process.
  • the data evaluation model 20 has the same configuration as the above-mentioned learning model, and is constructed by machine learning on at least a part of the collected data collected by the data collection device 13.
  • the data evaluation model 20 is not limited to this, and may be constructed by, for example, machine learning the operation history data of another robot system 1.
  • the robot 11 included in the other robot system 1 corresponds to the controlled target machine.
  • the collected data machine-learned by the data evaluation model 20 is classified into a plurality of groups by using, for example, a known clustering method such as an NN method, a K-means method, or a self-organizing map.
  • Clustering is a method of learning the law of distribution from a large number of data and automatically acquiring a plurality of clusters, which are a group of data having similar characteristics to each other. The number of clusters to which the collected data is classified can be determined as appropriate.
  • the collected data may be classified by using an automatic classification method other than clustering.
  • the collected data related to a series of operations collected by the data collection device 13 is classified for each operator's operation (reference operation) corresponding to the work state.
  • the robot 11 when the robot 11 is to perform a series of operations for inserting the work 100 into the recess 110, it can be classified into four work states, for example, air, contact, insertion, and completion. it can.
  • Working state A in the air is a state in which the robot 11 holds the work 100 and positions it above the recess 110.
  • the working state B contact is a state in which the work 100 held by the robot 11 is in contact with the surface on which the recess 110 is formed.
  • the working state C insertion is a state in which the work 100 held by the robot 11 is inserted into the recess 110.
  • the working state D completed is a state in which the work 100 held by the robot 11 is completely inserted into the recess 110.
  • the four work states are a series of work by the robot 11 classified for each process, and when the work of the robot 11 proceeds correctly, the work state A (air), the work state B (contact), and the work The working state changes in the order of state C (insertion) and working state D (completed).
  • the data evaluation model 20 is constructed, for example, by machine learning the combination of the working state and the operating force in each predetermined time range.
  • the above working states A, B, C, and D are typical, and in reality, there may be many different working states.
  • the robot 11 is made to perform the same work several times by the operation of the operator, and for example, the work state A1 corresponding to one set of state information and operating force and the work corresponding to another set of state information and operating force are performed. It is assumed that the state A2 and the working state A3 corresponding to yet another set of state information and operating force are collected.
  • These working states A1, A2, and A3 are different from each other in detail because there are variations in the operation of the operator, variations in the situation, and the like. However, since the working states A1, A2, and A3 have common characteristics, they are classified into the same cluster (cluster in the working state A).
  • the data evaluation model 20 is not limited to this, and the data evaluation model 20 includes, for example, a certain work state, the next work state associated with the work state (that is, the work state to be transitioned to next), and at least one set of state information.
  • the operation force associated with this state information may be constructed by machine learning. As a result, it is possible to learn the ranking relationship between working states (and by extension, corresponding operating forces).
  • the data evaluation model 20 of the present embodiment performs machine learning so as to reflect the time order of the output of the operating force.
  • the data evaluation model 20 learns at least one set of state information and operating force combinations corresponding to each of the work state A, the work state B, the work state C, and the work state D, and also works.
  • the work order in which the work state B appears next to the state A is also learned.
  • the data evaluation model 20 can be used to perform classification that reflects the time-series information of the operating force. That is, each of the operating forces associated with each work state can be reflected in the work order.
  • this state information is sensor information detected by the motion sensor 11a, the force sensor 11b, and the camera 11c (for example, the working state of position, speed, force, moment, image, etc.).
  • This state information may include information calculated based on the sensor information (for example, a value indicating a change over time of the sensor information from the past to the present).
  • the data evaluation model 20 constructed as described above can estimate and output the reference operation corresponding to the state information with respect to the state information associated with the input time series information.
  • the data evaluation model 20 of the present embodiment estimates and outputs the reference operation corresponding to the input state information. , The distance value between the input operation information and the estimated estimation reference operation is obtained, and the distance value (similarity) is output as an evaluation value.
  • the estimation reference operation for example, information on the cluster to which the reference operation belongs may be output.
  • the comparison between the output estimation reference operation and the input operation information may be performed by the data evaluation unit 21 instead of the data evaluation model 20.
  • the data evaluation unit 21 is used to evaluate the collected data collected by the data collection device 13 by using the data evaluation model 20 constructed in advance as described above. As shown in FIG. 3, the data evaluation unit 21 evaluates the operation information in each predetermined time range. Specifically, when the evaluation value output by the data evaluation model 20 is equal to or greater than a predetermined threshold value for the collected data, the data evaluation unit 21 provides information on the cluster to which the reference operation output by the data evaluation model 20 belongs. A label (correspondence information) indicating the above is attached to the collected data. On the other hand, when the evaluation value output by the data evaluation model 20 is less than a predetermined threshold value, the data evaluation unit 21 does not give a label to the collected data.
  • the data evaluation unit 21 may give a label indicating that it does not belong to any cluster instead of giving a label.
  • label information whether or not a label is attached and / or the type of the attached label and the like may be referred to as "label information”. That is, the data evaluation unit 21 performs the processing included in the data evaluation process.
  • the data evaluation model 20 when evaluating a series of collected data collected for a series of operations shown in FIG. 2, the data evaluation model 20 has a force x, which is included in the operation information for each predetermined time range, as shown in FIG.
  • the similarity of the components included in each reference operation for the force y, the velocity x, and the velocity y the overall similarity between the operation information for each predetermined time range and each reference operation is obtained. And output as an evaluation value.
  • the data evaluation unit 21 targets the operation information (and by extension, the collected data) in which the evaluation value output by the data evaluation model 20 is equal to or higher than the predetermined threshold value with respect to the operation information for each predetermined time range, and the reference for the operation information is similar. Give a label indicating the operation.
  • the data evaluation unit 21 assigns (assigns) a label of the numerical value (1) to the operation information. ).
  • the data evaluation unit 21 assigns the label of the numerical value (2) to the operation information.
  • the data evaluation unit 21 assigns the label of the numerical value (3) to the operation information.
  • the label of the numerical value (4) is assigned to the operation information.
  • provisional selection target data the data to which the numerical label is assigned
  • provisional selection exclusion data The collected data evaluated by the data evaluation unit 21 is referred to as “evaluated data”. This evaluated data includes one or both of the provisional selection target data and the provisional selection exclusion data.
  • labels are assigned to each predetermined time range in the information contained in the collected data.
  • the collected data can be treated as a block corresponding to each reference operation as shown in FIG. This makes it easy to extract only the data (block) indicating the effective part of the operation from the collected data for a series of operations.
  • the part where the time series information is continuous and the label information is the same is treated as one group block.
  • the data string is assigned a block (range) to which a numerical label is assigned and a numerical label.
  • Blocks (ranges) that have not been displayed can be represented as being arranged in an order according to the time-series information.
  • the collected data is evaluated while maintaining the time series information. Therefore, the collected data of a series of operations including the operation information similar to the plurality of reference operations is collected in the predetermined work order of the series of operations (for example, 1 (A) ⁇ 2 (B) ⁇ 3 (C) shown in FIG. 3). ⁇ It can be easily distinguished depending on whether or not it has 4 (D)). That is, even if the set of a plurality of reference operations that are similar to each other is the same in the two collected data, if the work order corresponding to the operation information is different, the two collected data can be treated as different clusters.
  • the data evaluation unit 21 transmits the operation information of the collected data to which the label information is assigned (including the data portion to which the numerical label is not assigned) to the presentation device 23. This operation information corresponds to the evaluated operation information.
  • the presentation device 23 shown in FIG. 1 is a dot matrix type display such as a liquid crystal or an organic EL.
  • the presenting device 23 presents the evaluation result of the data evaluation unit 21 to the operator by displaying the evaluated data evaluated by the data evaluation unit 21, the label information of the collected data, and the like.
  • the presenting device 23 is arranged, for example, in the vicinity of the operating device 12.
  • the presentation device 23 can also display a video signal, information about the work performed by the robot system 1, and the like.
  • the presentation device 23 visually displays the operation information (for example, the operation force) included in the collected data in the form of a graph, and also displays the time series information. Is continuous and the data part to which the label of the same numerical value is assigned is displayed as one block. As a result, the operator can check the operation information more intuitively.
  • the operation information for example, the operation force
  • the presentation device 23 may highlight the data portion by adding a “?” Mark to the data portion to which the numerical label is not assigned.
  • labels having different numerical values and / or data portions to which the labels are assigned may be displayed in different colors.
  • the operation information (for example, the operation force) included in the collected data may be displayed in the form of a graph or the like so that the operation information (for example, the operation force) of the reference operation can be compared with the operation information (for example, the operation force).
  • the input device 24 receives an instruction from the operator regarding whether or not to adopt the evaluated operation information presented by the presentation device 23 as training data.
  • the input device 24 is composed of a key, a mouse, a touch panel, etc., which are illustrated and can be operated by an operator.
  • the training data sorting device 2 adds information regarding acceptance / rejection as training data to the evaluated operation information in the form of, for example, a flag, in response to the input of the operator to the input device 24.
  • the provisional selection target data or the provisional selection exclusion data to which the acceptance / rejection information from the worker is given is stored in the storage unit 22 as the selected data.
  • the training data sorting device 2 of the present embodiment immediately after the operator operates the operating device 12 to cause the robot 11 to perform a series of operations, the training data sorting device 2 immediately presents the evaluation result for the collected data of the series of operations 23. Can be displayed on.
  • the worker decides whether or not to use the operation performed immediately before as training data for machine learning while the feeling of operation remains in himself / herself at the operation site. It can be instructed by the input device 24.
  • Data evaluation by the data evaluation unit 21 can be completed automatically in a short time after data collection by using the data evaluation model 20 whose construction has been completed by machine learning. Therefore, the worker can assist in the presentation of the evaluation result even when the acceptance / rejection is decided in almost real time as described above.
  • the collected data used in the training data can be limited to the one intended by the worker.
  • inappropriate collected data can be ruled out before the collected data is provided for the training phase of the learning model.
  • By selecting the collected data at an early stage it is possible to reduce the cases where the undesired collected data is machine-learned. As a result, it is possible to shorten the learning time until a learning model that can obtain the intended output can be constructed.
  • the training data sorting device 2 may, for example, present the evaluation results of a plurality of collected data corresponding to the operations of the worker performed within a predetermined period to the worker in a summarized form at another place.
  • the operator uses the input device 24 to select the collected data (evaluated data) collected for a series of operations in units of collected data for training. It is possible to instruct acceptance or rejection as data. However, the worker can also select only a part of the collected data and instruct the acceptance / rejection as the training data.
  • the five operation information (a) to (e) are shown on the upper side of FIG. 5, and each of them corresponds to the evaluated data. As shown in the lower left of FIG. 5, the operator can instruct to select the operation information (a), (b), and (d) from the five operation information and adopt them as training data. ..
  • the operation information (b) and (d) shown in FIG. 5 include a block of provisional selection exclusion data. However, according to the instruction of the operator, the data can be selected as valid data for a series of operations.
  • the operator selects a data block (for example, a part corresponding to a certain reference operation) included in each operation information (a) to (e) as a unit, and train data. Can be instructed to adopt as.
  • a data block for example, a part corresponding to a certain reference operation
  • the operation information (a) shown in FIG. 5 is the case where the lower left portion of the work 100 is in contact with the surface first
  • the operation information (c) is the case where the lower right portion of the work 100 is in contact with the surface first.
  • the corresponding data block is labeled with the numerical value (2)
  • the operation information (c) is not labeled. Can be considered.
  • the training data sorting device 2 of the present embodiment selects a data block without a label included in the operation information (c) shown in FIG. 5 by the operator operating the input device 24.
  • the data block is an operation corresponding to the label of the numerical value (2).
  • the training data sorting device 2 can recognize the variation of the collected data which is an effective operation without omission.
  • the operator selects both the operation information in each case where the work 100 contacts the surface on which the recess 110 is formed from different directions as training data.
  • the training data sorting device 2 can be instructed. Therefore, the robustness of the training data selected by the training data selection device 2 can be improved.
  • the training data sorting device 2 of the present embodiment may present a large amount of collected data to the operator so that it can be selected with mechanical evaluation information (label) added. it can. As a result, the operator can efficiently select appropriate data and use it as training data for machine learning.
  • the operator operates the operating device 12 to cause the robot 11 to perform a series of operations including the operation.
  • the state information and operation information at this time are acquired as collected data by the data collecting device 13.
  • the new operation part of the collected data corresponds to the data block between the two blocks labeled (1) in the operation information (c) shown in FIG. 5 will be considered. Since this is a new operation, the data block is not labeled by the data evaluation unit 21.
  • this operation information (c) is presented in the presentation device 23
  • the operator operates the input device 24 to instruct that the unlabeled data block is selected and trained as a new reference operation. ..
  • the training data sorting device 2 assigns the corresponding provisional selection exclusion data a label of a numerical value (for example, 5) that is not used in the provisional selection target data.
  • the label of the numerical value (5) is additionally added to the data of the block. Further, the operator can instruct the data block to which the new label is attached to be adopted as training data by the input device 24.
  • the training model learns the training data
  • the data labeled with the numerical value (2) and the data labeled with the numerical value (5) are operated on the same working state B. It can be treated as information.
  • the training data selection unit 25 is used to select training data for constructing a learning model used in the robot system 1 from the selected data stored in the storage unit 22.
  • Training data is sorted in various ways according to the purpose. For example, when it is desired to train the training model for a series of operations shown in FIG. 2, the training data selection unit 25 uses labels (1) to (4) from the selected data instructed to be adopted as training data. Selects the assigned data and outputs it as training data. Further, for example, when it is desired to additionally learn the training model regarding the reference operation for the work state C, the training data selection unit 25 assigns the label of the numerical value (3) from the selected data instructed to be adopted as the training data. The block of the obtained data part is extracted and output as training data.
  • the training data sorting device 2 of the present embodiment can sort only the training data to be trained by the learning model from a plurality of collected data for a plurality of types of work.
  • the training data sorting unit 25 performs the processing included in the training data sorting step.
  • the training data sorting device 2 of the present embodiment sorts training data for constructing a learning model by machine learning from the collected data collected by the data collecting device.
  • the training data sorting device 2 includes a data evaluation model 20, a data evaluation unit 21, a storage unit 22, and a training data sorting unit 25.
  • the data evaluation model 20 is constructed by machine learning on at least a part of the collected data or by machine learning on data different from the collected data.
  • the data evaluation unit 21 evaluates the input collected data using the data evaluation model 20.
  • the storage unit 22 stores the evaluated data, which is the collected data evaluated by the data evaluation unit 21.
  • the training data selection unit 25 selects training data for constructing a learning model from the evaluated data stored by the storage unit 22 according to the instruction of the worker presented with the evaluation result of the data evaluation unit 21.
  • the training data sorting device 2 of the present embodiment includes a presentation device 23 and an input device 24.
  • the presenting device 23 presents the evaluation result of the data evaluation unit 21 to the operator.
  • the input device 24 receives an operator's instruction regarding whether or not to select the evaluated data as training data.
  • the training data selection unit 25 selects training data for constructing a learning model based on the instructions input to the input device 24.
  • the training data is selected based on the instructions of a human being (preferably the operator himself / herself), so that the training data can be made into a more appropriate collection of data. Further, by referring to the evaluation result by the data evaluation model 20, the operator can easily determine whether or not the collected data should be used as training data.
  • the collected data includes time series information of measured values based on the detected values detected by at least one of the sensors mounted on the robot system 1.
  • the data evaluation unit 21 evaluates the collected data for each partial time-series information that is time-series information corresponding to a part of the time-series information of the detected values.
  • the collected data is evaluated for each appropriate unit, so that it becomes easy to grasp a series of operations as if the basic operations are arranged in an appropriate order.
  • the selection of training data becomes more accurate.
  • machine learning can be performed while efficiently using the collected data.
  • the data evaluation model 20 corresponds to each of a plurality of reference operations which are subdivided operations of the operator when partial time series information is input. It is constructed to output the evaluation value.
  • the data evaluation unit 21 is the best evaluation value when the best evaluation value among the evaluation values output by the data evaluation model 20 for each of the plurality of reference operations when the partial time series information is input is better than the threshold value.
  • a label indicating that the partial time series information is evaluated to correspond to the reference operation of is attached to the collected data, and the collected data is stored in the storage unit as evaluated data.
  • the evaluated data is presented in a form with a label as an evaluation result for sorting by the operator of the evaluated data.
  • the worker can easily confirm the data given a good evaluation by the data evaluation unit 21.
  • the evaluated data is sorted by the operator so that the evaluated data can be distinguished for each range of the partial time series information to which the label as the evaluation result is given. Presented for.
  • the evaluated data includes a range in which the best evaluation value among the evaluation values output by the data evaluation model 20 for each of the plurality of reference operations is not better than the threshold value. , Presented for worker selection of evaluated data.
  • the operator specifies a range in which the best evaluation value among the evaluation values output by the data evaluation model 20 for each of the plurality of reference operations is not better than the threshold value. , It is possible to add a label indicating an operation that is not included in a plurality of reference operations.
  • the evaluated data is visually presented for sorting by the operator of the evaluated data in the form of displaying the value detected by the sensor or the information based on the sensor in a graph.
  • the training data sorting unit 25 can sort the training data for each range of the partial time-series information to which the label as the evaluation result is given among the evaluated data. Is.
  • a part of the evaluated data can be easily extracted and selected as training data, so that machine learning can be performed while efficiently using the collected data.
  • the presentation device 23 is not limited to the visual display, and for example, the presentation device 23 can be used for the operation information by presenting the auditory sense with different sound effects depending on the quality of the evaluation value or presenting the force sense as feedback such as vibration to the operation device 12.
  • the evaluation can also be presented to the worker.
  • the operator inputs instruction information regarding the quality of each of the collected data stored in the storage unit 22 into the history of the collected data evaluated by the data evaluation unit 21. Is also good.
  • the worker determines whether or not to adopt the evaluated data as training data with the support of presenting the evaluation result by the data evaluation unit 21.
  • the acceptance or rejection of the evaluated data as training data may be automatically determined by a program (including the case of using artificial intelligence) instead of the worker.
  • the presenting device 23 to be presented to the operator and the input device 24 for inputting the operator's instruction can be omitted.
  • this learning model can be used as the data evaluation model 20.
  • the robot 11 may be configured not only as an industrial robot but also as a medical robot or the like.
  • the training data selection device 2 selects not only training data for constructing a learning model for controlling a robot, but also training data for constructing a learning model for automatic operation of a vehicle and automatic operation of a plant. You may.
  • the data collecting device 13 may be provided in the training data sorting device 2 instead of the robot system 1.
  • the data evaluation model 20 of the training data sorting device 2 evaluates the collected data. However, the data evaluation model 20 may be used to evaluate the output of the learning model constructed by machine learning the training data selected by the training data selection device 2.
  • the information obtained by the robot 11 side may be presented in real time to the operator who performs remote control.
  • the information presented to the operator in this way can be a target to be collected by the data collection device 13.
  • the robot control device 10 drives the robot 11 in response to the operation of the operator's operation device 12, while transmitting the reaction force received by the robot 11 from the surroundings. As described above, it is conceivable to drive the operating device 12. As a result, an interactive operation is realized, and the operator can remotely control the robot 11 in real time by using the operation device 12 while feeling the force sense pseudo-presented through the operation device 12.
  • the image of the camera 11c included in the robot system 1 may be displayed in real time on an appropriate display arranged near the operator.
  • Robot system (machine to be controlled) 2 Training data sorting device 20 Data evaluation model 21 Data evaluation unit 22 Storage unit 23 Presentation device (evaluation presentation unit) 24 Input device (instruction reception unit) 25 Training Data Sorting Department

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

訓練データ選別装置は、データ評価モデルと、データ評価部と、記憶部と、訓練データ選別部と、を備える。前記データ評価モデルは、前記収集データの少なくとも一部に対して機械学習することで、又は前記収集データとは異なるデータに対して機械学習することで、構築されている。前記データ評価部は、前記データ評価モデルを用いて、入力された前記収集データを評価する。前記記憶部は、前記データ評価部により評価された収集データである評価済データを記憶する。前記訓練データ選別部は、前記記憶部により記憶された前記評価済データから、前記学習モデルを構築するための訓練データを、前記データ評価部の評価結果が提示された作業者の指示により、又は、当該評価結果に基づいて自動的に選別する。

Description

訓練データ選別装置、ロボットシステム及び訓練データ選別方法
 本発明は、学習モデルを訓練するための訓練データの選別に関する。
 従来から、収集データから反復的に学習して法則やルールを自動的に見つけ出し、人間が自然に行っている学習能力と同様な機能を実現する機械学習を用いてロボットの動作等を制御するシステムが知られている。特許文献1は、この種のシステムを開示する。
 特許文献1の動作予測システムは、学習用動作事例データ(収集データ)を複数の群に分類した群を、それぞれに対応する動作予測モデルに機械学習させることにより動作予測モデルを構築する構成となっている。
特開2018-206286号公報
 上記特許文献1のような機械学習を用いてロボットの動作を制御するシステムにおいて、一般に、学習のために収集されたデータには、作業者が意図する動作データと、意図しない動作データと、が含まれている。学習モデルは、作業者の意図に沿っているか否かにかかわらず、収集されたデータにおける動作データを同じように学習する。
 収集されたデータにおいて、作業者が意図する動作データは、意図しない動作データよりも、相当に多いことが一般的である。従って、学習を繰り返すうちに、作業者が意図した動作をロボットが行うようになることが期待される。
 しかし、機械学習モデルは、作業者が意図しない不適切な動作データに対しても機械学習しているので、学習の収束に時間が掛かり、作業者が意図する結果を出力できるまで多くの時間を要していた。また、作業者が意図した動作をロボットが学習により獲得しているかどうかは、ロボットの学習後の動作を目視等で確認して判断せざるを得なかった。仮に、長時間学習した後でも、意図した動作をロボットが行っておらず、今後も動作が改善する見込みがなさそうな場合は、データの収集段階からやり直しとなることもあり、時間と工数の大きな無駄が生じていた。
 本発明は以上の事情に鑑みてされたものであり、その目的は、機械学習の試行錯誤に掛かる時間と工数を減らすことができ、意図に沿う結果を出力できるまでの学習時間を短縮できる訓練データを提供可能な訓練データ選別装置を提供することにある。
 本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
 本発明の第1の観点によれば、以下の構成の訓練データ選別装置が提供される。即ち、この訓練データ選別装置は、機械学習により学習モデルを構築するための訓練データを、データ収集装置により収集された収集データから選別する。この訓練データ選別装置は、データ評価モデルと、データ評価部と、記憶部と、訓練データ選別部と、を備える。前記データ評価モデルは、前記収集データの少なくとも一部に対して機械学習することで、又は前記収集データとは異なるデータに対して機械学習することで、構築されている。前記データ評価部は、前記データ評価モデルを用いて、入力された前記収集データを評価する。前記記憶部は、前記データ評価部により評価された収集データである評価済データを記憶する。前記訓練データ選別部は、前記記憶部により記憶された前記評価済データから、前記学習モデルを構築するための訓練データを、前記データ評価部の評価結果が提示された作業者の指示により、又は、当該評価結果に基づいて自動的に選別する。
 本発明の第2の観点によれば、以下の構成の訓練データ選別方法が提供される。即ち、この訓練データ選別方法は、機械学習により学習モデルを構築するための訓練データを、データ収集装置により収集された収集データから選別する。この訓練データ選別方法は、データ評価工程と、記憶工程と、訓練データ選別工程と、を含む処理を行う。データ評価工程では、前記収集データの少なくとも一部に対して機械学習することで、又は前記収集データとは異なるデータに対して機械学習することで、構築されたデータ評価モデルを用いて、入力された前記収集データを評価する。記憶工程では、前記データ評価工程で評価された収集データである評価済データを記憶する。訓練データ選別工程では、前記記憶工程で記憶された前記評価済データから、前記学習モデルを構築するための訓練データを、前記データ評価工程における評価結果が提示された作業者の指示により、又は当該評価結果に基づいて自動的に選別する。
 これにより、データ評価モデルによる評価結果を用いて収集データから訓練データを選別することで、機械学習のために好ましいデータからなる訓練データを容易に準備することができる。これにより、学習モデルの構築時間を短縮することができる。
 本発明によれば、機械学習の試行錯誤に掛かる時間と工数を減らすことができ、良い結果を出力できるまでの学習時間を短縮できる訓練データを提供することができる。
本発明の一実施形態に係る訓練データ選別装置と、ロボットシステムと、学習装置と、の関係を示すブロック図。 ロボットが行う作業の一例の流れ及び各作業状態を示す図。 操作情報に対する評価を示す説明図。 表示装置で表示されるデータの一例を示す図。 提示されたデータが作業者により選別される例を示す図。 作業状態の収集データから選別されたデータのロバスト性を向上できる例を示す図。 訓練データ選別装置の効果の1つを示す説明図。
 次に、図面を参照して本発明の実施の形態を説明する。初めに、図1を参照して、本実施形態の訓練データ選別装置2により選別されたデータを機械学習して構築された学習モデルを用いるロボットシステム1、及びこの学習モデルを構築する学習装置3について簡単に説明する。図1は、本実施形態に係る訓練データ選別装置2と、ロボットシステム1と、学習装置3と、の関係を示すブロック図である。
 ロボットシステム1は、ロボット11に作業を行わせるためのシステムである。この作業としては、例えば、溶接、組立て、加工、ハンドリング、塗装、洗浄、研磨等、様々なものが考えられる。
 図1に示すように、ロボットシステム(制御対象機械)1は、ロボット制御装置10と、ロボット11と、操作装置12と、データ収集装置13と、を含む。それぞれの装置は、有線又は無線のネットワークを介して互いに接続されており、信号(データ)のやり取りを行うことができる。
 ロボット制御装置10は、公知のコンピュータにより構成されており、マイクロコントローラ、CPU、MPU、PLC、DSP、ASIC又はFPGA等の演算処理部と、ROM、RAM、HDD等のロボット記憶部と、外部装置と通信可能な通信部と、を備える。ロボット記憶部には、アーム部等を制御するための制御アプリケーション等が記憶されている。
 ロボット制御装置10は、ロボット11の運転モードを、手動運転モード、自動運転モード及び自律運転モードの間で切り替えることができる。
 手動運転モードでは、作業者が後述の操作装置12を手動で操作することで、ロボット11を動作させる。
 自動運転モードでは、ロボット11が予め設定された動作軌道に追従して動作する。この自動運転モードは、ロボット11のアーム部の先端に取り付けられた後述のエンドエフェクタの移動等の、同じ動作を繰り返す場合に用いられる。このエンドエフェクタの移動としては、例えば、予め設定された初期位置から、自律運転モードにおける自律運転を始める位置までの移動が考えられる。
 自律運転モードでは、手動操作によるロボット11の動作を事前に学習した結果に基づいて、ロボット11が自動的に動作する。本実施形態のロボットシステム1において、自律運転モードでは、ロボット11の動作が、後述の訓練データ選別装置2により選別された訓練データを機械学習することで構築された学習モデルを用いて制御される。
 ロボット11は、例えば、動作自由度が6である垂直型の多関節ロボットとして構成される。ロボット11は、台座に取り付けられたアーム部を備える。アーム部は、複数の関節を有する。各関節には、当該関節を中心にしてアーム部を駆動するための図略のアクチュエータ(例えば、電動モータ)が設けられている。アーム部の先端には、作業内容に応じたエンドエフェクタが取り付けられている。
 ロボット11のアーム部及びエンドエフェクタは、ロボット11を動作させるための動作指令に基づいて動作する。この動作指令は、例えば、直線状の速度の指令、角速度の指令、等を含む。
 ロボット11には、ロボット11の動作及び周囲環境等を検出するためのセンサが取り付けられている。本実施形態では、動作センサ11aと、力センサ11bと、カメラ11cと、がロボット11に取り付けられている。
 動作センサ11aは、例えば、エンコーダから構成され、ロボット11のアーム部の関節毎に設けられており、各関節の回転角度又は角速度を検出する。
 力センサ11bは、ロボット11の動作時に、ロボット11のアーム部の各関節、又はアーム部の先端に取り付けられたエンドエフェクタに掛かる力を検出する。力センサ11bは、力に代えて又は加えてモーメントを検出するように構成されても良い。
 カメラ11cは、作業対象であるワークの映像(ワークへの作業の進行状況)を検出する。ワークへの作業の進行状況を検出するために、カメラ11cに代えて又は加えて、音を検出する音センサ及び/又は振動を検出する振動センサが設けられても良い。また、ロボット11等に、レーザスキャンセンサ、赤外線スキャンセンサ等の距離情報を収集するセンサが設けられても良い。
 動作センサ11aが検出するデータは、ロボット11の動作を示す動作データであり、力センサ11b、及びカメラ11cが検出するデータは、ロボット11の周囲の環境の状態を示す周囲環境データである。当該周囲環境データは、いわゆる、センサがデータを検出する時刻におけるロボット11の作業の進行の状態を示す状態値である。動作センサ11a、力センサ11b、及びカメラ11cが検出するデータは、状態情報として、後述のデータ収集装置13により収集される。
 操作装置12は、ロボット11を動作させるために作業者に操作される部材である。操作装置12は、作業内容に応じて異なるが、例えば、作業者が手で作業するレバー又は足で操作するペダルである。操作装置12は、例えば、ロボット11とは物理的に離れた場所に配置された遠隔操作装置として構成される。
 操作装置12には、操作力検出センサ12aが設けられている。操作力検出センサ12aは、作業者が操作装置12に加えた力である操作力を検出する。操作装置12が様々な方向に動かすことができるように構成されている場合、操作力は力の向き及び大きさを含む値、例えばベクトルであっても良い。また、操作力は、作業者が加えた力だけでなく、力に連動する加速度等の値であっても良い。
 本実施形態において、操作力検出センサ12aによって検出された操作力は、例えば、図3に示すように、ロボット11の座標系におけるx軸における力及び速度の成分(力x及び速度x)と、y軸における力及び速度の成分(力y及び速度y)と、を含む。操作力検出センサ12aが検出した当該操作力に関するデータは、操作情報として、データ収集装置13により収集される。
 データ収集装置13は、例えば、公知のコンピュータにより構成されており、マイクロコントローラ、CPU、MPU、PLC、DSP、ASIC又はFPGA等の演算処理部と、ROM、RAM、HDD等のロボット記憶部と、外部装置と通信可能な通信部と、を備える。記憶部には、各種のデータを収集するデータ収集アプリケーション等が記憶されている。データ収集装置13は、ロボット制御装置10とは別途に設けられても良いし、ロボット制御装置10と一体的に構成されても良い。データ収集装置13とロボット制御装置10とが一体的に構成される場合、ロボット制御装置10は、当該ロボット制御装置10が備えるハードウェアとソフトウェアの協働により、データ収集装置13として機能する。
 データ収集装置13により収集される収集データは、上述のように、ロボット11の周囲環境データを示す状態情報と、ロボット11の周囲環境データに対応する作業者による操作力を反映する操作情報と、を含む。言い換えれば、この収集データは、作業者が操作装置12を連続的に操作して、ロボット11にある作業(又は作業の一部)を行わせる場合、得られた一連の状態情報及び操作情報の時系列データである。即ち、データ収集装置13は、状態情報のそれぞれと操作情報のそれぞれとを、時間に関連させて収集している。状態情報及び操作情報には、カメラ11c及び操作力検出センサ12a等で得られた検出値に基づく計測値が含まれる。
 学習装置3は、少なくとも1台の公知のコンピュータから構成される。学習装置3を構成するコンピュータは、例えばGPU、ROM、RAM、HDD等の構成を備えている。HDD等には、機械学習するためのアプリケーションが記憶されている。
 学習装置3は、機械学習(例えば教師あり学習)により、ロボットシステム1で用いられる学習モデルを構築する。学習装置3は、訓練データ選別装置2により、データ収集装置13で収集された収集データから選別された訓練データを機械学習して、学習モデルを構築する。
 この訓練データは、例えば、少なくともロボット11の作業状態を反映する周囲環境データ(即ち状態情報)と、当該周囲環境データに対応付けられた操作力(即ち操作情報)と、を含む。
 この学習モデルは、例えば、入力層と、隠れ層と、出力層と、を有する一般的な構成のニューラルネットワークである。それぞれの層には、脳細胞を模擬した複数のユニットが配置されている。隠れ層は、入力層と出力層との間に設けられ、適宜の数の中間ユニットによって構成される。学習装置3に入力されたセンサ情報(訓練データ)は、入力層、隠れ層、出力層の順に流れる。隠れ層の数は適宜定められる。なお、これに限定されず、学習モデルの形式は任意である。
 このモデルにおいては、入力層に入力されるデータは、上述の周囲環境データを反映するセンサ情報である。出力層が出力するデータは、操作力検出センサ12aの検出値の推定結果である。これは、実質的に、推定される作業者の操作力を意味する。従って、出力層が出力するデータは、モデルが推定した作業者の操作を示す。
 各入力ユニットと各中間ユニットとは、情報が流れる経路によって結合され、各中間ユニットと各出力ユニットとは、情報が流れる経路によって結合される。それぞれの経路において、上流側のユニットの情報が下流側のユニットの情報に与える影響(重み)が設定されている。
 モデルの学習フェーズにおいて、学習装置3は、モデルにセンサ情報を入力し、当該モデルから出力される操作力と、作業者による操作力と、を比較する。学習装置3は、この比較により求められる誤差が小さくなるように、例えば、公知のアルゴリズムである誤差逆伝播法によって、上記重みを更新することで、モデルを更新する。学習モデルはニューラルネットワークに限定されないので、モデルの更新も誤差逆伝播法に限定されない。例えば、公知のアルゴリズムであるSOM(Self-organizing maps)によって、モデルを更新することもできる。このような処理を継続的に行うことにより学習が実現される。
 学習装置3で訓練データを機械学習して構築された学習モデルは、例えば、ロボットシステム1のロボット制御装置10に実装され、ロボット11の自律運転等に用いられる。ロボット制御装置10に実装された学習モデルは、推論フェーズで動作し、入力された周囲環境データに対して、当該周囲環境データに対応する作業者の操作力を推定して出力する。
 続いて、本実施形態の訓練データ選別装置2、及び、訓練データ選別装置2による収集データからの訓練データの選別について、図2から図7等を参照して詳細に説明する。
 訓練データ選別装置2は、図1に示すように、データ評価モデル20と、データ評価部21と、記憶部22と、提示装置(評価提示部)23と、入力装置(指示受付部)24と、訓練データ選別部25と、を備える。
 訓練データ選別装置2は、例えば、マイクロコントローラ、CPU、MPU、PLC、DSP、ASIC又はFPGA等の演算処理部と、ROM、RAM、HDD等のメモリーと、外部装置と通信可能な通信部と、を備える公知のコンピュータを有する。
 当該コンピュータのHDD等は、訓練データ選別装置2の記憶部22を構成する。記憶部22には、演算処理部が実行するプログラム、後述の評価済データ等が記憶されている。上記ハードウェアとソフトウェアの協働により、コンピュータを、データ評価部21及び訓練データ選別部25として機能させることができる。記憶部22は、記憶工程に含まれる処理を行う。
 データ評価モデル20は、上述の学習モデルと同様な構成を有し、データ収集装置13により収集された収集データの少なくとも一部に対して機械学習することで構築される。しかし、これに限定されず、データ評価モデル20は、例えば、他のロボットシステム1の運転履歴データを機械学習することで構築されても良い。データ評価モデル20は、他のロボットシステム1の運転履歴データを機械学習することで構築される場合、他のロボットシステム1に含まれるロボット11が制御対象機械に相当する。
 データ評価モデル20が機械学習する収集データは、例えば、公知のNN法、K-Means法、自己組織化マップ等のクラスタリング手法を用いて、複数のグループに分類される。クラスタリングは、多数のデータから分布の法則を学習して、互いに特徴が似ているデータのまとまりである複数のクラスタを自動的に取得する手法である。収集データを幾つのクラスタに分類するかは、適宜定めることができる。収集データの分類は、クラスタリング以外の自動分類手法を用いて行っても良い。
 本実施形態においては、例えば、データ収集装置13により収集された一連の作業に関する収集データが、作業状態に対応する作業者の操作(基準操作)毎に分類される。具体的には、図2に示すように、ワーク100を凹部110に入れる一連の作業をロボット11に行わせる場合、例えば、空中、接触、挿入、及び完了の4つの作業状態に分類することができる。
 作業状態A(空中)は、ロボット11がワーク100を保持して凹部110の上部に位置させている状態である。作業状態B(接触)は、ロボット11が保持したワーク100を、凹部110が形成されている面に接触させている状態である。作業状態C(挿入)は、ロボット11が保持したワーク100を凹部110に挿入している状態である。作業状態D(完了)は、ロボット11が保持したワーク100が凹部110に完全に挿入された状態である。
 このように、4つの作業状態は、ロボット11による一連の作業を工程毎に分類したものであり、ロボット11の作業が正しく進行すると、作業状態A(空中)、作業状態B(接触)、作業状態C(挿入)、作業状態D(完了)の順で作業状態が遷移する。
 データ評価モデル20は、例えば、所定時間範囲毎における作業状態及び操作力の組合せを機械学習することにより構築される。なお、上記の作業状態A,B,C,Dは代表的なものであり、実際は、様々に異なる多数の作業状態が存在し得る。仮に、オペレータの操作によりロボット11に同じ作業を何回か行わせて、例えば、1組の状態情報及び操作力に対応する作業状態A1と、別の組の状態情報及び操作力に対応する作業状態A2と、更に別の組の状態情報及び操作力に対応する作業状態A3と、が収集されたとする。オペレータの操作のバラツキ、状況のバラツキ等があるため、これらの作業状態A1,A2,A3は、細かく言えば互いに異なる。しかし、作業状態A1,A2,A3は、共通の特徴を有しているため、同一のクラスタ(作業状態Aのクラスタ)に分類されることになる。
 しかし、これに限定されず、データ評価モデル20は、例えば、ある作業状態及び当該作業状態に対応付けられる次の作業状態(即ち、次に遷移する作業状態)と、少なくとも1組の状態情報及びこの状態情報に対応付けられる操作力と、を機械学習して構築されても良い。これにより、作業状態(ひいては対応する操作力)同士の順位関係も学習することができる。
 本実施形態のデータ評価モデル20は、上記のように、操作力の出力の時間順を反映するように機械学習を行っている。簡単に言えば、データ評価モデル20は、作業状態A、作業状態B、作業状態C、作業状態Dのそれぞれに対応する少なくとも1組の状態情報及び操作力の組合せを学習しているとともに、作業状態Aの次に作業状態Bが現れるというような作業順序も学習している。これにより、データ評価モデル20を用いて、操作力の時系列情報を反映した分類を行うことができる。即ち、それぞれの作業状態に対応付けられる操作力のそれぞれを作業順で反映することができる。
 この状態情報は、上述のように、動作センサ11a、力センサ11b、カメラ11cが検出したセンサ情報(例えば、位置、速度、力、モーメント、映像等の作業状態)である。この状態情報には、当該センサ情報に基づいて算出された情報(例えば、過去から現在までのセンサ情報の経時変化を示す値)が含まれても良い。
 上記のように構築されたデータ評価モデル20は、入力された時系列情報に対応付けられた状態情報に対して、当該状態情報に対応する基準操作を推定して出力することができる。
 本実施形態のデータ評価モデル20は、時系列情報に対応付けられた状態情報及び操作情報を含む収集データが入力された場合、入力された状態情報に対応する基準操作を推定して出力するとともに、入力された操作情報と推定した推定基準操作との間の距離値を求め、当該距離値(類似度)を評価値として出力する。なお、推定基準操作の代わりに、例えば基準操作が属するクラスタの情報を出力しても良い。また、出力した推定基準操作と入力された操作情報との比較は、データ評価モデル20の代わりにデータ評価部21にて行っても良い。
 データ評価部21は、上記のように事前に構築されたデータ評価モデル20を用いて、データ収集装置13により収集された収集データを評価するために用いられる。データ評価部21は、図3に示すように、それぞれの所定時間範囲における操作情報に対して評価を行う。具体的には、データ評価部21は、収集データに対して、データ評価モデル20により出力された評価値が所定閾値以上である場合、データ評価モデル20により出力された基準操作が属するクラスタの情報を示すラベル(対応情報)を、当該収集データに付与する。一方、データ評価モデル20により出力された評価値が所定閾値を下回る場合、データ評価部21は、当該収集データにラベルを付与しない。ただし、データ評価部21は、ラベルを付与しない代わりに、何れのクラスタにも属しない旨を示すラベルを付与しても良い。以下においては、ラベルが付与されているか否か、及び/又は付与されたラベルの種類等を、「ラベル情報」と称することがある。即ち、データ評価部21は、データ評価工程に含まれる処理を行う。
 例えば、図2に示す一連の作業に対して収集された一連の収集データを評価する場合、データ評価モデル20は、図3に示すように、所定時間範囲毎の操作情報に含まれる力x、力y、速度x、速度yに対して、それぞれの基準操作に含まれる当該成分の類似度を求めることによって、所定時間範囲毎の操作情報とそれぞれの基準操作との全体的な類似度を求めて、評価値として出力する。
 データ評価部21は、所定時間範囲毎の操作情報に対して、データ評価モデル20が出力した評価値が所定閾値以上である操作情報(ひいては収集データ)を対象として、当該操作情報が類似する基準操作を示すラベルを付与する。
 以下、具体的に説明する。図3に示すように、所定時間範囲の操作情報が、作業状態Aに対応する基準操作に類似する場合、データ評価部21は、当該操作情報分に数値(1)のラベルを割り当てる(付与する)。所定時間範囲の操作情報が、作業状態Bに対応する基準操作に類似する場合、データ評価部21は、当該操作情報分に数値(2)のラベルを割り当てる。所定時間範囲の操作情報が、作業状態Cに対応する基準操作に類似する場合、データ評価部21は、当該操作情報分に数値(3)のラベルを割り当てる。所定時間範囲の操作情報が、作業状態Dに対応する基準操作に類似する場合、当該操作情報分に数値(4)のラベルを割り当てる。以上により、操作情報(ひいては操作力検出センサ12aの検出値)における連続的な変化を、ラベル情報の変化として捉えることができる。
 なお、以下の説明においては、数値のラベルが割り当てられたデータを「暫定選択対象データ」と称し、数値のラベルが割り当てられていないデータを「暫定選択除外データ」と称することがある。データ評価部21により評価された収集データを「評価済データ」と称する。この評価済データには、暫定選択対象データ及び暫定選択除外データの一方又は両方を含む。
 このように、収集データに含まれた情報において、所定時間範囲毎にラベルが割り当てられる。割り当てられたラベルに応じて収集データの各部分をまとめることで、図3に示すように、収集データを、それぞれの基準操作に対応するブロックとして扱うことができる。これにより、一連の作業に対する収集データから、操作が有効な部分を示すデータ(ブロック)のみを抽出することが容易になる。
 即ち、評価済データにおいては、時系列情報が連続で、かつ、ラベル情報が同一である部分が、1つのまとまったブロックで扱われる。この結果、概括的にいえば、例えば図4及び図5等に示す一連の収集データのように、当該データ列を、数値によるラベルが割り当てられたブロック(範囲)と、数値によるラベルが割り当てられていないブロック(範囲)とが、その時系列情報に応じた順で並べられたものとして表すことができる。
 収集データは、時系列情報を維持した状態で評価される。従って、複数の基準操作に類似する操作情報を含む一連の作業の収集データを、当該一連の作業の所定作業順(例えば、図3に示す1(A)→2(B)→3(C)→4(D))を有するか否かに応じて容易に区別することができる。即ち、2つの収集データにおいて、それぞれが類似する複数の基準操作の組が同じであっても、操作情報に対応する作業順が異なる場合、当該2つの収集データを異なるクラスタとして扱うことができる。
 データ評価部21は、上記のように、ラベル情報が割り当てられた収集データ(数値のラベルが割り当てられていないデータ部分も含む)の操作情報を、提示装置23に送信する。この操作情報は、評価済の操作情報に相当する。
 図1に示す提示装置23は、液晶又は有機EL等のドットマトリクス式のディスプレイである。提示装置23は、データ評価部21により評価された評価済データ、及び当該収集データのラベル情報等を表示することで、データ評価部21の評価結果を作業者に提示する。提示装置23は、例えば、操作装置12の近傍に配置される。提示装置23は、映像信号、ロボットシステム1が行う作業に関する情報等を表示することもできる。
 具体的には、提示装置23は、例えば、図4に示すように、収集データに含まれた操作情報(例えば、操作力)をグラフにより表した形で視覚的に表示するとともに、時系列情報が連続しており、かつ、同じ数値のラベルが割り当てられたデータ部分を1つのブロックとして表示する。これにより、作業者がより直感的に操作情報を確認することができる。
 また、提示装置23は、数値のラベルが割り当てられていないデータ部分に「?」マークを付けて、当該データ部分を強調表示しても良い。図4では示されていないが、提示装置23において、異なる数値のラベル及び/又はそのラベルが割り当てられたデータ部分が、異なる色で表示されても良い。なお、提示装置23において、収集データに含まれる操作情報(例えば、操作力)が、基準操作の操作情報(例えば、操作力)と比較できるように、グラフ等の形で表示されても良い。
 入力装置24は、提示装置23で提示された評価済の操作情報を訓練データとして採用するか否かに関して、作業者の指示を受け付ける。入力装置24は、作業者によって操作可能な図略のキー、マウス、タッチパネル等から構成される。訓練データ選別装置2は、入力装置24への作業者の入力に応じて、訓練データとしての採否に関する情報を、例えばフラグ等の形で当該評価済の操作情報に付与する。作業者からの採否情報が付与された暫定選択対象データ又は暫定選択除外データは、選択済データとして記憶部22に記憶される。
 本実施形態の訓練データ選別装置2は、作業者が操作装置12を操作して、ロボット11に一連の作業を行わせた直後に、当該一連の作業の収集データに対する評価結果を直ちに提示装置23に表示させることができる。
 従って、本実施形態では、作業者は、直前に行った操作を機械学習の訓練データとして用いるか否かに関する採否を、操作した現場で、操作の感覚が自らの中に残っているうちに、入力装置24によって指示することができる。
 作業者が操作装置12を操作するときに、もっと強く/弱く操作すべきだった、もっと早い/遅いタイミングで操作を開始すべきだった等、自分の操作に納得ができない場合も生じ得る。この場合は、収集データを訓練データとして採用することを作業者が拒否し、納得するまで操作をやり直すことができる。このように、本実施形態では、データの収集と、訓練データとしての採否の決定と、からなるサイクルを、機動的かつ効率的に回していくことができる。従って、作業者が納得し易い訓練データを短期間で豊富に得ることができる。
 データ評価部21によるデータの評価は、機械学習によって構築が完了しているデータ評価モデル20を用いることで、データの収集後、短時間でかつ自動的に完了させることができる。従って、作業者は、上記のように採否をほぼリアルタイムで決定する場合でも、評価結果の提示を補助的に利用することができる。
 以上により、訓練データで用いる収集データを、作業者の意図どおりのものに限定することができる。言い換えれば、学習モデルの訓練フェーズのために収集データが提供される前に、不適切な収集データを除外することができる。早い段階での収集データの取捨選択により、好ましくない収集データを機械学習するケースを減らすことができる。この結果、意図どおりの出力が得られる学習モデルを構築できるまでの学習時間を短縮させることができる。
 なお、評価結果の提示及び採否の指示は、リアルタイムでかつその場で行われることに限定されない。訓練データ選別装置2は、例えば、所定期間内に行われた作業者の操作に対応する複数の収集データに対する評価結果を、とりまとめた形で作業者に別の場所で提示しても良い。
 本実施形態の訓練データ選別装置2においては、作業者が入力装置24を使用して、一連の作業に対して収集された収集データ(評価済データ)を、収集データ単位で選択して、訓練データとしての採否を指示することができる。ただし、作業者は、収集データの一部分のデータのみを選択して、訓練データとしての採否を指示することもできる。
 例えば、図5の上側には(a)~(e)の5つの操作情報が示されており、それぞれが評価済データに対応する。作業者は、図5の左下に示すように、5つの操作情報のうち操作情報(a)、(b)、及び(d)を選択して、訓練データとして採用するように指示することができる。
 図5に示す操作情報(b)、(d)においては、暫定選択除外データのブロックが含まれている。しかし、操作者の指示により、当該データを一連の作業に対する有効データとして選択することができる。
 あるいは、作業者は、図5の右下に示すように、各操作情報(a)~(e)に含まれるデータブロック(例えば、ある基準操作に対応する部分)を単位として選択し、訓練データとして採用するように指示することができる。
 例えば、図6に示すように、作業状態Bにおいて、ロボット11が保持したワーク100を、凹部110が形成されている面に接触させるとき、上記の面にワーク100の左下部が先に接触する場合と、右下部が先に先に接触する場合と、が考えられる。ワーク100の左下部及び右下部のうちどちらが先に上記の面に接触するかは、この作業状態Bに対しては何れでも良いが、センサにより検出された検出値から見るとそれぞれのデータになるので、データ評価モデル20において、異なる操作として取り扱われる可能性も小さくない。
 例えば、図5に示す操作情報(a)は、ワーク100の左下部が面に先に接触した場合であり、操作情報(c)は、ワーク100の右下部が面に先に接触した場合であるとする。この場合、データ評価部21の評価においては、例えば、操作情報(a)では該当のデータブロックに数値(2)のラベルを付与し、操作情報(c)では該当のデータブロックにラベルを付与しないことが考えられる。
 この点、本実施形態の訓練データ選別装置2は、作業者が入力装置24を操作することで、図5に示す操作情報(c)に含まれるラベルが付与されていないデータブロックを選択し、例えば、当該データブロックが数値(2)のラベルに相当する操作である旨を指示することができる。これにより、同じ作業状態において、有効操作となる収集データのバリエーションを、漏れなく訓練データ選別装置2に認識させることができる。例えば、図6に示す作業状態Bにおいては、凹部110が形成された面に対して異なる方向からワーク100が接触するそれぞれの場合の操作情報を、訓練データとして両方選択するように、作業者が訓練データ選別装置2に指示することができる。従って、訓練データ選別装置2により選別された訓練データのロバスト性を向上することができる。
 上記のように、本実施形態の訓練データ選別装置2は、大量の収集データに対して、機械的な評価情報(ラベル)を付加した状態で、作業者に選択されるように提示することができる。これにより、作業者が適切なデータを効率的に選択して、機械学習の訓練データとして用いることができる。
 次に、新しい操作を意味するラベルの割当てについて説明する。
 環境の変化等により、今までロボット11にさせることを意図していなかった動作を、新規に学習させるニーズがある場合も考えられる。この場合、オペレータは操作装置12を操作して、当該動作を含む一連の動作をロボット11に行わせる。このときの状態情報と操作情報が、データ収集装置13によって収集データとして取得される。以下では、収集データのうち新しい動作の部分が、図5に示す操作情報(c)において、ラベル(1)が付与された2つのブロックの間のデータブロックに相当する場合を考える。新しい動作であるので、このデータブロックには、データ評価部21によってラベルが付与されない。
 この操作情報(c)が提示装置23において提示されると、作業者は入力装置24を操作し、ラベルが付与されていない当該データブロックを選択して、新しい基準操作として学習させる旨を指示する。これにより、訓練データ選別装置2は、対応する暫定選択除外データに、暫定選択対象データで使用されていない数値(例えば5)のラベルを割り当てる。この結果、当該ブロックのデータに数値(5)のラベルが追加的に付与される。更に、作業者は、新しいラベルが付与されたデータブロックに対して、訓練データとして採用する旨を入力装置24によって指示することができる。
 なお、この場合において、学習モデルが訓練データを学習する場合、上記数値(2)のラベルが付与されたデータと、数値(5)のラベルが付与されたデータとを、同じ作業状態Bに対する操作情報として扱うことが可能である。
 具体的に説明すると、図2に示す一連の作業に対するある収集データ(ラベル順1→2→3→4)、及び、ある収集データ(ラベル順1→5→3→4)を考える。2つの収集データは、状態情報が類似し、作業順序も類似している。従って、学習モデルにおいて、当該数値(2)のラベルが付与されたデータと数値(5)のラベルが付与されたデータとの両方とも、作業状態Bに対応するクラスタに容易に分類することができる。
 訓練データ選別部25は、記憶部22で記憶された選択済データから、ロボットシステム1で用いられる学習モデルを構築するための訓練データを選別するために用いられる。訓練データは、目的に応じて様々に選別される。例えば、図2に示す一連の作業を学習モデルに学習させたい場合、訓練データ選別部25は、訓練データとして採用することが指示された選択済データから、数値(1)~(4)のラベルが割り当てられたデータを選別して、訓練データとして出力する。また、例えば、作業状態Cに対する基準操作に関して学習モデルに追加学習させたい場合、訓練データ選別部25は、訓練データとして採用することが指示された選択済データから、数値(3)のラベルが割り当てられたデータ部分のブロックを抽出して、訓練データとして出力する。
 即ち、図7に示すように、本実施形態の訓練データ選別装置2は、複数種類の作業に対する複数の収集データから、学習モデルに学習させたい訓練データのみを選別することができる。訓練データ選別部25は、上記のように、訓練データ選別工程に含まれる処理を行う。
 これにより、学習済データを構築するための訓練データを効率的に選別することができる。また、好ましくないデータが訓練データとして選別されることを回避できる。この結果、作業者が意図するように学習モデルが出力を行うまでの時間を短縮することができる。
 以上に説明したように、本実施形態の訓練データ選別装置2は、機械学習により学習モデルを構築するための訓練データを、データ収集装置により収集された収集データから選別する。訓練データ選別装置2は、データ評価モデル20と、データ評価部21と、記憶部22と、訓練データ選別部25と、を備える。データ評価モデル20は、収集データの少なくとも一部に対して機械学習することで、又は前記収集データとは異なるデータに対して機械学習することで、構築される。データ評価部21は、データ評価モデル20を用いて、入力された収集データを評価する。記憶部22は、データ評価部21により評価された収集データである評価済データを記憶する。訓練データ選別部25は、記憶部22により記憶された評価済データから、学習モデルを構築するための訓練データを、データ評価部21の評価結果が提示された作業者の指示により選別する。
 これにより、データ評価モデル20を用いて収集データから訓練データを選別することで、機械学習のために好ましいデータからなる訓練データを容易に準備することができる。これにより、学習モデルの構築時間を短縮することができる。
 また、本実施形態の訓練データ選別装置2は、提示装置23と、入力装置24と、を備える。提示装置23は、データ評価部21の評価結果を作業者に提示する。入力装置24は、評価済データを訓練データとして選別するか否かに関する作業者の指示を受け付ける。訓練データ選別部25は、入力装置24に入力された指示に基づいて、学習モデルを構築するための訓練データを選別する。
 これにより、人間(好ましくは、操作をした作業者自身)の指示に基づいて訓練データが選別されるので、訓練データを一層適切なデータの集まりにすることができる。また、データ評価モデル20による評価結果を参考にすることで、作業者は、収集データを訓練データとして使用すべきか否かを判断し易くなる。
 また、本実施形態の訓練データ選別装置2において、収集データは、ロボットシステム1に搭載された少なくとも何れかのセンサで検出された検出値に基づく計測値の時系列情報を含む。データ評価部21は、データ評価モデル20を用いて、検出値の時系列情報のうち一部の時間に相当する時系列情報である部分時系列情報毎に、収集データを評価する。
 これにより、収集データにおいて適宜の単位毎にデータが評価されるので、一連の操作を、基本的な操作が適宜の順序で並べられたものとして把握することが容易となる。この評価結果を用いることで、訓練データの選別がより的確になる。また、基本的な操作に相当する部分を訓練データの選別の単位とすることで、収集データを効率的に利用しながら機械学習を行うことができる。
 また、本実施形態の訓練データ選別装置2において、データ評価モデル20は、部分時系列情報が入力された場合に、作業者の操作を細分化したものである複数の基準操作のそれぞれに対応する評価値を出力するように構築される。データ評価部21は、部分時系列情報が入力された場合にデータ評価モデル20が複数の基準操作のそれぞれに関して出力した評価値のうち最も良い評価値が閾値よりも良い場合は、最も良い評価値の基準操作に当該部分時系列情報が対応していると評価したことを示すラベルを収集データに付与して、評価済データとして記憶部に記憶させる。
 これにより、データ評価部21により良い評価が与えられたデータを容易に区別することができる。
 また、本実施形態の訓練データ選別装置2において、評価済データは、評価結果としてのラベルが付された形で、評価済データの作業者による選別のために提示される。
 これにより、作業者は、データ評価部21により良い評価が与えられたデータを容易に確認することができる。
 また、本実施形態の訓練データ選別装置2において、評価済データは、評価結果としてのラベルが付与されている部分時系列情報の範囲毎に区別できるように、評価済データの作業者による選別のために提示される。
 これにより、作業者は、一連の操作を示す時系列情報のうちのどの部分が良い評価となっているかを容易に確認することができる。
 また、本実施形態の訓練データ選別装置2において、評価済データは、データ評価モデル20が複数の基準操作のそれぞれに関して出力した評価値のうち最も良い評価値が閾値よりも良くない範囲も併せて、評価済データの作業者による選別のために提示される。
 これにより、良い評価が与えられていない範囲についても、作業者により確認することができる。従って、例えば、作業者が自分の一連の操作のどの部分が良くなかったかを検証する手掛かりとすることができる。
 また、本実施形態の訓練データ選別装置2は、データ評価モデル20が複数の基準操作のそれぞれに関して出力した評価値のうち最も良い評価値が閾値よりも良くない範囲を、作業者が指定して、複数の基準操作に含まれない操作を示すラベルを付与することが可能に構成されている。
 これにより、新たな基準操作を導入して、訓練データを選別することができる。
 また、本実施形態の訓練データ選別装置2において、評価済データは、センサによる検出値又はそれに基づく情報をグラフにより表した形で、評価済データの作業者による選別のために視覚的に提示される。
 これにより、作業者が評価済データを確認し易くなる。
 また、本実施形態の訓練データ選別装置2において、訓練データ選別部25は、評価済データのうち、評価結果としてのラベルが付与されている部分時系列情報の範囲毎に、訓練データを選別可能である。
 これにより、評価済データの一部を訓練データとして容易に抽出して選別することができるので、収集データを効率的に利用しながら機械学習を行うことができる。
 以上に本発明の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。
 提示装置23は、視覚表示だけに限定されず、例えば、評価値の良否に応じて異なる効果音で示す聴覚提示や、操作装置12への振動等のフィードバックとしての力覚提示により、操作情報に対する評価を作業者に提示することもできる。
 作業者は、入力装置24を操作することにより、記憶部22に記憶された、データ評価部21により評価された収集データの履歴に対して、当該データのそれぞれの良否に関する指示情報を入力しても良い。
 前述の実施形態では、作業者が、データ評価部21が評価した結果の提示による支援を得て、評価済データを訓練データとして採用するか否かの判断を行っている。しかしながら、評価済データの訓練データとしての採否は、作業者に代えて、プログラム(人工知能を用いる場合を含む)により自動的に判断されても良い。この場合、作業者に提示する提示装置23、及び、作業者の指示を入力する入力装置24を省略することができる。
 学習装置3において、訓練データ選別装置2により選別された訓練データを機械学習することにより学習モデルを構築した後、この学習モデルを、データ評価モデル20として用いることができる。
 ロボット11は、産業用ロボットだけではなく、医療用ロボット等として構成されても良い。
 訓練データ選別装置2は、ロボットを制御するための学習モデルの構築のための訓練データだけではなく、乗物の自動操縦、プラントの自動運転のための学習モデルの構築のための訓練データを選別しても良い。
 データ収集装置13は、ロボットシステム1の代わりに、訓練データ選別装置2に備えられても良い。
 訓練データ選別装置2のデータ評価モデル20は、収集データを評価している。しかしながら、データ評価モデル20は、訓練データ選別装置2で選別された訓練データを機械学習することにより構築された学習モデルの出力を評価するために用いられても良い。
 例えばデータの収集時において、遠隔操作を行うオペレータに対し、ロボット11側が得た情報がリアルタイムで提示されても良い。このようにオペレータに提示される情報は、データ収集装置13によって収集される対象となり得る。
 オペレータへの情報の提示の一例として、データの収集時において、オペレータの操作装置12の操作に応じてロボット制御装置10がロボット11を駆動する一方、ロボット11が周囲から受けた反力を伝達するように、操作装置12を駆動することが考えられる。これにより相互作用的な操作が実現され、オペレータは、操作装置12を通じて疑似的に提示される力覚を感じながら、当該操作装置12を用いてロボット11をリアルタイムで遠隔操作することができる。
 オペレータへの情報の提示の他の例として、データの収集時において、オペレータの近傍に配置された適宜のディスプレイに、ロボットシステム1が備えるカメラ11cの映像がリアルタイムで表示されても良い。
 1 ロボットシステム(制御対象機械)
 2 訓練データ選別装置
 20 データ評価モデル
 21 データ評価部
 22 記憶部
 23 提示装置(評価提示部)
 24 入力装置(指示受付部)
 25 訓練データ選別部

Claims (13)

  1.  機械学習により学習モデルを構築するための訓練データを、データ収集装置により収集された収集データから選別する訓練データ選別装置であって、
     前記収集データの少なくとも一部に対して機械学習することで、又は前記収集データとは異なるデータに対して機械学習することで、構築されたデータ評価モデルと、
     前記データ評価モデルを用いて、入力された前記収集データを評価するデータ評価部と、
     前記データ評価部により評価された収集データである評価済データを記憶する記憶部と、
     前記記憶部により記憶された前記評価済データから、前記学習モデルを構築するための訓練データを、前記データ評価部の評価結果が提示された作業者の指示により、又は、当該評価結果に基づいて自動的に選別する訓練データ選別部と、
    を備えることを特徴とする訓練データ選別装置。
  2.  請求項1に記載の訓練データ選別装置であって、
     前記データ評価部の前記評価結果を作業者に提示する評価提示部と、
     前記評価済データを前記訓練データとして選別するか否かに関する作業者の指示を受け付ける指示受付部と、
    を備え、
     前記訓練データ選別部は、前記指示受付部に入力された指示に基づいて、前記学習モデルを構築するための訓練データを選別することを特徴とする訓練データ選別装置。
  3.  請求項1又は2に記載の訓練データ選別装置であって、
     前記収集データは、制御対象機械に搭載された少なくとも何れかのセンサで得られた検出値に基づく計測値の時系列情報を含み、
     前記データ評価部は、前記データ評価モデルを用いて、前記検出値の時系列情報のうち一部の時間に相当する時系列情報である部分時系列情報毎に、前記収集データを評価することを特徴とする訓練データ選別装置。
  4.  請求項3に記載の訓練データ選別装置であって、
     前記データ評価モデルは、前記部分時系列情報が入力された場合に、作業者の操作を細分化したものである複数の基準操作のそれぞれに対応する評価値を出力するように構築され、
     前記データ評価部は、前記部分時系列情報が入力された場合に前記データ評価モデルが複数の前記基準操作のそれぞれに関して出力した前記評価値のうち最も良い評価値が閾値よりも良い場合は、最も良い前記評価値の前記基準操作に当該部分時系列情報が対応していると評価したことを示す対応情報を前記収集データに付与して、前記評価済データとして前記記憶部に記憶させることを特徴とする訓練データ選別装置。
  5.  請求項4に記載の訓練データ選別装置であって、
     前記評価済データは、前記評価結果としての前記対応情報が付された形で、前記評価済データの作業者による選別のために提示され、又は、前記評価済データの自動的な選別のために用いられることを特徴とする訓練データ選別装置。
  6.  請求項5に記載の訓練データ選別装置であって、
     前記評価済データは、前記評価結果としての前記対応情報が付与されている前記部分時系列情報の範囲毎に区別できるように、前記評価済データの作業者による選別のために提示されることを特徴とする訓練データ選別装置。
  7.  請求項6に記載の訓練データ選別装置であって、
     前記評価済データは、前記データ評価モデルが複数の前記基準操作のそれぞれに関して出力した前記評価値のうち最も良い評価値が閾値よりも良くない前記範囲も併せて、前記評価済データの作業者による選別のために提示されることを特徴とする訓練データ選別装置。
  8.  請求項7に記載の訓練データ選別装置であって、
     前記データ評価モデルが複数の前記基準操作のそれぞれに関して出力した前記評価値のうち最も良い評価値が閾値よりも良くない範囲を、作業者が指定して、前記複数の基準操作に含まれない操作を示す対応情報を付与することが可能に構成されていることを特徴とする訓練データ選別装置。
  9.  請求項6から8までの何れか一項に記載の訓練データ選別装置であって、
     前記評価済データは、センサによる検出値又はそれに基づく情報をグラフにより表した形で、前記評価済データの作業者による選別のために視覚的に提示されることを特徴とする訓練データ選別装置。
  10.  請求項6から9までの何れか一項に記載の訓練データ選別装置であって、
     前記訓練データ選別部は、前記評価済データのうち、前記評価結果としての前記対応情報が付与されている前記部分時系列情報の範囲毎に、訓練データを選別可能であることを特徴とする訓練データ選別装置。
  11.  請求項1から10までの何れか一項に記載の訓練データ選別装置により選別された訓練データを用いて機械学習により構築された学習モデルと、
     前記学習モデルの出力に基づいて作業を行うロボットと、
    を備えることを特徴とするロボットシステム。
  12.  機械学習により学習モデルを構築するための訓練データを、データ収集装置により収集された収集データから選別する訓練データ選別方法であって、
     前記収集データの少なくとも一部に対して機械学習することで、又は前記収集データとは異なるデータに対して機械学習することで、構築されたデータ評価モデルを用いて、入力された前記収集データを評価するデータ評価工程と、
     前記データ評価工程で評価された収集データである評価済データを記憶する記憶工程と、
     前記記憶工程で記憶された前記評価済データから、前記学習モデルを構築するための訓練データを、前記データ評価工程における評価結果が提示された作業者の指示により、又は当該評価結果に基づいて自動的に選別する訓練データ選別工程と、
    を含む処理を行うことを特徴とする訓練データ選別方法。
  13.  請求項12に記載の訓練データ選別方法であって、
     前記データ評価工程では、前記訓練データ選別工程で選別された訓練データを機械学習させることにより構築された学習モデルによる操作を収集したデータを、評価することが可能であることを特徴とする訓練データ選別方法。
PCT/JP2020/048038 2019-12-27 2020-12-22 訓練データ選別装置、ロボットシステム及び訓練データ選別方法 WO2021132281A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP20904310.8A EP4082726A4 (en) 2019-12-27 2020-12-22 LEARNING DATA SELECTION DEVICE, ROBOT SYSTEM AND LEARNING DATA SELECTION METHOD
CN202080090021.0A CN115087521A (zh) 2019-12-27 2020-12-22 训练数据排序装置、机器人系统以及训练数据排序方法
US17/789,227 US20230045162A1 (en) 2019-12-27 2020-12-22 Training data screening device, robot system, and training data screening method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-238564 2019-12-27
JP2019238564A JP7460366B2 (ja) 2019-12-27 2019-12-27 訓練データ選別装置、ロボットシステム及び訓練データ選別方法

Publications (1)

Publication Number Publication Date
WO2021132281A1 true WO2021132281A1 (ja) 2021-07-01

Family

ID=76575946

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/048038 WO2021132281A1 (ja) 2019-12-27 2020-12-22 訓練データ選別装置、ロボットシステム及び訓練データ選別方法

Country Status (5)

Country Link
US (1) US20230045162A1 (ja)
EP (1) EP4082726A4 (ja)
JP (1) JP7460366B2 (ja)
CN (1) CN115087521A (ja)
WO (1) WO2021132281A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4332707A1 (en) * 2022-09-02 2024-03-06 Yokogawa Electric Corporation Apparatus, method and programme for processing information

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021149842A (ja) * 2020-03-23 2021-09-27 株式会社日立製作所 機械学習システム及び機械学習方法
JP2023038132A (ja) * 2021-09-06 2023-03-16 川崎重工業株式会社 学習済モデルの構築方法
US20230104775A1 (en) * 2021-10-04 2023-04-06 Hitachi, Ltd. Human robot collaboration for flexible and adaptive robot learning
WO2023188354A1 (ja) 2022-03-31 2023-10-05 富士通株式会社 モデル訓練方法,モデル訓練プログラムおよび情報処理装置
WO2024034338A1 (ja) * 2022-08-08 2024-02-15 Ntn株式会社 情報処理装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013030984A1 (ja) * 2011-08-31 2013-03-07 株式会社日立エンジニアリング・アンド・サービス 設備状態監視方法およびその装置
JP2018206286A (ja) 2017-06-09 2018-12-27 川崎重工業株式会社 動作予測システム及び動作予測方法
JP2019079157A (ja) * 2017-10-23 2019-05-23 株式会社日立製作所 制御システム及び方式
JP2019143387A (ja) * 2018-02-21 2019-08-29 清水建設株式会社 操作推定装置、及び操作推定方法
JP2019202404A (ja) * 2018-05-25 2019-11-28 川崎重工業株式会社 ロボットシステム及びロボット制御方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016189924A1 (ja) * 2015-05-28 2016-12-01 株式会社日立製作所 ロボット操作装置およびプログラム
US10913154B2 (en) * 2018-01-02 2021-02-09 General Electric Company Systems and method for robotic learning of industrial tasks based on human demonstration

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013030984A1 (ja) * 2011-08-31 2013-03-07 株式会社日立エンジニアリング・アンド・サービス 設備状態監視方法およびその装置
JP2018206286A (ja) 2017-06-09 2018-12-27 川崎重工業株式会社 動作予測システム及び動作予測方法
JP2019079157A (ja) * 2017-10-23 2019-05-23 株式会社日立製作所 制御システム及び方式
JP2019143387A (ja) * 2018-02-21 2019-08-29 清水建設株式会社 操作推定装置、及び操作推定方法
JP2019202404A (ja) * 2018-05-25 2019-11-28 川崎重工業株式会社 ロボットシステム及びロボット制御方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4082726A4

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4332707A1 (en) * 2022-09-02 2024-03-06 Yokogawa Electric Corporation Apparatus, method and programme for processing information

Also Published As

Publication number Publication date
US20230045162A1 (en) 2023-02-09
EP4082726A4 (en) 2024-02-14
JP2021107970A (ja) 2021-07-29
CN115087521A (zh) 2022-09-20
JP7460366B2 (ja) 2024-04-02
EP4082726A1 (en) 2022-11-02

Similar Documents

Publication Publication Date Title
WO2021132281A1 (ja) 訓練データ選別装置、ロボットシステム及び訓練データ選別方法
CN111194452B (zh) 动作预测系统及动作预测方法
US10706331B2 (en) Task execution system, task execution method, training apparatus, and training method
CN104858876B (zh) 机器人任务的可视调试
CN107127735A (zh) 人示范式具有力与位置目的任务的机器人学习
EP0978790A1 (en) Control system and method for controlling object using emotions and personality generated in the object
Westerberg et al. Virtual environment-based teleoperation of forestry machines: Designing future interaction methods
JP7128736B2 (ja) ロボット制御装置、ロボットシステム及びロボット制御方法
WO2011065034A1 (ja) ロボットの動作を制御する方法およびロボットシステム
CN113412178B (zh) 机器人控制装置、机器人系统以及机器人控制方法
JP6897037B2 (ja) 作業性評価装置
CN105082132A (zh) 力-扭矩任务的快速机器人模仿学习
EP3585569B1 (en) Systems, apparatus, and methods for robotic learning and execution of skills
CN110293560A (zh) 机器人行为训练、规划方法、装置、系统、存储介质及设备
Song et al. Skill learning for robotic assembly based on visual perspectives and force sensing
US20220032451A1 (en) Method for learning robot task and robot system using the same
JP6625266B1 (ja) ロボット制御装置
CN116394276B (zh) 一种样本生成、模型训练方法、装置及系统
CN109213306B (zh) 一种机器人远程控制平台及其设计方法
JP2020082314A (ja) 学習装置、ロボット制御装置、及びロボット制御システム
EP4401014A1 (en) Method for constructing trained model
Kavya et al. An arduino-based robotic arm with speech recognition
Nguyen Vision-based intelligent robots
JP2024028024A (ja) 強化学習補助装置、強化学習補助システム、及び強化学習補助方法
JP2023038781A (ja) ロボット教示システム、ロボット教示方法およびロボット教示用グローブ

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: 20904310

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020904310

Country of ref document: EP

Effective date: 20220727