Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7702298B2 - Data classification system, data classification method, program, and method for evaluating machine learning models - Google Patents
[go: Go Back, main page]

JP7702298B2 - Data classification system, data classification method, program, and method for evaluating machine learning models - Google Patents

Data classification system, data classification method, program, and method for evaluating machine learning models Download PDF

Info

Publication number
JP7702298B2
JP7702298B2 JP2021126642A JP2021126642A JP7702298B2 JP 7702298 B2 JP7702298 B2 JP 7702298B2 JP 2021126642 A JP2021126642 A JP 2021126642A JP 2021126642 A JP2021126642 A JP 2021126642A JP 7702298 B2 JP7702298 B2 JP 7702298B2
Authority
JP
Japan
Prior art keywords
label
data
labels
model
correct
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2021126642A
Other languages
Japanese (ja)
Other versions
JP2023021647A (en
Inventor
隆人 小▲柳▼
涼 君塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Comware Corp
Original Assignee
NTT Comware Corp
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 NTT Comware Corp filed Critical NTT Comware Corp
Priority to JP2021126642A priority Critical patent/JP7702298B2/en
Publication of JP2023021647A publication Critical patent/JP2023021647A/en
Application granted granted Critical
Publication of JP7702298B2 publication Critical patent/JP7702298B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Description

本発明は、データ分類システム、データ分類方法、プログラム、機械学習モデルの評価方法に関する。 The present invention relates to a data classification system, a data classification method , a program, and a method for evaluating a machine learning model.

従来より、機械学習モデルにより対象データを分類する技術が知られている。この分類型の機会学習モデルとしては、複数のラベルのうち一つのラベルに対象データを分類するシングルラベルモデルと、対象データを複数のラベルに同時に分類するマルチラベルモデルとがある。 Technologies for classifying target data using machine learning models have been known for some time. Classification-type machine learning models include single-label models that classify target data into one of multiple labels, and multi-label models that simultaneously classify target data into multiple labels.

シングルラベルモデルおよびマルチラベルモデルに関する技術としては、例えば、特許文献1および2が知られている。特許文献1には、マルチラベルモデルの分類を改善するためにしきい値および/またはスケールファクタを決定することが記載されている。特許文献2には、マルチラベルモデルおよびシングルラベルモデルの教師データを作成するために、入力データに関して、ラベルごとに、入力データの内容がラベルに合致することを示す正評価、入力データの内容がラベルに合致しないことを示す負評価、及び、学習対象ラベルから除外することを示す無視評価の何れか1つを取得して、教師データを作成し、学習装置は、学習用のニューラルネットワークを学習する際に、正評価又は負評価のラベルの認識スコアと正評価又は負評価の正解スコアとが近づくように中間層の重み係数を調整し、かつ、無視評価のラベルの認識スコアが中間層の重み係数の調整に影響を与えないようにする、ことが記載されている。 For example, Patent Documents 1 and 2 are known as techniques related to single-label models and multi-label models. Patent Document 1 describes determining a threshold and/or a scale factor to improve classification of a multi-label model. Patent Document 2 describes that in order to create training data for a multi-label model and a single-label model, for input data, one of a positive evaluation indicating that the content of the input data matches the label, a negative evaluation indicating that the content of the input data does not match the label, and a disregard evaluation indicating that the input data is to be excluded from the learning target labels is obtained for each label, and the training data is created, and when training a neural network for training, the learning device adjusts the weight coefficient of the intermediate layer so that the recognition score of the positive evaluation or negative evaluation label approaches the correct answer score of the positive evaluation or negative evaluation, and prevents the recognition score of the disregard evaluation label from affecting the adjustment of the weight coefficient of the intermediate layer.

特表2018-528521号公報Special table 2018-528521 publication 国際公開第2017/073373号International Publication No. 2017/073373

図14および図15は、シングルラベルモデルについて説明するための図である。シングルラベルモデルは、複数のラベルにおける各ラベルに対して出力の総和が1となるように学習および予測を行う。このため、図14(A)に示すようにラベル1~4のうち正解ラベルがラベル3である場合には正確に正解ラベルとしてラベル3を出力することができる。 Figures 14 and 15 are diagrams for explaining the single label model. The single label model performs learning and prediction so that the sum of the outputs for each of multiple labels is 1. Therefore, as shown in Figure 14 (A), when the correct label among labels 1 to 4 is label 3, label 3 can be accurately output as the correct label.

しかし、図14(B)に示すように、シングルラベルモデルは、対象データに対して複数のラベル(例えばラベル2とラベル3)が該当するようなマルチラベリング問題に対して適用することができない。すなわち、シングルラベルモデルは、正解ラベルがラベル2および3であるが、スコアが最も高いラベル3を正解ラベルとして出力してしまう。また、シングルラベルモデルにおいては、各ラベルの総和を1にするため、ラベル2とラベル3のスコアが小さくなる。 However, as shown in FIG. 14(B), the single-label model cannot be applied to multi-labeling problems where multiple labels (e.g., labels 2 and 3) apply to the target data. In other words, the single-label model outputs label 3, which has the highest score, as the correct label, even though the correct labels are labels 2 and 3. Also, in the single-label model, the sum of the scores for each label is set to 1, so the scores for labels 2 and 3 are small.

図15に示すように、シングルラベルモデルにおいては正解ラベルが多くなるほど各正解ラベルのスコアが小さくなってしまう。このため、シングルラベルモデルによって出力された各ラベルのスコアとしきい値とを比較して正解ラベルを抽出することは困難となる。さらに、シングルラベルモデルから出力された正解ラベルのスコアとそれ以外のラベルのスコアとの差に基づいてしきい値を計算する必要があるため、学習させることができないという問題がある。 As shown in Figure 15, in a single-label model, the more correct labels there are, the smaller the score of each correct label becomes. This makes it difficult to extract the correct label by comparing the score of each label output by the single-label model with a threshold value. Furthermore, since it is necessary to calculate the threshold value based on the difference between the score of the correct label output by the single-label model and the scores of the other labels, there is a problem in that it is not possible to train the model.

図16は、マルチラベルモデルについて説明するための図である。マルチラベルモデルは、各ラベルに対してスコアが0~1の範囲となるように学習および予測を行う。このため、図16(A)のように正解ラベルがラベル3の1つである場合や、図16(B)のように正解ラベルがラベル2,3の2つである場合でも、高いスコアを出力することができる。また、マルチラベルモデルでは、正解ラベルの数を考慮せずに一つのしきい値を設定しても、高い精度で正解ラベルを出力することができる。しかし、例えば文書等の対象データを分類するための予測モデルとして、シングルラベルモデルを用いることが一般的である。しかし、シングルラベルモデルは、複数の正解ラベルを抽出することが困難であるという問題がある。 FIG. 16 is a diagram for explaining a multi-label model. The multi-label model performs learning and prediction so that the score for each label is in the range of 0 to 1. Therefore, even if the correct label is label 3 as in FIG. 16(A) or the correct labels are labels 2 and 3 as in FIG. 16(B), a high score can be output. Furthermore, even if a single threshold value is set without considering the number of correct labels, the multi-label model can output correct labels with high accuracy. However, it is common to use a single-label model as a prediction model for classifying target data such as documents. However, the single-label model has a problem in that it is difficult to extract multiple correct labels.

対象データに該当する正解ラベルが一つであるか複数であるのかが不明である場合、シングルラベルモデルの予測結果とマルチラベルモデルの予測結果の両方を検証することが考えられる。しかし、マルチラベルモデルのためのアノテーション作業と、シングルラベルモデルのためのアノテーション作業とを個別に行う必要があるために、作業負担が大きくなるという問題がある。また、マルチラベルモデルのためのラベルとシングルラベルモデルのためのラベルとが別々であるので、マルチラベルモデルの予測精度とシングルラベルモデルの予測精度を比較することができないという問題がある。 When it is unclear whether the target data has one or multiple correct labels, it is possible to verify both the prediction results of the single-label model and the prediction results of the multi-label model. However, there is a problem in that annotation work for the multi-label model and annotation work for the single-label model must be performed separately, which increases the workload. In addition, because the labels for the multi-label model and the single-label model are separate, there is a problem in that it is not possible to compare the prediction accuracy of the multi-label model with that of the single-label model.

本発明は、上記の課題に鑑みてなされたものであって、アノテーション作業の負担を増加させることなく、複数のラベルから一つの正解ラベルを予測する処理と複数のラベルから複数の正解ラベルを予測する処理とを行うことができるデータ分類システム、データ分類方法、プログラム、機械学習モデルの評価方法を提供することを目的としている。 The present invention has been made in consideration of the above-mentioned problems, and aims to provide a data classification system, a data classification method , a program, and a method for evaluating a machine learning model that can predict one correct label from multiple labels and predict multiple correct labels from multiple labels without increasing the burden of annotation work.

(1)本発明の一態様は、アノテーション端末から取得した一つの学習データ対して複数の正解ラベルおよび第1の値を持つフラグを付与する情報を記憶するマルチラベル記憶部と、対象データを入力した場合に複数の正解ラベルを出力する第1の機械学習モデルを学習させる第1の学習データのうち前記フラグの値が第1の値となっている複数のラベルから一つの新たな統合ラベルを生成し、前記統合ラベルのフラグを前記第1の値に設定し、前記統合ラベルの元になった複数のラベルのフラグを第2の値に設定することで、前記統合ラベルを含む第2の学習データに変換する変換部と、前記変換部により変換された前記第2の学習データを用いて、対象データを入力した場合に一つの正解ラベルを出力する第2の機械学習モデルを学習させる学習部と、前記第2の機械学習モデルに、対象データを入力し、前記第2の機械学習モデルから出力された正解ラベルを含む予測結果を取得する予測部と、前記予測部により取得した正解ラベルが前記統合ラベルである場合には前記統合ラベルの元になった複数のラベルのフラグを前記第1の値に変換し、前記予測結果から前記統合ラベルを削除する逆変換部と、を備える、データ分類システムである。 (1) One aspect of the present invention is a data classification system including: a multi-label storage unit that stores information for assigning multiple correct labels and a flag having a first value to one piece of learning data acquired from an annotation terminal; a conversion unit that generates one new integrated label from multiple labels in first learning data for training a first machine learning model that outputs multiple correct labels when target data is input, the multiple labels having the flag value of the first value being one new integrated label, sets the flag of the integrated label to the first value, and sets flags of the multiple labels that are the basis of the integrated label to a second value, thereby converting the first learning data into second learning data including the integrated label; a learning unit that uses the second learning data converted by the conversion unit to train a second machine learning model that outputs one correct label when target data is input; a prediction unit that inputs target data to the second machine learning model and acquires a prediction result including the correct label output from the second machine learning model; and an inverse conversion unit that, when the correct label acquired by the prediction unit is the integrated label, converts the flags of the multiple labels that are the basis of the integrated label to the first value and deletes the integrated label from the prediction result .

(2)本発明の一態様は、記憶部が、アノテーション端末から取得した一つの学習データ対して複数の正解ラベルおよび第1の値を持つフラグを付与する情報を記憶するステップと、学習装置が、対象データを入力した場合に複数の正解ラベルを出力する第1の機械学習モデルを学習させる第1の学習データのうち前記フラグの値が第1の値となっている複数のラベルから一つの新たな統合ラベルを生成し、前記統合ラベルのフラグを前記第1の値に設定し、前記統合ラベルの元になった複数のラベルのフラグを第2の値に設定することで、前記統合ラベルを含む第2の学習データに変換するステップと、前記学習装置が、変換された前記第2の学習データを用いて、対象データを入力した場合に一つの正解ラベルを出力する第2の機械学習モデルを学習させるステップと、予測装置が、前記第2の機械学習モデルに、対象データを入力し、前記第2の機械学習モデルから出力された正解ラベルを含む予測結果を取得するステップと、前記予測装置が、取得した正解ラベルが前記統合ラベルである場合には前記統合ラベルの元になった複数のラベルのフラグを前記第1の値に変換し、前記予測結果から前記統合ラベルを削除するステップと、を含むデータ分類方法、である。 (2) One aspect of the present invention includes a step in which a storage unit stores information for assigning multiple correct labels and a flag having a first value to one piece of learning data acquired from an annotation terminal; and a learning device converts the first learning data, which is used to train a first machine learning model that outputs multiple correct labels when target data is input , into second learning data including the integrated label by generating a new integrated label from multiple labels in which the flag value is a first value, setting the flag of the integrated label to the first value, and setting flags of the multiple labels that are the basis of the integrated label to a second value. a step of the learning device using the converted second learning data to train a second machine learning model that outputs one correct label when target data is input; a step of the prediction device inputting the target data to the second machine learning model and acquiring a prediction result including the correct label output from the second machine learning model; and a step of the prediction device, if the acquired correct label is the integrated label, converting flags of multiple labels that are the basis of the integrated label to the first value and deleting the integrated label from the prediction result .

(3)本発明の一態様は、コンピュータに、アノテーション端末から取得した一つの学習データ対して複数の正解ラベルおよび第1の値を持つフラグを付与する情報を記憶するステップと、対象データを入力した場合に複数の正解ラベルを出力する第1の機械学習モデルを学習させる第1の学習データのうち前記フラグの値が第1の値となっている複数のラベルから一つの新たな統合ラベルを生成し、前記統合ラベルのフラグを前記第1の値に設定し、前記統合ラベルの元になった複数のラベルのフラグを第2の値に設定することで、前記統合ラベルを含む第2の学習データに変換するステップと、変換された前記第2の学習データを用いて、対象データを入力した場合に一つの正解ラベルを出力する第2の機械学習モデルを学習させるステップと、前記第2の機械学習モデルに、対象データを入力し、前記第2の機械学習モデルから出された正解ラベルを含む予測結果を取得するステップと、取得した正解ラベルが前記統合ラベルである場合には前記統合ラベルの元になった複数のラベルのフラグを前記第1の値に変換し、前記予測結果から前記統合ラベルを削除するステップと、を実行させる、プログラムである。 (3) One aspect of the present invention is a program that causes a computer to execute the following steps: storing information for assigning multiple correct labels and a flag having a first value to one piece of learning data acquired from an annotation terminal; generating a new integrated label from multiple labels in the first learning data, the flag value of which is a first value, for training a first machine learning model that outputs multiple correct labels when target data is input, setting the flag of the integrated label to the first value, and setting flags of the multiple labels that are the basis of the integrated label to a second value, thereby converting the first learning data into second learning data that includes the integrated label; training a second machine learning model using the converted second learning data, the second learning data being a model that outputs one correct label when target data is input; inputting target data into the second machine learning model and acquiring a prediction result including the correct label output from the second machine learning model; and, if the acquired correct label is the integrated label, converting the flags of the multiple labels that are the basis of the integrated label to the first value and deleting the integrated label from the prediction result .

(4)本発明の一態様は、記憶部が、アノテーション端末から取得した一つの学習データ対して複数の正解ラベルおよび第1の値を持つフラグを付与する情報を記憶するステップと、学習装置が、対象データを入力した場合に複数の正解ラベルを出力する第1の機械学習モデルを学習させる第1の学習データのうち前記フラグの値が第1の値となっている複数のラベルから一つの新たな統合ラベルを生成し、前記統合ラベルのフラグを前記第1の値に設定し、前記統合ラベルの元になった複数のラベルのフラグを第2の値に設定することで、前記統合ラベルを含む第2の学習データに変換するステップと、前記学習装置が、変換された前記第2の学習データを用いて、対象データを入力した場合に一つの正解ラベルを出力する第2の機械学習モデルを学習させるステップと、予測装置が、データに複数の正解ラベルが付与された第1の学習データを用いて学習された第1の機械学習モデルに対象データを入力し、前記第1の機械学習モデルの予測結果を取得するステップと、前記予測装置が、前記第1の学習データに含まれる複数のラベルを当該複数のラベルのフラグに基づいて統合した統合ラベルを含む第2の学習データを用いて学習された第2の機械学習モデルに対象データを入力し、前記正解ラベルが前記統合ラベルである場合に前記統合ラベルの元になった複数のラベルのフラグを前記第1の値に変換し、前記予測結果から前記統合ラベルを削除して、前記第2の機械学習モデルの予測結果を取得するステップと、前記予測装置が、前記第1の機械学習モデルの予測結果と前記第2の機械学習モデルの予測結果とを比較することで、前記第2の機械学習モデルを評価するステップと、
を含む、機械学習モデルの評価方法である。
(4) One aspect of the present invention includes a step in which a storage unit stores information for assigning multiple correct labels and a flag having a first value to one piece of learning data acquired from an annotation terminal; a step in which a learning device converts the first learning data into second learning data including the integrated label by generating one new integrated label from multiple labels in which the flag value is a first value among the first learning data for training a first machine learning model that outputs multiple correct labels when target data is input, setting the flag of the integrated label to the first value, and setting flags of the multiple labels that are the basis of the integrated label to a second value; a step in which the learning device uses the converted second learning data to train a second machine learning model that outputs one correct label when target data is input; and a prediction device converts the converted second learning data into second learning data including the integrated label. a step of inputting target data into a first machine learning model trained using first training data to which a plurality of correct labels are assigned, and acquiring a prediction result of the first machine learning model; a step of inputting target data into a second machine learning model trained by the prediction device using second training data including an integrated label obtained by integrating a plurality of labels included in the first training data based on flags of the plurality of labels, and converting flags of the plurality of labels that are the basis of the integrated label to the first value when the correct label is the integrated label, and deleting the integrated label from the prediction result, and acquiring a prediction result of the second machine learning model ; and a step of evaluating the second machine learning model by the prediction device by comparing the prediction result of the first machine learning model with the prediction result of the second machine learning model.
This is a method for evaluating machine learning models, including:

本発明の一態様によれば、アノテーション作業の負担を増加させることなく、複数のラベルから一つの正解ラベルを予測する処理と複数のラベルから複数の正解ラベルを予測する処理とを行うことができる。 According to one aspect of the present invention, it is possible to perform a process of predicting one correct label from multiple labels and a process of predicting multiple correct labels from multiple labels without increasing the burden of annotation work.

実施形態におけるデータ分類システムの構成の一例を示すブロック図である。1 is a block diagram showing an example of a configuration of a data classification system according to an embodiment. 実施形態における学習装置40の一例を示すブロック図であり、(A)はマルチラベルモデルに関するブロック図であり、(B)はシングルラベルモデルに関するブロック図である。1A and 1B are block diagrams showing an example of a learning device 40 in an embodiment, in which (A) is a block diagram relating to a multi-label model, and (B) is a block diagram relating to a single-label model. 実施形態における予測装置70の一例を示すブロック図であり、(A)はマルチラベルモデルに関するブロック図であり、(B)はシングルラベルモデルに関するブロック図である。1A and 1B are block diagrams showing an example of a prediction device 70 in an embodiment, in which (A) is a block diagram relating to a multi-label model, and (B) is a block diagram relating to a single-label model. 実施形態におけるマルチラベルモデルの学習データの一例を示す図である。FIG. 1 is a diagram illustrating an example of training data of a multi-label model according to an embodiment. 実施形態における、変換されたシングルラベルモデルの学習データ(第2の学習データ)の一例を示す図である。FIG. 13 is a diagram illustrating an example of training data (second training data) of a converted single-label model in an embodiment. 実施形態の学習処理の一例を示すフローチャートである。11 is a flowchart illustrating an example of a learning process according to an embodiment. 実施形態の学習データの変換処理(ステップS108)の一例を示すフローチャートである。11 is a flowchart illustrating an example of a conversion process (step S108) of learning data according to an embodiment. 実施形態の予測処理の一例を示すフローチャートである。11 is a flowchart illustrating an example of a prediction process according to an embodiment. 実施形態の予測結果の逆変換処理(ステップS306)の一例を示すフローチャートである。13 is a flowchart illustrating an example of an inverse conversion process (step S306) of a prediction result according to an embodiment. 実施形態の変換処理および逆変換処理の一例を説明するための図であり、(A)はマルチラベルモデルの学習データの一例であり、(B)は変換処理がされた学習データの一例であり、(C)は予測結果の一例であり、(D)は逆変換処理がされた予測結果の一例である。1A and 1B are diagrams for explaining an example of a conversion process and an inverse conversion process of an embodiment, in which (A) is an example of training data of a multi-label model, (B) is an example of training data after conversion processing, (C) is an example of a prediction result, and (D) is an example of a prediction result after inverse conversion processing. 実施形態の変換処理および逆変換処理の一例を説明するための図であり、(A)はマルチラベルモデルの学習データの一例であり、(B)は変換処理がされた学習データの一例であり、(C)は予測結果の一例であり、(D)は逆変換処理がされた予測結果の一例である。1A and 1B are diagrams for explaining an example of a conversion process and an inverse conversion process of an embodiment, in which (A) is an example of training data of a multi-label model, (B) is an example of training data after conversion processing, (C) is an example of a prediction result, and (D) is an example of a prediction result after inverse conversion processing. 実施形態のモデル評価処理の一例を示すフローチャートである。11 is a flowchart illustrating an example of a model evaluation process according to the embodiment. マルチラベルモデルの学習データに含まれるラベル数と、シングルラベルモデルにより予測したスコアと、およびマルチラベルモデルにより予測したスコアとの関係を示す図である。FIG. 13 is a diagram showing the relationship between the number of labels included in the learning data of the multi-label model, the score predicted by the single-label model, and the score predicted by the multi-label model. シングルラベルモデルについて説明するための図である。FIG. 1 is a diagram for explaining a single-label model. シングルラベルモデルについて説明するための図である。FIG. 1 is a diagram for explaining a single-label model. マルチラベルモデルについて説明するための図である。FIG. 1 is a diagram illustrating a multi-label model.

以下、本発明を適用した学習装置および方法、予測装置および方法、プログラム、機械学習モデルの評価方法を、図面を参照して説明する。 Below, the learning device and method, prediction device and method, program, and machine learning model evaluation method to which the present invention is applied will be described with reference to the drawings.

[実施形態の概要]
本発明を適用したデータ分類システム1は、例えば、分類処理の対象となるデータがどのラベルに属するかをシングルラベルモデルに学習させ、学習されたシングルラベルモデルを用いて情報がどのラベルに属するかを分類する。実施形態における分類処理の対象となるデータは、例えば、テキストデータや、文書データ、音声データまたは画像データなどである。以下において分類処理の対象となるデータを、「対象データ」と記載する。実施形態においてラベルとは、対象データに付与される正解を示す情報である。実施形態におけるシングルラベルモデルとは、対象データが入力された場合に、対象データが一つのラベルに分類されることを予測する機械学習モデルである。実施形態におけるマルチラベルモデルとは、対象データが入力された場合に、対象データが複数のラベルに分類されることを予測する機械学習モデルである。
[Overview of the embodiment]
A data classification system 1 to which the present invention is applied, for example, trains a single-label model to learn which label data to be classified belongs to, and classifies information to which label it belongs using the trained single-label model. Data to be classified in the embodiment is, for example, text data, document data, voice data, or image data. Hereinafter, data to be classified is referred to as "target data." In the embodiment, a label is information indicating a correct answer that is assigned to the target data. The single-label model in the embodiment is a machine learning model that predicts that the target data will be classified into one label when the target data is input. The multi-label model in the embodiment is a machine learning model that predicts that the target data will be classified into multiple labels when the target data is input.

特に、実施形態のデータ分類システム1は、マルチラベルモデルの学習のためにアノテーションされたマルチラベルモデルのための学習データにおける複数のラベルを統合した統合ラベルを生成し、一つの正解ラベルとして統合ラベルを含むシングルラベルモデルのための学習データに変換する。このシングルラベルモデルのための学習データは、マルチラベルモデルにおける複数の正解ラベルに代えて疑似的に一つの統合ラベルをラベリングしたデータである。データ分類システム1は、変換したシングルラベルモデルの学習データを用いてシングルラベルモデルを学習させる。データ分類システム1は、学習させたシングルラベルモデルに、対象データを入力し、シングルラベルモデルから出力された正解ラベルが統合ラベルである場合、当該統合ラベルを複数のラベルに変換する。 In particular, the data classification system 1 of the embodiment generates an integrated label by integrating multiple labels in training data for a multi-label model that has been annotated for training the multi-label model, and converts the generated data into training data for a single-label model that includes the integrated label as a single correct label. The training data for the single-label model is data that is pseudo-labeled with a single integrated label instead of multiple correct labels in the multi-label model. The data classification system 1 trains a single-label model using the converted training data for the single-label model. The data classification system 1 inputs target data into the trained single-label model, and when the correct label output from the single-label model is an integrated label, it converts the integrated label into multiple labels.

これにより、実施形態のデータ分類システム1は、一度のアノテーション作業でマルチラベルモデルのための学習データを作成すれば、当該学習データを変換することで、シングルラベルモデルの学習を行うことができる。また、データ分類システム1によれば、学習済のシングルラベルモデルから出力された正解ラベルを変換することで、マルチラベルモデルと同等の予測結果を出力することができる。この結果、データ分類システム1は、アノテーション作業の負担を増加させることなく、シングルラベルモデルによる予測処理と、マルチラベルモデルによる予測処理とを行うことができる。以下、実施形態のデータ分類システム1について詳細に説明する。 As a result, the data classification system 1 of the embodiment can create training data for a multi-label model in a single annotation operation, and can convert the training data to train a single-label model. Furthermore, the data classification system 1 can output prediction results equivalent to those of a multi-label model by converting the correct answer label output from a trained single-label model. As a result, the data classification system 1 can perform prediction processing using a single-label model and prediction processing using a multi-label model without increasing the burden of annotation work. The data classification system 1 of the embodiment will be described in detail below.

[データ分類システム1の構成]
図1は、実施形態におけるデータ分類システムの構成の一例を示すブロック図である。データ分類システム1は、例えば、要求端末10と、アノテーション端末20と、マルチラベル記憶部30と、学習装置40と、シングルラベル記憶部50と、モデルパラメータ記憶部60と、予測装置70と、予測結果記憶部80と、を備える。要求端末10、アノテーション端末20、マルチラベル記憶部30、学習装置40、シングルラベル記憶部50、モデルパラメータ記憶部60、予測装置70、および予測結果記憶部80は、ネットワークNWに接続される。ネットワークNWに接続される各装置は、NIC(Network Interface Card)や無線通信モジュールなどの通信インターフェースを備えている。ネットワークNWは、例えば、汎用のインターネット、WAN(Wide Area Network)、LAN(Local Area Network)、Wifi(登録商標)、セルラー網などを含む。
[Configuration of Data Classification System 1]
1 is a block diagram showing an example of the configuration of a data classification system in an embodiment. The data classification system 1 includes, for example, a request terminal 10, an annotation terminal 20, a multi-label storage unit 30, a learning device 40, a single-label storage unit 50, a model parameter storage unit 60, a prediction device 70, and a prediction result storage unit 80. The request terminal 10, the annotation terminal 20, the multi-label storage unit 30, the learning device 40, the single-label storage unit 50, the model parameter storage unit 60, the prediction device 70, and the prediction result storage unit 80 are connected to a network NW. Each device connected to the network NW includes a communication interface such as a network interface card (NIC) or a wireless communication module. The network NW includes, for example, a general-purpose Internet, a wide area network (WAN), a local area network (LAN), Wifi (registered trademark), a cellular network, and the like.

要求端末10は、スマートフォンなどの携帯電話、タブレット端末、パーソナルコンピュータ等である。要求端末10は、例えばユーザの操作に従って、対象データ、および対象データの正解ラベルを要求する情報を予測装置70に共有する。要求端末10は、予測装置70から要求に応じた予測結果に関する情報を予測装置70から受信し、ユーザに予測結果を提示する。 The requesting terminal 10 is a mobile phone such as a smartphone, a tablet terminal, a personal computer, etc. The requesting terminal 10 shares with the prediction device 70 information requesting target data and a correct label for the target data, for example, in accordance with a user's operation. The requesting terminal 10 receives information on the prediction result in response to the request from the prediction device 70, and presents the prediction result to the user.

アノテーション端末20は、例えばパーソナルコンピュータ等であり、アノテーション作業を行うための端末である。アノテーション作業は、データに正解ラベルを付与する作業である。アノテーション端末20は、作業者の操作に従って、データと正解ラベルとを対応付けてマルチラベル記憶部30に記憶させる。実施形態におけるアノテーションは、一つのデータに対して複数の正解ラベルの付与を許容するマルチラベリングを実行する。なお、実施形態において、ラベルが付与されるデータは、テキストデータや、文書データや、画像データや、音声データ、これらのデータが複合したデータであってよく、特に限定されない。 The annotation terminal 20 is, for example, a personal computer, and is a terminal for performing annotation work. The annotation work is a work of assigning a correct answer label to data. The annotation terminal 20 associates data with a correct answer label according to the operation of the worker, and stores the data in the multi-label storage unit 30. The annotation in the embodiment performs multi-labeling that allows multiple correct answer labels to be assigned to one data. Note that in the embodiment, the data to which the label is assigned may be text data, document data, image data, audio data, or a combination of these data, and is not particularly limited.

マルチラベル記憶部30は、HDD等の記憶装置、および制御用ソフトウェア等を含む。マルチラベル記憶部30は、アノテーション端末20からの要求に従って、データの登録、ラベルの登録、およびデータとラベルとの対応関係の登録などの処理を行う。これにより、マルチラベル記憶部30は、一つのデータに対して複数の正解ラベルが付与されたマルチラベルモデルの学習データを記憶する。 The multi-label storage unit 30 includes a storage device such as a HDD, control software, etc. The multi-label storage unit 30 performs processes such as registering data, registering labels, and registering the correspondence between data and labels in response to requests from the annotation terminal 20. In this way, the multi-label storage unit 30 stores training data for a multi-label model in which multiple correct answer labels are assigned to one piece of data.

学習装置40は、例えば、CPU等により学習用プログラムを実行することで学習処理を実行するコンピュータである。学習装置40は、マルチラベルモデルの学習データをシングルラベルモデルの学習データに変換し、変換したシングルラベルモデルの学習データを用いてシングルラベルモデルを学習させる。学習装置40は、変換後のシングルラベルモデルをシングルラベル記憶部50に記憶させる。学習装置40は、マルチラベル記憶部30に記憶されたマルチラベルモデルの学習データを用いてマルチラベルモデルを学習させる。 The learning device 40 is, for example, a computer that executes a learning process by executing a learning program using a CPU or the like. The learning device 40 converts the learning data of the multi-label model into learning data of the single-label model, and trains the single-label model using the training data of the converted single-label model. The learning device 40 stores the converted single-label model in the single-label storage unit 50. The learning device 40 trains the multi-label model using the training data of the multi-label model stored in the multi-label storage unit 30.

シングルラベル記憶部50は、HDD等の記憶装置、および制御用ソフトウェア等を含む。シングルラベル記憶部50は、学習装置40からの要求に従って、マルチラベル記憶部30に記憶されたマルチラベルモデルの学習データの登録、統合ラベルの登録、マルチラベルモデルにおけるフラグの変更、およびデータと統合ラベルとの対応関係の登録などの処理を行う。これにより、シングルラベル記憶部50は、一つのデータに対して一つの正解ラベルとしての統合が付与されたシングルラベルモデルの学習データを記憶する。 The single label storage unit 50 includes a storage device such as an HDD, control software, etc. In response to a request from the learning device 40, the single label storage unit 50 performs processes such as registering the learning data of the multi-label model stored in the multi-label storage unit 30, registering the integrated label, changing flags in the multi-label model, and registering the correspondence between data and the integrated label. In this way, the single label storage unit 50 stores the learning data of the single label model in which one piece of data is assigned an integrated label as one correct answer label.

モデルパラメータ記憶部60は、HDD等の記憶装置、および制御用ソフトウェア等を含む。モデルパラメータ記憶部60は、学習装置40により学習された結果として、マルチラベルモデルのモデルパラメータおよびシングルラベルモデルのモデルパラメータを記憶する。 The model parameter storage unit 60 includes a storage device such as a HDD, control software, etc. The model parameter storage unit 60 stores model parameters of the multi-label model and the single-label model as a result of learning by the learning device 40.

予測装置70は、例えば、CPU等により予測用プログラムを実行することで予測処理を実行するコンピュータである。予測装置70は、要求端末10から供給された対象データをマルチラベルモデルに入力し、マルチラベルモデルから出力された情報に基づいて予測結果を取得する。マルチラベルモデルの予測結果は、複数の正解ラベルを含んでよい。予測装置70は、要求端末10から供給された対象データをシングルラベルモデルに入力し、シングルラベルモデルから出力された情報に基づいて予測結果を取得する。予測装置70は、シングルラベルモデルに含まれる正解ラベルが統合ラベルである場合、当該統合モデルを複数の正解ラベルに変換し、変換した複数の正解ラベルを含む予測結果を生成する。予測装置70の予測結果は、例えば予測結果記憶部80に記憶される。 The prediction device 70 is a computer that executes a prediction process by, for example, executing a prediction program using a CPU or the like. The prediction device 70 inputs the target data supplied from the request terminal 10 to a multi-label model and obtains a prediction result based on information output from the multi-label model. The prediction result of the multi-label model may include multiple correct labels. The prediction device 70 inputs the target data supplied from the request terminal 10 to a single-label model and obtains a prediction result based on information output from the single-label model. When the correct label included in the single-label model is an integrated label, the prediction device 70 converts the integrated model into multiple correct labels and generates a prediction result including the converted multiple correct labels. The prediction result of the prediction device 70 is stored, for example, in the prediction result storage unit 80.

予測結果記憶部80は、HDD等の記憶装置、および制御用ソフトウェア等を含む。予測結果記憶部80に記憶された予測結果は、例えば、要求端末10に提供される。予測結果記憶部80に記憶された予測結果は、マルチラベルモデルの予測結果とシングルラベルモデルの予測結果との比較に用いられてよい。 The prediction result storage unit 80 includes a storage device such as an HDD, control software, etc. The prediction results stored in the prediction result storage unit 80 are provided to, for example, the requesting terminal 10. The prediction results stored in the prediction result storage unit 80 may be used to compare the prediction results of the multi-label model and the prediction results of the single-label model.

図2は、実施形態における学習装置40の一例を示すブロック図であり、(A)はマルチラベルモデルに関するブロック図であり、(B)はシングルラベルモデルに関するブロック図である。図3は、実施形態における予測装置70の一例を示すブロック図であり、(A)はマルチラベルモデルに関するブロック図であり、(B)はシングルラベルモデルに関するブロック図である。 FIG. 2 is a block diagram showing an example of a learning device 40 in an embodiment, where (A) is a block diagram related to a multi-label model, and (B) is a block diagram related to a single-label model. FIG. 3 is a block diagram showing an example of a prediction device 70 in an embodiment, where (A) is a block diagram related to a multi-label model, and (B) is a block diagram related to a single-label model.

学習装置40は、図2(A)に示すように、例えば、学習処理部42と、マルチラベルモデル44とを備える。マルチラベルモデル44は、機械学習モデルであり、例えば、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)である。学習処理部42は、マルチラベル記憶部30からマルチラベルモデルの学習データを取得する。図4は、実施形態におけるマルチラベルモデルの学習データの一例を示す図である。学習処理部42は、マルチラベルモデルの学習データをマルチラベルモデル44に入力し、マルチラベルモデル44から出力された予測結果を取得する。学習処理部42は、マルチラベルモデル44から出力された正解ラベルが、学習データにおける正解ラベルと一致するようにマルチラベルモデル44のモデルパラメータを再帰的に更新する。すなわち学習処理部42は、モデルパラメータ記憶部60のマルチラベルモデル44に関する処理パラメータを更新し、更新した処理パラメータをマルチラベルモデル44に反映する。処理パラメータは、例えば、畳み込みニューラルネットワークにおける、層数、各層のノード数、各層間のノードの結合方式、活性化関数、誤差関数、及び勾配降下アルゴリズム、プーリングの領域、カーネル、重み係数、および重み行列の少なくとも一つである。これにより、学習処理部42は、処理パラメータを取得するために、例えば、深層学習を行う。深層学習とは、多層構造、特に3層以上のニューラルネットワークを用いた機械学習である。 As shown in FIG. 2A, the learning device 40 includes, for example, a learning processing unit 42 and a multi-label model 44. The multi-label model 44 is a machine learning model, for example, a convolutional neural network (CNN). The learning processing unit 42 acquires learning data of the multi-label model from the multi-label storage unit 30. FIG. 4 is a diagram showing an example of learning data of the multi-label model in the embodiment. The learning processing unit 42 inputs the learning data of the multi-label model to the multi-label model 44 and acquires a prediction result output from the multi-label model 44. The learning processing unit 42 recursively updates the model parameters of the multi-label model 44 so that the correct answer label output from the multi-label model 44 matches the correct answer label in the learning data. That is, the learning processing unit 42 updates the processing parameters related to the multi-label model 44 in the model parameter storage unit 60 and reflects the updated processing parameters in the multi-label model 44. The processing parameters are, for example, at least one of the number of layers, the number of nodes in each layer, the node connection method between each layer, the activation function, the error function, the gradient descent algorithm, the pooling domain, the kernel, the weighting coefficient, and the weighting matrix in the convolutional neural network. As a result, the learning processing unit 42 performs, for example, deep learning to obtain the processing parameters. Deep learning is machine learning that uses a multi-layered neural network, particularly a neural network with three or more layers.

学習装置40は、図2(B)に示すように、例えば、変換部46と、学習処理部42と、シングルラベルモデル48とを備える。変換部46は、データに複数の正解ラベルが付与されたマルチラベルモデルの学習データ(第1の学習データ)における複数の正解ラベルを統合した一つの統合ラベルを生成し、データに対する一つの正解ラベルとして統合ラベルを付与したシングルラベルモデルの学習データ(第2の学習データ)に変換する。変換部46は、変換したシングルラベルモデルの学習データをシングルラベル記憶部50に記憶する。 As shown in FIG. 2(B), the learning device 40 includes, for example, a conversion unit 46, a learning processing unit 42, and a single-label model 48. The conversion unit 46 generates a single integrated label by integrating multiple correct answer labels in the learning data (first learning data) of a multi-label model in which multiple correct answer labels are assigned to data, and converts the data into learning data of a single-label model in which the integrated label is assigned as a single correct answer label for the data (second learning data). The conversion unit 46 stores the converted learning data of the single-label model in the single-label storage unit 50.

図5は、実施形態における、変換されたシングルラベルモデルの学習データ(第2の学習データ)の一例を示す図である。例えば、図4に示すように「もしもし、・・・」という一つのデータに対し、「電話がつながらない」というラベルのフラグと「担当者を出してほしい」というラベルのフラグとが共に「1」であったとする。この場合、変換部46は、図5に示すように、2つのラベルを統合した「電話がつながらない_担当者を出してほしい」という統合ラベルを生成し、当該統合モデルのフラグを立て、統合ラベルの元となった2つの「電話がつながらない」というラベルと「担当者を出してほしい」というラベルのフラグを「0」に変更する。同様に、変換部46は、「昨日修理して・・・」というデータに対し、「電話がつながらない」というフラグと、「ネットがつながらない」というフラグと、「クレーム」というフラグとが「1」である場合、「電話がつながらない_ネットがつながらない_クレーム」という統合ラベルを生成し、当該統合モデルのフラグを立て、当該統合モデルの元となったラベルのフラグを「0」に変更する。さらに、変換部46は、「録音か、・・・」というデータに対して全てのラベルのフラグが「0」である場合、「NoMatch」という統合ラベルを生成し、当該統合モデルのフラグを立てる。なお、統合ラベルのラベル名は一例であり、統合ラベルの元となった複数のラベルとの対応がとれていれば他のラベル名であってよい。また、「NoMatch」という統合ラベル名は一例であり、データに対して全てのラベルのフラグが「0」であることを統合したラベル名であれば他のラベル名であってよい。 5 is a diagram showing an example of training data (second training data) of a converted single-label model in an embodiment. For example, as shown in FIG. 4, for one piece of data "Hello, ...", the flag of the label "I can't get through on the phone" and the flag of the label "Please put the person in charge" are both "1". In this case, as shown in FIG. 5, the conversion unit 46 generates an integrated label "I can't get through on the phone_Please put the person in charge" by integrating the two labels, sets the flag of the integrated model, and changes the flags of the two labels "I can't get through on the phone" and "Please put the person in charge" that were the source of the integrated label to "0". Similarly, for data "Repaired yesterday...", if the flag of "I can't get through on the phone", the flag of "I can't connect to the Internet", and the flag of "Complaint" are "1", the conversion unit 46 generates an integrated label "I can't get through on the phone_I can't connect to the Internet_Complaint", sets the flag of the integrated model, and changes the flag of the label that was the source of the integrated model to "0". Furthermore, if the flags of all the labels for the data "Is it recording...?" are "0", the conversion unit 46 generates an integrated label called "NoMatch" and sets the flag for the integrated model. Note that the label name of the integrated label is just an example, and other label names may be used as long as they correspond to the multiple labels that were the basis for the integrated label. Also, the integrated label name "NoMatch" is just an example, and other label names may be used as long as they are the label name that integrates all the label flags for the data that are "0".

学習処理部42は、シングルラベル記憶部50に記憶されたシングルラベルモデルの学習データを取得する。学習処理部42は、シングルラベルモデルの学習データをシングルラベルモデル48に入力し、シングルラベルモデル48から出力された予測結果を取得する。学習処理部42は、シングルラベルモデル48から出力された正解ラベルが、学習データにおける正解ラベルと一致するようにシングルラベルモデル48のモデルパラメータを再帰的に更新する。すなわち学習処理部42は、モデルパラメータ記憶部60のシングルラベルモデル48に関する処理パラメータを更新し、更新した処理パラメータをシングルラベルモデル48に反映する。なお、シングルラベルモデル48の処理パラメータはマルチラベルモデル44と同様であってよい。 The learning processing unit 42 acquires the learning data of the single-label model stored in the single-label storage unit 50. The learning processing unit 42 inputs the learning data of the single-label model to the single-label model 48 and acquires the prediction result output from the single-label model 48. The learning processing unit 42 recursively updates the model parameters of the single-label model 48 so that the correct label output from the single-label model 48 matches the correct label in the learning data. That is, the learning processing unit 42 updates the processing parameters related to the single-label model 48 in the model parameter storage unit 60 and reflects the updated processing parameters in the single-label model 48. The processing parameters of the single-label model 48 may be the same as those of the multi-label model 44.

予測装置70は、図3(A)に示すように、例えば、予測部72と、予測結果出力部76とを備える。予測部72は、モデルパラメータ記憶部60からマルチラベルモデルのモデルパラメータを取得する。予測部72は、対象データを入力し、対象データについての正解ラベルを予測して予測結果記憶部80に記憶する。予測結果出力部76は、予測結果記憶部80に記憶された対象データについての正解ラベルを予測結果として回答する。 As shown in FIG. 3(A), the prediction device 70 includes, for example, a prediction unit 72 and a prediction result output unit 76. The prediction unit 72 acquires model parameters of the multi-label model from the model parameter storage unit 60. The prediction unit 72 inputs target data, predicts a correct label for the target data, and stores the predicted label in the prediction result storage unit 80. The prediction result output unit 76 returns the correct label for the target data stored in the prediction result storage unit 80 as a prediction result.

予測装置70は、図3(B)に示すように、例えば、予測部72と、逆変換部74と、予測結果出力部76とを備える。予測部72は、モデルパラメータ記憶部60からシングルラベルモデルのモデルパラメータを取得する。予測部72は、対象データを入力し、対象データについての正解ラベルを予測して逆変換部74に出力する。逆変換部74は、シングルラベル記憶部50を参照し、出力された正解ラベルが統合ラベルである場合、統合ラベルを複数の正解ラベルに変換し、予測結果記憶部80に記憶する。予測結果出力部76は、予測結果記憶部80に記憶された対象データについての正解ラベルを予測結果として回答する。 As shown in FIG. 3(B), the prediction device 70 includes, for example, a prediction unit 72, an inverse conversion unit 74, and a prediction result output unit 76. The prediction unit 72 acquires model parameters of the single label model from the model parameter storage unit 60. The prediction unit 72 inputs target data, predicts a correct label for the target data, and outputs the predicted label to the inverse conversion unit 74. The inverse conversion unit 74 refers to the single label storage unit 50, and if the output correct label is an integrated label, converts the integrated label into multiple correct labels and stores them in the prediction result storage unit 80. The prediction result output unit 76 returns the correct label for the target data stored in the prediction result storage unit 80 as a prediction result.

[学習処理]
図6は、実施形態の学習処理の一例を示すフローチャートである。データ分類システム1は、アノテーション作業を行ったことにより(ステップS100)、マルチラベルモデルの学習データを記憶する(ステップS102)。データ分類システム1は、例えば学習処理のタイミングが到来したタイミングで、マルチラベルモデルの学習データを取得し(ステップS104)、学習するモデルのタイプを判定する(ステップS106)。
[Learning process]
6 is a flowchart showing an example of a learning process according to an embodiment. The data classification system 1 performs an annotation process (step S100) and stores learning data of a multi-label model (step S102). For example, when the time for the learning process arrives, the data classification system 1 acquires learning data of the multi-label model (step S104) and determines the type of model to be learned (step S106).

データ分類システム1は、学習するモデルのタイプがシングルラベルモデルである場合、マルチラベルモデルの学習データをシングルラベルモデルの学習データに変換し(ステップS108)、変換したシングルラベルモデルの学習データを用いてシングルラベルモデルの学習処理を行う(ステップS110)。これによりデータ分類システム1は、シングルラベルモデルのモデルパラメータを記憶することができる(ステップS112)。 When the type of model to be trained is a single-label model, the data classification system 1 converts the training data of the multi-label model into training data of the single-label model (step S108), and performs training processing of the single-label model using the converted training data of the single-label model (step S110). This allows the data classification system 1 to store the model parameters of the single-label model (step S112).

データ分類システム1は、学習するモデルのタイプがマルチラベルモデルである場合、取得したマルチラベルモデルの学習データを用いてマルチラベルモデルの学習処理を行う(ステップS114)。これによりデータ分類システム1は、マルチラベルモデルのモデルパラメータを記憶することができる(ステップS116)。 When the type of model to be trained is a multi-label model, the data classification system 1 performs a training process for the multi-label model using the acquired training data for the multi-label model (step S114). This allows the data classification system 1 to store model parameters for the multi-label model (step S116).

図7は、実施形態の学習データの変換処理(ステップS108)の一例を示すフローチャートである。先ず学習装置40は、マルチラベルモデルの学習データにおける一つの行を選択する(ステップS200)。実施形態におけるマルチラベルモデルの学習データは、図4に示したように、一つの行に、データとラベルのフラグとが対応付けられているものとする。次に学習装置40は、フラグの立ったラベルが2個以上存在するか否かを判定する(ステップS202)。学習装置40は、フラグの立ったラベルが2個以上存在する場合(ステップS202:YES)、当該2個以上のラベルを統合した統合ラベルを生成する(ステップS204)。次に学習装置40は、生成した統合ラベルを、学習データの列に追加し(ステップS206)、当該統合ラベルのフラグを「1」に設定し、当該統合ラベルの元となった元ラベルのフラグを「0」に設定する(ステップS208)。 FIG. 7 is a flowchart showing an example of the conversion process of the learning data (step S108) of the embodiment. First, the learning device 40 selects one row in the learning data of the multi-label model (step S200). In the learning data of the multi-label model in the embodiment, data and label flags are associated with each other in one row, as shown in FIG. 4. Next, the learning device 40 determines whether there are two or more flagged labels (step S202). If there are two or more flagged labels (step S202: YES), the learning device 40 generates an integrated label by integrating the two or more labels (step S204). Next, the learning device 40 adds the generated integrated label to the column of the learning data (step S206), sets the flag of the integrated label to "1", and sets the flag of the original label that is the basis of the integrated label to "0" (step S208).

学習装置40は、フラグの立ったラベルが2個以上存在しない場合(ステップS202:NO)、フラグがすべて「0」であるか否かを判定する(ステップS210)。学習装置40は、フラグが全て「0」ではない場合には(ステップS210:NO)、処理をステップS216に進める。学習装置40は、フラグが全て「0」である場合には(ステップS210:YES)、NoMatchラベルを、学習データの列に追加し(ステップS212)、当該NoMatchラベルのフラグを「1」に設定し、当該NoMatchラベルの他のラベルのフラグを「0」に設定する(ステップS214)。 If there are two or more labels with flags set (step S202: NO), the learning device 40 determines whether the flags are all "0" (step S210). If the flags are not all "0" (step S210: NO), the learning device 40 proceeds to step S216. If the flags are all "0" (step S210: YES), the learning device 40 adds a NoMatch label to the string of learning data (step S212), sets the flag of the NoMatch label to "1", and sets the flags of other labels after the NoMatch label to "0" (step S214).

学習装置40は、ステップS214において、マルチラベルモデルの学習データの全ての行について処理を行ったか否かを判定し、全ての行について処理を行っていない場合には(ステップS214:NO)、ステップS200に処理を戻し、全ての行について処理を行った場合には(ステップS214:YES)、本フローチャートの処理を終了する。 In step S214, the learning device 40 determines whether or not all rows of the learning data of the multi-label model have been processed. If not all rows have been processed (step S214: NO), the learning device 40 returns to step S200. If all rows have been processed (step S214: YES), the learning device 40 ends the processing of this flowchart.

[予測処理]
図8は、実施形態の予測処理の一例を示すフローチャートである。予測装置70は、要求端末10から対象データを取得し(ステップS300)、予測するモデルのタイプを判定する(ステップS302)。なお、予測するモデルのタイプは、例えばユーザの操作に基づいて予め設定されていてよい。
[Prediction Processing]
8 is a flowchart showing an example of a prediction process according to an embodiment. The prediction device 70 acquires target data from the request terminal 10 (step S300), and determines the type of model to be predicted (step S302). The type of model to be predicted may be preset based on, for example, a user operation.

予測装置70は、予測するモデルのタイプがシングルラベルモデルである場合、シングルラベルモデルに対象データを入力し、シングルラベルモデルから出力された予測結果を取得する(ステップS304)。次に予測装置70は、シングルラベルモデルから出力された予測結果を逆変換する(ステップS306)。次に予測装置70は、逆変換された予測結果を予測結果記憶部80に記憶する(ステップS308)。次に予測装置70は、記憶した予測結果を回答する(ステップS314)。 When the type of model to be predicted is a single-label model, the prediction device 70 inputs the target data into the single-label model and obtains the prediction result output from the single-label model (step S304). Next, the prediction device 70 inversely transforms the prediction result output from the single-label model (step S306). Next, the prediction device 70 stores the inversely transformed prediction result in the prediction result storage unit 80 (step S308). Next, the prediction device 70 responds with the stored prediction result (step S314).

予測装置70は、予測するモデルのタイプがマルチラベルモデルである場合、マルチラベルモデルに対象データを入力し、マルチラベルモデルから出力された予測結果を取得する(ステップS310)。次に予測装置70は、マルチラベルモデルから出力された予測結果を予測結果記憶部80に記憶する(ステップS312)。次に予測装置70は、記憶した予測結果を回答する(ステップS314)。 When the type of model to be predicted is a multi-label model, the prediction device 70 inputs the target data into the multi-label model and obtains the prediction result output from the multi-label model (step S310). Next, the prediction device 70 stores the prediction result output from the multi-label model in the prediction result storage unit 80 (step S312). Next, the prediction device 70 responds with the stored prediction result (step S314).

図9は、実施形態の予測結果の逆変換処理(ステップS306)の一例を示すフローチャートである。先ず予測装置70は、シングルラベルモデルの予測結果における一つの行を選択する(ステップS400)。例えば、要求に複数の対象データが含まれる場合や、要求に含まれたデータを所定のルールに従って複数の対象データに分割した場合、シングルラベルモデルの予測結果は、各行に、対象データとラベルごとのスコアとが対応付けられたデータとなる。次に予測装置70は、予測結果に含まれるラベルの中でスコアが最も高いラベルを予測結果として取得する(ステップS402)。 Figure 9 is a flowchart showing an example of the inverse conversion process (step S306) of the prediction result of the embodiment. First, the prediction device 70 selects one row in the prediction result of the single label model (step S400). For example, when a request includes multiple target data, or when the data included in the request is divided into multiple target data according to a predetermined rule, the prediction result of the single label model will be data in which each row corresponds to the target data and a score for each label. Next, the prediction device 70 obtains the label with the highest score among the labels included in the prediction result as the prediction result (step S402).

次に予測装置70は、スコアが最も高いラベルが、NoMatchラベルであるか否かを判定する(ステップS406)。予測装置70は、スコアが最も高いラベルがNoMatchラベルである場合(ステップS406:YES)、予測結果に含まれる全てのラベルのフラグを「0」に設定し(ステップS408)、ステップS416に処理を進める。予測装置70は、スコアが最も高いラベルがNoMatchラベルではない場合(ステップS406:NO)、ステップS410に処理を進める。 Next, the prediction device 70 determines whether the label with the highest score is a NoMatch label (step S406). If the label with the highest score is a NoMatch label (step S406: YES), the prediction device 70 sets the flags of all labels included in the prediction result to "0" (step S408) and proceeds to step S416. If the label with the highest score is not a NoMatch label (step S406: NO), the prediction device 70 proceeds to step S410.

予測装置70は、ステップS410において、スコアが最も高いラベルが、統合ラベルであるか否かを判定する。予測装置70は、スコアが最も高いラベルが統合ラベルである場合(ステップS410:YES)、統合ラベルの元ラベルのフラグを「1」に設定し、元ラベルの他のラベルのフラグを「0」に設定する(ステップS412)。予測装置70は、スコアが最も高いラベルが統合ラベルではない場合(ステップS410:NO)、スコアが最も高いラベルのフラグを「1」に設定し、当該スコアが最も高いラベルの他のラベルのフラグを「0」に設定する(ステップS414)。 In step S410, the prediction device 70 determines whether the label with the highest score is an integrated label. If the label with the highest score is an integrated label (step S410: YES), the prediction device 70 sets the flag of the original label of the integrated label to "1" and sets the flags of the other labels of the original label to "0" (step S412). If the label with the highest score is not an integrated label (step S410: NO), the prediction device 70 sets the flag of the label with the highest score to "1" and sets the flags of the other labels of the label with the highest score to "0" (step S414).

予測装置70は、ステップS416において、予測結果の全ての行について処理を行ったか否かを判定し、全ての行について処理を行っていない場合には(ステップS416:NO)、ステップS400に処理を戻し、全ての行について処理を行った場合には(ステップS416:YES)、予測結果に含まれる統合ラベル列を破棄して(ステップS418)、本フローチャートの処理を終了する。 In step S416, the prediction device 70 determines whether all rows in the prediction result have been processed. If not all rows have been processed (step S416: NO), the prediction device 70 returns to step S400. If all rows have been processed (step S416: YES), the prediction device 70 discards the integrated label sequence included in the prediction result (step S418) and ends the processing of this flowchart.

図10は、実施形態の変換処理および逆変換処理の一例を説明するための図であり、(A)はマルチラベルモデルの学習データの一例であり、(B)は変換処理がされた学習データの一例であり、(C)は予測結果の一例であり、(D)は逆変換処理がされた予測結果の一例である。 Figure 10 is a diagram for explaining an example of the conversion process and inverse conversion process of the embodiment, where (A) is an example of training data for a multi-label model, (B) is an example of training data after conversion process, (C) is an example of a prediction result, and (D) is an example of a prediction result after inverse conversion process.

アノテーション端末20がアノテーション作業により、図10(A)に示すようなマルチラベルモデルの学習データを生成したものとする。学習装置40は、シングルラベルモデルを学習させる前に、マルチラベルモデルの学習データのうちフラグが「1」となっている複数のラベル1~3を抽出し、抽出したラベル1~3を統合することで、新たなラベルxを生成する。学習装置40は、マルチラベルモデルの学習データにラベル1~3以外の複数のラベルのフラグが「1」である場合、当該複数のラベルを統合して新たなラベルx+1を生成してよい。学習装置40は、図10(B)に示すように、統合して生成された新たなラベルxの元になったラベル1~3のフラグを「0」に設定し、ラベルxのフラグを「1」に設定したシングルラベルモデルの学習データを作成する。 It is assumed that the annotation terminal 20 generates learning data for a multi-label model as shown in FIG. 10(A) through annotation work. Before training the single-label model, the learning device 40 extracts multiple labels 1 to 3 with flags set to "1" from the learning data for the multi-label model, and generates a new label x by integrating the extracted labels 1 to 3. If the flags of multiple labels other than labels 1 to 3 in the learning data for the multi-label model are set to "1", the learning device 40 may integrate the multiple labels to generate a new label x+1. As shown in FIG. 10(B), the learning device 40 sets the flags of labels 1 to 3 that were the basis of the new label x generated by integration to "0", and creates learning data for a single-label model with the flag of label x set to "1".

予測装置70は、シングルラベルモデルを用い、複数のラベルのうち最も確からしい単一のラベルを予測する。予測結果は、図10(C)に示すように、各ラベルのスコア(確からしさ、確率)の総和が1となるように出力される。予測装置70は、全ラベルのスコアのうちラベルxのスコアが最も高いと判定する。予測装置70は、ラベルxが統合ラベルであるので、図10(D)に示すように、ラベルxの元となっていたラベル1~3のフラグを「1」に設定した予測結果に変換し、統合ラベルを削除する。 The prediction device 70 uses a single label model to predict the single most likely label among multiple labels. The prediction result is output so that the sum of the scores (likelihood, probability) of each label is 1, as shown in FIG. 10(C). The prediction device 70 determines that the score of label x is the highest among all the scores of labels. Because label x is an integrated label, the prediction device 70 converts the prediction result into one in which the flags of labels 1 to 3 that were the basis of label x are set to "1", as shown in FIG. 10(D), and deletes the integrated label.

図11は、実施形態の変換処理および逆変換処理の一例を説明するための図であり、(A)はマルチラベルモデルの学習データの一例であり、(B)は変換処理がされた学習データの一例であり、(C)は予測結果の一例であり、(D)は逆変換処理がされた予測結果の一例である。 Figure 11 is a diagram for explaining an example of the conversion process and inverse conversion process of the embodiment, where (A) is an example of training data for a multi-label model, (B) is an example of training data after conversion process, (C) is an example of a prediction result, and (D) is an example of a prediction result after inverse conversion process.

アノテーション端末20がアノテーション作業により、図11(A)に示すようなマルチラベルモデルの学習データを生成したものとする。学習装置40は、シングルラベルモデルを学習させる前に、マルチラベルモデルの学習データのうち全てのフラグが「0」となっているので、全てのラベルを統合することで、新たなNoMatchラベルを生成する。学習装置40は、図11(B)に示すように、生成されたNoMatchラベルのフラグを「1」に設定したシングルラベルモデルの学習データを作成する。 It is assumed that the annotation terminal 20 generates learning data for a multi-label model as shown in FIG. 11(A) through annotation work. Before training the single-label model, all flags in the learning data for the multi-label model are set to "0", so the learning device 40 generates a new NoMatch label by integrating all labels. The learning device 40 creates learning data for a single-label model in which the flags of the generated NoMatch labels are set to "1", as shown in FIG. 11(B).

予測装置70は、シングルラベルモデルを用い、複数のラベルのうち最も確からしい単一のラベルを予測する。予測結果は、図11(C)に示すように、各ラベルのスコア(確からしさ、確率)の総和が1となるように出力される。予測装置70は、全ラベルのスコアのうちNoMatchラベルのスコアが最も高いと判定する。予測装置70は、NoMatchラベルが統合ラベルであるので、図11(D)に示すように、NoMatchラベルの元となっていたラベルのフラグを「0」に設定した予測結果に変換し、NoMatchラベルを削除する。 The prediction device 70 uses a single label model to predict the single most likely label among multiple labels. The prediction result is output so that the sum of the scores (likelihood, probability) of each label is 1, as shown in FIG. 11 (C). The prediction device 70 determines that the score of the NoMatch label is the highest among the scores of all labels. Because the NoMatch label is an integrated label, the prediction device 70 converts the flag of the label that was the source of the NoMatch label to "0" as shown in FIG. 11 (D), and deletes the NoMatch label.

[モデルの評価処理]
データ分類システム1は、シングルラベルモデルの学習データを用いて学習させたシングルラベルモデルを評価してよい。
図12は、実施形態のモデル評価処理の一例を示すフローチャートである。予測装置70は、評価用データを取得する(ステップS300#)。評価用データは、対象データおよび正解ラベルを含むデータである。次に予測装置70は、モデルのタイプを判定する(ステップS302)。
[Model evaluation process]
The data classification system 1 may evaluate a single-label model trained using training data of the single-label model.
12 is a flowchart illustrating an example of a model evaluation process according to an embodiment. The prediction device 70 acquires evaluation data (step S300#). The evaluation data is data including target data and a correct label. Next, the prediction device 70 determines a model type (step S302).

予測装置70は、モデルのタイプがシングルラベルモデルである場合、シングルラベルモデルに評価用データを入力し、シングルラベルモデルから出力された予測結果を取得する(ステップS304)。次に予測装置70は、シングルラベルモデルから出力された予測結果を逆変換する(ステップS306)。次に予測装置70は、逆変換された予測結果を予測結果記憶部80に記憶する(ステップS308)。予測装置70は、モデルのタイプがマルチラベルモデルである場合、マルチラベルモデルに評価用データを入力し、マルチラベルモデルから出力された予測結果を取得する(ステップS310)。次に予測装置70は、マルチラベルモデルから出力された予測結果を予測結果記憶部80に記憶する(ステップS312)。 When the model type is a single-label model, the prediction device 70 inputs evaluation data to the single-label model and obtains the prediction result output from the single-label model (step S304). Next, the prediction device 70 inversely transforms the prediction result output from the single-label model (step S306). Next, the prediction device 70 stores the inversely transformed prediction result in the prediction result storage unit 80 (step S308). When the model type is a multi-label model, the prediction device 70 inputs evaluation data to the multi-label model and obtains the prediction result output from the multi-label model (step S310). Next, the prediction device 70 stores the prediction result output from the multi-label model in the prediction result storage unit 80 (step S312).

次に予測装置70は、シングルラベルモデルの予測結果と評価用データにおける正解ラベルとを比較し、マルチラベルモデルの予測結果と評価用データにおける正解ラベルとを比較する(ステップS320)。これにより予測装置70は、マルチラベルモデルの予測精度およびシングルラベルモデルの予測精度に基づいてシングルラベルモデルを評価することができる(ステップS322)。例えば、予測装置70は、シングルラベルモデルがマルチラベルモデルに近い予測精度を持っているかを評価することができる。 Next, the prediction device 70 compares the prediction result of the single-label model with the correct label in the evaluation data, and compares the prediction result of the multi-label model with the correct label in the evaluation data (step S320). This allows the prediction device 70 to evaluate the single-label model based on the prediction accuracy of the multi-label model and the prediction accuracy of the single-label model (step S322). For example, the prediction device 70 can evaluate whether the single-label model has a prediction accuracy close to that of the multi-label model.

図13は、マルチラベルモデルの学習データに含まれるラベル数と、シングルラベルモデルにより予測したスコアと、およびマルチラベルモデルにより予測したスコアとの関係を示す図である。図13においては、ラベルに対応したスコアを、折れ線グラフで示している。図13によれば、マルチラベルモデルおよびシングルラベルモデルの双方に同じ評価データを入力しても、マルチラベルモデルおよびシングルラベルモデルにより予測したスコアに大きな差がないことが分かる。したがって、実施形態のようにマルチラベルモデルの学習データを変換してシングルラベルモデルを学習させても、マルチラベルモデルと同様の精度で予測を行うことができることが分かる。 Figure 13 is a diagram showing the relationship between the number of labels included in the training data of the multi-label model, the score predicted by the single-label model, and the score predicted by the multi-label model. In Figure 13, the scores corresponding to the labels are shown in a line graph. According to Figure 13, even if the same evaluation data is input to both the multi-label model and the single-label model, there is no significant difference between the scores predicted by the multi-label model and the single-label model. Therefore, it can be seen that even if the training data of the multi-label model is converted and a single-label model is trained as in the embodiment, predictions can be made with the same accuracy as the multi-label model.

以上のように、実施形態の学習装置40によれば、対象データを入力した場合に複数の正解ラベルを出力する第1の機械学習モデル(マルチラベルモデル)を学習させる第1の学習データを、当該第1の学習データに含まれる複数のラベルを当該複数のラベルのフラグに基づいて統合した統合ラベルを含む第2の学習データに変換する変換部46と、変換部46により変換された第2の学習データを用いて、対象データを入力した場合に一つの正解ラベルを出力する第2の機械学習モデル(シングルラベルモデル)を学習させる学習部(学習処理部42、モデルパラメータ記憶部60およびシングルラベルモデル48)と、を備える、学習装置を実現させることができる。また、学習装置40によれば、当該学習装置に対応した学習方法および、学習方法に対応した処理を実行するプログラムを実現することができる。実施形態の学習装置40によれば、マルチラベルモデルの学習データを用いてシングルラベルモデルの学習を行うことができる。この結果、実施形態の学習装置40によれば、マルチラベルモデルの学習データのアノテーション作業を行えば、アノテーション作業の負担を増加させることなく、複数のラベルから一つの正解ラベルを予測するシングルラベルモデルの学習処理と複数のラベルから複数の正解ラベルを予測するマルチラベルモデルの学習処理とを行わせることができる。 As described above, according to the learning device 40 of the embodiment, a learning device can be realized that includes a conversion unit 46 that converts first learning data for learning a first machine learning model (multi-label model) that outputs multiple correct labels when target data is input, into second learning data including an integrated label obtained by integrating multiple labels included in the first learning data based on the flags of the multiple labels, and a learning unit (learning processing unit 42, model parameter storage unit 60, and single label model 48) that uses the second learning data converted by the conversion unit 46 to learn a second machine learning model (single label model) that outputs one correct label when target data is input. In addition, according to the learning device 40, a learning method corresponding to the learning device and a program that executes processing corresponding to the learning method can be realized. According to the learning device 40 of the embodiment, it is possible to learn a single label model using learning data of a multi-label model. As a result, according to the learning device 40 of the embodiment, by performing annotation work on the learning data of the multi-label model, it is possible to perform the learning process of a single-label model that predicts one correct label from multiple labels and the learning process of a multi-label model that predicts multiple correct labels from multiple labels without increasing the burden of the annotation work.

実施形態の予測装置70によれば、対象データを入力した場合に複数の正解ラベルを出力する第1の機械学習モデル(マルチラベルモデル)を学習させる第1の学習データを変換した第2の学習データであって、当該第1の学習データに含まれる複数のラベルを当該複数のラベルのフラグに基づいて統合した統合ラベルを含む第2の学習データを用いて学習された第2の機械学習モデル(シングルラベルモデル)に、対象データを入力し、第2の機械学習モデルから出力された正解ラベルを含む予測結果を取得する予測部72と、予測部72により取得した正解ラベルが統合ラベルである場合には統合ラベルの元になった複数のラベルのフラグを変換し、予測結果から統合ラベルを削除する逆変換部74と、を備える、予測装置を実現することができる。また、予測装置70によれば、当該予測装置に対応した予測方法および、予測方法に対応した処理を実行するプログラムを実現することができる。実施形態の予測装置70によれば、マルチラベルモデルの学習データを変換した学習データを用いてシングルラベルモデルの学習を行い、シングルラベルモデルの予測結果を逆変換してマルチラベルモデルの予測結果を出力することができる。この結果、実施形態の予測装置70によれば、マルチラベルモデルの学習データのアノテーション作業を行えば、アノテーション作業の負担を増加させることなく、複数のラベルから一つの正解ラベルを予測するシングルラベルモデルの予測処理と複数のラベルから複数の正解ラベルを予測するマルチラベルモデルの予測処理とを行うことができる。 According to the prediction device 70 of the embodiment, a prediction device can be realized that includes a prediction unit 72 that inputs target data into a second machine learning model (single-label model) trained using second learning data including an integrated label obtained by integrating multiple labels included in the first learning data based on the flags of the multiple labels, and a reverse conversion unit 74 that converts the flags of the multiple labels that are the basis of the integrated label and deletes the integrated label from the prediction result when the correct label acquired by the prediction unit 72 is an integrated label. In addition, according to the prediction device 70, a prediction method corresponding to the prediction device and a program that executes processing corresponding to the prediction method can be realized. According to the prediction device 70 of the embodiment, a single-label model can be trained using training data converted from the training data of the multi-label model, and the prediction result of the single-label model can be reverse converted to output the prediction result of the multi-label model. As a result, according to the prediction device 70 of the embodiment, by performing annotation work on the learning data of the multi-label model, it is possible to perform prediction processing of a single-label model that predicts one correct label from multiple labels and prediction processing of a multi-label model that predicts multiple correct labels from multiple labels, without increasing the burden of the annotation work.

実施形態のデータ分類システム1によれば、データに複数の正解ラベルが付与された第1の学習データを用いて学習された第1の機械学習モデル(マルチラベルモデル)に対象データを入力し、第1の機械学習モデルの予測結果を取得するステップと、第1の学習データに含まれる複数のラベルを当該複数のラベルのフラグに基づいて統合した統合ラベルを含む第2の学習データを用いて学習された第2の機械学習モデル(シングルラベルモデル)に対象データを入力し、正解ラベルが統合ラベルである場合に統合ラベルの元になった複数のラベルのフラグを変換し、予測結果から統合ラベルを削除して、第2の機械学習モデルの予測結果を取得するステップと、第1の機械学習モデルの予測結果と第2の機械学習モデルの予測結果とを比較することで、第2の機械学習モデルを評価するステップと、を含む、機械学習モデルの評価方法を実現することができる。このデータ分類システム1によれば、一度のアノテーション作業によりマルチラベルモデルの学習データを生成してマルチラベルモデルおよびシングルラベルモデルの学習を行った場合に、シングルラベルモデルの予測結果を評価することができる。 According to the data classification system 1 of the embodiment, a method for evaluating a machine learning model can be realized, including the steps of inputting target data into a first machine learning model (multi-label model) trained using first training data in which multiple correct labels are assigned to data, and obtaining a prediction result of the first machine learning model, inputting target data into a second machine learning model (single-label model) trained using second training data including an integrated label in which multiple labels included in the first training data are integrated based on the flags of the multiple labels, converting the flags of the multiple labels that are the basis of the integrated label when the correct label is the integrated label, deleting the integrated label from the prediction result, and obtaining a prediction result of the second machine learning model, and evaluating the second machine learning model by comparing the prediction result of the first machine learning model with the prediction result of the second machine learning model. According to this data classification system 1, when training data for a multi-label model is generated by a single annotation operation and training is performed for a multi-label model and a single-label model, the prediction result of the single-label model can be evaluated.

なお、各実施形態および変形例について説明したが、一例であってこれらに限られず、例えば、各実施形態や各変形例のうちのいずれかや、各実施形態の一部や各変形例の一部を、他の1または複数の実施形態や他の1または複数の変形例と組み合わせて本発明の一態様を実現させてもよい。 Note that although each embodiment and each modified example have been described, these are merely examples and are not intended to be limiting. For example, any of the embodiments and modified examples, or a part of each embodiment or a part of each modified example, may be combined with one or more other embodiments or one or more other modified examples to realize one aspect of the present invention.

なお、本実施形態におけるユーザ端末装置100、検索サーバ装置200、およびバッチサーバ装置300の各処理を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、当該記録媒体に記録されたプログラムを、コンピュータシステムに読み込ませ、実行することにより、ユーザ端末装置100、検索サーバ装置200、およびバッチサーバ装置300に係る上述した種々の処理を行ってもよい。 In addition, the programs for executing the processes of the user terminal device 100, the search server device 200, and the batch server device 300 in this embodiment may be recorded on a computer-readable recording medium, and the programs recorded on the recording medium may be read into a computer system and executed to perform the various processes described above related to the user terminal device 100, the search server device 200, and the batch server device 300.

なお、ここでいう「コンピュータシステム」とは、OSや周辺機器などのハードウェアを含むものであってもよい。また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリなどの書き込み可能な不揮発性メモリ、CD-ROMなどの可搬媒体、コンピュータシステムに内蔵されるハードディスクなどの記憶装置のことをいう。 Note that the term "computer system" here may include hardware such as the OS and peripheral devices. In addition, if a WWW system is used, the term "computer system" also includes the homepage provision environment (or display environment). Furthermore, "computer-readable recording media" refers to storage devices such as flexible disks, magneto-optical disks, ROMs, writable non-volatile memories such as flash memory, portable media such as CD-ROMs, and hard disks built into computer systems.

さらに「コンピュータ読み取り可能な記録媒体」とは、インターネットなどのネットワークや電話回線などの通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic
Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置などに格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。
Furthermore, the term "computer-readable recording medium" refers to a volatile memory (e.g., DRAM (Dynamic Random Access Memory)) within a computer system that is a server or a client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line.
This also includes those that hold a program for a certain period of time, such as a random access memory (RDMA). The program may be transmitted from a computer system in which the program is stored in a storage device to another computer system via a transmission medium, or by a transmission wave in the transmission medium.

ここで、プログラムを伝送する「伝送媒体」は、インターネットなどのネットワーク(通信網)や電話回線などの通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。 Here, the "transmission medium" that transmits the program refers to a medium that has the function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. The above program may also be one that realizes part of the above-mentioned functions. Furthermore, it may be one that can realize the above-mentioned functions in combination with a program already recorded in the computer system, a so-called differential file (differential program).

以上、本発明の実施形態について図面を参照して詳述したが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計なども含まれる。 The above describes an embodiment of the present invention in detail with reference to the drawings, but the specific configuration is not limited to this embodiment, and includes designs that do not deviate from the gist of the invention.

10 要求端末
20 アノテーション端末
30 マルチラベル記憶部
40 学習装置
42 学習処理部
44 マルチラベルモデル
46 変換部
48 シングルラベルモデル
50 シングルラベル記憶部
60 モデルパラメータ記憶部
70 予測装置
72 予測部
74 逆変換部
76 予測結果出力部
80 予測結果記憶部
REFERENCE SIGNS LIST 10 Request terminal 20 Annotation terminal 30 Multi-label storage unit 40 Learning device 42 Learning processing unit 44 Multi-label model 46 Conversion unit 48 Single-label model 50 Single-label storage unit 60 Model parameter storage unit 70 Prediction device 72 Prediction unit 74 Inverse conversion unit 76 Prediction result output unit 80 Prediction result storage unit

Claims (4)

アノテーション端末から取得した一つの学習データ対して複数の正解ラベルおよび第1の値を持つフラグを付与する情報を記憶するマルチラベル記憶部と、
対象データを入力した場合に複数の正解ラベルを出力する第1の機械学習モデルを学習させる第1の学習データのうち前記フラグの値が第1の値となっている複数のラベルから一つの新たな統合ラベルを生成し、前記統合ラベルのフラグを前記第1の値に設定し、前記統合ラベルの元になった複数のラベルのフラグを第2の値に設定することで、前記統合ラベルを含む第2の学習データに変換する変換部と、
前記変換部により変換された前記第2の学習データを用いて、対象データを入力した場合に一つの正解ラベルを出力する第2の機械学習モデルを学習させる学習部と、
前記第2の機械学習モデルに、対象データを入力し、前記第2の機械学習モデルから出力された正解ラベルを含む予測結果を取得する予測部と、
前記予測部により取得した正解ラベルが前記統合ラベルである場合には前記統合ラベルの元になった複数のラベルのフラグを前記第1の値に変換し、前記予測結果から前記統合ラベルを削除する逆変換部と、
を備える、データ分類システム
a multi-label storage unit that stores information for assigning a plurality of correct labels and a flag having a first value to one piece of learning data acquired from an annotation terminal;
a conversion unit that generates one new integrated label from a plurality of labels having the flag value of a first value in first learning data for training a first machine learning model that outputs a plurality of correct labels when target data is input, sets a flag of the integrated label to the first value, and sets flags of the plurality of labels that are the basis of the integrated label to a second value, thereby converting the first learning data into second learning data including the integrated label;
a learning unit that uses the second learning data converted by the conversion unit to train a second machine learning model that outputs one correct label when target data is input;
A prediction unit that inputs target data to the second machine learning model and obtains a prediction result including a correct answer label output from the second machine learning model;
an inverse conversion unit that converts flags of a plurality of labels that are the source of the integrated label to the first value when the correct label acquired by the prediction unit is the integrated label, and deletes the integrated label from the prediction result;
A data classification system comprising:
記憶部が、アノテーション端末から取得した一つの学習データ対して複数の正解ラベルおよび第1の値を持つフラグを付与する情報を記憶するステップと、
学習装置が、対象データを入力した場合に複数の正解ラベルを出力する第1の機械学習モデルを学習させる第1の学習データのうち前記フラグの値が第1の値となっている複数のラベルから一つの新たな統合ラベルを生成し、前記統合ラベルのフラグを前記第1の値に設定し、前記統合ラベルの元になった複数のラベルのフラグを第2の値に設定することで、前記統合ラベルを含む第2の学習データに変換するステップと、
前記学習装置が、変換された前記第2の学習データを用いて、対象データを入力した場合に一つの正解ラベルを出力する第2の機械学習モデルを学習させるステップと、
予測装置が、前記第2の機械学習モデルに、対象データを入力し、前記第2の機械学習モデルから出力された正解ラベルを含む予測結果を取得するステップと、
前記予測装置が、取得した正解ラベルが前記統合ラベルである場合には前記統合ラベルの元になった複数のラベルのフラグを前記第1の値に変換し、前記予測結果から前記統合ラベルを削除するステップと、
を含むデータ分類方法
A step in which a storage unit stores information for assigning a plurality of correct labels and a flag having a first value to one piece of learning data acquired from the annotation terminal;
a step of converting the data into second learning data including the integrated label by generating a new integrated label from a plurality of labels having a first value of the flag in first learning data for training a first machine learning model that outputs a plurality of correct labels when target data is inputted, setting a flag of the integrated label to the first value, and setting flags of the plurality of labels that are the basis of the integrated label to a second value;
A step in which the learning device uses the converted second learning data to train a second machine learning model that outputs one correct label when target data is input;
A step in which the prediction device inputs target data to the second machine learning model and obtains a prediction result including a correct answer label output from the second machine learning model;
a step of converting flags of a plurality of labels that are the source of the integrated label to the first value when the obtained correct label is the integrated label, and deleting the integrated label from the prediction result, by the prediction device;
Data classification methods , including:
コンピュータに、
アノテーション端末から取得した一つの学習データ対して複数の正解ラベルおよび第1の値を持つフラグを付与する情報を記憶するステップと、
対象データを入力した場合に複数の正解ラベルを出力する第1の機械学習モデルを学習させる第1の学習データのうち前記フラグの値が第1の値となっている複数のラベルから一つの新たな統合ラベルを生成し、前記統合ラベルのフラグを前記第1の値に設定し、前記統合ラベルの元になった複数のラベルのフラグを第2の値に設定することで、前記統合ラベルを含む第2の学習データに変換するステップと、
変換された前記第2の学習データを用いて、対象データを入力した場合に一つの正解ラベルを出力する第2の機械学習モデルを学習させるステップと、
前記第2の機械学習モデルに、対象データを入力し、前記第2の機械学習モデルから出された正解ラベルを含む予測結果を取得するステップと、
取得した正解ラベルが前記統合ラベルである場合には前記統合ラベルの元になった複数のラベルのフラグを前記第1の値に変換し、前記予測結果から前記統合ラベルを削除するステップと、
を実行させる、プログラム。
On the computer,
storing information for assigning a plurality of correct labels and a flag having a first value to one piece of learning data acquired from the annotation terminal;
a step of generating one new integrated label from a plurality of labels having the flag value of a first value among first learning data for training a first machine learning model that outputs a plurality of correct labels when target data is input, setting a flag of the integrated label to the first value, and setting flags of the plurality of labels that are the basis of the integrated label to a second value, thereby converting the data into second learning data including the integrated label;
A step of training a second machine learning model that outputs one correct label when target data is input using the converted second training data;
inputting target data into the second machine learning model and obtaining a prediction result including a correct answer label output from the second machine learning model;
converting flags of a plurality of labels that are the basis of the integrated label to the first value when the acquired correct label is the integrated label, and deleting the integrated label from the prediction result;
A program to execute.
記憶部が、アノテーション端末から取得した一つの学習データ対して複数の正解ラベルおよび第1の値を持つフラグを付与する情報を記憶するステップと、
学習装置が、対象データを入力した場合に複数の正解ラベルを出力する第1の機械学習モデルを学習させる第1の学習データのうち前記フラグの値が第1の値となっている複数のラベルから一つの新たな統合ラベルを生成し、前記統合ラベルのフラグを前記第1の値に設定し、前記統合ラベルの元になった複数のラベルのフラグを第2の値に設定することで、前記統合ラベルを含む第2の学習データに変換するステップと、
前記学習装置が、変換された前記第2の学習データを用いて、対象データを入力した場合に一つの正解ラベルを出力する第2の機械学習モデルを学習させるステップと、
予測装置が、データに複数の正解ラベルが付与された第1の学習データを用いて学習された第1の機械学習モデルに対象データを入力し、前記第1の機械学習モデルの予測結果を取得するステップと、
前記予測装置が、前記第1の学習データに含まれる複数のラベルを当該複数のラベルのフラグに基づいて統合した統合ラベルを含む第2の学習データを用いて学習された第2の機械学習モデルに対象データを入力し、前記正解ラベルが前記統合ラベルである場合に前記統合ラベルの元になった複数のラベルのフラグを前記第1の値に変換し、前記予測結果から前記統合ラベルを削除して、前記第2の機械学習モデルの予測結果を取得するステップと、
前記予測装置が、前記第1の機械学習モデルの予測結果と前記第2の機械学習モデルの予測結果とを比較することで、前記第2の機械学習モデルを評価するステップと、
を含む、機械学習モデルの評価方法。
a step of storing information for assigning a plurality of correct labels and a flag having a first value to one piece of learning data acquired from the annotation terminal, in a storage unit;
a step of converting the data into second learning data including the integrated label by generating a new integrated label from a plurality of labels having a first value of the flag in first learning data for training a first machine learning model that outputs a plurality of correct labels when target data is inputted, setting a flag of the integrated label to the first value, and setting flags of the plurality of labels that are the basis of the integrated label to a second value;
A step in which the learning device uses the converted second learning data to train a second machine learning model that outputs one correct label when target data is input;
A step in which a prediction device inputs target data to a first machine learning model trained using first training data in which a plurality of correct answer labels are assigned to the data, and obtains a prediction result of the first machine learning model;
a step of inputting target data to a second machine learning model trained using second learning data including an integrated label obtained by integrating multiple labels included in the first learning data based on flags of the multiple labels, converting flags of the multiple labels that are the basis of the integrated label to the first value when the correct label is the integrated label, and deleting the integrated label from the prediction result, thereby acquiring a prediction result of the second machine learning model;
The prediction device evaluates the second machine learning model by comparing a prediction result of the first machine learning model with a prediction result of the second machine learning model;
How to evaluate machine learning models, including:
JP2021126642A 2021-08-02 2021-08-02 Data classification system, data classification method, program, and method for evaluating machine learning models Active JP7702298B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021126642A JP7702298B2 (en) 2021-08-02 2021-08-02 Data classification system, data classification method, program, and method for evaluating machine learning models

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021126642A JP7702298B2 (en) 2021-08-02 2021-08-02 Data classification system, data classification method, program, and method for evaluating machine learning models

Publications (2)

Publication Number Publication Date
JP2023021647A JP2023021647A (en) 2023-02-14
JP7702298B2 true JP7702298B2 (en) 2025-07-03

Family

ID=85201483

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021126642A Active JP7702298B2 (en) 2021-08-02 2021-08-02 Data classification system, data classification method, program, and method for evaluating machine learning models

Country Status (1)

Country Link
JP (1) JP7702298B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20250181990A1 (en) * 2023-11-30 2025-06-05 Rakuten Group, Inc. Information processing apparatus and information processing method for machine learning

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020101968A (en) 2018-12-21 2020-07-02 株式会社 日立産業制御ソリューションズ Multi-label data learning support device, multi-label data learning support method, and multi-label data learning support program
US10769766B1 (en) 2018-05-31 2020-09-08 Amazon Technologies, Inc. Regularized multi-label classification from partially labeled training data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10769766B1 (en) 2018-05-31 2020-09-08 Amazon Technologies, Inc. Regularized multi-label classification from partially labeled training data
JP2020101968A (en) 2018-12-21 2020-07-02 株式会社 日立産業制御ソリューションズ Multi-label data learning support device, multi-label data learning support method, and multi-label data learning support program

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Eva Gibaja, 外1名,"A Tutorial on Multi-Label Learning",ACM Computing Surveys(CSUR),第47巻, 第3号,2015年04月16日,p.1-38
Jesse Read,"A Pruned Problem Transformation Method for Multi-label Classification",[online], [text],2008年,[取得日 2024.12.19], 取得先<https://users.ics.aalto.fi/jesse/papers/NZCSRCS08.pdf>

Also Published As

Publication number Publication date
JP2023021647A (en) 2023-02-14

Similar Documents

Publication Publication Date Title
CN114528844B (en) Intention recognition method, device, computer equipment and storage medium
CN108536800B (en) Text classification method, system, computer device and storage medium
JP6235082B1 (en) Data classification apparatus, data classification method, and program
WO2022227217A1 (en) Text classification model training method and apparatus, and device and readable storage medium
CN111813910A (en) Method, system, terminal device and computer storage medium for updating customer service problem
CN113505797A (en) Model training method and device, computer equipment and storage medium
JP2013519138A (en) Join embedding for item association
Sahu et al. Modified K-NN algorithm for classification problems with improved accuracy
CN108304429A (en) Information recommendation method, device and computer equipment
CN107291840B (en) A method and device for constructing a user attribute prediction model
CN117726884B (en) Training method of object category recognition model, object category recognition method and device
CN118350348B (en) Marketing text generation method and device, electronic equipment and storage medium
CN114880442B (en) Method, device, computer equipment and storage medium for identifying knowledge points in exercises
JP6199461B1 (en) Information processing apparatus, information processing method, and program
JP7702298B2 (en) Data classification system, data classification method, program, and method for evaluating machine learning models
CN117725220A (en) Method, server and storage medium for document characterization and document retrieval
KR20220116110A (en) Method for determining a confidence level of inference data produced by artificial neural network
CN115329746A (en) Event extraction method, device and equipment
CN114036267B (en) Dialogue methods and systems
Gong Analysis of internet public opinion popularity trend based on a deep neural network
CN119316389A (en) A dialogue method, device, equipment and medium
CN115222081A (en) Degree resource prediction method, device and computer equipment
US11829735B2 (en) Artificial intelligence (AI) framework to identify object-relational mapping issues in real-time
CN117932058A (en) Emotion recognition method, device and equipment based on text analysis
CN117591726A (en) Web service package recommendation method, system, media and equipment based on multi-task learning

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20241223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250321

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250528

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250610

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250623

R150 Certificate of patent or registration of utility model

Ref document number: 7702298

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350