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

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

▶ ネイバー コーポレーションの特許一覧

特開2022-111020文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置
<>
  • 特開-文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置 図1
  • 特開-文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置 図2
  • 特開-文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置 図3
  • 特開-文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置 図4
  • 特開-文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置 図5
  • 特開-文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置 図6
  • 特開-文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022111020
(43)【公開日】2022-07-29
(54)【発明の名称】文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置
(51)【国際特許分類】
   G06N 20/00 20190101AFI20220722BHJP
【FI】
G06N20/00
【審査請求】有
【請求項の数】16
【出願形態】OL
(21)【出願番号】P 2021097090
(22)【出願日】2021-06-10
(31)【優先権主張番号】10-2021-0007453
(32)【優先日】2021-01-19
(33)【優先権主張国・地域又は機関】KR
【新規性喪失の例外の表示】新規性喪失の例外適用申請有り
(71)【出願人】
【識別番号】505205812
【氏名又は名称】ネイバー コーポレーション
【氏名又は名称原語表記】NAVER Corporation
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】金 成旻
(72)【発明者】
【氏名】崔 京鎬
(72)【発明者】
【氏名】李 圭▲ほ▼
(57)【要約】      (修正有)
【課題】転移学習のための新たな事前学習方法及びコンピュータ装置と、これをファインチューニング過程に引き継がせるための手順を提供する。
【解決手段】転移学習方法であって、少なくとも1つのプロセッサにより、文書間の類似度を出力するように類似度モデルを事前学習させる段階(610)、少なくとも1つのプロセッサにより、事前学習された類似度モデルの第1出力関数をファインチューニングのための第2出力関数と交換してファインチューニングモデルを生成する段階(620)、および少なくとも1つのプロセッサにより、ファインチューニングモデルが入力される文書に対して少なくとも1つのスコアを出力するようにファインチューニングモデルを学習させる段階(630)、を含む。
【選択図】図6
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサを含むコンピュータ装置の転移学習方法であって、
前記少なくとも1つのプロセッサにより、文書間の類似度を出力するように類似度モデルを事前学習させる段階、
前記少なくとも1つのプロセッサにより、前記事前学習された類似度モデルの第1出力関数をファインチューニングのための第2出力関数と交換してファインチューニングモデルを生成する段階、および
前記少なくとも1つのプロセッサにより、前記ファインチューニングモデルが入力される文書に対して少なくとも1つのスコアを出力するように前記ファインチューニングモデルを学習させる段階
を含む、転移学習方法。
【請求項2】
前記第1出力関数は、N×Mの大きさの行列を掛ける演算を含み、
前記第2出力関数は、K×Mの大きさの行列を掛ける演算を含み、
前記N、前記M、および前記Kは自然数であること
を特徴とする、請求項1に記載の転移学習方法。
【請求項3】
前記ファインチューニングモデルを学習させる段階は、
入力される各文書のK個の項目ごとに確率値を算出するK分類モデルを前記ファインチューニングモデルとして学習させ、
前記Kは自然数であること
を特徴とする、請求項1に記載の転移学習方法。
【請求項4】
前記ファインチューニングモデルを学習させる段階は、
入力される文書のスコアと正解ラベルとのCEE(Cross Entropy Error)を最小化する前記スコアを出力するように前記ファインチューニングモデルを学習させること
を特徴とする、請求項1に記載の転移学習方法。
【請求項5】
前記正解ラベルは、前記入力される文書に対して予め決定された、前記入力される文書の悪質な書き込みの有無に対する値を含み、
前記ファインチューニングモデルは、前記入力される文書の悪質な書き込みの有無を前記スコアとして出力するように学習される悪質書き込み探知モデルであること
を特徴とする、請求項4に記載の転移学習方法。
【請求項6】
前記事前学習させる段階は、
前記少なくとも1つのプロセッサにより、同じ属性をもつ複数の類似文章ペアを含む類似文章ペア集合およびランダムに抽出された複数の非類似文章ペアを含む非類似文章ペア集合をデータベースから抽出する段階、
前記少なくとも1つのプロセッサにより、前記複数の類似文章ペアそれぞれおよび前記非類似文章ペアそれぞれに対する意味的類似度を取得する段階、および
前記少なくとも1つのプロセッサにより、前記複数の類似文章ペア、前記複数の非類似文章ペア、および前記意味的類似度を利用して類似度モデルを学習させる段階
を含むことを特徴とする、請求項1に記載の転移学習方法。
【請求項7】
前記意味的類似度を取得する段階は、
前記少なくとも1つのプロセッサにより、前記複数の類似文章ペアそれぞれおよび前記複数の非類似文章ペアそれぞれに対して数学的尺度を利用した数学的類似度を計算する段階、および
前記少なくとも1つのプロセッサにより、前記複数の類似文章ペアそれぞれに対して計算された数学的類似度は増加させる一方、前記複数の非類似文章ペアそれぞれに対して計算された数学的類似度は減少させることにより、前記複数の類似文章ペアそれぞれおよび前記複数の非類似文章ペアそれぞれに対する意味的類似度を計算する段階
を含むことを特徴とする、請求項6に記載の転移学習方法。
【請求項8】
前記意味的類似度を計算する段階は、
前記複数の類似文章ペアそれぞれに対して計算された数学的類似度を第1非線形関数に入力して増加させ、前記複数の非類似文章ペアそれぞれに対して計算された数学的類似度を第2非線形関数に入力して減少させ、
前記第1非線形関数および前記第2非線形関数は、前記第1非線形関数が、同一するすべての入力値に対して前記第2非線形関数よりも高い値を算出するという条件を満たす2つの非線形関数であること
を特徴とする、請求項7に記載の転移学習方法。
【請求項9】
前記属性は、文書の作成者、文書の掲示セクション、および文書の登録時間範囲のうちの少なくとも1つを含むことを特徴とする、請求項6に記載の転移学習方法。
【請求項10】
請求項1~9のうちのいずれか一項に記載の転移学習方法をコンピュータ装置に実行させる、コンピュータプログラム。
【請求項11】
請求項1~9のうちのいずれか一項に記載の方法をコンピュータ装置に実行させるためのコンピュータプログラムが記録されている、コンピュータ読み取り可能な記録媒体。
【請求項12】
コンピュータ読み取り可能な命令を実行するように実現される少なくとも1つのプロセッサ
を含み、
前記少なくとも1つのプロセッサにより、
文書間の類似度を出力するように類似度モデルを事前学習させ、
前記事前学習された類似度モデルの第1出力関数をファインチューニングのための第2出力関数と交換してファインチューニングモデルを生成し、
前記ファインチューニング学習モデルが入力される文書に対して少なくとも1つのスコアを出力するように前記ファインチューニングモデルを学習させること
を特徴とする、コンピュータ装置。
【請求項13】
前記第1出力関数は、N×Mの大きさの行列を掛ける演算を含み、
前記第2出力関数は、K×Mの大きさの行列を掛ける演算を含み、
前記N、前記M、および前記Kは自然数であること
を特徴とする、請求項12に記載のコンピュータ装置。
【請求項14】
前記少なくとも1つのプロセッサにより、
入力される各文書のK個の項目ごとに確率値を算出するK分類モデルを前記ファインチューニングモデルとして学習させ、
前記Kは自然数であること
を特徴とする、請求項12に記載のコンピュータ装置。
【請求項15】
前記少なくとも1つのプロセッサにより、
入力される文書のスコアと正解ラベルとのCEE(Cross Entropy Error)を最小化する前記スコアを出力するように前記ファインチューニングモデルを学習させること
を特徴とする、請求項12に記載のコンピュータ装置。
【請求項16】
前記事前学習のために、前記少なくとも1つのプロセッサにより、
前記少なくとも1つのプロセッサにより、同じ属性をもつ複数の類似文章ペアを含む類似文章ペア集合およびランダムに抽出された複数の非類似文章ペアを含む非類似文章ペア集合をデータベースから抽出し、
前記少なくとも1つのプロセッサにより、前記複数の類似文章ペアそれぞれおよび前記非類似文章ペアそれぞれに対する意味的類似度を取得し、
前記少なくとも1つのプロセッサにより、前記複数の類似文章ペア、前記複数の非類似文章ペア、および前記意味的類似度を利用して類似度モデルを学習させること
を特徴とする、請求項12に記載のコンピュータ装置。
【発明の詳細な説明】
【技術分野】
【0001】
以下の説明は、文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置に関する。
【背景技術】
【0002】
機械学習モデルを構築するときに品質に影響を与える主な要素は、学習データの量と質である。偏りのない理想値、欠測値のない豊富なデータを基にした学習モデルは、優れた性能を示す可能性が高い。しかし、すべての分野において学習データが豊富なわけではない。学習データの不足は不完全なモデル(Incomplete Model)に繋がる。このような制約を克服するために、学習方法自体に関する研究、すなわち、メタ学習に関する研究が活発に進められている。学習に使用できるほどの良質なデータを十分に確保することができない場合には、他の分野の豊富なデータを基にした優れた性能のモデルから一部の階層を再利用してモデルを構築する方法が考えられる。このような学習技法が「転移学習(Transfer Learning)」と呼ばれるものである。
【0003】
文書分類モデルの性能を高めるための一般的な転移学習方法論では、文章の一部分だけが入力として与えられた状態から、与えられていないトークンを予測する言語モデリング、あるモデルに対して関連性のある異なる分類問題を同時に学習させるマルチタスクラーニング、与えられた2つの文章が連続する2つの文章であるかを分類するタスクなどを実行する。2つの文章の類似度が人間によって付与されたデータを利用する類似度学習方法も使用されている。
【0004】
このような従来技術が共通して抱えている限界は、分類しようとする文書集合内において2つの文書の特定の属性が互いに一致するかどうかが極めて重要な意味をもつ場合であっても、これを適切に活用することができないという点である。言語モデリング方法論には、文章を構成するトークンの数に比例してモデルの計算費用が増加するという短所があり、マルチタスクラーニング方法論は、タスクの数だけラベリングされた文書集合を必要とする。2つの文章が連続する文章であるかを判別するには、各文書集合内の各文書が短文であったり、文章の分離が容易でないタイプであったりする場合には適用することが難しい。現在、2つの文書の類似度を学習する方法論では、人間によって類似度が付与されたデータを利用しているため、データの構築に人力動員が前提となっているという問題がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】韓国公開特許第10-2020-0048474号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
転移学習のための新たな事前学習(pre-training)方法と、これをファインチューニング(fine tuning)過程に引き継がせるための手順を提供する。
【課題を解決するための手段】
【0007】
少なくとも1つのプロセッサを含むコンピュータ装置の転移学習方法であって、前記少なくとも1つのプロセッサにより、文書間の類似度を出力するように類似度モデルを事前学習させる段階、前記少なくとも1つのプロセッサにより、前記事前学習された類似度モデルの第1出力関数をファインチューニングのための第2出力関数と交換してファインチューニングモデルを生成する段階、および前記少なくとも1つのプロセッサにより、前記ファインチューニングモデルが入力される文書に対して少なくとも1つのスコアを出力するように前記ファインチューニングモデルを学習させる段階を含む、転移学習方法を提供する。
【0008】
一側によると、前記第1出力関数はN×Mの大きさをもつ行列を掛ける演算を含み、前記第2出力関数はK×Mの大きさをもつ行列を掛ける演算を含み、前記N、前記M、および前記Kは自然数であることを特徴としてよい。
【0009】
他の側面によると、前記ファインチューニングモデルを学習させる段階は、入力される各文書のK個の項目ごとに確率値を算出するK分類モデルを前記ファインチューニングモデルとして学習させ、前記Kは自然数であることを特徴としてよい。
【0010】
また他の側面によると、前記ファインチューニングモデルを学習させる段階は、入力される文書のスコアと正解ラベルとの間のCEE(Cross Entropy Error)を最小化する前記スコアを出力するように前記ファインチューニングモデルを学習させることを特徴としてよい。
【0011】
また他の側面によると、前記正解ラベルは、前記入力される文書に対して予め決定された、前記入力される文書への悪質な書き込みの有無に対する値を含み、前記ファインチューニングモデルは、前記入力される文書への悪質な書き込みの有無を前記スコアとして出力するように学習される悪質書き込み探知モデルであることを特徴としてよい。
【0012】
また他の側面によると、前記事前学習させる段階は、前記少なくとも1つのプロセッサにより、同じ属性をもつ複数の類似文章ペアを含む類似文章ペア集合およびランダムに抽出された複数の非類似文章ペアを含む非類似文章ペア集合をデータベースから抽出する段階、前記少なくとも1つのプロセッサにより、前記複数の類似文章ペアそれぞれおよび前記非類似文章ペアそれぞれに対する意味的類似度を取得する段階、および前記少なくとも1つのプロセッサにより、前記複数の類似文章ペア、前記複数の非類似文章ペア、および前記意味的類似度を利用して類似度モデルを学習させる段階を含むことを特徴としてよい。
【0013】
また他の側面によると、前記意味的類似度を取得する段階は、前記少なくとも1つのプロセッサにより、前記複数の類似文章ペアそれぞれおよび前記複数の非類似文章ペアそれぞれに対して数学的尺度を利用した数学的類似度を計算する段階、および前記少なくとも1つのプロセッサにより、前記複数の類似文章ペアそれぞれに対して計算された数学的類似度は増加させる一方、前記複数の非類似文章ペアそれぞれに対して計算された数学的類似度は減少させることで、前記複数の類似文章ペアそれぞれおよび前記複数の非類似文章ペアそれぞれに対する意味的類似度を計算する段階を含むことを特徴としてよい。
【0014】
また他の側面によると、前記意味的類似度を計算する段階は、前記複数の類似文章ペアそれぞれに対して計算された数学的類似度を第1非線形関数に入力して増加させ、前記複数の非類似文章ペアそれぞれに対して計算された数学的類似度を第2非線形関数に入力して減少させ、前記第1非線形関数および前記第2非線形関数は、前記第1非線形関数が、同一するすべての入力値に対して前記第2非線形関数よりも高い値を算出するという条件を満たす2つの非線形関数であることを特徴としてよい。
【0015】
さらに他の側面によると、前記属性は、文書の作成者、文書の掲示セクション、および文書の登録時間範囲のうちの少なくとも1つを含むことを特徴としてよい。
【0016】
コンピュータ装置と結合して前記方法をコンピュータ装置に実行させるためにコンピュータ読み取り可能な記録媒体に記録される、コンピュータプログラムを提供する。
【0017】
前記方法をコンピュータ装置に実行させるためのプログラムが記録されている、コンピュータ読み取り可能な記録媒体を提供する。
【0018】
コンピュータ読み取り可能な命令を実行するように実現される少なくとも1つのプロセッサを含み、前記少なくとも1つのプロセッサにより、文書間の類似度を出力するように類似度モデルを事前学習させ、前記事前学習された類似度モデルの第1出力関数をファインチューニングのための第2出力関数と交換してファインチューニングモデルを生成し、前記ファインチューニングモデルが入力される文書に対して少なくとも1つのスコアを出力するように前記ファインチューニングモデルを学習させることを特徴とする、コンピュータ装置を提供する。
【発明の効果】
【0019】
分類しようとする文書集合内の各文書がもつ有意味な属性を転移学習過程で活用することができ、事前学習に必要なデータを構築するにあたり、人力を必要としない完全自動化を実現することができる。
【図面の簡単な説明】
【0020】
図1】本発明の一実施形態における、ネットワーク環境の例を示した図である。
図2】本発明の一実施形態における、コンピュータ装置の例を示したブロック図である。
図3】本発明の一実施形態における、事前学習のための転移学習システムの例を示した図である。
図4】本発明の一実施形態における、事前学習のための類似度モデルの学習過程の例を示した図である。
図5】本発明の一実施形態における、ファインチューニングモデルの学習過程の例を示した図である。
図6】本発明の一実施形態における、転移学習方法の例を示したフローチャートである。
図7】本発明の一実施形態における、悪質書き込み探知モデルの例を示した図である。
【発明を実施するための形態】
【0021】
以下、実施形態について、添付の図面を参照しながら詳しく説明する。
【0022】
本発明の実施形態に係る転移学習システムは、少なくとも1つのコンピュータ装置によって実現されてよく、本発明の実施形態に係る転移学習方法は、転移学習システムに含まれる少なくとも1つのコンピュータ装置によって実行されてよい。コンピュータ装置においては、本発明の一実施形態に係るコンピュータプログラムがインストールされて実行されてよく、コンピュータ装置は、実行されたコンピュータプログラムの制御にしたがって本発明の実施形態に係る転移学習方法を実行してよい。上述したコンピュータプログラムは、コンピュータ装置と結合して転移学習方法をコンピュータに実行させるためにコンピュータ読み取り可能な記録媒体に記録されてよい。
【0023】
図1は、本発明の一実施形態における、ネットワーク環境の例を示した図である。図1のネットワーク環境は、複数の電子機器110、120、130、140、複数のサーバ150、160、およびネットワーク170を含む例を示している。このような図1は、発明の説明のための一例に過ぎず、電子機器の数やサーバの数が図1のように限定されることはない。また、図1のネットワーク環境は、本実施形態に適用可能な環境のうちの一例を説明したものに過ぎず、本実施形態に適用可能な環境が図1のネットワーク環境に限定されることはない。
【0024】
複数の電子機器110、120、130、140は、コンピュータ装置によって実現される固定端末や移動端末であってよい。複数の電子機器110、120、130、140の例としては、スマートフォン、携帯電話、ナビゲーション、PC(personal computer)、ノート型PC、デジタル放送用端末、PDA(Personal Digital Assistant)、PMP(Portable Multimedia Player)、タブレットなどがある。一例として、図1では、電子機器110の例としてスマートフォンを示しているが、本発明の実施形態において、電子機器110は、実質的に無線または有線通信方式を利用し、ネットワーク170を介して他の電子機器120、130、140および/またはサーバ150、160と通信することのできる多様な物理的なコンピュータ装置のうちの1つを意味してよい。
【0025】
通信方式が限定されることはなく、ネットワーク170が含むことのできる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網)を利用する通信方式だけではなく、機器間の近距離無線通信が含まれてもよい。例えば、ネットワーク170は、PAN(personal area network)、LAN(local area network)、CAN(campus area network)、MAN(metropolitan area network)、WAN(wide area network)、BBN(broadband network)、インターネットなどのネットワークのうちの1つ以上の任意のネットワークを含んでよい。さらに、ネットワーク170は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター-バスネットワーク、ツリーまたは階層的ネットワークなどを含むネットワークトポロジのうちの任意の1つ以上を含んでもよいが、これらに限定されることはない。
【0026】
サーバ150、160それぞれは、複数の電子機器110、120、130、140とネットワーク170を介して通信して命令、コード、ファイル、コンテンツ、サービスなどを提供する1つ以上のコンピュータ装置によって実現されてよい。例えば、サーバ150は、ネットワーク170を介して接続した複数の電子機器110、120、130、140にサービス(一例として、コンテンツ提供サービス、グループ通話サービス(または、音声会議サービス)、メッセージングサービス、メールサービス、ソーシャルネットワークサービス、地図サービス、翻訳サービス、金融サービス、決済サービス、検索サービスなど)を提供するシステムであってよい。
【0027】
図2は、本発明の一実施形態における、コンピュータ装置の例を示したブロック図である。上述した複数の電子機器110、120、130、140それぞれやサーバ150、160それぞれは、図2に示したコンピュータ装置200によって実現されてよい。
【0028】
このようなコンピュータ装置200は、図2に示すように、メモリ210、プロセッサ220、通信インタフェース230、および入力/出力インタフェース240を含んでよい。メモリ210は、コンピュータ読み取り可能な記録媒体であって、RAM(random access memory)、ROM(read only memory)、およびディスクドライブのような永続的大容量記録装置を含んでよい。ここで、ROMやディスクドライブのような永続的大容量記録装置は、メモリ210とは区分される別の永続的記録装置としてコンピュータ装置200に含まれてもよい。また、メモリ210には、オペレーティングシステムと、少なくとも1つのプログラムコードが記録されてよい。このようなソフトウェア構成要素は、メモリ210とは別のコンピュータ読み取り可能な記録媒体からメモリ210にロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピードライブ、ディスク、テープ、DVD/CD-ROMドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記録媒体ではない通信インタフェース230を通じてメモリ210にロードされてもよい。例えば、ソフトウェア構成要素は、ネットワーク170を介して受信されるファイルによってインストールされるコンピュータプログラムに基づいてコンピュータ装置200のメモリ210にロードされてよい。
【0029】
プロセッサ220は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ210または通信インタフェース230によって、プロセッサ220に提供されてよい。例えば、プロセッサ220は、メモリ210のような記録装置に記録されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。
【0030】
通信インタフェース230は、ネットワーク170を介してコンピュータ装置200が他の装置(一例として、上述した記録装置)と互いに通信するための機能を提供してよい。一例として、コンピュータ装置200のプロセッサ220がメモリ210のような記録装置に記録されたプログラムコードにしたがって生成した要求や命令、データ、ファイルなどが、通信インタフェース230の制御にしたがってネットワーク170を介して他の装置に伝達されてよい。これとは逆に、他の装置からの信号や命令、データ、ファイルなどが、ネットワーク170を経てコンピュータ装置200の通信インタフェース230を通じてコンピュータ装置200に受信されてよい。通信モジュール230を通じて受信された信号や命令、データなどは、プロセッサ220やメモリ210に伝達されてよく、ファイルなどは、コンピュータ装置200がさらに含むことのできる記録媒体(上述した永続的記録装置)に記録されてよい。
【0031】
入力/出力インタフェース240は、入力/出力装置250とのインタフェースのための手段であってよい。例えば、入力装置は、マイク、キーボード、またはマウスなどの装置を、出力装置は、ディスプレイ、スピーカのような装置を含んでよい。他の例として、入力/出力インタフェース240は、タッチスクリーンのように入力と出力のための機能が1つに統合された装置とのインタフェースのための手段であってもよい。入力/出力装置250は、コンピュータ装置200と1つの装置で構成されてもよい。
【0032】
また、他の実施形態において、コンピュータ装置200は、図2の構成要素よりも少ないか多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、コンピュータ装置200は、上述した入力/出力装置250のうちの少なくとも一部を含むように実現されてもよいし、トランシーバやデータベースなどのような他の構成要素をさらに含んでもよい。
【0033】
本発明の実施形態において、「文書」とは、ブログリスティングやニュース、書き込みなどのように任意の作成者によってウェブ上にアップロードされた掲示物を含むものであってよい。一般に文書は1つ以上の文章を含み、混乱のおそれがない限り、文書及び文章は可換に使用されてもよい。また、「属性」とは、文書に対して予め定義される特徴であって、一例として、文書の作成者、文書の掲示セクション、および文書の登録時間範囲のうちの少なくとも1つに基づいて決定されてよい。ここで、文書の掲示セクションは、1つのサービスにおいて文書が表示されるセクションに基づいてよい。一例として、2つの文書の掲示セクションが同じであるということは、1つのサービスにおいて文書が表示される複数の掲示セッションのうち、2つの文書が掲示された掲示セッションが同じである場合を意味してよい。作成者が属性によって定義される場合、同じ作成者の2つの互いに異なるブログリスティングは同じ属性の文書として認識されてよい。他の例として、作成者、掲示セクション、および1時間範囲が属性として定義される場合、同じ作成者によって同じ掲示セクションに1時間以内に登録された2つの書き込みは、同じ属性の文書として認識されてよい。また、文書間の「重複」とは、2つの文書が閾値以上の類似度を有することを意味してよい。例えば、文書間の類似度の値を0.00~1.00の範囲で表現し、重複のための閾値を0.95と仮定するとき、文書1と文書2との意味的類似度の値が0.97であれば、文書1と文書2は重複する文書として決定されてよい。言い換えれば、2つの文書の内容が互いに完全に同じでなかったとしても、一定以上に類似する内容を含む文書は重複する文書として決定されてよい。
【0034】
先ず、事前学習に必要なデータを構築するために多数の文書を格納しているデータベース上から、2つの文書で構成された多数のペアを任意抽出方式によって抽出してよい。抽出した文書ペアのうち、2つの文書が特定の属性(attribute)に対して同じ値を有するものは類似文章ペアと称し、そうでないものは非類似文章ペアと称する。一貫した規則を適用しながら、類似文書ペアに対しては全般的に高い類似度をもつように、非類似文書ペアに対しては全般的に低い類似度をもつように目標類似度を付与してよい。以後、転移学習過程を実行しようとするモデルが文書ペアの入力を受けて算出する値と各文書ペアに付与された目標類似度との誤差を最小化することを目標として事前学習を行ってよい。
【0035】
この後、事前学習過程を終えたモデルを利用しながら、本来目標としていた文書分類学習のためのファインチューニングが行われてよい。
【0036】
転移学習のための詳細なデータ構築過程は、次のとおりとなる。
【0037】
多数の文書を格納しているデータベース上に存在する文書の属性のうちのある属性が2つの文書に共通する値であるとき、2つの文書の内容が有意な関連性を有するものであるかを判断する。このような属性が定められれば、該当の属性が共通する2つの文書からなる多数の文書ペアをデータベースから抽出し、これを類似文章ペアと称する。これとは反対に、該当の属性が共通しない2つの文書からなる多数の文書ペアも抽出され、これを非類似文章ペアと称する。この次に適切な2つの関数を設定しなければならないが、ある関数は類似度を定義しようとする範囲、例えば、0~1の間の実数値を該当の範囲内で適切に上向になるようにし、これを類似度上向き関数と称し、他のある関数は同じ範囲の実数値を該当の範囲内で適切に下向になるようにし、これを類似度下向き関数と称する。また、先に収集していたすべての文書ペアに対し、各ペアを構成する2つの文書の類似度を伝統的な文書類似度測定方法によって算出するが、類似文章ペアに対しては伝統的な文書類似度測定方法によって算出された類似度値に対して類似度上向き関数を適用し、これを該当の文書ペアの目標類似度とし、非類似文章ペアに対しては同じ方法によって算出された類似度値に対して類似度下向き関数を適用し、これを該当の文書ペアの目標類似度とする。
【0038】
このように構築された学習データを利用して事前学習を実行する過程は、次とおりとなる。
【0039】
先ず、事前学習を実行するモデルは、2つの文書の入力を受けて1つの実数値を算出する形態で構成されなければならない。上述した形態の演算を実行するためには、ある文書に対して1つのベクトル表現(vector representation)を算出する形態でモデルを構成し、同じモデルによって2つの文書をそれぞれベクトル表現で抽象化した後、2つのベクトル表現間の適切な演算によって類似度を算出してよい。一例として、2つの文書ベクトル間のコサイン類似度を算出する方法がある。このような演算構造によってモデルが学習データ上の各文書ペアの類似度を算出するとき、算出された類似度と該当の文書ペアに付与された目標類似度との誤差が最小化するように学習させてよい。
【0040】
図3は、本発明の一実施形態における、事前学習のための転移学習システムの例を示した図である。本実施形態に係る転移学習システム300は、上述したコンピュータ装置200によって実現されてよく、コンピュータ装置200が含むプロセッサ220の制御にしたがって後述する事前学習のための類似度モデルの学習過程を処理してよい。
【0041】
転移学習システム300は、文書DB310に含まれた文書間の類似度と文書間に付与された目標類似度(または、正解類似度)との誤差が最小化するように類似度モデル320を学習させてよい。
【0042】
文書DB310は、転移学習システム300を実現する物理的な装置(第1装置)に含まれて文書を提供するように実現されてもよいが、転移学習システム300の外部に位置する他の物理的な装置(第2装置)に実現され、第1装置と第2装置がネットワーク170を介して互いに通信する形態で文書を提供するように実現されてもよい。
【0043】
転移学習システム300は、類似文章ペア集合330と非類似文章ペア集合340を文書DB310から抽出してよい。ここで、類似文章ペア集合330は、予め定義された属性が等しい文章ペアの集合を意味してよく、非類似文章ペア集合340は、属性を考慮せずに任意に(ランダムに)抽出された文章ペアの集合を意味してよい。実施形態によっては、非類似文章ペア集合340は、予め定義された属性が同じでない文章ペアの集合を意味してもよい。
【0044】
一実験例では、1億4千万件の書き込みのうち、予め定義された属性の文章ペアである「同じ作成者が同じ掲示セクションで1時間以内に作成した文章ペア」3500万件を類似文章ペア集合330として抽出し、任意の2つの書き込みからなる3500万件の文章ペアを非類似文章ペア集合340として抽出した。ここで、仮説1は、2つの書き込みの抽出回数が無限大に向かって増加することにより、同じ属性の2つの書き込みの意味が類似する確率αが任意に抽出された2つの書き込みの意味が類似する確率βよりも高いということであり、仮説2は、数学的尺度を利用した類似度(以下、数学的類似度とする)の値が同じであるとき、同じ属性の2つの書き込みの数学的類似度は数学的尺度によって過小評価される確率が高く、任意に抽出された2つの書き込みの数学的類似度は数学的尺度によって過大評価される確率が高いということである。このような仮説1と仮説2は、一実験例から得られた各数学的類似度の書き込みを比較することによって確認された。例えば、数学的類似度は0.2以下と低いが属性は等しい2つの書き込みに意味的/主題的類似性が存在する場合の比重は高かった反面、数学的類似度は0.7以上と高い、任意に抽出された2つの書き込みには、意味的/主題的類似性が見られない場合の比重が高かった。
【0045】
このように確認された仮説に基づき、本実施形態に係る転移学習システム300は、先ず、類似文章ペア集合330の類似文章ペアそれぞれと非類似文章ペア集合340の非類似文章ペアそれぞれに対して数学的尺度を利用して数学的類似度を計算してよい。このとき、転移学習システム300は、計算された数学的類似度を属性の同一状況に応じて増加させるか減少させることで、文章ペアそれぞれに対する意味的類似度を決定してよい。例えば、類似文章ペア集合330の類似文章ペアそれぞれに対して計算された数学的類似度は数学的類似度の値が過小評価されたものと見なし、計算された数学的類似度の値を適切に増加させることによって意味的類似度を計算してよい。これとは逆に、非類似文章ペア集合340の非類似文章ペアそれぞれに対して計算された数学的類似度は数学的類似度の値が過大評価されたものと見なし、計算された数学的類似度の値を適切に減少させることによって意味的類似度を計算してよい。
【0046】
より具体的な例として、転移学習システム300は、類似文章ペアの数学的類似度の値を第1非線形関数(一例として、上述した類似度上向き関数)に入力して類似文章ペアの数学的類似度の値を増加させてよく、非類似文章ペアの数学的類似度の値を第2非線形関数(一例として、上述した類似度下向き関数)に入力して非類似文章ペアの数学的類似度の値を減少させてよい。第1非線形関数は、類似文章ペアに対しては過小評価された数学的類似度の値を増加させるためのものとなり、第2非線形関数は、非類似文章ペアに対しては過大評価された数学的類似度の値を減少させるためのものとなり、例えば、第1非線形関数はすべての入力値に対して第2非線形関数よりも高い値を算出するという条件を満たす2つの非線形関数は、第1非線形関数および第2非線形関数として活用されてよい。
【0047】
文章ペアに対して計算された意味的類似度は、類似度モデル320のための正解類似度(または、目標類似度)として見なされてよい。例えば、転移学習システム300は、類似文章ペア集合330、非類似文章ペア集合340、および正解類似度を学習データとして活用して類似度モデル320を学習させてよい。例えば、類似度モデル320は、入力される文章ペアに対して意味的類似度を算出するように学習されてよい。
【0048】
より具体的な例として、類似度モデル320は、入力される文章ペアに対し、出力値が正解スコアとの平均二乗誤差(Mean Squared Error:MSE)を最小化するように学習されてよい。例えば、類似度モデル320は、平均二乗誤差を利用した損失関数に出力値と正解スコアを入力して損失が最小化するように学習されてよい。一方、類似度モデル320としては、周知のディープラーニングモデルのうちの少なくとも1つが活用されてよい。例えば、CNN(Convolutional Neural Network)やRNN(Recurrent Neural Network)などが類似度モデル320を実現するために活用されてよい。この場合、類似度モデル320は、文章ペアの入力を受けて0~1範囲の実数(意味的類似度)を出力するように実現されてよい。このとき、出力される値の範囲は一例に過ぎず、0~1の範囲に限定されてはならない。
【0049】
図4は、本発明の一実施形態における、事前学習のための類似度モデルの学習過程の例を示した図である。図3で説明した類似度モデル320は、共通モデル構造410と出力関数420を含んでよい。共通モデル構造410は、特徴学習のための行列の形態であってよく、出力関数は、N次元ベクトルを出力するためにN×Mの大きさの行列を掛ける演算であってよい。このような類似度モデル320の構造自体は、CNNやRNNなどのディープラーニングモデルによって容易に理解できるであろう。
【0050】
このような図4の実施形態では、類似度モデル320が、文章ペアとしての書き込みA(431)と書き込みB(432)に対するN次元ベクトルv1(441)とN次元ベクトルv2(442)をそれぞれ出力し、出力されたv1(441)とv2(442)との類似度450を計算する例を示している。このとき、類似度モデル320は、類似度450と書き込みA(431)と書き込みB(432)に対して予め得られた正解類似度460とのMSE470を最小化する類似度450が出力されるように学習されてよい。
【0051】
このとき、学習された類似度モデル320の共通モデル構造410が、ファインチューニングのために活用されてよい。
【0052】
図5は、本発明の一実施形態における、ファインチューニングモデルの学習過程の例を示した図である。本実施形態に係るファインチューニングモデルは、図4で学習された共通モデル構造410とファインチューニングのための出力関数510を含んでよい。
【0053】
上述したのように、事前学習の出力関数420は、N次元ベクトルを算出するためのN×Mの大きさの行列を掛ける演算であってよく、一例として、64次元(Nが64の場合)の全結合層(64D fully connected layer)で実現されてよい。このような出力関数420は、ファインチューニングで必要とする適切な大きさの他の行列と交換されてよい。例えば、各文書でK個の項目ごとに0~1の間の確率値を算出しなければならないK分類モデル(K-Binary Classification Model)を学習させることが事前学習後に実行しなければならない段階であるとすれば、ファインチューニングモデルの出力関数510は、K次元ベクトルを算出するためのK×Mの大きさの行列を掛ける演算であってよい。一例として、出力関数510は、1次元(Kが1の場合)の全結合層(1D fully connected layer)で実現されてよい。出力関数510の行列は、事前学習されたことのない新たな行列であるため、任意の値に初期化(random initialization)されてよい。このように、事前学習で学習された共通モデル構造410と交換された出力関数510を活用してファインチューニングモデルを学習することによって転移学習がなされてよい。
【0054】
このとき、図5の実施形態に係るファインチューニングでは、書き込み520に対するスコア530を出力するようにファインチューニングモデルが学習される例を示している。このとき、図5の実施形態に係るファインチューニングモデルは、スコア530と正解ラベル540との交差エントロピー誤差(CEE:Cross Entropy Error)550を最小化するスコア530を出力するように学習されてよい。正解ラベル540は、書き込み520が悪質な書き込みであるかによって予め決定されてよい。
【0055】
ファインチューニングの目標に応じ、事前学習段階では多様な属性が類似文章ペアを構成するために活用されてよい。例えば、文書の種類のうちの1つとして、インターネットコミュニティの書き込みが悪質なものであるかに対する確率モデルを学習させることがファインチューニングの目標であるとすれば、悪質な書き込みを頻繁に作成するユーザが別途存在するという仮定を立てることができる。このような過程に基づき、互いに異なる書き込みの作成者が一致するか否かに関する知識(knowledge)をファインチューニングモデルが認知していれば、ファインチューニングモデルが悪質な書き込みを分類する過程において、該当の悪質な書き込みを行ったユーザが使いそうな他の類似の書き込みに登場する表現も悪質な書き込みである確率が高いと推論できるようにすることにより、ファインチューニングモデルの悪質書き込み探知性能を高めることができる。この他にも、解決しようとするファインチューニングによる問題の特性により、書き込みがなされたコンテンツの一致状況、作成時間、またはこのような属性の組み合わせなども、類似文章ペアを構成するための条件として活用されてよい。
【0056】
図6は、本発明の一実施形態における、転移学習方法の例を示したフローチャートである。本実施形態に係る転移学習方法は、コンピュータ装置200によって実行されてよい。このとき、コンピュータ装置200のプロセッサ220は、メモリ210が含むオペレーティングシステムのコードと、少なくとも1つのコンピュータプログラムのコードとによる制御命令(instruction)を実行するように実現されてよい。ここで、プロセッサ220は、コンピュータ装置200に記録されたコードが提供する制御命令にしたがってコンピュータ装置200が図6の方法に含まれる段階610~630を実行するようにコンピュータ装置200を制御してよい。
【0057】
段階610で、コンピュータ装置200は、文書間の類似度を出力するように類似度モデルを事前学習させてよい。一例として、コンピュータ装置200は、同じ属性をもつ複数の類似文章ペアを含む類似文章ペア集合およびランダムに抽出された複数の非類似文章ペアを含む非類似文章ペア集合をデータベースから抽出してよい。ここで、属性は、文書の作成者、文書の掲示セクション、および文書の登録時間範囲のうちの少なくとも1つを含んでよい。このような属性による文書間の類似度に関する知識は類似度モデルに学習されてよく、以後に類似度モデルによって生成されるファインチューニングモデルに引き継がれてよい。
【0058】
先ず、コンピュータ装置200は、複数の類似文章ペアそれぞれおよび非類似文章ペアそれぞれに対する意味的類似度を取得してよい。このために、コンピュータ装置200は、複数の類似文章ペアそれぞれおよび複数の非類似文章ペアそれぞれに対して数学的尺度を利用した数学的類似度を計算してよく、複数の類似文章ペアそれぞれに対して計算された数学的類似度は増加させて複数の非類似文章ペアそれぞれに対して計算された数学的類似度は減少させることにより、複数の類似文章ペアそれぞれおよび複数の非類似文章ペアそれぞれに対する意味的類似度を計算してよい。より詳しく説明すると、コンピュータ装置200は、複数の類似文章ペアそれぞれに対して計算された数学的類似度を第1非線形関数に入力して増加させ、複数の非類似文章ペアそれぞれに対して計算された数学的類似度を第2非線形関数に入力して減少させてよい。この場合、第1非線形関数および第2非線形関数は、第1非線形関数が、同一するすべての入力値に対して第2非線形関数よりも高い値を算出するという条件を満たす2つの非線形関数であってよい。
【0059】
このように意味的類似度が計算された後、コンピュータ装置200は、複数の類似文章ペア、複数の非類似文章ペア、および意味的類似度を利用して類似度モデルを学習させてよい。一例として、コンピュータ装置200は、入力される文章ペアに対し、出力値が正解類似度との平均二乗誤差(Mean Squared Error:MSE)を最小化するように類似度モデルを学習させてよい。
【0060】
段階620で、コンピュータ装置200は、事前学習された類似度モデルの第1出力関数をファインチューニングのための第2出力関数と交換してファインチューニングモデルを生成してよい。ここで、第1出力関数は、N×Mの大きさの行列を掛ける演算を含んでよく、第2出力関数は、K×Mの大きさの行列を掛ける演算を含んでよい。このとき、N、M、Kはそれぞれ自然数であってよく、事前学習とファインチューニングは互いに異なる目的を果たすための学習であるという関係により、N、M、Kはそれぞれ互いに異なる自然数であってもよい。
【0061】
段階630で、コンピュータ装置200は、ファインチューニングモデルが入力される文書に対して少なくとも1つのスコアを出力するようにファインチューニングモデルを学習させてよい。一実施形態によると、コンピュータ装置200は、入力される各文書のK(Kは自然数)個の項目ごとに確率値を算出するK分類モデルをファインチューニングモデルとして学習させてよい。例えば、入力される文書が複数の項目のうちのどの項目に属する文書であるかを区分するようにファインチューニングモデルを学習させる場合、このようなK分類モデルが活用されてよい。他の実施形態によると、コンピュータ装置200は、入力される文書のスコアと正解ラベルとのCEE(Cross Entropy Error)を最小化するスコアを出力するようにファインチューニングモデルを学習させてよい。このとき、正解ラベルは、入力される文書に対して予め決定された、入力される文書の悪質な書き込みの有無に対する値を含んでよく、この場合、ファインチューニングモデルは、入力される文書の悪質な書き込みの有無をスコアとして出力するように学習される悪質書き込み探知モデルであってよい。このような悪質書き込み探知モデルは、Kが1である場合のK分類モデルであってよく、入力される文書が1つの項目(悪質な書き込み)に属するか否かのスコアを出力してよい。
【0062】
上述したように、ファインチューニングモデルは、事前学習モデルとしての類似度モデルを引き継ぐため、ファインチューニングモデルは、類似度モデルが学習した文書間の有意味な属性に関する知識を活用することができるようになる。これだけでなく、事前学習モデルとしての類似度モデルは、同じ属性を含むか否かに応じて文書のデータベースから類似文章ペアと非類似文章ペアを自動で抽出して学習データを構築するため、事前学習に必要なデータを構築するにあたり、人力を必要としない完全自動化を可能にすることができる。
【0063】
図7は、本発明の一実施形態における、悪質書き込み探知モデルの例を示した図である。図7は、書き込みに対する1億件のデータを学習した類似度モデルを有する事前学習710と、書き込みに対する33万件のデータを学習したファインチューニングモデルを有するファインチューニング720を示している。このとき、ファインチューニングモデルは、類似度モデルの共通モデル構造730を引き継いでよい。悪質な書き込みを探知するためのファインチューニング720では、書き込みが悪質なものであるかに対する正解ラベルをもつ学習データを生成するために人力動員が必要となるため、多数の学習データを生成するには困難がある。この反面、事前学習710では、データベースの書き込みが同じ属性であるか否かによって学習データを自動で生成することができるため、相対的に極めて多くのデータを学習することが可能となる。
【0064】
したがって、ファインチューニング720では、事前学習710によって学習された類似度モデルの共通モデル構造730を引き継ぎながら、悪質な書き込みを探知するために生成された学習データを追加で学習することにより、悪質な書き込みを探知する性能を大幅に高めることができる。ファインチューニング720では、類似度モデルの出力関数(Fully Connected Layer)をファインチューニングのための出力関数と交換することによってファインチューニングモデルを生成する。このとき、共通モデル構造730では、実際の実験例で使用された構造として、埋め込みマトリックス(Embedding matrix)、CNN(Convolutional Neural Network)、LSTM(Long short term memory)、BiLSTM(bidirectional LSTM)、プーリング層(Pooling Layer)を示しているが、これに限定されてはならず、各構成要素はディープラーニングモデルの周知の技術によって理解できるであろう。
【0065】
上述したシステムまたは装置は、ハードウェア構成要素、またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、例えば、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ、マイクロコンピュータ、FPGA(field programmable gate array)、PLU(programmable logic unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム(OS)および前記OS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを格納、操作、処理、および生成してもよい。理解の便宜のために、1つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および/または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【0066】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでもよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、仮想装置、コンピュータ格納媒体または装置に具現化されてもよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で格納されても実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読み取り可能な記録媒体に格納されてよい。
【0067】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。前記コンピュータ読み取り可能な媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含んでよい。媒体は、コンピュータ実行可能なプログラムを継続して記録するものであっても、実行またはダウンロードのために一時記録するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体に限定されることはなく、ネットワーク上に分散して存在するものであってもよい。媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク、および磁気テープのような磁気媒体、CD-ROMおよびDVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体、およびROM、RAM、フラッシュメモリなどを含み、プログラム命令が記録されるように構成されたものであってよい。また、媒体の他の例として、アプリケーションを配布するアプリケーションストアやその他の多様なソフトウェアを供給または配布するサイト、サーバなどで管理する記録媒体または格納媒体が挙げられる。プログラム命令の例は、コンパイラによって生成されるもののような機械語コードだけではなく、インタプリタなどを使用してコンピュータによって実行される高級言語コードを含む。
【0068】
以上のように、実施形態を、限定された実施形態および図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ/あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【0069】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【符号の説明】
【0070】
300:転移学習システム
310:文書DB
320:類似度モデル
330:類似文書ペア集合
340:非類似文書ペア集合
図1
図2
図3
図4
図5
図6
図7