(57)【要約】【課題】分類対象のデータに対するラベリングの負荷を低減させるとともに、自然言語処理に用いるデータの分類精度を向上させることを目的とする。【解決手段】データベースサーバ３０は、特定のカテゴリに対して、テキストデータ２００のうち、特定のカテゴリの正例または負例のいずれの属性であるかを示す属性情報がラベリングされたサンプルデータ２１０の特徴量を抽出し、抽出した特徴量を用いた教師なし学習に基づいて第１の学習モデルを生成する。また、データベースサーバ３０は、第１の学習モデルに含まれるクラスタの属性、および当該クラスタに属するサンプルデータ２１０にラベリングされた属性情報に基づいて、テキストデータ２００の分類を行うための制約を設定し、設定した制約を用いた半教師あり学習に基づいて、第２の学習モデルを生成する。【選択図】図１６
2020042330.tif 000002
【特許請求の範囲】
【請求項１】
特定のカテゴリに対して、自然言語処理に用いるテキストデータの分類を行う情報処理装置であって、
前記テキストデータのうち、前記カテゴリの正例または負例のいずれの属性であるかを示す正負ラベルがラベリングされたサンプルデータの特徴量を抽出する特徴量抽出手段と、
前記抽出された特徴量を用いた教師なし学習に基づいて、第１の学習モデルを生成する第１の生成手段と、
前記サンプルデータにラベリングされた正負ラベルに基づいて、前記生成された第１の学習モデルに含まれるクラスタが、前記正例または前記負例のいずれの属性を有する集合であるかを特定するクラスタ属性特定手段と、
前記特定されたクラスタの属性、および当該クラスタに属するサンプルデータにラベリングされた正負ラベルに基づいて、前記分類を行うための制約を設定する制約設定手段と、
前記設定された制約を用いた半教師あり学習に基づいて、第２の学習モデルを生成する第２の生成手段と、
前記生成された第２の学習モデルに含まれるクラスタに対して、前記テキストデータのうち、前記正負ラベルがラベリングされていない未知データを分類する分類手段と、
を備える情報処理装置。
【請求項２】
前記制約設定手段は、前記第１の学習モデルに含まれるクラスタに属するサンプルデータのうち、当該クラスタとは前記属性が異なる前記正負ラベルがラベリングされたサンプルデータに対する制約を設定する請求項１に記載の情報処理装置。
【請求項３】
前記制約設定手段は、前記第１の学習モデルに含まれるクラスタのうち、同一のクラスタに属する異なる前記正負ラベルがラベリングされたサンプルデータの間における制約、および異なるクラスタに属する同一の前記正負ラベルがラベリングされたサンプルデータの間における制約を設定する請求項１または２に記載の情報処理装置。
【請求項４】
請求項１または２に記載の情報処理装置であって、
前記テキストデータのうち、前記正負ラベルがラベリングされた複数のサンプルデータを取得する取得手段を備え、
前記特徴量抽出手段は、前記取得された複数のサンプルデータの特徴量を抽出し、
前記第１の生成手段は、前記抽出された複数のサンプルデータの特徴量を用いた前記教師なし学習に基づいて、前記第１の学習モデルを生成する情報処理装置。
【請求項５】
請求項４のいずれか一項に記載の情報処理装置であって、
前記特徴量抽出手段は、更に、
前記取得されたサンプルデータに含まれる、前記カテゴリを特定するためのカテゴリ情報を抽出するカテゴリ情報抽出手段と、
前記取得されたサンプルデータに含まれるテキスト情報に対する形態素解析を行う形態素解析手段と、
前記抽出されたカテゴリ情報、および前記形態素解析手段による解析結果に基づいて、前記サンプルデータの特徴量を決定する特徴量決定手段と、を備える情報処理装置。
【請求項６】
前記第１の学習モデルに含まれるクラスタは、前記教師なし学習に基づいて生成される第１のクラスタおよび第２のクラスタを含む請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項７】
前記第２の学習モデルに含まれるクラスタは、前記半教師あり学習に基づいて生成される、前記第１のクラスタに対応する第３のクラスタおよび第２のクラスタに対応する第４のクラスタを含む請求項６に記載の情報処理装置。
【請求項８】
前記教師なし学習は、Ｋ−ｍｅａｎｓクラスタリングによる機械学習である請求項１乃至７のいずれか一項に記載の情報処理装置。
【請求項９】
前記半教師あり学習は、ＣＯＰ  Ｋ−ｍｅａｎｓクラスタリングによる機械学習である請求項１乃至８のいずれか一項に記載の情報処理装置。
【請求項１０】
前記特定のカテゴリは、会話要素の有無を識別するためのカテゴリである請求項１乃至９のいずれか一項に記載の情報処理装置。
【請求項１１】
特定のカテゴリに対して、自然言語処理に用いるテキストデータの分類を行う情報処理装置が実行するデータ分類方法であって、
前記テキストデータのうち、前記カテゴリの正例または負例のいずれの属性であるかを示す正負ラベルがラベリングされたサンプルデータの特徴量を抽出する特徴量抽出ステップと、
前記抽出された特徴量を用いた教師なし学習に基づいて、第１の学習モデルを生成する第１の生成ステップと、
前記サンプルデータにラベリングされた正負ラベルに基づいて、前記生成された第１の学習モデルに含まれるクラスタが、前記正例または前記負例のいずれの属性を有する集合であるかを特定するクラスタ属性特定ステップと、
前記特定されたクラスタの属性、および当該クラスタに属するサンプルデータにラベリングされた正負ラベルに基づいて、前記分類を行うための制約を設定する制約設定ステップと、
前記設定された制約を用いた半教師あり学習に基づいて、第２の学習モデルを生成する第２の生成ステップと、
前記生成された第２の学習モデルに含まれるクラスタに対して、前記テキストデータのうち、前記正負ラベルがラベリングされていない未知データを分類する分類ステップと、
を実行するデータ分類方法。
【請求項１２】
前記制約設定ステップは、前記第１の学習モデルに含まれるクラスタに属するサンプルデータのうち、当該クラスタとは前記属性が異なる前記正負ラベルがラベリングされたサンプルデータに対する制約を設定する請求項１１に記載のデータ分類方法。
【請求項１３】
前記制約設定ステップは、前記第１の学習モデルに含まれるクラスタのうち、同一のクラスタに属する異なる前記正負ラベルがラベリングされたサンプルデータの間における制約、および異なるクラスタに属する同一の前記正負ラベルがラベリングされたサンプルデータの間における制約を設定する請求項１１または１２に記載のデータ分類方法。
【請求項１４】
コンピュータに、請求項１１乃至１３のいずれか一項に記載の方法を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、データ分類方法およびプログラムに関する。
【背景技術】
【０００２】
機械翻訳、情報検索または質問応答等の場面において、機械学習をベースにした自然言語処理を活用する研究が盛んに行われている。この機械学習を活用した分野においては、その学習精度を高めるために、学習データとして用いる十分なデータセットが必要となる。
【０００３】
このようなデータセットに関して、学習データを属性ごとに分類する機械学習のアルゴリズムがある。特許文献１には、自然言語処理を用いる分類器のトレーニング方法が開示されている。機械学習のアルゴリズムは、パターンマッチング、教師なし学習、半教師あり学習または教師あり学習等の手法が知られている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、従来の方法では、分類対象となる大量のデータに対して、各データの属性を手作業でラベリングする必要があり、ラベリングに対する負荷が大きい。一方で、ラベリングを必要としない教師なし学習等の手法を用いた場合には、分類精度が低下してしまう。そのため、分類対象のデータに対するラベリングの負荷を低減させるとともに、自然言語処理に用いるデータの分類精度を向上させたいという課題があった。
【課題を解決するための手段】
【０００５】
請求項１に係る情報処理装置は、特定のカテゴリに対して、自然言語処理に用いるテキストデータの分類を行う情報処理装置であって、前記テキストデータのうち、前記カテゴリの正例または負例のいずれの属性であるかを示す正負ラベルがラベリングされたサンプルデータの特徴量を抽出する特徴量抽出手段と、前記抽出された特徴量を用いた教師なし学習に基づいて、第１の学習モデルを生成する第１の生成手段と、前記サンプルデータにラベリングされた正負ラベルに基づいて、前記生成された第１の学習モデルに含まれるクラスタが、前記正例または前記負例のいずれの属性を有する集合であるかを特定するクラスタ属性特定手段と、前記特定されたクラスタの属性、および当該クラスタに属するサンプルデータにラベリングされた正負ラベルに基づいて、前記分類を行うための制約を設定する制約設定手段と、前記設定された制約を用いた半教師あり学習に基づいて、第２の学習モデルを生成する第２の生成手段と、前記生成された第２の学習モデルに含まれるクラスタに対して、前記テキストデータのうち、前記正負ラベルがラベリングされていない未知データを分類する分類手段と、を備える。
【発明の効果】
【０００６】
本発明によれば、分類対象のデータに対するラベリングの負荷を低減させるとともに、自然言語処理に用いるデータの分類精度を向上させることができる。
【図面の簡単な説明】
【０００７】
【図１】実施形態に係る会議システムのシステム構成の一例を示す図である。
【図２】実施形態に係るコンピュータのハードウエア構成の一例を示す図である。
【図３】実施形態に係るデータベースサーバの機能構成の一例を示す図である。
【図４】実施形態に係るカテゴリ管理テーブルの一例を示す図である。
【図５】実施形態に係るテキストデータの一例を示す図である。
【図６】実施形態に係る特徴量抽出部の機能構成の一例を示す図である。
【図７】実施形態に係る制約設定部の機能構成の一例を示す図である。
【図８】実施形態に係るデータベースサーバにおけるデータ分類処理の一例を示すフローチャートである。
【図９】実施形態に係るデータベースサーバにおける特徴量抽出処理の一例を示すフローチャートである。
【図１０】実施形態に係るデータベースサーバにおけるカテゴリ分類処理の一例を示すフローチャートである。
【図１１】教師なし学習によって生成された第１の学習モデルの一例を説明するための概念図である。
【図１２】第１の学習モデルに含まれる属性が特定されたクラスタの一例を説明するための概念図である。
【図１３】不正解ベクトルＮｍｉｓについて説明するための概念図である。
【図１４】不正解ベクトルＮｍｉｓによって示される領域に属するサンプルデータに対して生成されたデータリンクの一例を説明するための概念図である。
【図１５】実施形態に係る半教師あり学習によって生成された第２の学習モデルの一例を説明するための概念図である。
【図１６】実施形態に係る第２の学習モデルに含まれるクラスタに対して分類された未知データの一例を説明するための概念図である。
【発明を実施するための形態】
【０００８】
以下、図面を参照しながら、発明を実施するための形態を説明する。なお、図面の説明において同一要素には同一符号を付し、重複する説明は省略する。
【０００９】
●システム構成●
図１は、実施形態に係るデータベースサーバが適用されるシステムの一例を示す図である。図１に示す会議システム１は、本実施形態に係るデータベースサーバ３０による機械学習によって生成された学習モデルを、通信端末７０を利用した会議に利用する場合の例である。会議システム１は、例えば、通信端末７０によって集音された音声データに対して、データベースサーバ３０によって生成された学習モデルを用いた自然言語処理を行うことができるシステムである。
【００１０】
会議システム１は、管理サーバ１０、データベースサーバ３０、ＷＥＢサーバ５０および通信端末７０によって構成されている。会議システム１を構成する各装置は、通信ネットワーク５を介してそれぞれ接続されている。通信ネットワーク５は、例えば、ＬＡＮ(Local Area Network)、専用線およびインターネット等によって構築される。通信ネットワーク５は、有線だけでなく、Ｗｉ−Ｆｉ（Wireless Fidelity）や、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の無線による通信が行われる箇所があってもよい。
【００１１】
管理サーバ１０、データベースサーバ３０およびＷＥＢサーバ５０は、管理システム２を構成する。管理システム２は、通信端末７０からによって集音された音声データ等の発話録データに対して、自然言語処理を行うシステムである。管理サーバ１０は、通信ネットワーク５を介して、通信端末７０に対して、各種機能を実現するためのアプリケーション等を提供するサーバコンピュータである。
【００１２】
データベースサーバ３０は、自然言語処理に用いる複数のテキストデータ（データセット）を記憶するサーバコンピュータである。また、データベースサーバ３０は、データセットを機械学習により特定のカテゴリの属性ごとに分類する分類器としての機能を有する。本実施形態において、会議システム１は、データベースサーバ３０において会話要素の有無によって分類された学習モデルを用いて、例えば、通信端末７０によって生成されたデータに対する自然言語処理を行う。
【００１３】
ＷＥＢサーバ５０は、データベースサーバ３０または通信端末７０に対して、ＷＥＢサービス（ＨＴＴＰ：Hypertext Transfer Protocol通信）による中継機能を提供するサーバ装置である。ＷＥＢサーバ５０は、ＷＥＢサービスを介して、データベースサーバ３０へ自然言語処理に用いるテキストデータ２００を送信する。なお、ＷＥＢサーバ５０の機能は、データベースサーバ３０および通信端末７０に備えられていてもよい。
【００１４】
通信端末７０は、会議システム１の利用者が使用するノートＰＣ（Personal Computer）等の端末装置である。会議システム１の利用者は、通信端末７０にインストールされた会議アプリ等の特定のアプリケーションを用いて会議を開催する。通信端末７０は、会議中に行われた利用者の発言等を集音した音声データを管理システム２へ送信する。そして、通信端末７０は、管理システム２によって自然言語処理された議事録等の変換データを受信することによって、自動的に会議の議事録等を作成することができる。なお、通信端末７０は、通信ネットワーク５に接続可能な通信機能を備えていればノートＰＣに限られない。通信端末７０は、ディスクトップＰＣ、タブレット端末、スマートフォン、電子黒板、カーナビゲーション装置またはマイク等の集音装置であってもよい。また、図１は、通信端末７０が一つである場合の例を説明したが、通信端末７０の数はこれに限られず、会議システム１は、複数の通信端末７０を有してもよい。
【００１５】
なお、図１は、会議システムの例を説明したが、図１に示したシステムの用途は、会議に限られず、自然言語処理を必要とする所定のイベントであってもよい。例えば、会議システム１は、会合、集い、寄り合い、相談、打ち合わせ等の音声データに対するテキスト変換を利用するイベントに適用されてもよい。また、会議システム１は、通信端末７０を用いた情報検索等のイベントに適用されてもよい。さらに、管理サーバ１０およびデータベースサーバ３０の機能は、一つのサーバによって実現される構成であってもよいし、データベースサーバ３０の機能は、複数のサーバによって実現される構成であってもよい。
【００１６】
●ハードウエア構成●
続いて、実施形態に係る各装置のハードウエア構成について説明する。図１に示した会議システム１を構成する各装置は、一般的なコンピュータの構成を有する。ここでは、一般的なコンピュータのハードウエア構成例について説明する。
【００１７】
図２は、実施形態に係るコンピュータのハードウエア構成の一例を示す図である。コンピュータ１００は、ＣＰＵ（Central Processing Unit）１０１、ＲＯＭ（Read Only Memory）１０２、ＲＡＭ（Random Access Memory）１０３、ストレージ１０４、入出力インターフェース（I/F）１０５、ネットワークインターフェース（I/F）１０６およびバスライン１０７を有する。
【００１８】
ＣＰＵ１０１は、ＲＯＭ１０２やストレージ１０４等に格納された本発明に係るプログラムやデータをＲＡＭ１０３上に読み出し、処理を実行することで、コンピュータ１００の各機能を実現する演算装置である。例えば、データベースサーバ３０は、本発明に係るプログラムが実行されることで本発明に係るデータ分類方法を実現する。
【００１９】
ＲＯＭ１０２は、電源を切ってもプログラムやデータを保持することができる不揮発性のメモリである。ＲＯＭ１０２は、例えば、フラッシュＲＯＭ等により構成される。ＲＯＭ１０２は、多種の用途に対応したＳＤＫ（Software Development Kit）がインストールされており、ＳＤＫのアプリケーションを用いて、コンピュータ１００の機能やネットワーク接続などを実現することが可能である。
【００２０】
ＲＡＭ１０３は、ＣＰＵ１０１のワークエリア等として用いられる揮発性のメモリである。ストレージ１０４は、例えば、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）等のストレージデバイスである。ストレージ１０４は、例えば、ＯＳ（Operation System）、アプリケーションプログラム、および各種データ等を記憶する。
【００２１】
入出力Ｉ／Ｆ１０５は、コンピュータ１００に外部装置を接続するためのインターフェースである。外部装置は、例えば、ＵＳＢ（Universal Serial Bus）メモリ、メモリカード、光学ディスク等の記録媒体１０５ａや、各種の電子機器等が含まれる。
【００２２】
ネットワークＩ／Ｆ１０６は、通信ネットワーク５を介して、データ通信をするためのインターフェースである。ネットワークＩ／Ｆ１０６は、例えば、無線ＬＡＮの通信インターフェースである。また、ネットワークＩ／Ｆ１０６は、有線ＬＡＮ、３Ｇ（3rd Generation）、ＬＴＥ(Long Term Evolution)、４Ｇ（4rd Generation）、５Ｇ（5rd Generation）、ミリ波無線通信の通信インターフェースを備えていてもよい。
【００２３】
バスライン１０７は、上記の各構成要素に共通に接続され、アドレス信号、データ信号、および各種制御信号等を伝送する。ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ストレージ１０４、入出力Ｉ／Ｆ１０５およびネットワークＩ／Ｆ１０６は、バスライン１０７を介して相互に接続されている。
【００２４】
なお、実施形態に係る各装置のハードウエア構成は、必要に応じて構成要素が追加または削除されてもよい。通信端末７０は、図２に示した構成に加えて、マイク等の音声を入力するための集音装置を有する。また、通信端末７０は、例えば、キーボード、マウスおよびタッチパネル等の入力装置、スピーカ、カメラ等の撮像装置、並びにＬＣＤ（Liquid Crystal display）等の表示装置を有していてもよい。
【００２５】
●機能構成●
続いて、実施形態に係るデータベースサーバ３０の機能構成について説明する。図３は、実施形態に係るデータベースサーバの機能構成の一例を示す図である。データベースサーバ３０によって実現される機能は、送受信部３１、サンプルデータ取得部３２、対象カテゴリ情報生成部３３、特徴量抽出部３４、データ数値化部３５、第１の学習部３６、クラスタ属性特定部３７、制約設定部３８、第２の学習部３９、未知データ分類部４１、記憶・読出部４２および記憶部３０００を含む。
【００２６】
送受信部３１は、通信ネットワーク５を介して、外部装置と各種データの送受信を行う機能である。送受信部３１は、例えば、ＷＥＢサーバ５０から提供されるＷＥＢサービスを介して、分類対象となるテキストデータ２００を受信する。送受信部３１は、図２に示したネットワークＩ／Ｆ１０６およびＣＰＵ１０１で実行されるプログラム等によって実現される。
【００２７】
サンプルデータ取得部３２は、記憶部３０００に記憶されたテキストデータ２００のうち、特定のカテゴリの属性を特定するための属性情報がラベリングされたデータをサンプルデータ２１０として取得する。属性情報は、例えば、特定のカテゴリに対する正例または負例のいずれの属性に属するかを示す正負ラベルである。属性情報は、例えば、カテゴリの種別が「会話」である場合、会話要素の有無を特定するための情報である。ここで、会話とは、発言、質問、応答、対話、発表等が含まれる。なお、属性情報のラベリングは、データベースサーバ３０の利用者またはＷＥＢサービスによりテキストデータ２００のデータセットを提供する提供者等によって行われる。サンプルデータ取得部３２は、図２に示したネットワークＩ／Ｆ１０６およびＣＰＵ１０１で実行されるプログラム等によって実現される。サンプルデータ取得部３２は、取得手段の一例である。
【００２８】
対象カテゴリ情報生成部３３は、後述するカテゴリ管理テーブル３００に含まれる対象カテゴリ設定情報３１０を生成する機能である。対象カテゴリ設定情報３１０とは、データ分類処理の分類対象となるカテゴリの特徴を特定するための情報である。対象カテゴリ情報生成部３３は、図２に示したＣＰＵ１０１で実行されるプログラム等により実現される。
【００２９】
特徴量抽出部３４は、サンプルデータ取得部３２によって取得されたサンプルデータ２１０の特徴量を抽出する機能である。特徴量は、例えば、分類対象のカテゴリにおけるテキストデータ２００に含まれる単語の重要度である。この場合、特徴量抽出部３４は、サンプルデータ２１０に含まれるテキスト情報の中から、単語を抽出する。特徴量抽出部３４による処理の詳細は、後述（図６参照）する。特徴量抽出部３４は、図２に示したＣＰＵ１０１で実行されるプログラム等により実現される。特徴量抽出部３４は、特徴量抽出手段の一例である。
【００３０】
データ数値化部３５は、テキストデータ２００の特徴量の数値化処理を行う機能である。データ数値化部３５は、特徴量抽出部３４によって抽出されたサンプルデータ２１０の特徴量を特徴量ベクトルに変換（数値化）する。なお、サンプルデータ２１０ではないテキストデータ２００に対しても、サンプルデータ２１０に対する処理と同様に特徴量抽出処理を実行する。データ数値化部３５は、図２に示したＣＰＵ１０１で実行されるプログラム等により実現される。
【００３１】
第１の学習部３６は、特徴量抽出部３４によって抽出されたサンプルデータ２１０の特徴量を用いた教師なし学習に基づいて、第１の学習モデルを生成する機能である。教師なし学習（unsupervised learning）とは、所定のデータをラベルリング等の外的基準なしに分類する手法である。教師なし学習は、例えば、Ｋ−ｍｅａｎｓクラスタリング等の手法である。第１の学習部３６は、図２に示したＣＰＵ１０１で実行されるプログラム等により実現される。第１の学習部３６は、第１の生成手段の一例である。
【００３２】
クラスタ属性特定部３７は、第１の学習部３６によって学習された第１の学習モデルに含まれる各クラスタの属性を特定するための機能である。クラスタ属性特定部３７は、例えば、第１の学習モデルに含まれるクラスタが、分類対象のカテゴリの正例または負例のいずれの属性を有する集合であるかを特定する。クラスタ属性特定部３７は、図２に示したＣＰＵ１０１で実行されるプログラム等により実現される。クラスタ属性特定部３７は、クラスタ属性特定手段の一例である。
【００３３】
制約設定部３８は、データ分類処理に用いる制約設定を行う機能である。制約設定部３８は、第１の学習部３６によって生成された第１の学習モデルと、第１の学習モデルに含まれるクラスタに属するサンプルデータ２１０にラベリングされた属性情報とに基づいて、自然言語処理に用いるテキストデータ２００の分類を行うための制約を設定する。制約設定部３８の具体的の処理については、後述（図７参照）する。制約設定部３８は、図２に示したＣＰＵ１０１で実行されるプログラム等により実現される。制約設定部３８は、制約設定手段の一例である。
【００３４】
第２の学習部３９は、制約設定部３８によって設定された制約を用いた半教師あり学習に基づいて、第２の学習モデルを生成する機能である。半教師あり学習（semi-supervised learning）とは、ラベリングされたデータとラベリングされていないデータの両方を用いてデータ分類を行う手法である。半教師あり学習は、例えば、ＣＯＰ  Ｋ−ｍｅａｎｓクラスタリング等の手法である。第２の学習部３９は、図２に示したＣＰＵ１０１で実行されるプログラム等により実現される。第２の学習部３９は、第２の生成手段の一例である。
【００３５】
未知データ分類部４１は、第２の学習部３９によって生成された第２の学習モデルに含まれるクラスタに対して、未知データを分類する機能である。未知データとは、テキストデータ２００のうち、属性情報がラベリングされていないデータである。未知データ分類部４１は、図２に示したＣＰＵ１０１で実行されるプログラム等により実現される。未知データ分類部４１は、分類手段の一例である。
【００３６】
記憶・読出部４２は、記憶部３０００に各種データを記憶し、記憶部３０００から各種データを読み出す機能である。記憶・読出部４２は、図２に示したＣＰＵ１０１で実行されるプログラム等により実現される。記憶部３０００は、図２に示したＲＯＭ１０２またはストレージ１０４により実現される。また、記憶部３０００は、カテゴリ管理テーブル３００および複数のテキストデータ２００を記憶している。
【００３７】
●カテゴリ管理テーブル
ここで、記憶部３０００に記憶されているデータの詳細について説明する。図４は、実施形態に係るカテゴリ管理テーブルの一例を示す図である。図４に示すカテゴリ管理テーブル３００は、自然言語処理による分類対象となるカテゴリごとに、当該カテゴリを特定するための設定情報を管理するテーブルである。
【００３８】
カテゴリ管理テーブル３００は、分類対象とするカテゴリを識別するためのカテゴリ識別番号、カテゴリ名、および分類対象とするカテゴリを特徴付けるための情報である対象カテゴリ設定情報３１０を関連付けて記憶して管理している。
【００３９】
図５に示すカテゴリ管理テーブル３００において、カテゴリ識別番号「１」およびカテゴリ名「会話」に関連付けられた対象カテゴリ設定情報３１０は、「Q:」,「A:」,「C:」,「?」,「⇒」,「→」,「<"人名">」,「［"人名"］」,「（"人名"）」等である。例えば、対象カテゴリ設定情報３１０は、全角または半角文字の直後の「?」,「⇒」,「→」,「:」や、全角または半角文字の直前の「?」,「Q」,「A」,「C」,「<"人名">」,「［"人名"］」,「（"人名"）」等のパターンである会話を特徴付けるための情報を含む。なお、対象カテゴリ設定情報３１０は、対象カテゴリ情報生成部３３の処理によって適宜追加・変更可能である。
【００４０】
●テキストデータ
続いて、記憶部３０００に記憶されるテキストデータ２００の内容について説明する。図５は、実施形態に係るテキストデータの一例を示す図である。図５に示すテキストデータ２００は、テキスト情報が含まれるデータであり、本実施形態に係るデータ分類方法において分類対象となるデータである。テキストデータ２００は、例えば、ＷＥＢサーバ５０から提供されるＷＥＢサービスを介して、ＷＥＢページを構成するＨＴＭＬ（HyperText Markup Language）形式で取得される。
【００４１】
図５に示すテキストデータ２００は、質問応答形式で記述されたテキスト情報を含む。図５に示すテキストデータ２００は、カテゴリ「会話」に関連付けられた対象カテゴリ設定情報３１０を含むため（図４参照）、「会話有」の属性を有するデータ（正例）となる。一方で、図５に示すテキストデータ２００とは異なり、カテゴリ「会話」に関連付けられた対象カテゴリ設定情報３１０を含まないテキストデータ２００は、「会話無」の属性を有するデータ（負例）となる。
【００４２】
テキストデータ２００は、例えば、会話要素が含まれる可能性のあるデータセットとして収集されるデータである。具体的には、企業や公的機関の会議録、ＳＮＳ(Social Networking Service)、商品レビュー、テレビの字幕、小説等のデータに会話要素が含まれている可能性が高い。特に、ＷＥＢ上に公開されているデータであれば、クローリングやウェブスクレイピング等によって自動的にデータセットを充足させることでき、分類精度を高めるために十分なデータを収集することができる。
【００４３】
●特徴量抽出部
続いて、図６を用いて、特徴量抽出部３４の詳細な機能構成について説明する。図６は、実施形態に係る特徴量抽出部の機能構成の一例を示す図である。図６に示す特徴量抽出部３４は、対象カテゴリ情報抽出部３４１、形態素解析部３４２および特徴量決定部３４３を含む。
【００４４】
対象カテゴリ情報抽出部３４１は、サンプルデータ取得部３２によって取得されたサンプルデータ２１０に含まれるテキスト情報の中から、対象カテゴリ情報を抽出する機能である。対象カテゴリ情報抽出部３４１は、サンプルデータ２１０に含まれるテキスト情報の中から、カテゴリ管理テーブル３００に含まれる対象カテゴリ設定情報３１０と同じテキストを、対象カテゴリ情報として抽出する。対象カテゴリ情報抽出部３４１は、カテゴリ情報抽出手段の一例である。
【００４５】
形態素解析部３４２は、サンプルデータ取得部３２によって取得されたサンプルデータ２１０に含まれるテキスト情報に対する形態素解析処理を行う機能である。形態素解析部３４２は、サンプルデータ２１０に含まれるテキスト情報のうち、名詞、動詞および形容詞等の品詞を有するものを単語の特徴量として取得する。形態素解析部３４２は、形態素解析手段の一例である。
【００４６】
特徴量決定部３４３は、対象カテゴリ情報抽出部３４１によって抽出された対象カテゴリ情報、および形態素解析部３４２による解析結果に基づいて、サンプルデータ２１０の特徴量を決定する機能である。特徴量決定部３４３は、特徴量決定手段の一例である。
【００４７】
●制約設定部
続いて、図７を用いて、制約設定部３８の詳細な機能構成について説明する。図７は、実施形態に係る制約設定部の機能構成の一例を示す図である。図７に示す制約設定部３８は、不正解ベクトル生成部３８１およびデータリンク生成部３８２を含む。
【００４８】
不正解ベクトル生成部３８１は、第１の学習部３６によって生成された第１の学習モデルに含まれるクラスタに対して、当該クラスタの属性とは異なる属性を有するサンプルデータ２１０が含まれる可能性のある領域を示す不正解ベクトルＮｍｉｓを生成する。
【００４９】
データリンク生成部３８２は、不正解ベクトル生成部３８１によって生成された不正解ベクトルＮｍｉｓが示す領域に属するサンプルデータ２１０に対するデータリンクを生成する機能である。データリンクとは、ラベリングされた属性情報が示す属性と異なる属性を有するクラスタに属するサンプルデータ２１０を、正しい属性を有するクラスタに属させるための制約である。すなわち、データリンク生成部３８２は、第１の学習モデルに含まれるクラスタに属するサンプルデータ２１０のうち、クラスタが有する属性とは異なる属性を示す属性情報がラベリングされたサンプルデータ２１０に対する制約を生成する。
【００５０】
●データ分類処理●
続いて、データベースサーバ３０に記憶されたテキストデータ２００に対するデータ分類処理について説明する。図８は、実施形態に係るデータベースサーバにおけるデータ分類処理の一例を示すフローチャートである。以下において、テキストデータ２００における会話要素の有無の分類するための処理について説明する。
【００５１】
ステップＳ１１において、サンプルデータ取得部３２は、記憶部３０００に記憶されたテキストデータ２００のうち、属性情報がラベリングされたサンプルデータ２１０を抽出する。具体的には、記憶・読出部４２は、記憶部３０００に記憶されたテキストデータ２００のうち、所定のデータを読み出す。次に、サンプルデータ取得部３２は、読み出されたテキストデータ２００に含まれるテキスト情報に基づいて、このテキストデータ２００に属性情報をラベリングする。ここで、属性情報とは、分類対象のカテゴリにおけるテキストデータ２００の属性（正例または負例）を示す情報（正負ラベル）であり、例えば、会話要素の有無を特定するための情報である。そして、サンプルデータ取得部３２は、属性情報がラベリングされたテキストデータ２００を、サンプルデータ２１０として取得する。
【００５２】
ステップＳ１２において、特徴量抽出部３４は、ステップＳ１１によって抽出されたサンプルデータ２１０に含まれるテキスト情報の内容に基づいて、サンプルデータ２１０の特徴量を抽出する。
【００５３】
ここで、図９を用いて、データベースサーバ３０による特徴量抽出処理について説明する。図９は、実施形態に係るデータベースサーバにおける特徴量抽出処理について説明するためのフローチャートである。図９に示す特徴量抽出処理は、テキストデータ２００に含まれるテキスト情報の会話要素を示す対象カテゴリ情報を利用したパターンマッチングの例である。
【００５４】
ステップＳ１２１において、記憶・読出部４２は、記憶部３０００に記憶された対象カテゴリ設定情報３１０を読み出す。具体的には、記憶・読出部４２は、記憶部３０００に記憶されたカテゴリ管理テーブル３００の中から、カテゴリ名「会話」に関連づけられた対象カテゴリ設定情報３１０（図４参照）を読み出す。
【００５５】
ステップＳ１２２において、対象カテゴリ情報抽出部３４１は、サンプルデータ２１０に含まれるテキスト情報の中から、ステップＳ１２１によって読み出された対象カテゴリ設定情報３１０に該当するテキスト情報を、対象カテゴリ情報として抽出する。
【００５６】
ステップＳ１２３において、形態素解析部３４２は、図８に示したステップＳ１１によって取得されたサンプルデータ２１０に含まれるテキスト情報の形態素解析を実行する。具体的には、まず、形態素解析部３４２は、サンプルデータ２１０に含まれるテキスト情報を抽出する。そして、形態素解析部３４２は、抽出したテキスト情報のうち、名詞、動詞および形容詞等の品詞を有するものを特徴量の候補として取得する。
【００５７】
ステップＳ１２４において、特徴量決定部３４３は、ステップＳ１２２によって抽出された対象カテゴリ情報、およびステップＳ１２３による解析結果に基づいて、サンプルデータ２１０の特徴量を決定する。ここで、上記説明したように、ステップＳ１２２によって抽出された対象カテゴリ情報、およびステップＳ１２３による解析結果は、処理対象であるサンプルデータ２１０の特徴量の候補である。具体的には、まず、特徴量決定部３４３は、ＴＦ−ＩＤＦ（Term Frequency−Inverse Document Frequency）値を算出する。ＴＦ−ＩＤＦ値とは、文書中に含まれる単語の重要度を評価する手法の一つであり、単語の出現頻度（ＴＦ）と希少性（ＩＤＦ）の二つの指標に基づいて計算される。ここで算出されるＴＦ−ＩＤＦ値は、会話有または会話無に関係する情報を含むものと想定される。しかしながら、算出されるＴＦ−ＩＤＦ値の次元は非常に冗長なものとなり、結果的に分類精度を低下させるおそれがある。そこで、特徴量決定部３４３は、以下（式１）に示すカイ二乗検定によってカイ二乗値ＣＨＩ(ｔ,ｃ)を計算することによって、該当する対象カテゴリ情報とＴＦ−ＩＤＦ値によって示される特徴量の取捨選択を行う。
【００５８】
【数１】
2020042330.tif 000003
【００５９】
ここで、カイ二乗検定とは、２つの事柄がどの程度独立しているかの検定であり、例えば、「会話要素の有無ｔ,ｔ’」と「ステップＳ１２２によって抽出された対象カテゴリ情報とステップＳ１２３による解析結果とで示される特徴量の候補の有無ｃ,ｃ’」との関係性を計算するものである。Ｎは、「会話要素の有無」と「特徴量の候補の有無」のバリエーションの数（この場合のパリエーションは、ｔ,ｔ’,ｃ,ｃ’であるため、Ｎ＝４）、Ｐ(ｔ,ｃ)は、全てのサンプルデータ２１０のうち、属性が「会話要素有」で、かつ特徴量の候補が含まれる確率、Ｐ(ｔ’,ｃ)は、全てのサンプルデータ２１０のうち、属性が「会話要素無」で、かつ特徴量の候補が含まれる確率、Ｐ(ｔ,ｃ’)は、全てのサンプルデータ２１０のうち、属性が「会話要素有」で、かつ特徴量の候補が含まれない確率、Ｐ(ｔ’,ｃ’)は、全てのサンプルデータ２１０のうち、属性が「会話要素無」で、かつ特徴量の候補が含まれない確率を示す、また、Ｐ(ｔ)は、全てのサンプルデータ２１０のうち、属性が「会話要素有」である確率、Ｐ(ｔ’）は、全てのサンプルデータ２１０のうち、属性が「会話要素無」である確率、Ｐ(ｃ)は、全てのサンプルデータ２１０のうち、特徴量の候補が含まれる確率、Ｐ(ｃ’)は、全てのサンプルデータ２１０のうち、特徴量の候補が含まれる確率を示す。なお、全てのサンプルデータ２１０とは、サンプルデータ取得部３２によって取得された、属性情報がラベリングされた全てのサンプルデータ２１０のことである。
【００６０】
カイ二乗検定は、誤判断を避けるために無関係な特徴量を排除する機能を有する。例えば、「会話要素の有無ｔ,ｔ’」に対して、「特徴量の候補の有無ｃ,ｃ’」が全く関係ない場合、Ｐ(ｔ,ｃ)×Ｐ(ｔ’,ｃ’)＝Ｐ(ｔ,ｃ’)×Ｐ(ｔ’,ｃ)となり、カイ二乗値ＣＨＩ(ｔ,ｃ)は、０となる。一方で、「会話要素の有無ｔ,ｔ’」に対して、「特徴量の候補の有無ｃ,ｃ’」の依存度が強いと、カイ二乗値ＣＨＩ(ｔ,ｃ)も大きな値となる。つまり、特徴量決定部３４３は、カイ二乗検定によって算出されたカイ二乗値ＣＨＩ(ｔ,ｃ)がより大きい特徴量を、サンプルデータ２１０の特徴量として選択・決定する。そのため、特徴量決定部３４３は、サンプルデータ２１０の属性（例えば、会話要素の有無）の識別に関係する特徴量のみを絞り込むことができる。
【００６１】
これによって、特徴量決定部３４３は、サンプルデータ取得部３２によって取得された全てのサンプルデータ２１０の特徴量を決定する。特徴量決定部３４３は、複数のサンプルデータ２１０に対して、上記特徴量抽出処理を実行することによって、データ分類処理において分類種別を特定するためのサンプルとなるデータセットを生成する。
【００６２】
図８に戻り、データベースサーバ３０のデータ分類処理の説明を続ける。ステップＳ１３において、記憶・読出部４２は、記憶部３０００に記憶されているテキストデータ２００を読み出す。ここで、テキストデータ２００は、ステップＳ１１によってサンプルデータ２１０として取得されたデータ、およびサンプルデータ２１０として抽出されなかったデータを含む。すなわち、テキストデータ２００は、属性情報がラベリングされたデータ（サンプルデータ２１０）と属性情報がラベリングされていないデータ（未知データ）の両方を含む。
【００６３】
ステップＳ１４において、データ数値化部３５は、ステップＳ１４によって読み出されたテキストデータ２００に対するベクトル化（数値化）処理を実行する。そして、ステップＳ１５において、データベースサーバ３０は、ステップＳ１４によって数値化されたテキストデータ２００を用いて、カテゴリ分類処理を実行する。
【００６４】
ここで、図１０乃至図１６を用いて、データベースサーバ３０によるカテゴリ分類処理について説明する。図１０は、実施形態に係るデータベースサーバにおけるカテゴリ分類処理の一例を示すフローチャートである。以下で説明する処理は、教師なし学習と、教師なし学習によって生成された第１の学習モデルに基づく制約を用いた半教師あり学習との組み合わせによる分類処理である。
【００６５】
まず、ステップＳ１５１において、第１の学習部３６は、図９のステップＳ１４によって数値化されたサンプルデータ２１０の特徴量を用いた教師なし学習によって、第１の学習モデルを生成する。具体的には、第１の学習部３６は、代表的な教師なし学習であるＫ−ｍｅａｎｓクラスタリングによって、二値分類されたクラスタ（第１のクラスタおよび第２のクラスタ）を含む第１の学習モデルを行う。図１１は、教師なし学習によって生成された第１の学習モデルの一例を説明するための概念図である。図１１に示すように、教師なし学習は、サンプルデータ２１０の属性を区別しないため、第１の学習モデルに含まれるクラスタは、各クラスタが会話有（正例）であるか会話無（負例）であるかの属性が不明な状態である。
【００６６】
次に、ステップＳ１５２において、クラスタ属性特定部３７は、ステップＳ１５１によって生成された第１の学習モデルに含まれるクラスタの属性を特定する。上記のように、教師なし学習によって生成されたクラスタは、どちらのクラスタが会話要素を含むかを特定することができない。そのため、クラスタ属性特定部３７は、サンプルデータ２１０にラベリングされた属性情報に基づいて、第１の学習モデルに含まれる各クラスタが、正例または負例のいずれの属性を有する集合であるかを特定する。クラスタ属性特定部３７は、例えば、各クラスタに属するサンプルデータ２１０の属性（正負）の数の多数決によって、それぞれのクラスタの属性を特定する。図１２は、第１の学習モデルに含まれる属性が特定されたクラスタの一例を説明するための概念図である。図１２に示すように、左側のクラスタに属するサンプルデータ２１０は、会話無（負例）データよりも会話有（正例）データが多いため、クラスタ属性特定部３７は、左側のクラスタの属性を、会話（正例）有クラスタとして特定する。また、右側のクラスタに属するサンプルデータ２１０は、会話有（正例）データよりも会話無（負例）データが多いため、クラスタ属性特定部３７は、右側のクラスタの属性を、会話無（負例）クラスタとして特定する。
【００６７】
次に、ステップＳ１５３において、不正解ベクトル生成部３８１は、ステップＳ１５２によって属性が特定された第１の学習モデルに含まれるクラスタを用いて、不正解ベクトルＮｍｉｓを算出する。不正解ベクトルＮｍｉｓとは、第１の学習モデルに含まれるクラスタに属するデータに対して、正解と判定すべき領域のうち予測できなかった領域を示す。ここで、正解とは、サンプルデータ２１０が自らの属性と同じ属性を有するクラスタに分類されることを示す。また、正解データとは、自らの属性と同じ属性を有するクラスタに分類されたサンプルデータ２１０を表し、不正解データとは、自らの属性とは異なる属性を有するクラスタに分類されたサンプルデータ２１０を表す。第１の学習モデルは、教師なし学習によって生成される学習モデルであるため、その分類精度は低い。そのため、不正解ベクトル生成部３８１は、分類精度の向上を図るため、不正解ベクトルＮｍｉｓが示す領域を活用する。
【００６８】
図１２は、不正解ベクトルＮｍｉｓについて説明するための概念図である。Ａｃｏｒｒは、Ａカテゴリの正解集合を示し、Ａｐｒｅｄは、Ａカテゴリの予測集合を示している。ここで、正解集合とは、正解データが分類される集合領域を示す。一方で、予測集合とは、正解データが分類されることが予測される集合領域を示す。同様に、Ｂｃｏｒｒは、Ｂカテゴリの正解集合を示し、Ｂｐｒｅｄは、Ｂカテゴリの予測集合を示している。例えば、Ａカテゴリは、会話有のクラスタであり、Ｂカテゴリは、会話無のクラスタである。不正解ベクトルＮｍｉｓは、正解集合の中で、予測集合に含まれない領域を示す。すなわち、不正解ベクトルＮｍｉｓは、第１の学習部３６によって生成された第１の学習モデルに含まれるクラスタに対して、クラスタの属性とは異なる属性を有するサンプルデータ２１０が含まれる可能性のある領域を示す。不正解ベクトルＮｍｉｓは、下記（式２）を用いて算出される。
【００６９】
【数２】
2020042330.tif 000004
【００７０】
ステップＳ１５４において、データリンク生成部３８２は、ステップＳ１５３において生成された不正解ベクトルＮｍｉｓが示す領域に対して、当該領域に属するデータに対するデータリンクを生成する。第１の学習モデルには、会話有（正例）クラスタに属する会話無（負例）データ、または会話無（負例）クラスタに属する会話有（正例）データのように、本来分類されるべきクラスタとは属性の異なるデータが存在する。そのようなデータに対して、データリンク生成部３８２は、ユークリッド距離を算出し、最短距離となるデータを検出する。そして、データリンク生成部３８２は、検出されたデータに対して、半教師あり学習で使用する「ｍｕｓｔ−ｌｉｎｋ」および「ｃａｎｎｏｔ−ｌｉｎｋ」のデータリンクの制約を設定する。
【００７１】
ここで、不正解ベクトルＮｍｉｓが示す領域に属するデータに対するデータリンクの生成処理を説明する。図１４は、不正解ベクトルＮｍｉｓによって示される領域に属するサンプルデータに対して生成されたデータリンクの一例を説明するための概念図である。ラベリングされた属性情報と同じ属性のクラスタに分類されたサンプルデータ２１０を正解データＴ、ラベリングされた属性情報とは異なる属性のクラスタに分類されたサンプルデータ２１０を不正解データＦとする。
【００７２】
正解データＴは、属すべきクラスタに属するデータであるので、データリンク生成部３８２は、正解データＴと、正解データＴとは異なるクラスタに属する不正解データＦのうち最短距離に位置するデータとの間で「ｍｕｓｔ−ｌｉｎｋ」を生成する。また、不正解データFは、属するべきでないクラスタに属するデータであるので、データリンク生成部３８２は、不正解データＦと、同じクラスタに属する正解データＴのうち最短距離に位置するデータとの間で「ｃａｎｎｏｔ−ｌｉｎｋ」を生成する。ここで、「ｍｕｓｔ−ｌｉｎｋ」は、二つのサンプルデータ２１０が同じクラスタに属する制約であり、第１の学習モデルに含まれるクラスタのうち、異なるクラスタに属する同一の属性情報がラベリングされたサンプルデータ２１０の間で設定される制約である。一方で、「ｃａｎｎｏｔ−ｌｉｎｋ」は、二つのサンプルデータ２１０が異なるクラスタに属する制約であり、第１の学習モデルに含まれるクラスタのうち、同一のクラスタに属する異なる属性情報がラベリングされたサンプルデータ２１０の間で設定される制約である。
【００７３】
ステップＳ１５５において、第２の学習部３９は、ステップＳ１５４において生成されたデータリンクに基づいて、代表的な半教師あり学習であるＣＯＰ  Ｋ−ｍｅａｎｓクラスタリングによる第２の学習モデルを生成する。図１５は、実施形態に係る半教師あり学習によって生成された第２の学習モデルの一例を説明するための概念図である。図１５に示すように、第２の学習モデルは、図１０に示した第１の学習モデルに含まれるクラスタ（第１のクラスタおよび第２のクラスタ）の境界が修正され複雑化している。第２の学習モデルは、第１のクラスタの境界が修正された第３のクラスタおよび第２のクラスタの境界が修正された第４のクラスタを含む。このように、第２の学習モデルは、教師なし学習に基づいて生成された制約設定を、半教師あり学習に適用することによって、より精密な学習モデルを生成することができる。
【００７４】
そして、ステップＳ１５６において、未知データ分類部４１は、ステップＳ１５５によって生成された第２の学習モデルに含まれるクラスタに対して、属性情報がラベリングされていない未知データの分類処理を行う。ここで、属性情報がラベリングされていない未知データとは、テキストデータ２００のうち、サンプルデータ２１０として取得されていないデータである。図１６は、実施形態に係る第２の学習モデルに含まれるクラスタに対して分類された未知データの一例を説明するための概念図である。図１６に示すように、第１の学習モデルに含まれるクラスタでは不正解データとなっていた未知データに対しても、第２の学習モデルにおいては、正解データとして分類されていることがわかる。なお、未知データの特徴量は、次元数もしくはＴＦ−ＩＤＦ値の構成並びに順番が図９に示した特徴量抽出処理によって得られたデータと等しくなるよう生成される。
【００７５】
このように、データベースサーバ３０は、複数のサンプルデータ２１０を用いた教師なし学習により生成された第１の学習モデルを利用して、テキストデータ２００の分類を行うための制約を設定する。そして、データベースサーバ３０は、設定した制約を用いて半教師あり学習を行う。これにより、データベースサーバ３０は、属性情報がラベリングされていない未知データの分類精度を向上させることができる。また、データベースサーバ３０によるデータ分類処理は、全てのテキストデータ２００に対して属性情報をラベリングする必要がないため、ラベリングに要する負荷を低減させることができるとともに、誤ったラベリングが行われることによってデータ分類精度が低下することを防止することができる。
【００７６】
従来から機械学習によるデータの分類方法として用いられる、正規表現によるパターンマッチングや教師なし学習は、分類対象のデータに対するラベリング作業が不要であるが、分類精度が低い。一方で、サポートベクターマシン（ＳＶＭ）のような教師あり学習を用いる方法は、分類精度は高いが、膨大なデータに対するラベリングに係る負荷が大きい。そこで、本実施形態は、上記手法の特徴を混成させた半教師あり学習を用いる。半教師あり学習は、教師なし学習を行わずに、正解データＴを直接適用させる方法もある。しかし、この手法では、制約条件の数や計算量がサンプルデータの増加に伴い増大してしまう。本実施形態では、教師なし学習によって生成された第１の学習モデルおよびサンプルデータ２１０の属性に基づいて、不正解データＦとなった要素に対してのみ、「ｍｕｓｔ−ｌｉｎｋ」および「ｃａｎｎｏｔ−ｌｉｎｋ」の制約を設けることで、効率的かつ精度よく半教師あり学習を実施することができる。
【００７７】
なお、図１０に示したカテゴリ分類処理は、説明の便宜上、第２の学習モデルを生成した後に未知データが分類される（ステップＳ１５６）構成を説明したが、未知データは、例えば、ステップＳ１５１によって第１の学習モデルが生成される段階からサンプルデータ２１０とともに分類されている構成であってもよい。
【００７８】
●まとめ●
以上説明したように、本発明の一実施形態に係るデータベースサーバは、特定のカテゴリに対して、自然言語処理に用いるテキストデータ２００の分類を行うデータベースサーバ３０（情報処理装置の一例）であって、テキストデータ２００のうち、特定のカテゴリの正例または負例のいずれの属性であるかを示す属性情報（正負ラベルの一例）がラベリングされたサンプルデータ２１０の特徴量を抽出し、抽出した特徴量を用いた教師なし学習に基づいて第１の学習モデルを生成し、サンプルデータ２１０にラベリングされた属性情報に基づいて、第１の学習モデルに含まれるクラスタが特定のカテゴリの正例または負例のいずれの属性を有する集合であるかを特定する。また、データベースサーバ３０は、生成した第１の学習モデルに含まれるクラスタの属性、および当該クラスタに属するサンプルデータ２１０にラベリングされた属性情報に基づいて、テキストデータ２００の分類を行うための制約を設定し、設定した制約を用いた半教師あり学習に基づいて、第２の学習モデルを生成する。そして、データベースサーバ３０は、生成した第２の学習モデルに含まれるクラスタに対して、属性情報がラベリングされていないテキストデータ２００（未知データの一例）を分類する。これによって、データベースサーバ３０は、第１の学習モデルに基づく制約を用いた半教師あり学習を行うことによって、属性情報がラベリングされていない未知データの分類精度を向上させることができる。
【００７９】
また、本発明の一実施形態に係るデータベースサーバは、教師なし学習に基づいて生成した第１の学習モデルに含まれるクラスタのうち、同一のクラスタに属する異なる属性情報（正負ラベルの一例）がラベリングされたサンプルデータ２１０の間における制約（例えば、ｃａｎｎｏｔ−ｌｉｎｋ）、および異なるクラスタに属する同一の属性情報がラベリングされたサンプルデータ２１０の間における制約（例えば、ｍｕｓｔ−ｌｉｎｋ）を設定する。これによって、データベースサーバ３０（情報処理装置の一例）は、教師なし学習によって生成された第１の学習モデル、およびサンプルデータ２１０の属性に基づいて、不正解データＦとなった要素に対してのみ、「ｍｕｓｔ−ｌｉｎｋ」および「ｃａｎｎｏｔ−ｌｉｎｋ」の制約を設けることで、効率的かつ精度よく半教師あり学習を実施することができる。
【００８０】
さらに、本発明の一実施形態に係るデータベースサーバは、テキストデータ２００のうち、属性情報（正負ラベルの一例）がラベリングされた複数のサンプルデータ２１０を取得し、取得した複数のサンプルデータ２１０の特徴量を抽出し、抽出した複数のサンプルデータ２１０の特徴量を用いた教師なし学習に基づいて、第１の学習モデルを生成する。これによって、データベースサーバ３０（情報処理装置の一例）は、全てのテキストデータ２００に対して属性情報をラベリングする必要がないため、ラベリングに要する負荷を低減させることができるとともに、誤ったラベリングが行われることによってデータ分類精度が低下することを防止することができる。
【００８１】
●補足●
なお、各実施形態の機能は、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）等のレガシープログラミング言語またはオブジェクト指向プログラミング言語等で記述されたコンピュータ実行可能なプログラムにより実現でき、各実施形態の機能を実行するためのプログラムは、電気通信回線を通じて頒布することができる。
【００８２】
また、各実施形態の機能を実行するためのプログラムは、ＲＯＭ、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）、ＥＰＲＯＭ（Erasable Programmable Read-Only Memory）、フラッシュメモリ、フレキシブルディスク、ＣＤ（Compact Disc）−ＲＯＭ、ＣＤ−ＲＷ（Re-Writable）、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ブルーレイディスク、ＳＤカード、ＭＯ（Magneto-Optical disc）等の装置可読な記録媒体に格納して頒布することもできる。
【００８３】
さらに、各実施形態の機能の一部または全部は、例えばＦＰＧＡ（Field Programmable Gate Array）等のプログラマブル・デバイス（PD）上に実装することができ、またはＡＳＩＣとして実装することができ、各実施形態の機能をＰＤ上に実現するためにＰＤにダウンロードする回路構成データ（ビットストリームデータ）、回路構成データを生成するためのＨＤＬ（Hardware Description Language）、ＶＨＤＬ（Very High Speed Integrated Circuits Hardware Description Language）、Ｖｅｒｉｌｏｇ−ＨＤＬ等により記述されたデータとして記録媒体により配布することができる。
【００８４】
これまで本発明の一実施形態に係る情報処理装置、データ分類方法およびプログラムについて説明してきたが、本発明は、上述した実施形態に限定されるものではなく、他の実施形態の追加、変更または削除等、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【００８５】
１    会議システム
２    管理システム
５    通信ネットワーク
１０    管理サーバ
３０    データベースサーバ（情報処理装置の一例）
３２    サンプルデータ取得部（取得手段の一例）
３４    特徴量抽出部（特徴量抽出手段の一例）
３６    第１の学習部（第１の生成手段の一例）
３７    クラスタ属性特定部（クラスタ属性特定手段の一例）
３８    制約設定部（制約設定手段の一例）
３９    第２の学習部（第２の生成手段の一例）
４１    未知データ分類部（分類手段の一例）
５０    ＷＥＢサーバ
７０    通信端末
２００    テキストデータ
２１０    サンプルデータ
３００    カテゴリ管理テーブル
３４１    対象カテゴリ情報抽出部（カテゴリ情報抽出手段の一例）
３４２    形態素解析部（形態素解析手段の一例）
３４３    特徴量決定部（特徴量決定手段の一例）
３８１    不正解ベクトル生成部
３８２    データリンク生成部
【先行技術文献】
【特許文献】
【００８６】
【特許文献１】特表２０１７―５３５００７号
【図１】
2020042330.tif 000005
【図２】
2020042330.tif 000006
【図３】
2020042330.tif 000007
【図４】
2020042330.tif 000008
【図５】
2020042330.tif 000009
【図６】
2020042330.tif 000010
【図７】
2020042330.tif 000011
【図８】
2020042330.tif 000012
【図９】
2020042330.tif 000013
【図１０】
2020042330.tif 000014
【図１１】
2020042330.tif 000015
【図１２】
2020042330.tif 000016
【図１３】
2020042330.tif 000017
【図１４】
2020042330.tif 000018
【図１５】
2020042330.tif 000019
【図１６】
2020042330.tif 000020