(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-08-18
(45)【発行日】2022-08-26
(54)【発明の名称】データセット処理方法、装置、電子機器及び記憶媒体
(51)【国際特許分類】
G06F 16/33 20190101AFI20220819BHJP
【FI】
G06F16/33
(21)【出願番号】P 2020216062
(22)【出願日】2020-12-25
【審査請求日】2020-12-25
(31)【優先権主張番号】202010430339.0
(32)【優先日】2020-05-20
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】100118913
【氏名又は名称】上田 邦生
(74)【代理人】
【識別番号】100142789
【氏名又は名称】柳 順一郎
(74)【代理人】
【識別番号】100163050
【氏名又は名称】小栗 眞由美
(74)【代理人】
【識別番号】100201466
【氏名又は名称】竹内 邦彦
(72)【発明者】
【氏名】フ―, ヂェ
(72)【発明者】
【氏名】ポン, チョン
(72)【発明者】
【氏名】ルオ, シェーフォン
【審査官】鹿野 博嗣
(56)【参考文献】
【文献】特開2019-082841(JP,A)
【文献】特開2019-008779(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/33
(57)【特許請求の範囲】
【請求項1】
第1の取得モジュールが、ターゲットユーザから提供された複数のテキストブロックを取得し、各テキストブロックには、類似する意味を有する複数のテキストが含まれ、
第2の取得モジュールが、前記複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得するステップと、
第3の取得モジュールが、前記第1のテキストセットから前記ターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得するステップと、
第1の生成モジュールが、前記第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいて前記ターゲットテキストのネガティブサンプルセットを生成するステップと、
第2の生成モジュールが、前記ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいて前記ターゲットテキストのポジティブサンプルセットを生成するステップと、
第3の生成モジュールが、前記ネガティブサンプルセットと前記ポジティブサンプルセットに基づいて前記ターゲットユーザのデータセットを生成し、
認識モジュールが、前記データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識するステップと、を含むことを特徴とする、データセット処理方法。
【請求項2】
前記複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得するステップは、
前記第2の取得モジュールが、前記ターゲットテキストに対してワードセグメンテーション処理を実行して第1のワードセグメンテーションセットを生成し、前記複数のテキストブロック内の各テキストに対してワードセグメンテーション処理を実行して複数の第2のワードセグメンテーションセットを生成するステップと、
前記第2の取得モジュールが、前記第1のワードセグメンテーションセットを各前記第2のワードセグメンテーションセットと比較し、前記第1のワードセグメンテーションセットと各前記第2のワードセグメンテーションセットの間のワードセグメンテーション重複度を取得するステップと、
前記第2の取得モジュールが、前記第1のワードセグメンテーションセットと各前記第2のワードセグメンテーションセットの間のワードセグメンテーション重複度をプリセット閾値と比較し、前記閾値より大きいワードセグメンテーション重複度に対応する第2のワードセグメンテーションセットに基づいて前記第1のテキストセットを生成するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項3】
前記複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得するステップは、
前記第2の取得モジュールが、前記ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、前記ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルをプリセットトレーニング言語表現モデルに入力してターゲットセンテンスベクトルを得るステップと、
前記第2の取得モジュールが、前記複数のテキストブロック内の各テキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、前記各テキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを前記プリセットトレーニング言語表現モデルに入力して各テキストに対応するセンテンスベクトルを得るステップと、
前記第2の取得モジュールが、前記ターゲットセンテンスベクトルと前記各テキストに対応するセンテンスベクトルの間のコサイン類似度を計算するステップと、
前記第2の取得モジュールが、前記コサイン類似度をプリセットコサイン閾値と比較し、前記プリセットコサイン閾値より大きいテキストに基づいて前記第1のテキストセットを生成するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項4】
前記第1のテキストセットから前記ターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得する前に、
第4の取得モジュールが、前記第1のテキストセットのテキスト数を取得し、前記テキスト数がプリセット数閾値より大きいか否かを判断するステップと、
前記テキスト数が前記プリセット数閾値より大きい場合、前記テキスト数が前記数閾値と等しくなるように、
削除モジュールが、前記数閾値に応じて前記第1のテキストセット内のテキストを削除するステップと、をさらに含むことを特徴とする、請求項1に記載の方法。
【請求項5】
前記第1のテキストセットから前記ターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得する前記ステップは、
前記第3の取得モジュールが、前記ターゲットテキストに対応するブロック識別子を取得するステップと、
前記第3の取得モジュールが、前記第1のテキストセット内の各テキストが属するブロック識別子を取得するステップと、
前記第3の取得モジュールが、前記各テキストが属するブロック識別子を前記ターゲットテキストに対応するブロック識別子と比較し、ブロック識別子が一致しないテキストに基づいて前記第2のテキストセットを生成するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項6】
前記第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいて前記ターゲットテキストのネガティブサンプルセットを生成する前記ステップは、
前記第1の生成モジュールが、前記第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツを取得するステップと、
前記第1の生成モジュールが、各候補テキストブロック内の複数のテキストを組み合わせて第1のネガティブサンプルセットを生成するステップと、
前記第1の生成モジュールが、異なる候補テキストブロック内の複数のテキストを組み合わせて第2のネガティブサンプルセットを生成するステップと、
前記第1の生成モジュールが、前記第1のネガティブサンプルセットと前記第2のネガティブサンプルセットに基づいて前記ターゲットテキストのネガティブサンプルセットを生成するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項7】
前記ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいて前記ターゲットテキストのポジティブサンプルセットを生成する前記ステップは、
前記第2の生成モジュールが、前記ターゲットテキストが属するターゲットテキストブロックのコンテンツを取得するステップと、
前記第2の生成モジュールが、前記ターゲットテキストブロック内の複数のテキストを組み合わせて前記ターゲットテキストのポジティブサンプルセットを生成するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項8】
前記ターゲットユーザは複数のサブユーザを含み、
ターゲットユーザから提供された複数のテキストブロックを取得する前記ステップは、
前記第1の取得モジュールが、各サブユーザから提供された複数のテキストブロックを取得するステップを含み、
前記第1の取得モジュールが、前記ネガティブサンプルセットと前記ポジティブサンプルセットに基づいて前記ターゲットユーザのデータセットを生成する前記ステップは、
前記第1の取得モジュールが、前記ネガティブサンプルセットと前記ポジティブサンプルセットに基づいて前記各サブユーザに対応するサブデータセットを生成するステップと、
前記第1の取得モジュールが、前記各サブユーザに対応するサブデータセットを組み合わせて候補データセットを生成するステップと、
前記第1の取得モジュールが、プリセット重複排除戦略に従って前記候補データセットを重複排除して前記ターゲットユーザのデータセットを生成するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項9】
前記データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識する前記ステップは、
前記認識モジュールが、第1のクエリセンテンス及び第2のクエリセンテンスを取得するステップと、
前記認識モジュールが、前記第1のクエリセンテンスをコードして第1のクエリベクトルを生成するステップと、
前記認識モジュールが、前記第2のクエリセンテンスをコードして第2のクエリベクトルを生成するステップと、
前記認識モジュールが、前記第1のクエリベクトルと前記第2のクエリベクトルに前記マッチングモデルを入力してマッチングカテゴリを出力し、前記マッチングカテゴリに応じて前記第1のクエリセンテンスと前記第2のクエリセンテンスのテキスト類似度を決定するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項10】
前記データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識する前記ステップは、
前記認識モジュールが、第1のクエリセンテンス及び第2のクエリセンテンスを取得するステップと、
前記認識モジュールが、前記第1のクエリセンテンスと前記第2のクエリセンテンスを前記マッチングモデルに入力してセンテンスを整列するステップと、
前記認識モジュールが、整列結果に基づいて前記第1のクエリセンテンスと前記第2のクエリセンテンスのテキスト類似度を決定するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項11】
ターゲットユーザから提供された複数のテキストブロックを取得することに用いられる第1の取得モジュールであって、各テキストブロックには、類似する意味を有する複数のテキストが含まれる第1の取得モジュールと、
前記複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得することに用いられる第2の取得モジュールと、
前記第1のテキストセットから前記ターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得することに用いられる第3の取得モジュールと、
前記第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいて前記ターゲットテキストのネガティブサンプルセットを生成することに用いられる第1の生成モジュールと、
前記ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいて前記ターゲットテキストのポジティブサンプルセットを生成することに用いられる第2の生成モジュールと、
前記ネガティブサンプルセットと前記ポジティブサンプルセットに基づいて前記ターゲットユーザのデータセットを生成することに用いられる第3の生成モジュールと、
前記データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識することに用いられる認識モジュールと、を含むことを特徴とする、データセット処理装置。
【請求項12】
前記第2の取得モジュールは、
前記ターゲットテキストに対してワードセグメンテーション処理を実行して第1のワードセグメンテーションセットを生成し、前記複数のテキストブロック内の各テキストに対してワードセグメンテーション処理を実行して複数の第2のワードセグメンテーションセットを生成することと、
前記第1のワードセグメンテーションセットを各前記第2のワードセグメンテーションセットと比較し、前記第1のワードセグメンテーションセットと各前記第2のワードセグメンテーションセットの間のワードセグメンテーション重複度を取得することと、
前記第1のワードセグメンテーションセットと各前記第2のワードセグメンテーションセットの間のワードセグメンテーション重複度をプリセット閾値と比較し、前記閾値より大きいワードセグメンテーション重複度に対応する第2のワードセグメンテーションセットに基づいて前記第1のテキストセットを生成することと、に用いられることを特徴とする、請求項11に記載の装置。
【請求項13】
前記第2の取得モジュールは、
前記ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、前記ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルをプリセットトレーニング言語表現モデルに入力してターゲットセンテンスベクトルを得ることと、
前記複数のテキストブロック内の各テキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、前記各テキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを前記プリセットトレーニング言語表現モデルに入力して各テキストに対応するセンテンスベクトルを得ることと、
前記ターゲットセンテンスベクトルと前記各テキストに対応するセンテンスベクトルの間のコサイン類似度を計算することと、
前記コサイン類似度をプリセットコサイン閾値と比較し、前記プリセットコサイン閾値より大きいテキストに基づいて前記第1のテキストセットを生成することと、に用いられることを特徴とする、請求項11に記載の装置。
【請求項14】
前記第1のテキストセットのテキスト数を取得し、前記テキスト数がプリセット数閾値より大きいか否かを判断することに用いられる第4の取得モジュールと、
前記テキスト数が前記プリセット数閾値より大きい場合、前記テキスト数が前記数閾値と等しくなるように、前記数閾値に応じて前記第1のテキストセット内のテキストを削除することに用いられる削除モジュールと、をさらに含むことを特徴とする、請求項11に記載の装置。
【請求項15】
前記第3の取得モジュールは、
前記ターゲットテキストに対応するブロック識別子を取得することと、
前記第1のテキストセット内の各テキストが属するブロック識別子を取得することと、
前記各テキストが属するブロック識別子を前記ターゲットテキストに対応するブロック識別子と比較し、ブロック識別子が一致しないテキストに基づいて前記第2のテキストセットを生成することと、に用いられることを特徴とする、請求項11に記載の装置。
【請求項16】
前記第1の生成モジュールは、
前記第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツを取得することと、
各候補テキストブロック内の複数のテキストを組み合わせて第1のネガティブサンプルセットを生成することと、
異なる候補テキストブロック内の複数のテキストを組み合わせて第2のネガティブサンプルセットを生成することと、
前記第1のネガティブサンプルセットと前記第2のネガティブサンプルセットに基づいて前記ターゲットテキストのネガティブサンプルセットを生成することと、に用いられることを特徴とする、請求項11に記載の装置。
【請求項17】
前記第2の生成モジュールは、
前記ターゲットテキストが属するターゲットテキストブロックのコンテンツを取得することと、
前記ターゲットテキストブロック内の複数のテキストを組み合わせて前記ターゲットテキストのポジティブサンプルセットを生成することと、に用いられることを特徴とする、請求項11に記載の装置。
【請求項18】
前記ターゲットユーザは複数のサブユーザを含み、
前記第1の取得モジュールは、
各サブユーザから提供された複数のテキストブロックを取得することに用いられ、
前記第3の生成モジュールは、
前記ネガティブサンプルセットと前記ポジティブサンプルセットに基づいて前記各サブユーザに対応するサブデータセットを生成することと、
前記各サブユーザに対応するサブデータセットを組み合わせて候補データセットを生成することと、
プリセット重複排除戦略に従って前記候補データセットを重複排除して前記ターゲットユーザのデータセットを生成することと、に用いられることを特徴とする、請求項11に記載の装置。
【請求項19】
前記認識モジュールは、
第1のクエリセンテンス及び第2のクエリセンテンスを取得することと、
前記第1のクエリセンテンスをコードして第1のクエリベクトルを生成することと、
前記第2のクエリセンテンスをコードして第2のクエリベクトルを生成することと、
前記第1のクエリベクトルと前記第2のクエリベクトルに前記マッチングモデルを入力してマッチングカテゴリを出力し、前記マッチングカテゴリに応じて前記第1のクエリセンテンスと前記第2のクエリセンテンスのテキスト類似度を決定することと、に用いられることを特徴とする、請求項11に記載の装置。
【請求項20】
前記認識モジュールは、
第1のクエリセンテンス及び第2のクエリセンテンスを取得することと、
前記第1のクエリセンテンスと前記第2のクエリセンテンスを前記マッチングモデルに入力してセンテンスを整列することと、
整列結果に基づいて前記第1のクエリセンテンスと前記第2のクエリセンテンスのテキスト類似度を決定することと、に用いられることを特徴とする、請求項11に記載の装置。
【請求項21】
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信接続されるメモリと、を含み、
前記メモリには、前記少なくとも1つのプロセッサによって実行可能なコマンドが記憶され、前記コマンドが前記少なくとも1つのプロセッサによって実行される場合、前記少なくとも1つのプロセッサが請求項1から10のいずれかに記載のデータセット処理方法を実行することを特徴とする、電子機器。
【請求項22】
コンピュータ
プログラムが記憶された非一時的なコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ
プログラムが
コンピュータによって実行される場合、請求項1から10のいずれかに記載のデータセット処理方法が
前記コンピュータによって実行されることを特徴とする、非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項23】
コンピュータプログラムであって、
前記コンピュータプログラムにおける命令が
コンピュータによって実行された場合に、請求項1から10のいずれかに記載のデータセット処理方法が
前記コンピュータによって実行されることを特徴とする、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本願はデータ処理分野の自然言語処理分野に関し、特にデータセット処理方法、装置、電子機器及び記憶媒体に関する。
【背景技術】
【0002】
通常、ユーザがクエリセンテンスを入力し、検索システムを用いてデータベース内でいくつかの類似する問題を検索すると、これらの候補項をより正確で、柔軟なモデルで再ソートすることで、最終的な解答を得る。
【0003】
上記再ソートのプロセスでは、類似度マッチングモデルにより2つのテキスト間の意味的な類似度を計算する。例えば、ユーザが「クレジットカードを申請したい」というクエリセンテンスを入力すると、類似度マッチングモデルは候補項から「クレジットカードを申請するにはどうすればよいか」を的確にマッチングする必要があるため、類似度マッチングモデルを生成するためには大規模で高品質なトレーニングデータが必要となる。
【0004】
関連技術では、トレーニングデータセットのネガティブサンプルとして異なる意味を有するテキストをランダムに選択することもある。しかし、生成されたネガティブサンプルの方式は比較的簡単であり、不正確な場合がある。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本願はデータセット処理方法、装置、電子機器及び記憶媒体を提供する。
【課題を解決するための手段】
【0006】
第1の態様にて提供されるデータセット処理方法は、ターゲットユーザから提供された複数のテキストブロックを取得し、ただし、各テキストブロックには、類似する意味を有する複数のテキストが含まれ、前記複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得するステップと、前記第1のテキストセットから前記ターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得するステップと、前記第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいて前記ターゲットテキストのネガティブサンプルセットを生成するステップと、前記ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいて前記ターゲットテキストのポジティブサンプルセットを生成するステップと、前記ネガティブサンプルセットと前記ポジティブサンプルセットに基づいて前記ターゲットユーザのデータセットを生成し、前記データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識するステップと、を含む。
【0007】
第2の態様にて提供されるデータセット処理装置は、ターゲットユーザから提供された複数のテキストブロックを取得することに用いられ、ただし、各テキストブロックには、類似する意味を有する複数のテキストが含まれる第1の取得モジュールと、前記複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得することに用いられる第2の取得モジュールと、前記第1のテキストセットから前記ターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得することに用いられる第3の取得モジュールと、前記第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいて前記ターゲットテキストのネガティブサンプルセットを生成することに用いられる第1の生成モジュールと、前記ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいて前記ターゲットテキストのポジティブサンプルセットを生成することに用いられる第2の生成モジュールと、前記ネガティブサンプルセットと前記ポジティブサンプルセットに基づいて前記ターゲットユーザのデータセットを生成することに用いられる第3の生成モジュールと、前記データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識することに用いられる認識モジュールと、を含む。
【0008】
本願の第3の態様の実施例にて提供される電子機器は、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサに通信接続されるメモリと、を含み、前記メモリには、前記少なくとも1つのプロセッサによって実行可能なコマンドが記憶され、前記コマンドが前記少なくとも1つのプロセッサによって実行される場合、前記少なくとも1つのプロセッサが第1の態様の実施例に記載のデータセット処理方法を実行する。
【0009】
本願の第4の態様の実施例は、コンピュータコマンドが記憶された非一時的なコンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータコマンドが実行される場合、第1の態様の実施例に記載のデータセット処理方法が実行される。
本願の第5の態様の実施例は、コンピュータプログラムをさらに提供し、前記コンピュータプログラムにおける命令が実行される場合に、第1の態様の実施例に記載のデータセット処理方法が実行される。
【発明の効果】
【0010】
上記の出願における一実施例は次の利点又は有益な効果を有し、ターゲットユーザから提供された複数のテキストブロックを取得する。各テキストブロックには、類似する意味を有する複数のテキストが含まれ、複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得し、第1のテキストセットからターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得し、第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいてターゲットテキストのネガティブサンプルセットを生成し、ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいてターゲットテキストのポジティブサンプルセットを生成し、ネガティブサンプルセットとポジティブサンプルセットに基づいてターゲットユーザのデータセットを生成し、データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識する。これにより、ランダムサンプリングにおける偽サンプル及びデータが比較的簡単であるという技術的問題を回避し、類似マッチング条件によってテキストセットをマッチングした後、さらにポジティブサンプルセットとネガティブサンプルセットを取得してデータセットを生成するので、データセットの有効性を向上させ、さらにマッチングモデルのロバスト性を向上させる。
【0011】
このセクションに記載されている内容は本開示の実施例のキー特徴又は重要な特徴を特定することを意図するものでも、本開示の範囲を限定することを意図するものでもないことを理解されたい。本開示の他の特徴は、以下の説明によって容易に理解されるであろう。
【図面の簡単な説明】
【0012】
図面は本願をよりよく理解することに用いられ、本願を制限するものではない。
【
図1】本願の第1の実施例にて提供されるデータセット処理方法のフローチャートである。
【
図2】本願の実施例にて提供されるテキストブロックの例示的な図である。
【
図3】本願の第2の実施例にて提供されるデータセット処理方法のフローチャートである。
【
図4】本願の第3の実施例にて提供されるデータセット処理方法のフローチャートである。
【
図5】本願の第4の実施例にて提供されるデータセット処理方法のフローチャートである。
【
図6】本願の第5の実施例にて提供されるデータセット処理方法のフローチャートである。
【
図7】本願の第6の実施例にて提供されるデータセット処理装置の構造概略図である。
【
図8】本願の第7の実施例にて提供されるデータセット処理装置の構造概略図である。
【
図9】本願の実施例によるデータセット処理方法を実現するための電子機器のブロック図である。
【発明を実施するための形態】
【0013】
理解を容易にするために、以下は添付図面を参照しながら、本願の実施例の様々な詳細を含む本願の好適な実施例について説明するが、単なる例示と見なされるべきである。したがって、当業者が理解できるように、本願の範囲及び精神から逸脱することなく、本明細書に記載の実施例に対して様々な変更及び修正を行うことができる。同様に、以下の説明では、周知の機能及び構造については、明確さ及び簡潔さのために説明を省略する。
【0014】
以下は、図面を参照して、本願の実施例に係るデータセット処理方法、装置、電子機器及び記憶媒体について説明する。
【0015】
図1は、本願の第1の実施例にて提供されるデータセット処理方法のフローチャートである。
【0016】
具体的には、従来形態では、トレーニングデータセットのネガティブサンプルとして異なる意味を有するテキストをランダムに選択するため、生成されたネガティブサンプルの方式は比較的簡単であり、不正確な場合がある。
【0017】
本願にて提供されるデータセット処理方法は、ターゲットユーザから提供された複数のテキストブロックを取得する。各テキストブロックには、類似する意味を有する複数のテキストが含まれ、複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得し、第1のテキストセットからターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得し、第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいてターゲットテキストのネガティブサンプルセットを生成し、ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいてターゲットテキストのポジティブサンプルセットを生成し、ネガティブサンプルセットとポジティブサンプルセットに基づいてターゲットユーザのデータセットを生成し、データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識する。
【0018】
これにより、ランダムサンプリングにおける偽サンプル及びデータが比較的簡単であるという技術的問題を回避し、類似マッチング条件によってテキストセットをマッチングした後、さらにポジティブサンプルセットとネガティブサンプルセットを取得してデータセットを生成するので、データセットの有効性を向上させ、さらにマッチングモデルのロバスト性を向上させる。
【0019】
図1に示すように、該データセット処理方法はステップ101~105を含んでもよい。
【0020】
ステップ101では、ターゲットユーザから提供された複数のテキストブロックを取得する。各テキストブロックには、類似する意味を有する複数のテキストが含まれ、複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得する。
【0021】
本願はターゲットユーザのデータセットを取得することでマッチングモデルをトレーニングしてテキスト類似度を認識し、それによってマッチングモデルの精度と安定性を向上させる。ターゲットユーザは1つ又は複数のサブユーザであってもよく、本願では、異なる分野の応用シーンに基づいてターゲットユーザとして1つのサブユーザであるか複数のサブユーザであるかを決定してもよい。
【0022】
例を挙げると、例えば銀行分野では、異なる銀行機関間でクエリテキストに差異があり、ターゲットユーザは複数のサブユーザ、つまり複数の銀行機関である。例えば教育分野では、それぞれの教育機関間でクエリテキストにほとんど差異はなく、トレーニングの効率を向上させるために、ターゲットユーザは1つのサブユーザ、つまり1つの銀行機関であり、具体的には、実際の応用のニーズに応じて選択及び設定することができる。
【0023】
具体的には、ターゲットユーザから提供された複数のテキストブロックを取得する。各テキストブロックには、類似する意味を有する複数のテキストが含まれる。つまり、テキストデータは、多くの場合、類似する意味を有するテキストの一連のテキストブロックであり、各テキストブロック内のテキストは全て同じ意味を有する。例えば、
図2に示すように、「クレジットカードを申請したい」と「クレジットカードを申請するにはどうすればよいか」の2つのテキストは同じテキストブロック1にあり、「クレジットカードの請求書を確認したい」と「クレジットカードの請求書はいくらであるか」は同じテキストブロック2にある。
【0024】
理解できるように、各テキストブロック内のテキストは全て類似する意味を有する。ネガティブサンプルとして異なるテキストブロックから他のテキストをランダムにサンプリングし、2つのテキストの意味類似度が異なることをデフォルトする場合には、このようなランダムネガティブサンプリングの方式でいくつかの不正確なネガティブサンプルをサンプリングしやすい。
【0025】
例を挙げると、「カードを申請したい」と「クレジットカードを申請したい」は、意味が類似する2つのテキストであり、「カードを申請したい」と「貯金カードを申請したい」は、意味が類似しない2つのテキストである。しかし「カードを申請したい」と「貯金カードを申請したい」は異なるテキストブロックに属するが、類似する意味をある程度有する可能性が高い。このようなネガティブサンプルは、トレーニングされたマッチングモデルの精度に大きな影響を与え、ランダムサンプリングによって生成されたネガティブサンプルは比較的簡単であるため、マッチングモデルが十分に正確な知識を学習できず、マッチングモデルの細粒度と精度にも影響を与える。
【0026】
したがって、複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットをさらに取得する必要がある。プリセット類似マッチング条件は1つ又は複数であってもよい。
【0027】
例を挙げると、例えば、ネガティブサンプルとして類似する表現形態を有するが異なる意味情報を有するサンプルを選択するため、2つのテキストが高いワードオーバーラップを有することをプリセット類似マッチング条件とする。例えば、2つのテキストが高い意味類似度を有することをプリセット類似マッチング条件とするなど、実際の応用のニーズに応じて選択及び設定することができる。以下に例を示す。
【0028】
第1の例として、ターゲットテキストに対してワードセグメンテーション処理を実行して第1のワードセグメンテーションセットを生成し、複数のテキストブロック内の各テキストに対してワードセグメンテーション処理を実行して複数の第2のワードセグメンテーションセットを生成し、第1のワードセグメンテーションセットを各第2のワードセグメンテーションセットと比較し、第1のワードセグメンテーションセットと各第2のワードセグメンテーションセットの間のワードセグメンテーション重複度を取得し、第1のワードセグメンテーションセットと各第2のワードセグメンテーションセットの間のワードセグメンテーション重複度をプリセット閾値と比較し、閾値より大きいワードセグメンテーション重複度に対応する第2のワードセグメンテーションセットに基づいて第1のテキストセットを生成する。
【0029】
第2の例として、ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルをプリセットトレーニング言語表現モデルに入力してターゲットセンテンスベクトルを得、複数のテキストブロック内の各テキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、各テキストに対応するサブベクトル、テキストベクトル及び位置ベクトルをプリセットトレーニング言語表現モデルに入力して各テキストに対応するセンテンスベクトルを得、ターゲットセンテンスベクトルと各テキストに対応するセンテンスベクトルの間のコサイン類似度を計算し、コサイン類似度をプリセットコサイン閾値と比較し、プリセットコサイン閾値より大きいテキストに基づいて第1のテキストセットを生成する。
【0030】
ターゲットテキストは、複数のテキストブロック内の各テキストがデータセット構築のためのターゲットテキストとして使用されてもよく(つまり、各テキストをトラバースする)、複数のテキストブロック内のテキストの一部がデータセット構築のターゲットテキストとして使用されてもよい。具体的には実際の応用シーンに応じて選択及び設定することができるので、トレーニングされたモデルの精度を保証し、トレーニング効率を向上させる。
【0031】
ステップ102では、第1のテキストセットからターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得する。
【0032】
ステップ103では、第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいてターゲットテキストのネガティブサンプルセットを生成する。
【0033】
具体的には、プリセット類似マッチング条件を満たす第1のテキストセットの各テキストは、複数のテキストブロックに属し、第1のテキストセットからターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得する必要があるが、応用シーンに応じて選択及び設定することができる。以下に例を示す。
【0034】
一例として、ターゲットテキストに対応するブロック識別子を取得し、第1のテキストセット内の各テキストが属するブロック識別子を取得し、各テキストが属するブロック識別子をターゲットテキストに対応するブロック識別子と比較し、ブロック識別子が一致しないテキストに基づいて第2のテキストセットを生成する。
【0035】
最後に、第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいてターゲットテキストのネガティブサンプルセットを生成し、可能な一実現形態として、第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツを取得し、各候補テキストブロック内の複数のテキストを組み合わせて第1のネガティブサンプルセットを生成し、異なる候補テキストブロック内の複数のテキストを組み合わせて第2のネガティブサンプルセットを生成し、第1のネガティブサンプルセットと第2のネガティブサンプルセットに基づいてターゲットテキストのネガティブサンプルセットを生成する。
【0036】
ステップ104では、ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいてターゲットテキストのポジティブサンプルセットを生成する。
【0037】
具体的には、ターゲットテキストにはテキストブロック識別子があるため、テキストブロック識別子に応じてターゲットテキストブロックを決定し、ターゲットテキストブロックのコンテンツ、つまりターゲットテキストブロック内の複数のテキストをさらに取得し、ターゲットテキストブロック内の複数のテキストを組み合わせてターゲットテキストのポジティブサンプルセットを生成することができる。
【0038】
当然のことながら、ターゲットテキストブロック内の複数のテキストを取得した後、第2のテキストセットにマッチングする複数のテキストをターゲットテキストのポジティブサンプルセットとして生成してもよい。
【0039】
ステップ105では、ネガティブサンプルセットとポジティブサンプルセットに基づいてターゲットユーザのデータセットを生成し、データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識する。
【0040】
具体的には、ターゲットユーザに1つのサブユーザが含まれる応用シーンでは、ネガティブサンプルセットとポジティブサンプルセットに基づいてターゲットユーザのデータセットを生成してもよい。ターゲットユーザに複数のサブユーザが含まれる応用シーンでは、各サブユーザから提供された複数のテキストブロックを取得し、ネガティブサンプルセットとポジティブサンプルセットに基づいて各サブユーザに対応するサブデータセットを生成し、各サブユーザに対応するサブデータセットを組み合わせて候補データセットを生成し、プリセット重複排除戦略に従って候補データセットを重複排除してターゲットユーザのデータセットを生成する必要があるので、データセットの分野汎用性と適用性を向上させ、特定の分野におけるタスクダイアログで優れた効果を達成することができる。
【0041】
最後に、データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識する方式は様々であるので、必要に応じて選択及び設定してもよい。以下に例を示す。
【0042】
第1の例として、第1のクエリセンテンス及び第2のクエリセンテンスを取得し、第1のクエリセンテンスをコードして第1のクエリベクトルを生成し、第2のクエリセンテンスをコードして第2のクエリベクトルを生成し、第1のクエリベクトルと第2のクエリベクトルにマッチングモデルを入力してマッチングカテゴリを出力し、マッチングカテゴリに応じて第1のクエリセンテンスと第2のクエリセンテンスのテキスト類似度を決定する。
【0043】
例を挙げると、例えば、第1のクエリベクトルにマッチングモデルを入力してマッチングカテゴリ1を出力しかつ第2のクエリベクトルにマッチングモデルを入力してマッチングカテゴリ2を出力する場合、マッチングカテゴリ1とマッチングカテゴリ2は異なるため、第1のクエリセンテンスと第2のクエリセンテンスのテキストが類似しないと決定する。例えば、第1のクエリベクトルにマッチングモデルを入力してマッチングカテゴリ1を出力しかつ第2のクエリベクトルにマッチングモデルを入力してマッチングカテゴリ1を出力する場合、マッチングカテゴリ1とマッチングカテゴリ1は同じであるため、第1のクエリセンテンスと第2のクエリセンテンスのテキストが類似すると決定する。
【0044】
第2の例として、第1のクエリセンテンス及び第2のクエリセンテンスを取得し、第1のクエリセンテンスと第2のクエリセンテンスにマッチングモデルを入力してセンテンスを整列し、整列結果に基づいて第1のクエリセンテンスと第2のクエリセンテンスのテキスト類似度を決定する。
【0045】
例を挙げると、第1のクエリセンテンスと第2のクエリセンテンスにマッチングモデルを入力してセンテンスを整列し、整列比率が95%である場合には、プリセット閾値の90%より大きく、したがって、第1のクエリセンテンスと第2のクエリセンテンスが類似すると決定する。そうでない場合には、類似しないと決定する。
【0046】
本願の実施例にて提供されるデータセット処理方法は、ターゲットユーザから提供された複数のテキストブロックを取得する。各テキストブロックには、類似する意味を有する複数のテキストが含まれる。複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得し、第1のテキストセットからターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得し、第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいてターゲットテキストのネガティブサンプルセットを生成し、ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいてターゲットテキストのポジティブサンプルセットを生成し、ネガティブサンプルセットとポジティブサンプルセットに基づいてターゲットユーザのデータセットを生成し、データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識する。これにより、ランダムサンプリングにおける偽サンプル及びデータが比較的簡単であるという技術的問題を回避し、類似マッチング条件によってテキストセットをマッチングした後、さらにポジティブサンプルセットとネガティブサンプルセットを取得してデータセットを生成し、データセットの有効性を向上させ、さらにマッチングモデルのロバスト性を向上させる。
【0047】
上記の実施例の説明に基づいて、理解できるように、異なるプリセット類似マッチング条件に基づいて取得された第1のテキストセットが異なるため、最後に構築されたデータセットも異なり、当業者が、ターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得する方法をより明確に把握するために、以下、
図3及び
図4を参照してワード頻度統計とセンテンスベクトルに基づいて計算及びマッチングすることを例として詳しく説明する。
【0048】
具体的には、
図3に示すように、ステップ101の後、さらにステップ201~203を含む。
【0049】
ステップ201では、ターゲットテキストに対してワードセグメンテーション処理を実行して第1のワードセグメンテーションセットを生成し、複数のテキストブロック内の各テキストに対してワードセグメンテーション処理を実行して複数の第2のワードセグメンテーションセットを生成する。
【0050】
ステップ202では、第1のワードセグメンテーションセットを各第2のワードセグメンテーションセットと比較し、第1のワードセグメンテーションセットと各第2のワードセグメンテーションセットの間のワードセグメンテーション重複度を取得する。
【0051】
ステップ203では、第1のワードセグメンテーションセットと各第2のワードセグメンテーションセットの間のワードセグメンテーション重複度をプリセット閾値と比較し、閾値より大きいワードセグメンテーション重複度に対応する第2のワードセグメンテーションセットに基づいて第1のテキストセットを生成する。
【0052】
具体的には、プリセットワードセグメンテーションアルゴリズムに従ってターゲットテキストに対してワードセグメンテーション処理を実行して第1のワードセグメンテーションセットを生成する。つまり、第1のワードセグメンテーションセットにはターゲットテキストに対応する1つ又は複数のワードセグメンテーションが含まれ、複数のテキストブロック内の各テキストに対してワードセグメンテーション処理を実行して複数の第2のワードセグメンテーションセットを生成する。
【0053】
第1のワードセグメンテーションセットを各第2のワードセグメンテーションセットと比較し、第1のワードセグメンテーションセットと各第2のワードセグメンテーションセットの間のワードセグメンテーション重複度を取得する。ターゲットテキストと複数のテキストブロック内の各テキストの間のワードオーバーラップの具体的な状況は、ワードセグメンテーションの重複度によってすばやく理解することができる。プリセット閾値より大きいワードセグメンテーションの重複度に対応する第2のワードセグメンテーションセットを第1のテキストセットとして生成する。
【0054】
つまり、ターゲットテキストと複数のテキストブロック内の各テキストの間のワードオーバーラップの数が一定の閾値より大きい場合にのみ、該テキストを第1のテキストセットのテキストとして決定する。それにより、類似する表現形態を有するが異なる意味情報を有するテキストを選択することができ、例えば「クレジットカードを申請したい」と「貯金カードを申請したい」の表現形態が近いが、実際には意味情報が異なるテキストであり、これらのテキストを後でトレーニングサンプルとすることで、モデルは意味情報とセンテンス表現形態の違いをよく区別することができる。
【0055】
具体的には、
図4に示すように、ステップ101の後、さらにステップ301~304を含む。
【0056】
ステップ301では、ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルをプリセットトレーニング言語表現モデルに入力してターゲットセンテンスベクトルを得る。
【0057】
ステップ302では、複数のテキストブロック内の各テキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、各テキストに対応するサブベクトル、テキストベクトル及び位置ベクトルをプリセットトレーニング言語表現モデルに入力して各テキストに対応するセンテンスベクトルを得る。
【0058】
ステップ303では、ターゲットセンテンスベクトルと各テキストに対応するセンテンスベクトルの間のコサイン類似度を計算する。
【0059】
ステップ304では、コサイン類似度をプリセットコサイン閾値と比較し、プリセットコサイン閾値より大きいテキストに基づいて第1のテキストセットを生成する。
【0060】
具体的には、モデルの安定性をさらに向上させるために、
図3の実施例に基づいて取得されたテキストを第1のテキストセットとする以外に、意味類似度と組み合わせてテキストを取得して第1のテキストセットに加えることで、一定の意味類似性を有するが、往々にしてコンテンツが実際に同じではないテキストの選択を実現する。例えば、「クレジットカードを申請したい」と「申請したばかりのクレジットカードの請求書はいくらであるか」であり、これらのテキストを後でトレーニングサンプルとすることで、モデルは、より高い細粒度を持つ、かつ意味類似度をより正確に区別する程度まで学習できる。
【0061】
具体的には、ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルをプリセットトレーニング言語表現モデルに入力してターゲットセンテンスベクトルを得、ターゲットセンテンスベクトルと各テキストに対応するセンテンスベクトルの間のコサイン類似度を計算し、プリセットコサイン閾値より大きいテキストに基づいて第1のテキストセットを生成する。ただし、リカレントニューラルネットワーク又は畳み込みニューラルネットワークを使用して事前に選択してテキストサンプルに対してトレーニングして生成することができる。
【0062】
これにより、プリセットトレーニング言語表現モデルを使用すると、各ワードを独立した部分として扱うのではなく、テキスト全体のコンテキスト関係をより適切に特徴付けることができる。例を挙げると、「アップル」は、果物に関する意味環境と携帯電話に関する意味環境が全く異なるので、テキスト内のワードの順序とワードの依存関係を考慮し、トレーニングプロセス中に、テキスト全体のコンテキストに直面して、意味類似度計算の精度を向上させる。それによりマッチングモデルの認識結果を向上させる。
【0063】
上記の実施例の説明に基づいて、さらに理解できるように、ターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得する場合のテキスト数は、必ずしも本願でデータセットを構築するためのプリセット数閾値ではなく、トレーニング効率を向上させるためには、さらなるスクリーニングが必要である。
【0064】
具体的には、
図5に示すように、ステップ101の後、さらにステップ401~402を含む。
【0065】
ステップ401では、第1のテキストセットのテキスト数を取得し、テキスト数がプリセット数閾値より大きいか否かを判断する。
【0066】
ステップ402では、テキスト数がプリセット数閾値より大きい場合、テキスト数が数閾値と等しくなるように、数閾値に応じて第1のテキストセット内のテキストを削除する。
【0067】
実際の応用の場面では、異なる応用シーンに応じて、異なる数閾値、つまり、トレーニングサンプルとして選択するテキストの量を設定することができる。したがって、第1のテキストセットのテキスト数を取得し、テキスト数がプリセット数閾値より大きいか否かを判断し、テキスト数がプリセット数閾値より大きい場合、テキスト数が数閾値と等しくなるように、数閾値に応じて第1のテキストセット内のテキストを削除する。削除処理はランダム削除であってもよく、これによりサンプルのランダム性をさらに向上させる。
【0068】
図6は、本願の第5の実施例にて提供されるデータセット処理方法のフローチャートである。
【0069】
ステップ501では、各サブユーザから提供された複数のテキストブロックを取得し、複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得する。
【0070】
具体的には、本実施はターゲットユーザに複数のサブユーザが含まれる応用シーンを対象とし、データセットの分野汎用性のために、各サブユーザに対応するサブデータセットを組み合わせて候補データセットを生成する必要があるため、プリセット重複排除戦略に従って候補データセットを重複排除してターゲットユーザのデータセットを生成する。
【0071】
具体的には、各サブユーザから提供された複数のテキストブロックを取得し、複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得する。プリセット類似マッチング条件は1つ又は複数であってもよく、例えば、ネガティブサンプルとして類似する表現形態を有するが異なる意味情報を有するサンプルを選択するために、2つのテキストが高いワードオーバーラップを有することをプリセット類似マッチング条件とし、例えば、2つのテキストが高い意味類似度を有することをプリセット類似マッチング条件とするなど、実際の応用のニーズに応じて選択及び設定することができる。
【0072】
ステップ502では、ターゲットテキストに対応するブロック識別子を取得し、第1のテキストセット内の各テキストが属するブロック識別子を取得し、各テキストが属するブロック識別子をターゲットテキストに対応するブロック識別子と比較して、ブロック識別子が一致しないテキストに基づいて第2のテキストセットを生成する。
【0073】
理解できるように、ターゲットテキストはブロック識別子を有し、第1のテキストセット内の各テキストが属するブロック識別子を取得し、各テキストが属するブロック識別子をターゲットテキストに対応するブロック識別子と比較する。例えば、ターゲットテキストのブロック識別子01とテキスト1が属するブロック識別子が一致し、ターゲットテキストのブロック識別子01とテキスト2が属するブロック識別子02が一致しない場合には、テキスト2を第2のテキストセットに記憶することを決定する。
【0074】
ステップ503では、第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツを取得し、各候補テキストブロック内の複数のテキストを組み合わせて第1のネガティブサンプルセットを生成する。
【0075】
ステップ504では、異なる候補テキストブロック内の複数のテキストを組み合わせて第2のネガティブサンプルセットを生成し、第1のネガティブサンプルセットと第2のネガティブサンプルセットに基づいてターゲットテキストのネガティブサンプルセットを生成する。
【0076】
具体的には、第2のテキストセットのテキストは、同じテキストブロック又は異なるテキストブロックに属する可能性があり、第2のテキストセットのテキストのブロック識別子に基づいて複数の候補テキストブロックを決定し、候補テキストブロック内の複数のテキストに基づいてテキストを組み合わせて第1のネガティブサンプルセットを生成し、さらに異なる候補テキストブロック内の複数のテキストを組み合わせて第2のネガティブサンプルセットを生成し、第1のネガティブサンプルセットと第2のネガティブサンプルセットに基づいてターゲットテキストのネガティブサンプルセットを生成する。
【0077】
それにより、各候補テキストブロック内の複数のテキストを組み合わせて第1のネガティブサンプルセットを生成し、異なる候補テキストブロック内の複数のテキストを組み合わせて第2のネガティブサンプルセットを生成し、最後にターゲットテキストのネガティブサンプルセットを生成することで、テキストのランダム性をさらに向上させ、それによりトレーニングサンプルのランダム性を向上させ、マッチングモデルの認識精度を向上させる。
【0078】
ステップ505では、ターゲットテキストが属するターゲットテキストブロックのコンテンツを取得し、ターゲットテキストブロック内の複数のテキストを組み合わせてターゲットテキストのポジティブサンプルセットを生成する。
【0079】
具体的には、ターゲットテキストにはテキストブロック識別子があるため、テキストブロック識別子に応じてターゲットテキストブロックを決定することができる。さらにターゲットテキストブロックのコンテンツ、つまりターゲットテキストブロック内の複数のテキストを取得することができ、ターゲットテキストブロック内の複数のテキストを組み合わせてターゲットテキストのポジティブサンプルセットを生成する。
【0080】
当然のことながら、ターゲットテキストブロック内の複数のテキストを取得した後、第2のテキストセットにマッチングする複数のテキストをターゲットテキストのポジティブサンプルセットとして生成してもよい。
【0081】
ステップ506では、各サブユーザに対応するサブデータセットを組み合わせて候補データセットを生成し、プリセット重複排除戦略に従って候補データセットを重複排除してターゲットユーザのデータセットを生成する。
【0082】
具体的には、各サブユーザに対応するサブデータセットを組み合わせて候補データセットを生成し、プリセット重複排除戦略に従って候補データセットを重複排除してターゲットユーザのデータセットを生成する。プリセット重複排除戦略は異なる応用シーンのニーズに応じて選択することができ、例えば、候補データセット内の各テキストサンプルの重複度を直接検出し、重複するテキストサンプルを削除してターゲットユーザのデータセットを生成し、サンプルノイズを減らし、マッチングモデルの精度を向上させる。
【0083】
ステップ507では、第1のクエリセンテンス及び第2のクエリセンテンスを取得し、第1のクエリセンテンスをコードして第1のクエリベクトルを生成し、第2のクエリセンテンスをコードして第2のクエリベクトルを生成する。
【0084】
ステップ508では、第1のクエリベクトルと第2のクエリベクトルにマッチングモデルを入力してマッチングカテゴリを出力し、マッチングカテゴリに応じて第1のクエリセンテンスと第2のクエリセンテンスのテキスト類似度を決定する。
【0085】
具体的には、第1のクエリセンテンス及び第2のクエリセンテンスを取得し、それぞれ第1のクエリセンテンスをコードして第1のクエリベクトルを生成し、第2のクエリセンテンスをコードして第2のクエリベクトルを生成し、さらに、第1のクエリベクトルと第2のクエリベクトルにマッチングモデルを入力してマッチングカテゴリを出力し、最後に、マッチングカテゴリに応じて第1のクエリセンテンスと第2のクエリセンテンスのテキスト類似度を決定する。
【0086】
例を挙げると、例えば、第1のクエリベクトルにマッチングモデルを入力してマッチングカテゴリ1を出力し、第2のクエリベクトルにマッチングモデルを入力してマッチングカテゴリ2を出力する場合、マッチングカテゴリ1とマッチングカテゴリ2は異なるため、第1のクエリセンテンスと第2のクエリセンテンスのテキストが類似しないと決定する。例えば、第1のクエリベクトルにマッチングモデルを入力してマッチングカテゴリ1を出力し、第2のクエリベクトルにマッチングモデルを入力してマッチングカテゴリ1を出力する場合、マッチングカテゴリ1とマッチングカテゴリ1は同じであるため、第1のクエリセンテンスと第2のクエリセンテンスのテキストが類似すると決定する。
【0087】
これにより、各サブユーザから提供された複数のテキストブロックを取得し、複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得し、ターゲットテキストに対応するブロック識別子を取得し、第1のテキストセット内の各テキストが属するブロック識別子を取得し、各テキストが属するブロック識別子をターゲットテキストに対応するブロック識別子と比較し、ブロック識別子が一致しないテキストに基づいて第2のテキストセットを生成し、第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツを取得し、各候補テキストブロック内の複数のテキストを組み合わせて第1のネガティブサンプルセットを生成し、異なる候補テキストブロック内の複数のテキストを組み合わせて第2のネガティブサンプルセットを生成し、第1のネガティブサンプルセットと第2のネガティブサンプルセットに基づいてターゲットテキストのネガティブサンプルセットを生成し、ターゲットテキストが属するターゲットテキストブロックのコンテンツを取得し、ターゲットテキストブロック内の複数のテキストを組み合わせてターゲットテキストのポジティブサンプルセットを生成し、各サブユーザに対応するサブデータセットを組み合わせて候補データセットを生成し、プリセット重複排除戦略に従って候補データセットを重複排除してターゲットユーザのデータセットを生成し、第1のクエリセンテンス及び第2のクエリセンテンスを取得し、第1のクエリセンテンスをコードして第1のクエリベクトルを生成し、第2のクエリセンテンスをコードして第2のクエリベクトルを生成し、第1のクエリベクトルと第2のクエリベクトルにマッチングモデルを入力してマッチングカテゴリを出力し、マッチングカテゴリに応じて第1のクエリセンテンスと第2のクエリセンテンスのテキスト類似度を決定する。したがって、各サブユーザにデータセットを構築した後、データセットをマージして重複排除し、全てのサブデータセットをターゲットユーザの汎用データセットとしてマージし、これにより、分野汎用性がよくなり、ランダムサンプリングにおける偽サンプル及びデータが簡単すぎるという技術的問題を効果的に解決し、トレーニングされたモデルのロバスト性をさらに向上させる。
【0088】
上記の実施例を実現するために、本願はデータセット処理装置を提供する。
【0089】
図7は、本願の第6の実施例にて提供されるデータセット処理装置の構造概略図である。
【0090】
図7に示すように、該データセット処理装置600は、第1の取得モジュール601と、第2の取得モジュール602と、第3の取得モジュール603と、第1の生成モジュール604と、第2の生成モジュール605と、第3の生成モジュール606と、認識モジュール607と、を含んでもよい。
【0091】
第1の取得モジュール601は、ターゲットユーザから提供された複数のテキストブロックを取得することに用いられる。各テキストブロックには、類似する意味を有する複数のテキストが含まれる。
【0092】
第2の取得モジュール602は、前記複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得することに用いられる。
【0093】
第3の取得モジュール603は、前記第1のテキストセットから前記ターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得することに用いられる。
【0094】
第1の生成モジュール604は、前記第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいて前記ターゲットテキストのネガティブサンプルセットを生成することに用いられる。
【0095】
第2の生成モジュール605は、前記ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいて前記ターゲットテキストのポジティブサンプルセットを生成することに用いられる。
【0096】
第3の生成モジュール606は、前記ネガティブサンプルセットと前記ポジティブサンプルセットに基づいて前記ターゲットユーザのデータセットを生成することに用いられる。
【0097】
認識モジュール607は、前記データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識することに用いられる。
【0098】
第2の取得モジュール602は、前記ターゲットテキストに対してワードセグメンテーション処理を実行して第1のワードセグメンテーションセットを生成し、前記複数のテキストブロック内の各テキストに対してワードセグメンテーション処理を実行して複数の第2のワードセグメンテーションセットを生成することと、前記第1のワードセグメンテーションセットを各前記第2のワードセグメンテーションセットと比較し、前記第1のワードセグメンテーションセットと各前記第2のワードセグメンテーションセットの間のワードセグメンテーション重複度を取得することと、前記第1のワードセグメンテーションセットと各前記第2のワードセグメンテーションセットの間のワードセグメンテーション重複度をプリセット閾値と比較し、前記閾値より大きいワードセグメンテーション重複度に対応する第2のワードセグメンテーションセットに基づいて前記第1のテキストセットを生成することと、に用いられることとしてもよい。
【0099】
第2の取得モジュール602は、前記ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、前記ターゲットテキストに対応するサブベクトル、テキストベクトル及び位置ベクトルをプリセットトレーニング言語表現モデルに入力してターゲットセンテンスベクトルを得ることと、前記複数のテキストブロック内の各テキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを取得し、前記各テキストに対応するサブベクトル、テキストベクトル及び位置ベクトルを前記プリセットトレーニング言語表現モデルに入力して各テキストに対応するセンテンスベクトルを得ることと、前記ターゲットセンテンスベクトルと前記各テキストに対応するセンテンスベクトルの間のコサイン類似度を計算することと、前記コサイン類似度をプリセットコサイン閾値と比較し、前記プリセットコサイン閾値より大きいテキストに基づいて前記第1のテキストセットを生成することと、に用いられることとしてもよい。
【0100】
図8に示すように、
図7に基づいて、さらに第4の取得モジュール608及び削除モジュール609を含むこととしてもよい。
【0101】
第4の取得モジュール608は、前記第1のテキストセットのテキスト数を取得し、前記テキスト数がプリセット数閾値より大きいか否かを判断することに用いられる。
【0102】
削除モジュール609は、前記テキスト数が前記プリセット数閾値より大きい場合、前記テキスト数が前記数閾値と等しくなるよう、前記数閾値に応じて前記第1のテキストセット内のテキストを削除することに用いられる。
【0103】
第3の取得モジュール603は、前記ターゲットテキストに対応するブロック識別子を取得することと、前記第1のテキストセット内の各テキストが属するブロック識別子を取得することと、前記各テキストが属するブロック識別子を前記ターゲットテキストに対応するブロック識別子と比較し、ブロック識別子が一致しないテキストに基づいて前記第2のテキストセットを生成することと、に用いられることとしてもよい。
【0104】
第1の生成モジュール604は、前記第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツを取得することと、各候補テキストブロック内の複数のテキストを組み合わせて第1のネガティブサンプルセットを生成することと、異なる候補テキストブロック内の複数のテキストを組み合わせて第2のネガティブサンプルセットを生成することと、前記第1のネガティブサンプルセットと前記第2のネガティブサンプルセットに基づいて前記ターゲットテキストのネガティブサンプルセットを生成することと、に用いられることとしてもよい。
【0105】
第2の生成モジュール605は、前記ターゲットテキストが属するターゲットテキストブロックのコンテンツを取得することと、前記ターゲットテキストブロック内の複数のテキストを組み合わせて前記ターゲットテキストのポジティブサンプルセットを生成することと、に用いられることとしてもよい。
【0106】
ターゲットユーザは複数のサブユーザを含み、第1の取得モジュール601は、具体的には、各サブユーザから提供された複数のテキストブロックを取得することに用いられ、第3の生成モジュール606は、具体的には、前記ネガティブサンプルセットと前記ポジティブサンプルセットに基づいて前記各サブユーザに対応するサブデータセットを生成することと、前記各サブユーザに対応するサブデータセットを組み合わせて候補データセットを生成することと、プリセット重複排除戦略に従って前記候補データセットを重複排除して前記ターゲットユーザのデータセットを生成することと、に用いられることとしてもよい。
【0107】
認識モジュール607は、第1のクエリセンテンス及び第2のクエリセンテンスを取得することと、前記第1のクエリセンテンスをコードして第1のクエリベクトルを生成することと、前記第2のクエリセンテンスをコードして第2のクエリベクトルを生成することと、前記第1のクエリベクトルと前記第2のクエリベクトルに前記マッチングモデルを入力してマッチングカテゴリを出力し、前記マッチングカテゴリに応じて前記第1のクエリセンテンスと前記第2のクエリセンテンスのテキスト類似度を決定することと、に用いられることとしてもよい。
【0108】
認識モジュール607は、第1のクエリセンテンス及び第2のクエリセンテンスを取得することと、前記第1のクエリセンテンスと前記第2のクエリセンテンスを前記マッチングモデルに入力してセンテンスを整列することと、前記整列結果に基づいて前記第1のクエリセンテンスと前記第2のクエリセンテンスのテキスト類似度を決定することと、に用いられることとしてもよい。
【0109】
本願の実施例で提供されるデータセット処理装置は、ターゲットユーザから提供された複数のテキストブロックを取得する。各テキストブロックには、類似する意味を有する複数のテキストが含まれ、複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得し、第1のテキストセットからターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得し、第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいてターゲットテキストのネガティブサンプルセットを生成し、ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいてターゲットテキストのポジティブサンプルセットを生成し、ネガティブサンプルセットとポジティブサンプルセットに基づいてターゲットユーザのデータセットを生成し、データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識する。これにより、ランダムサンプリングにおける偽サンプル及びデータが比較的簡単であるという技術的問題を回避し、類似マッチング条件によってテキストセットをマッチングした後、さらにポジティブサンプルセットとネガティブサンプルセットを取得してデータセットを生成し、データセットの有効性を向上させ、さらにマッチングモデルのロバスト性を向上させる。
【0110】
本願の実施例によれば、本願は電子機器及び読み取り可能な記憶媒体をさらに提供する。
【0111】
図9には、本願の実施例によるデータセット処理方法を実現する電子機器のブロック図が示されている。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータなどの様々な形態のデジタルコンピュータを意図する。電子機器は、さらに、パーソナルデジタルプロセシング、携帯電話、スマートフォン、ウェアラブル機器、及び他の同様のコンピューティング装置など、様々な形態のモバイル装置とすることができる。本明細書に示された部材、それらの接続及び関係、及びそれらの機能は、単なる例であり、本明細書に記載及び/又は要求される本願の実現を制限することを意図していない。
【0112】
図9に示すように、該電子機器は、1つ又は複数のプロセッサ901と、メモリ902と、各部材を接続するための、高速インタフェース及び低速インタフェースを含むインタフェースとを含む。各部材は、異なるバスを介して互いに接続し、共通のマザーボード上に取り付けられてもよく、必要に応じて他の方法で取り付けられてもよい。プロセッサは、外部入力/出力装置(インタフェースに結合された表示機器)上にGUIのグラフィック情報を表示するために、メモリ内又はメモリ上に記憶されているコマンドを含む、電子機器内で実行されるコマンドを処理することができる。他の実施形態では、必要に応じて、複数のプロセッサ及び/又は複数のバスを複数のメモリ及び複数のメモリとともに使用してもよい。同様に、複数の電子機器を接続してもよく、各機器により一部の必要な操作(例えば、サーバアレイ、ブレードサーバセット、又はマルチプロセッサシステムとして)が提供される。
図9では1つのプロセッサ901を例に挙げている。
【0113】
メモリ902は、本願にて提供される非一時的なコンピュータ読み取り可能な記憶媒体である。前記メモリには、少なくとも1つのプロセッサに本願で提供されるデータセット処理方法を実行させるため、少なくとも1つのプロセッサにより実行されるコマンドが記憶されている。本願の非一時的なコンピュータ読み取り可能な記憶媒体は、本願で提供されるデータセット処理方法をコンピュータに実行させるコンピュータコマンドを記憶する。
【0114】
非一時的なコンピュータ読み取り可能な記憶媒体として、メモリ902は、本願の実施例におけるデータセット処理方法に対応するプログラムコマンド/モジュール(例えば、
図7に示される第1の取得モジュール601、第2の取得モジュール602、第3の取得モジュール603、第1の生成モジュール604、第2の生成モジュール605、第3の生成モジュール606及び認識モジュール607)などの非一時的なソフトウェアプログラム、非一時的なコンピュータ実行可能プログラム及びモジュールを記憶することに用いられる。プロセッサ901は、メモリ902に記憶された非一時的なソフトウェアプログラム、コマンド、及びモジュールを実行することで、電子機器の様々な機能適用及びデータ処理を実行し、すなわち、上記の方法の実施例におけるデータセット処理方法を実現する。
【0115】
メモリ902は、プログラム記憶領域及びデータ記憶領域を含んでもよく、プログラム記憶領域は、オペレーティングシステム、少なくとも1つの機能に必要なアプリケーションプログラムを記憶することができ、データ記憶領域は、データセット処理の電子機器の使用に応じて作成されたデータなどを記憶することができる。メモリ902は、高速ランダムアクセスメモリを含んでもよく、少なくとも1つの磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の非一時的なソリッドステート記憶デバイスなどの非一時的なメモリを含んでもよい。いくつかの実施例では、メモリ902は、好ましくは、プロセッサ901に対して遠隔に設定されたメモリを含んでもよく、これらの遠隔メモリは、ネットワーク経由でデータセット処理の電子機器に接続することができる。上記のネットワークの例には、インターネット、イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク、及びそれらの組み合わせが含まれるが、これらに制限されるものではない。
【0116】
データセット処理方法の電子機器は、入力装置903及び出力装置904をさらに含んでもよい。プロセッサ901、メモリ902、入力装置903及び出力装置904は、バス又は他の方法を介して接続されてもよいが、
図9にはバスを介して接続されることを例示している。
【0117】
入力装置903は入力された数字又は文字情報を受信し、データセット処理の電子機器のユーザ設定及び機能制御に関連するキー信号を生成することができる。例えばタッチスクリーン、小型キーボード、マウス、トラックパッド、タッチパネル、指示レバー、1つ又は複数のマウスボタン、トラックボール、ジョイスティックなどの入力装置である。出力装置904は、表示機器、補助照明装置(例えば、LED)、触覚フィードバック装置(例えば、振動モータ)などを含んでもよい。該表示機器は、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ、プラズマディスプレイを含んでもよいが、これらに制限されるものではない。いくつかの実施形態では、表示機器はタッチスクリーンであってもよい。
本出願の実施例によれば、コンピュータプログラムが提供される。当該コンピュータプログラムにおける命令が実行される場合に、本出願の実施例のデータセット処理方法が実行される。
【0118】
ここで説明したシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、専用ASIC(専用集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせによって実現されることができる。これらの様々な実施形態は、以下のようであってもよい。1つ又は複数のコンピュータプログラムに実行され、該1つ又は複数のコンピュータプログラムは少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステムで実行及び/又は解釈され得、該ラマブルプロセッサは専用又は汎用のプログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及びコマンドを受信し、かつデータ及びコマンドを該記憶システム、該少なくとも1つの入力装置、及び該少なくとも1つの出力装置に送信してもよい。
【0119】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとも呼ばれる)は、プログラマブルプロセッサの機械コマンドを含み、ハイレベルのプロセス及び/又はオブジェクト指向プログラミング言語、及び/又はアセンブリ/機械語でこれらのコンピュータプログラムを実行してもよい。本明細書で使用される用語「機械読み取り可能な媒体」及び「コンピュータ読み取り可能な媒体」は、プログラマブルプロセッサに機械コマンド及び/又はデータを提供するための任意のコンピュータプログラム製品、機器、及び/又は装置(例えば、磁気ディスク、光学ディスク、メモリ、プログラマブル論理機器(PLD))を指し、機械読み取り可能な信号として機械コマンドを受け取る機械読み取り可能な媒体を含む。用語「機械読み取り可能な信号」は、機械コマンド及び/又はデータをプログラマブルプロセッサに提供することに用いられる任意の信号を指す。
【0120】
ユーザとのインタラクションを提供するために、ここで説明されているシステム及び技術は、コンピュータで実行されてもよく、該コンピュータは、ユーザに情報を表示する表示装置(例えばCRT(陰極線管)やLCD(液晶ディスプレイ)モニター)、及びキーボードやポインティング装置(例えばマウスやトラックボール)を有し、ユーザは、該キーボード及び該ポインティング装置を介してコンピュータに入力を提供することができる。他の種類の装置はまたユーザとのインタラクション機能を提供することに用いられることができ、例えば、ユーザに提供するフィードバックは、任意の形態のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形態(音響入力、音声入力又は触覚入力を含む)でユーザからの入力を受信することができる。
【0121】
ここで説明するシステム及び技術は、バックエンド部材を含むコンピューティングシステム(例えば、データサーバとして)、又はミドルウェア部材を含むコンピューティングシステム(例えば、アプリケーションサーバ)、又はフロントエンド部材を含むコンピューティングシステム(例えば、パターンユーザインタフェース又はインターネットブラウザを備えたユーザコンピュータであり、ユーザが該グラフィカルユーザインタフェース又は該インターネットブラウザを介してここで説明するシステム及び技術の実施形態とインタラクションを行うことができる)、又はこのようなバックエンド部材、ミドルウェア部材、或いはフロントエンド部材の任意の組み合わせを含むコンピューティングシステム内で実施されてもよい。システムの部材は、任意の形式又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によって互いに接続されてもよい。通信ネットワークとしては、例えば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)及びインターネットが挙げられる。
【0122】
コンピュータシステムは、クライアント及びサーバを含んでもよい。クライアント及びサーバは、一般に、互いに離れており、通常、通信ネットワークを介してインタラクションを行う。クライアントとサーバの関係は、それぞれのコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによって生成される。
【0123】
本願の実施例の技術的解決手段によれば、ターゲットユーザから提供された複数のテキストブロックを取得する。各テキストブロックには、類似する意味を有する複数のテキストが含まれ、複数のテキストブロックからターゲットテキストとプリセット類似マッチング条件を満たす第1のテキストセットを取得し、第1のテキストセットからターゲットテキストと同じテキストブロックに属していない第2のテキストセットを取得し、第2のテキストセット内の各テキストが属する候補テキストブロックのコンテンツに基づいてターゲットテキストのネガティブサンプルセットを生成し、ターゲットテキストが属するターゲットテキストブロックのコンテンツに基づいてターゲットテキストのポジティブサンプルセットを生成し、ネガティブサンプルセットとポジティブサンプルセットに基づいてターゲットユーザのデータセットを生成し、データセットに基づいてマッチングモデルをトレーニングしてテキスト類似度を認識する。これにより、ランダムサンプリングにおける偽サンプル及びデータが比較的簡単であるという技術的問題を回避し、類似マッチング条件によってテキストセットをマッチングした後、さらにポジティブサンプルセットとネガティブサンプルセットを取得してデータセットを生成し、データセットの有効性を向上させ、さらにマッチングモデルのロバスト性を向上させる。
【0124】
上記に示された様々な形態のフローは、ステップに対して順序変更、追加、又は削除して使用できることが理解されたい。例えば、本願に記載された各ステップは、並列に実行されても、順次実行されても、異なる順序で実行されてもよく、本願に開示された技術的解決手段の所望の結果を実現できればよく、本明細書では制限されない。
【0125】
上記の具体的な実施形態は、本願の保護範囲を制限するものではない。当業者は、設計要件及び他の要因に応じて、様々な修正、組み合わせ、サブ組み合わせ、及び置換を行うことができることを理解すべきである。本願の趣旨と原則の範囲内で行われた変更、同等の置換、及び改善などは、本願の保護範囲に含まれるべきである。