IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ フォームズ株式会社の特許一覧

特開2024-126625チューニングシステム、チューニング方法及びチューニングプログラム
<>
  • 特開-チューニングシステム、チューニング方法及びチューニングプログラム 図1
  • 特開-チューニングシステム、チューニング方法及びチューニングプログラム 図2
  • 特開-チューニングシステム、チューニング方法及びチューニングプログラム 図3
  • 特開-チューニングシステム、チューニング方法及びチューニングプログラム 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024126625
(43)【公開日】2024-09-20
(54)【発明の名称】チューニングシステム、チューニング方法及びチューニングプログラム
(51)【国際特許分類】
   G06N 3/096 20230101AFI20240912BHJP
【FI】
G06N3/096
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023035140
(22)【出願日】2023-03-08
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 2022年度 放送大学 大学院修士課程 口頭試問、オンライン開催、令和5年1月7日
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.TENSORFLOW
2.JavaScript
3.python
(71)【出願人】
【識別番号】517138502
【氏名又は名称】フォームズ株式会社
(74)【代理人】
【識別番号】100155882
【弁理士】
【氏名又は名称】齋藤 昭彦
(74)【代理人】
【識別番号】100154678
【弁理士】
【氏名又は名称】齋藤 博子
(72)【発明者】
【氏名】小笠原 貴史
(57)【要約】
【課題】ある企業が複数のシステムにAI技術を導入する際、システムごとの学習用データの質や量に依存せずに一定の精度を確保するとともに、AIモデルの作成時間を低減する。
【解決手段】チューニングシステム1は、特定ドメインにおける学習用データセットを事前学習モデルに入力し、学習用文書ベクトル及び固有表現ベクトルを取得する学習用文書・固有表現ベクトル取得手段21と、学習用文書ベクトル及び固有表現ベクトルを学習データとして、ドメイン強化モデルを作成するドメイン強化モデル作成手段22と、推論用文書データ入力手段31と、推論用文書ベクトル取得手段32と、推論用文書ベクトルをドメイン強化モデルに入力し、チューニングベクトルを取得するチューニングベクトル取得手段33と、推論用文書ベクトルにチューニングベクトルを加算し、チューニング文書ベクトルを出力するチューニング文書ベクトル出力手段34と、を備える。
【選択図】図1
【特許請求の範囲】
【請求項1】
文書ベクトルをチューニングするチューニングシステムであって、
特定ドメインにおける学習用データセットを事前学習モデルに入力し、学習用文書ベクトル及び固有表現ベクトルを取得する学習用文書・固有表現ベクトル取得手段と、
前記学習用文書ベクトル及び前記固有表現ベクトルを学習データとして、前記事前学習モデルを前記特定ドメインへの推論に対して強化したドメイン強化モデルを作成するドメイン強化モデル作成手段と、
を備える学習部と、
前記特定ドメインにおける推論用文書データを入力する推論用文書データ入力手段と、
前記推論用文書データを前記事前学習モデルに入力し、推論用文書ベクトルを取得する推論用文書ベクトル取得手段と、
前記推論用文書ベクトルを前記ドメイン強化モデルに入力し、チューニングベクトルを取得するチューニングベクトル取得手段と、
前記推論用文書ベクトルに前記チューニングベクトルを所定の加算割合で加算し、チューニング文書ベクトルを出力するチューニング文書ベクトル出力手段と、
を備える推論部と、
によって構成されることを特徴とするチューニングシステム。
【請求項2】
前記ドメイン強化モデル作成手段は、固有表現をマスクしたトークン列と、前記トークン列に対応する前記固有表現の位置と、前記固有表現の正解トークン列とのペアを生成し、前記固有表現の正解トークン列とマスクされた箇所を埋めた前記トークン列との差異が小さくなるように前記ドメイン強化モデルの学習を実行することを特徴とする請求項1に記載のチューニングシステム。
【請求項3】
前記ドメイン強化モデル作成手段は、前記学習データとして、数に関する表現を除く前記固有表現をベクトル化した前記固有表現ベクトルを用いることを特徴とする請求項1又は請求項2に記載のチューニングシステム。
【請求項4】
文書ベクトルをチューニングするチューニング方法であって、
コンピュータが、
特定ドメインにおける学習用データセットを事前学習モデルに入力し、学習用文書ベクトル及び固有表現ベクトルを取得する学習用文書・固有表現ベクトル取得ステップと、
前記学習用文書ベクトル及び前記固有表現ベクトルを学習データとして、前記事前学習モデルを前記特定ドメインへの推論に対して強化したドメイン強化モデルを作成するドメイン強化モデル作成ステップと、
前記特定ドメインにおける推論用文書データを入力する推論用文書データ入力ステップと、
前記推論用文書データを前記事前学習モデルに入力し、推論用文書ベクトルを取得する推論用文書ベクトル取得ステップと、
前記推論用文書ベクトルを前記ドメイン強化モデルに入力し、チューニングベクトルを取得するチューニングベクトル取得ステップと、
前記推論用文書ベクトルに前記チューニングベクトルを所定の加算割合で加算し、チューニング文書ベクトルを出力するチューニング文書ベクトル出力ステップと、
を実行することを特徴とするチューニング方法。
【請求項5】
コンピュータを、文書ベクトルをチューニングするチューニングシステムとして機能させるためのチューニングプログラムであって、
コンピュータを、
特定ドメインにおける学習用データセットを事前学習モデルに入力し、学習用文書ベクトル及び固有表現ベクトルを取得する学習用文書・固有表現ベクトル取得手段、
前記学習用文書ベクトル及び前記固有表現ベクトルを学習データとして、前記事前学習モデルを前記特定ドメインへの推論に対して強化したドメイン強化モデルを作成するドメイン強化モデル作成手段、
前記特定ドメインにおける推論用文書データを入力する推論用文書データ入力手段、
前記推論用文書データを前記事前学習モデルに入力し、推論用文書ベクトルを取得する推論用文書ベクトル取得手段、
前記推論用文書ベクトルを前記ドメイン強化モデルに入力し、チューニングベクトルを取得するチューニングベクトル取得手段、
前記推論用文書ベクトルに前記チューニングベクトルを所定の加算割合で加算し、チューニング文書ベクトルを出力するチューニング文書ベクトル出力手段、
として機能させるためのチューニングプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書ベクトルをチューニングするチューニングシステム等に関するものであり、より詳しくは、文書ベクトルを特定ドメインに適合するようにチューニングするチューニングシステム等に関するものである。
【背景技術】
【0002】
近年、人工知能(artificial intelligence、以下「AI」という。)技術による企業活動の生産性や効率性の向上が期待されている。例えば、特許文献1には、AI技術を用いて、利用者からの問い合わせに対して自動的に適切な回答情報を提供できるAIチャットボットが開示されている。より詳しくは、特許文献1には、入力パターンと回答情報の対応関係を教師データとして教師あり学習を行うことによって得られたAIアルゴリズムにより、利用者の入力に応じた回答情報を自動的に提供する回答生成装置と、過去の入力及び入力順序を教師データとして、回答生成装置とは異なる学習を行うことによって得られたAIアルゴリズムにより、次に利用者が行う入力を予測し、予測結果を次の入力候補として利用者に自動的に表示する入力候補表示装置と、を備える情報処理装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第6624539号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、企業にAI技術を導入する際には、大きく分けて2つの課題がある。第1の課題は、AIモデルの元となる学習用データの質や量が導入対象の機能ごとにばらつきがあるため、安定した精度を確保できないことである。第2の課題は、導入対象のシステムごとに個別のAIモデルを作成する必要があり、膨大な時間と労力がかかることである。例えば、ある企業が、類似文書検索システム、質問応答システム、ニーズ分析システムの3つのシステムにAI技術を導入する場合、従来技術では3つのAIモデルを作成しなくてはならず、膨大な作成時間がかかる。
【0005】
特許文献1に記載の技術では、学習用データのばらつきについて考慮されていないため、作成したAIモデルの精度は学習用データの質や量に依存する。また、2つの異なるAIアルゴリズムを用いることから、1つのAIアルゴリズムを用いる場合よりも膨大な作成時間がかかる。従って、特許文献1に記載の技術では、第1の課題及び第2の課題のいずれも解決できない。
【0006】
本発明は、前述した問題点に鑑みてなされたものであり、その目的とすることは、ある企業が複数のシステムにAI技術を導入する際、システムごとの学習用データの質や量に依存せずに一定の精度を確保できるとともに、AIモデルの作成時間を低減することが可能なチューニングシステム等を提供することである。
【課題を解決するための手段】
【0007】
前述した目的を達成するための第1の発明は、文書ベクトルをチューニングするチューニングシステムであって、特定ドメインにおける学習用データセットを事前学習モデルに入力し、学習用文書ベクトル及び固有表現ベクトルを取得する学習用文書・固有表現ベクトル取得手段と、前記学習用文書ベクトル及び前記固有表現ベクトルを学習データとして、前記事前学習モデルを前記特定ドメインへの推論に対して強化したドメイン強化モデルを作成するドメイン強化モデル作成手段と、を備える学習部と、前記特定ドメインにおける推論用文書データを入力する推論用文書データ入力手段と、前記推論用文書データを前記事前学習モデルに入力し、推論用文書ベクトルを取得する推論用文書ベクトル取得手段と、前記推論用文書ベクトルを前記ドメイン強化モデルに入力し、チューニングベクトルを取得するチューニングベクトル取得手段と、前記推論用文書ベクトルに前記チューニングベクトルを所定の加算割合で加算し、チューニング文書ベクトルを出力するチューニング文書ベクトル出力手段と、を備える推論部と、によって構成されることを特徴とするチューニングシステムである。第1の発明によって、ある企業が複数のシステムにAI技術を導入する際、システムごとの学習用データの質や量に依存せずに一定の精度を確保できるとともに、AIモデルの作成時間を低減することが可能である。
【0008】
第1の発明における前記ドメイン強化モデル作成手段は、固有表現をマスクしたトークン列と、前記トークン列に対応する前記固有表現の位置と、前記固有表現の正解トークン列とのペアを生成し、前記固有表現の正解トークン列とマスクされた箇所を埋めた前記トークン列との差異が小さくなるように前記ドメイン強化モデルの学習を実行することが望ましい。これによって、短時間でドメイン強化モデルを作成できるとともに、作成されるドメイン強化モデルの精度を向上できる。
【0009】
また、第1の発明における前記ドメイン強化モデル作成手段は、前記学習データとして、数に関する表現を除く前記固有表現をベクトル化した前記固有表現ベクトルを用いることが望ましい。これによって、作成されるドメイン強化モデルの精度を向上できる。
【0010】
第2の発明は、文書ベクトルをチューニングするチューニング方法であって、コンピュータが、特定ドメインにおける学習用データセットを事前学習モデルに入力し、学習用文書ベクトル及び固有表現ベクトルを取得する学習用文書・固有表現ベクトル取得ステップと、前記学習用文書ベクトル及び前記固有表現ベクトルを学習データとして、前記事前学習モデルを前記特定ドメインへの推論に対して強化したドメイン強化モデルを作成するドメイン強化モデル作成ステップと、前記特定ドメインにおける推論用文書データを入力する推論用文書データ入力ステップと、前記推論用文書データを前記事前学習モデルに入力し、推論用文書ベクトルを取得する推論用文書ベクトル取得ステップと、前記推論用文書ベクトルを前記ドメイン強化モデルに入力し、チューニングベクトルを取得するチューニングベクトル取得ステップと、前記推論用文書ベクトルに前記チューニングベクトルを所定の加算割合で加算し、チューニング文書ベクトルを出力するチューニング文書ベクトル出力ステップと、を実行することを特徴とするチューニング方法である。第2の発明を実行することによって、ある企業が複数のシステムにAI技術を導入する際、システムごとの学習用データの質や量に依存せずに一定の精度を確保できるとともに、AIモデルの作成時間を低減することが可能である。
【0011】
第3の発明は、コンピュータを、文書ベクトルをチューニングするチューニングシステムとして機能させるためのチューニングプログラムであって、コンピュータを、特定ドメインにおける学習用データセットを事前学習モデルに入力し、学習用文書ベクトル及び固有表現ベクトルを取得する学習用文書・固有表現ベクトル取得手段、前記学習用文書ベクトル及び前記固有表現ベクトルを学習データとして、前記事前学習モデルを前記特定ドメインへの推論に対して強化したドメイン強化モデルを作成するドメイン強化モデル作成手段、前記特定ドメインにおける推論用文書データを入力する推論用文書データ入力手段、前記推論用文書データを前記事前学習モデルに入力し、推論用文書ベクトルを取得する推論用文書ベクトル取得手段、前記推論用文書ベクトルを前記ドメイン強化モデルに入力し、チューニングベクトルを取得するチューニングベクトル取得手段、前記推論用文書ベクトルに前記チューニングベクトルを所定の加算割合で加算し、チューニング文書ベクトルを出力するチューニング文書ベクトル出力手段、として機能させるためのチューニングプログラムである。第3の発明を汎用のコンピュータにインストールすることによって、第1の発明のチューニングシステムを構築することができる。
【発明の効果】
【0012】
本発明により、ある企業が複数のシステムにAI技術を導入する際、システムごとの学習用データの質や量に依存せずに一定の精度を確保できるとともに、AIモデルの作成時間を低減することが可能なチューニングシステム等を提供することができる。
【図面の簡単な説明】
【0013】
図1】チューニングシステム1の概要を示す図
図2】チューニングシステム1のデータの流れを示す図
図3】ドメイン強化モデル作成手段22による処理を説明する図
図4】チューニングシステム1を用いた企業へのAI技術の導入について説明する図
【発明を実施するための形態】
【0014】
本実施の形態におけるチューニングシステムは、コンピュータシステムであって、1又は複数のコンピュータによって構成される。コンピュータは、制御部としてのCPU(「Central Processing Unit」の略)、主記憶部としてのメモリ、補助記憶部としてのHDD(「Hard Disk Drive」の略)やフラッシュメモリ、表示部としての液晶ディスプレイ、入力部としてのキーボードやマウス、タッチパネルディスプレイ、有線通信部としてのLAN(Local Area Network)ケーブル又は無線通信部としての無線モジュール等を備える。補助記憶部としてのHDDやフラッシュメモリには、OS(「Operating System」の略)、アプリケーションプログラム、処理に必要なデータ等が記憶されている。CPUは、補助記憶部からOSやアプリケーションプログラムを読み出して主記憶部に格納し、主記憶部にアクセスしながら、その他の機器を制御し、後述する各手段として機能する。コンピュータ同士は、LAN(Local Area Network)やインターネット等のネットワークを介して互いにデータの送受信を行う。
【0015】
本実施の形態におけるチューニングシステムは、自然言語処理の特定ドメインにおける「事前学習モデル」が出力した「埋め込み表現」をチューニングするシステムである。まずは、このことについて説明する。
【0016】
自然言語処理では、文章中の単語をコンピュータが扱える数値に変換するために埋め込み表現を用いる。埋め込み表現とは、単語や文章などの文書を何らかのベクトル空間に位置付けることである。本実施の形態では、単語数よりもはるかに少ない次元数になる「分散表現」を用いる。分散表現とは、単語を実数(通常はゼロ未満の小数)のベクトルとして表すことである。本実施の形態では、文書等の埋め込み表現、すなわちベクトル化された文書等を「文書ベクトル」等と記載する。
【0017】
AIモデルの実体は、入力データを所定の解析方法で解析し、解析結果を出力するまでの一連の処理をコンピュータに実行させるためのコンピュータプログラムと、その実行に用いるデータである。コンピュータは、所定のアルゴリズムを用いてデータセットの統計的分布から特徴の組み合わせパターンを作り出し、AIモデルを作成する。本実施の形態では、このコンピュータの一連の処理を「学習」と記載する。また、コンピュータは、分類や識別したいデータをAIモデルに当てはめて、その結果を出力する。本実施の形態では、このコンピュータの一連の処理を「推論」と記載する。
【0018】
「事前学習モデル」とは、大規模なコーパス(=データセット)を用いて訓練した学習済のAIモデルである。事前学習モデルは、大規模なコーパスを用いて訓練することから、一定の精度が確保されている。また、本実施の形態における「ドメイン」とは、学習に用いるコーパスの分野を意味する。コーパスの分野は特に限定されるものではなく、例えば、スポーツ、映画などの娯楽関係のデータでも良いし、特定の企業の商品やサービスに関するものでも良い。後述する「ドメイン強化モデル」とは、「事前学習モデル」を特定ドメインへの推論に対して強化したAIモデルである。
【0019】
以下図面に基づいて、本発明の実施形態を詳細に説明する。図1は、チューニングシステム1の概要を示す図である。チューニングシステム1は、文書ベクトルをチューニングするシステムであって、図1に示すように、学習部2及び推論部3によって構成される。
【0020】
学習部2は、特定ドメインにおける学習用データセットを事前学習モデルに入力し、学習用文書ベクトル及び固有表現ベクトルを取得する学習用文書・固有表現ベクトル取得手段21と、学習用文書ベクトル及び固有表現ベクトルを学習データとして、事前学習モデルを特定ドメインへの推論に対して強化したドメイン強化モデルを作成するドメイン強化モデル作成手段22と、を備える。
【0021】
推論部3は、特定ドメインにおける推論用文書データを入力する推論用文書データ入力手段31と、推論用文書データを事前学習モデルに入力し、推論用文書ベクトルを取得する推論用文書ベクトル取得手段32と、推論用文書ベクトルをドメイン強化モデルに入力し、チューニングベクトルを取得するチューニングベクトル取得手段33と、推論用文書ベクトルにチューニングベクトルを所定の加算割合で加算し、チューニング文書ベクトルを出力するチューニング文書ベクトル出力手段34と、を備える。チューニング文書ベクトル出力手段34は、入力部を介して所定の加算割合を受け付けても良い。
【0022】
固有表現とは、人名や地名等の固有名詞や、日付表現、時間表現などに関する総称である。固有表現ベクトルは、固有表現の埋め込み表現、すなわちベクトル化された固有表現である。
【0023】
図2は、チューニングシステム1のデータの流れを示す図である。図2(a)が学習フェーズ、図2(b)が推論フェーズのデータの流れを示している。学習フェーズでは、図2(a)に示すように、学習用データセット10が事前学習モデル4に入力される。また、学習用データセット10に含まれる学習用文書データの埋め込み表現である学習用文書ベクトル11と、学習用データセット10に含まれる学習用文書データから抽出された固有表現の埋め込み表現である固有表現ベクトル12が事前学習モデル4から出力され、ドメイン強化モデル5に入力される。
【0024】
推論フェーズでは、図2(b)に示すように、推論用文書データ13が事前学習モデル4に入力される。また、推論用文書データ13の埋め込み表現である推論用文書ベクトル14がドメイン強化モデル5から出力され、ドメイン強化モデル5に入力される。そして、事前学習モデル4から出力される推論用文書ベクトル14と、ドメイン強化モデル5から出力されるチューニングベクトル15が所定の加算割合で加算され、チューニング文書ベクトル16として出力される。
【0025】
学習用データセット10は、外部システムからインターネット等を介して取得し、チューニングシステム1のコンピュータの記憶部に予め記憶させておく。本実施の形態では、学習用データセット10として、livedoor(登録商標)ニュースコーパスを使用する(インターネット、URL:https://www.rondhuit.com/download.html、2023年2月6日検索)。
【0026】
【表1】
【0027】
表1は、livedoor(登録商標)ニュースコーパスの分析結果を示している。表1に示すように、このデータセットは、9つのカテゴリがある。各カテゴリは、ニュース、スポーツ、IT等に分かれており、本実施の形態では、各カテゴリをドメインと見做す。カテゴリごとの固有表現数(但し、同じ固有表現でも重複してカウントした数)は、8,500から17,500の間である。
【0028】
本実施の形態では、コンピュータに事前学習モデル4の機能を実現させるためのプログラムとして、「spaCy」(インターネット、https://spacy.io/、2023年2月6日検索)を用いる。spaCyは、自然言語処理アプリケーション開発に特化したオープンソースソフトウエアのPython言語ライブラリである。spaCyの日本語対応ライブラリは、株式会社リクルートのAI研究所「Megagon Labs」が「GiNZA」(インターネット、https://megagonlabs.github.io/ginza/、2023年2月6日検索)として提供している。
【0029】
version2.0以前のspaCyでは、文書を読み込むと、自然言語処理で良く行われる4つの処理を直列(パイプライン)で実行する。4つの処理とは、(1)トークン(単語)への分解およびベクトル化(tokenizer)、(2)品詞のタグ付け(taggekr)、(3)係り受け解析(parser)、(4)固有表現抽出(Named Entity Recognition : ner)である。version3.0以降のspaCyでは、更に、(5)レンマ化(辞書の見出し語化)(lemmatizer)、(6)テキスト分類(textcat)も実行する。また、version3.0以降のspaCyでは、Transformerモデルが採用されており、tok2vec(ベクトル化(特徴量抽出))コンポーネントの単語ベクトルを、固有表現抽出などの後工程のコンポーネントから共有できるようになっている。
【0030】
Transformerモデルとは、Attentionを用いたEncoder-Decoderモデルである。Attentionとは、自然言語処理において、どのトークン(単語)に注意すべきかを示す仕組みである。
【0031】
本実施の形態では、事前学習モデル4として、「GiNZA version4(ja_ginza)」を用いる。「ja_ginza」の次元数は、300次元であり、本実施の形態における分散表現の次元数になる。「GiNZA version4(ja_ginza)」では、形態素解析に「SudachiPy」を使用し、単語のベクトル化には「chiVe」を使用する。
【0032】
本実施の形態におけるドメイン強化モデル5では、固有表現を用いてドメインの特徴を表現する。特に、本実施の形態におけるドメイン強化モデル作成手段22は、学習データとして、数に関する表現を除く固有表現をベクトル化した固有表現ベクトルを用いる。
【0033】
【表2】
【0034】
表2は、ドメイン強化モデル作成手段22による処理において除外した固有表現を示している。表2のうち、数に関する表現は、「日付表現」、「数値表現」、「時間表現」、「割合表現」、「年齢」、「序数」、「人数」及び「年数期間」である。尚、「称号名_その他」は、「さん」、「君」、「様」等の敬称である。
【0035】
また、拡張固有表現階層(インターネット、URL:http://ene-project.info/、特定国立研究開発法人理化学研究所 革新知能統合研究センター(AIP)、2023年2月6日検索)は、固有表現が「名前」、「時間表現」、「数値表現」の3つのクラスに分かれる。これらの3つのクラスのうち、数に関する表現は、「時間表現」及び「数値表現」である。すなわち、本実施の形態におけるドメイン強化モデル作成手段22は、拡張固有表現階層における「名前」、「時間表現」及び「数値表現」の3つのクラスのうち、「名前」の固有表現ベクトルを学習データとして用い、「時間表現」及び「数値表現」の固有表現ベクトルを学習データから除外する。
【0036】
【表3】
【0037】
表3は、ドメイン強化モデル5のデータ構造を示している。ドメイン強化モデル5は、モデル構築用ライブラリ「Tensorflow2」で実装する。表3に示すように、ドメイン強化モデル5は、3つのTransformerのエンコーダーを重ねたデータ構造になっており、300次元のトークン(単語)を320個並べたものを入力として受け取り、出力も同じサイズであり、バッチ処理にも対応している。
【0038】
本実施の形態におけるドメイン強化モデル5の基本的なアイデアは、BERT(Bidirectional Encoder Representations from Transformers:Transformerを用いた双方向のエンコーダー)における「Masked Language Model」である。BERTモデルを作成するためには、最初に汎用の大規模なデータセットを「事前学習(Pre-Training)」させる。これにより言語特性を学習する。そして、分類や予測といったターゲットとするタスクの「転移学習」と「ファインチューニング(Fine-Tuning)」を行う。BERTは、「わざと文から単語をマスクして、その単語を予測する」という処理と、「連続した文であるかを予測する」という処理の2つを実行する。前者が「Masked Language Model」、後者が「Next Sentence Prediction」と呼ばれている。
【0039】
BERTにおける「Masked Language Model」では、マスクするトークンをランダムに決めているが、本実施の形態では、固有表現トークンのみマスクする。また、BERTでは、クロスエントロピーを損失関数とした分類タスクによって、マスクされたトークン(単語)を予測しているが、本実施の形態では、モデルの入力/出力が「バッチサイズ分の320個の300次元ベクトル」としているため、具体的な単語を予測できない。そこで、損失関数として「平均2乗誤差」を採用し、固有表現の正解トークン列との差異が小さくなるように訓練を行う。
【0040】
図3は、ドメイン強化モデル作成手段22による処理を説明する図である。図3に示すように、ドメイン強化モデル作成手段22は、固有表現をマスクしたトークン列と、トークン列に対応する固有表現の位置と、固有表現の正解トークン列とのペアを生成し、固有表現の正解トークン列とマスクされた箇所を埋めたトークン列との誤差が小さくなるようにドメイン強化モデル5の学習を実行する(誤差逆伝搬法)。すなわち、ドメイン強化モデル作成手段22は、固有表現の正解トークン列とマスクされた箇所を埋めたトークン列との「平均2乗誤差」(式(1)参照)を最小化する。ドメイン強化モデル作成手段22は、損失関数が収束したと判断できる時点、例えば誤差の減少割合が所定の値以下になった時点のエポック数で学習を終了する。本実施の形態によれば、少ないエポック数で損失関数が収束し、短時間でドメイン強化モデル5を作成できる。尚、損失関数は「平均2乗誤差」に限るものではなく、適宜変更しても良い。
【0041】
【数1】
【0042】
例えば、「竿燈まつり を 見る ため 秋田県 へ 行った」という文章の場合、固有表現をマスクしたトークン列は「###MASK_1### を 見る ため ###MASK_2### へ 行った」であり、正解トークン列は「竿燈まつり 秋田県」である。ここで、固有表現をマスクしたトークン列及び正解トークン列のいずれも、実際の処理では分散表現であるが、説明の便宜上、自然言語で記載している。ドメイン強化モデル作成手段22は、1つのトークン列において、「###MASK_1###」と「竿燈まつり」の差と、「###MASK_2###」と「秋田県」の差の合計が最小になるように学習する。
【0043】
図4は、チューニングシステム1を用いた企業へのAI技術の導入について説明する図である。ある企業がAI技術を導入する場合、従来は、AIモデルの元となる学習用データの質や量が導入対象の機能ごとにばらつきがあるため、安定した精度を確保できなかった。また、例えば、類似文書検索システム、質問応答システム、ニーズ分析システムの3つのシステムにAI技術を導入する場合、3つのAIモデルを作成する必要があり、膨大な作成時間を要していた。一方、本実施の形態におけるチューニングシステム1によれば、図4に示すように、一定の精度が確保されている事前学習モデル4を用いて、1つのドメイン強化モデル5を作成するので、システムごとの学習用データの質や量に依存せずに一定の精度を確保できるとともに、AIモデルの作成時間を低減することが可能となる。
【0044】
特に、本実施の形態におけるドメイン強化モデル5では、固有表現を用いてドメインの特徴を表現する。従って、後述の実施例において説明する通り、ドメイン強化モデル5から出力されるチューニングベクトル15を用いて文書ベクトルをチューニングすることによって、類似文書検索等の精度向上が期待できる。
【0045】
<実施例>
実施例では、表1に示すlivedoor(登録商標)ニュースコーパスの特徴を示すため、表1に示すカテゴリごとに「類似文書評価値」を算出した。類似文書評価値とは、各カテゴリ内で相互の文書の類似度を計算した本実施例独自の評価値である。この評価値が高いほど、カテゴリ内で類似した文書が多いことになる。
【0046】
類似文書評価値を求める具体的な計算方法は、以下の通りである。
手順1.livedoor(登録商標)ニュースコーパスを「見出し」、「本文」、「ラベル(カテゴリ)」のJSON(JavaScript Object Notation)オブジェクトに変換する。
手順2.spaCyの「ja_ginza」モデルで、本文をベクトル化(300次元)して、pythonオブジェクトとして保存(pickle化)する。
手順3.本文ベクトルを1つ取り出して、それ以外の本文ベクトルとの「コサイン類似度」を計算する。
手順4.全ての文書に対して手順3を行い、全文書とのコサイン類似度の組合せを計算する。(7366×7366=約542万通り)
手順5.ある文書を1つ取り出して、コサイン類似度の高い上位100位の類似文書を求める。
手順6.上位100位文書のなかで、カテゴリが一致した数を求める。
手順7.手順5及び6を全カテゴリに対して行い、平均を求める。
【0047】
【表4】
【0048】
表4の一番右の列は、類似文書評価値の算出結果を示している。例えば「Sports Watch(スポーツ)」、「MOVIE ENTER(映画)」は、同じカテゴリ内で類似した文書が多く、独自性が強いことが分かる。一方で「ITライフハック」、「livedoor HOMME(男性向け)」、「Peachy(恋愛)」は、自カテゴリ以外の他カテゴリと似ている文書が多く、独自性が弱いことが分かる。
【0049】
また、表1に示すlivedoor(登録商標)ニュースコーパスを学習用データセット10として、チューニングシステム1による処理を実行した。表1や表4に示すように、カテゴリ「ITライフハック」の固有表現数は、全カテゴリの平均と近いため、カテゴリ「ITライフハック」を主要カテゴリとして実行結果を示す。
【0050】
【表5】
【0051】
表5は、カテゴリ「ITライフハック」のデータセットで作成されたドメイン強化モデル5から出力されたチューニングベクトル15の平均値を示している。チューニングベクトル15は300次元のベクトルであるが、表5では視認性を考慮して平均値のみを記載した。表5に示すように、各推論用文書ベクトル14を入力し、ドメイン強化モデル5から出力されたチューニングベクトル15の平均値は、ほぼ同じ値になった。言い換えると、あるドメインの特徴を学習したドメイン強化モデル5にどのような推論用文書ベクトル14を入力しても、ほぼ同じ値のチューニングベクトル15が出力されることが分かった。
【0052】
【表6】
【0053】
表6は、カテゴリ「ITライフハック」のチューニング文書ベクトル16と各カテゴリの文書ベクトルとのコサイン類似度の算出結果を示している。表の見出しの「ab:pr」とは、加算割合を示している。例えば「ab:pr=0.5:1.0」であれば、ITライフハックのチューニングベクトル15(ab)を0.5倍して、事前学習モデルが出力した1.0倍のITライフハックの文書ベクトル(pr)に加算している。baselineはチューニングベクトル15が「0倍」である「ab:pr=0.0:1.0」と同じ意味である。
【0054】
表6に示すように、「ab:pr=0.5:1.0」の加算割合では、baselineに比べて、「ITライフハック」、「家電チャンネル」、「エスマックス」のコサイン類似度の値が向上したことが分かる。また、それ以外のカテゴリについては、コサイン類似度の値が低下したことが分かる。これは、カテゴリ「家電チャンネル」及び「エスマックス」の内容が、それぞれ「家電」及び「モバイル関連」であり、カテゴリ「ITライフハック」の内容と似ている、すなわち、共通の固有表現が多いためと推定できる。
【0055】
「ab:pr=1.0:1.0」の加算割合の場合、「エスマックス」を除き、baselineを下回ったが、カテゴリごとのコサイン類似度の値の差が大きくなったことが分かる。例えば、「ab:pr=0.5:1.0」の加算割合におけるチューニング済の「ITライフハック×独女通信」と、チューニング済の「ITライフハック×ITライフハック」との差は、0.9456-0.9128=0.0328である。一方、「ab:pr=1.0:1.0」の加算割合では、0.9369-0.8961=0.408となり、差が大きくなった。この変化は、加算するチューニングベクトル15の割合が大きい程、カテゴリ間の差も大きくなるためと推定できる。そのため、加算するチューニングベクトル15の割合を変えることで、特定のドメインの特徴を強化しつつ、他のドメインとの差も大きくできると考えられる。
【0056】
以上の通り、本実施の形態におけるドメイン強化モデル5は、コサイン類似度を用いた類似文書検索の精度向上が期待できるチューニングベクトル15を出力できることが分かった。同様に、類似文書検索システム以外のシステム、例えば質問応答システムやニーズ分析システム等に対しても、ドメイン強化モデル5によって出力されるチューニングベクトル15を用いることで、精度向上が期待できる。
【0057】
また、推論用文書ベクトル14とチューニングベクトル15との加算割合を調整することで、特定のドメインの特徴を強化しつつ、他のドメインとの差も大きくできることが分かった。チューニング文書ベクトル出力手段34は、入力部を介して所定の加算割合を受け付けるので、ユーザが加算割合を調整することによって、所望のチューニングが可能である。
【0058】
以上、添付図面を参照しながら、本発明に係るチューニングシステム等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【0059】
1………チューニングシステム
2………学習部
3………推論部
4………事前学習モデル
5………ドメイン強化モデル
10………学習用データセット
11………学習用文書ベクトル
12………固有表現ベクトル
13………推論用文書データ
14………推論用文書ベクトル
15………チューニングベクトル
16………チューニング文書ベクトル
21………学習用文書・固有表現ベクトル取得手段
22………ドメイン強化モデル作成手段
31………推論用文書データ入力手段
32………推論用文書ベクトル取得手段
33………チューニングベクトル取得手段
34………チューニング文書ベクトル出力手段
図1
図2
図3
図4