(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-05-01
(45)【発行日】2025-05-13
(54)【発明の名称】知識グラフのエンティティリンキング方法、装置、コンピュータ装置及び記憶媒体
(51)【国際特許分類】
G06N 20/00 20190101AFI20250502BHJP
【FI】
G06N20/00
(21)【出願番号】P 2023576443
(86)(22)【出願日】2023-05-12
(86)【国際出願番号】 CN2023093776
(87)【国際公開番号】W WO2024174392
(87)【国際公開日】2024-08-29
【審査請求日】2023-12-12
(31)【優先権主張番号】202310522687.4
(32)【優先日】2023-05-10
(33)【優先権主張国・地域又は機関】CN
【早期審査対象出願】
(73)【特許権者】
【識別番号】521162399
【氏名又は名称】之江実験室
(74)【代理人】
【識別番号】100128347
【氏名又は名称】西内 盛二
(72)【発明者】
【氏名】宋 ▲偉▼
(72)【発明者】
【氏名】王 雨▲ハン▼
(72)【発明者】
【氏名】朱 世▲強▼
(72)【発明者】
【氏名】▲謝▼ ▲氷▼
(72)【発明者】
【氏名】尹 越
(72)【発明者】
【氏名】▲趙▼ ▲シン▼安
(72)【発明者】
【氏名】姜 娜
(72)【発明者】
【氏名】▲趙▼ 文宇
【審査官】佐藤 直樹
(56)【参考文献】
【文献】中国特許出願公開第114841164(CN,A)
【文献】特開2022-040026(JP,A)
【文献】上泉 洸太 ほか,DBpediaを対象とした日本人名のエンティティリンキング,第59回セマンティックウェブとオントロジー研究会 [online] ,日本,人工知能学会,2023年03月17日,SIG-SWO-059-01,pp.1-9
(58)【調査した分野】(Int.Cl.,DB名)
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
知識グラフのエンティティリンキング方法であって、以下のステップ1~ステップ4
は、コンピュータにより実行され、、
前記ステップ1では、
前記コンピュータは、問題サンプル、エンティティメンションサンプル、知識グラフエンティティポジティブサンプル及び知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータポジティブサンプルを取得し、前記エンティティメンションサンプルが前記問題サンプルに基づいて取得されたものであり、前記知識グラフエンティティポジティブサンプルが前記エンティティメンションサンプルの知識グラフにおけるラベリングエンティティに基づいて取得されたものであり、前記知識グラフエンティティ隣接サブグラフサンプルが前記知識グラフエンティティポジティブサンプルの前記知識グラフにおけるエンティティ関係に基づいて取得されたものであり、
前記ステップ2では、
前記コンピュータは、前記問題サンプル、前記エンティティメンションサンプル、知識グラフエンティティネガティブサンプル及び対応する知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータネガティブサンプルを取得し、前記知識グラフエンティティネガティブサンプルが前記知識グラフにおける前記エンティティメンションサンプルとラベリング関係を有しないエンティティに基づいてランダムに取得されたものであり、
前記ステップ3では、
前記コンピュータは、前記トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングして、エンティティリンキングモデルを取得し、
前記ステップ4では、
前記コンピュータは、ユーザー問題、エンティティメンション、候補知識グラフエンティティ及び対応する知識グラフエンティティ隣接サブグラフを、トレーニング済みの前記エンティティリンキングモデルに入力して、前記エンティティメンションにリンキングする目標知識グラフエンティティを決定し、前記エンティティメンションが前記ユーザー問題に基づいて取得されたものであり、前記候補知識グラフエンティティが前記エンティティメンションに基づいて取得されたものであり、前記知識グラフエンティティ隣接サブグラフが前記候補知識グラフエンティティの前記知識グラフにおけるエンティティ関係に基づいて取得されたものである
ことを特徴とする知識グラフのエンティティリンキング方法。
【請求項2】
前記コンピュータが前記トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングすることは、
前記コンピュータが、前記トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルを前記エンティティリンキング初期モデルに入力して、サンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを出力することと、
前記コンピュータが、前記サンプルエンティティメンションベクトル、サンプルエンティティグラフ畳み込みベクトル、及び予め取得されたサンプルマークパラメータに基づいて前記エンティティリンキング初期モデルの損失関数を決定することと、
前記コンピュータが、前記損失関数に基づいて前記エンティティリンキング初期モデルをトレーニングすることと、を含む
ことを特徴とする請求項1に記載の知識グラフのエンティティリンキング方法。
【請求項3】
前記エンティティリンキング初期モデルは、テキスト埋め込みモジュール及びエンティティグラフネットワーク埋め込みモジュールを含み、
前記コンピュータが前記トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルを前記エンティティリンキング初期モデルに入力してサンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを出力することは、
前記コンピュータが、前記問題サンプル及び知識グラフエンティティサンプルを前記テキスト埋め込みモジュールに入力して、前記サンプルエンティティメンションベクトル及びサンプル問題ベクトルを出力し、前記知識グラフエンティティサンプルが前記知識グラフエンティティポジティブサンプル及び知識グラフエンティティネガティブサンプルを含むことと、
前記コンピュータが、前記サンプル問題ベクトルに基づいて前記エンティティグラフネットワーク埋め込みモジュールにおけるエンティティサンプルベクトルのアテンション重みを取得することと、
前記コンピュータが、前記知識グラフエンティティ隣接サブグラフサンプルを前記エンティティグラフネットワーク埋め込みモジュールに入力して、前記アテンション重みに基づいて前記サンプルエンティティグラフ畳み込みベクトルを出力することと、を含む
ことを特徴とする請求項2に記載の知識グラフのエンティティリンキング方法。
【請求項4】
前記テキスト埋め込みモジュールはBERTモデルを含み、
前記コンピュータが前記問題サンプル及び知識グラフエンティティサンプルを前記テキスト埋め込みモジュールに入力して前記サンプルエンティティメンションベクトル及びサンプル問題ベクトルを出力することは、
前記コンピュータが、所定フォーマットで前記問題サンプル、知識グラフエンティティサンプル、CLSフラグビット及びSEPフラグビットを繋ぎ合わせて、前記BERTモデルに入力することと、
前記コンピュータが、前記CLSフラグビットに対応する前記BERTモデルの第1出力ベクトルに基づいて前記サンプル問題ベクトルを決定することと、を含む
ことを特徴とする請求項3に記載の知識グラフのエンティティリンキング方法。
【請求項5】
前記テキスト埋め込みモジュールは、多層パーセプトロンモデルを更に含み、
前記コンピュータが前記問題サンプル及び知識グラフエンティティサンプルを前記テキスト埋め込みモジュールに入力して前記サンプルエンティティメンションベクトル及びサンプル問題ベクトルを出力することは、
前記コンピュータが、前記エンティティメンションサンプルの開始位置に対応する前記BERTモデルの第2出力ベクトルと、前記エンティティメンションサンプルの終了位置に対応する前記BERTモデルの第3出力ベクトルとを取得することと、
前記コンピュータが、前記第1出力ベクトル、第2出力ベクトル及び第3出力ベクトルを繋ぎ合わせて、前記多層パーセプトロンモデルに入力して、前記サンプルエンティティメンションベクトルを取得することと、を更に含む
ことを特徴とする請求項4に記載の知識グラフのエンティティリンキング方法。
【請求項6】
前記コンピュータが前記知識グラフエンティティ隣接サブグラフサンプルを前記エンティティグラフネットワーク埋め込みモジュールに入力して、前記アテンション重みに基づいて前記サンプルエンティティグラフ畳み込みベクトルを出力することは、
前記コンピュータが、前記第1出力ベクトルに基づいて前記知識グラフエンティティ隣接サブグラフサンプルを初期化して、対応するエンティティサンプルベクトルを取得することと、
前記コンピュータが、前記エンティティサンプルベクトルを前記エンティティグラフネットワーク埋め込みモジュールに入力して、前記アテンション重みに基づいて前記サンプルエンティティグラフ畳み込みベクトルを出力することと、を含む
ことを特徴とする請求項4に記載の知識グラフのエンティティリンキング方法。
【請求項7】
前記コンピュータが前記所定フォーマットで前記問題サンプル、知識グラフエンティティサンプル、CLSフラグビット及びSEPフラグビットを繋ぎ合わせて、前記BERTモデルに入力する前に、前記知識グラフのエンティティリンキング方法は、
前記コンピュータが、BERT初期モデルを事前トレーニングして、事前トレーニングモデルパラメータを取得することと、
前記コンピュータが、前記事前トレーニングモデルパラメータに基づいて前記BERTモデルを構築することと、を更に含む
ことを特徴とする請求項4に記載の知識グラフのエンティティリンキング方法。
【請求項8】
知識グラフのエンティティリンキング装置であって、第1取得モジュール、第2取得モジュール、トレーニングモジュール及び決定モジュールを含み、
前記第1取得モジュールは、問題サンプル、エンティティメンションサンプル、知識グラフエンティティポジティブサンプル及び知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータポジティブサンプルを取得することに用いられ、前記エンティティメンションサンプルが前記問題サンプルに基づいて取得されたものであり、前記知識グラフエンティティポジティブサンプルが前記エンティティメンションサンプルの知識グラフにおけるラベリングエンティティに基づいて取得されたものであり、前記知識グラフエンティティ隣接サブグラフサンプルが前記知識グラフエンティティポジティブサンプルの前記知識グラフにおけるエンティティ関係に基づいて取得されたものであり、
前記第2取得モジュールは、前記問題サンプル、前記エンティティメンションサンプル、知識グラフエンティティネガティブサンプル及び対応する知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータネガティブサンプルを取得することに用いられ、前記知識グラフエンティティネガティブサンプルが前記知識グラフにおける前記エンティティメンションサンプルとラベリング関係を有しないエンティティに基づいてランダムに取得されたものであり、
前記トレーニングモジュールは、前記トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングして、エンティティリンキングモデルを取得することに用いられ、
前記決定モジュールは、ユーザー問題、エンティティメンション、候補知識グラフエンティティ及び対応する知識グラフエンティティ隣接サブグラフをトレーニング済みの前記エンティティリンキングモデルに入力して、前記エンティティメンションにリンキングする目標知識グラフエンティティを決定することに用いられ、前記エンティティメンションが前記ユーザー問題に基づいて取得されたものであり、前記候補知識グラフエンティティが前記エンティティメンションに基づいて取得されたものであり、前記知識グラフエンティティ隣接サブグラフが前記候補知識グラフエンティティの前記知識グラフにおけるエンティティ関係に基づいて取得されたものである
ことを特徴とする知識グラフのエンティティリンキング装置。
【請求項9】
メモリ及びプロセッサを備えるコンピュータ装置であって、
前記メモリにコンピュータプログラムが記憶され、前記プロセッサは前記コンピュータプログラムを実行することにより請求項1~7のいずれか1項に記載の知識グラフのエンティティリンキング方法を実行するように設定される
ことを特徴とするコンピュータ装置。
【請求項10】
プログラムが記憶される読み取り可能な記憶媒体であって、
前記プログラムがプロセッサにより実行されるとき、請求項1~7のいずれか1項に記載の知識グラフのエンティティリンキング方法におけるステップを実行する
ことを特徴とする読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は自然言語処理の技術分野に関し、特に知識グラフのエンティティリンキング方法、装置、コンピュータ装置及び読み取り可能な記憶媒体に関する。
【背景技術】
【0002】
エンティティリンキングとは、テキストに出現するエンティティメンション(mention)と知識グラフにおける対応するエンティティとをリンキングすることを意味し、多くの情報抽出タスク及び自然言語理解タスクの重要な段階であり、例えば、知識グラフ更新、知識グラフに基づく問答、検索エンジンなどが挙げられる。自然言語記述の多様性に起因して、エンティティメンションの曖昧性を解消することはエンティティリンキングタスクにおける最も重要な部分である。
【0003】
エンティティリンキング方法はエンティティメンション及び知識グラフエンティティのテキスト比較モデルを構築するように意図されており、従来の方法はほとんど知識グラフエンティティテキストに記述されたセマンティック情報に関心を持ち、又は知識グラフにおけるエンティティノードの関連関係に応じてドキュメントにおけるエンティティの整合性をモデリングするのであり、後者は知識グラフに含まれる大量のグラフ構造及び記憶される知識を利用してユーザー問題以外の情報を取得して曖昧さを解消することを助けることができ、エンティティリンキングの精度を効果的に向上させる。しかしながら、問答シーンにおいて、大多数のユーザー問題に関わるエンティティの数が少なく、エンティティ整合性モデルを効果的に構築することが困難であり、このため、知識グラフが利用されにくく、エンティティリンキングの精度が比較的低い。
【0004】
関連技術における問答シーンにおいてエンティティ整合性モデルの効果が悪くてエンティティリンキングの精度が比較的低いという問題に対して、現在はまだ有効な解決案を出していない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
関連技術における問答シーンにおいてエンティティ整合性モデル効果が悪くてエンティティリンキングの精度が比較的低いという問題を解決するように、本実施例は知識グラフのエンティティリンキング方法、装置、コンピュータ装置及び読み取り可能な記憶媒体を提供する。
【課題を解決するための手段】
【0006】
第1態様では、本実施例は知識グラフのエンティティリンキング方法を提供し、前記方法は、
問題サンプル、エンティティメンションサンプル、知識グラフエンティティポジティブサンプル及び知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータポジティブサンプルを取得し、前記エンティティメンションサンプルが前記問題サンプルに基づいて取得されたものであり、前記知識グラフエンティティポジティブサンプルが前記エンティティメンションサンプルの知識グラフにおけるラベリングエンティティに基づいて取得されたものであり、前記知識グラフエンティティ隣接サブグラフサンプルが前記知識グラフエンティティポジティブサンプルの前記知識グラフにおけるエンティティ関係に基づいて取得されたものであることと、
前記問題サンプル、前記エンティティメンションサンプル、知識グラフエンティティネガティブサンプル及び対応する知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータネガティブサンプルを取得し、前記知識グラフエンティティネガティブサンプルが前記知識グラフにおける前記エンティティメンションサンプルとラベリング関係を有しないエンティティに基づいてランダムに取得されたものであることと、
前記トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングして、エンティティリンキングモデルを取得することと、
ユーザー問題、エンティティメンション、候補知識グラフエンティティ及び対応する知識グラフエンティティ隣接サブグラフをトレーニング済みの前記エンティティリンキングモデルに入力して、前記エンティティメンションにリンキングする目標知識グラフエンティティを決定し、前記エンティティメンションが前記ユーザー問題に基づいて取得されたものであり、前記候補知識グラフエンティティが前記エンティティメンションに基づいて取得されたものであり、前記知識グラフエンティティ隣接サブグラフが前記候補知識グラフエンティティの前記知識グラフにおけるエンティティ関係に基づいて取得されたものであることと、を含む。
【0007】
いくつかの実施例では、前記トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングすることは、
前記トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルを前記エンティティリンキング初期モデルに入力して、サンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを出力することと、
前記サンプルエンティティメンションベクトル、サンプルエンティティグラフ畳み込みベクトル、及び予め取得されたサンプルマークパラメータに基づいて前記エンティティリンキング初期モデルの損失関数を決定することと、
前記損失関数に基づいて前記エンティティリンキング初期モデルをトレーニングすることと、を含む。
【0008】
いくつかの実施例では、前記エンティティリンキング初期モデルはテキスト埋め込みモジュール及びエンティティグラフネットワーク埋め込みモジュールを備え、前記トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルを前記エンティティリンキング初期モデルに入力してサンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを出力することは、
前記問題サンプル及び知識グラフエンティティサンプルを前記テキスト埋め込みモジュールに入力して、前記サンプルエンティティメンションベクトル及びサンプル問題ベクトルを出力し、前記知識グラフエンティティサンプルが前記知識グラフエンティティポジティブサンプル及び知識グラフエンティティネガティブサンプルを含むことと、
前記サンプル問題ベクトルに基づいて前記エンティティグラフネットワーク埋め込みモジュールにおけるエンティティサンプルベクトルのアテンション重みを取得することと、
前記知識グラフエンティティ隣接サブグラフサンプルを前記エンティティグラフネットワーク埋め込みモジュールに入力して、前記アテンション重みに基づいて前記サンプルエンティティグラフ畳み込みベクトルを出力することと、を含む。
【0009】
いくつかの実施例では、前記テキスト埋め込みモジュールはBERTモデルを備え、前記前記問題サンプル及び知識グラフエンティティサンプルを前記テキスト埋め込みモジュールに入力して前記サンプルエンティティメンションベクトル及びサンプル問題ベクトルを出力することは、
所定フォーマットで前記問題サンプル、知識グラフエンティティサンプル、CLSフラグビット及びSEPフラグビットを繋ぎ合わせて、前記BERTモデルに入力することと、
前記CLSフラグビットに対応する前記BERTモデルの第1出力ベクトルに基づいて前記サンプル問題ベクトルを決定することと、を含む。
【0010】
いくつかの実施例では、前記テキスト埋め込みモジュールは多層パーセプトロンモデルを更に備え、前記問題サンプル及び知識グラフエンティティサンプルを前記テキスト埋め込みモジュールに入力して前記サンプルエンティティメンションベクトル及びサンプル問題ベクトルを出力することは、
前記エンティティメンションサンプルの開始位置に対応する前記BERTモデルの第2出力ベクトルと、前記エンティティメンションサンプルの終了位置に対応する前記BERTモデルの第3出力ベクトルとを取得することと、
前記第1出力ベクトル、第2出力ベクトル及び第3出力ベクトルを繋ぎ合わせて、前記多層パーセプトロンモデルに入力して、前記サンプルエンティティメンションベクトルを取得することと、を更に含む。
【0011】
いくつかの実施例では、前記知識グラフエンティティ隣接サブグラフサンプルを前記エンティティグラフネットワーク埋め込みモジュールに入力して、前記アテンション重みに基づいて前記サンプルエンティティグラフ畳み込みベクトルを出力することは、
前記第1出力ベクトルに基づいて前記知識グラフエンティティ隣接サブグラフサンプルを初期化して、対応するエンティティサンプルベクトルを取得することと、
前記エンティティサンプルベクトルを前記エンティティグラフネットワーク埋め込みモジュールに入力して、前記アテンション重みに基づいて前記サンプルエンティティグラフ畳み込みベクトルを出力することと、を含む。
【0012】
いくつかの実施例では、前記所定フォーマットで前記問題サンプル、知識グラフエンティティサンプル、CLSフラグビット及びSEPフラグビットを繋ぎ合わせて、前記BERTモデルに入力する前に、前記方法は、
BERT初期モデルを事前トレーニングして、事前トレーニングモデルパラメータを取得することと、
前記事前トレーニングモデルパラメータに基づいて前記BERTモデルを構築することと、を更に含む。
【0013】
第2態様では、本実施例は知識グラフのエンティティリンキング装置を提供し、前記装置は、
問題サンプル、エンティティメンションサンプル、知識グラフエンティティポジティブサンプル及び知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータポジティブサンプルを取得するためのものであり、前記エンティティメンションサンプルが前記問題サンプルに基づいて取得されたものであり、前記知識グラフエンティティポジティブサンプルが前記エンティティメンションサンプルの知識グラフにおけるラベリングエンティティに基づいて取得されたものであり、前記知識グラフエンティティ隣接サブグラフサンプルが前記知識グラフエンティティポジティブサンプルの前記知識グラフにおけるエンティティ関係に基づいて取得されたものである第1取得モジュールと、
前記問題サンプル、前記エンティティメンションサンプル、知識グラフエンティティネガティブサンプル及び対応する知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータネガティブサンプルを取得するためのものであり、前記知識グラフエンティティネガティブサンプルが前記知識グラフにおける前記エンティティメンションサンプルとラベリング関係を有しないエンティティに基づいてランダムに取得されたものである第2取得モジュールと、
前記トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングして、エンティティリンキングモデルを取得するためのトレーニングモジュールと、
ユーザー問題、エンティティメンション、候補知識グラフエンティティ及び対応する知識グラフエンティティ隣接サブグラフをトレーニング済みの前記エンティティリンキングモデルに入力して、前記エンティティメンションにリンキングする目標知識グラフエンティティを決定するためのものであり、前記エンティティメンションが前記ユーザー問題に基づいて取得されたものであり、前記候補知識グラフエンティティが前記エンティティメンションに基づいて取得されたものであり、前記知識グラフエンティティ隣接サブグラフが前記候補知識グラフエンティティの前記知識グラフにおけるエンティティ関係に基づいて取得されたものである決定モジュールと、を備える。
【0014】
第3態様では、本実施例はメモリ及びプロセッサを備えるコンピュータ装置を提供し、前記メモリにコンピュータプログラムが記憶され、前記プロセッサは前記コンピュータプログラムを実行することにより上記第1態様に記載の知識グラフのエンティティリンキング方法におけるステップを実行するように設定される。
【0015】
第4態様では、本実施例はプログラムが記憶される読み取り可能な記憶媒体を提供し、前記プログラムがプロセッサにより実行されるとき、上記第1態様に記載の知識グラフのエンティティリンキング方法におけるステップを実現する。
【発明の効果】
【0016】
関連技術に比べて、本実施例に係る知識グラフのエンティティリンキング方法は、問題サンプル、エンティティメンションサンプル、知識グラフエンティティポジティブサンプル及び知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータポジティブサンプルを取得し、該エンティティメンションサンプルに手動ラベリングによりリンキングする知識グラフエンティティをポジティブトレーニングのサンプルデータとして用いることにより、トレーニングデータポジティブサンプルの精度及びトレーニングの有効性を確保するのであり、問題サンプル、エンティティメンションサンプル、知識グラフエンティティネガティブサンプル及び対応する知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータネガティブサンプルを取得し、即ち知識グラフにおけるエンティティポジティブサンプルを除去してからエンティティを知識グラフエンティティネガティブサンプルとしてランダムに抽出することにより、トレーニングデータネガティブサンプルのランダム性及びトレーニングの有効性を向上させるのであり、トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングして、エンティティリンキングモデルを取得することにより、エンティティリンキングモデルのリンキング精度を向上させるのであり、ユーザー問題、エンティティメンション、候補知識グラフエンティティ及び対応する知識グラフエンティティ隣接サブグラフをトレーニング済みのエンティティリンキングモデルに入力して、エンティティメンションにリンキングする目標知識グラフエンティティを決定して、エンティティメンションに最も類似する知識グラフエンティティをリンキング目標として取得することにより、エンティティリンキングモデルのリンキング効果を改善するのであり、関連技術における問答シーンにおいてエンティティ整合性モデルの効果が悪くてエンティティリンキングの精度が比較的低いという問題を解決した。
【0017】
本出願の一又は複数の実施例の細部を下記図面及び記述において与えることにより、本出願の他の特徴、目的及び利点をより簡潔明瞭にする。
【図面の簡単な説明】
【0018】
ここに説明される図面は本出願の更なる理解を提供するためのものであり、本出願の一部を構成し、本出願の模式的な実施例及びその説明は本出願を解釈するためのものであり、本出願を不適切に限定するものではない。
【0019】
【
図1】
図1は本出願のいくつかの実施例に係る知識グラフのエンティティリンキング方法における端末のブロック図である。
【
図2】
図2は本出願のいくつかの実施例に係る知識グラフのエンティティリンキング方法のフローチャートである。
【
図3】
図3は本出願のいくつかの実施例に係るトレーニングデータサンプルに基づいてエンティティリンキング初期モデルをトレーニングするフローチャートである。
【
図4】
図4は本出願のいくつかの実施例に係るトレーニングデータサンプルに基づいてサンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを出力するフローチャートである。
【
図5】
図5は本出願のいくつかの実施例に係る問題サンプル及び知識グラフエンティティサンプルに基づいてサンプル問題ベクトルを取得するフローチャートである。
【
図6】
図6は本出願のいくつかの実施例に係る問題サンプル及び知識グラフエンティティサンプルに基づいてサンプルエンティティメンションベクトルを取得するフローチャートである。
【
図7】
図7は本出願のいくつかの実施例に係る知識グラフエンティティ隣接サブグラフサンプルに基づいてサンプルエンティティグラフ畳み込みベクトルを取得するフローチャートである。
【
図8】
図8は本出願のいくつかの好適な実施例に係るエンティティリンキングモデルの構造模式図である。
【
図9】
図9は本出願のいくつかの好適な実施例に係る知識グラフのエンティティリンキング方法のフローチャートである。
【
図10】
図10は本出願のいくつかの実施例に係る知識グラフのエンティティリンキング装置のブロック図である。
【発明を実施するための形態】
【0020】
本出願の目的、技術案及び利点をより明確に理解するために、以下に図面を参照しながら実施例によって本出願を記述及び説明する。理解すべきことは、ここに記述された具体的な実施例は本出願を解釈するためのものに過ぎず、本出願を限定するためのものではない。
【0021】
特に定義しない限り、本出願に関わる技術用語又は科学用語は本出願の属する技術分野内で当業者が理解する通常の意味を有すべきである。本出願における「一」、「1つ」、「1種類」、「該」、「これら」などの類似する言葉は数の制限を示すものではなく、それらは単数又は複数であってもよい。本出願に関わる用語「備える」、「含む」、「有する」及びそれらの任意の変形は、非排他的な包含をカバーすることを意図しており、例えば、一連のステップ又はモジュール(ユニット)を含む過程、方法及びシステム、製品又は機器は列挙したステップ又はモジュール(ユニット)に限定されるのではなく、列挙しないステップ又はモジュール(ユニット)を含んでもよく、又はこれらの過程、方法、製品又は機器固有の他のステップ又はモジュール(ユニット)を含んでもよい。本出願に関わる「接続」、「連結」、「結合」などの類似する言葉は物理的又は機械的な接続に限定されるのではなく、直接接続又は間接的接続にかかわらず、電気的接続も含んでもよい。本出願に関わる「複数」は2つ以上を指す。「及び/又は」は関連オブジェクトの関連関係を説明するものであり、3つの関係が存在してもよいことを示し、例えば、「A及び/又はB」は「Aが独立して存在する」、「AとBが同時に存在する」、「Bが独立して存在する」の3つの状況を示してもよい。一般的に、文字「/」は前後関連オブジェクトが「又は」の関係であることを示す。本出願に関わる用語「第1」、「第2」、「第3」などは、類似するオブジェクトを区別するものに過ぎず、オブジェクトに対する特定の順番を代表しない。
【0022】
本出願の実施例に係る知識グラフのエンティティリンキング方法は端末、コンピュータ又は類似する演算装置において実行されてもよい。該方法が端末、コンピュータ又は類似する演算装置に応用される場合、
図1は本出願のいくつかの実施例に係る知識グラフのエンティティリンキング方法における端末のハードウェアのブロック図である。
図1に示すように、端末は1つ又は複数(
図1に1つのみを示す)のプロセッサ102と、データを記憶するためのメモリ104とを備えてもよく、プロセッサ102はマイクロプロセッサ(MCU)又はプログラマブルロジックデバイス(FPGA)などの処理装置を含んでもよいが、それらに限らない。上記端末は通信機能のための伝送装置106と、入出力装置108とを更に備えてもよい。当業者であれば理解されるように、
図1に示される構造は模式的なものに過ぎず、上記端末の構造を制限するものではない。例えば、端末は更に
図1より多く又は少ないコンポーネントを備え、又は
図1と異なる構成を有してもよい。
【0023】
メモリ104はコンピュータプログラム例えばアプリケーションソフトウェアのソフトウェアプログラム及びモジュール、例えば本実施例に係る知識グラフのエンティティリンキング方法に対応するコンピュータプログラムを記憶するためのものであってもよく、プロセッサ102はメモリ104に記憶されるコンピュータプログラムを実行することにより様々な機能アプリケーション及びデータ処理を実行し、即ち上記方法を実行する。メモリ104は高速ランダムアクセスメモリを含んでもよく、不揮発性メモリ例えば1つ又は複数の磁気記憶装置、フラッシュメモリ又は他の不揮発性固体メモリを更に含んでもよい。いくつかの実施例では、メモリ104はプロセッサ102に対して遠隔設置されたメモリを更に含んでもよく、これらのリモートメモリはネットワークを介して端末に接続されてもよい。上記ネットワークの実例はインターネット、イントラネット、ローカルエリアネットワーク、移動通信ネットワーク及びそれらの組合せを含むが、それらに限らない。
【0024】
伝送装置106は1つのネットワークを介してデータを受信又は送信するためのものである。上記ネットワークは通信プロバイダが提供する無線ネットワークを含む。一実例では、伝送装置106は1つのネットワークインターフェースコントローラ(NIC、Network Interface Controller)を備え、基地局を介して他のネットワーク機器に接続されることによりインターネットと通信することができる。一実例では、伝送装置106は無線周波数(RF、Radio Frequency)モジュールであってもよく、無線方式でインターネットと通信するためのものである。
【0025】
本実施例は知識グラフのエンティティリンキング方法を提供し、
図2は本出願のいくつかの実施例に係る知識グラフのエンティティリンキング方法のフローチャートであり、
図2に示すように、該プロセスは下記ステップS201~S204を含む。
【0026】
ステップS201では、問題サンプル、エンティティメンションサンプル、知識グラフエンティティポジティブサンプル及び知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータポジティブサンプルを取得し、該エンティティメンションサンプルが該問題サンプルに基づいて取得されたものであり、該知識グラフエンティティポジティブサンプルが該エンティティメンションサンプルの知識グラフにおけるラベリングエンティティに基づいて取得されたものであり、該知識グラフエンティティ隣接サブグラフサンプルが該知識グラフエンティティポジティブサンプルの該知識グラフにおけるエンティティ関係に基づいて取得されたものである。
【0027】
本実施例では、問題サンプルとは収集などの手段で取得した既存のユーザー問題を指し、エンティティメンションサンプルとは従来のNERモデルなどの手段で問題サンプルから抽出したエンティティメンションを指す。1つの問題サンプルに1つ又は複数のエンティティメンションサンプルが含まれてもよい。知識グラフエンティティポジティブサンプルとはエンティティメンションサンプルに基づいて手動ラベリングの方式で知識グラフから取得した知識グラフエンティティを指し、該知識グラフエンティティがエンティティメンションサンプルに対応し、知識グラフエンティティ隣接サブグラフサンプルとは知識グラフにおいて該知識グラフエンティティポジティブサンプルに基づく1ホップの隣接ノードからなる隣接サブグラフを指す。
【0028】
具体的に、知識グラフGはG(V,E)で示されてもよく、ここで、Vがノード(エンティティ)を示し、Eがノード間のエッジ(関係)を示し、エンティティeiの知識グラフGにおける隣接サブグラフをeiの1ホップの隣接ノードからなるサブグラフとして定義して、Geiとして記す。
【0029】
ユーザー問題qに対しては、NERモデルがqにおけるエンティティメンション集合M={mi}i=1,…,nを取得し、リンキングする知識グラフエンティティ集合E={ei}i=1,…,nをラベリングして、ユーザー問題、エンティティメンション、知識グラフエンティティ及び知識グラフエンティティ隣接サブグラフを4元組<q,mi,ei,Gei>i=1,…,nに構成して、トレーニングデータのポジティブサンプルとする。
【0030】
ステップS202では、該問題サンプル、該エンティティメンションサンプル、知識グラフエンティティネガティブサンプル及び対応する知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータネガティブサンプルを取得し、該知識グラフエンティティネガティブサンプルが該知識グラフにおける該エンティティメンションサンプルとラベリング関係を有しないエンティティに基づいてランダムに取得されたものである。
【0031】
知識グラフからエンティティをランダムに抽出してポジティブサンプルに出現するエンティティ集合Eをフィルタリングして、E*={e
j}
j=1,…,nとして記し、ここで、
であり、ユーザー問題、エンティティメンション、ランダムに抽出された知識グラフエンティティ及びその隣接サブグラフを4元組<q,m
i,e
j,Ge
j>
j=1,…,nに構成して、トレーニングデータのネガティブサンプルとする。
【0032】
ステップS203では、トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングして、エンティティリンキングモデルを取得する。
【0033】
トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルの4元組データをエンティティリンキング初期モデルに入力してトレーニングし、エンティティリンキング初期モデルの出力に基づいて該モデルの損失関数を計算し、且つ損失関数に基づいてモデルパラメータを調整し、最終的にエンティティリンキングモデルを取得する。エンティティリンキング初期モデルは異なるタイプのニューラルネットワークモデル又は複数種類のニューラルネットワークモデルの組合せであってもよく、CNN、RNN、Transformer、BERT、GPT、多層パーセプトロンなどを含む。
【0034】
ステップS204では、ユーザー問題、エンティティメンション、候補知識グラフエンティティ及び対応する知識グラフエンティティ隣接サブグラフをトレーニング済みのエンティティリンキングモデルに入力して、該エンティティメンションにリンキングする目標知識グラフエンティティを決定し、該エンティティメンションがユーザー問題に基づいて取得されたものであり、該候補知識グラフエンティティが該エンティティメンションに基づいて取得されたものであり、該知識グラフエンティティ隣接サブグラフが候補知識グラフエンティティの知識グラフにおけるエンティティ関係に基づいて取得されたものである。
【0035】
1つの新たなユーザー問題が入力される場合、NERモデルなどのエンティティ識別モデルによりユーザー問題におけるエンティティメンションを抽出し、エンティティメンション及びテキスト類似度評価アルゴリズム例えばBM25アルゴリズムなどに基づいてエンティティメンションに類似する複数の知識グラフエンティティを候補エンティティ集合として取得し、次にそれぞれ候補知識グラフエンティティに対応する知識グラフ隣接サブグラフを取得してもよい。
【0036】
ユーザー問題、エンティティメンション、候補知識グラフエンティティ及び対応する知識グラフエンティティ隣接サブグラフを4元組に構成して、トレーニング済みのエンティティリンキングモデルに入力して、エンティティメンションのベクトル表現及び候補知識グラフエンティティのグラフ畳み込みベクトル表現集合を取得し、グラフ畳み込みベクトル表現集合からエンティティメンションのベクトル表現とのコサイン類似度が最も高い候補エンティティをリンキングする目標エンティティとして選択する。
【0037】
上記ステップS201~S204を経て、問題サンプル、エンティティメンションサンプル、知識グラフエンティティポジティブサンプル及び知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータポジティブサンプルを取得し、該エンティティメンションサンプルに手動ラベリングによりリンキングする知識グラフエンティティをポジティブトレーニングのサンプルデータとして用いることにより、トレーニングデータポジティブサンプルの精度及びトレーニングの有効性を確保するのであり、問題サンプル、エンティティメンションサンプル、知識グラフエンティティネガティブサンプル及び対応する知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータネガティブサンプルを取得し、即ち知識グラフにおけるエンティティポジティブサンプルを除去してからエンティティを知識グラフエンティティネガティブサンプルとしてランダムに抽出することにより、トレーニングデータネガティブサンプルのランダム性及びトレーニングの有効性を向上させるのであり、トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングして、エンティティリンキングモデルを取得することにより、エンティティリンキングモデルのリンキング精度を向上させるのであり、ユーザー問題、エンティティメンション、候補知識グラフエンティティ及び対応する知識グラフエンティティ隣接サブグラフをトレーニング済みのエンティティリンキングモデルに入力して、エンティティメンションにリンキングする目標知識グラフエンティティを決定し、エンティティメンションに最も類似する知識グラフエンティティをリンキング目標として取得することにより、エンティティリンキングモデルのリンキング効果を改善するのであり、関連技術における問答シーンにおいてエンティティ整合性モデルの効果が悪くてエンティティリンキングの精度が比較的低いという問題を解決した。
【0038】
いくつかの実施例では、
図3は本出願のいくつかの実施例に係るトレーニングデータサンプルに基づいてエンティティリンキング初期モデルをトレーニングするフローチャートであり、
図3に示すように、該プロセスは下記ステップS301~S303を含む。
【0039】
ステップS301では、トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルをエンティティリンキング初期モデルに入力して、サンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを出力する。
【0040】
トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルの4元組データをエンティティリンキング初期モデルに入力した後、エンティティリンキング初期モデルの処理により4元組における問題サンプル、エンティティメンションサンプル及び知識グラフエンティティサンプルに含まれるセマンティック情報を抽出して、サンプルエンティティメンションベクトルを出力する。該サンプルエンティティメンションベクトルはエンティティメンションサンプルがマッピングされる特徴付けベクトルであり、問題サンプルにおけるコンテキスト情報を含み、ベクトルの方式でエンティティメンションサンプルに対応するセマンティック情報を表現する。
【0041】
エンティティリンキング初期モデルは4元組データにおける知識グラフエンティティ隣接サブグラフサンプルを処理して、サンプルエンティティグラフ畳み込みベクトルを出力し、該サンプルエンティティグラフ畳み込みベクトルは知識グラフエンティティサンプルの知識グラフにおける1ホップの隣接エンティティ関係に基づいて抽出したグラフ畳み込みベクトルであり、知識グラフエンティティサンプルに対応するセマンティック情報を反映する。
【0042】
ステップS302では、該サンプルエンティティメンションベクトル、サンプルエンティティグラフ畳み込みベクトル、及び予め取得されたサンプルマークパラメータに基づいてエンティティリンキング初期モデルの損失関数を決定する。
【0043】
サンプルエンティティメンションベクトルとサンプルエンティティグラフ畳み込みベクトルとがそれぞれエンティティメンションサンプル及び対応する知識グラフエンティティサンプルに含まれるセマンティック情報を表現するため、2種類のベクトル間の類似度はエンティティメンションサンプルと、対応する知識グラフエンティティサンプルとのセマンティック類似度を反映することができ、エンティティリンキング初期モデルのトレーニング効果を反映することもできる。サンプルマークパラメータはトレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルによるエンティティリンキングモデルのトレーニング効果の相違を反映するためのものである。4元組データにおける知識グラフエンティティサンプルがポジティブサンプルである場合、該サンプルマークパラメータが1に等しく、そうでない場合に0である。
【0044】
具体的に、エンティティリンキング初期モデルの損失関数は下記式1で示されてもよい。
【数1】
ここで、cosine(V
1,V
2)がV
1とV
2とのコサイン類似度を計算するものであり、V
mentionがサンプルエンティティメンションベクトルであり、V
eがサンプルエンティティグラフ畳み込みベクトルであり、yがサンプルマークパラメータである。
【0045】
ステップS303では、該損失関数に基づいてエンティティリンキング初期モデルをトレーニングする。
【0046】
トレーニングデータ(ポジティブネガティブサンプル対を含む)をエンティティリンキング初期モデルに入力してトレーニングし、且つ損失関数を最小化するように初期モデルパラメータを調整する。損失関数の値が予め設定された閾値よりも小さい場合、エンティティリンキングモデルトレーニングが完了し、且つ該モデルパラメータを記憶する。
【0047】
上記ステップS301~S303を経て、トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルをエンティティリンキング初期モデルに入力して、サンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを出力することにより、エンティティメンションサンプル及び対応する知識グラフエンティティサンプルに含まれるセマンティック情報をそれぞれ対応するベクトル表現に変換するのであり、該サンプルエンティティメンションベクトル、サンプルエンティティグラフ畳み込みベクトル、及び予め取得されたサンプルマークパラメータに基づいてエンティティリンキング初期モデルの損失関数を決定することにより、損失関数によってサンプルエンティティメンションベクトルとサンプルエンティティグラフ畳み込みベクトルとの類似度を測定するのであり、該損失関数に基づいてエンティティリンキング初期モデルをトレーニングすることにより、損失関数の最小値に対応するモデルパラメータを取得し、且つトレーニング済みのエンティティリンキングモデルを取得するのであり、問答シーンにおけるユーザー問題に基づく知識グラフエンティティのリンキング精度を向上させ、ユーザー問題に基づく解答精度を向上させる。
【0048】
いくつかの実施例では、エンティティリンキング初期モデルはテキスト埋め込みモジュール及びエンティティグラフネットワーク埋め込みモジュールを備え、
図4は本出願のいくつかの実施例に係るトレーニングデータポジティブネガティブサンプルに基づいてサンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを出力するフローチャートであり、
図4に示すように、該プロセスは下記ステップS401~S403を含む。
【0049】
ステップS401では、問題サンプル及び知識グラフエンティティサンプルをテキスト埋め込みモジュールに入力して、サンプルエンティティメンションベクトル及びサンプル問題ベクトルを出力し、該知識グラフエンティティサンプルが知識グラフエンティティポジティブサンプル及び知識グラフエンティティネガティブサンプルを含む。
【0050】
テキスト埋め込みモジュールはテキスト埋め込み方式で問題サンプルにおけるエンティティメンションサンプルを対応するサンプルエンティティメンションベクトルにマッピングするモデルであり、該モジュールは自然言語処理の異なるモデルと、異なるモデルの組合せとで構成されてもよく、例えば、CoVe、Transformer、BERT、robertaなどが挙げられる。テキスト埋め込みモジュールの入力は問題サンプル、エンティティメンションサンプル及び知識グラフエンティティサンプルを含み、エンティティメンションサンプルが問題サンプルにテキスト埋め込みモジュールを入力することを含む。問題サンプル及びエンティティメンションサンプルに対応して、テキスト埋め込みモジュールの出力はサンプルエンティティメンションベクトル及びサンプル問題ベクトルを含み、サンプル問題ベクトルとは問題サンプルがマッピングされる特徴付けベクトルを指す。
【0051】
ステップS402では、サンプル問題ベクトルに基づいてエンティティグラフネットワーク埋め込みモジュールにおけるエンティティサンプルベクトルのアテンション重みを取得する。
【0052】
エンティティグラフネットワーク埋め込みモジュールはエンティティグラフ埋め込み方式でエンティティグラフネットワークを対応する特徴付けベクトルにマッピングするモデルであり、該モジュールに使用されるモデルはGCN、deepWalk、SDNE、node2vecなどを含んでもよい。本実施例では、エンティティグラフネットワーク埋め込みモジュールは多層CA-GCNモジュールで構成され、且つアテンションメカニズムが追加され、該アテンションメカニズムは重み調整により知識グラフエンティティ隣接サブグラフサンプルにおける異なるエンティティ関係に異なる重みを与えることができる。該アテンション重みはテキスト埋め込みモジュールが出力するサンプル問題ベクトルにより取得されてもよく、それにより問題サンプルにおけるコンテキスト情報が知識グラフにおける異なるエンティティ関係の重要性に与える影響を反映する。
【0053】
具体的に、各CA-GCNモジュールは、その順伝播の公式が下記式2で示されてもよい。
【数2】
、
ここで、
は知識グラフエンティティ隣接サブグラフサンプルにおけるエンティティサンプルe
iの第
層でのベクトル表現を示し、
は活性化関数であり、Rは知識グラフのエンティティ関係集合を示し、N
iはエンティティサンプルe
iの隣接ノード集合を示し、
はエンティティサンプルe
iがエンティティ関係rによりリンキングする隣接ノード集合を示し、
はエンティティサンプルe
iがエンティティ関係rによりリンキングする隣接ノードの数であり、
はエンティティ関係rに対応する重み行列を示し、モデルのトレーニング可能なパラメータであり、
はノード自体でリンキングする重み行列を示し、モデルのトレーニング可能なパラメータであり、
は問題サンプルと知識グラフ情報とを融合したクロスアテンション行列であり、・は要素ごとの乗算を示す。
【0054】
クロスアテンション行列
はまず下記式3により計算されてもよい。
【数3】
ここで、
であり、
が問題サンプルに対応するベクトル表現であり、
が知識グラフエンティティ隣接サブグラフサンプルにおけるエンティティサンプルe
jの第
層でのベクトル表現を示す。
【0055】
【0056】
L層のCA-GCNモジュールを通過した後、エンティティeの第L層での出力
をそのグラフ畳み込みベクトルV
eとする。
【0057】
ステップS403では、知識グラフエンティティ隣接サブグラフサンプルをエンティティグラフネットワーク埋め込みモジュールに入力して、アテンション重みに基づいてサンプルエンティティグラフ畳み込みベクトルを出力する。
【0058】
エンティティグラフネットワーク埋め込みモジュールの入力は知識グラフエンティティ隣接サブグラフサンプルであり、該隣接サブグラフサンプルは知識グラフエンティティポジティブサンプル又はネガティブサンプルに対応する1ホップの隣接ノードからなる隣接サブグラフである。エンティティグラフネットワーク埋め込みモジュールの出力は該知識グラフエンティティ隣接サブグラフサンプルに対応するグラフ畳み込みベクトルである。
【0059】
上記ステップS401~S403を経て、問題サンプル及び知識グラフエンティティサンプルをテキスト埋め込みモジュールに入力して、サンプルエンティティメンションベクトル及びサンプル問題ベクトルを出力し、該知識グラフエンティティサンプルが知識グラフエンティティポジティブサンプル及び知識グラフエンティティネガティブサンプルを含むことにより、テキスト埋め込みモジュールによって問題サンプル及び知識グラフエンティティサンプルにおけるセマンティック情報を対応するベクトルにマッピングするのであり、サンプル問題ベクトルに基づいてエンティティグラフネットワーク埋め込みモジュールにおけるエンティティサンプルベクトルのアテンション重みを取得し、即ち問題サンプルにおけるコンテキスト情報により知識グラフエンティティ隣接サブグラフサンプルにおけるエンティティ関係の重要性を調整するのであり、知識グラフエンティティ隣接サブグラフサンプルをエンティティグラフネットワーク埋め込みモジュールに入力して、アテンション重みに基づいてサンプルエンティティグラフ畳み込みベクトルを出力することにより、サンプルエンティティグラフ畳み込みベクトルに知識グラフにおけるエンティティ関係をより正確に特徴付けさせるのであり、エンティティリンキングモデルのリンキング精度を向上させる。
【0060】
いくつかの実施例では、テキスト埋め込みモジュールはBERTモデルを備える。
図5は本出願のいくつかの実施例に係る問題サンプル及び知識グラフエンティティサンプルに基づいてサンプル問題ベクトルを取得するフローチャートであり、
図5に示すように、該プロセスは下記ステップS501~S502を含む。
【0061】
ステップS501では、所定フォーマットで問題サンプル、知識グラフエンティティサンプル、CLSフラグビット及びSEPフラグビットを繋ぎ合わせて、BERTモデルに入力する。
【0062】
BERTモデルはコンテキストに基づくテキスト埋め込みモデルであり、主な構造がTransformerである。CLSフラグビット及びSEPフラグビットはBERTモデルに入力された内容のセマンティック識別子であり、CLSフラグビットは入力された2つのセンテンスがコンテキスト関係を有するかどうかを示すためのものであるが、SEPフラグビットは2つのセンテンスを分割するための識別子である。
【0063】
具体的に、トレーニングデータ4元組<q,m,e,Ge>については、その中のq及びeを[CLS]q[SEP]eに合成し、次にバッグオブワードモデルによりそれを数値に変換してBERTモデルの入力としてもよい。即ち、BERTモデルはテキストにおける各文字を一次元ベクトル即ち文字ベクトルに変換し、また、モデル入力はテキストベクトル及び位置ベクトルを更に含む。BERTモデルは文字ベクトル、テキストベクトル及び位置ベクトルの総和をモデル入力とする。モデル出力は各文字にフルテキストのセマンティック情報が対応して融合した後のベクトル表現を入力することである。更に、既存のより汎用のセマンティック情報を利用するために、BERTモデルに更に事前トレーニング済みの中国語モデルパラメータをロードしてもよい。
【0064】
ステップS502では、該CLSフラグビットに対応するBERTモデルの第1出力ベクトルに基づいてサンプル問題ベクトルを決定する。
【0065】
BERTモデルの出力ベクトル及び入力ベクトルは1文字ごとに対応する。CLSフラグビットはモデル入力とされ、対応するBERTモデルの第1出力ベクトルはテキストのセマンティック表現ベクトルである。該ベクトルを問題サンプルに対応するベクトル表現Vqueryとしてもよく、該ベクトルはアテンションメカニズムの方式でエンティティグラフネットワーク埋め込みモジュールが隣接ノードの重要性を学習するように指導することができる。
【0066】
上記ステップS501~S502を経て、所定フォーマットで問題サンプル、知識グラフエンティティサンプル、CLSフラグビット及びSEPフラグビットを繋ぎ合わせて、BERTモデルに入力することにより、BERTモデルによって問題サンプル及び知識グラフエンティティサンプルのセマンティック情報を取得して、対応するベクトルにマッピングするのであり、該CLSフラグビットに対応するBERTモデルの第1出力ベクトルに基づいてサンプル問題ベクトルを決定することにより、該サンプル問題ベクトルを知識グラフエンティティ隣接サブグラフサンプルにおけるエンティティ関係のアテンション重みの調整に用いるのであり、エンティティリンキングモデルのトレーニング効果及びリンキング精度を向上させる。
【0067】
いくつかの実施例では、テキスト埋め込みモジュールは多層パーセプトロンモデルを更に備え、
図6は本出願のいくつかの実施例に係る問題サンプル及び知識グラフエンティティサンプルに基づいてサンプルエンティティメンションベクトルを取得するフローチャートであり、
図6に示すように、該プロセスは下記ステップS601~S602を含む。
【0068】
ステップS601では、エンティティメンションサンプルの開始位置に対応するBERTモデルの第2出力ベクトルと、エンティティメンションサンプルの終了位置に対応するBERTモデルの第3出力ベクトルとを取得する。
【0069】
エンティティメンションサンプルの開始位置はBERTモデルに入力された問題サンプルでのエンティティメンションサンプルの開始位置であり、エンティティメンションサンプルの終了位置はBERTモデルに入力された問題サンプルでのエンティティメンションサンプルの終了位置である。BERTモデルの入力及び出力が1文字ごとに対応するため、開始位置及び終了位置に対応する出力ベクトルも同じシーケンス位置にある。
【0070】
ステップS602では、第1出力ベクトル、第2出力ベクトル及び第3出力ベクトルを繋ぎ合わせて、多層パーセプトロンモデルに入力して、サンプルエンティティメンションベクトルを取得する。
【0071】
BERTモデルから出力された第1、第2及び第3出力ベクトルを多層パーセプトロンモデルに入力して、更に問題サンプル及びエンティティメンションサンプルに対応するベクトルを処理して、最終的にサンプルエンティティメンションベクトルを取得する。
【0072】
上記ステップS601~S602を経て、エンティティメンションサンプルの開始位置に対応するBERTモデルの第2出力ベクトルと、エンティティメンションサンプルの終了位置に対応するBERTモデルの第3出力ベクトルとを取得することにより、エンティティメンションサンプルの開始位置及び終了位置に対応するベクトルを選択して更なる処理を行うのであり、第1出力ベクトル、第2出力ベクトル及び第3出力ベクトルを繋ぎ合わせて、多層パーセプトロンモデルに入力して、サンプルエンティティメンションベクトルを取得することにより、サンプルエンティティメンションベクトルのセマンティック情報の特徴付け精度を向上させる。
【0073】
いくつかの実施例では、
図7は本出願のいくつかの実施例に係る知識グラフエンティティ隣接サブグラフサンプルに基づいてサンプルエンティティグラフ畳み込みベクトルを取得するフローチャートであり、
図7に示すように、該プロセスは下記ステップS701~S702を含む。
【0074】
ステップS701では、第1出力ベクトルに基づいて知識グラフエンティティ隣接サブグラフサンプルを初期化して、対応するエンティティサンプルベクトルを取得する。
【0075】
モデルのトレーニング過程において、まずベクトルの初期化により知識グラフエンティティ隣接サブグラフサンプルにおけるエンティティを対応する入力ベクトルに変換しなければ、エンティティグラフネットワーク埋め込みモジュールに入力してトレーニングすることができない。変換方式はランダムな初期化であってもよく、事前トレーニング後の単語ベクトル又はセンテンスベクトルを用いて初期化してもよい。本実施例では、第1出力ベクトルを用いてエンティティを初期化することにより、ベクトル初期化過程にエンティティメンションサンプルのセマンティック情報を追加してもよい。
【0076】
ステップS702では、エンティティサンプルベクトルをエンティティグラフネットワーク埋め込みモジュールに入力して、アテンション重みに基づいてサンプルエンティティグラフ畳み込みベクトルを出力する。
【0077】
上記ステップS701~S702を経て、第1出力ベクトルに基づいて知識グラフエンティティ隣接サブグラフサンプルを初期化して、対応するエンティティサンプルベクトルを取得することにより、ベクトル初期化過程にエンティティメンションサンプルのセマンティック情報を追加するのであり、エンティティサンプルベクトルをエンティティグラフネットワーク埋め込みモジュールに入力して、アテンション重みに基づいてサンプルエンティティグラフ畳み込みベクトルを出力することにより、エンティティメンションサンプルのベクトル表現と同じベクトル空間にあるグラフ畳み込みベクトルを取得するのであり、エンティティリンキングモデルの精度を向上させる。
【0078】
いくつかの実施例では、更にBERTモデルの構築プロセスに関する。所定フォーマットで問題サンプル、知識グラフエンティティサンプル、CLSフラグビット及びSEPフラグビットを繋ぎ合わせて、BERTモデルに入力する前に、BERTモデルの構築プロセスは下記ステップS11~S12を含む。
【0079】
ステップS11では、BERT初期モデルを事前トレーニングして、事前トレーニングモデルパラメータを取得する。
【0080】
BERTモデルの事前トレーニングとは、大量の中国語トレーニングデータによりBERT初期モデルをトレーニングし、事前トレーニング効果が予想される要件を満たす場合、事前トレーニングモデルパラメータを取得することを意味する。インターネット又は事前トレーニングモデルライブラリから事前トレーニング済みのモデルパラメータを直接取得してもよい。
【0081】
ステップS12では、事前トレーニングモデルパラメータに基づいてBERTモデルを構築する。
【0082】
事前トレーニングモデルパラメータを上記実施例のBERTモデルにロードし、該BERTモデルはBERT初期モデルの構造に基づいて直接取得されたもの、又は実際の必要に応じてBERT初期モデルを修正して取得されたものであってもよい。
【0083】
上記ステップS11~S12を経て、BERT初期モデルを事前トレーニングして、事前トレーニングモデルパラメータを取得することにより、その後でエンティティリンキングモデルをトレーニングするために必要な時間及び計算リソースを節約し、トレーニング効率を向上させるのであり、事前トレーニングモデルパラメータに基づいてBERTモデルを構築することにより、BERTモデルのトレーニング効果を改善する。
【0084】
以下、好適な実施例により本実施例を記述及び説明する。
図8は本好適な実施例に係るエンティティリンキングモデルの構造模式図である。
図8に示すように、本好適な実施例に係るエンティティリンキングモデルはテキスト埋め込みモジュール81及びエンティティグラフネットワーク埋め込みモジュール82を備え、テキスト埋め込みモジュール81がBERTモデル811及び多層パーセプトロン(MLP)812を含む。エンティティグラフネットワーク埋め込みモジュール82に複数のCA-GCNモジュールが含まれる。BERTモデル811の入力が問題サンプルq及び知識グラフエンティティサンプルeであり、且つCLSフラグビット及びSEPフラグビットとともに所定フォーマットで繋ぎ合わせる。問題サンプルqはTok1~TokNなどのN個の文字を含み、知識グラフエンティティサンプルはTok1~TokMなどのM個の文字を含む。BERTモデル811の出力は入力に1文字ごとに対応するベクトルであり、CLSフラグビット及びSEPフラグビットにそれぞれ対応するCベクトル及びSベクトルと、文字に対応するT1~TN、T1′~TM′などのベクトルとを含む。エンティティグラフネットワーク埋め込みモジュール82は入力が知識グラフエンティティ隣接サブグラフサンプルGeであり、出力がサンプルエンティティグラフ畳み込みベクトルVeである。
【0085】
図9は本好適な実施例に係る知識グラフのエンティティリンキング方法のフローチャートである。
図9に示すように、該プロセスは下記ステップS901~S914を含む。
【0086】
ステップS901では、ユーザー問題を収集し、従来のNERモデルに基づいてユーザー問題におけるエンティティメンションを取得して、エンティティメンションに対応する知識グラフエンティティを手動でラベリングし、ユーザー問題、エンティティメンション、知識グラフエンティティ及び知識グラフエンティティ隣接サブグラフを4元組に構成して、トレーニングデータのポジティブサンプルとし、
ステップS902では、知識グラフエンティティから知識グラフエンティティをランダムに抽出し、リンキングしている知識グラフエンティティをフィルタリングして、ユーザー問題、エンティティメンション及び知識グラフエンティティ隣接サブグラフとともに4元組に構成して、トレーニングデータのネガティブサンプルとし、
ステップS903では、トレーニングデータ4元組におけるユーザー問題と知識グラフエンティティとを[CLS]ユーザー問題[SEP]知識グラフエンティティに繋ぎ合わせて、バッグオブワードモデルによりそれを数値に変換してBERTモデルの入力とし、BERTモデルに事前トレーニング済みの中国語モデルパラメータをロードし、
ステップS904では、Bertが[CLS]位置で出力したベクトルと、エンティティメンション開始位置及び終了位置に対応する出力ベクトルとを繋ぎ合わせて、多層パーセプトロンに入力して、エンティティメンションのベクトル表現を取得し、
ステップS905では、Bertが[CLS]位置で出力したベクトルを知識グラフエンティティ隣接サブグラフにおけるエンティティの初期化ベクトルとして、エンティティを初期化して、エンティティグラフネットワーク埋め込みモジュールに入力し、
ステップS906では、Bertが[CLS]位置で出力したベクトルをユーザー問題のベクトル表現とし、
ステップS907では、ユーザー問題のベクトル表現及び知識グラフエンティティ隣接サブグラフにおけるエンティティのベクトル表現に基づいてユーザー問題と知識グラフ情報とを融合したクロスアテンション行列を計算し、
【数3】
ここで、
であり、
ステップS908では、クロスアテンション行列を正規化処理し、
となり、
ステップS909では、エンティティグラフネットワーク埋め込みモジュールにおける各CA-GCNモジュールは順伝播の公式に基づいてエンティティノードのベクトル表現を取得し、
【数2】
、
ここで、
はエンティティノードe
iの第
層でのベクトル表現を示し、
は活性化関数であり、Rは知識グラフの関係集合を示し、N
iはエンティティe
iの隣接ノード集合を示し、
はエンティティe
iが関係rによりリンキングする隣接ノード集合を示し、
はエンティティe
iが関係rによりリンキングする隣接ノードの数であり、
は関係rに対応する重み行列を示し、モデルのトレーニング可能なパラメータであり、
はノード自体でリンキングする重み行列を示し、モデルのトレーニング可能なパラメータである。・は要素ごとの乗算を示す。
【0087】
ステップS910では、L層のCA-GCNモジュールを通過した後、エンティティeの第L層での出力をそのグラフ畳み込みベクトルとし、
ステップS911では、エンティティメンションのベクトル表現及びグラフ畳み込みベクトル、サンプルマークパラメータに基づいて損失関数を取得し、損失関数に基づいてエンティティリンキング初期モデルをトレーニングし、
【数1】
ここで、cosine(V
1,V
2)がV
1とV
2とのコサイン類似度を計算するものであり、yがデータのポジティブネガティブサンプルマークであり、4元組データにおけるエンティティeとエンティティメンション(mention)とが1対のポジティブサンプルである場合に1であり、そうでない場合に0である。
【0088】
ステップS912では、損失関数の値がプリセット閾値範囲を満足する場合、トレーニングを停止して、エンティティリンキングモデルを取得し、且つモデルパラメータを記憶し、
ステップS913では、ユーザー入力を受信し、従来のNERモデルを利用してユーザー問題におけるエンティティメンションを取得し、従来のBM25アルゴリズムを利用してエンティティメンションの候補知識グラフエンティティ集合を取得し、それぞれ候補エンティティに対応する隣接サブグラフを取得して、4元組に構成してエンティティリンキングモデルの入力とし、
ステップS914では、エンティティリンキングモデルの出力に基づいてエンティティメンションのベクトル表現及び候補エンティティグラフ畳み込みベクトル表現集合を取得し、エンティティメンションのベクトル表現とのコサイン類似度が最も高い候補エンティティをリンキングするエンティティとして選択する。
【0089】
上記ステップS901~S914を経て、エンティティメンションサンプルに手動ラベリングによりリンキングする知識グラフエンティティをトレーニングデータポジティブサンプルとして用いて、エンティティポジティブサンプルを除去してからエンティティをトレーニングデータネガティブサンプルとしてランダムに抽出することにより、モデルトレーニングの有効性及び精度を向上させるのであり、BERTモデル及び多層パーセプトロンのテキストセマンティック情報の抽出の面での優位性及びCA-GCNモデルのエンティティ隣接グラフにおけるセマンティック情報の抽出の面での優位性を利用して、それぞれサンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを取得し、且つ損失関数によってそれらの類似度を測定することにより、問答シーンにおけるユーザー問題に基づく知識グラフエンティティのリンキング精度を向上させるのであり、サンプル問題ベクトルにより知識グラフエンティティ隣接サブグラフサンプルにおけるエンティティ関係の重要性を調整して、アテンション重みデータを生成し、アテンション重みに基づいてサンプルエンティティグラフ畳み込みベクトルを出力することにより、サンプルエンティティグラフ畳み込みベクトルに知識グラフにおけるエンティティ関係をより正確に特徴付けさせるのであり、Bertが[CLS]位置で出力したベクトルに基づいて隣接サブグラフサンプルを初期化して、エンティティメンションサンプルのベクトル表現と同じベクトル空間にあるグラフ畳み込みベクトルを取得することにより、エンティティリンキングモデルの精度を向上させるのであり、エンティティリンキングモデルによる各候補知識グラフエンティティとエンティティメンションのベクトル類似度との比較によって、エンティティメンションに最も類似する知識グラフエンティティをリンキング目標として取得することにより、問答シーンにおけるエンティティのリンキング効果を改善する。
【0090】
なお、上記プロセス又は図面のフローチャートに示されるステップは1組のコンピュータ実行可能な命令のコンピュータシステムにおいて実行されてもよく、且つフローチャートに論理順序を示すが、いくつかの場合にここの順序と異なる順序で表示又は記述するステップを実行してもよい。
【0091】
いくつかの実施例では、本出願は知識グラフのエンティティリンキング装置を更に提供し、該知識グラフのエンティティリンキング装置は上記実施例及び好適な実施形態を実現するためのものであり、既に説明したため、詳細な説明は省略する。以下に使用される用語「モジュール」、「ユニット」、「サブユニット」などは所定機能のソフトウェア及び/又はハードウェアの組合せを実現することができる。いくつかの実施例では、
図10は本実施例に係る知識グラフのエンティティリンキング装置のブロック図であり、
図10に示すように、該装置は、
問題サンプル、エンティティメンションサンプル、知識グラフエンティティポジティブサンプル及び知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータポジティブサンプルを取得するためのものであり、該エンティティメンションサンプルが問題サンプルに基づいて取得されたものであり、該知識グラフエンティティポジティブサンプルが該エンティティメンションサンプルの知識グラフにおけるラベリングエンティティに基づいて取得されたものであり、該知識グラフエンティティ隣接サブグラフサンプルが該知識グラフエンティティポジティブサンプルの知識グラフにおけるエンティティ関係に基づいて取得されたものである第1取得モジュール1101と、
問題サンプル、エンティティメンションサンプル、知識グラフエンティティネガティブサンプル及び対応する知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータネガティブサンプルを取得するためのものであり、該知識グラフエンティティネガティブサンプルが知識グラフにおける該エンティティメンションサンプルとラベリング関係を有しないエンティティに基づいてランダムに取得されたものである第2取得モジュール1102と、
トレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングして、エンティティリンキングモデルを取得するためのトレーニングモジュール1103と、
ユーザー問題、エンティティメンション、候補知識グラフエンティティ及び対応する知識グラフエンティティ隣接サブグラフをトレーニング済みのエンティティリンキングモデルに入力して、エンティティメンションにリンキングする目標知識グラフエンティティを決定するためのものであり、該エンティティメンションが該ユーザー問題に基づいて取得されたものであり、候補知識グラフエンティティが該エンティティメンションに基づいて取得されたものであり、知識グラフエンティティ隣接サブグラフが候補知識グラフエンティティの知識グラフにおけるエンティティ関係に基づいて取得されたものである決定モジュール1104と、を備える。
【0092】
本実施例に係る知識グラフのエンティティリンキング装置によれば、第1取得モジュール1101は問題サンプル、エンティティメンションサンプル、知識グラフエンティティポジティブサンプル及び知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータポジティブサンプルを取得し、該エンティティメンションサンプルに手動ラベリングによりリンキングする知識グラフエンティティをポジティブトレーニングのサンプルデータとして用いることにより、トレーニングデータポジティブサンプルの精度及びトレーニングの有効性を確保し、第2取得モジュール1102は問題サンプル、エンティティメンションサンプル、知識グラフエンティティネガティブサンプル及び対応する知識グラフエンティティ隣接サブグラフサンプルに基づいてトレーニングデータネガティブサンプルを取得し、即ち知識グラフにおけるエンティティポジティブサンプルを除去してからエンティティを知識グラフエンティティネガティブサンプルとしてランダムに抽出することにより、トレーニングデータネガティブサンプルのランダム性及びトレーニングの有効性を向上させ、トレーニングモジュール1103はトレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルに基づいてエンティティリンキング初期モデルをトレーニングして、エンティティリンキングモデルを取得することにより、エンティティリンキングモデルのトレーニングデータの精度を向上させ、決定モジュール1104はユーザー問題、エンティティメンション、候補知識グラフエンティティ及び対応する知識グラフエンティティ隣接サブグラフをトレーニング済みのエンティティリンキングモデルに入力して、エンティティメンションにリンキングする目標知識グラフエンティティを決定し、エンティティメンションに最も類似する知識グラフエンティティをリンキング目標として取得することにより、エンティティリンキングモデルのリンキング効果を改善し、これにより、関連技術における問答シーンにおいてエンティティ整合性モデルの効果が悪くてエンティティリンキングの精度が比較的低いという問題を解決した。
【0093】
いくつかの実施例では、トレーニングモジュールは入力サブモジュール、決定サブモジュール及びトレーニングサブモジュールを含み、入力サブモジュールがトレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルをエンティティリンキング初期モデルに入力して、サンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを出力するためのものであり、決定サブモジュールがサンプルエンティティメンションベクトル、サンプルエンティティグラフ畳み込みベクトル、及び予め取得されたサンプルマークパラメータに基づいてエンティティリンキング初期モデルの損失関数を決定するためのものであり、トレーニングサブモジュールが損失関数に基づいてエンティティリンキング初期モデルをトレーニングするためのものである。
【0094】
本実施例に係る知識グラフのエンティティリンキング装置によれば、入力サブモジュールはトレーニングデータポジティブサンプル及びトレーニングデータネガティブサンプルをエンティティリンキング初期モデルに入力して、サンプルエンティティメンションベクトル及びサンプルエンティティグラフ畳み込みベクトルを出力することにより、エンティティメンションサンプル及び対応する知識グラフエンティティサンプルに含まれるセマンティック情報をそれぞれ対応するベクトル表現に変換し、決定サブモジュールは該サンプルエンティティメンションベクトル、サンプルエンティティグラフ畳み込みベクトル、及び予め取得されたサンプルマークパラメータに基づいてエンティティリンキング初期モデルの損失関数を決定することにより、損失関数によってサンプルエンティティメンションベクトルとサンプルエンティティグラフ畳み込みベクトルとの類似度を測定し、トレーニングサブモジュールは該損失関数に基づいてエンティティリンキング初期モデルをトレーニングすることにより、損失関数の最小値に対応するモデルパラメータを取得し、且つトレーニング済みのエンティティリンキングモデルを取得し、これにより、問答シーンにおけるユーザー問題に基づく知識グラフエンティティのリンキング精度を向上させ、ユーザー問題に基づく解答精度を向上させる。
【0095】
いくつかの実施例では、エンティティリンキング初期モデルはテキスト埋め込みモジュール及びエンティティグラフネットワーク埋め込みモジュールを備え、入力サブモジュールは第1入力ユニット、取得ユニット及び第2入力ユニットを含み、第1入力ユニットが問題サンプル及び知識グラフエンティティサンプルをテキスト埋め込みモジュールに入力して、サンプルエンティティメンションベクトル及びサンプル問題ベクトルを出力するためのものであり、該知識グラフエンティティサンプルが知識グラフエンティティポジティブサンプル及び知識グラフエンティティネガティブサンプルを含み、取得ユニットが該サンプル問題ベクトルに基づいてエンティティグラフネットワーク埋め込みモジュールにおけるエンティティサンプルベクトルのアテンション重みを取得するためのものであり、第2入力ユニットが知識グラフエンティティ隣接サブグラフサンプルをエンティティグラフネットワーク埋め込みモジュールに入力して、アテンション重みに基づいてサンプルエンティティグラフ畳み込みベクトルを出力するためのものである。
【0096】
本実施例に係る知識グラフのエンティティリンキング装置によれば、第1入力ユニットは問題サンプル及び知識グラフエンティティサンプルをテキスト埋め込みモジュールに入力して、サンプルエンティティメンションベクトル及びサンプル問題ベクトルを出力し、該知識グラフエンティティサンプルが知識グラフエンティティポジティブサンプル及び知識グラフエンティティネガティブサンプルを含むことにより、テキスト埋め込みモジュールによって問題サンプル及び知識グラフエンティティサンプルにおけるセマンティック情報を対応するベクトルにマッピングし、取得ユニットはサンプル問題ベクトルに基づいてエンティティグラフネットワーク埋め込みモジュールにおけるエンティティサンプルベクトルのアテンション重みを取得し、即ち問題サンプルにおけるコンテキスト情報により知識グラフエンティティ隣接サブグラフサンプルにおけるエンティティ関係の重要性を調整し、第2入力ユニットは知識グラフエンティティ隣接サブグラフサンプルをエンティティグラフネットワーク埋め込みモジュールに入力して、アテンション重みに基づいてサンプルエンティティグラフ畳み込みベクトルを出力することにより、サンプルエンティティグラフ畳み込みベクトルに知識グラフにおけるエンティティ関係をより正確に特徴付けさせ、これにより、エンティティリンキングモデルのリンキング精度を向上させる。
【0097】
いくつかの実施例では、テキスト埋め込みモジュールはBERTモデルを備え、第1入力ユニットは第1入力サブユニット及び決定サブユニットを含み、第1入力サブユニットが所定フォーマットで問題サンプル、知識グラフエンティティサンプル、CLSフラグビット及びSEPフラグビットを繋ぎ合わせて、BERTモデルに入力するためのものであり、決定サブユニットがCLSフラグビットに対応するBERTモデルの第1出力ベクトルに基づいてサンプル問題ベクトルを決定するためのものである。
【0098】
本実施例に係る知識グラフのエンティティリンキング装置によれば、第1入力サブユニットは所定フォーマットで問題サンプル、知識グラフエンティティサンプル、CLSフラグビット及びSEPフラグビットを繋ぎ合わせて、BERTモデルに入力することにより、BERTモデルによって問題サンプル及び知識グラフエンティティサンプルのセマンティック情報を取得して、対応するベクトルにマッピングし、決定サブユニットは該CLSフラグビットに対応するBERTモデルの第1出力ベクトルに基づいてサンプル問題ベクトルを決定することにより、該サンプル問題ベクトルを知識グラフエンティティ隣接サブグラフサンプルにおけるエンティティ関係のアテンション重みの調整に用い、これにより、エンティティリンキングモデルのトレーニング効果及びリンキング精度を向上させる。
【0099】
いくつかの実施例では、テキスト埋め込みモジュールは多層パーセプトロンモデルを更に備え、第1入力ユニットは取得サブユニット及び第2入力サブユニットを更に含み、取得サブユニットがエンティティメンションサンプルの開始位置に対応するBERTモデルの第2出力ベクトルと、エンティティメンションサンプルの終了位置に対応するBERTモデルの第3出力ベクトルとを取得するためのものであり、第2入力サブユニットが第1出力ベクトル、第2出力ベクトル及び第3出力ベクトルを繋ぎ合わせて、多層パーセプトロンモデルに入力して、サンプルエンティティメンションベクトルを取得するためのものである。
【0100】
本実施例に係る知識グラフのエンティティリンキング装置によれば、取得サブユニットはエンティティメンションサンプルの開始位置に対応するBERTモデルの第2出力ベクトルと、エンティティメンションサンプルの終了位置に対応するBERTモデルの第3出力ベクトルとを取得することにより、エンティティメンションサンプルの開始位置及び終了位置に対応するベクトルを選択して更なる処理を行い、第2入力サブユニットは第1出力ベクトル、第2出力ベクトル及び第3出力ベクトルを繋ぎ合わせて、多層パーセプトロンモデルに入力して、サンプルエンティティメンションベクトルを取得することにより、サンプルエンティティメンションベクトルのセマンティック情報の特徴付け精度を向上させる。
【0101】
いくつかの実施例では、第2入力ユニットは初期化サブユニット及び第3入力サブユニットを含み、初期化サブユニットが第1出力ベクトルに基づいて知識グラフエンティティ隣接サブグラフサンプルを初期化して、対応するエンティティサンプルベクトルを取得するためのものであり、第3入力サブユニットがエンティティサンプルベクトルをエンティティグラフネットワーク埋め込みモジュールに入力して、アテンション重みに基づいてサンプルエンティティグラフ畳み込みベクトルを出力するためのものである。
【0102】
本実施例に係る知識グラフのエンティティリンキング装置によれば、初期化サブユニットは第1出力ベクトルに基づいて知識グラフエンティティ隣接サブグラフサンプルを初期化して、対応するエンティティサンプルベクトルを取得することにより、ベクトル初期化過程にエンティティメンションサンプルのセマンティック情報を追加し、第3入力サブユニットはエンティティサンプルベクトルをエンティティグラフネットワーク埋め込みモジュールに入力して、アテンション重みに基づいてサンプルエンティティグラフ畳み込みベクトルを出力することにより、エンティティメンションサンプルのベクトル表現と同じベクトル空間にあるグラフ畳み込みベクトルを取得し、これにより、エンティティリンキングモデルの精度を向上させる。
【0103】
いくつかの実施例では、知識グラフのエンティティリンキング装置は第3取得モジュール及び構築モジュールを更に備え、第3取得モジュールがBERT初期モデルを事前トレーニングして、事前トレーニングモデルパラメータを取得するためのものであり、構築モジュールが事前トレーニングモデルパラメータに基づいてBERTモデルを構築するためのものである。
【0104】
本実施例に係る知識グラフのエンティティリンキング装置によれば、第3取得モジュールはBERT初期モデルを事前トレーニングして、事前トレーニングモデルパラメータを取得することにより、その後でエンティティリンキングモデルをトレーニングするために必要な時間及び計算リソースを節約し、トレーニング効率を向上させ、構築モジュールは事前トレーニングモデルパラメータに基づいてBERTモデルを構築することにより、BERTモデルのトレーニング効果を改善する。
【0105】
いくつかの実施例では、本出願はメモリ及びプロセッサを備えるコンピュータ装置を更に提供し、該メモリにコンピュータプログラムが記憶され、該プロセッサは該コンピュータプログラムを実行することにより上記実施例に係る知識グラフのエンティティリンキング方法を実行するように設定される。
【0106】
選択肢として、該コンピュータ装置は伝送装置及び入出力装置を更に備えてもよく、該伝送装置が該プロセッサに接続され、該入出力装置が該プロセッサに接続される。
【0107】
また、上記実施例に係る知識グラフのエンティティリンキング方法と組み合わせて、本実施例は該方法を実行するための記憶媒体を更に提供することができる。該記憶媒体にプログラムが記憶され、該プログラムがプロセッサにより実行されるとき、上記実施例のいずれか1つの知識グラフのエンティティリンキング方法を実行する。
【0108】
なお、本実施例の具体例は上記実施例及び代替実施形態に記述された例を参照してもよく、本実施例では詳細な説明は省略する。
【0109】
理解すべきことは、ここに記述された具体的な実施例はこの応用を解釈するためのものに過ぎず、それを限定するためのものではない。本出願に係る実施例に基づいて、当業者が創造的な労力を要することなく取得した全ての他の実施例は、いずれも本出願の保護範囲に属する。
【0110】
明らかに、図面は本出願の例又は実施例の一部に過ぎず、当業者であれば、創造的な労力を要することなく、これらの図面に基づいて本出願を他の類似の状況に応用することもできる。また、理解されるように、この開発過程において行う仕事は複雑で長期間かかる可能性があるが、当業者が本出願に開示される技術的内容に基づいて行った設計、製造又は生産などの変更の一部は通常の技術手段に過ぎず、本出願に開示される内容が不足すると見なされるべきではない。
【0111】
「実施例」の単語は、本出願では、実施例を参照して記述した具体的な特徴、構造又は特性が本出願の少なくとも1つの実施例に含まれてもよいことを意味する。該連語が明細書の各位置に出現することとは、必ずしも同じ実施例を意味するのではなく、他の実施例と互いに排斥して独立性を有し又は選択可能なものであることを意味するのでもない。当業者であれば明確又は暗黙的に理解できることは、衝突しない限り、本出願に記述された実施例は他の実施例と組み合わせられることができる。
【0112】
以上に記載の実施例は本出願のいくつかの実施形態を表現するものだけであり、その記述がより具体的及び詳細なものであるが、特許の保護範囲を制限するものと理解されるべきではない。指摘すべきことは、当業者であれば、本出願の構想を逸脱せずに、更に種々の変形及び改良を行うことができるが、これらはいずれも本出願の保護範囲に属する。従って、本出願の保護範囲は添付の特許請求の範囲に準じるべきである。