JP2020042330A - Information processing apparatus, data classification method and program - Google Patents
Information processing apparatus, data classification method and program Download PDFInfo
- Publication number
- JP2020042330A JP2020042330A JP2018166803A JP2018166803A JP2020042330A JP 2020042330 A JP2020042330 A JP 2020042330A JP 2018166803 A JP2018166803 A JP 2018166803A JP 2018166803 A JP2018166803 A JP 2018166803A JP 2020042330 A JP2020042330 A JP 2020042330A
- Authority
- JP
- Japan
- Prior art keywords
- data
- cluster
- sample data
- learning model
- positive
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、情報処理装置、データ分類方法およびプログラムに関する。 The present invention relates to an information processing device, a data classification method, and a program.
機械翻訳、情報検索または質問応答等の場面において、機械学習をベースにした自然言語処理を活用する研究が盛んに行われている。この機械学習を活用した分野においては、その学習精度を高めるために、学習データとして用いる十分なデータセットが必要となる。 2. Description of the Related Art In a case of machine translation, information retrieval, question answering, and the like, studies utilizing natural language processing based on machine learning have been actively conducted. In the field utilizing machine learning, a sufficient data set to be used as learning data is required to increase the learning accuracy.
このようなデータセットに関して、学習データを属性ごとに分類する機械学習のアルゴリズムがある。特許文献1には、自然言語処理を用いる分類器のトレーニング方法が開示されている。機械学習のアルゴリズムは、パターンマッチング、教師なし学習、半教師あり学習または教師あり学習等の手法が知られている。 For such a data set, there is a machine learning algorithm for classifying learning data for each attribute. Patent Document 1 discloses a training method for a classifier using natural language processing. As a machine learning algorithm, methods such as pattern matching, unsupervised learning, semi-supervised learning or supervised learning are known.
しかし、従来の方法では、分類対象となる大量のデータに対して、各データの属性を手作業でラベリングする必要があり、ラベリングに対する負荷が大きい。一方で、ラベリングを必要としない教師なし学習等の手法を用いた場合には、分類精度が低下してしまう。そのため、分類対象のデータに対するラベリングの負荷を低減させるとともに、自然言語処理に用いるデータの分類精度を向上させたいという課題があった。 However, in the conventional method, it is necessary to manually label the attribute of each data with respect to a large amount of data to be classified, and the load on the labeling is large. On the other hand, when a method such as unsupervised learning that does not require labeling is used, the classification accuracy is reduced. Therefore, there is a problem that it is desired to reduce the labeling load on the data to be classified and to improve the classification accuracy of the data used for natural language processing.
請求項1に係る情報処理装置は、特定のカテゴリに対して、自然言語処理に用いるテキストデータの分類を行う情報処理装置であって、前記テキストデータのうち、前記カテゴリの正例または負例のいずれの属性であるかを示す正負ラベルがラベリングされたサンプルデータの特徴量を抽出する特徴量抽出手段と、前記抽出された特徴量を用いた教師なし学習に基づいて、第1の学習モデルを生成する第1の生成手段と、前記サンプルデータにラベリングされた正負ラベルに基づいて、前記生成された第1の学習モデルに含まれるクラスタが、前記正例または前記負例のいずれの属性を有する集合であるかを特定するクラスタ属性特定手段と、前記特定されたクラスタの属性、および当該クラスタに属するサンプルデータにラベリングされた正負ラベルに基づいて、前記分類を行うための制約を設定する制約設定手段と、前記設定された制約を用いた半教師あり学習に基づいて、第2の学習モデルを生成する第2の生成手段と、前記生成された第2の学習モデルに含まれるクラスタに対して、前記テキストデータのうち、前記正負ラベルがラベリングされていない未知データを分類する分類手段と、を備える。 The information processing device according to claim 1, wherein the information processing device classifies text data used for natural language processing with respect to a specific category, wherein the text data includes a positive example or a negative example of the category. A first learning model based on unsupervised learning using the extracted feature amount, and a feature amount extraction unit that extracts a feature amount of the sample data labeled with a positive / negative label indicating which attribute it is; A cluster included in the generated first learning model has the attribute of either the positive example or the negative example based on first generating means for generating, and a positive / negative label labeled on the sample data. Cluster attribute specifying means for specifying whether the set is a set, attributes of the specified cluster, and sample data belonging to the cluster Constraint setting means for setting a constraint for performing the classification based on the negative label; and second generating means for generating a second learning model based on semi-supervised learning using the set constraint. And classifying means for classifying unknown data in which the positive / negative labels are not labeled in the text data with respect to clusters included in the generated second learning model.
本発明によれば、分類対象のデータに対するラベリングの負荷を低減させるとともに、自然言語処理に用いるデータの分類精度を向上させることができる。 According to the present invention, it is possible to reduce the load of labeling on data to be classified and improve the classification accuracy of data used for natural language processing.
以下、図面を参照しながら、発明を実施するための形態を説明する。なお、図面の説明において同一要素には同一符号を付し、重複する説明は省略する。 Hereinafter, embodiments for carrying out the invention will be described with reference to the drawings. In the description of the drawings, the same elements will be denoted by the same reference symbols, without redundant description.
●システム構成●
図1は、実施形態に係るデータベースサーバが適用されるシステムの一例を示す図である。図1に示す会議システム1は、本実施形態に係るデータベースサーバ30による機械学習によって生成された学習モデルを、通信端末70を利用した会議に利用する場合の例である。会議システム1は、例えば、通信端末70によって集音された音声データに対して、データベースサーバ30によって生成された学習モデルを用いた自然言語処理を行うことができるシステムである。
● System configuration ●
FIG. 1 is a diagram illustrating an example of a system to which the database server according to the embodiment is applied. The conference system 1 illustrated in FIG. 1 is an example of a case where a learning model generated by machine learning by the database server 30 according to the present embodiment is used for a conference using the communication terminal 70. The conference system 1 is, for example, a system that can perform natural language processing on the audio data collected by the communication terminal 70 using the learning model generated by the database server 30.
会議システム1は、管理サーバ10、データベースサーバ30、WEBサーバ50および通信端末70によって構成されている。会議システム1を構成する各装置は、通信ネットワーク5を介してそれぞれ接続されている。通信ネットワーク5は、例えば、LAN(Local Area Network)、専用線およびインターネット等によって構築される。通信ネットワーク5は、有線だけでなく、Wi−Fi(Wireless Fidelity)や、Bluetooth(登録商標)等の無線による通信が行われる箇所があってもよい。 The conference system 1 includes a management server 10, a database server 30, a web server 50, and a communication terminal 70. Each device constituting the conference system 1 is connected via a communication network 5. The communication network 5 is constructed by, for example, a LAN (Local Area Network), a dedicated line, and the Internet. The communication network 5 may include not only wired communication but also wireless communication such as Wi-Fi (Wireless Fidelity) and Bluetooth (registered trademark).
管理サーバ10、データベースサーバ30およびWEBサーバ50は、管理システム2を構成する。管理システム2は、通信端末70からによって集音された音声データ等の発話録データに対して、自然言語処理を行うシステムである。管理サーバ10は、通信ネットワーク5を介して、通信端末70に対して、各種機能を実現するためのアプリケーション等を提供するサーバコンピュータである。 The management server 10, the database server 30, and the web server 50 constitute the management system 2. The management system 2 is a system that performs natural language processing on speech record data such as voice data collected by the communication terminal 70. The management server 10 is a server computer that provides an application and the like for implementing various functions to the communication terminal 70 via the communication network 5.
データベースサーバ30は、自然言語処理に用いる複数のテキストデータ(データセット)を記憶するサーバコンピュータである。また、データベースサーバ30は、データセットを機械学習により特定のカテゴリの属性ごとに分類する分類器としての機能を有する。本実施形態において、会議システム1は、データベースサーバ30において会話要素の有無によって分類された学習モデルを用いて、例えば、通信端末70によって生成されたデータに対する自然言語処理を行う。 The database server 30 is a server computer that stores a plurality of text data (data sets) used for natural language processing. In addition, the database server 30 has a function as a classifier that classifies the data set into attributes of a specific category by machine learning. In the present embodiment, the conference system 1 performs, for example, natural language processing on data generated by the communication terminal 70 using a learning model classified by the presence or absence of a conversation element in the database server 30.
WEBサーバ50は、データベースサーバ30または通信端末70に対して、WEBサービス(HTTP:Hypertext Transfer Protocol通信)による中継機能を提供するサーバ装置である。WEBサーバ50は、WEBサービスを介して、データベースサーバ30へ自然言語処理に用いるテキストデータ200を送信する。なお、WEBサーバ50の機能は、データベースサーバ30および通信端末70に備えられていてもよい。 The WEB server 50 is a server device that provides the database server 30 or the communication terminal 70 with a relay function by a WEB service (HTTP: Hypertext Transfer Protocol communication). The WEB server 50 transmits text data 200 used for natural language processing to the database server 30 via the WEB service. The function of the web server 50 may be provided in the database server 30 and the communication terminal 70.
通信端末70は、会議システム1の利用者が使用するノートPC(Personal Computer)等の端末装置である。会議システム1の利用者は、通信端末70にインストールされた会議アプリ等の特定のアプリケーションを用いて会議を開催する。通信端末70は、会議中に行われた利用者の発言等を集音した音声データを管理システム2へ送信する。そして、通信端末70は、管理システム2によって自然言語処理された議事録等の変換データを受信することによって、自動的に会議の議事録等を作成することができる。なお、通信端末70は、通信ネットワーク5に接続可能な通信機能を備えていればノートPCに限られない。通信端末70は、ディスクトップPC、タブレット端末、スマートフォン、電子黒板、カーナビゲーション装置またはマイク等の集音装置であってもよい。また、図1は、通信端末70が一つである場合の例を説明したが、通信端末70の数はこれに限られず、会議システム1は、複数の通信端末70を有してもよい。 The communication terminal 70 is a terminal device such as a notebook PC (Personal Computer) used by a user of the conference system 1. The user of the conference system 1 holds a conference using a specific application such as a conference application installed on the communication terminal 70. The communication terminal 70 transmits, to the management system 2, audio data obtained by collecting a user's speech or the like made during the conference. The communication terminal 70 can automatically create the minutes of the meeting by receiving the converted data such as the minutes processed by the management system 2 in the natural language. Note that the communication terminal 70 is not limited to a notebook PC as long as it has a communication function connectable to the communication network 5. The communication terminal 70 may be a sound collecting device such as a desktop PC, a tablet terminal, a smartphone, an electronic blackboard, a car navigation device, or a microphone. FIG. 1 illustrates an example in which the number of the communication terminals 70 is one, but the number of the communication terminals 70 is not limited to this, and the conference system 1 may include a plurality of the communication terminals 70.
なお、図1は、会議システムの例を説明したが、図1に示したシステムの用途は、会議に限られず、自然言語処理を必要とする所定のイベントであってもよい。例えば、会議システム1は、会合、集い、寄り合い、相談、打ち合わせ等の音声データに対するテキスト変換を利用するイベントに適用されてもよい。また、会議システム1は、通信端末70を用いた情報検索等のイベントに適用されてもよい。さらに、管理サーバ10およびデータベースサーバ30の機能は、一つのサーバによって実現される構成であってもよいし、データベースサーバ30の機能は、複数のサーバによって実現される構成であってもよい。 Although FIG. 1 illustrates an example of the conference system, the application of the system illustrated in FIG. 1 is not limited to a conference, and may be a predetermined event that requires natural language processing. For example, the conference system 1 may be applied to an event that uses text conversion for audio data, such as a meeting, a gathering, a meeting, a consultation, and a meeting. The conference system 1 may be applied to an event such as an information search using the communication terminal 70. Further, the functions of the management server 10 and the database server 30 may be realized by one server, or the functions of the database server 30 may be realized by a plurality of servers.
●ハードウエア構成●
続いて、実施形態に係る各装置のハードウエア構成について説明する。図1に示した会議システム1を構成する各装置は、一般的なコンピュータの構成を有する。ここでは、一般的なコンピュータのハードウエア構成例について説明する。
● Hardware configuration ●
Subsequently, a hardware configuration of each device according to the embodiment will be described. Each device configuring the conference system 1 illustrated in FIG. 1 has a configuration of a general computer. Here, a hardware configuration example of a general computer will be described.
図2は、実施形態に係るコンピュータのハードウエア構成の一例を示す図である。コンピュータ100は、CPU(Central Processing Unit)101、ROM(Read Only Memory)102、RAM(Random Access Memory)103、ストレージ104、入出力インターフェース(I/F)105、ネットワークインターフェース(I/F)106およびバスライン107を有する。 FIG. 2 is a diagram illustrating an example of a hardware configuration of a computer according to the embodiment. The computer 100 includes a CPU (Central Processing Unit) 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, a storage 104, an input / output interface (I / F) 105, a network interface (I / F) 106, It has a bus line 107.
CPU101は、ROM102やストレージ104等に格納された本発明に係るプログラムやデータをRAM103上に読み出し、処理を実行することで、コンピュータ100の各機能を実現する演算装置である。例えば、データベースサーバ30は、本発明に係るプログラムが実行されることで本発明に係るデータ分類方法を実現する。 The CPU 101 is an arithmetic unit that realizes each function of the computer 100 by reading out a program or data according to the present invention stored in the ROM 102, the storage 104, or the like onto the RAM 103 and executing a process. For example, the database server 30 implements the data classification method according to the present invention by executing the program according to the present invention.
ROM102は、電源を切ってもプログラムやデータを保持することができる不揮発性のメモリである。ROM102は、例えば、フラッシュROM等により構成される。ROM102は、多種の用途に対応したSDK(Software Development Kit)がインストールされており、SDKのアプリケーションを用いて、コンピュータ100の機能やネットワーク接続などを実現することが可能である。 The ROM 102 is a nonvolatile memory that can retain programs and data even when the power is turned off. The ROM 102 is configured by, for example, a flash ROM or the like. The ROM 102 is installed with an SDK (Software Development Kit) corresponding to various uses, and the functions of the computer 100 and the network connection can be realized by using the SDK application.
RAM103は、CPU101のワークエリア等として用いられる揮発性のメモリである。ストレージ104は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)等のストレージデバイスである。ストレージ104は、例えば、OS(Operation System)、アプリケーションプログラム、および各種データ等を記憶する。 The RAM 103 is a volatile memory used as a work area or the like of the CPU 101. The storage 104 is a storage device such as a hard disk drive (HDD) and a solid state drive (SSD). The storage 104 stores, for example, an OS (Operation System), application programs, and various data.
入出力I/F105は、コンピュータ100に外部装置を接続するためのインターフェースである。外部装置は、例えば、USB(Universal Serial Bus)メモリ、メモリカード、光学ディスク等の記録媒体105aや、各種の電子機器等が含まれる。 The input / output I / F 105 is an interface for connecting an external device to the computer 100. The external device includes, for example, a recording medium 105a such as a USB (Universal Serial Bus) memory, a memory card, an optical disk, and various electronic devices.
ネットワークI/F106は、通信ネットワーク5を介して、データ通信をするためのインターフェースである。ネットワークI/F106は、例えば、無線LANの通信インターフェースである。また、ネットワークI/F106は、有線LAN、3G(3rd Generation)、LTE(Long Term Evolution)、4G(4rd Generation)、5G(5rd Generation)、ミリ波無線通信の通信インターフェースを備えていてもよい。 The network I / F 106 is an interface for performing data communication via the communication network 5. The network I / F 106 is, for example, a wireless LAN communication interface. Further, the network I / F 106 may include a communication interface for a wired LAN, 3G (3rd Generation), LTE (Long Term Evolution), 4G (4rd Generation), 5G (5rd Generation), or millimeter wave wireless communication.
バスライン107は、上記の各構成要素に共通に接続され、アドレス信号、データ信号、および各種制御信号等を伝送する。CPU101、ROM102、RAM103、ストレージ104、入出力I/F105およびネットワークI/F106は、バスライン107を介して相互に接続されている。 The bus line 107 is commonly connected to the above components, and transmits an address signal, a data signal, various control signals, and the like. The CPU 101, the ROM 102, the RAM 103, the storage 104, the input / output I / F 105, and the network I / F 106 are mutually connected via a bus line 107.
なお、実施形態に係る各装置のハードウエア構成は、必要に応じて構成要素が追加または削除されてもよい。通信端末70は、図2に示した構成に加えて、マイク等の音声を入力するための集音装置を有する。また、通信端末70は、例えば、キーボード、マウスおよびタッチパネル等の入力装置、スピーカ、カメラ等の撮像装置、並びにLCD(Liquid Crystal display)等の表示装置を有していてもよい。 Note that, in the hardware configuration of each device according to the embodiment, constituent elements may be added or deleted as necessary. The communication terminal 70 has a sound collection device for inputting sound such as a microphone in addition to the configuration shown in FIG. Further, the communication terminal 70 may include, for example, an input device such as a keyboard, a mouse, and a touch panel, an imaging device such as a speaker and a camera, and a display device such as an LCD (Liquid Crystal Display).
●機能構成●
続いて、実施形態に係るデータベースサーバ30の機能構成について説明する。図3は、実施形態に係るデータベースサーバの機能構成の一例を示す図である。データベースサーバ30によって実現される機能は、送受信部31、サンプルデータ取得部32、対象カテゴリ情報生成部33、特徴量抽出部34、データ数値化部35、第1の学習部36、クラスタ属性特定部37、制約設定部38、第2の学習部39、未知データ分類部41、記憶・読出部42および記憶部3000を含む。
● Functional configuration ●
Subsequently, a functional configuration of the database server 30 according to the embodiment will be described. FIG. 3 is a diagram illustrating an example of a functional configuration of the database server according to the embodiment. The functions realized by the database server 30 include a transmitting / receiving unit 31, a sample data obtaining unit 32, a target category information generating unit 33, a feature amount extracting unit 34, a data digitizing unit 35, a first learning unit 36, a cluster attribute specifying unit. 37, a constraint setting unit 38, a second learning unit 39, an unknown data classifying unit 41, a storage / readout unit 42, and a storage unit 3000.
送受信部31は、通信ネットワーク5を介して、外部装置と各種データの送受信を行う機能である。送受信部31は、例えば、WEBサーバ50から提供されるWEBサービスを介して、分類対象となるテキストデータ200を受信する。送受信部31は、図2に示したネットワークI/F106およびCPU101で実行されるプログラム等によって実現される。 The transmission / reception unit 31 has a function of transmitting / receiving various data to / from an external device via the communication network 5. The transmission / reception unit 31 receives the text data 200 to be classified, for example, via a web service provided from the web server 50. The transmission / reception unit 31 is realized by a program or the like executed by the network I / F 106 and the CPU 101 illustrated in FIG.
サンプルデータ取得部32は、記憶部3000に記憶されたテキストデータ200のうち、特定のカテゴリの属性を特定するための属性情報がラベリングされたデータをサンプルデータ210として取得する。属性情報は、例えば、特定のカテゴリに対する正例または負例のいずれの属性に属するかを示す正負ラベルである。属性情報は、例えば、カテゴリの種別が「会話」である場合、会話要素の有無を特定するための情報である。ここで、会話とは、発言、質問、応答、対話、発表等が含まれる。なお、属性情報のラベリングは、データベースサーバ30の利用者またはWEBサービスによりテキストデータ200のデータセットを提供する提供者等によって行われる。サンプルデータ取得部32は、図2に示したネットワークI/F106およびCPU101で実行されるプログラム等によって実現される。サンプルデータ取得部32は、取得手段の一例である。 The sample data obtaining unit 32 obtains, as the sample data 210, data in which the attribute information for specifying the attribute of the specific category is labeled from the text data 200 stored in the storage unit 3000. The attribute information is, for example, a positive / negative label indicating whether the attribute belongs to a positive example or a negative example for a specific category. The attribute information is, for example, information for specifying the presence or absence of a conversation element when the category type is “conversation”. Here, the conversation includes a statement, a question, a response, a dialogue, a presentation, and the like. Note that the labeling of the attribute information is performed by a user of the database server 30 or a provider that provides a data set of the text data 200 by a WEB service. The sample data acquisition unit 32 is realized by the network I / F 106 and the program executed by the CPU 101 shown in FIG. The sample data acquisition unit 32 is an example of an acquisition unit.
対象カテゴリ情報生成部33は、後述するカテゴリ管理テーブル300に含まれる対象カテゴリ設定情報310を生成する機能である。対象カテゴリ設定情報310とは、データ分類処理の分類対象となるカテゴリの特徴を特定するための情報である。対象カテゴリ情報生成部33は、図2に示したCPU101で実行されるプログラム等により実現される。 The target category information generation unit 33 has a function of generating target category setting information 310 included in a category management table 300 described later. The target category setting information 310 is information for specifying characteristics of a category to be classified in the data classification processing. The target category information generation unit 33 is realized by a program or the like executed by the CPU 101 shown in FIG.
特徴量抽出部34は、サンプルデータ取得部32によって取得されたサンプルデータ210の特徴量を抽出する機能である。特徴量は、例えば、分類対象のカテゴリにおけるテキストデータ200に含まれる単語の重要度である。この場合、特徴量抽出部34は、サンプルデータ210に含まれるテキスト情報の中から、単語を抽出する。特徴量抽出部34による処理の詳細は、後述(図6参照)する。特徴量抽出部34は、図2に示したCPU101で実行されるプログラム等により実現される。特徴量抽出部34は、特徴量抽出手段の一例である。 The feature amount extraction unit 34 has a function of extracting a feature amount of the sample data 210 acquired by the sample data acquisition unit 32. The feature amount is, for example, the importance of a word included in the text data 200 in the category to be classified. In this case, the feature amount extraction unit 34 extracts a word from the text information included in the sample data 210. Details of the processing by the feature amount extraction unit 34 will be described later (see FIG. 6). The feature amount extraction unit 34 is realized by a program or the like executed by the CPU 101 shown in FIG. The feature amount extracting unit 34 is an example of a feature amount extracting unit.
データ数値化部35は、テキストデータ200の特徴量の数値化処理を行う機能である。データ数値化部35は、特徴量抽出部34によって抽出されたサンプルデータ210の特徴量を特徴量ベクトルに変換(数値化)する。なお、サンプルデータ210ではないテキストデータ200に対しても、サンプルデータ210に対する処理と同様に特徴量抽出処理を実行する。データ数値化部35は、図2に示したCPU101で実行されるプログラム等により実現される。 The data digitizing unit 35 has a function of performing a digitizing process of the feature amount of the text data 200. The data digitizing unit 35 converts (digitizes) the feature amount of the sample data 210 extracted by the feature amount extracting unit 34 into a feature amount vector. Note that the feature amount extraction process is performed on the text data 200 other than the sample data 210 in the same manner as the process on the sample data 210. The data digitizing unit 35 is realized by a program or the like executed by the CPU 101 shown in FIG.
第1の学習部36は、特徴量抽出部34によって抽出されたサンプルデータ210の特徴量を用いた教師なし学習に基づいて、第1の学習モデルを生成する機能である。教師なし学習(unsupervised learning)とは、所定のデータをラベルリング等の外的基準なしに分類する手法である。教師なし学習は、例えば、K−meansクラスタリング等の手法である。第1の学習部36は、図2に示したCPU101で実行されるプログラム等により実現される。第1の学習部36は、第1の生成手段の一例である。 The first learning unit 36 has a function of generating a first learning model based on unsupervised learning using the feature amount of the sample data 210 extracted by the feature amount extraction unit 34. Unsupervised learning is a method of classifying predetermined data without external criteria such as labeling. Unsupervised learning is, for example, a technique such as K-means clustering. The first learning unit 36 is realized by a program or the like executed by the CPU 101 shown in FIG. The first learning unit 36 is an example of a first generation unit.
クラスタ属性特定部37は、第1の学習部36によって学習された第1の学習モデルに含まれる各クラスタの属性を特定するための機能である。クラスタ属性特定部37は、例えば、第1の学習モデルに含まれるクラスタが、分類対象のカテゴリの正例または負例のいずれの属性を有する集合であるかを特定する。クラスタ属性特定部37は、図2に示したCPU101で実行されるプログラム等により実現される。クラスタ属性特定部37は、クラスタ属性特定手段の一例である。 The cluster attribute specifying unit 37 is a function for specifying an attribute of each cluster included in the first learning model learned by the first learning unit 36. For example, the cluster attribute specifying unit 37 specifies whether the cluster included in the first learning model is a set having a positive example or a negative example of the category to be classified. The cluster attribute specifying unit 37 is realized by a program or the like executed by the CPU 101 shown in FIG. The cluster attribute specifying unit 37 is an example of a cluster attribute specifying unit.
制約設定部38は、データ分類処理に用いる制約設定を行う機能である。制約設定部38は、第1の学習部36によって生成された第1の学習モデルと、第1の学習モデルに含まれるクラスタに属するサンプルデータ210にラベリングされた属性情報とに基づいて、自然言語処理に用いるテキストデータ200の分類を行うための制約を設定する。制約設定部38の具体的の処理については、後述(図7参照)する。制約設定部38は、図2に示したCPU101で実行されるプログラム等により実現される。制約設定部38は、制約設定手段の一例である。 The constraint setting unit 38 has a function of setting a constraint used for data classification processing. The constraint setting unit 38 uses a natural language based on the first learning model generated by the first learning unit 36 and the attribute information labeled on the sample data 210 belonging to the cluster included in the first learning model. A constraint for classifying the text data 200 used for processing is set. Specific processing of the constraint setting unit 38 will be described later (see FIG. 7). The constraint setting unit 38 is realized by a program or the like executed by the CPU 101 shown in FIG. The constraint setting unit 38 is an example of a constraint setting unit.
第2の学習部39は、制約設定部38によって設定された制約を用いた半教師あり学習に基づいて、第2の学習モデルを生成する機能である。半教師あり学習(semi-supervised learning)とは、ラベリングされたデータとラベリングされていないデータの両方を用いてデータ分類を行う手法である。半教師あり学習は、例えば、COP K−meansクラスタリング等の手法である。第2の学習部39は、図2に示したCPU101で実行されるプログラム等により実現される。第2の学習部39は、第2の生成手段の一例である。 The second learning unit 39 has a function of generating a second learning model based on semi-supervised learning using the constraint set by the constraint setting unit 38. Semi-supervised learning is a method of classifying data using both labeled and unlabeled data. Semi-supervised learning is, for example, a technique such as COP K-means clustering. The second learning section 39 is realized by a program or the like executed by the CPU 101 shown in FIG. The second learning unit 39 is an example of a second generation unit.
未知データ分類部41は、第2の学習部39によって生成された第2の学習モデルに含まれるクラスタに対して、未知データを分類する機能である。未知データとは、テキストデータ200のうち、属性情報がラベリングされていないデータである。未知データ分類部41は、図2に示したCPU101で実行されるプログラム等により実現される。未知データ分類部41は、分類手段の一例である。 The unknown data classification unit 41 has a function of classifying unknown data into clusters included in the second learning model generated by the second learning unit 39. The unknown data is data of which the attribute information is not labeled in the text data 200. The unknown data classification unit 41 is realized by a program or the like executed by the CPU 101 shown in FIG. The unknown data classification unit 41 is an example of a classification unit.
記憶・読出部42は、記憶部3000に各種データを記憶し、記憶部3000から各種データを読み出す機能である。記憶・読出部42は、図2に示したCPU101で実行されるプログラム等により実現される。記憶部3000は、図2に示したROM102またはストレージ104により実現される。また、記憶部3000は、カテゴリ管理テーブル300および複数のテキストデータ200を記憶している。 The storage / readout unit 42 has a function of storing various data in the storage unit 3000 and reading various data from the storage unit 3000. The storage / readout unit 42 is realized by a program or the like executed by the CPU 101 shown in FIG. The storage unit 3000 is realized by the ROM 102 or the storage 104 shown in FIG. The storage unit 3000 stores a category management table 300 and a plurality of text data 200.
●カテゴリ管理テーブル
ここで、記憶部3000に記憶されているデータの詳細について説明する。図4は、実施形態に係るカテゴリ管理テーブルの一例を示す図である。図4に示すカテゴリ管理テーブル300は、自然言語処理による分類対象となるカテゴリごとに、当該カテゴリを特定するための設定情報を管理するテーブルである。
● Category management table Here, details of the data stored in the storage unit 3000 will be described. FIG. 4 is a diagram illustrating an example of the category management table according to the embodiment. The category management table 300 illustrated in FIG. 4 is a table that manages, for each category to be classified by natural language processing, setting information for specifying the category.
カテゴリ管理テーブル300は、分類対象とするカテゴリを識別するためのカテゴリ識別番号、カテゴリ名、および分類対象とするカテゴリを特徴付けるための情報である対象カテゴリ設定情報310を関連付けて記憶して管理している。 The category management table 300 associates and manages a category identification number for identifying a category to be classified, a category name, and target category setting information 310 which is information for characterizing the category to be classified. I have.
図5に示すカテゴリ管理テーブル300において、カテゴリ識別番号「1」およびカテゴリ名「会話」に関連付けられた対象カテゴリ設定情報310は、「Q:」,「A:」,「C:」,「?」,「⇒」,「→」,「<"人名">」,「["人名"]」,「("人名")」等である。例えば、対象カテゴリ設定情報310は、全角または半角文字の直後の「?」,「⇒」,「→」,「:」や、全角または半角文字の直前の「?」,「Q」,「A」,「C」,「<"人名">」,「["人名"]」,「("人名")」等のパターンである会話を特徴付けるための情報を含む。なお、対象カテゴリ設定情報310は、対象カテゴリ情報生成部33の処理によって適宜追加・変更可能である。 In the category management table 300 shown in FIG. 5, the target category setting information 310 associated with the category identification number “1” and the category name “conversation” includes “Q:”, “A:”, “C:”, “? , "⇒", "→", "<" person name ">", "[" person name "]", "(" person name ")", and the like. For example, the target category setting information 310 includes “?”, “⇒”, “→”, “:” immediately after a full-width or half-width character, and “?”, “Q”, “A” immediately before a full-width or half-width character. , "C", "<" person name ">", "[" person name "]", "(" person name ")" and other information for characterizing conversations. The target category setting information 310 can be appropriately added or changed by the processing of the target category information generating unit 33.
●テキストデータ
続いて、記憶部3000に記憶されるテキストデータ200の内容について説明する。図5は、実施形態に係るテキストデータの一例を示す図である。図5に示すテキストデータ200は、テキスト情報が含まれるデータであり、本実施形態に係るデータ分類方法において分類対象となるデータである。テキストデータ200は、例えば、WEBサーバ50から提供されるWEBサービスを介して、WEBページを構成するHTML(HyperText Markup Language)形式で取得される。
Next, the contents of the text data 200 stored in the storage unit 3000 will be described. FIG. 5 is a diagram illustrating an example of text data according to the embodiment. The text data 200 illustrated in FIG. 5 is data including text information, and is data to be classified in the data classification method according to the present embodiment. The text data 200 is acquired, for example, via a WEB service provided by the WEB server 50 in an HTML (HyperText Markup Language) format that forms a WEB page.
図5に示すテキストデータ200は、質問応答形式で記述されたテキスト情報を含む。図5に示すテキストデータ200は、カテゴリ「会話」に関連付けられた対象カテゴリ設定情報310を含むため(図4参照)、「会話有」の属性を有するデータ(正例)となる。一方で、図5に示すテキストデータ200とは異なり、カテゴリ「会話」に関連付けられた対象カテゴリ設定情報310を含まないテキストデータ200は、「会話無」の属性を有するデータ(負例)となる。 The text data 200 shown in FIG. 5 includes text information described in a question-response format. Since the text data 200 shown in FIG. 5 includes the target category setting information 310 associated with the category “conversation” (see FIG. 4), it becomes data having a “conversation present” attribute (a positive example). On the other hand, unlike the text data 200 shown in FIG. 5, the text data 200 that does not include the target category setting information 310 associated with the category “conversation” is data (negative example) having an attribute of “no conversation”. .
テキストデータ200は、例えば、会話要素が含まれる可能性のあるデータセットとして収集されるデータである。具体的には、企業や公的機関の会議録、SNS(Social Networking Service)、商品レビュー、テレビの字幕、小説等のデータに会話要素が含まれている可能性が高い。特に、WEB上に公開されているデータであれば、クローリングやウェブスクレイピング等によって自動的にデータセットを充足させることでき、分類精度を高めるために十分なデータを収集することができる。 The text data 200 is, for example, data collected as a data set that may include a conversation element. Specifically, it is highly likely that conversational elements are included in data such as the minutes of a company or public institution, SNS (Social Networking Service), product reviews, TV subtitles, and novels. In particular, if the data is published on the Web, the data set can be automatically filled by crawling, web scraping, or the like, and sufficient data can be collected to increase the classification accuracy.
●特徴量抽出部
続いて、図6を用いて、特徴量抽出部34の詳細な機能構成について説明する。図6は、実施形態に係る特徴量抽出部の機能構成の一例を示す図である。図6に示す特徴量抽出部34は、対象カテゴリ情報抽出部341、形態素解析部342および特徴量決定部343を含む。
Next, the detailed functional configuration of the feature amount extraction unit 34 will be described with reference to FIG. FIG. 6 is a diagram illustrating an example of a functional configuration of a feature amount extraction unit according to the embodiment. The feature amount extraction unit 34 illustrated in FIG. 6 includes a target category information extraction unit 341, a morphological analysis unit 342, and a feature amount determination unit 343.
対象カテゴリ情報抽出部341は、サンプルデータ取得部32によって取得されたサンプルデータ210に含まれるテキスト情報の中から、対象カテゴリ情報を抽出する機能である。対象カテゴリ情報抽出部341は、サンプルデータ210に含まれるテキスト情報の中から、カテゴリ管理テーブル300に含まれる対象カテゴリ設定情報310と同じテキストを、対象カテゴリ情報として抽出する。対象カテゴリ情報抽出部341は、カテゴリ情報抽出手段の一例である。 The target category information extracting unit 341 has a function of extracting target category information from text information included in the sample data 210 acquired by the sample data acquiring unit 32. The target category information extracting unit 341 extracts the same text as the target category setting information 310 included in the category management table 300 from the text information included in the sample data 210 as target category information. The target category information extracting unit 341 is an example of a category information extracting unit.
形態素解析部342は、サンプルデータ取得部32によって取得されたサンプルデータ210に含まれるテキスト情報に対する形態素解析処理を行う機能である。形態素解析部342は、サンプルデータ210に含まれるテキスト情報のうち、名詞、動詞および形容詞等の品詞を有するものを単語の特徴量として取得する。形態素解析部342は、形態素解析手段の一例である。 The morphological analysis unit 342 has a function of performing a morphological analysis process on text information included in the sample data 210 acquired by the sample data acquisition unit 32. The morphological analysis unit 342 obtains, from the text information included in the sample data 210, information having a part of speech such as a noun, a verb, or an adjective as a feature amount of a word. The morphological analysis unit 342 is an example of a morphological analysis unit.
特徴量決定部343は、対象カテゴリ情報抽出部341によって抽出された対象カテゴリ情報、および形態素解析部342による解析結果に基づいて、サンプルデータ210の特徴量を決定する機能である。特徴量決定部343は、特徴量決定手段の一例である。 The feature amount determination unit 343 has a function of determining the feature amount of the sample data 210 based on the target category information extracted by the target category information extraction unit 341 and the analysis result by the morphological analysis unit 342. The feature amount determining unit 343 is an example of a feature amount determining unit.
●制約設定部
続いて、図7を用いて、制約設定部38の詳細な機能構成について説明する。図7は、実施形態に係る制約設定部の機能構成の一例を示す図である。図7に示す制約設定部38は、不正解ベクトル生成部381およびデータリンク生成部382を含む。
Next, a detailed functional configuration of the constraint setting unit 38 will be described with reference to FIG. FIG. 7 is a diagram illustrating an example of a functional configuration of a constraint setting unit according to the embodiment. The constraint setting unit 38 illustrated in FIG. 7 includes an incorrect answer vector generation unit 381 and a data link generation unit 382.
不正解ベクトル生成部381は、第1の学習部36によって生成された第1の学習モデルに含まれるクラスタに対して、当該クラスタの属性とは異なる属性を有するサンプルデータ210が含まれる可能性のある領域を示す不正解ベクトルNmisを生成する。 The incorrect answer vector generation unit 381 may determine whether the cluster included in the first learning model generated by the first learning unit 36 includes the sample data 210 having an attribute different from the attribute of the cluster. An incorrect answer vector N mis indicating a certain area is generated.
データリンク生成部382は、不正解ベクトル生成部381によって生成された不正解ベクトルNmisが示す領域に属するサンプルデータ210に対するデータリンクを生成する機能である。データリンクとは、ラベリングされた属性情報が示す属性と異なる属性を有するクラスタに属するサンプルデータ210を、正しい属性を有するクラスタに属させるための制約である。すなわち、データリンク生成部382は、第1の学習モデルに含まれるクラスタに属するサンプルデータ210のうち、クラスタが有する属性とは異なる属性を示す属性情報がラベリングされたサンプルデータ210に対する制約を生成する。 The data link generation unit 382 has a function of generating a data link for the sample data 210 belonging to the area indicated by the incorrect answer vector Nmis generated by the incorrect answer vector generation unit 381. The data link is a constraint for making the sample data 210 belonging to a cluster having an attribute different from the attribute indicated by the labeled attribute information belong to a cluster having a correct attribute. That is, the data link generation unit 382 generates a constraint on the sample data 210 to which attribute information indicating an attribute different from the attribute of the cluster among the sample data 210 belonging to the cluster included in the first learning model is labeled. .
●データ分類処理●
続いて、データベースサーバ30に記憶されたテキストデータ200に対するデータ分類処理について説明する。図8は、実施形態に係るデータベースサーバにおけるデータ分類処理の一例を示すフローチャートである。以下において、テキストデータ200における会話要素の有無の分類するための処理について説明する。
● Data classification processing ●
Next, a data classification process for the text data 200 stored in the database server 30 will be described. FIG. 8 is a flowchart illustrating an example of a data classification process in the database server according to the embodiment. Hereinafter, processing for classifying the presence or absence of a conversation element in the text data 200 will be described.
ステップS11において、サンプルデータ取得部32は、記憶部3000に記憶されたテキストデータ200のうち、属性情報がラベリングされたサンプルデータ210を抽出する。具体的には、記憶・読出部42は、記憶部3000に記憶されたテキストデータ200のうち、所定のデータを読み出す。次に、サンプルデータ取得部32は、読み出されたテキストデータ200に含まれるテキスト情報に基づいて、このテキストデータ200に属性情報をラベリングする。ここで、属性情報とは、分類対象のカテゴリにおけるテキストデータ200の属性(正例または負例)を示す情報(正負ラベル)であり、例えば、会話要素の有無を特定するための情報である。そして、サンプルデータ取得部32は、属性情報がラベリングされたテキストデータ200を、サンプルデータ210として取得する。 In step S11, the sample data acquisition unit 32 extracts the sample data 210 on which the attribute information is labeled from the text data 200 stored in the storage unit 3000. Specifically, the storage / readout unit 42 reads out predetermined data from the text data 200 stored in the storage unit 3000. Next, based on the text information included in the read text data 200, the sample data acquisition unit 32 labels the text data 200 with attribute information. Here, the attribute information is information (positive or negative label) indicating an attribute (positive or negative example) of the text data 200 in the category to be classified, and is, for example, information for specifying the presence or absence of a conversation element. Then, the sample data acquiring unit 32 acquires the text data 200 on which the attribute information is labeled as the sample data 210.
ステップS12において、特徴量抽出部34は、ステップS11によって抽出されたサンプルデータ210に含まれるテキスト情報の内容に基づいて、サンプルデータ210の特徴量を抽出する。 In step S12, the feature amount extraction unit 34 extracts a feature amount of the sample data 210 based on the contents of the text information included in the sample data 210 extracted in step S11.
ここで、図9を用いて、データベースサーバ30による特徴量抽出処理について説明する。図9は、実施形態に係るデータベースサーバにおける特徴量抽出処理について説明するためのフローチャートである。図9に示す特徴量抽出処理は、テキストデータ200に含まれるテキスト情報の会話要素を示す対象カテゴリ情報を利用したパターンマッチングの例である。 Here, the feature amount extraction processing by the database server 30 will be described with reference to FIG. FIG. 9 is a flowchart illustrating a feature amount extraction process in the database server according to the embodiment. The feature amount extraction processing illustrated in FIG. 9 is an example of pattern matching using target category information indicating a conversation element of text information included in the text data 200.
ステップS121において、記憶・読出部42は、記憶部3000に記憶された対象カテゴリ設定情報310を読み出す。具体的には、記憶・読出部42は、記憶部3000に記憶されたカテゴリ管理テーブル300の中から、カテゴリ名「会話」に関連づけられた対象カテゴリ設定情報310(図4参照)を読み出す。 In step S121, the storage / readout unit 42 reads the target category setting information 310 stored in the storage unit 3000. Specifically, the storage / readout unit 42 reads out the target category setting information 310 (see FIG. 4) associated with the category name “conversation” from the category management table 300 stored in the storage unit 3000.
ステップS122において、対象カテゴリ情報抽出部341は、サンプルデータ210に含まれるテキスト情報の中から、ステップS121によって読み出された対象カテゴリ設定情報310に該当するテキスト情報を、対象カテゴリ情報として抽出する。 In step S122, the target category information extraction unit 341 extracts text information corresponding to the target category setting information 310 read out in step S121 from the text information included in the sample data 210 as target category information.
ステップS123において、形態素解析部342は、図8に示したステップS11によって取得されたサンプルデータ210に含まれるテキスト情報の形態素解析を実行する。具体的には、まず、形態素解析部342は、サンプルデータ210に含まれるテキスト情報を抽出する。そして、形態素解析部342は、抽出したテキスト情報のうち、名詞、動詞および形容詞等の品詞を有するものを特徴量の候補として取得する。 In step S123, the morphological analysis unit 342 performs a morphological analysis of the text information included in the sample data 210 acquired in step S11 shown in FIG. Specifically, first, the morphological analysis unit 342 extracts text information included in the sample data 210. Then, the morphological analysis unit 342 acquires, from among the extracted text information, one having a part of speech such as a noun, a verb, or an adjective as a candidate for the feature amount.
ステップS124において、特徴量決定部343は、ステップS122によって抽出された対象カテゴリ情報、およびステップS123による解析結果に基づいて、サンプルデータ210の特徴量を決定する。ここで、上記説明したように、ステップS122によって抽出された対象カテゴリ情報、およびステップS123による解析結果は、処理対象であるサンプルデータ210の特徴量の候補である。具体的には、まず、特徴量決定部343は、TF−IDF(Term Frequency−Inverse Document Frequency)値を算出する。TF−IDF値とは、文書中に含まれる単語の重要度を評価する手法の一つであり、単語の出現頻度(TF)と希少性(IDF)の二つの指標に基づいて計算される。ここで算出されるTF−IDF値は、会話有または会話無に関係する情報を含むものと想定される。しかしながら、算出されるTF−IDF値の次元は非常に冗長なものとなり、結果的に分類精度を低下させるおそれがある。そこで、特徴量決定部343は、以下(式1)に示すカイ二乗検定によってカイ二乗値CHI(t,c)を計算することによって、該当する対象カテゴリ情報とTF−IDF値によって示される特徴量の取捨選択を行う。 In step S124, the feature value determination unit 343 determines the feature value of the sample data 210 based on the target category information extracted in step S122 and the analysis result in step S123. Here, as described above, the target category information extracted in step S122 and the analysis result in step S123 are candidates for the feature amount of the sample data 210 to be processed. Specifically, first, the feature value determination unit 343 calculates a TF-IDF (Term Frequency-Inverse Document Frequency) value. The TF-IDF value is one of the methods for evaluating the importance of a word included in a document, and is calculated based on two indices of a word appearance frequency (TF) and a rarity (IDF). The TF-IDF value calculated here is assumed to include information relating to the presence or absence of conversation. However, the dimension of the calculated TF-IDF value becomes extremely redundant, and as a result, the classification accuracy may be reduced. Therefore, the feature amount determination unit 343 calculates the chi-square value CHI (t, c) by a chi-square test shown in (Equation 1), and thereby obtains the feature amount indicated by the corresponding target category information and the TF-IDF value Is selected.
ここで、カイ二乗検定とは、2つの事柄がどの程度独立しているかの検定であり、例えば、「会話要素の有無t,t’」と「ステップS122によって抽出された対象カテゴリ情報とステップS123による解析結果とで示される特徴量の候補の有無c,c’」との関係性を計算するものである。Nは、「会話要素の有無」と「特徴量の候補の有無」のバリエーションの数(この場合のパリエーションは、t,t’,c,c’であるため、N=4)、P(t,c)は、全てのサンプルデータ210のうち、属性が「会話要素有」で、かつ特徴量の候補が含まれる確率、P(t’,c)は、全てのサンプルデータ210のうち、属性が「会話要素無」で、かつ特徴量の候補が含まれる確率、P(t,c’)は、全てのサンプルデータ210のうち、属性が「会話要素有」で、かつ特徴量の候補が含まれない確率、P(t’,c’)は、全てのサンプルデータ210のうち、属性が「会話要素無」で、かつ特徴量の候補が含まれない確率を示す、また、P(t)は、全てのサンプルデータ210のうち、属性が「会話要素有」である確率、P(t’)は、全てのサンプルデータ210のうち、属性が「会話要素無」である確率、P(c)は、全てのサンプルデータ210のうち、特徴量の候補が含まれる確率、P(c’)は、全てのサンプルデータ210のうち、特徴量の候補が含まれる確率を示す。なお、全てのサンプルデータ210とは、サンプルデータ取得部32によって取得された、属性情報がラベリングされた全てのサンプルデータ210のことである。 Here, the chi-square test is a test of how independent two things are. For example, “the presence or absence of a conversation element t, t ′”, “the target category information extracted in step S122 and step S123” And the presence / absence c, c ′ of the feature amount candidate indicated by the analysis result. N is the number of variations of “presence / absence of conversation element” and “presence / absence of candidate feature amount” (N = 4 because the variation in this case is t, t ′, c, c ′), and P ( t, c) is the probability that the attribute is “conversational element present” and the candidate for the feature is included among all the sample data 210, and P (t ′, c) is the probability of The probability that the attribute is “no conversation element” and that the candidate for the feature amount is included, P (t, c ′) is, of all the sample data 210, Is not included, P (t ′, c ′) indicates the probability that the attribute is “no conversation element” and that no candidate for the feature amount is included among all the sample data 210. t) is the probability that the attribute is “conversational element present” among all the sample data 210, and P (t ′) is the Among the data 210, the probability that the attribute is "no conversation element", P (c) is the probability that the feature amount candidate is included in all the sample data 210, and P (c ') is the all sample data. Among 210, the probability that feature value candidates are included is shown. Note that the all sample data 210 is all the sample data 210 acquired by the sample data acquisition unit 32 and labeled with the attribute information.
カイ二乗検定は、誤判断を避けるために無関係な特徴量を排除する機能を有する。例えば、「会話要素の有無t,t’」に対して、「特徴量の候補の有無c,c’」が全く関係ない場合、P(t,c)×P(t’,c’)=P(t,c’)×P(t’,c)となり、カイ二乗値CHI(t,c)は、0となる。一方で、「会話要素の有無t,t’」に対して、「特徴量の候補の有無c,c’」の依存度が強いと、カイ二乗値CHI(t,c)も大きな値となる。つまり、特徴量決定部343は、カイ二乗検定によって算出されたカイ二乗値CHI(t,c)がより大きい特徴量を、サンプルデータ210の特徴量として選択・決定する。そのため、特徴量決定部343は、サンプルデータ210の属性(例えば、会話要素の有無)の識別に関係する特徴量のみを絞り込むことができる。 The chi-square test has a function of eliminating extraneous features in order to avoid misjudgment. For example, if “the presence or absence of a feature amount candidate c, c ′” is completely unrelated to “the presence or absence of a conversation element t, t ′”, P (t, c) × P (t ′, c ′) = P (t, c ′) × P (t ′, c), and the chi-square value CHI (t, c) becomes 0. On the other hand, if the degree of “the presence / absence of a feature amount candidate c, c ′” is strong with respect to “the presence / absence of conversation element t, t ′”, the chi-square value CHI (t, c) also becomes large. . That is, the feature amount determination unit 343 selects and determines a feature amount having a larger chi-square value CHI (t, c) calculated by the chi-square test as a feature amount of the sample data 210. Therefore, the feature value determination unit 343 can narrow down only the feature value related to the identification of the attribute (for example, the presence or absence of a conversation element) of the sample data 210.
これによって、特徴量決定部343は、サンプルデータ取得部32によって取得された全てのサンプルデータ210の特徴量を決定する。特徴量決定部343は、複数のサンプルデータ210に対して、上記特徴量抽出処理を実行することによって、データ分類処理において分類種別を特定するためのサンプルとなるデータセットを生成する。 Thereby, the characteristic amount determining unit 343 determines the characteristic amounts of all the sample data 210 acquired by the sample data acquiring unit 32. The feature amount determination unit 343 generates a data set as a sample for specifying a classification type in the data classification process by executing the feature amount extraction process on the plurality of sample data 210.
図8に戻り、データベースサーバ30のデータ分類処理の説明を続ける。ステップS13において、記憶・読出部42は、記憶部3000に記憶されているテキストデータ200を読み出す。ここで、テキストデータ200は、ステップS11によってサンプルデータ210として取得されたデータ、およびサンプルデータ210として抽出されなかったデータを含む。すなわち、テキストデータ200は、属性情報がラベリングされたデータ(サンプルデータ210)と属性情報がラベリングされていないデータ(未知データ)の両方を含む。 Returning to FIG. 8, the description of the data classification process of the database server 30 will be continued. In step S13, the storage / readout unit 42 reads out the text data 200 stored in the storage unit 3000. Here, text data 200 includes data obtained as sample data 210 in step S11 and data not extracted as sample data 210. That is, the text data 200 includes both data on which attribute information is labeled (sample data 210) and data on which attribute information is not labeled (unknown data).
ステップS14において、データ数値化部35は、ステップS14によって読み出されたテキストデータ200に対するベクトル化(数値化)処理を実行する。そして、ステップS15において、データベースサーバ30は、ステップS14によって数値化されたテキストデータ200を用いて、カテゴリ分類処理を実行する。 In step S14, the data digitizing unit 35 performs a vectorization (digitization) process on the text data 200 read in step S14. Then, in step S15, the database server 30 performs a category classification process using the text data 200 digitized in step S14.
ここで、図10乃至図16を用いて、データベースサーバ30によるカテゴリ分類処理について説明する。図10は、実施形態に係るデータベースサーバにおけるカテゴリ分類処理の一例を示すフローチャートである。以下で説明する処理は、教師なし学習と、教師なし学習によって生成された第1の学習モデルに基づく制約を用いた半教師あり学習との組み合わせによる分類処理である。 Here, the category classification process by the database server 30 will be described with reference to FIGS. FIG. 10 is a flowchart illustrating an example of the category classification process in the database server according to the embodiment. The process described below is a classification process based on a combination of unsupervised learning and semi-supervised learning using a constraint based on a first learning model generated by unsupervised learning.
まず、ステップS151において、第1の学習部36は、図9のステップS14によって数値化されたサンプルデータ210の特徴量を用いた教師なし学習によって、第1の学習モデルを生成する。具体的には、第1の学習部36は、代表的な教師なし学習であるK−meansクラスタリングによって、二値分類されたクラスタ(第1のクラスタおよび第2のクラスタ)を含む第1の学習モデルを行う。図11は、教師なし学習によって生成された第1の学習モデルの一例を説明するための概念図である。図11に示すように、教師なし学習は、サンプルデータ210の属性を区別しないため、第1の学習モデルに含まれるクラスタは、各クラスタが会話有(正例)であるか会話無(負例)であるかの属性が不明な状態である。 First, in step S151, the first learning unit 36 generates a first learning model by unsupervised learning using the features of the sample data 210 quantified in step S14 in FIG. Specifically, the first learning unit 36 performs the first learning including the clusters (the first cluster and the second cluster) binarized by the K-means clustering, which is a typical unsupervised learning. Do the model. FIG. 11 is a conceptual diagram illustrating an example of a first learning model generated by unsupervised learning. As shown in FIG. 11, since unsupervised learning does not distinguish the attributes of the sample data 210, the clusters included in the first learning model have each cluster with conversation (positive example) or no conversation (negative example). ) Is unknown.
次に、ステップS152において、クラスタ属性特定部37は、ステップS151によって生成された第1の学習モデルに含まれるクラスタの属性を特定する。上記のように、教師なし学習によって生成されたクラスタは、どちらのクラスタが会話要素を含むかを特定することができない。そのため、クラスタ属性特定部37は、サンプルデータ210にラベリングされた属性情報に基づいて、第1の学習モデルに含まれる各クラスタが、正例または負例のいずれの属性を有する集合であるかを特定する。クラスタ属性特定部37は、例えば、各クラスタに属するサンプルデータ210の属性(正負)の数の多数決によって、それぞれのクラスタの属性を特定する。図12は、第1の学習モデルに含まれる属性が特定されたクラスタの一例を説明するための概念図である。図12に示すように、左側のクラスタに属するサンプルデータ210は、会話無(負例)データよりも会話有(正例)データが多いため、クラスタ属性特定部37は、左側のクラスタの属性を、会話(正例)有クラスタとして特定する。また、右側のクラスタに属するサンプルデータ210は、会話有(正例)データよりも会話無(負例)データが多いため、クラスタ属性特定部37は、右側のクラスタの属性を、会話無(負例)クラスタとして特定する。 Next, in step S152, the cluster attribute specifying unit 37 specifies the attributes of the cluster included in the first learning model generated in step S151. As described above, a cluster generated by unsupervised learning cannot specify which cluster includes a conversation element. Therefore, the cluster attribute specifying unit 37 determines whether each of the clusters included in the first learning model is a set having a positive example or a negative example based on the attribute information labeled on the sample data 210. Identify. The cluster attribute specifying unit 37 specifies the attribute of each cluster, for example, by majority decision of the number of attributes (positive or negative) of the sample data 210 belonging to each cluster. FIG. 12 is a conceptual diagram illustrating an example of a cluster in which an attribute included in the first learning model has been specified. As shown in FIG. 12, since the sample data 210 belonging to the cluster on the left side has more conversational (positive example) data than data without conversation (negative example), the cluster attribute specifying unit 37 determines the attribute of the cluster on the left side. , A conversation (positive example) is specified as a cluster. Also, since the sample data 210 belonging to the cluster on the right has more data without conversation (negative example) than the data with conversation (positive example), the cluster attribute specifying unit 37 determines the attribute of the cluster on the right with no conversation (negative). Example) Specify as a cluster.
次に、ステップS153において、不正解ベクトル生成部381は、ステップS152によって属性が特定された第1の学習モデルに含まれるクラスタを用いて、不正解ベクトルNmisを算出する。不正解ベクトルNmisとは、第1の学習モデルに含まれるクラスタに属するデータに対して、正解と判定すべき領域のうち予測できなかった領域を示す。ここで、正解とは、サンプルデータ210が自らの属性と同じ属性を有するクラスタに分類されることを示す。また、正解データとは、自らの属性と同じ属性を有するクラスタに分類されたサンプルデータ210を表し、不正解データとは、自らの属性とは異なる属性を有するクラスタに分類されたサンプルデータ210を表す。第1の学習モデルは、教師なし学習によって生成される学習モデルであるため、その分類精度は低い。そのため、不正解ベクトル生成部381は、分類精度の向上を図るため、不正解ベクトルNmisが示す領域を活用する。 Next, in step S153, the incorrect answer vector generation unit 381 calculates an incorrect answer vector N mis using the cluster included in the first learning model whose attribute has been specified in step S152. The incorrect answer vector N mis indicates an area that could not be predicted among the areas that should be determined to be correct for the data belonging to the cluster included in the first learning model. Here, a correct answer indicates that the sample data 210 is classified into a cluster having the same attribute as its own. In addition, the correct answer data represents the sample data 210 classified into a cluster having the same attribute as its own attribute, and the incorrect answer data represents the sample data 210 classified into a cluster having an attribute different from its own attribute. Represent. Since the first learning model is a learning model generated by unsupervised learning, its classification accuracy is low. Therefore, the incorrect answer vector generation unit 381 uses the area indicated by the incorrect answer vector N mis in order to improve the classification accuracy.
図12は、不正解ベクトルNmisについて説明するための概念図である。Acorrは、Aカテゴリの正解集合を示し、Apredは、Aカテゴリの予測集合を示している。ここで、正解集合とは、正解データが分類される集合領域を示す。一方で、予測集合とは、正解データが分類されることが予測される集合領域を示す。同様に、Bcorrは、Bカテゴリの正解集合を示し、Bpredは、Bカテゴリの予測集合を示している。例えば、Aカテゴリは、会話有のクラスタであり、Bカテゴリは、会話無のクラスタである。不正解ベクトルNmisは、正解集合の中で、予測集合に含まれない領域を示す。すなわち、不正解ベクトルNmisは、第1の学習部36によって生成された第1の学習モデルに含まれるクラスタに対して、クラスタの属性とは異なる属性を有するサンプルデータ210が含まれる可能性のある領域を示す。不正解ベクトルNmisは、下記(式2)を用いて算出される。 FIG. 12 is a conceptual diagram for describing the incorrect answer vector Nmis . A corr indicates a correct set of the A category, and A pred indicates a predicted set of the A category. Here, the correct answer set indicates a set area in which the correct answer data is classified. On the other hand, the prediction set indicates a set area where correct data is predicted to be classified. Similarly, B corr indicates a correct set of the B category, and B pred indicates a predicted set of the B category. For example, the A category is a cluster having a conversation, and the B category is a cluster having no conversation. The incorrect answer vector N mis indicates a region in the correct answer set that is not included in the prediction set. That is, for the cluster included in the first learning model generated by the first learning unit 36, the incorrect answer vector N mis may include sample data 210 having an attribute different from the cluster attribute. Indicates an area. The incorrect answer vector N mis is calculated using the following (Equation 2).
ステップS154において、データリンク生成部382は、ステップS153において生成された不正解ベクトルNmisが示す領域に対して、当該領域に属するデータに対するデータリンクを生成する。第1の学習モデルには、会話有(正例)クラスタに属する会話無(負例)データ、または会話無(負例)クラスタに属する会話有(正例)データのように、本来分類されるべきクラスタとは属性の異なるデータが存在する。そのようなデータに対して、データリンク生成部382は、ユークリッド距離を算出し、最短距離となるデータを検出する。そして、データリンク生成部382は、検出されたデータに対して、半教師あり学習で使用する「must−link」および「cannot−link」のデータリンクの制約を設定する。 In step S154, the data link generation unit 382 to the generated incorrect vector N mis indicated regions in step S153, and generates a data link to the data belonging to the region. The first learning model is originally classified as non-conversational (negative example) data belonging to a conversational (positive example) cluster or conversational (positive example) data belonging to a non-conversation (negative example) cluster. There are data with different attributes from the power cluster. For such data, the data link generation unit 382 calculates the Euclidean distance and detects the data having the shortest distance. Then, the data link generation unit 382 sets restrictions on the “must-link” and “cannot-link” data links used in semi-supervised learning for the detected data.
ここで、不正解ベクトルNmisが示す領域に属するデータに対するデータリンクの生成処理を説明する。図14は、不正解ベクトルNmisによって示される領域に属するサンプルデータに対して生成されたデータリンクの一例を説明するための概念図である。ラベリングされた属性情報と同じ属性のクラスタに分類されたサンプルデータ210を正解データT、ラベリングされた属性情報とは異なる属性のクラスタに分類されたサンプルデータ210を不正解データFとする。 Here, a process of generating a data link for data belonging to the area indicated by the incorrect answer vector Nmis will be described. FIG. 14 is a conceptual diagram illustrating an example of a data link generated for sample data belonging to an area indicated by an incorrect answer vector N mis . The sample data 210 classified into a cluster having the same attribute as the labeled attribute information is referred to as correct data T, and the sample data 210 classified into a cluster having an attribute different from that of the labeled attribute information is referred to as incorrect data F.
正解データTは、属すべきクラスタに属するデータであるので、データリンク生成部382は、正解データTと、正解データTとは異なるクラスタに属する不正解データFのうち最短距離に位置するデータとの間で「must−link」を生成する。また、不正解データFは、属するべきでないクラスタに属するデータであるので、データリンク生成部382は、不正解データFと、同じクラスタに属する正解データTのうち最短距離に位置するデータとの間で「cannot−link」を生成する。ここで、「must−link」は、二つのサンプルデータ210が同じクラスタに属する制約であり、第1の学習モデルに含まれるクラスタのうち、異なるクラスタに属する同一の属性情報がラベリングされたサンプルデータ210の間で設定される制約である。一方で、「cannot−link」は、二つのサンプルデータ210が異なるクラスタに属する制約であり、第1の学習モデルに含まれるクラスタのうち、同一のクラスタに属する異なる属性情報がラベリングされたサンプルデータ210の間で設定される制約である。 Since the correct answer data T is data belonging to the cluster to which the correct answer data T belongs, the data link generating unit 382 determines whether the correct answer data T and the incorrect answer data F belonging to a cluster different from the correct answer data T are located at the shortest distance. A "must-link" is generated between them. Further, since the incorrect answer data F is data belonging to a cluster that should not belong, the data link generation unit 382 determines whether the incorrect answer data F and the correct answer data T belonging to the same cluster are located at the shortest distance. Generates “cannot-link”. Here, “must-link” is a constraint that the two sample data 210 belong to the same cluster, and the sample data in which the same attribute information belonging to different clusters among the clusters included in the first learning model is labeled. The constraint is set between 210. On the other hand, “cannot-link” is a constraint that two sample data 210 belong to different clusters, and sample data in which different attribute information belonging to the same cluster among the clusters included in the first learning model is labeled. The constraint is set between 210.
ステップS155において、第2の学習部39は、ステップS154において生成されたデータリンクに基づいて、代表的な半教師あり学習であるCOP K−meansクラスタリングによる第2の学習モデルを生成する。図15は、実施形態に係る半教師あり学習によって生成された第2の学習モデルの一例を説明するための概念図である。図15に示すように、第2の学習モデルは、図10に示した第1の学習モデルに含まれるクラスタ(第1のクラスタおよび第2のクラスタ)の境界が修正され複雑化している。第2の学習モデルは、第1のクラスタの境界が修正された第3のクラスタおよび第2のクラスタの境界が修正された第4のクラスタを含む。このように、第2の学習モデルは、教師なし学習に基づいて生成された制約設定を、半教師あり学習に適用することによって、より精密な学習モデルを生成することができる。 In step S155, the second learning unit 39 generates a second learning model based on COP K-means clustering, which is a typical semi-supervised learning, based on the data link generated in step S154. FIG. 15 is a conceptual diagram illustrating an example of a second learning model generated by semi-supervised learning according to the embodiment. As shown in FIG. 15, the boundary of the clusters (the first cluster and the second cluster) included in the first learning model shown in FIG. 10 is modified, and the second learning model is complicated. The second learning model includes a third cluster whose boundary of the first cluster has been modified and a fourth cluster whose boundary of the second cluster has been modified. As described above, the second learning model can generate a more precise learning model by applying the constraint setting generated based on unsupervised learning to semi-supervised learning.
そして、ステップS156において、未知データ分類部41は、ステップS155によって生成された第2の学習モデルに含まれるクラスタに対して、属性情報がラベリングされていない未知データの分類処理を行う。ここで、属性情報がラベリングされていない未知データとは、テキストデータ200のうち、サンプルデータ210として取得されていないデータである。図16は、実施形態に係る第2の学習モデルに含まれるクラスタに対して分類された未知データの一例を説明するための概念図である。図16に示すように、第1の学習モデルに含まれるクラスタでは不正解データとなっていた未知データに対しても、第2の学習モデルにおいては、正解データとして分類されていることがわかる。なお、未知データの特徴量は、次元数もしくはTF−IDF値の構成並びに順番が図9に示した特徴量抽出処理によって得られたデータと等しくなるよう生成される。 Then, in step S156, the unknown data classification unit 41 performs a classification process of the unknown data in which the attribute information is not labeled with respect to the cluster included in the second learning model generated in step S155. Here, the unknown data whose attribute information is not labeled is data that has not been acquired as the sample data 210 in the text data 200. FIG. 16 is a conceptual diagram illustrating an example of unknown data classified for a cluster included in the second learning model according to the embodiment. As shown in FIG. 16, it can be understood that unknown data that was incorrect data in the clusters included in the first learning model is classified as correct data in the second learning model. Note that the feature amount of the unknown data is generated such that the number of dimensions or the configuration and order of the TF-IDF values are equal to the data obtained by the feature amount extraction process illustrated in FIG.
このように、データベースサーバ30は、複数のサンプルデータ210を用いた教師なし学習により生成された第1の学習モデルを利用して、テキストデータ200の分類を行うための制約を設定する。そして、データベースサーバ30は、設定した制約を用いて半教師あり学習を行う。これにより、データベースサーバ30は、属性情報がラベリングされていない未知データの分類精度を向上させることができる。また、データベースサーバ30によるデータ分類処理は、全てのテキストデータ200に対して属性情報をラベリングする必要がないため、ラベリングに要する負荷を低減させることができるとともに、誤ったラベリングが行われることによってデータ分類精度が低下することを防止することができる。 As described above, the database server 30 sets a constraint for classifying the text data 200 using the first learning model generated by the unsupervised learning using the plurality of sample data 210. Then, the database server 30 performs semi-supervised learning using the set constraints. As a result, the database server 30 can improve the classification accuracy of unknown data whose attribute information is not labeled. Further, in the data classification processing by the database server 30, since it is not necessary to label attribute information on all the text data 200, it is possible to reduce the load required for labeling, and to perform data labeling by performing erroneous labeling. It is possible to prevent a decrease in classification accuracy.
従来から機械学習によるデータの分類方法として用いられる、正規表現によるパターンマッチングや教師なし学習は、分類対象のデータに対するラベリング作業が不要であるが、分類精度が低い。一方で、サポートベクターマシン(SVM)のような教師あり学習を用いる方法は、分類精度は高いが、膨大なデータに対するラベリングに係る負荷が大きい。そこで、本実施形態は、上記手法の特徴を混成させた半教師あり学習を用いる。半教師あり学習は、教師なし学習を行わずに、正解データTを直接適用させる方法もある。しかし、この手法では、制約条件の数や計算量がサンプルデータの増加に伴い増大してしまう。本実施形態では、教師なし学習によって生成された第1の学習モデルおよびサンプルデータ210の属性に基づいて、不正解データFとなった要素に対してのみ、「must−link」および「cannot−link」の制約を設けることで、効率的かつ精度よく半教師あり学習を実施することができる。 Conventionally, pattern matching using regular expressions and unsupervised learning, which have been used as data classification methods by machine learning, do not require labeling work on data to be classified, but have low classification accuracy. On the other hand, a method using supervised learning, such as a support vector machine (SVM), has high classification accuracy, but has a large load for labeling a huge amount of data. Therefore, the present embodiment uses semi-supervised learning that is a hybrid of the features of the above method. In the semi-supervised learning, there is also a method of directly applying the correct answer data T without performing unsupervised learning. However, in this method, the number of constraints and the amount of calculation increase with an increase in sample data. In the present embodiment, based on the first learning model generated by the unsupervised learning and the attributes of the sample data 210, only the element that has become the incorrect answer data F has “must-link” and “cannot-link”. , The semi-supervised learning can be efficiently and accurately performed.
なお、図10に示したカテゴリ分類処理は、説明の便宜上、第2の学習モデルを生成した後に未知データが分類される(ステップS156)構成を説明したが、未知データは、例えば、ステップS151によって第1の学習モデルが生成される段階からサンプルデータ210とともに分類されている構成であってもよい。 In the category classification process illustrated in FIG. 10, for the sake of convenience, the configuration in which unknown data is classified after generating the second learning model (step S156) has been described. The configuration may be such that the first learning model is classified together with the sample data 210 from the stage of generation.
●まとめ●
以上説明したように、本発明の一実施形態に係るデータベースサーバは、特定のカテゴリに対して、自然言語処理に用いるテキストデータ200の分類を行うデータベースサーバ30(情報処理装置の一例)であって、テキストデータ200のうち、特定のカテゴリの正例または負例のいずれの属性であるかを示す属性情報(正負ラベルの一例)がラベリングされたサンプルデータ210の特徴量を抽出し、抽出した特徴量を用いた教師なし学習に基づいて第1の学習モデルを生成し、サンプルデータ210にラベリングされた属性情報に基づいて、第1の学習モデルに含まれるクラスタが特定のカテゴリの正例または負例のいずれの属性を有する集合であるかを特定する。また、データベースサーバ30は、生成した第1の学習モデルに含まれるクラスタの属性、および当該クラスタに属するサンプルデータ210にラベリングされた属性情報に基づいて、テキストデータ200の分類を行うための制約を設定し、設定した制約を用いた半教師あり学習に基づいて、第2の学習モデルを生成する。そして、データベースサーバ30は、生成した第2の学習モデルに含まれるクラスタに対して、属性情報がラベリングされていないテキストデータ200(未知データの一例)を分類する。これによって、データベースサーバ30は、第1の学習モデルに基づく制約を用いた半教師あり学習を行うことによって、属性情報がラベリングされていない未知データの分類精度を向上させることができる。
● Summary ●
As described above, the database server according to an embodiment of the present invention is a database server 30 (an example of an information processing device) that classifies text data 200 used for natural language processing for a specific category. , Extracting attribute values of the sample data 210 to which attribute information (an example of a positive / negative label) indicating whether the attribute is a positive example or a negative example of a specific category in the text data 200 is extracted and extracted. A first learning model is generated based on unsupervised learning using the quantity, and based on the attribute information labeled on the sample data 210, a cluster included in the first learning model is defined as a positive or negative example of a specific category. Specify which attribute of the example is the set having the attribute. Further, the database server 30 imposes restrictions for classifying the text data 200 based on the attributes of the cluster included in the generated first learning model and the attribute information labeled on the sample data 210 belonging to the cluster. A second learning model is generated based on the set and semi-supervised learning using the set constraints. Then, the database server 30 classifies the text data 200 (an example of unknown data) whose attribute information is not labeled with respect to the cluster included in the generated second learning model. Thereby, the database server 30 can improve the classification accuracy of unknown data whose attribute information is not labeled by performing semi-supervised learning using the constraint based on the first learning model.
また、本発明の一実施形態に係るデータベースサーバは、教師なし学習に基づいて生成した第1の学習モデルに含まれるクラスタのうち、同一のクラスタに属する異なる属性情報(正負ラベルの一例)がラベリングされたサンプルデータ210の間における制約(例えば、cannot−link)、および異なるクラスタに属する同一の属性情報がラベリングされたサンプルデータ210の間における制約(例えば、must−link)を設定する。これによって、データベースサーバ30(情報処理装置の一例)は、教師なし学習によって生成された第1の学習モデル、およびサンプルデータ210の属性に基づいて、不正解データFとなった要素に対してのみ、「must−link」および「cannot−link」の制約を設けることで、効率的かつ精度よく半教師あり学習を実施することができる。 Further, the database server according to the embodiment of the present invention labels different attribute information (an example of a positive / negative label) belonging to the same cluster among clusters included in the first learning model generated based on unsupervised learning. (For example, cannot-link) between the sampled data 210 and the constraint (for example, must-link) between the sample data 210 to which the same attribute information belonging to different clusters is labeled. As a result, the database server 30 (an example of an information processing device) performs only the incorrect answer data F based on the first learning model generated by the unsupervised learning and the attribute of the sample data 210. , "Must-link" and "cannot-link", semi-supervised learning can be efficiently and accurately performed.
さらに、本発明の一実施形態に係るデータベースサーバは、テキストデータ200のうち、属性情報(正負ラベルの一例)がラベリングされた複数のサンプルデータ210を取得し、取得した複数のサンプルデータ210の特徴量を抽出し、抽出した複数のサンプルデータ210の特徴量を用いた教師なし学習に基づいて、第1の学習モデルを生成する。これによって、データベースサーバ30(情報処理装置の一例)は、全てのテキストデータ200に対して属性情報をラベリングする必要がないため、ラベリングに要する負荷を低減させることができるとともに、誤ったラベリングが行われることによってデータ分類精度が低下することを防止することができる。 Furthermore, the database server according to the embodiment of the present invention acquires a plurality of sample data 210 on which attribute information (an example of a positive / negative label) is labeled from the text data 200, and features of the acquired plurality of sample data 210. The amount is extracted, and a first learning model is generated based on unsupervised learning using the feature amounts of the extracted plurality of sample data 210. This eliminates the need for the database server 30 (an example of an information processing device) to label the attribute information on all the text data 200, so that the load required for labeling can be reduced and erroneous labeling is performed. It is possible to prevent the data classification accuracy from being lowered due to being performed.
●補足●
なお、各実施形態の機能は、アセンブラ、C、C++、C#、Java(登録商標)等のレガシープログラミング言語またはオブジェクト指向プログラミング言語等で記述されたコンピュータ実行可能なプログラムにより実現でき、各実施形態の機能を実行するためのプログラムは、電気通信回線を通じて頒布することができる。
● Supplement ●
The functions of each embodiment can be realized by a computer-executable program written in a legacy programming language such as assembler, C, C ++, C #, Java (registered trademark) or an object-oriented programming language. A program for executing the function of (1) can be distributed through a telecommunication line.
また、各実施形態の機能を実行するためのプログラムは、ROM、EEPROM(Electrically Erasable Programmable Read-Only Memory)、EPROM(Erasable Programmable Read-Only Memory)、フラッシュメモリ、フレキシブルディスク、CD(Compact Disc)−ROM、CD−RW(Re-Writable)、DVD−ROM、DVD−RAM、DVD−RW、ブルーレイディスク、SDカード、MO(Magneto-Optical disc)等の装置可読な記録媒体に格納して頒布することもできる。 The programs for executing the functions of the embodiments include ROM, EEPROM (Electrically Erasable Programmable Read-Only Memory), EPROM (Erasable Programmable Read-Only Memory), flash memory, flexible disk, and CD (Compact Disc). Stored in a device-readable recording medium such as ROM, CD-RW (Re-Writable), DVD-ROM, DVD-RAM, DVD-RW, Blu-ray disc, SD card, MO (Magneto-Optical disc), and distributed. Can also.
さらに、各実施形態の機能の一部または全部は、例えばFPGA(Field Programmable Gate Array)等のプログラマブル・デバイス(PD)上に実装することができ、またはASICとして実装することができ、各実施形態の機能をPD上に実現するためにPDにダウンロードする回路構成データ(ビットストリームデータ)、回路構成データを生成するためのHDL(Hardware Description Language)、VHDL(Very High Speed Integrated Circuits Hardware Description Language)、Verilog−HDL等により記述されたデータとして記録媒体により配布することができる。 Further, a part or all of the functions of each embodiment can be implemented on a programmable device (PD) such as an FPGA (Field Programmable Gate Array), or can be implemented as an ASIC. Configuration data (bit stream data) to be downloaded to the PD in order to realize the functions of the PD on the PD, HDL (Hardware Description Language) for generating the circuit configuration data, VHDL (Very High Speed Integrated Circuits Hardware Description Language), It can be distributed on a recording medium as data described in Verilog-HDL or the like.
これまで本発明の一実施形態に係る情報処理装置、データ分類方法およびプログラムについて説明してきたが、本発明は、上述した実施形態に限定されるものではなく、他の実施形態の追加、変更または削除等、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。 Although the information processing apparatus, the data classification method, and the program according to one embodiment of the present invention have been described above, the present invention is not limited to the above-described embodiment, and is not limited to the above-described embodiment. Modifications such as deletion can be made within a range that can be conceived by those skilled in the art, and any aspect is within the scope of the present invention as long as the functions and effects of the present invention are exhibited.
1 会議システム
2 管理システム
5 通信ネットワーク
10 管理サーバ
30 データベースサーバ(情報処理装置の一例)
32 サンプルデータ取得部(取得手段の一例)
34 特徴量抽出部(特徴量抽出手段の一例)
36 第1の学習部(第1の生成手段の一例)
37 クラスタ属性特定部(クラスタ属性特定手段の一例)
38 制約設定部(制約設定手段の一例)
39 第2の学習部(第2の生成手段の一例)
41 未知データ分類部(分類手段の一例)
50 WEBサーバ
70 通信端末
200 テキストデータ
210 サンプルデータ
300 カテゴリ管理テーブル
341 対象カテゴリ情報抽出部(カテゴリ情報抽出手段の一例)
342 形態素解析部(形態素解析手段の一例)
343 特徴量決定部(特徴量決定手段の一例)
381 不正解ベクトル生成部
382 データリンク生成部
DESCRIPTION OF SYMBOLS 1 Conference system 2 Management system 5 Communication network 10 Management server 30 Database server (an example of an information processing device)
32 Sample data acquisition unit (an example of acquisition means)
34 Feature Extraction Unit (Example of Feature Extraction Means)
36 first learning unit (an example of a first generation unit)
37 Cluster attribute specifying unit (an example of a cluster attribute specifying unit)
38 Constraint setting unit (an example of constraint setting means)
39 second learning unit (an example of a second generation unit)
41 Unknown Data Classification Unit (Example of Classification Means)
50 Web server 70 Communication terminal 200 Text data 210 Sample data 300 Category management table 341 Target category information extraction unit (an example of category information extraction means)
342 Morphological analyzer (an example of morphological analyzer)
343 feature amount determination unit (an example of feature amount determination means)
381 Incorrect answer vector generation unit 382 Data link generation unit
Claims (14)
前記テキストデータのうち、前記カテゴリの正例または負例のいずれの属性であるかを示す正負ラベルがラベリングされたサンプルデータの特徴量を抽出する特徴量抽出手段と、
前記抽出された特徴量を用いた教師なし学習に基づいて、第1の学習モデルを生成する第1の生成手段と、
前記サンプルデータにラベリングされた正負ラベルに基づいて、前記生成された第1の学習モデルに含まれるクラスタが、前記正例または前記負例のいずれの属性を有する集合であるかを特定するクラスタ属性特定手段と、
前記特定されたクラスタの属性、および当該クラスタに属するサンプルデータにラベリングされた正負ラベルに基づいて、前記分類を行うための制約を設定する制約設定手段と、
前記設定された制約を用いた半教師あり学習に基づいて、第2の学習モデルを生成する第2の生成手段と、
前記生成された第2の学習モデルに含まれるクラスタに対して、前記テキストデータのうち、前記正負ラベルがラベリングされていない未知データを分類する分類手段と、
を備える情報処理装置。 An information processing apparatus for classifying text data used for natural language processing for a specific category,
Among the text data, a feature amount extracting unit that extracts a feature amount of sample data in which a positive or negative label indicating whether the attribute is a positive example or a negative example of the category is labeled,
First generating means for generating a first learning model based on unsupervised learning using the extracted feature amount;
A cluster attribute that specifies whether a cluster included in the generated first learning model is a set having the positive example or the negative example based on the positive / negative label labeled on the sample data; Identification means,
Based on the attribute of the identified cluster, and a positive / negative label labeled on sample data belonging to the cluster, a constraint setting unit that sets a constraint for performing the classification,
A second generation unit that generates a second learning model based on semi-supervised learning using the set constraint;
Classification means for classifying unknown data in which the positive / negative labels are not labeled among the text data, for clusters included in the generated second learning model,
An information processing apparatus comprising:
前記テキストデータのうち、前記正負ラベルがラベリングされた複数のサンプルデータを取得する取得手段を備え、
前記特徴量抽出手段は、前記取得された複数のサンプルデータの特徴量を抽出し、
前記第1の生成手段は、前記抽出された複数のサンプルデータの特徴量を用いた前記教師なし学習に基づいて、前記第1の学習モデルを生成する情報処理装置。 The information processing apparatus according to claim 1 or 2,
Acquisition means for acquiring a plurality of sample data in which the positive and negative labels are labeled among the text data,
The feature amount extracting means extracts a feature amount of the acquired plurality of sample data,
The information processing apparatus, wherein the first generation unit generates the first learning model based on the unsupervised learning using the feature amounts of the extracted plurality of sample data.
前記特徴量抽出手段は、更に、
前記取得されたサンプルデータに含まれる、前記カテゴリを特定するためのカテゴリ情報を抽出するカテゴリ情報抽出手段と、
前記取得されたサンプルデータに含まれるテキスト情報に対する形態素解析を行う形態素解析手段と、
前記抽出されたカテゴリ情報、および前記形態素解析手段による解析結果に基づいて、前記サンプルデータの特徴量を決定する特徴量決定手段と、を備える情報処理装置。 The information processing device according to claim 4, wherein:
The feature amount extracting means further comprises:
Included in the obtained sample data, category information extracting means for extracting category information for specifying the category,
Morphological analysis means for performing morphological analysis on text information included in the obtained sample data,
An information processing apparatus comprising: a feature amount determining unit that determines a feature amount of the sample data based on the extracted category information and an analysis result by the morphological analysis unit.
前記テキストデータのうち、前記カテゴリの正例または負例のいずれの属性であるかを示す正負ラベルがラベリングされたサンプルデータの特徴量を抽出する特徴量抽出ステップと、
前記抽出された特徴量を用いた教師なし学習に基づいて、第1の学習モデルを生成する第1の生成ステップと、
前記サンプルデータにラベリングされた正負ラベルに基づいて、前記生成された第1の学習モデルに含まれるクラスタが、前記正例または前記負例のいずれの属性を有する集合であるかを特定するクラスタ属性特定ステップと、
前記特定されたクラスタの属性、および当該クラスタに属するサンプルデータにラベリングされた正負ラベルに基づいて、前記分類を行うための制約を設定する制約設定ステップと、
前記設定された制約を用いた半教師あり学習に基づいて、第2の学習モデルを生成する第2の生成ステップと、
前記生成された第2の学習モデルに含まれるクラスタに対して、前記テキストデータのうち、前記正負ラベルがラベリングされていない未知データを分類する分類ステップと、
を実行するデータ分類方法。 A data classification method performed by an information processing device that classifies text data used for natural language processing for a specific category,
A feature amount extracting step of extracting a feature amount of sample data in which the text data is labeled with a positive / negative label indicating whether the attribute is a positive example or a negative example of the category;
A first generation step of generating a first learning model based on unsupervised learning using the extracted feature amount;
A cluster attribute for specifying whether the cluster included in the generated first learning model is a set having the positive example or the negative example based on the positive / negative label labeled on the sample data; Specific steps,
Based on the attribute of the identified cluster, and a positive / negative label labeled on sample data belonging to the cluster, a constraint setting step of setting a constraint for performing the classification,
A second generation step of generating a second learning model based on semi-supervised learning using the set constraint;
A classifying step of classifying unknown data in which the positive / negative label is not labeled among the text data with respect to the clusters included in the generated second learning model;
Data classification method to perform.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018166803A JP7087851B2 (en) | 2018-09-06 | 2018-09-06 | Information processing equipment, data classification methods and programs |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018166803A JP7087851B2 (en) | 2018-09-06 | 2018-09-06 | Information processing equipment, data classification methods and programs |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020042330A true JP2020042330A (en) | 2020-03-19 |
JP7087851B2 JP7087851B2 (en) | 2022-06-21 |
Family
ID=69798240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018166803A Active JP7087851B2 (en) | 2018-09-06 | 2018-09-06 | Information processing equipment, data classification methods and programs |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7087851B2 (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611376A (en) * | 2020-04-16 | 2020-09-01 | 西交利物浦大学 | Unsupervised learning user classification method and device based on user generated text |
CN111709247A (en) * | 2020-05-20 | 2020-09-25 | 北京百度网讯科技有限公司 | Data set processing method and device, electronic equipment and storage medium |
CN112765358A (en) * | 2021-02-23 | 2021-05-07 | 西安交通大学 | Taxpayer industry classification method based on noise label learning |
WO2021246393A1 (en) * | 2020-06-01 | 2021-12-09 | 株式会社クボタ | Learning model generating device, inferring device, and aeration amount control device |
WO2022114363A1 (en) * | 2020-11-27 | 2022-06-02 | 주식회사 솔리드웨어 | Unsupervised learning-based method and apparatus for generating supervised learning model, and method and apparatus for analyzing unsupervised learning model using same |
WO2022114364A1 (en) * | 2020-11-27 | 2022-06-02 | 주식회사 솔리드웨어 | Method and apparatus for applying user intent in unsupervised learning |
WO2022158099A1 (en) * | 2021-01-21 | 2022-07-28 | ソニーグループ株式会社 | Information processing method, information processing system, information terminal, and computer program |
WO2022195690A1 (en) * | 2021-03-15 | 2022-09-22 | 日本電信電話株式会社 | Log data analysis device, log data analysis method, and program |
CN116049412A (en) * | 2023-03-31 | 2023-05-02 | 腾讯科技(深圳)有限公司 | Text classification method, model training method, device and electronic equipment |
JP2023152270A (en) * | 2022-03-31 | 2023-10-16 | ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド | Data labeling method by artificial intelligence, apparatus, electronic device, storage medium, and program |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005107705A (en) * | 2003-09-29 | 2005-04-21 | Hitachi Ltd | Document classifying device and method for plurality of languages |
JP2013134752A (en) * | 2011-12-27 | 2013-07-08 | Nippon Telegr & Teleph Corp <Ntt> | Topic model learning method, apparatus, and program |
US20140337005A1 (en) * | 2013-05-08 | 2014-11-13 | Microsoft Corporation | Cross-lingual automatic query annotation |
JP2017107391A (en) * | 2015-12-09 | 2017-06-15 | 東邦瓦斯株式会社 | Text mining method, and text mining program |
JP2017126158A (en) * | 2016-01-13 | 2017-07-20 | 日本電信電話株式会社 | Binary classification learning device, binary classification device, method, and program |
-
2018
- 2018-09-06 JP JP2018166803A patent/JP7087851B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005107705A (en) * | 2003-09-29 | 2005-04-21 | Hitachi Ltd | Document classifying device and method for plurality of languages |
JP2013134752A (en) * | 2011-12-27 | 2013-07-08 | Nippon Telegr & Teleph Corp <Ntt> | Topic model learning method, apparatus, and program |
US20140337005A1 (en) * | 2013-05-08 | 2014-11-13 | Microsoft Corporation | Cross-lingual automatic query annotation |
JP2017107391A (en) * | 2015-12-09 | 2017-06-15 | 東邦瓦斯株式会社 | Text mining method, and text mining program |
JP2017126158A (en) * | 2016-01-13 | 2017-07-20 | 日本電信電話株式会社 | Binary classification learning device, binary classification device, method, and program |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611376B (en) * | 2020-04-16 | 2023-11-17 | 西交利物浦大学 | User classification method and device based on unsupervised learning of user-generated text |
CN111611376A (en) * | 2020-04-16 | 2020-09-01 | 西交利物浦大学 | Unsupervised learning user classification method and device based on user generated text |
CN111709247B (en) * | 2020-05-20 | 2023-04-07 | 北京百度网讯科技有限公司 | Data set processing method and device, electronic equipment and storage medium |
CN111709247A (en) * | 2020-05-20 | 2020-09-25 | 北京百度网讯科技有限公司 | Data set processing method and device, electronic equipment and storage medium |
WO2021246393A1 (en) * | 2020-06-01 | 2021-12-09 | 株式会社クボタ | Learning model generating device, inferring device, and aeration amount control device |
WO2022114364A1 (en) * | 2020-11-27 | 2022-06-02 | 주식회사 솔리드웨어 | Method and apparatus for applying user intent in unsupervised learning |
WO2022114363A1 (en) * | 2020-11-27 | 2022-06-02 | 주식회사 솔리드웨어 | Unsupervised learning-based method and apparatus for generating supervised learning model, and method and apparatus for analyzing unsupervised learning model using same |
WO2022158099A1 (en) * | 2021-01-21 | 2022-07-28 | ソニーグループ株式会社 | Information processing method, information processing system, information terminal, and computer program |
CN112765358B (en) * | 2021-02-23 | 2023-04-07 | 西安交通大学 | Taxpayer industry classification method based on noise label learning |
CN112765358A (en) * | 2021-02-23 | 2021-05-07 | 西安交通大学 | Taxpayer industry classification method based on noise label learning |
WO2022195690A1 (en) * | 2021-03-15 | 2022-09-22 | 日本電信電話株式会社 | Log data analysis device, log data analysis method, and program |
JP2023152270A (en) * | 2022-03-31 | 2023-10-16 | ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド | Data labeling method by artificial intelligence, apparatus, electronic device, storage medium, and program |
CN116049412A (en) * | 2023-03-31 | 2023-05-02 | 腾讯科技(深圳)有限公司 | Text classification method, model training method, device and electronic equipment |
Also Published As
Publication number | Publication date |
---|---|
JP7087851B2 (en) | 2022-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7087851B2 (en) | Information processing equipment, data classification methods and programs | |
CN109783632B (en) | Customer service information pushing method and device, computer equipment and storage medium | |
US10860948B2 (en) | Extending question training data using word replacement | |
US10740380B2 (en) | Incremental discovery of salient topics during customer interaction | |
US20190333118A1 (en) | Cognitive product and service rating generation via passive collection of user feedback | |
US10141006B1 (en) | Artificial intelligence system for improving accessibility of digitized speech | |
JP5957048B2 (en) | Teacher data generation method, generation system, and generation program for eliminating ambiguity | |
CN102779149A (en) | Information processing apparatus, information processing method, program, and information processing system | |
WO2023272850A1 (en) | Decision tree-based product matching method, apparatus and device, and storage medium | |
US11144579B2 (en) | Use of machine learning to characterize reference relationship applied over a citation graph | |
US20210264480A1 (en) | Text processing based interface accelerating | |
US20210158210A1 (en) | Hybrid in-domain and out-of-domain document processing for non-vocabulary tokens of electronic documents | |
US20200293528A1 (en) | Systems and methods for automatically generating structured output documents based on structural rules | |
US11423219B2 (en) | Generation and population of new application document utilizing historical application documents | |
US12032607B2 (en) | Context-based recommendation system for feature search | |
CN113343936A (en) | Training method and training device for video representation model | |
CN108052686A (en) | A kind of abstract extraction method and relevant device | |
US20230315990A1 (en) | Text detection method and apparatus, electronic device, and storage medium | |
JP2022093317A (en) | Computer-implemented method, system and computer program product (recognition and restructuring of previously presented information) | |
US20160259774A1 (en) | Information processing apparatus, information processing method, and non-transitory computer readable medium | |
CN111063445A (en) | Feature extraction method, device, equipment and medium based on medical data | |
WO2023000782A1 (en) | Method and apparatus for acquiring video hotspot, readable medium, and electronic device | |
CN114117082B (en) | Method, apparatus, and medium for correcting data to be corrected | |
CN110705308A (en) | Method and device for recognizing field of voice information, storage medium and electronic equipment | |
US20200387825A1 (en) | Method and system for determining response to queries in virtual assistance system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210616 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220415 |
|
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: 20220510 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220523 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7087851 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |