WO2021241173A1 - 学習装置、学習方法及び学習プログラム、認識装置、認識方法及び認識プログラム並びに学習認識装置 - Google Patents

学習装置、学習方法及び学習プログラム、認識装置、認識方法及び認識プログラム並びに学習認識装置 Download PDF

Info

Publication number
WO2021241173A1
WO2021241173A1 PCT/JP2021/017619 JP2021017619W WO2021241173A1 WO 2021241173 A1 WO2021241173 A1 WO 2021241173A1 JP 2021017619 W JP2021017619 W JP 2021017619W WO 2021241173 A1 WO2021241173 A1 WO 2021241173A1
Authority
WO
WIPO (PCT)
Prior art keywords
label
inference
teacher
learning
data
Prior art date
Application number
PCT/JP2021/017619
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 JP2022527634A priority Critical patent/JPWO2021241173A1/ja
Publication of WO2021241173A1 publication Critical patent/WO2021241173A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Definitions

  • the present disclosure relates to a technique for training a neural network and a technique for recognizing by a neural network, and in particular, a learning technique when a plurality of teacher labels correspond to one teacher data and a plurality of teacher labels for one teacher data.
  • recognition technology in the corresponding case.
  • teacher data When training a neural network, it is common to use teacher data with a teacher label. For example, training is performed in advance using training data including image data (teacher data) such as a photograph of a car and the vehicle type (teacher label) of the car shown in the image data, and the learning results are used. Recognize labels from new photos.
  • image data teacher data
  • vehicle type teacher label
  • the learning device is a first supervised learning device that inputs a feature amount generated from input data having each data item of a conforming label and a non-conforming label and outputs a first estimation result.
  • the learning device causes the second teachered learner, which inputs the feature amount and outputs the second estimation result, to learn so that the second estimation result and the nonconforming label match.
  • the learning device causes the feature extractor that generates the feature amount from the input data to perform learning that promotes the recognition of the conforming label and suppresses the recognition of the non-conforming label.
  • Patent Document 2 it is an object to perform learning by learning data to which an exclusive label is given, and the learning device has one or a plurality of labels as elements for each of the data to be learned.
  • Set the label vector For example, the learning device generates a label vector based on the correlation between the labels to be set for each of the data to be learned. Then, the learning device trains the learning model including the neural network by using the data to be learned and the label vectors set for each of the data to be learned.
  • Patent Documents 1 and 2 disclose a learning technique in which a plurality of teacher labels are associated with one teacher data.
  • aspects of the present disclosure can be learned so as to solve such a problem and maintain a certain recognition performance even when the learning characteristics of each label are biased as described above. It is an object of the present invention to provide a learning device, a learning method and a learning program, and a recognition device, a recognition method and a recognition program capable of maintaining a certain recognition performance, and a learning recognition device.
  • one aspect of the present disclosure is a learning device for training a neural network, the acquisition means for acquiring teacher data and a plurality of corresponding teacher labels, and the teacher label for the teacher data.
  • the control means for controlling the neural network so as to calculate the inference error for each teacher and the inference error calculated for each teacher label are weighted for each teacher label based on the learning characteristics of the teacher label.
  • a correction means for calculating a correction inference error by correcting with a value is provided, and the control means repeatedly acts on the neural network so that the correction inference error for each teacher label becomes smaller.
  • another aspect of the present disclosure is a recognition device that acquires a plurality of labels from the data to be recognized by recognition performed using a neural network, and the acquisition means for acquiring the data and the data.
  • the control means for controlling the neural network so as to calculate the inference result for each of the labels, and a determination means for determining whether or not to output the inference result based on the inference threshold for each of the labels.
  • FIG. 10 It is a block diagram which shows the structure of the learning recognition apparatus 10 as an embodiment. It is a block diagram which shows the structure of a typical neural network 50.
  • A It is a schematic diagram which shows one neuron U of a neural network 50.
  • B A neuron setting table 490 including each neuron weighted value and a neuron threshold set in the neural network 50. It is a figure which shows typically the data propagation model at the time of the pre-learning (training) in a neural network 50. It is a figure which shows typically the data propagation model at the time of the practical reasoning in a neural network 50.
  • An example of a plurality of categories showing the characteristics of the image data 201 is shown.
  • An example of the image data for training stored in the training data DB 151 is shown.
  • the data structure of the training data table 230 stored in the training data DB 151 is shown.
  • the data structure of the frequency table 250 stored in the parameter DB 152 is shown.
  • the data structure of the difficulty table 260 stored in the parameter DB 152 is shown.
  • the data structure of the proficiency level table 270 stored in the parameter DB 152 is shown.
  • the data structure of the missing information table 290 stored in the parameter DB 152 is shown.
  • An example of the label weighted value LW calculated for each label in the category is shown.
  • An example of the inference threshold T calculated for each label in the category is shown. It is a block diagram which shows the structure of the training recognition processing unit 124 and the field recognition processing unit 125. It is a block diagram which shows the structure of the feature learning part 133.
  • the data structure of the inference result 280 is shown.
  • the process of multiplying the inference error d by the label weighted value LW to obtain the corrected inference error d' is shown.
  • the process of obtaining the inference error R'from the inference result R based on the inference threshold value is shown.
  • the final recognition result 440 as an example is shown. It is a flowchart which shows the operation in the training recognition processing unit 124. It is a flowchart which shows the operation in the field recognition processing unit 125.
  • the category pattern to be set for each inference object is shown.
  • the learning recognition device 10 includes a CPU (Central Processing Unit) 101, a ROM (Read Only Memory) 102, a RAM (Random access memory) 103, a storage unit 104, and a network communication circuit connected to the bus B1. It is composed of 111, a GPU (Graphics Processing Unit) 105, ROM 106, and RAM 107 connected to bus B2, and a GPU 108, ROM 109, and RAM 110 connected to bus B3. Bus B1 and bus B2 are connected to each other, and bus B1 and bus B3 are also connected to each other.
  • CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random access memory
  • a storage unit 104 a storage unit 104
  • a network communication circuit connected to the bus B1. It is composed of 111, a GPU (Graphics Processing Unit) 105, ROM 106, and RAM 107 connected to bus B2, and a GPU 108, ROM 109, and RAM 110 connected to bus B3.
  • Bus B1 and bus B2 are connected to
  • the RAM 103 is composed of a non-volatile semiconductor memory, and provides a work area when a program is executed by the CPU 101.
  • the ROM 102 stores a control program or the like, which is a computer program for executing processing in the learning recognition device 10.
  • the CPU 101 operates according to the control program stored in the ROM 102.
  • the CPU 101 uses the RAM 103 as a work area and operates according to the control program stored in the ROM 102, so that the CPU 101, the ROM 102, and the RAM 103 form the main control unit 121.
  • the main control unit 121 includes a general control unit 122, a parameter acquisition unit 123, and an inference result output unit 126.
  • the integrated control unit 122 comprehensively controls the entire learning recognition device 10.
  • the parameter acquisition unit 123 and the inference result output unit 126 will be described later.
  • the network communication circuit 111 is connected to an external information terminal via a network.
  • the network communication circuit 111 relays the transmission and reception of information to and from an external information terminal via the network.
  • the RAM 107 is composed of a non-volatile semiconductor memory and provides a work area for program execution by the GPU 105.
  • the ROM 106 stores a control program or the like, which is a computer program for executing the processing in the training recognition processing unit 124, which will be described later. A part of this control program constitutes a learning program.
  • the GPU 105 operates according to the control program stored in the ROM 106.
  • the GPU 105 operates according to the control program stored in the ROM 106 by using the RAM 107 as a work area, so that the GPU 105, the ROM 106 and the RAM 107 form a training recognition processing unit 124.
  • a neural network is incorporated in the training recognition processing unit 124.
  • the neural network incorporated in the training recognition processing unit 124 fulfills its function by operating the GPU 105 according to the control program stored in the ROM 106.
  • the RAM 110 is composed of a non-volatile semiconductor memory and provides a work area for program execution by the GPU 108.
  • the ROM 109 stores a control program or the like, which is a computer program for executing the processing in the field recognition processing unit 125, which will be described later. A part of this control program constitutes a recognition program.
  • the GPU 108 operates according to the control program stored in the ROM 109.
  • the GPU 108 operates according to the control program stored in the ROM 109 using the RAM 110 as a work area, so that the GPU 108, the ROM 109 and the RAM 110 form a physical recognition processing unit 125.
  • a neural network is incorporated in the field recognition processing unit 125.
  • the neural network incorporated in the field recognition processing unit 125 fulfills its function by operating the GPU 108 according to the control program stored in the ROM 109.
  • the storage unit 104 is composed of a hard disk.
  • the storage unit 104 may be composed of a non-volatile semiconductor memory.
  • the storage unit 104 has a training data DB 151, a parameter DB 152, a learning result DB 153, and an on-the-job data DB 154.
  • the training data DB 151, the parameter DB 152, the learning result DB 153, and the actual data DB 154 will be described later.
  • the main control unit 121, the storage unit 104, the training recognition processing unit 124, and the network communication circuit 111 constitute a learning device. Further, the main control unit 121, the storage unit 104, the field recognition processing unit 125, and the network communication circuit 111 constitute a recognition device.
  • 1.2 Typical Neural Network As an example of a typical neural network, the neural network 50 shown in FIG. 2 will be described.
  • the neural network 50 is a hierarchical neural network having an input layer 50a, a feature extraction layer 50b, and a recognition layer 50c.
  • the neural network is an information processing system that imitates a human neural network.
  • an engineering neuron model corresponding to a nerve cell is referred to here as a neuron U.
  • the input layer 50a, the feature extraction layer 50b, and the recognition layer 50c each have a plurality of neurons U.
  • the input layer 50a usually consists of one layer.
  • Each neuron U of the input layer 50a receives, for example, the pixel value of each pixel constituting one image.
  • the received image value is directly output from each neuron U of the input layer 50a to the feature extraction layer 50b.
  • the feature extraction layer 50b extracts features from the data (all pixel values constituting one image) received from the input layer 50a and outputs the features to the recognition layer 50c.
  • the feature extraction layer 50b extracts, for example, a region in which the vehicle is reflected from the received image by calculation in each neuron U.
  • the recognition layer 50c is identified using the features extracted by the feature extraction layer 50b.
  • the recognition layer 50c identifies labels such as the vehicle model, manufacturer name, and color of the vehicle from the area of the vehicle extracted by the feature extraction layer 50b, for example, by calculation in each neuron U.
  • the neuron U an element with multiple inputs and one output is usually used as shown in FIG. 3 (a).
  • This neuron weighted value represents the strength of the hierarchically aligned neuron U-neuron U connection.
  • the neuron weighted value can be changed by learning.
  • a value X obtained by subtracting the neuron threshold ⁇ U from the sum of each input value (SUwi ⁇ xi) multiplied by the neuron weighted value SUwi is output after being transformed by the response function f (X). .. That is, the output value y of the neuron U is expressed by the following mathematical formula.
  • a sigmoid function can be used as the response function.
  • Each neuron U in the input layer 50a usually does not have a sigmoid characteristic or a neuron threshold. Therefore, the input value appears in the output as it is.
  • each neuron U in the final layer (output layer) of the recognition layer 50c outputs the identification result (data corresponding to the identified label) in the recognition layer 50c.
  • the recognition layer 50c is used by the steepest descent method so that the square error between the value (data) indicating the correct answer and the output value (data) from the recognition layer 50c is minimized.
  • An error backpropagation method (backpropagation) is used in which the neuron weighted value and the like of the feature extraction layer 50b and the neuron weighted value of the feature extraction layer 50b are sequentially changed.
  • the training process is a process of pre-learning the neural network 50.
  • the neural network 50 is pre-learned using the image data with the correct answer (with supervised and annotation) obtained in advance.
  • FIG. 4 schematically shows a data propagation model during pre-learning.
  • the image data is input to the input layer 50a of the neural network 50 for each image, and is output from the input layer 50a to the feature extraction layer 50b.
  • an operation with a neuron weighted value is performed on the input data.
  • the feature extraction layer 50b extracts features (for example, a vehicle region) from the input data, and outputs the data indicating the extracted features to the recognition layer 50c (step S51).
  • each neuron U of the recognition layer 50c an operation with a neuron weighted value is performed on the input data (step S52). As a result, identification based on the above characteristics (for example, identification of vehicle type) is performed. The data indicating the identification result is output from the recognition layer 50c.
  • the output value (data) of the recognition layer 50c is compared with the value indicating the correct answer, and these errors (losses) are calculated (step S53).
  • the neuron weighted value of the recognition layer 50c and the neuron weighted value of the feature extraction layer 50b are sequentially changed so that this error becomes small (backpropagation) (step S54). As a result, the recognition layer 50c and the feature extraction layer 50b are trained.
  • FIG. 5 shows a data propagation model when actually recognizing (for example, recognizing the vehicle type of a vehicle) by using the data obtained in the field as an input using the neural network 50 learned by the above training process. There is.
  • step S55 feature extraction and recognition are performed using the learned feature extraction layer 50b and the learned recognition layer 50c.
  • FIG. 6 shows, as an example, image data 201 to be recognized, which is handled by the learning recognition device 10.
  • the image data 201 represents one image, and the image is composed of a plurality of pixels arranged in a matrix.
  • the image represented by the image data 201 includes a vehicle object and an object in the background thereof. The background object is not shown.
  • Labels recognized from the image data 201 are classified into categories 211, 212, 213, ..., 218 as shown in this figure.
  • Categories 211, 212, 213, ..., 218 are "vehicle type”, “manufacturer”, “color”, ..., “stable running”, respectively.
  • the labels 211a, 211b, 211c, 211d belong to the category 211 of the "vehicle type", and the labels 211a, 211b, 211c, 211d are "passenger car", “truck”, “bus”, and “motorcycle”, respectively. Is.
  • Labels 212a, 212b, 212c, and 212d belong to the category 212 of the "manufacturer", and the labels 212a, 212b, 212c, and 212d belong to "Company A”, “Company B”, “Company C”, and “Company C”, respectively. Company D ".
  • the image includes the object of the vehicle and is classified into the categories of FIG. 6, and the label of the figure belongs to each category.
  • the training data DB 151 holds the training data table 230 and a plurality of image data 221, 222, 223, ...
  • Image data 221, 222, 223, Besides The image data 221, 222, 223, ... are image data as training data (teacher data), respectively.
  • the image data 221, 222, 223, ... include, for example, a vehicle object and a background object, respectively.
  • the background object is not shown.
  • the image data 221 includes a passenger car object and the like
  • the image data 222 includes a truck object and the like
  • the image data 223 includes a passenger car object and the like
  • the image data 224 includes bus objects and the like.
  • the image data 221, 222, 223, ... are identified by the image data identifier, respectively.
  • the identifier of the image data 221 is "A001.jpg”
  • the identifier of the image data 222 is "A002.jpg”
  • the identifier of the image data 223 is "A003.jpg”.
  • the training data table 230 is a data table for showing preset training labels (teacher labels) for image data 221, 222, 223, ... Held in the training data DB 151.
  • the training data table 230 includes a plurality of training data 231.
  • Each training data 231 has a one-to-one correspondence with the image data held in the training data DB 151.
  • Each training data 231 includes an image data identifier 232 and training labels 233, 234, ..., 239.
  • the image data identifier 232 is an identifier that identifies the image data corresponding to the training data 231.
  • the training labels 233, 234, ..., 239 are labels for vehicle objects included in the image represented by the image data corresponding to the training data 231 respectively. Some training labels 233, 234, ..., 239 have no label (indicated by "-").
  • the training label 233 indicates a label for "vehicle type" which is one of the categories for vehicles.
  • the training label 233 which is a "vehicle type" includes, for example, "passenger car”, “truck”, “bus”, “motorcycle” and the like.
  • Training label 234 indicates a label for "manufacturer", which is one of the categories for vehicles.
  • the training label 234, which is a "manufacturer" includes, for example, "Company A”, “Company B”, “Company C”, “Company D” and the like.
  • the training label 235 indicates a label for the "color” of the vehicle body, which is one of the categories for vehicles.
  • the training label 235, which is the "color” includes, for example, “white”, “black”, “blue”, “red”, and the like.
  • Training label 236 indicates a label for "number of passengers", which is one of the categories for vehicles.
  • the training label 236, which is the "number of passengers", includes, for example, "one person” and “plurality of people”.
  • Training label 237 indicates a label for "loading capacity”, which is one of the categories for vehicles.
  • the training label 237, which is the “load amount”, includes, for example, “none”, “small load”, “large load”, and the like.
  • the training label 238 indicates a label for "distance between vehicles with other vehicles", which is one of the categories for vehicles.
  • the training label 238, which is the "distance between vehicles with other vehicles" includes, for example, “narrow tendency", “appropriate”, and the like.
  • Training label 239 indicates a label for "running speed”, which is one of the categories for vehicles.
  • the training label 239, which is "running speed” includes, for example, “too slow”, “within legal speed”, “too fast” and the like.
  • Parameter DB152 holds a frequency table 250, a difficulty table 260, a proficiency level table 270, and a missing information table 290.
  • Frequency table 250 is a data table for storing the frequency (retention number) of the training data held in the training data DB 151 for each category and label shown in FIG.
  • the frequency table 250 includes a plurality of frequency information 251.
  • Each frequency information 251 corresponds to the category shown in FIG. 6 and the label belonging to the category.
  • Each frequency information 251 includes category 252, label 253 and frequency 254.
  • Category 252 corresponds to one category shown in FIG.
  • Label 253 corresponds to one label belonging to category 252.
  • Frequency 254 is the frequency of appearance of the combination of category 252 and label 253 in the training data table 230.
  • the difficulty table 260 is a data table for storing the difficulty of the training data held in the training data DB 151 for each category and label shown in FIG.
  • the difficulty table 260 includes a plurality of difficulty information 261.
  • Each difficulty level information 261 corresponds to the category shown in FIG. 6 and the label belonging to that category.
  • Each difficulty information 261 includes category 262, label 263 and difficulty 264.
  • Category 262 corresponds to one category shown in FIG.
  • Label 263 corresponds to one label belonging to category 262.
  • Difficulty level 264 is the difficulty level of recognition for the combination of category 262 and label 263.
  • the category "vehicle type” can be recognized by the shape of the vehicle in the image, so it can be said that the difficulty level is generally low.
  • the difficulty level may be medium.
  • the category "color” can be recognized by the color of the vehicle in the image, so it can be said that the difficulty level is generally low.
  • the difficulty level is generally high for the label "Fluffy” in the category “Stable driving” because the flickering of the vehicle is recognized by the image. Further, the label “running in the lane” of the category “stable running” can be obtained by recognizing whether the vehicle is running in the lane from the image, so it can be said that the difficulty level is medium.
  • the difficulty level varies depending on the label.
  • the difficulty level is classified into three stages of “low”, “medium”, and “high”, and the difficulty level is set to "3" for each of "low”, “medium”, and “high”. It is set to "2" and "1".
  • the difficulty level 264 for each combination of the category 262 and the label 263 may be set by, for example, the user of the learning recognition device 10.
  • the proficiency level table 270 is a data table for storing the proficiency level of the training data held in the training data DB 151 for each category and label shown in FIG.
  • the proficiency level table 270 includes a plurality of proficiency level information 271.
  • Each proficiency level information 271 corresponds to the category shown in FIG. 6 and the label belonging to that category.
  • Each proficiency information 271 includes category 272, label 273 and proficiency level 274.
  • Category 272 corresponds to one category shown in FIG.
  • Label 273 corresponds to one label belonging to category 272.
  • the proficiency level 274 is the proficiency level of learning about the combination of the category 272 and the label 273.
  • the proficiency level varies depending on the label.
  • the proficiency level is classified into three stages of “low”, “medium”, and “high”, and the proficiency level is "1" for each of "low”, “medium”, and “high”. It is set to "2" and "3".
  • the proficiency level 274 for each combination of category 272 and label 273 may be set by, for example, the user of the learning recognition device 10.
  • Missing information table 290 Some of the image data stored in the training data DB 151 does not include an image for inferring any of the plurality of categories shown in FIG.
  • the image data held in the training data DB 151 includes image data for which it is impossible to infer that the image data is in any one of the plurality of categories shown in FIG. obtain.
  • the missing information table 290 is any of the plurality of categories shown in FIG. 6 among the image data held in the training data DB 151. Shows the uninferrable categories of data.
  • the missing information table 290 includes a plurality of missing information 291.
  • each missing information is in any one of the plurality of categories shown in FIG. 6 among the image data held in the training data DB 151. It corresponds to the data.
  • Each missing information 291 includes an image data identifier 292 and a plurality of categories 293, 294, 295, ....
  • the image data identifier 292 identifies the image data for which it is impossible to infer that it is one of the plurality of categories shown in FIG. 6 among the image data held in the training data DB 151. It is an identifier.
  • Each missing information 291 includes one or more categories.
  • the missing information table 290 contains missing information on a category-by-category basis. However, this is not limited to this.
  • the missing information table 290 may include missing information in label units within the category.
  • the missing information table 290 may include the label "fluttering" in the category "stable running".
  • each missing information in the missing information table 290 may be set by, for example, the user of the learning recognition device 10.
  • the image data 289 is image data to be recognized in the learning recognition device 10.
  • the learning result DB 153 holds a neuron setting table 490.
  • the neuron setting table 490 is composed of a plurality of neuron information 491.
  • Each neuron information 491 corresponds to each neuron U of the feature extraction unit 132 (FIG. 15) described later in the training recognition processing unit 124 and the label inference unit 134 (FIG. 16) of the feature learning unit 133 described later.
  • Each neuron information 491 includes a neuron number 492, a neuron weighted value 493, and a neuron threshold 494.
  • the neuron number 492 is a number that identifies each neuron U of the feature extraction unit 132 and the label inference unit 134.
  • the neuron weighted value 493 and the neuron threshold value 494 are the neuron weighted value and the neuron threshold value described in the above "1.2 Neural network", respectively.
  • Parameter acquisition unit 123 reads frequency information from the frequency table 250, reads difficulty information from the difficulty table 260, and proficiency information from the proficiency table 270 for each of all the labels in all the categories shown in FIG. Is read.
  • the parameter acquisition unit 123 reads the missing information (missing label) from the missing information table 290.
  • the parameter acquisition unit 123 (Calculation means) obtains a label weighted value LW for each label in each category using the read frequency information, difficulty level information, and proficiency level information, that is, based on the learning characteristics of the teacher label. calculate.
  • the parameter acquisition unit 123 may calculate a lower label weighted value LW if the frequency is high, and may calculate a higher label weighted value LW if the frequency is low. Further, the parameter acquisition unit 123 may calculate a lower label weighted value LW if the difficulty level is low, and may calculate a higher label weighted value LW if the difficulty level is high. Further, the parameter acquisition unit 123 may calculate a lower label weighted value LW if the proficiency level is high, and may calculate a higher label weighted value LW if the proficiency level is low.
  • the parameter acquisition unit 123 may calculate the label weighted value LW by the following formula.
  • Label weighted value LW G ( ⁇ ⁇ (frequency) + ⁇ ⁇ (difficulty) + ⁇ ⁇ (proficiency))
  • ⁇ , ⁇ , and ⁇ are coefficients set according to frequency, difficulty, and proficiency, respectively.
  • ⁇ , ⁇ and ⁇ are set so that 0 ⁇ label weighted value LW ⁇ 1.
  • FIG. 13 shows an example of the label weighted value LW calculated for each category and each label.
  • label weighted values LW311a, 312a, 313a, ..., 314a are calculated.
  • the parameter acquisition unit 123 may use only the frequency information, only the difficulty level information, or only the proficiency level information in the calculation of the label weighted value LW. Further, the parameter acquisition unit 123 may use any two combinations of frequency information, difficulty level information, and proficiency level information in calculating the label weighted value LW.
  • the parameter acquisition unit 123 outputs the label weighted value LW calculated for each category and each label to the feature learning unit 133, which will be described later, of the training recognition processing unit 124.
  • the parameter acquisition unit 123 uses the read frequency information, difficulty level information, and proficiency level information, that is, based on the learning characteristics of the teacher label, the inference threshold value T for each label in each category. Is calculated.
  • the parameter acquisition unit 123 may calculate a lower inference threshold T if the frequency is high, and may calculate a higher inference threshold T if the frequency is low. Further, the parameter acquisition unit 123 may calculate a lower inference threshold value T if the difficulty level is low, and may calculate a higher inference threshold value T if the difficulty level is high. Further, the parameter acquisition unit 123 may calculate a low inference threshold T if the proficiency level is high, and may calculate a higher inference threshold value T if the proficiency level is low.
  • the parameter acquisition unit 123 may calculate the inference threshold value T by the following equation.
  • Inference threshold T G ( ⁇ ⁇ (frequency) + ⁇ ⁇ (difficulty) + ⁇ ⁇ (proficiency))
  • FIG. 14 shows an example of the inference threshold T calculated for each category and each label.
  • the label 374 "two-wheeled vehicle” in the category 361 "vehicle type”. , ..., 374a is calculated.
  • the inference thresholds T391a, 392a, 393a, ..., 394a is calculated.
  • the inference threshold T may be different for each label in category 361. Further, the inference threshold T may be the same for all labels in the category. Further, within the same category, the inference threshold T may be the same for all labels, and the inference threshold T may be different for each category.
  • the parameter acquisition unit 123 outputs the inference threshold value T calculated for each category and each label to the inference unit 143 described later of the physical recognition processing unit 125.
  • the training recognition processing unit 124 includes a control unit 130, a training data input unit 131, a feature extraction unit 132, and a feature learning unit 133.
  • Training data input unit 131 The training data input unit 131 (acquisition means) corresponds to the input layer 50a of the neural network 50 shown in FIG.
  • the training data input unit 131 reads out one image data stored in the training data DB 151. Further, the training data corresponding to the read image data is read from the training data table 230.
  • the training data input unit 131 outputs the read image data to the feature extraction unit 132. Further, the training data input unit 131 outputs the read training data to the feature learning unit 133.
  • the feature extraction unit 132 corresponds to the feature extraction layer 50b of the neural network 50 shown in FIG.
  • the feature extraction unit 132 receives image data from the training data input unit 131.
  • the feature extraction unit 132 extracts features from the received image data. For example, the feature extraction unit 132 extracts an area in which the vehicle is reflected as an object from the image constituting the received image data.
  • the feature extraction unit 132 outputs the extracted features to the feature learning unit 133. For example, the feature extraction unit 132 outputs the area in which the vehicle is reflected to the feature learning unit 133.
  • the feature learning unit 133 includes a label inference unit 134, a weighted value assigning unit 135, and an inference error transfer unit 136.
  • the label inference unit 134 includes a function corresponding to the recognition layer 50c of the neural network 50 shown in FIG.
  • the label inference unit 134 receives, for example, a region in which the vehicle is reflected from the feature extraction unit 132. Upon receiving the area in which the vehicle is reflected, the label inference unit 134 calculates the appearance probability for all the categories and labels shown in FIG. 6 as the inference result from the area in which the vehicle is reflected.
  • FIG. 17 shows an inference result 280 as an example of the inference result generated by the label inference unit 134.
  • the inference result 280 includes a plurality of inference result information 281.
  • Each inference result information 281 corresponds to the category shown in FIG.
  • Each inference result information 281 includes category 282 and one or more label information 283.
  • category 282 is the category shown in FIG.
  • the label information 283 included in each inference result information 281 corresponds to a label belonging to one category shown in FIG.
  • Label information 283 includes label 284 and appearance probability 285.
  • Label 284 is a label belonging to one category, and appearance probability 285 is an appearance probability inferred for label 284.
  • the label inference unit 134 receives the training data from the training data input unit 131, and calculates the inference error d between the calculated appearance probability and the label included in the training data for all categories and labels.
  • the label inference unit 134 outputs the calculated inference error d to the weighted value giving unit 135.
  • Weighted value assigning unit 135 The weighted value giving unit 135 (correction means) receives the inference error d from the label inference unit 134. Further, the weighted value giving unit 135 receives the label weighted value LW from the parameter acquisition unit 123.
  • the weighted value assigning unit 135 multiplies the inference error d by the label weighted value LW to calculate the corrected inference error d'.
  • Corrected inference error d' inference error d x label weighted value LW
  • the weighted value assigning unit 135 corrects the inference error calculated for each teacher label with the label weighted value, and calculates the corrected inference error.
  • the parameter acquisition unit 123 calculates, for example, a lower label weighted value LW if the frequency is high, and a higher label weighted value LW if the frequency is low. Further, the parameter acquisition unit 123 calculates a lower label weighted value LW if the difficulty level is low, and calculates a higher label weighted value LW if the difficulty level is high. Further, the parameter acquisition unit 123 calculates a lower label weighted value LW if the proficiency level is high, and calculates a higher label weighted value LW if the proficiency level is low.
  • the weighted value assigning unit 135 calculates, for example, a smaller correction inference error if the frequency is high, and a larger correction inference error if the frequency is low. Therefore, when the frequency is high, the correction inference error converges by repeating the backpropagation a smaller number of times. On the other hand, when the frequency is low, the correction inference error converges by repeating the backpropagation a larger number of times. In this way, the learning degree in the neural network can be kept constant according to the frequency of the label, and as a result, the recognition performance can be kept constant.
  • the weighted value assigning unit 135 calculates, for example, a smaller correction inference error if the difficulty level is low, and a larger correction inference error if the difficulty level is high. Further, the weighted value giving unit 135 calculates, for example, a smaller correction inference error if the proficiency level is high, and a larger correction inference error if the proficiency level is low. In these cases as well, as in the case of the frequency of the label, the learning degree in the neural network can be kept constant according to the difficulty level or the proficiency level of the label, and as a result, the recognition performance can be kept constant.
  • the inference error d (351a) is multiplied by the label weighted value LW (351b) to obtain the corrected inference error d'(351c).
  • the inference error d is multiplied by the label weighted value LW, and the correction inference errors d'(352c), (353c), ... , (354c) is obtained.
  • the weighted value assigning unit 135 outputs the corrected inference error d'calculated for each category and each label to the inference error transfer unit 136.
  • (C) Inference error transfer unit 136 The inference error transfer unit 136 receives the correction inference error d'from the weighted value giving unit 135.
  • the inference error transfer unit 136 outputs the received correction inference error d'to the feature extraction unit 132 and the label inference unit 134.
  • the inference error transfer unit 136 repeats the output of the received correction inference error d'to the feature extraction unit 132 and the label inference unit 134 until the received correction inference error d'is smaller than the predetermined convergence threshold value.
  • (D) Repeating correction and inference of neuron weighted value, etc.
  • the inference error and the corrected inference error are calculated for each label, and for all the labels, until the corrected inference error becomes smaller than the predetermined convergence threshold value.
  • Neuron weights and neuron thresholds are corrected and inference is repeated.
  • the predetermined convergence threshold is a small value, preferably zero. That is, the neuron weighted value and the neuron threshold are corrected and the inference is repeated until the corrected inference error becomes zero. Further, in other words, the neuron weighted value and the neuron threshold are corrected so that the corrected inference error becomes smaller, and the inference is repeated.
  • the feature learning unit 133 compares the corrected inference error d'with the predetermined convergence threshold value for each label, and determines whether or not the corrected inference error d'is larger than the predetermined convergence threshold value.
  • the label inference unit 134 corrects the neuron weighted value and the neuron threshold.
  • the feature learning unit 133 repeats the process of inferring the label and assigning the label weighted value.
  • the feature learning unit 133 ends the process.
  • each of the eight categories has a plurality of labels, for a total of 40 labels.
  • learning is repeated so that the correction inference error d'is small in all 40 labels.
  • Control unit 130 (control means) uniformly controls the training data input unit 131, the feature extraction unit 132, and the feature learning unit 133. Further, the control unit 130 controls the training data input unit 131, the feature extraction unit 132, and the feature learning unit 133, respectively.
  • control unit 130 controls the feature learning unit 133, which is a part of the neural network, to calculate the inference error for each teacher label.
  • control unit 130 repeatedly acts on the neural network so that the correction inference error for each teacher label becomes smaller than the predetermined threshold value.
  • control unit 130 determines whether or not any one of the plurality of teacher labels matches the missing information (missing label) read from the missing information table 290. When it is determined that they match, the control unit 130 suppresses the repetitive action on the neural network.
  • the missing category includes “stable running”.
  • the category "vehicle type” and the category “manufacturer” are not included.
  • the inference error (corrected inference error) is calculated for each label, so the inference error is calculated for the four labels “passenger car”, “truck”, “bus”, and “two-wheeled vehicle” in the category “vehicle type”.
  • Inference errors are also calculated for the four labels "Company A”, “Company B”, “Company C” and “Company D” in the category "Manufacturer”.
  • the feature learning unit 133 will refer to these two labels. , Stop the propagation of inference error and do not propagate it.
  • a weighted value for missing processing can be added to each label. For example, if there are many labels "white” for the category "color” in the training data, for example, 10 of the plurality of image data showing the vehicle body whose vehicle color is "white". Of the image data, the propagation of the inference error may be stopped and not propagated for one image data.
  • the field recognition processing unit 125 includes a control unit 140, a field data input unit 141, a feature extraction unit 142, and an inference unit 143.
  • On-site data input unit 141 The physical data input unit 141 (acquisition means) corresponds to the input layer 50a of the neural network 50 shown in FIG.
  • the physical data input unit 141 reads out the image data 289 stored in the physical data DB 154.
  • the physical data input unit 141 outputs the read image data 289 to the feature extraction unit 142.
  • the feature extraction unit 142 corresponds to the feature extraction layer 50b of the neural network 50 shown in FIG. Prior to feature extraction, the feature extraction unit 142 acquires a neuron weighted value and a neuron threshold value corresponding to the feature extraction unit 142 from the neuron setting table 490 held in the learning result DB 153, and obtains the acquired neuron weighted value and the acquired neuron weighted value and the neuron threshold value. Set the neuron threshold internally.
  • the feature extraction unit 142 receives image data from the actual data input unit 141.
  • the feature extraction unit 142 extracts features from the received image data. For example, the feature extraction unit 142 extracts a region in which a vehicle is reflected as an object from the image constituting the received image data.
  • the feature extraction unit 142 outputs the extracted features to the inference unit 143. For example, the feature extraction unit 142 outputs the area in which the vehicle is reflected to the inference unit 143.
  • the inference unit 143 includes a label inference unit 144, an inference result adjustment unit 145, and an inference result transfer unit 146.
  • the label inference unit 144 includes a function corresponding to the recognition layer 50c of the neural network 50 shown in FIG.
  • the label inference unit 144 Prior to the label inference, acquires the neuron weighted value and the neuron threshold value corresponding to the label inference unit 144 from the neuron setting table 490 held in the learning result DB 153, and the acquired neuron weighted value and the acquired neuron weighted value and the neuron threshold value are acquired. Set the neuron threshold internally.
  • the label inference unit 144 receives, for example, an area in which the vehicle is reflected from the feature extraction unit 142. Upon receiving the area in which the vehicle is reflected, the label inference unit 144 calculates the appearance probability for all categories and labels as the inference result R from the area in which the vehicle is reflected.
  • the inference result R includes the appearance probabilities 402a, 403a, 404a, ... For all the labels 402, 403, 404, ... In the category 401, respectively, and is in the category 411. For all labels 412, 413, 414, ..., Each includes appearance probabilities 412a, 413a, 414a, ..., Appearance probabilities for all labels 422, ... In category 421. 422a, ... Included.
  • the label inference unit 144 outputs the inference result R to the inference result adjustment unit 145.
  • (B) Inference result adjustment unit 145 receives the inference result R from the label inference unit 144. Further, the inference result adjustment unit 145 receives the inference threshold value T from the parameter acquisition unit 123 for all the labels in all the categories.
  • the inference result adjustment unit 145 (judgment means) compares the appearance probability in the inference result R with the inference threshold value T for each label in each category.
  • the inference result adjustment unit 145 rejects this appearance probability. For example, in FIG. 20, for the label 402 of the category 401, the appearance probability 402a is smaller than the inference threshold Ta405, so it is rejected. Further, for the label 404 of the category 401, the appearance probability 404a is smaller than the inference threshold Tb415, so it is rejected.
  • the inference result adjustment unit 145 adopts this appearance probability.
  • the appearance probability 403a is larger than the inference threshold Ta405, and is therefore adopted.
  • the parameter acquisition unit 123 calculates, for example, a lower inference threshold T if the label frequency is high, and a higher inference threshold T if the label frequency is low. Therefore, for labels with high frequency, the probability of appearance is likely to be adopted even when compared with the lower calculated inference threshold. On the other hand, for labels that are less frequent, the probability of appearance is more likely to be rejected when compared to the lower calculated inference threshold.
  • the parameter acquisition unit 123 calculates a lower inference threshold value T if the difficulty level is low, and calculates a higher inference threshold value T if the difficulty level is high. Further, the parameter acquisition unit 123 calculates a low inference threshold T if the proficiency level is high, and calculates a higher inference threshold value T if the proficiency level is low. In these cases, the frequency is the same.
  • the inference result adjustment unit 145 determines the appearance probability to be adopted and the appearance probability to be rejected for each category, and adopts the label corresponding to the appearance probability to be adopted.
  • the inference result adjustment unit 145 rejects all the appearance probabilities in a category, it determines that the category is unrecognizable. For example, in FIG. 20, for all labels of category 411, the appearance probabilities 412a, 413a, 414a, ... Are rejected because they are smaller than the inference threshold Tb415.
  • the inference result adjustment unit 145 adopts the highest appearance probability when there are a plurality of appearance probabilities to be adopted for each category, and rejects the other appearance probabilities. In this way, the inference result adjustment unit 145 adopts the label corresponding to the highest appearance probability.
  • the inference result adjustment unit 145 determines one label for each of all categories, or determines that the category is unrecognizable. For example, in FIG. 20, the appearance probability 403a is adopted for the label 403 of the category 401. Further, the category 411 is determined to be unrecognizable (label unknown) 416. Further, the appearance probability 422a is adopted for the label 422 of the category 421.
  • the inference result adjustment unit 145 generates an inference result R'including one determined label for each of all categories or information indicating unrecognizable for the category.
  • FIG. 21 shows the final recognition result 440 (inference result R') generated by the inference result adjustment unit 145.
  • the final recognition result 440 includes a plurality of recognition information 441s, and each recognition information 441 is composed of a category 442 and a label 443.
  • the plurality of categories included in the plurality of recognition information 441s correspond to the plurality of categories shown in FIG. 6, respectively. Further, the plurality of labels included in the plurality of recognition information 441s each include information 444 that matches the label in each category shown in FIG. 6 or indicates unknown (unrecognizable).
  • the inference result adjustment unit 145 outputs the inference result R'generated in this way to the inference result transfer unit 146.
  • (C) Inference result transfer unit 146 receives the inference result R'from the inference result adjustment unit 145. Upon receiving the inference result R', the inference result transfer unit 146 outputs the received inference result R'to the inference result output unit 126.
  • the inference result output unit 126 receives the inference result R'from the inference result transfer unit 146. Upon receiving the inference result R', the inference result output unit 126 transmits the received inference result R'to an external information terminal via the network communication circuit 111.
  • Control unit 140 (control means) uniformly controls the actual data input unit 141, the feature extraction unit 142, and the inference unit 143. Further, the control unit 140 controls the actual data input unit 141, the feature extraction unit 142, and the inference unit 143, respectively.
  • control unit 140 controls the neural network so as to calculate the inference result for each label for the image data read by the actual data input unit 141.
  • the flowchart explains the procedure along the time series, but due to the nature of the neural network, the procedure of the flowchart shown below may not necessarily be the procedure along the time series.
  • the procedure of the flowchart shown below may not necessarily be the procedure along the time series.
  • the control unit 140 repeats steps S102 to S113 for each image data held in the training data DB 151 (steps S101 to S114).
  • the training data input unit 131 reads one image data from the training data DB 151 (step S102).
  • the feature extraction unit 132 extracts features from the image data (step S103).
  • the feature learning unit 133 repeats steps S105 to S111 for each training label included in the training data corresponding to the image data in the training data table 230 (steps S104 to S113).
  • the label inference unit 134 infers the label (step S105).
  • the label inference unit 134 calculates the inference error d (step S106).
  • the parameter acquisition unit 123 calculates the label weighted value LW for each training label (step S107).
  • the weighted value assigning unit 135 multiplies the inference error d by the label weighted value LW to calculate the corrected inference error d'.
  • Corrected inference error d' inference error d x label weighted value LW (step S108)
  • the feature learning unit 133 refers to the missing information table 290 (step S109) and determines whether or not the label is missing information (step S110). When it is determined that the information is missing (“YES” in step S110), the feature learning unit 133 transfers control to step S113.
  • the feature learning unit 133 compares the corrected inference error d'with the predetermined convergence threshold value, and the corrected inference error d'is the predetermined convergence threshold value. It is determined whether or not it is larger (step S111).
  • the label inference unit 134 corrects the neuron weighted value and the neuron threshold value (step S112).
  • the feature learning unit 133 transfers control to step S105 and repeats the process.
  • the feature learning unit 133 transfers control to step S113.
  • the inference error and the corrected inference error are calculated for each label, and for all the labels, the neuron weighted value and the neuron threshold are corrected so that the corrected inference error is smaller than the predetermined convergence threshold, and the inference is repeated. Is done.
  • the actual data input unit 141 reads out the image data 289 stored in the actual data DB 154.
  • the feature extraction unit 142 extracts a feature amount from the read image data (step S131).
  • the control unit 140 repeats steps S133 to S140 for each category for all the categories shown in FIG. 6 (steps S132 to S141).
  • the label inference unit 144 infers the label in the category (step S133).
  • the inference unit 143 repeats steps S135 to S138 for each label (steps S134 to S139).
  • the parameter acquisition unit 123 calculates the inference threshold T (step S135).
  • the inference result adjustment unit 145 compares the appearance probability in the inference result R with the inference threshold value T for each label in each category (step S136).
  • the inference result adjustment unit 145 adopts the appearance probability of the inference result as the label of the category (step). S137).
  • the inference result adjustment unit 145 rejects the appearance probability of the inference result (step S138).
  • the inference result adjustment unit 145 determines one label for one category or determines that the category is unrecognizable (step S140).
  • the inference result output unit 126 outputs the inference result R'(step S142).
  • the object of reasoning in the learning recognition device 10 is not limited to the "vehicle" in the image. As shown in FIG. 24, it may be, for example, "food”, “industrial product”, “plant”, “marine product”, “animal”, “human” or the like.
  • labels for "food” can be classified into categories such as “type”, “color”, “size”, “quality level”, and “freshness”.
  • Labels for "industrial products” can be classified into categories such as “type”, “color”, “shape”, “presence or absence of scratches", and “stage of production process”.
  • labels for "plants”, “marine products”, “animals”, “humans” and the like can be classified into the categories shown in FIG. 24.
  • learning and recognition in the learning recognition device 10 can be performed on these objects as well.
  • the field recognition processing unit 125 it is possible to maintain a certain recognition performance even when the learning characteristics of each label are biased.
  • the learning recognition device 10 is composed of one device including a training recognition processing unit 124 and a field recognition processing unit 125.
  • One aspect of the present disclosure is not a single learning recognition device 10, but a learning recognition system including a learning device including a training recognition processing unit 124 and a recognition device including a field recognition processing unit 125. good.
  • the learning device and the recognition device are connected via a network.
  • the learning device is composed of a CPU 101, a ROM 102, a RAM 103, a storage unit 104 and a network communication circuit 111 connected to the bus B1 shown in FIG. 1, and a GPU 105, a ROM 106, and a RAM 107 connected to the bus B2. ing. Bus B1 and bus B2 are connected to each other.
  • the recognition device includes a CPU 101, a ROM 102, a RAM 103, a storage unit 104, and a network communication circuit 111 connected to the bus B1 shown in FIG. 1, and a GPU 108, a ROM 109, and a RAM 110 connected to the bus B3.
  • Bus B1 and bus B3 are connected to each other.
  • the learning device transmits the contents of the learning result DB to the recognition device via the network.
  • the recognition device receives the contents of the learning result DB, and makes the actual recognition processing unit learn according to the received contents.
  • the target of learning and recognition in the learning recognition device 10 of the above embodiment is image data.
  • the target of learning and recognition in the learning recognition device 10 may be voice data.
  • the example of the category may be "music", “human voice”, “natural sound” and the like.
  • Examples of labels for the category “music” are “classical music”, “ethnic music”, “pops”, “Latin music”, etc.
  • Examples of labels for the category “human voice” are “news voice”, “lecture voice”, “conversation voice” and the like.
  • Examples of labels for the category “sounds of nature” are “sounds of birds”, “sounds of wind”, “sounds of river flow” and the like.
  • the voice data may be a nursing care record, a nursing record, or the like.
  • the voice data consists, for example, the voice of the patient talking about his or her symptoms.
  • a specific example of audio data is "I have a runny nose and cough since the morning, and I have a good appetite, but I have no stool. I have not measured the temperature, but I do not think I have a fever.” ..
  • the categories "symptom”, “appetite”, “excretion”, etc. are inferred from the voice data. Examples of labels for the category “symptoms” are “fever", “cough", "throat pain” and the like. Examples of labels for the category “appetite” are “yes”, “medium”, “no”, etc. Examples of labels for the category “excretion” are “yes”, “medium”, “no”, etc.
  • the target of learning and recognition in the learning recognition device 10 may be character data in natural language processing.
  • the example of the category may be "conversation", “literature”, “newspaper”, “thesis” and the like.
  • labels for the category “conversation” are "Japanese”, “English”, “Italian” and the like.
  • Examples of labels for the category “literature” are “modern Japanese literature”, “modern Japanese literature”, “medieval Japanese literature”, “ Egyptian Japanese literature” and the like.
  • Examples of labels for the category “newspaper” are “political news", “economic news”, “scientific news” and the like.
  • the character data may be character data such as a long-term care record and a nursing record.
  • the textual data is, for example, a textual record of a patient's symptoms by a nurse.
  • a specific example of the text data is "I have a runny nose and cough from the morning. I have a good appetite. I have no stool. I have not measured the temperature, but I have no fever.”
  • the categories "symptom”, “appetite”, “excretion”, etc. are inferred from the character data. Examples of labels for each category are as described above.
  • the parameter acquisition unit 123 uses the frequency information, the difficulty level information, and the proficiency level information, that is, based on the learning characteristics of the teacher label, the label weighting is performed for each label in each category. The value is being calculated.
  • a person may determine a label weighting value for each label in each category.
  • an information processing device (specifically, a personal computer or the like) accepts input of a label weighted value for each label in each category from the user.
  • the information processing device transmits the label weighted value that has received the input to the learning recognition device 10.
  • the parameter acquisition unit 123 of the learning recognition device 10 receives the label weighted value and outputs the received label weighted value to the weighted value assigning unit 135 of the feature learning unit 133.
  • the parameter acquisition unit 123 uses the frequency information, the difficulty level information, and the proficiency level information, that is, based on the learning characteristics of the teacher label, the inference threshold value for each label in each category. Is calculated.
  • the frequency information, the difficulty level information, and the proficiency level information may be used by a person to determine an inference threshold for each label in each category.
  • an information processing device specifically, a personal computer or the like
  • the information processing device transmits the inference threshold value that has received the input to the learning recognition device 10.
  • the parameter acquisition unit 123 (threshold value acquisition means) of the learning recognition device 10 receives (acquires) the inference threshold value and outputs the received inference threshold value to the inference unit 143 of the physical recognition processing unit 125.
  • the inference threshold value may be set manually not only in the form calculated based on the learning characteristics but also manually based on the information in advance as described above, and the parameter acquisition unit 123 (threshold value acquisition means). ) May be set by dynamically generating (calculating) an inference threshold value based on some fluctuating external factor as shown below.
  • a plurality of cameras are installed in a public facility such as a baseball field.
  • Each of the plurality of cameras photographs the ground, spectator seats, the entrance of the baseball stadium, the surroundings of the baseball stadium, and the like, and obtains image data representing an image (still image or moving image).
  • the large number of image data thus obtained is stored in the actual data DB 154 of the learning recognition device 10.
  • the field recognition processing unit 125 of the learning recognition device 10 performs recognition processing on a large number of image data stored in the field data DB 154.
  • Public facilities are not limited to baseball stadiums. It may be applied in a stadium where other sports are performed, a theater where a play is performed, a movie theater where a movie is shown, and the like.
  • the field recognition processing unit 125 uses, for example, a large number of image data stored in the field data DB 154, and the image of the audience reflected in the image data, as shown in FIG. , "Age group distribution", “relationship”, etc., and also recognize labels for each category.
  • the parameter acquisition unit 123 may dynamically generate the inference threshold value as follows, for example.
  • the parameter acquisition unit 123 generates an inference threshold value using the tuning information transmitted from a specific camera. Specifically, among multiple cameras, the image data obtained from the camera (specific camera) installed near the entrance, which accurately captures the face of the spectator entering the baseball stadium, is used for each person. The age of the audience is recognized, and the frequency is totaled for each age group (that is, teens, 20s, 30s, etc.). The parameter acquisition unit 123 may generate an inference threshold for each age group (that is, for each label) according to the frequency of aggregation in this way.
  • the parameter acquisition unit 123 may generate an inference threshold using the tuning information obtained by changing. For example, the parameter acquisition unit 123 may generate an inference threshold value for color determination based on light / dark information according to the weather, season, time (label), and the like.
  • the parameter acquisition unit 123 may generate an inference threshold value by using tuning information such as the number of visitors to the baseball stadium and the degree of congestion in the spectator seats of the baseball stadium. As an example, the parameter acquisition unit 123 determines that a large number of occlusions occur (labels) when the spectator seats in the baseball stadium are crowded, and the spectators seated in the lower part of the spectator seats in the image. The lower body of the spectator seated in the upper tier is hidden by the upper body, the backrest of the seat, etc., and it may be judged that it is not good to recognize the image of the lower body of the spectator in the upper tier, and an inference threshold may be generated. ..
  • the training recognition processing unit 124 of the learning recognition device 10 carries out on-site learning based on the image data obtained from the camera installed in the baseball field, and provides the tuning information to be fed back by the obtained on-site learning.
  • the parameter acquisition unit 123 may be used to generate an inference threshold. That is, the inference threshold may be generated from the recognition performance that depends on the site.
  • the training recognition processing unit 124 has image data obtained from a camera (specific camera) installed near the entrance, which accurately captures the face of an spectator entering a baseball stadium among a plurality of cameras. To recognize and learn the age and gender of each spectator using.
  • the parameter acquisition unit 123 determines the inference threshold for each label for the category "audience relationship" (the label is "family", “couple”, “friend”, “work relationship”) according to the learning result. May be generated.
  • the field recognition processing unit 125 recognizes the "audience relationship" according to the generated inference threshold value using the image data obtained from the camera that captures the audience seats.
  • the inference error and the corrected inference error are calculated for each label, the neuron weighted value and the neuron threshold value are corrected for all the labels until the corrected inference error becomes zero, and the inference is repeated. Is done.
  • the inference may be stopped when the predetermined number of repetitions is reached. Further, when the corrected inference error reaches a predetermined convergence threshold value, the repetition of inference may be stopped.
  • One aspect of the present disclosure is a learning device that causes a neural network to learn, and is an acquisition means for acquiring teacher data and a plurality of corresponding teacher labels, and an inference error for each teacher label for the teacher data.
  • the control means for controlling the neural network and the reasoning error calculated for each teacher label are corrected for each teacher label by a weighted value set based on the learning characteristics of the teacher label.
  • the control means repeatedly acts on the neural network so that the correction inference error for each teacher label becomes smaller.
  • each teacher label may be provided with a calculation means for calculating the weighted value based on the learning characteristics of the teacher label.
  • the learning device learning is performed on a plurality of teacher data, a plurality of teacher labels are associated with each of the plurality of teacher data, and the acquisition means is further applied to each teacher label.
  • the frequency information indicating the appearance frequency may be acquired, and the calculation means may calculate the weighted value based on the acquired frequency information.
  • the acquisition means further acquires difficulty level information indicating the difficulty level for each teacher label
  • the calculation means has acquired.
  • the weighted value may be calculated based on the difficulty level information.
  • the proficiency level in the neural network is different for each of the plurality of teacher labels, and the acquisition means further acquires proficiency level information indicating the proficiency level for each teacher label, and the calculation means is used.
  • the weighted value may be calculated based on the acquired proficiency level information.
  • a plurality of categories are set in the teacher data, and some teacher labels among the plurality of teacher labels may belong to one category among the plurality of categories.
  • the acquisition means further acquires a missing label that cannot be recognized from the teacher data in the neural network
  • the control means further obtains the missing label by any one of the plurality of teacher labels. If it is determined whether or not they match, and if it is determined that they match, the repetitive action of the missing label on the neural network may be suppressed.
  • another aspect of the present disclosure is a learning method used in a learning device for training a neural network, wherein the acquisition step of acquiring teacher data and a plurality of corresponding teacher labels and the teacher data are described above.
  • the control step for controlling the neural network so as to calculate the inference error for each teacher label and the inference error calculated for each teacher label are set for each teacher label based on the learning characteristics of the teacher label.
  • the control step includes a correction step of correcting with a weighted value to calculate a correction inference error, and the control step repeatedly acts on the neural network so that the correction inference error for each teacher label becomes small.
  • another aspect of the present disclosure is a learning program used in a learning device for learning by a neural network and stored in a computer-readable storage medium, wherein the learning device, which is the computer, is used as a teacher.
  • a correction step of correcting the inference error with a weighted value set based on the learning characteristics of the teacher label to calculate the correction inference error is executed for each teacher label, and the control step is for each teacher label.
  • the neural network is repeatedly acted on so that the correction inference error of the above becomes smaller.
  • another aspect of the present disclosure is a recognition device that acquires a plurality of labels from the data to be recognized by recognition performed using a neural network, the acquisition means for acquiring the data, and the data. Further, it is provided with a control means for controlling the neural network so as to calculate the inference result for each of the labels, and a determination means for determining whether or not to output the inference result based on the inference threshold for each of the labels.
  • a threshold value acquisition means for acquiring an inference threshold is provided for each of the labels, and the determination means rejects the inference result when the inference result calculated for each label is smaller than the inference threshold. If the inference result calculated for each label is equal to or larger than the inference threshold value, the inference result may be output.
  • the threshold value acquisition means may calculate the inference threshold value based on the learning characteristics of the label.
  • the neural network learning is performed on a plurality of teacher data, a plurality of teacher labels are associated with each of the plurality of teacher data, and the acquisition means further obtains each teacher label.
  • frequency information indicating the frequency may be acquired, and the threshold acquisition means may calculate the inference threshold based on the acquired frequency information.
  • the acquisition means further acquires difficulty level information indicating the difficulty level for each label
  • the threshold value acquisition means acquires the acquired difficulty level.
  • the inference threshold may be calculated based on the degree information.
  • the proficiency level in the neural network is different for each of the plurality of labels
  • the acquisition means further acquires proficiency level information indicating the proficiency level for each label
  • the threshold value acquisition means acquires the proficiency level.
  • the inference threshold value may be calculated based on the proficiency level information obtained.
  • the threshold value acquisition means may dynamically calculate the inference threshold value.
  • the threshold value acquisition means may calculate the inference threshold value based on a fluctuating external factor.
  • the threshold value acquisition means may acquire the inference threshold value input by the user.
  • a plurality of categories are set in the data, and some labels among the plurality of labels may belong to one category among the plurality of categories.
  • another aspect of the present disclosure is a recognition method used in a recognition device that acquires a plurality of labels from data to be recognized by recognition performed using a neural network, and is an acquisition step for acquiring the data.
  • Another aspect of the present disclosure is recognition that is used in a recognition device that acquires a plurality of labels from data to be recognized by recognition performed using a neural network, and is stored in a computer-readable storage medium.
  • the recognition device which is a computer, has an acquisition step of acquiring the data, a control step of controlling the neural network so as to calculate an inference result for each label for the data, and the above.
  • a determination step for determining whether or not to output an inference result based on an inference threshold for each label is executed.
  • another aspect of the present disclosure is a learning recognition device including the learning device and the recognition device.
  • the learning device has an excellent effect of being able to learn so that a constant recognition performance can be maintained even when the learning characteristics of each label are biased, and the learning device has an excellent effect on the neural network. It is useful as a learning technique, especially when a plurality of teacher labels correspond to one teacher data. Further, the recognition device according to the present disclosure has an excellent effect of being able to maintain a certain recognition performance even when there is a learning bias in the characteristics of each label, and a technique for recognizing by a neural network, in particular. , Is useful as a recognition technique when multiple teacher labels correspond to one teacher data.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)

Abstract

ラベル毎の特性に偏りがある場合においても、一定の認識性能を維持することができるように、学習することができる学習認識装置を提供する。 教師データ及び対応する複数の教師ラベルを取得する訓練データ入力部131、教師データに対して、教師ラベル毎に推論誤差を算出するようにニューラルネットワークを制御する制御部130、教師ラベル毎に算出された推論誤差を、教師ラベル毎に、当該教師ラベルの学習特性に基づいて設定された加重値により補正して補正推論誤差を算出する加重値付与部を備える。制御部130は、教師ラベル毎の補正推論誤差が小さくなっていくように、ニューラルネットワークに繰り返し作用させる。

Description

学習装置、学習方法及び学習プログラム、認識装置、認識方法及び認識プログラム並びに学習認識装置
 本開示は、ニューラルネットワークに学習をさせる技術及びニューラルネットワークにより認識を行う技術に関し、特に、一つの教師データに複数の教師ラベルが対応する場合における学習技術及び一つの教師データに複数の教師ラベルが対応する場合における認識技術に関する。
 ニューラルネットワークに学習をさせる際、教師ラベルが付された教師データを用いることが一般的である。例えば、車が写った写真などの画像データ(教師データ)と、その画像データに写っている車の車種(教師ラベル)とを含む訓練データを用いて、あらかじめ学習を行い、学習結果を用いて新たな写真からラベルを認識する。
 特許文献1によると、学習装置は、適合ラベル及び非適合ラベルの各データ項目を有する入力データから生成される特徴量を入力して第1の推定結果を出力する第1の教師有学習器に対し、第1の推定結果と前記適合ラベルとが一致するように学習させる。学習装置は、特徴量を入力して第2の推定結果を出力する第2の教師有学習器に対し、第2の推定結果と前記非適合ラベルとが一致するように学習させる。学習装置は、入力データから特徴量を生成する特徴抽出器に対し、適合ラベルの認識を促進させ、かつ、非適合ラベルの認識を抑制する学習を実行させる。
 また、特許文献2によると、排他的なラベルが付与された学習データによる学習を実行することを課題とし、学習装置は、学習対象のデータそれぞれに対して、1又は複数のラベルを要素とするラベルベクトルを設定する。例えば、学習装置は、学習対象のデータそれぞれに設定する対象であるラベル間の相関に基づき、ラベルベクトルを生成する。そして、学習装置は、学習対象のデータと、学習対象のデータそれぞれに設定されたラベルベクトルを用いて、ニューラルネットワークを含む学習モデルに対する学習を行わせる。
 上記のように、特許文献1及び2には、一つの教師データに複数の教師ラベルが対応付けられる場合における学習技術について、開示されている。
特開2019-159824号公報 特開2019-159612号公報
 しかし、ラベル毎にバランスよく、教師データを揃えることは困難である。例えば、教師として、車両のカタログデータを用いると、車種や色のバリエーションを増やすことができるが、カタログデータには、車両の走行シーンの画像が少ないと予想される。一方、教師としての車両の走行シーンを写した画像では、車種や色のバリエーションが少ないと予想される。
 ラベル毎の教師データの量のバランスが悪いと、ラベル毎の習熟度のバランスが悪くなり、その結果、認識装置において、認識性能が低下する。
 また、ラベル毎の教師データの量のバランス以外にも、ラベル毎の教師データの出現確率のバランスが悪い場合、ラベル毎の認識の難易度のバランスが悪い場合、また、ラベル毎の学習の習熟度のバランスが悪い場合にも、同様に、その結果、認識装置において、認識性能が低下する。
 本開示の態様は、このような問題を解決し、上記のように、ラベル毎の学習特性に偏りがある場合においても、一定の認識性能を維持することができるように、学習することができる学習装置、学習方法及び学習プログラム、及び、一定の認識性能を維持することができる認識装置、認識方法及び認識プログラム、並びに学習認識装置を提供することを目的とする。
 上記目的を達成するため、本開示の一態様は、ニューラルネットワークに学習をさせる学習装置であって、教師データ及び対応する複数の教師ラベルを取得する取得手段と、前記教師データについて、前記教師ラベル毎に推論誤差を算出するように前記ニューラルネットワークを制御する制御手段と、教師ラベル毎に算出された前記推論誤差を、前記教師ラベル毎に、当該教師ラベルの学習特性に基づいて設定された加重値により補正して補正推論誤差を算出する補正手段とを備え、前記制御手段は、前記教師ラベル毎の補正推論誤差が小さくなっていくように、前記ニューラルネットワークに繰り返し作用させる。
 また、本開示の別の一態様は、ニューラルネットワークを用いて行う認識により、認識対象であるデータから複数のラベルを取得する認識装置であって、前記データを取得する取得手段と、前記データに対して、前記ラベル毎に推論結果を算出するように前記ニューラルネットワークを制御する制御手段と、前記ラベル毎の推論閾値に基づいて推論結果を出力するか否かを判断する判断手段とを備える。
 上記の態様によると、上記のように、ラベル毎の学習特性に偏りがある場合においても、一定の認識性能を維持することができるように、学習することができ、また、一定の認識性能を維持することができる、という優れた効果を奏する。
実施の形態としての学習認識装置10の構成を示すブロック図である。 典型的なニューラルネットワーク50の構成を示すブロック図である。 (a)ニューラルネットワーク50の一つのニューロンUを示す模式図である。(b)ニューラルネットワーク50に設定される各ニューロン加重値及びニューロン閾値を含むニューロン設定テーブル490である。 ニューラルネットワーク50における事前学習(訓練)の際のデータの伝搬モデルを模式的に示す図である。 ニューラルネットワーク50における実地推論の際のデータの伝搬モデルを模式的に示す図である。 画像データ201の特性を示す複数のカテゴリーの例を示す。 訓練データDB151に記憶されている訓練用の画像データの例を示す。 訓練データDB151に記憶されている訓練データテーブル230のデータ構造を示す。 パラメーターDB152に記憶されている頻度テーブル250のデータ構造を示す。 パラメーターDB152に記憶されている難易度テーブル260のデータ構造を示す。 パラメーターDB152に記憶されている習熟度テーブル270のデータ構造を示す。 パラメーターDB152に記憶されている欠落情報テーブル290のデータ構造を示す。 カテゴリー内の各ラベルについて算出されるラベル加重値LWの例を示す。 カテゴリー内の各ラベルについて算出される推論閾値Tの例を示す。 訓練認識処理部124及び実地認識処理部125の構成を示すブロック図である。 特徴学習部133の構成を示すブロック図である。 推論結果280のデータ構造を示す。 推論誤差dにラベル加重値LWを乗じて補正推論誤差d’を得るプロセスを示す。 推論部143の構成を示すブロック図である。 推論結果Rから、推論閾値に基づいて推論誤差R’を得るプロセスを示す。 一例としての最終認識結果440を示す。 訓練認識処理部124における動作を示すフローチャートである。 実地認識処理部125における動作を示すフローチャートである。 各推論対象物について設定されるべきカテゴリーのパターンを示す。
 1 実施の形態
 本開示に係る一の実施の形態としての学習認識装置10について図面を参照しながら説明する。
 1.1 学習認識装置10
 学習認識装置10は、図1に示すように、バスB1に接続されたCPU(Central Processing Unit)101、ROM(Read Only Memory)102、RAM(Random access memory)103、記憶部104及びネットワーク通信回路111と、バスB2に接続されたGPU(Graphics Processing Unit)105、ROM106、RAM107と、バスB3に接続されたGPU108、ROM109、RAM110とから構成されている。バスB1とバスB2は、相互に接続され、バスB1とバスB3も、相互に接続されている。
 (CPU101、ROM102、RAM103)
 RAM103は、不揮発性の半導体メモリから構成されており、CPU101によるプログラム実行時のワークエリアを提供する。
 ROM102には、学習認識装置10における処理を実行させるためのコンピュータープログラムである制御プログラム等が格納されている。
 CPU101は、ROM102に記憶されている制御プログラムに従って動作する。
 CPU101が、RAM103をワークエリアとして用いて、ROM102に記憶されている制御プログラムに従って動作することにより、CPU101、ROM102及びRAM103は、主制御部121を構成する。
 主制御部121は、統括制御部122、パラメーター取得部123及び推論結果出力部126を含む。
 統括制御部122は、学習認識装置10全体を統括的に制御する。
 パラメーター取得部123及び推論結果出力部126については、後述する。
 (ネットワーク通信回路111)
 ネットワーク通信回路111は、ネットワークを介して、外部の情報端末に接続されている。ネットワーク通信回路111は、ネットワークを介して、外部の情報端末との間で、情報の送受信を中継する。
 (GPU105、ROM106、RAM107)
 RAM107は、不揮発性の半導体メモリから構成されており、GPU105によるプログラム実行時のワークエリアを提供する。
 ROM106には、後述する訓練認識処理部124における処理を実行させるためのコンピュータープログラムである制御プログラム等が格納されている。この制御プログラムの一部は、学習プログラムを構成している。
 GPU105は、ROM106に記憶されている制御プログラムに従って動作する。
 GPU105が、RAM107をワークエリアとして用いて、ROM106に記憶されている制御プログラムに従って動作することにより、GPU105、ROM106及びRAM107は、訓練認識処理部124を構成する。
 訓練認識処理部124には、ニューラルネットワークが組み込まれている。
 訓練認識処理部124に組み込まれているニューラルネットワークは、GPU105が、ROM106に記憶されている制御プログラムに従って動作することにより、その機能を果たす。
 (GPU108、ROM109、RAM110)
 RAM110は、不揮発性の半導体メモリから構成されており、GPU108によるプログラム実行時のワークエリアを提供する。
 ROM109には、後述する実地認識処理部125における処理を実行させるためのコンピュータープログラムである制御プログラム等が格納されている。この制御プログラムの一部は、認識プログラムを構成している。
 GPU108は、ROM109に記憶されている制御プログラムに従って動作する。
 GPU108が、RAM110をワークエリアとして用いて、ROM109に記憶されている制御プログラムに従って動作することにより、GPU108、ROM109及びRAM110は、実地認識処理部125を構成する。
 実地認識処理部125には、ニューラルネットワークが組み込まれている。
 実地認識処理部125に組み込まれているニューラルネットワークは、GPU108が、ROM109に記憶されている制御プログラムに従って動作することにより、その機能を果たす。
 (記憶部104)
 記憶部104は、一例として、ハードディスクから構成されている。もちろん、記憶部104は、不揮発性の半導体メモリから構成されている、としてもよい。
 記憶部104は、図1に示すように、訓練データDB151、パラメーターDB152、学習結果DB153及び実地データDB154を有している。
 訓練データDB151、パラメーターDB152、学習結果DB153及び実地データDB154については、後述する。
 ここで、主制御部121、記憶部104、訓練認識処理部124及びネットワーク通信回路111は、学習装置を構成している。また、主制御部121、記憶部104、実地認識処理部125及びネットワーク通信回路111は、認識装置を構成している。
 1.2 典型的なニューラルネットワーク
 典型的なニューラルネットワークの一例として、図2に示すニューラルネットワーク50について、説明する。
 (1)ニューラルネットワーク50の構造
 ニューラルネットワーク50は、この図に示すように、入力層50a、特徴抽出層50b及び認識層50cを有する階層型のニューラルネットワークである。
 ここで、ニューラルネットワークとは、人間の神経ネットワークを模倣した情報処理システムのことである。ニューラルネットワーク50において、神経細胞に相当する工学的なニューロンのモデルを、ここではニューロンUと呼ぶ。入力層50a、特徴抽出層50b及び認識層50cは、それぞれ複数のニューロンUを有して構成されている。
 入力層50aは、通常、1層からなる。入力層50aの各ニューロンUは、例えば1枚の画像を構成する各画素の画素値をそれぞれ受信する。受信した画像値は、入力層50aの各ニューロンUから特徴抽出層50bにそのまま出力される。
 特徴抽出層50bは、入力層50aから受信したデータ(1枚の画像を構成する全ての画素値)から特徴を抽出して認識層50cに出力する。この特徴抽出層50bは、各ニューロンUでの演算により、例えば、受信した画像から車両が映っている領域を抽出する。
 認識層50cは、特徴抽出層50bにより抽出された特徴を用いて識別を行う。認識層50cは、各ニューロンUでの演算により、例えば、特徴抽出層50bにおいて抽出された車両の領域から、その車両の車種、メーカー名、色等のラベルを識別する。
 ニューロンUとして、通常、図3(a)に示すように、多入力1出力の素子が用いられる。信号は一方向にだけ伝わり、入力された信号xi(i=1、2、・・・、n)に、あるニューロン加重値(SUwi)が乗じられて、ニューロンUに入力される。このニューロン加重値によって、階層的に並ぶニューロンU-ニューロンU間の結合の強さが表される。ニューロン加重値は、学習によって変化させることができる。ニューロンUからは、ニューロン加重値SUwiが乗じられたそれぞれの入力値(SUwi×xi)の総和からニューロン閾値θUを引いた値Xが応答関数f(X)による変形を受けた後、出力される。つまり、ニューロンUの出力値yは、以下の数式で表される。
 y=f(X)
 ここで、
X=Σ(SUwi×xi)-θU
である。また、Σは、i=1、2、3、・・・、nについての総和を示す。なお、応答関数としては、例えば、シグモイド関数を用いることができる。
 入力層50aの各ニューロンUは、通常、シグモイド特性やニューロン閾値をもたない。それゆえ、入力値がそのまま出力に表れる。一方、認識層50cの最終層(出力層)の各ニューロンUは、認識層50cでの識別結果(識別されたラベルに対応するデータ)を出力することになる。
 ニューラルネットワーク50の学習アルゴリズムとしては、例えば、正解を示す値(データ)と認識層50cからの出力値(データ)との2乗誤差が最小となるように、最急降下法を用いて認識層50cのニューロン加重値等及び特徴抽出層50bのニューロン加重値等を順次変化させていく誤差逆伝播法(バックプロパゲーション)が用いられる。
 (2)訓練工程
 ニューラルネットワーク50における訓練工程について説明する。
 訓練工程は、ニューラルネットワーク50の事前学習を行う工程である。訓練工程では、事前に入手した正解付き(教師あり、アノテーションあり)の画像データを用いて、ニューラルネットワーク50の事前学習を行う。
 図4に、事前学習の際のデータの伝播モデルを模式的に示している。
 画像データは、画像1枚毎に、ニューラルネットワーク50の入力層50aに入力され、入力層50aから特徴抽出層50bに出力される。特徴抽出層50bの各ニューロンUでは、入力データに対してニューロン加重値付きの演算が行われる。この演算により、特徴抽出層50bでは、入力データから特徴(例えば、車両の領域)が抽出されるとともに、抽出した特徴を示すデータが、認識層50cに出力される(ステップS51)。
 認識層50cの各ニューロンUでは、入力データに対するニューロン加重値付きの演算が行われる(ステップS52)。これによって、上記特徴に基づく識別(例えば、車種の識別)が行われる。識別結果を示すデータは、認識層50cから出力される。
 認識層50cの出力値(データ)は、正解を示す値と比較され、これらの誤差(ロス)が算出される(ステップS53)。この誤差が小さくなるように、認識層50cのニューロン加重値等及び特徴抽出層50bのニューロン加重値等を順次変化させる(バックプロパゲーション)(ステップS54)。これにより、認識層50c及び特徴抽出層50bを学習させる。
 (3)実地認識工程
 ニューラルネットワーク50における実地認識工程について説明する。
 図5は、上記の訓練工程によって学習されたニューラルネットワーク50を用い、現場で得られたデータを入力として実際に認識(例えば、車両の車種の認識)を行う場合のデータの伝播モデルを示している。
 ニューラルネットワーク50における実地認識工程においては、学習された特徴抽出層50bと、学習された認識層50cとを用いて、特徴抽出及び認識が行われる(ステップS55)。
 1.3 認識対象の画像データ及びそのカテゴリーの例示
 図6に、一例として、学習認識装置10において扱う認識対象である画像データ201を示す。画像データ201は、一枚の画像を表し、その画像は、複数の画素が行列状に配されて構成されている。画像データ201が表す画像には、一例として、車両のオブジェクト及びその背景のオブジェクトが含まれている。なお、背景のオブジェクトについては、図示を省略している。
 画像データ201から認識されるラベルは、この図に示すように、カテゴリー211、212、213、・・・、218に分類される。カテゴリー211、212、213、・・・、218は、それぞれ、「車種」、「メーカー」、「色」、・・・、「安定走行」である。
 ここで、「車種」のカテゴリー211には、ラベル211a、211b、211c、211dが属し、ラベル211a、211b、211c、211dは、それぞれ、「乗用車」、「トラック」、「バス」、「二輪車」である。
 また、「メーカー」のカテゴリー212には、ラベル212a、212b、212c、212dが属し、ラベル212a、212b、212c、212dは、それぞれ、「A社」、「B社」、「C社」、「D社」である。
 その他、カテゴリー213、214、・・・、218のそれぞれにも、複数のラベルが属する。
 本実施の形態においては、画像には、車両のオブジェクトが含まれており、図6のカテゴリーに分類され、各カテゴリーには、同図のラベルが属するものとする。
 1.4 訓練データDB151
 訓練データDB151は、訓練データテーブル230及び複数の画像データ221、222、223、・・・を保持している。
 (画像データ221、222、223、・・・)
 画像データ221、222、223、・・・は、それぞれ、訓練データ(教師データ)としての画像データである。
 図7に示すように、画像データ221、222、223、・・・には、それぞれ、例えば、車両のオブジェクト及び背景のオブジェクトが含まれている。なお、背景のオブジェクトについては、図示を省略している。具体的には、画像データ221には、乗用車のオブジェクト等が含まれ、画像データ222には、トラックのオブジェクト等が含まれ、画像データ223には、乗用車のオブジェクト等が含まれ、画像データ224には、バスのオブジェクト等が含まれている。
 また、画像データ221、222、223、・・・は、それぞれ、画像データ識別子により識別される。例えば、画像データ221の識別子は、「A001.jpg」であり、画像データ222の識別子は、「A002.jpg」であり、画像データ223の識別子は、「A003.jpg」である。
 (訓練データテーブル230)
 訓練データテーブル230は、訓練データDB151に保持されている画像データ221、222、223、・・・について、予め設定された訓練ラベル(教師ラベル)を示すためのデータテーブルである。
 訓練データテーブル230は、図8に示すように、複数の訓練データ231を含んでいる。各訓練データ231は、訓練データDB151に保持されている画像データと、一対一に対応している。
 各訓練データ231は、画像データ識別子232及び訓練ラベル233、234、・・・、239を含む。
 画像データ識別子232は、訓練データ231に対応する画像データを識別する識別子である。
 訓練ラベル233、234、・・・、239は、それぞれ、訓練データ231に対応する画像データにより表される画像内に含まれる車両のオブジェクトについてのラベルである。訓練ラベル233、234、・・・、239の中には、ラベルが設定されていないもの(「-」で示す)も存在する。
 訓練ラベル233は、車両に対するカテゴリーの一つである「車種」についてのラベルを示す。「車種」である訓練ラベル233には、例えば、「乗用車」、「トラック」、「バス」、「二輪車」等が含まれる。
 訓練ラベル234は、車両に対するカテゴリーの一つである「メーカー」についてのラベルを示す。「メーカー」である訓練ラベル234には、例えば、「A社」、「B社」、「C社」、「D社」等が含まれる。
 訓練ラベル235は、車両に対するカテゴリーの一つである車体の「色」についてのラベルを示す。「色」である訓練ラベル235には、例えば、「白」、「黒」、「青」、「赤」等が含まれる。
 訓練ラベル236は、車両に対するカテゴリーの一つである「乗車人数」についてのラベルを示す。「乗車人数」である訓練ラベル236には、例えば、「一人」、「複数人」が含まれる。
 訓練ラベル237は、車両に対するカテゴリーの一つである「積載荷物量」についてのラベルを示す。「積載荷物量」である訓練ラベル237には、例えば、「なし」、「積み荷小」、「積み荷大」等が含まれる。
 訓練ラベル238は、車両に対するカテゴリーの一つである「他車との車間距離」についてのラベルを示す。「他車との車間距離」である訓練ラベル238には、例えば、「狭い傾向」、「適切」等が含まれる。
 訓練ラベル239は、車両に対するカテゴリーの一つである「走行スピード」についてのラベルを示す。「走行スピード」である訓練ラベル239には、例えば、「遅すぎる」、「法定速度内」、「速すぎる」等が含まれる。
 1.5 パラメーターDB152
 パラメーターDB152は、頻度テーブル250、難易度テーブル260、習熟度テーブル270及び欠落情報テーブル290を保持している。
 (1)頻度テーブル250
 頻度テーブル250は、図6に示すカテゴリーとラベル毎に、訓練データDB151に保持されている訓練データの頻度(保持数)を記憶するためのデータテーブルである。
 頻度テーブル250は、図9に示すように、複数の頻度情報251を含んでいる。
 各頻度情報251は、図6に示すカテゴリーと、そのカテゴリーに属するラベルに対応している。各頻度情報251は、カテゴリー252、ラベル253及び頻度254を含んでいる。
 カテゴリー252は、図6に示す一つのカテゴリーに対応している。
 ラベル253は、カテゴリー252に属する一つのラベルに対応している。
 頻度254は、カテゴリー252及びラベル253の組合せの、訓練データテーブル230内における出現頻度である。
 (2)難易度テーブル260
 難易度テーブル260は、図6に示すカテゴリーとラベル毎に、訓練データDB151に保持されている訓練データの難易度を記憶するためのデータテーブルである。
 難易度テーブル260は、図10に示すように、複数の難易度情報261を含んでいる。
 各難易度情報261は、図6に示すカテゴリーと、そのカテゴリーに属するラベルに対応している。各難易度情報261は、カテゴリー262、ラベル263及び難易度264を含んでいる。
 カテゴリー262は、図6に示す一つのカテゴリーに対応している。
 ラベル263は、カテゴリー262に属する一つのラベルに対応している。
 難易度264は、カテゴリー262及びラベル263の組合せに対する認識の難易度である。
 例えば、カテゴリー「車種」については、画像内の車両の形状により、認識が可能であるので、難易度は、概して、低いと言える。
 また、カテゴリー「メーカー」については、例えば、画像内の車両に付されたエンブレムの形状を明確に認識できれば、その「メーカー」を認識することも可能である。しかし、例えば、走行中の車両を、遠方から撮影した場合、車両の上方から撮影した場合、悪天候の中で撮影した場合又は夜間に撮影した場合等においては、エンブレムの形状の認識は、困難となることが多い。このため、カテゴリー「メーカー」については、難易度は、中程度であるとしてもよい。
 また、カテゴリー「色」についても、画像内の車両の色により、認識が可能であるので、難易度は、概して、低いと言える。
 一方、カテゴリー「安定走行」のラベル「フラツキ多」については、画像により車両のフラツキを認識するので、難易度は、概して、高いと言える。また、カテゴリー「安定走行」のラベル「車線内走行」については、画像により車両が車線内を走行しているかを認識することにより得られるので、難易度は、中程度であると言える。
 このように、難易度は、ラベルにより、様々である。ここでは、一例として、難易度を「低」、「中」、「高」の3段階に分類し、「低」、「中」、「高」のそれぞれについて、難易度を、「3」、「2」、「1」に設定している。
 ここで、カテゴリー262及びラベル263の組合せ毎の難易度264は、例えば、学習認識装置10の使用者により設定されたものである、としてもよい。
 (3)習熟度テーブル270
 習熟度テーブル270は、図6に示すカテゴリーとラベル毎に、訓練データDB151に保持されている訓練データの習熟度を記憶するためのデータテーブルである。
 習熟度テーブル270は、図11に示すように、複数の習熟度情報271を含んでいる。
 各習熟度情報271は、図6に示すカテゴリーと、そのカテゴリーに属するラベルに対応している。各習熟度情報271は、カテゴリー272、ラベル273及び習熟度274を含んでいる。
 カテゴリー272は、図6に示す一つのカテゴリーに対応している。
 ラベル273は、カテゴリー272に属する一つのラベルに対応している。
 習熟度274は、カテゴリー272及びラベル273の組合せについての学習の習熟度である。
 習熟度は、ラベルにより、様々である。ここでは、一例として、習熟度を「低」、「中」、「高」の3段階に分類し、「低」、「中」、「高」のそれぞれについて、習熟度を、「1」、「2」、「3」に設定している。
 ここで、カテゴリー272及びラベル273の組合せ毎の習熟度274は、例えば、学習認識装置10の使用者により設定されたものである、としてもよい。
 (4)欠落情報テーブル290
 訓練データDB151に保持されている画像データの中には、図6に示す複数のカテゴリーのうち、いずれかのカテゴリーを推論するための画像が含まれないものもある。
 例えば、静止した車両の外観を写した画像の場合、この画像を分析すると、その車種や色を推論することはできても、走行スピードに関する情報や、安定走行に関する情報を得ることができない。
 また、走行中の車両の速度計を写した画像の場合、その車種や色を推論することはできないけれども、走行スピードに関する情報を得ることができる。
 このように、訓練データDB151に保持されている画像データの中には、図6に示す複数のカテゴリーのうちのいずれかのカテゴリーであることを推論することが、不可能な画像データが含まれ得る。
 欠落情報テーブル290は、このように、訓練データDB151に保持されている画像データのうち、図6に示す複数のカテゴリーのうちのいずれかのカテゴリーであることを推論することが、不可能な画像データについて、その推論不可能なカテゴリーを示す。
 欠落情報テーブル290は、図12に示すように、複数の欠落情報291を含んでいる。
 各欠落情報は、上述したように、訓練データDB151に保持されている画像データのうち、図6に示す複数のカテゴリーのうちのいずれかのカテゴリーであることを推論することが、不可能な画像データに対応している。
 各欠落情報291は、画像データ識別子292及び複数のカテゴリー293、294、295、・・・を含む。
 画像データ識別子292は、訓練データDB151に保持されている画像データのうち、図6に示す複数のカテゴリーのうちのいずれかのカテゴリーであることを推論することが、不可能な画像データを識別する識別子である。
 カテゴリー293、294、295、・・・は、図6に示す複数のカテゴリーのうちのいずれかのカテゴリーであることを推論することが、不可能な画像データについて、当該推論が不可能なカテゴリーを示す。各欠落情報291には、一つ又は複数のカテゴリーが含まれる。
 上記のように、欠落情報テーブル290は、カテゴリー単位で、欠落情報を含んでいる。しかし、これには、限定されない。欠落情報テーブル290は、カテゴリー内のラベル単位で、欠落情報を含むとしてもよい。
 例えば、カテゴリー「安定走行」のうち、ラベル「車線内走行」について、画像データからそのラベルを推論することが可能であるが、ラベル「フラツキ多」について、画像データからそのラベルを推論することが不可能である場合、欠落情報テーブル290は、カテゴリー「安定走行」のうち、ラベル「フラツキ多」を含む、としてもよい。
 ここで、欠落情報テーブル290の各欠落情報は、例えば、学習認識装置10の使用者により設定されたものである、としてもよい。
 1.6 実地データDB154
 実地データDB154は、図1に示すように、画像データ289を保持している。
 画像データ289は、学習認識装置10において、認識処理の対象となる画像データである。
 1.7 学習結果DB153
 学習結果DB153は、図1に示すように、ニューロン設定テーブル490を保持している。
 ニューロン設定テーブル490は、図3(b)に示すように、複数のニューロン情報491から構成されている。各ニューロン情報491は、訓練認識処理部124の後述する特徴抽出部132(図15)及び後述する特徴学習部133のラベル推論部134(図16)の各ニューロンUに対応する。
 各ニューロン情報491は、ニューロン番号492、ニューロン加重値493及びニューロン閾値494を含んでいる。
 ニューロン番号492は、特徴抽出部132及びラベル推論部134の各ニューロンUを識別する番号である。
 ニューロン加重値493及びニューロン閾値494は、それぞれ、上記の「1.2 ニューラルネット」において説明したニューロン加重値及びニューロン閾値である。
 1.8 パラメーター取得部123
 パラメーター取得部123は、図6に示す全てのカテゴリー内の全てのラベルのそれぞれについて、頻度テーブル250から頻度情報を読み出し、難易度テーブル260から難易度情報を読み出し、習熟度テーブル270から習熟度情報を読み出す。
 また、パラメーター取得部123は、欠落情報テーブル290から欠落情報(欠落ラベル)を読み出す。
 (ラベル加重値LWの算出)
 パラメーター取得部123(算出手段)は、読み出した頻度情報、難易度情報及び習熟度情報を用いて、つまり、教師ラベルの学習特性に基づいて、各カテゴリー内の各ラベルについて、ラベル加重値LWを算出する。
 例えば、パラメーター取得部123は、頻度が高ければ、より低いラベル加重値LWを算出し、頻度が低ければ、より高いラベル加重値LWを算出してもよい。また、パラメーター取得部123は、難易度が低ければ、より低いラベル加重値LWを算出し、難易度が高ければ、より高いラベル加重値LWを算出してもよい。さらに、パラメーター取得部123は、習熟度が高ければ、より低いラベル加重値LWを算出し、習熟度が低ければ、より高いラベル加重値LWを算出してもよい。
 また、例えば、パラメーター取得部123は、次の式により、ラベル加重値LWを算出してもよい。
 ラベル加重値LW=G(α×(頻度)+β×(難易度)+γ×(習熟度))
 ここで、G(x)は、例えば、G(x)=1/xであり、α、β及びγは、それぞれ、頻度、難易度及び習熟度に応じて、設定された係数である。α、β及びγは、0<ラベル加重値LW<1となるように、設定される。
 図13に、各カテゴリー及び各ラベルについて算出されたラベル加重値LWの例を示す。
 この図に示すように、カテゴリー301「車種」内のラベル311「乗用車」、ラベル312「トラック」、ラベル313「バス」、・・・、ラベル314「二輪車」について、ラベル加重値LW311a、312a、313a、・・・、314aが算出される。
 また、カテゴリー321「色」内のラベル331「黒」、ラベル332「白」、ラベル333「青」、・・・、ラベル334「ピンク」について、ラベル加重値LW331a、332a、333a、・・・、334aが算出される。
 なお、パラメーター取得部123は、ラベル加重値LWの算出において、頻度情報のみを用いてもよいし、難易度情報のみを用いてもよいし、習熟度情報のみを用いてもよい。また、パラメーター取得部123は、ラベル加重値LWの算出において、頻度情報、難易度情報及び習熟度情報のうちのいずれか二つの組合せを用いてよい。
 パラメーター取得部123は、各カテゴリー及び各ラベルについて算出したラベル加重値LWを、訓練認識処理部124の後述する特徴学習部133に対して、出力する。
 (推論閾値の算出)
 パラメーター取得部123(閾値取得出手段)は、読み出した頻度情報、難易度情報及び習熟度情報を用いて、つまり、教師ラベルの学習特性に基づいて、各カテゴリー内の各ラベルについて、推論閾値Tを算出する。
 例えば、パラメーター取得部123は、頻度が高ければ、より低い推論閾値Tを算出し、頻度が低ければ、より高い推論閾値Tを算出してもよい。また、パラメーター取得部123は、難易度が低ければ、より低い推論閾値Tを算出し、難易度が高ければ、より高い推論閾値Tを算出してもよい。さらに、パラメーター取得部123は、習熟度が高ければ、低い推論閾値Tを算出し、習熟度が低ければ、より高い推論閾値Tを算出してもよい。
 また、例えば、パラメーター取得部123は、次の式により、推論閾値Tを算出してもよい。
 推論閾値T=G(δ×(頻度)+ε×(難易度)+ζ×(習熟度))
 ここで、G(x)は、上記の通り、例えば、G(x)=1/xであり、δ、ε及びζは、それぞれ、頻度、難易度及び習熟度に応じて、設定された係数である。δ、ε及びζは、0<推論閾値T<1となるように、設定される。
 図14に、各カテゴリー及び各ラベルについて算出された推論閾値Tの例を示す。
 この図に示すように、カテゴリー361「車種」内のラベル371「乗用車」、ラベル372「トラック」、ラベル373「バス」、・・・、ラベル374「二輪車」について、推論閾値T371a、372a、373a、・・・、374aが算出される。
 また、カテゴリー381「色」内のラベル391「黒」、ラベル392「白」、ラベル393「青」、・・・、ラベル394「ピンク」について、推論閾値T391a、392a、393a、・・・、394aが算出される。
 図14のカテゴリー361に示すように、カテゴリー361内のラベル毎に、推論閾値Tが異なっていてもよい。また、カテゴリー内の全てのラベルについて、推論閾値Tが同一であってもよい。さらに、同一カテゴリー内においては、全てのラベルについて、推論閾値Tが同一であり、カテゴリー毎に、推論閾値Tが異なっていてもよい。
 パラメーター取得部123は、各カテゴリー及び各ラベルについて算出した推論閾値Tを、実地認識処理部125の後述する推論部143に対して、出力する。
 1.9 訓練認識処理部124
 訓練認識処理部124は、図15に示すように、制御部130、訓練データ入力部131、特徴抽出部132及び特徴学習部133から構成されている。
 (1)訓練データ入力部131
 訓練データ入力部131(取得手段)は、図2に示すニューラルネットワーク50の入力層50aに相当する。訓練データ入力部131は、訓練データDB151に記憶されている一つの画像データを読み出す。また、読み出した画像データに対応する訓練データを、訓練データテーブル230から読み出す。
 訓練データ入力部131は、読み出した画像データを、特徴抽出部132に対して、出力する。また、訓練データ入力部131は、読み出した訓練データを、特徴学習部133に対して、出力する。
 (2)特徴抽出部132
 特徴抽出部132は、図2に示すニューラルネットワーク50の特徴抽出層50bに相当する。特徴抽出部132は、訓練データ入力部131から、画像データを受け取る。特徴抽出部132は、受け取った画像データから特徴を抽出する。例えば、特徴抽出部132は、受け取った画像データを構成する画像内から、オブジェクトとして、車両が映っている領域を抽出する。特徴抽出部132は、抽出した特徴を特徴学習部133に対して、出力する。例えば、特徴抽出部132は、車両が映っている領域を特徴学習部133に対して、出力する。
 (3)特徴学習部133
 特徴学習部133は、図16に示すように、ラベル推論部134、加重値付与部135及び推論誤差転送部136から構成されている。
 (a)ラベル推論部134
 ラベル推論部134は、図2に示すニューラルネットワーク50の認識層50cに相当する機能を含んでいる。ラベル推論部134は、特徴抽出部132から、例えば、車両が映っている領域を受信する。車両が映っている領域を受信すると、ラベル推論部134は、車両が映っている領域から、推論結果として、図6に示す全てのカテゴリー及びラベルについて、出現確率を算出する。
 図17に、ラベル推論部134により生成される推論結果の一例として、推論結果280を示す。この図に示すように、推論結果280は、複数の推論結果情報281を含む。各推論結果情報281は、図6に示すカテゴリーに対応している。各推論結果情報281は、カテゴリー282及び一つ又は複数のラベル情報283を含む。
 ここで、カテゴリー282は、図6に示すカテゴリーである。
 各推論結果情報281に含まれるラベル情報283は、図6に示す一つのカテゴリーに属するラベルに対応している。ラベル情報283は、ラベル284及び出現確率285を含む。ラベル284は、一つのカテゴリーに属するラベルであり、出現確率285は、ラベル284について推論された出現確率である。
 次に、ラベル推論部134は、訓練データ入力部131から、訓練データを受信し、全てのカテゴリー及びラベルについて、算出した出現確率と、訓練データに含まれるラベルとの推論誤差dを算出する。ラベル推論部134は、算出した推論誤差dを加重値付与部135に対して、出力する。
 (b)加重値付与部135
 加重値付与部135(補正手段)は、ラベル推論部134から、推論誤差dを受信する。また、加重値付与部135は、パラメーター取得部123から、ラベル加重値LWを受信する。
 次に、加重値付与部135は、推論誤差dにラベル加重値LWを乗じて、補正推論誤差d’を算出する。
 補正推論誤差d’=推論誤差d×ラベル加重値LW
 このように、加重値付与部135は、教師ラベル毎に算出された推論誤差を、ラベル加重値により補正して、補正推論誤差を算出する。
 上述したように、パラメーター取得部123は、例えば、頻度が高ければ、より低いラベル加重値LWを算出し、頻度が低ければ、より高いラベル加重値LWを算出する。また、パラメーター取得部123は、難易度が低ければ、より低いラベル加重値LWを算出し、難易度が高ければ、より高いラベル加重値LWを算出する。さらに、パラメーター取得部123は、習熟度が高ければ、より低いラベル加重値LWを算出し、習熟度が低ければ、より高いラベル加重値LWを算出する。
 このため、加重値付与部135は、例えば、頻度が高ければ、より小さい補正推論誤差を算出し、頻度が低ければ、より大きい補正推論誤差を算出する。従って、頻度が高い場合、より少ない回数のバックプロパゲーションの繰り返しにより、補正推論誤差が収束する。一方、頻度が低い場合、より多い回数のバックプロパゲーションの繰り返しにより、補正推論誤差が収束する。こうして、ラベルの頻度に応じて、ニューラルネットワークにおける学習度合を一定に維持し、その結果、認識性能を一定に維持することができる。
 また、加重値付与部135は、例えば、難易度が低ければ、より小さい補正推論誤差を算出し、難易度が高ければ、より大きい補正推論誤差を算出する。さらに、加重値付与部135は、例えば、習熟度が高ければ、より小さい補正推論誤差を算出し、習熟度が低ければ、より大きい補正推論誤差を算出する。これらの場合においても、ラベルの頻度の場合と同様、ラベルの難易度又は習熟度に応じて、ニューラルネットワークにおける学習度合を一定に維持し、その結果、認識性能を一定に維持することができる。
 このように、ラベルの特性(頻度、難易度、習熟度等)に応じて、推論誤差を補正することにより、ラベル毎の特性に偏りがある場合においても、一定の認識性能を維持することができるように、学習することができる。
 ここで、図18に示すように、一つのラベル351dについて、推論誤差d(351a)にラベル加重値LW(351b)を乗じて、補正推論誤差d’(351c)が得られる。また、他のラベル352d、353d、・・・、354dについても、同様に、推論誤差dにラベル加重値LWを乗じて、それぞれ、補正推論誤差d’(352c)、(353c)、・・・、(354c)が得られる。
 次に、加重値付与部135は、カテゴリー毎、ラベル毎に算出された補正推論誤差d’を推論誤差転送部136に対して、出力する。
 (c)推論誤差転送部136
 推論誤差転送部136は、加重値付与部135から、補正推論誤差d’を受信する。
 推論誤差転送部136は、受信した補正推論誤差d’を、特徴抽出部132及びラベル推論部134に対して、出力する。
 推論誤差転送部136は、受信する補正推論誤差d’が、所定の収束閾値よりも小さくなるまで、受信した補正推論誤差d’の、特徴抽出部132及びラベル推論部134に対する出力を、繰り返す。
 (d)ニューロン加重値等の補正及び推論の繰返し
 上記のように、推論誤差及び補正推論誤差が、ラベル毎に計算され、全てのラベルについて、補正推論誤差が所定の収束閾値よりも小さくなるまで、ニューロン加重値及びニューロン閾値が補正され、推論が繰り返される。所定の収束閾値は、小さい値であり、望ましくは、ゼロである。つまり、補正推論誤差がゼロになるまで、ニューロン加重値及びニューロン閾値が補正され、推論が繰り返される。さらに、言い換えると、補正推論誤差が小さくなっていくように、ニューロン加重値及びニューロン閾値が補正され、推論が繰り返される。
 特徴学習部133は、ラベル毎に、補正推論誤差d’と所定の収束閾値とを比較し、補正推論誤差d’が所定の収束閾値より大きいか否かを判断する。
 補正推論誤差d’が所定の収束閾値より大きいと判断される場合、ラベル推論部134は、ニューロン加重値及びニューロン閾値を補正する。次に、特徴学習部133は、ラベルの推論及びラベル加重値の付与の処理を繰り返す。
 一方、補正推論誤差d’が所定の収束閾値より大きくないと判断される場合、特徴学習部133は、処理を終了する。
 例えば、図6に示すように、8個のカテゴリーのそれぞれに複数のラベルがあり、合計で40ラベルあるとする。この場合、40ラベルの全てにおいて、補正推論誤差d’が小さくなるように学習を繰り返す。
 学習の収束の速度は、ラベル毎に異なる。例えば、カテゴリー「車種」の中に、「乗用車」、「トラック」、「バス」及び「二輪車」の4ラベルがあると仮定し、正解のラベルが「乗用車」であるとする。図17に示す推論結果によると、正解である「乗用車」の出現確率は、「0.8」であるので、推論誤差は、1-0.8=0.2となる。一方、「二輪車」は、不正解であるので、推論誤差は、0-0.05=-0.05となる。どのラベルについても、推論誤差がゼロとなるように(限りなくゼロに近くなるように)、学習が繰り返される。
 (4)制御部130
 制御部130(制御手段)は、訓練データ入力部131、特徴抽出部132及び特徴学習部133を統一的に制御する。また、制御部130は、訓練データ入力部131、特徴抽出部132及び特徴学習部133を、それぞれ制御する。
 また、制御部130は、ニューラルネットワークの一部である特徴学習部133を制御して、教師ラベル毎に推論誤差を算出させる。
 また、制御部130は、教師ラベル毎の補正推論誤差が所定閾値より小さくなるように、ニューラルネットワークに繰り返し作用させる。
 また、制御部130は、複数の教師ラベルのうちのいずれかが、欠落情報テーブル290から読み出された欠落情報(欠落ラベル)と一致するか否かを判断する。一致すると判断する場合、制御部130は、ニューラルネットワークに対する繰り返し作用を抑制する。
 1.10 欠落情報の処理
 図12に示す欠落情報テーブル290に含まれる欠落情報についての処理について、説明する。
 欠落情報テーブル290に含まれる欠落情報のうち、例えば、画像データ識別子が「A001.jpg」である場合、欠落しているカテゴリーには、「安定走行」が含まれる。一方、カテゴリー「車種」、カテゴリー「メーカー」は、含まれていない。
 上述した通り、ラベル毎に推論誤差(補正推論誤差)が計算されるので、カテゴリー「車種」の4つのラベル「乗用車」、「トラック」、「バス」、「二輪車」において、推論誤差が計算される。また、カテゴリー「メーカー」の4つのラベル「A社」、「B社」、「C社」及び「D社」においても、推論誤差が計算される。
 一方、カテゴリー「安定走行」に、2つのラベル「フラツキ多」及び「車線内走行中」が存在し、これらの2つのラベルが欠落情報である場合、特徴学習部133は、この2つのラベルについて、推論誤差の伝搬を停止し、伝播させない。
 このように、カテゴリー「安定走行」中、2つのラベル「フラツキ多」及び「車線内走行中」について、欠落情報である場合、結果的には、カテゴリー「安定走行」が欠落情報となる。
 また、訓練データの量のバランスが悪い場合、ラベル毎に、欠落の処理の加重値を付けることもできる。例えば、訓練データの中に、カテゴリー「色」についてのラベル「白」が多く存在する場合、車両の色が「白」である車体が写っている複数の画像データのうち、例えば、10個の画像データのうち、1個の画像データについて、推論誤差の伝搬を停止し、伝播させない、としてもよい。
 1.11 実地認識処理部125
 実地認識処理部125は、図15に示すように、制御部140、実地データ入力部141、特徴抽出部142及び推論部143から構成されている。
 (1)実地データ入力部141
 実地データ入力部141(取得手段)は、図2に示すニューラルネットワーク50の入力層50aに相当する。実地データ入力部141は、実地データDB154に記憶されている画像データ289を読み出す。実地データ入力部141は、読み出した画像データ289を、特徴抽出部142に対して、出力する。
 (2)特徴抽出部142
 特徴抽出部142は、図2に示すニューラルネットワーク50の特徴抽出層50bに相当する。特徴抽出部142は、特徴の抽出に先立って、学習結果DB153に保持されているニューロン設定テーブル490から、特徴抽出部142に相応するニューロン加重値及びニューロン閾値を取得し、取得したニューロン加重値及びニューロン閾値を内部に設定する。
 また、特徴抽出部142は、実地データ入力部141から、画像データを受け取る。特徴抽出部142は、受け取った画像データから特徴を抽出する。例えば、特徴抽出部142は、受け取った画像データを構成する画像内から、オブジェクトとして、車両が映っている領域を抽出する。特徴抽出部142は、抽出した特徴を推論部143に対して、出力する。例えば、特徴抽出部142は、車両が映っている領域を推論部143に対して、出力する。
 (3)推論部143
 推論部143は、図19に示すように、ラベル推論部144、推論結果調整部145及び推論結果転送部146から構成されている。
 (a)ラベル推論部144
 ラベル推論部144は、図2に示すニューラルネットワーク50の認識層50cに相当する機能を含んでいる。
 ラベル推論部144は、ラベルの推論に先立って、学習結果DB153に保持されているニューロン設定テーブル490から、ラベル推論部144に相応するニューロン加重値及びニューロン閾値を取得し、取得したニューロン加重値及びニューロン閾値を内部に設定する。
 また、ラベル推論部144は、特徴抽出部142から、例えば、車両が映っている領域を受信する。車両が映っている領域を受信すると、ラベル推論部144は、車両が映っている領域から、推論結果Rとして、全てのカテゴリー及びラベルについて、出現確率を算出する。
 推論結果Rの例を図20に示す。この図に示すように、推論結果Rは、カテゴリー401内の全てのラベル402、403、404、・・・について、それぞれ、出現確率402a、403a、404a、・・・を含み、カテゴリー411内の全てのラベル412、413、414、・・・について、それぞれ、出現確率412a、413a、414a、・・・を含み、・・・、カテゴリー421内の全てのラベル422、・・・について、出現確率422a、・・・を含む。
 ラベル推論部144は、推論結果Rを推論結果調整部145に対して、出力する。
 (b)推論結果調整部145
 推論結果調整部145は、ラベル推論部144から、推論結果Rを受信する。また、推論結果調整部145は、パラメーター取得部123から、全てのカテゴリー内の全てのラベルについて、推論閾値Tを受信する。
 推論結果調整部145(判断手段)は、各カテゴリーの各ラベルについて、推論結果R内の出現確率と推論閾値Tとを比較する。
 出現確率が推論閾値Tより小さい場合、推論結果調整部145は、この出現確率を棄却する。例えば、図20において、カテゴリー401のラベル402について、出現確率402aは、推論閾値Ta405より小さいので、棄却される。また、カテゴリー401のラベル404について、出現確率404aは、推論閾値Tb415より小さいので、棄却される。
 一方、出現確率が推論閾値Tと等しいか、又は、出現確率が推論閾値Tより大きい場合、推論結果調整部145は、この出現確率を採用する。例えば、図20において、カテゴリー401のラベル403について、出現確率403aは、推論閾値Ta405より大きいので、採用される。
 上記の通り、パラメーター取得部123は、例えば、ラベルの頻度が高ければ、より低い推論閾値Tを算出し、頻度が低ければ、より高い推論閾値Tを算出する。このため、頻度が高いラベルについては、より低く算出された推論閾値と比較した場合であっても、出現確率が採用される可能性が高くなる。一方、頻度が低いラベルについては、より低く算出された推論閾値と比較した場合、出現確率が棄却される可能性が高くなる。
 また、パラメーター取得部123は、難易度が低ければ、より低い推論閾値Tを算出し、難易度が高ければ、より高い推論閾値Tを算出する。さらに、パラメーター取得部123は、習熟度が高ければ、低い推論閾値Tを算出し、習熟度が低ければ、より高い推論閾値Tを算出する。これらの場合においても、頻度と同様である。
 このように、推論結果調整部145は、カテゴリー毎に、採用する出現確率と棄却する出現確率を決定し、採用する出現確率に対応するラベルを採用する。
 こうして、ラベルの特性(頻度、難易度、習熟度等)に応じて、推論閾値を補正することにより、ラベル毎の特性に偏りがある場合においても、一定の認識性能を維持することができる。
 また、推論結果調整部145は、カテゴリー内の全ての出現確率を棄却する場合、そのカテゴリーについて、認識不可能と決定する。例えば、図20において、カテゴリー411の全てのラベルについて、出現確率412a、413a、414a、・・・は、推論閾値Tb415より小さいので、棄却される。
 ここで、推論結果調整部145は、カテゴリー毎に、採用する出現確率が複数、存在する場合、最も高い出現確率を採用し、その他の出現確率を棄却する。こうして、推論結果調整部145は、最も高い出現確率に対応するラベルを採用する。
 最終的に、推論結果調整部145は、全てのカテゴリーの各々について、一つのラベルを決定し、又は、当該カテゴリーについて認識不可能と決定する。例えば、図20において、カテゴリー401のラベル403について、出現確率403aが採用される。また、カテゴリー411について、認識不可能(ラベル不明)416と決定される。また、カテゴリー421のラベル422について、出現確率422aが採用される。
 このようにして、推論結果調整部145は、全てのカテゴリーの各々について、決定された一つのラベル、又は、当該カテゴリーについて認識不可能を示す情報を含む推論結果R’を生成する。
 推論結果調整部145により生成される最終認識結果440(推論結果R’)を図21に示す。この図に示すように、最終認識結果440は、複数の認識情報441を含み、各認識情報441は、カテゴリー442及びラベル443から構成される。
 複数の認識情報441に含まれる複数のカテゴリーは、それぞれ、図6に示す複数のカテゴリーに対応している。また、複数の認識情報441に含まれる複数のラベルは、それぞれ、図6に示す各カテゴリー内のラベルに一致し、又は、不明(認識不可能)を示す情報444を含む。
 推論結果調整部145は、このようにして生成した推論結果R’を推論結果転送部146に対して、出力する。
 (c)推論結果転送部146
 推論結果転送部146は、推論結果調整部145から、推論結果R’を受信する。推論結果R’を受信すると、推論結果転送部146は、受信した推論結果R’を推論結果出力部126に対して、出力する。
 (4)推論結果出力部126
 推論結果出力部126は、推論結果転送部146から、推論結果R’を受信する。推論結果R’を受信すると、推論結果出力部126は、受信した推論結果R’を、ネットワーク通信回路111を介して、外部の情報端末に対して、送信する。
 (5)制御部140
 制御部140(制御手段)は、実地データ入力部141、特徴抽出部142及び推論部143を統一的に制御する。また、制御部140は、実地データ入力部141、特徴抽出部142及び推論部143をそれぞれ制御する。
 また、制御部140は、実地データ入力部141により読み出した画像データに対して、ラベル毎に推論結果を算出するように、ニューラルネットワークを制御する。
 1.12 学習認識装置10における動作
 (1)訓練認識処理部124における動作
 訓練認識処理部124における動作について、図22に示すフローチャートを用いて説明する。
 なお、通常、フローチャートは、時系列に沿った手順を説明するものであるが、ニューラルネットワークの性質上、以下に示すフローチャートの手順は、必ずしも、時系列に沿った手順ではない場合がある。特に、以下のステップS104からS113における訓練ラベル毎の繰り返しの処理については、訓練ラベル毎の処理が、それぞれ行われることを機能的に表しているのであって、時系列に沿って、処理が進むとは限らないので、注意を要する。図23に示すフローチャートについても、同様である。
 制御部140は、訓練データDB151内に保持されている画像データ毎に、ステップS102~S113を繰り返す(ステップS101~S114)。
 次に、ステップS102~S113の各々について、説明する。
 訓練データ入力部131は、訓練データDB151から、一つの画像データを読み出す(ステップS102)。
 特徴抽出部132は、画像データから特徴を抽出する(ステップS103)。
 特徴学習部133は、訓練データテーブル230内の、当該画像データに対応する訓練データに含まれる訓練ラベル毎に、ステップS105~S111を繰り返す(ステップS104~S113)。
 次に、ステップS105~S111の各々について、説明する。
 ラベル推論部134は、ラベルを推論する(ステップS105)。
 次に、ラベル推論部134は、推論誤差dを算出する(ステップS106)。
 次に、パラメーター取得部123は、訓練ラベル毎にラベル加重値LWを算出する(ステップS107)。
 次に、加重値付与部135は、推論誤差dにラベル加重値LWを乗じて、補正推論誤差d’を算出する。
 補正推論誤差d’=推論誤差d×ラベル加重値LW  (ステップS108)
 特徴学習部133は、欠落情報テーブル290を参照し(ステップS109)、当該ラベルが欠落情報か否かを判断する(ステップS110)。欠落情報であると判断される場合(ステップS110で「YES」)、特徴学習部133は、ステップS113に制御を移す。
 一方、欠落情報でないと判断される場合(ステップS110で「NO」)、特徴学習部133は、補正推論誤差d’と所定の収束閾値とを比較し、補正推論誤差d’が所定の収束閾値より大きいか否かを判断する(ステップS111)。
 補正推論誤差d’が所定の収束閾値より大きいと判断される場合(ステップS111で「>」)、ラベル推論部134は、ニューロン加重値及びニューロン閾値を補正する(ステップS112)。次に、特徴学習部133は、ステップS105に制御を移し、処理を繰り返す。
 一方、補正推論誤差d’が所定の収束閾値より大きくないと判断される場合(ステップS111で「≦」)、特徴学習部133は、ステップS113に制御を移す。
 このように、推論誤差及び補正推論誤差は、ラベル毎に計算され、全てのラベルについて、補正推論誤差が所定の収束閾値より小さくなるように、ニューロン加重値及びニューロン閾値が補正され、推論が繰り返される。
 (2)実地認識処理部125における動作
 実地認識処理部125における動作について、図23に示すフローチャートを用いて説明する。
 実地データ入力部141は、実地データDB154に記憶されている画像データ289を読み出す。特徴抽出部142は、読み出した画像データから特徴量を抽出する(ステップS131)。
 制御部140は、図6に示す全てのカテゴリーについて、カテゴリー毎に、ステップS133~S140を繰り返す(ステップS132~S141)。
 次に、ステップS133~S140の各々について、説明する。
 ラベル推論部144は、カテゴリー内で、ラベルを推論する(ステップS133)。
 推論部143は、ラベル毎に、ステップS135~S138を繰り返す(ステップS134~S139)。
 次に、ステップS135~S138の各々について、説明する。
 パラメーター取得部123は、推論閾値Tを算出する(ステップS135)。
 推論結果調整部145は、各カテゴリーの各ラベルについて、推論結果R内の出現確率と推論閾値Tとを比較する(ステップS136)。
 推論結果が推論閾値Tと等しい又は推論結果が推論閾値Tより大きい場合(ステップS136で「≧」)、推論結果調整部145は、当該カテゴリーのラベルとして、推論結果の出現確率を採用する(ステップS137)。
 一方、推論結果が推論閾値Tより小さい場合(ステップS136で「<」)、推論結果調整部145は、推論結果の出現確率を棄却する(ステップS138)。
 ラベル毎の繰り返しが終了すると(ステップS139)、推論結果調整部145は、一つのカテゴリーについて、一つのラベルを決定し、又は、当該カテゴリーについて認識不可能と決定する(ステップS140)。
 カテゴリー毎の繰り返しが終了すると(ステップS141)、推論結果出力部126は、推論結果R’を出力する(ステップS142)。
 1.13 各推論対象物について設定されるべきカテゴリーのパターン
 上記においては、学習認識装置10における推論の対象物として、画像内の「車両」オブジェクトを用いて説明している。
 学習認識装置10における推論の対象物は、画像内の「車両」には、限らない。図24に示すように、例えば、「食品」、「工業製品」、「植物」、「水産物」、「動物」、「人」等であってもよい。
 また、「食品」についてのラベルは、例えば、「種類」、「色」、「大きさ」、「品質レベル」、「鮮度」等のカテゴリーに分類できる。「工業製品」についてのラベルは、例えば、「種類」、「色」、「形」、「傷有無」、「生産工程の段階」等のカテゴリーに分類できる。その他、「植物」、「水産物」、「動物」、「人」等についてのラベルは、図24に示すカテゴリーに分類できる。
 このように、学習認識装置10における学習及び認識は、これらの対象物に対しても実施可能である。
 1.14 まとめ
 訓練認識処理部124によると、ラベル毎の学習特性に偏りがある場合においても、一定の認識性能を維持できるように、学習させることができる。
 また、実地認識処理部125によると、ラベル毎の学習特性に偏りがある場合においても、一定の認識性能を維持できる。
 2.その他の変形例
 本発明について、上記の実施の形態に基づいて説明しているが、上記の実施の形態に限定されない。以下に示すようにしてもよい。
 (1)上記の実施の形態によると、学習認識装置10は、訓練認識処理部124及び実地認識処理部125を備えた一台の装置から構成されている。
 しかし、この態様には、限定されない。
 本開示の一つの態様は、一台の学習認識装置10ではなく、訓練認識処理部124を備える学習装置と、実地認識処理部125を備える認識装置とから構成される学習認識システムであるとしてもよい。学習装置と認識装置とは、ネットワークを介して、接続されている。
 具体的には、学習装置は、図1に示すバスB1に接続されたCPU101、ROM102、RAM103、記憶部104及びネットワーク通信回路111と、バスB2に接続されたGPU105、ROM106、RAM107とから構成されている。バスB1とバスB2は、相互に接続されている。
 また、認識装置は、図1に示すバスB1に接続されたCPU101、ROM102、RAM103、記憶部104及びネットワーク通信回路111と、バスB3に接続されたGPU108、ROM109、RAM110とから構成されている。バスB1とバスB3は、相互に接続されている。
 学習装置は、学習結果DBの内容を、ネットワークを介して、認識装置に対して送信する。認識装置は、学習結果DBの内容を受信し、受信した内容により、実地認識処理部を学習させる。
 (2)上記の実施の形態の学習認識装置10における学習及び認識の対象は、画像データである。
 しかし、この態様には、限定されない。
 (a)学習認識装置10における学習及び認識の対象は、音声データであるとしてもよい。この場合、カテゴリーの例は、「音楽」、「人の声」、「自然の音」等であるとしてもよい。
 また、カテゴリー「音楽」についてのラベルの例は、「クラシック音楽」、「民族音楽」、「ポップス」、「ラテン音楽」等である。また、カテゴリー「人の声」についてのラベルの例は、「ニュース音声」、「講演会の音声」、「会話の音声」等である。また、カテゴリー「自然の音」についてのラベルの例は、「鳥の鳴き声」、「風の音」、「川の流れの音」等である。
 また、音声データは、介護記録、看護記録等であるとしてもよい。音声データは、例えば、患者が自身の症状について話す自身の音声からなる。音声データの具体例は、「朝から鼻水と咳が止まらなくて、食欲は、まあまあ、あるけど、便は出ていません。検温はしていないけど、熱はないと思う。」である。音声データからカテゴリー「症状」、「食欲」、「排泄」等が推論される。カテゴリー「症状」についてのラベルの例は、「発熱」、「咳」、「のどの痛み」等である。カテゴリー「食欲」についてのラベルの例は、「ある」、「中程度」、「ない」等である。カテゴリー「排泄」についてのラベルの例は、「ある」、「中程度」、「ない」等である。
 (b)学習認識装置10における学習及び認識の対象は、自然言語処理における文字データであるとしてもよい。この場合、カテゴリーの例は、「会話」、「文学」、「新聞」、「論文」等であるとしてもよい。また、カテゴリー「会話」についてのラベルの例は、「日本語」、「英語」、「イタリア語」等である。また、カテゴリー「文学」についてのラベルの例は、「日本の現代文学」、「日本の近代文学」、「日本の中世文学」、「日本の古代文学」等である。また、カテゴリー「新聞」についてのラベルの例は、「政治ニュース」、「経済ニュース」、「科学ニュース」等である。
 また、文字データは、介護記録、看護記録等の文字データであるとしてもよい。文字データは、例えば、看護師が患者の症状について、文字により記録したものである。文字データの具体例は、「朝から鼻水と咳が止まらない。食欲は、まあまあ、ある。便は出ていない。検温はしていないが、熱はない。」である。文字データからカテゴリー「症状」、「食欲」、「排泄」等が推論される。各カテゴリーについてのラベルの例は、上記の通りである。
 (3)実施の形態においては、パラメーター取得部123は、頻度情報、難易度情報及び習熟度情報を用いて、つまり、教師ラベルの学習特性に基づいて、各カテゴリー内の各ラベルについて、ラベル加重値を算出している。
 しかし、これには限定されない。頻度情報、難易度情報及び習熟度情報を用いて、人が、各カテゴリー内の各ラベルについて、ラベル加重値を決定してもよい。例えば、情報処理装置(具体的には、パーソナルコンピューター等)は、その利用者から、各カテゴリー内の各ラベルについて、ラベル加重値の入力を受け付ける。情報処理装置は、入力を受け付けたラベル加重値を、学習認識装置10に対して、送信する。学習認識装置10のパラメーター取得部123は、ラベル加重値を受信し、受信したラベル加重値を特徴学習部133の加重値付与部135に対して出力する。
 (4)実施の形態においては、パラメーター取得部123は、頻度情報、難易度情報及び習熟度情報を用いて、つまり、教師ラベルの学習特性に基づいて、各カテゴリー内の各ラベルについて、推論閾値を算出している。
 しかし、これには限定されない。頻度情報、難易度情報及び習熟度情報を用いて、人が、各カテゴリー内の各ラベルについて、推論閾値を決定してもよい。例えば、情報処理装置(具体的には、パーソナルコンピューター等)は、その利用者から、各カテゴリー内の各ラベルについて、推論閾値の入力を受け付ける。情報処理装置は、入力を受け付けた推論閾値を、学習認識装置10に対して、送信する。学習認識装置10のパラメーター取得部123(閾値取得手段)は、推論閾値を受信(取得)し、受信した推論閾値を実地認識処理部125の推論部143に対して出力する。
 また、推論閾値は、学習特性に基づいて算出される形態だけでなく、上記のように、事前の情報に基づいて手動により、設定してもよいし、また、パラメーター取得部123(閾値取得手段)は、次に示すように、何らかの変動している外部要因に基づいて動的に推論閾値を生成(算出)して設定してもよい。
 学習認識装置10の運用、つまり、実地認識処理部125の運用を開始した後、推論閾値を生成するパターンとして、次のような場合がある。
 ここでは、例えば、野球場等の公共施設に複数のカメラが設置されているとする。複数のカメラは、それぞれ、グラウンド、観客席、野球場の入口、野球場の周囲等を撮影して、画像(静止画、又は、動画)を表した画像データを得る。こうして、得られた多数の画像データは、学習認識装置10の実地データDB154に格納される。学習認識装置10の実地認識処理部125は、実地データDB154に格納された多数の画像データに対して、認識処理を行う。なお、公共施設は、野球場には限定されない。その他のスポーツが行われる競技場、演劇が行われる劇場、映画が上映される映画館等において、適用してもよい。
 ここで、実地認識処理部125は、例えば、実地データDB154に格納された多数の画像データを用いて、画像データに写った観客の画像により、図24に示すように、群衆としてカテゴリー「密集人数」、「年齢層分布」、「関係性」等を認識し、また、カテゴリー毎にラベルを認識する。
 この場合、パラメーター取得部123は、例えば、推論閾値を次のようにして、動的に生成してもよい。
 (a)同じ野球場に設置されている複数のカメラのうち、特定のカメラから送信されたチューニング情報を用いて、パラメーター取得部123は、推論閾値を生成する。具体的には、複数のカメラのうち、野球場に入場する観客の顔が、精度よく写る、入口付近に設置されたカメラ(特定のカメラ)から得られた画像データを用いて、一人一人の観客の年齢を認識し、年齢層毎に(つまり、10代、20代、30代等)に、その頻度を集計する。パラメーター取得部123は、こうして集計した頻度に応じて、年齢層毎(つまり、ラベル毎)の推論閾値を生成してもよい。
 (b)同じ野球場に設置されている複数のカメラのうち、西日、雨滴等の外乱を受ける場所に設置されているカメラから得られる画像データについては、天候、季節、時刻等によって、明暗が変わることによるチューニング情報を用いて、パラメーター取得部123は、推論閾値を生成してもよい。例えば、パラメーター取得部123は、天候、季節、時刻(ラベル)等に応じて明暗情報により色判断の推論閾値を生成してもよい。
 (c)例えば、パラメーター取得部123は、野球場への入場者数、野球場の観客席における混雑度等のチューニングする情報を用いて、推論閾値を生成してもよい。一例として、パラメーター取得部123は、野球場の観客席が混んでいるときは、オクリュージョンが多数発生(ラベル)と判断し、画像の中で、観客席の下段に着席している観客の上半身やその座席の背もたれ等により、その上段に着席している観客の下半身は隠され、上段の観客の下半身の画像について認識することは、苦手と判断して、推論閾値を生成してもよい。
 (d)例えば、野球場に設置されたカメラから得られた画像データにより、学習認識装置10の訓練認識処理部124は、現場学習を実施し、得られた現場学習により、フィードバックするチューニング情報を用いて、パラメーター取得部123は、推論閾値を生成してもよい。つまり、現場に依存するような認識性能から推論閾値を生成してもよい。
 具体的には、訓練認識処理部124は、複数のカメラのうち、野球場に入場する観客の顔が、精度よく写る、入口付近に設置されたカメラ(特定のカメラ)から得られた画像データを用いて、一人一人の観客の年齢及びその性別を認識して学習する。パラメーター取得部123は、この学習結果に応じて、カテゴリー「観客の関係性」(そのラベルは、「家族」、「カップル」、「友人」、「仕事関係」)についての、ラベル毎の推論閾値を生成してもよい。次に、実地認識処理部125は、観客席を写すカメラから得られた画像データを用いて、生成された推論閾値に従って、「観客の関係性」を認識する。
 (5)実施の形態においては、推論誤差及び補正推論誤差が、ラベル毎に計算され、全てのラベルについて、補正推論誤差がゼロになるまで、ニューロン加重値及びニューロン閾値が補正され、推論が繰り返される。
 なお、補正推論誤差が収束してくると、所定の繰り返し回数に達した場合に、推論の繰り返しを停止してもよい。また、補正推論誤差が所定の収束閾値に達した場合に、推論の繰り返しを停止してもよい。
 (6)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
 (7)本開示の一態様は、ニューラルネットワークに学習をさせる学習装置であって、教師データ及び対応する複数の教師ラベルを取得する取得手段と、前記教師データについて、前記教師ラベル毎に推論誤差を算出するように前記ニューラルネットワークを制御する制御手段と、教師ラベル毎に算出された前記推論誤差を、前記教師ラベル毎に、当該教師ラベルの学習特性に基づいて設定された加重値により補正して補正推論誤差を算出する補正手段とを備え、前記制御手段は、前記教師ラベル毎の補正推論誤差が小さくなっていくように、前記ニューラルネットワークに繰り返し作用させる。
 ここで、さらに、前記教師ラベル毎に、当該教師ラベルの学習特性に基づいて、前記加重値を算出する算出手段を備える、としてもよい。
 ここで、前記学習装置において、複数の教師データについて、学習がなされ、前記複数の教師データの各々には、複数の教師ラベルが対応付けられており、前記取得手段は、さらに、教師ラベル毎に、その出現頻度を示す頻度情報を取得し、前記算出手段は、取得した頻度情報に基づいて、前記加重値を算出してもよい。
 ここで、前記複数の教師ラベルの各々について、認識の難易度が異なり、前記取得手段は、さらに、教師ラベル毎に、その難易度を示す難易度情報を取得し、前記算出手段は、取得した難易度情報に基づいて、前記加重値を算出してもよい。
 ここで、前記複数の教師ラベルの各々について、前記ニューラルネットワークにおける習熟度が異なり、前記取得手段は、さらに、教師ラベル毎に、その習熟度を示す習熟度情報を取得し、前記算出手段は、取得した習熟度情報に基づいて、前記加重値を算出してもよい。
 ここで、前記教師データには、複数のカテゴリーが設定されており、前記複数の教師ラベルのうち、一部の教師ラベルは、複数のカテゴリーのうちの一つのカテゴリーに属する、としてもよい。
 ここで、前記取得手段は、さらに、前記ニューラルネットワークにおいて、前記教師データから認識できない欠落ラベルを取得し、前記制御手段は、さらに、前記複数の教師ラベルのうちのいずれかが、前記欠落ラベルと一致するか否かを判断し、一致すると判断する場合、前記欠落ラベルについて、前記ニューラルネットワークに対する繰り返し作用を抑制してもよい。
 また、本開示の別の一態様は、ニューラルネットワークに学習をさせる学習装置において用いられる学習方法であって、教師データ及び対応する複数の教師ラベルを取得する取得ステップと、前記教師データについて、前記教師ラベル毎に推論誤差を算出するように前記ニューラルネットワークを制御する制御ステップと、教師ラベル毎に算出された前記推論誤差を、前記教師ラベル毎に、当該教師ラベルの学習特性に基づいて設定された加重値により補正して補正推論誤差を算出する補正ステップとを含み、前記制御ステップは、前記教師ラベル毎の補正推論誤差が小さくなっていくように、前記ニューラルネットワークに繰り返し作用させる。
 また、本開示の別の一態様は、ニューラルネットワークに学習をさせる学習装置において用いられ、コンピューター読み取り可能な記憶媒体に記憶されている学習プログラムであって、前記コンピューターである前記学習装置に、教師データ及び対応する複数の教師ラベルを取得する取得ステップと、前記教師データについて、前記教師ラベル毎に推論誤差を算出するように前記ニューラルネットワークを制御する制御ステップと、教師ラベル毎に算出された前記推論誤差を、前記教師ラベル毎に、当該教師ラベルの学習特性に基づいて設定された加重値により補正して補正推論誤差を算出する補正ステップとを実行させ、前記制御ステップは、前記教師ラベル毎の補正推論誤差が小さくなっていくように、前記ニューラルネットワークに繰り返し作用させる。
 また、本開示の別の態様は、ニューラルネットワークを用いて行う認識により、認識対象であるデータから複数のラベルを取得する認識装置であって、前記データを取得する取得手段と、前記データに対して、前記ラベル毎に推論結果を算出するように前記ニューラルネットワークを制御する制御手段と、前記ラベル毎の推論閾値に基づいて推論結果を出力するか否かを判断する判断手段とを備える。
 ここで、さらに、前記ラベル毎に、推論閾値を取得する閾値取得手段を備え、前記判断手段は、前記ラベル毎に算出された推論結果が、前記推論閾値より小さい場合、前記推論結果を棄却し、前記ラベル毎に算出された推論結果が、前記推論閾値と等しい場合又は前記推論閾値より大きい場合、推論結果を出力してもよい。
 ここで、前記閾値取得手段は、当該ラベルの学習特性に基づいて、前記推論閾値を算出してもよい。
 ここで、前記ニューラルネットワークにおいて、複数の教師データについて、学習がなされ、前記複数の教師データの各々には、複数の教師ラベルが対応付けられており、前記取得手段は、さらに、前記教師ラベル毎に、その頻度を示す頻度情報を取得し、前記閾値取得手段は、取得した頻度情報に基づいて、前記推論閾値を算出してもよい。
 ここで、前記複数のラベルの各々について、認識の難易度が異なり、前記取得手段は、さらに、ラベル毎に、その難易度を示す難易度情報を取得し、前記閾値取得手段は、取得した難易度情報に基づいて、前記推論閾値を算出してもよい。
 ここで、前記複数のラベルの各々について、前記ニューラルネットワークにおける習熟度が異なり、前記取得手段は、さらに、ラベル毎に、その習熟度を示す習熟度情報を取得し、前記閾値取得手段は、取得した習熟度情報に基づいて、前記推論閾値を算出してもよい。
 ここで、前記閾値取得手段は、動的に、前記推論閾値を算出してもよい。
 ここで、前記閾値取得手段は、変動している外部要因に基づいて、前記推論閾値を算出してもよい。
 ここで、前記閾値取得手段は、利用者により入力された前記推論閾値を取得してもよい。
 ここで、前記データには、複数のカテゴリーが設定されており、前記複数のラベルのうち、一部のラベルは、複数のカテゴリーのうちの一つのカテゴリーに属する、としてもよい。
 また、本開示の別の一態様は、ニューラルネットワークを用いて行う認識により、認識対象であるデータから複数のラベルを取得する認識装置において用いられる認識方法であって、前記データを取得する取得ステップと、前記データに対して、前記ラベル毎に推論結果を算出するように前記ニューラルネットワークを制御する制御ステップと、前記ラベル毎の推論閾値に基づいて推論結果を出力するか否かを判断する判断ステップとを含む。
 また、本開示の別の一態様は、ニューラルネットワークを用いて行う認識により、認識対象であるデータから複数のラベルを取得する認識装置において用いられ、コンピューター読み取り可能な記憶媒体に記憶されている認識プログラムであって、コンピューターである前記認識装置に、前記データを取得する取得ステップと、前記データに対して、前記ラベル毎に推論結果を算出するように前記ニューラルネットワークを制御する制御ステップと、前記ラベル毎の推論閾値に基づいて推論結果を出力するか否かを判断する判断ステップとを実行させる。
 また、本開示の別の一態様は、前記学習装置と前記認識装置とから構成される学習認識装置である。
 本開示に係る学習装置は、ラベル毎の学習特性に偏りがある場合においても、一定の認識性能を維持することができるように、学習することができる、という優れた効果を奏し、ニューラルネットワークに学習をさせる技術、特に、一つの教師データに複数の教師ラベルが対応する場合における学習技術として有用である。また、本開示に係る認識装置は、ラベル毎の特性に学習偏りがある場合においても、一定の認識性能を維持することができる、という優れた効果を奏し、ニューラルネットワークにより認識を行う技術、特に、一つの教師データに複数の教師ラベルが対応する場合における認識技術として有用である。
   10  学習認識装置
   50  ニューラルネットワーク
   50a 入力層
   50b 特徴抽出層
   50c 認識層
  101  CPU
  102  ROM
  103  RAM
  104  記憶部
  105  GPU
  106  ROM
  107  RAM
  108  GPU
  109  ROM
  110  RAM
  111  ネットワーク通信回路
  121  主制御部
  122  統括制御部
  123  パラメーター取得部
  124  訓練認識処理部
  125  実地認識処理部
  126  推論結果出力部
  130  制御部
  131  訓練データ入力部
  132  特徴抽出部
  133  特徴学習部
  134  ラベル推論部
  135  加重値付与部
  136  推論誤差転送部
  140  制御部
  141  実地データ入力部
  142  特徴抽出部
  143  推論部
  144  ラベル推論部
  145  推論結果調整部
  146  推論結果転送部

Claims (22)

  1.  ニューラルネットワークに学習をさせる学習装置であって、
     教師データ及び対応する複数の教師ラベルを取得する取得手段と、
     前記教師データについて、前記教師ラベル毎に推論誤差を算出するように前記ニューラルネットワークを制御する制御手段と、
     教師ラベル毎に算出された前記推論誤差を、前記教師ラベル毎に、当該教師ラベルの学習特性に基づいて設定された加重値により補正して補正推論誤差を算出する補正手段とを備え、
     前記制御手段は、前記教師ラベル毎の補正推論誤差が小さくなっていくように、前記ニューラルネットワークに繰り返し作用させる
     学習装置。
  2.  さらに、
     前記教師ラベル毎に、当該教師ラベルの学習特性に基づいて、前記加重値を算出する算出手段を備える請求項1に記載の学習装置。
  3.  前記学習装置において、複数の教師データについて、学習がなされ、
     前記複数の教師データの各々には、複数の教師ラベルが対応付けられており、
     前記取得手段は、さらに、教師ラベル毎に、その出現頻度を示す頻度情報を取得し、
     前記算出手段は、取得した頻度情報に基づいて、前記加重値を算出する
     請求項2に記載の学習装置。
  4.  前記複数の教師ラベルの各々について、認識の難易度が異なり、
     前記取得手段は、さらに、教師ラベル毎に、その難易度を示す難易度情報を取得し、
     前記算出手段は、取得した難易度情報に基づいて、前記加重値を算出する
     請求項2に記載の学習装置。
  5.  前記複数の教師ラベルの各々について、前記ニューラルネットワークにおける習熟度が異なり、
     前記取得手段は、さらに、教師ラベル毎に、その習熟度を示す習熟度情報を取得し、
     前記算出手段は、取得した習熟度情報に基づいて、前記加重値を算出する
     請求項2に記載の学習装置。
  6.  前記教師データには、複数のカテゴリーが設定されており、
     前記複数の教師ラベルのうち、一部の教師ラベルは、複数のカテゴリーのうちの一つのカテゴリーに属する
     請求項1に記載の学習装置。
  7.  前記取得手段は、さらに、前記ニューラルネットワークにおいて、前記教師データから認識できない欠落ラベルを取得し、
     前記制御手段は、さらに、前記複数の教師ラベルのうちのいずれかが、前記欠落ラベルと一致するか否かを判断し、一致すると判断する場合、前記欠落ラベルについて、前記ニューラルネットワークに対する繰り返し作用を抑制する
     請求項1に記載の学習装置。
  8.  ニューラルネットワークに学習をさせる学習装置において用いられる学習方法であって、
     教師データ及び対応する複数の教師ラベルを取得する取得ステップと、
     前記教師データについて、前記教師ラベル毎に推論誤差を算出するように前記ニューラルネットワークを制御する制御ステップと、
     教師ラベル毎に算出された前記推論誤差を、前記教師ラベル毎に、当該教師ラベルの学習特性に基づいて設定された加重値により補正して補正推論誤差を算出する補正ステップとを含み、
     前記制御ステップは、前記教師ラベル毎の補正推論誤差が小さくなっていくように、前記ニューラルネットワークに繰り返し作用させる
     学習方法。
  9.  ニューラルネットワークに学習をさせる学習装置において用いられ、コンピューター読み取り可能な記憶媒体に記憶されている学習プログラムであって、
     前記コンピューターである前記学習装置に、
     教師データ及び対応する複数の教師ラベルを取得する取得ステップと、
     前記教師データについて、前記教師ラベル毎に推論誤差を算出するように前記ニューラルネットワークを制御する制御ステップと、
     教師ラベル毎に算出された前記推論誤差を、前記教師ラベル毎に、当該教師ラベルの学習特性に基づいて設定された加重値により補正して補正推論誤差を算出する補正ステップとを実行させ、
     前記制御ステップは、前記教師ラベル毎の補正推論誤差が小さくなっていくように、前記ニューラルネットワークに繰り返し作用させる
     学習プログラム。
  10.  ニューラルネットワークを用いて行う認識により、認識対象であるデータから複数のラベルを取得する認識装置であって、
     前記データを取得する取得手段と、
     前記データに対して、前記ラベル毎に推論結果を算出するように前記ニューラルネットワークを制御する制御手段と、
     前記ラベル毎の推論閾値に基づいて推論結果を出力するか否かを判断する判断手段と
     を備える認識装置。
  11.  さらに、
     前記ラベル毎に、推論閾値を取得する閾値取得手段を備え、
     前記判断手段は、前記ラベル毎に算出された推論結果が、前記推論閾値より小さい場合、前記推論結果を棄却し、前記ラベル毎に算出された推論結果が、前記推論閾値と等しい場合又は前記推論閾値より大きい場合、推論結果を出力する
     請求項10に記載の認識装置。
  12.  前記閾値取得手段は、当該ラベルの学習特性に基づいて、前記推論閾値を算出する
     請求項11に記載の認識装置。
  13.  前記ニューラルネットワークにおいて、複数の教師データについて、学習がなされ、
     前記複数の教師データの各々には、複数の教師ラベルが対応付けられており、
     前記取得手段は、さらに、前記教師ラベル毎に、その頻度を示す頻度情報を取得し、
     前記閾値取得手段は、取得した頻度情報に基づいて、前記推論閾値を算出する
     請求項12に記載の認識装置。
  14.  前記複数のラベルの各々について、認識の難易度が異なり、
     前記取得手段は、さらに、ラベル毎に、その難易度を示す難易度情報を取得し、
     前記閾値取得手段は、取得した難易度情報に基づいて、前記推論閾値を算出する
     請求項12に記載の認識装置。
  15.  前記複数のラベルの各々について、前記ニューラルネットワークにおける習熟度が異なり、
     前記取得手段は、さらに、ラベル毎に、その習熟度を示す習熟度情報を取得し、
     前記閾値取得手段は、取得した習熟度情報に基づいて、前記推論閾値を算出する
     請求項12に記載の認識装置。
  16.  前記閾値取得手段は、動的に、前記推論閾値を算出する
     請求項11に記載の認識装置。
  17.  前記閾値取得手段は、変動している外部要因に基づいて、前記推論閾値を算出する
     請求項16に記載の認識装置。
  18.  前記閾値取得手段は、利用者により入力された前記推論閾値を取得する
     請求項11に記載の認識装置。
  19.  前記データには、複数のカテゴリーが設定されており、
     前記複数のラベルのうち、一部のラベルは、複数のカテゴリーのうちの一つのカテゴリーに属する
     請求項10に記載の認識装置。
  20.  ニューラルネットワークを用いて行う認識により、認識対象であるデータから複数のラベルを取得する認識装置において用いられる認識方法であって、
     前記データを取得する取得ステップと、
     前記データに対して、前記ラベル毎に推論結果を算出するように前記ニューラルネットワークを制御する制御ステップと、
     前記ラベル毎の推論閾値に基づいて推論結果を出力するか否かを判断する判断ステップとを含む認識方法。
  21.  ニューラルネットワークを用いて行う認識により、認識対象であるデータから複数のラベルを取得する認識装置において用いられ、コンピューター読み取り可能な記憶媒体に記憶されている認識プログラムであって、
     コンピューターである前記認識装置に、
     前記データを取得する取得ステップと、
     前記データに対して、前記ラベル毎に推論結果を算出するように前記ニューラルネットワークを制御する制御ステップと、
     前記ラベル毎の推論閾値に基づいて推論結果を出力するか否かを判断する判断ステップとを実行させるための認識プログラム。
  22.  請求項1に記載の学習装置と請求項10に記載の認識装置とから構成される
     学習認識装置。
PCT/JP2021/017619 2020-05-27 2021-05-10 学習装置、学習方法及び学習プログラム、認識装置、認識方法及び認識プログラム並びに学習認識装置 WO2021241173A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022527634A JPWO2021241173A1 (ja) 2020-05-27 2021-05-10

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2020-092121 2020-05-27
JP2020092122 2020-05-27
JP2020092121 2020-05-27
JP2020-092122 2020-05-27

Publications (1)

Publication Number Publication Date
WO2021241173A1 true WO2021241173A1 (ja) 2021-12-02

Family

ID=78744528

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/017619 WO2021241173A1 (ja) 2020-05-27 2021-05-10 学習装置、学習方法及び学習プログラム、認識装置、認識方法及び認識プログラム並びに学習認識装置

Country Status (2)

Country Link
JP (1) JPWO2021241173A1 (ja)
WO (1) WO2021241173A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018018537A (ja) * 2015-10-30 2018-02-01 株式会社モルフォ 閾値変更装置
JP2018528521A (ja) * 2015-07-31 2018-09-27 クゥアルコム・インコーポレイテッドQualcomm Incorporated メディア分類
JP2020042386A (ja) * 2018-09-07 2020-03-19 株式会社日立製作所 対象データに対して関連付けるラベルを決定する計算機システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018528521A (ja) * 2015-07-31 2018-09-27 クゥアルコム・インコーポレイテッドQualcomm Incorporated メディア分類
JP2018018537A (ja) * 2015-10-30 2018-02-01 株式会社モルフォ 閾値変更装置
JP2020042386A (ja) * 2018-09-07 2020-03-19 株式会社日立製作所 対象データに対して関連付けるラベルを決定する計算機システム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BRUZZONE, L. ET AL.: "Classification of imbalanced remote-sensing data by neural networks", PATTERN RECOGNITION LETTERS, vol. 18, 1997, pages 1323 - 1328, XP004117935, ISSN: 0167-8655, Retrieved from the Internet <URL:https://sci2s.ugr.es/keel/pdf/specific/articulo/bruzzone_classification_1997.pdf> [retrieved on 20210606], DOI: 10.1016/S0167-8655(97)00109-8 *
ZHU, YIXIN ET AL.: "PART-BASED CONVOLUTIONAL NETWORK FOR IMBALANCED AGE ESTIMATION", PROCEEDINGS OF THE 2019 IEEE INTERNATIONAL CONFERENCE ON MULTIMEDIA AND EXPO (ICME, 12 July 2019 (2019-07-12), pages 946 - 951, XP033590371, ISBN: 978-1-5386-9552-4, DOI: 10.1109/ICME.2019.00167 *

Also Published As

Publication number Publication date
JPWO2021241173A1 (ja) 2021-12-02

Similar Documents

Publication Publication Date Title
CN110443143B (zh) 多分支卷积神经网络融合的遥感图像场景分类方法
US11417148B2 (en) Human face image classification method and apparatus, and server
CN106845401B (zh) 一种基于多空间卷积神经网络的害虫图像识别方法
US5245696A (en) Evolution and learning in neural networks: the number and distribution of learning trials affect the rate of evolution
CN109033994B (zh) 一种基于卷积神经网络的人脸表情识别方法
CN110580500A (zh) 一种面向人物交互的网络权重生成少样本图像分类方法
CN108764195A (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
CN111783841B (zh) 基于迁移学习和模型融合的垃圾分类方法、系统及介质
CN111178120B (zh) 一种基于作物识别级联技术的害虫图像检测方法
CN111160189A (zh) 一种基于动态目标训练的深度神经网络人脸表情识别方法
CN109086653A (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
CN110110845B (zh) 一种基于并行多级宽度神经网络的学习方法
CN114842267A (zh) 基于标签噪声域自适应的图像分类方法及系统
KR20190004429A (ko) 신경망 모델에서 입력값에 대한 재학습 여부 결정 방법 및 장치
CN114463675B (zh) 一种水下鱼类群组活动强度识别方法及装置
CN112766413A (zh) 一种基于加权融合模型的鸟类分类方法及系统
CN115393634B (zh) 一种基于迁移学习策略的少样本目标实时检测方法
CN111079790A (zh) 一种构建类别中心的图像分类方法
CN115690534A (zh) 一种基于迁移学习的图像分类模型的训练方法
CN109934835B (zh) 基于深度强化网络邻接连接的轮廓检测方法
CN111275137B (zh) 基于专属孪生网络模型的茶叶验真方法
WO2021241173A1 (ja) 学習装置、学習方法及び学習プログラム、認識装置、認識方法及び認識プログラム並びに学習認識装置
CN111612090B (zh) 基于内容颜色交叉相关的图像情感分类方法
CN116884096B (zh) 一种评估婴幼儿智力发育程度的方法、系统、设备
CN110782408B (zh) 一种基于卷积神经网络的智能美型方法及系统

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022527634

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

Country of ref document: EP

Kind code of ref document: A1