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

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

▶ ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッドの特許一覧

特開2024-170549データ処理方法、データ処理モデル及びそのトレーニング方法
<>
  • 特開-データ処理方法、データ処理モデル及びそのトレーニング方法 図1
  • 特開-データ処理方法、データ処理モデル及びそのトレーニング方法 図2
  • 特開-データ処理方法、データ処理モデル及びそのトレーニング方法 図3
  • 特開-データ処理方法、データ処理モデル及びそのトレーニング方法 図4
  • 特開-データ処理方法、データ処理モデル及びそのトレーニング方法 図5A
  • 特開-データ処理方法、データ処理モデル及びそのトレーニング方法 図5B
  • 特開-データ処理方法、データ処理モデル及びそのトレーニング方法 図6
  • 特開-データ処理方法、データ処理モデル及びそのトレーニング方法 図7
  • 特開-データ処理方法、データ処理モデル及びそのトレーニング方法 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024170549
(43)【公開日】2024-12-10
(54)【発明の名称】データ処理方法、データ処理モデル及びそのトレーニング方法
(51)【国際特許分類】
   G06F 40/216 20200101AFI20241203BHJP
   G06N 3/0455 20230101ALI20241203BHJP
   G06N 3/0475 20230101ALI20241203BHJP
【FI】
G06F40/216
G06N3/0455
G06N3/0475
【審査請求】有
【請求項の数】30
【出願形態】OL
【外国語出願】
【公開請求】
(21)【出願番号】P 2024153219
(22)【出願日】2024-09-05
(31)【優先権主張番号】202311765827.7
(32)【優先日】2023-12-20
(33)【優先権主張国・地域又は機関】CN
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.UNIX
2.Linux
3.WINDOWS PHONE
4.ANDROID
5.JAVA
6.iOS
(71)【出願人】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】110000578
【氏名又は名称】名古屋国際弁理士法人
(72)【発明者】
【氏名】チェン シュイ
(72)【発明者】
【氏名】クァ ボァ
(72)【発明者】
【氏名】リー チェンフィ
(72)【発明者】
【氏名】ホァン ジェンジエ
(72)【発明者】
【氏名】ホァン シィーウェイ
(72)【発明者】
【氏名】リー ウェイビン
(72)【発明者】
【氏名】フォン シークン
(57)【要約】      (修正有)
【課題】自然言語処理、深層学習技術及び大規模言語モデル技術に関するデータ処理方法、データ処理モデル及びそのトレーニング方法を提供する。
【解決手段】データ処理方法は、複数の分詞を含む入力データを確定することと、ゲート行列に基づいて複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定することと、を含む。複数のエキスパートネットワークは、複数の分詞を強化するために用いられる。データ処理方法はまた、相関性と各エキスパートネットワークのプリセット容量に基づいて、複数の分詞を複数のエキスパートネットワークに均一に割り当てることと、複数の分詞を強化し、強化した複数の分詞に基づいてデータ処理結果を確定することと、を含む。
【選択図】図2
【特許請求の範囲】
【請求項1】
データ処理方法であって、
入力データを確定し、前記入力データは複数の分詞を含むことと、
ゲート行列に基づいて前記複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定し、前記複数のエキスパートネットワークは前記複数の分詞を強化するために用いられることと、
前記相関性と各エキスパートネットワークのプリセット容量に基づいて前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当て、前記複数の分詞を強化することと、
強化された前記複数の分詞に基づいてデータ処理結果を確定することとを含む、データ処理方法。
【請求項2】
ゲート行列に基づいて前記複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定することは、
前記入力データと前記ゲート行列との積に基づいて、前記複数のエキスパートネットワークの各エキスパートネットワークと、前記複数の分詞の各分詞との相関性を確定することを含む、請求項1に記載のデータ処理方法。
【請求項3】
前記相関性と各エキスパートネットワークのプリセット容量に基づいて前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当てることは、
前記相関性に基づいて第1割当案を確定し、前記第1割当案において、各分詞は、該分詞と最も高い相関性を有するエキスパートネットワークに割り当てられることと、
前記第1割当案と前記各エキスパートネットワークのプリセット容量に基づいて各エキスパートネットワークの残存容量を確定することと、
前記相関性と前記各エキスパートネットワークの残存容量に基づいて第2割当案を確定し、前記第2割当案は、前記複数の分詞が前記複数のエキスパートネットワークに均一に割り当てられるように、前記第1割当案に組み合わせることとを含む、請求項1~2のいずれか1項に記載のデータ処理方法。
【請求項4】
前記各エキスパートネットワークのプリセット容量は同じである、請求項3に記載のデータ処理方法。
【請求項5】
前記相関性と前記各エキスパートネットワークの残存容量に基づいて第2割当案を確定することは、
最適輸送アルゴリズムを基に、前記相関性と前記各エキスパートネットワークの残余容量とに基づいて第2割当案を確定することを含む、請求項3に記載のデータ処理方法。
【請求項6】
前記最適輸送アルゴリズムはsinkhornアルゴリズムである、請求項5に記載のデータ処理方法。
【請求項7】
強化された前記複数の分詞に基づいてデータ処理結果を確定することは、
自己注意メカニズムに基づいて前記強化された前記複数の分詞を処理して前記データ処理結果を得ることを含む、請求項1~6のいずれか1項に記載のデータ処理方法。
【請求項8】
データ処理モデルであって、
ルーティング層であって、ゲート行列に基づいて入力データにおける複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定するように構成され、前記相関性は、各エキスパートネットワークのプリセット容量に合わせて前記複数の分詞を均一に前記複数のエキスパートネットワークに割り当てるために用いられるものと、
割り当てられた分詞を強化するように構成される複数のエキスパートネットワークを含むエキスパートネットワーク層と、
強化された前記複数の分詞に基づいてデータ処理結果を確定するように構成される出力層とを含む、データ処理モデル。
【請求項9】
ゲート行列に基づいて前記複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定することは、
前記入力データと前記ゲート行列との積に基づいて、前記複数のエキスパートネットワークの各エキスパートネットワークと、前記複数の分詞の各分詞との相関性を確定することを含む、請求項8に記載のデータ処理モデル。
【請求項10】
前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当てることは、
前記相関性に基づいて第1割当案を確定し、前記第1割当案において、各分詞は、該分詞と最も高い相関性を有するエキスパートネットワークに割り当てられることと、
前記第1割当案と前記各エキスパートネットワークのプリセット容量に基づいて各エキスパートネットワークの残存容量を確定することと、
前記相関性と前記各エキスパートネットワークの残存容量に基づいて第2割当案を確定し、前記第2割当案は、前記複数の分詞が前記複数のエキスパートネットワークに均一に割り当てられるように、前記第1割当案に組み合わせることとを含む、請求項8~9のいずれか1項に記載のデータ処理モデル。
【請求項11】
前記各エキスパートネットワークのプリセット容量は同じである、請求項10に記載のデータ処理モデル。
【請求項12】
前記相関性と前記各エキスパートネットワークの残存容量に基づいて第2割当案を確定することは、
最適輸送アルゴリズムを基に、前記相関性と前記各エキスパートネットワークの残余容量とに基づいて第2割当案を確定することを含む、請求項10に記載のデータ処理モデル。
【請求項13】
前記最適輸送アルゴリズムはsinkhornアルゴリズムである、請求項12に記載のデータ処理モデル。
【請求項14】
前記出力層は、
自己注意メカニズムに基づいて前記強化された前記複数の分詞を処理して前記データ処理結果を得るように構成される、請求項8~13のいずれか1項に記載のデータ処理モデル。
【請求項15】
請求項1~14のいずれか一項に記載のデータ処理モデルをトレーニングするための方法であって、
サンプル入力を確定し、前記サンプル入力は複数の分詞を含むことと、
前記ゲート行列に基づいて、前記複数の分詞の各分詞と、前記複数の分詞を強化するための複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定し、前記相関性は各エキスパートネットワークのプリセット容量に合わせて前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当てるために用いられることと、
前記ゲート行列に基づいて損失値を確定し、前記ゲート行列が直交行列に近いほど、前記損失値は小さいことと、
前記損失値に基づいて前記ゲート行列のパラメータを調整して、トレーニングされたデータ処理モデルを得ることとを含む、方法。
【請求項16】
前記ゲート行列に基づいて損失値を確定することは、
前記ゲート行列と前記ゲート行列の転置行列との積を確定することと、
前記積と単位行列との誤差に基づいて前記損失値を確定することとを含む、請求項15に記載の方法。
【請求項17】
前記誤差は最小平均二乗誤差である、請求項16に記載の方法。
【請求項18】
データ処理装置であって、
入力データを確定するように構成され、前記入力データは複数の分詞を含む入力ユニットと、
ゲート行列に基づいて前記複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定するように構成され、前記複数のエキスパートネットワークは前記複数の分詞を強化するために用いられる相関性確定ユニットと、
前記相関性と各エキスパートネットワークのプリセット容量に基づいて前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当て、前記複数の分詞を強化するように構成される割り当てユニットと、
強化された前記複数の分詞に基づいてデータ処理結果を確定するように構成される出力ユニットとを含む、データ処理装置。
【請求項19】
前記相関性確定ユニットは、
前記入力データと前記ゲート行列との積に基づいて、前記複数のエキスパートネットワークの各エキスパートネットワークと、前記複数の分詞の各分詞との相関性を確定することを含むように構成される、請求項18に記載のデータ処理装置。
【請求項20】
前記相関性と各エキスパートネットワークのプリセット容量に基づいて前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当てることは、
前記相関性に基づいて第1割当案を確定し、前記第1割当案において、各分詞は、該分詞と最も高い相関性を有するエキスパートネットワークに割り当てられることと、
前記第1割当案と前記各エキスパートネットワークのプリセット容量に基づいて各エキスパートネットワークの残存容量を確定することと、
前記相関性と前記各エキスパートネットワークの残存容量に基づいて第2割当案を確定し、前記第2割当案は、前記複数の分詞が前記複数のエキスパートネットワークに均一に割り当てられるように、前記第1割当案に組み合わせることとを含む、請求項18~19のいずれか1項に記載のデータ処理装置。
【請求項21】
前記各エキスパートネットワークのプリセット容量は同じである、請求項20に記載のデータ処理装置。
【請求項22】
前記相関性と前記各エキスパートネットワークの残存容量に基づいて第2割当案を確定することは、
最適輸送アルゴリズムを基に、前記相関性と前記各エキスパートネットワークの残余容量とに基づいて第2割当案を確定することを含む、請求項20に記載のデータ処理装置。
【請求項23】
前記最適輸送アルゴリズムはsinkhornアルゴリズムである、請求項22に記載のデータ処理装置。
【請求項24】
強化された前記複数の分詞に基づいてデータ処理結果を確定することは、
自己注意メカニズムに基づいて前記強化された前記複数の分詞を処理して前記データ処理結果を得るように構成される、請求項18~23のいずれか1項に記載のデータ処理装置。
【請求項25】
請求項1~14のいずれか一項に記載のデータ処理モデルをトレーニングするための装置であって、
サンプル入力を確定するように構成され、前記サンプル入力は複数の分詞を含む入力ユニットと、
前記ゲート行列に基づいて、前記複数の分詞の各分詞と、前記複数の分詞を強化するための複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定するように構成され、前記相関性は各エキスパートネットワークのプリセット容量に合わせて前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当てるために用いられる相関性確定ユニットと、
前記ゲート行列に基づいて損失値を確定するように構成され、前記ゲート行列が直交行列に近いほど、前記損失値は小さい損失確定ユニットと、
前記損失値に基づいて前記ゲート行列のパラメータを調整して、トレーニングされたデータ処理モデルを得るように構成されるパラメータ調整ユニットとを含む、装置。
【請求項26】
前記損失確定ユニットは、
前記ゲート行列と前記ゲート行列の転置行列との積を確定し、
前記積と単位行列との誤差に基づいて前記損失値を確定するように構成される、請求項25に記載の装置。
【請求項27】
前記誤差は最小平均二乗誤差である、請求項26に記載の装置。
【請求項28】
電子機器であって、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサに通信接続されたメモリとを含み、
前記メモリには、前記少なくとも一つのプロセッサによって実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されて、前記少なくとも一つのプロセッサに、請求項1~7、15~17のいずれか一項に記載の方法を実行させることを可能にする、電子機器。
【請求項29】
コンピュータ命令を記憶した非一時的コンピュータ可読記憶媒体であって、前記コンピュータ命令は、前記コンピュータに請求項1~7、15~17のいずれか一項に記載の方法を実行させるために用いられる非一時的コンピュータ可読記憶媒体。
【請求項30】
コンピュータプログラムを含むコンピュータプログラム製品であって、前記コンピュータプログラムは、プロセッサにより実行されると、請求項1~7、15~17のいずれか一項に記載の方法を実現する、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、人工知能分野に関し、具体的には、自然言語処理、深層学習技術、大規模言語モデル技術に関し、具体的には、データ処理方法、データ処理モデル及びそのトレーニング方法、データ処理装置、トレーニング装置、電子機器、コンピュータ可読記憶媒体およびコンピュータプログラム製品。
【背景技術】
【0002】
人工インテリジェントは、コンピュータに人間のいくつかの思惟過程及び知的行動(例えば、学習、推理、思考、計画など)を模擬させるように研究する科目であり、ハードウェア面の技術もあれば、ソフトウェア面の技術もある。人工インテリジェントのハードウェア技術は、一般的にセンサ、人工インテリジェント専用チップ、クラウドコンピューティング、分散ストレージ、ビッグデータ処理などの技術を含み、人工知能ソフトウェア技術は、主にコンピュータ視覚技術、音声認識技術、自然言語処理技術及び機械学習/深層学習、ビッグデータ処理技術、ナレッジグラフ技術などのいくつかの大きな方向を含む。
【0003】
プリトレーニング言語モデルは近年自然言語処理の分野で比較的急速に発展している技術である。大規模言語モデル技術では、プリトレーニングモデルの規模を大きくすることにより、一般にモデルに良い効果を与えることができる。
【0004】
該部分で説明される方法は、必ずしも以前に想定された方法又は採用された方法ではない。特に断りのない限り、該部分に記載されているいずれの方法は、該部分に含まれるだけで従来技術であると考えられるべきではない。同様に、特に断りのない限り、該部分で言及されている課題は、従来の技術で承認されたものであると考えるべきではない。
【発明の概要】
【0005】
本開示は、データ処理方法、データ処理モデル及びそのトレーニング方法、データ処理装置、トレーニング装置、電子機器、コンピュータ可読記憶媒体及びコンピュータプログラム製品を提供する。
【0006】
本開示の一態様によれば、データ処理方法を提供し、入力データを確定し、前記入力データは複数の分詞を含むことと、ゲート行列に基づいて前記複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定し、ここでは、前記複数のエキスパートネットワークは前記複数の分詞を強化するために用いられることと、前記相関性と各エキスパートネットワークのプリセット容量に基づいて前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当て、前記複数の分詞を強化することと、強化された前記複数の分詞に基づいてデータ処理結果を確定することとを含む。
【0007】
本開示の別の態様によれば、データ処理モデルを提供し、ルーティング層であって、ゲート行列に基づいて入力データにおける複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定するように構成され、ここでは、前記相関性は、各エキスパートネットワークのプリセット容量に合わせて前記複数の分詞を均一に前記複数のエキスパートネットワークに割り当てるために用いられるものと、割り当てられた分詞を強化するように構成される複数のエキスパートネットワークを含むエキスパートネットワーク層と、強化された前記複数の分詞に基づいてデータ処理結果を確定するように構成される出力層とを含む。
【0008】
本開示の別の態様によれば、データ処理モデルをトレーニングするための方法を提供し、サンプル入力を確定し、前記サンプル入力は複数の分詞を含むことと、前記ゲート行列に基づいて、前記複数の分詞の各分詞と、前記複数の分詞を強化するための複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定し、前記相関性は各エキスパートネットワークのプリセット容量に合わせて前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当てるために用いられることと、前記ゲート行列に基づいて損失値を確定し、前記ゲート行列が直交行列に近いほど、前記損失値は小さいことと、前記損失値に基づいて前記ゲート行列のパラメータを調整して、トレーニングされたデータ処理モデルを得ることとを含む。
【0009】
本開示の別の態様によれば、データ処理装置を提供し、入力データを確定するように構成され、前記入力データは複数の分詞を含む入力ユニットと、ゲート行列に基づいて前記複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定するように構成され、前記複数のエキスパートネットワークは前記複数の分詞を強化するために用いられる相関性確定ユニットと、前記相関性と各エキスパートネットワークのプリセット容量に基づいて前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当て、前記複数の分詞を強化するように構成される割り当てユニットと、強化された前記複数の分詞に基づいてデータ処理結果を確定するように構成される出力ユニットとを含む。
【0010】
本開示の別の態様によれば、データ処理モデルをトレーニングするための装置を提供し、サンプル入力を確定するように構成され、前記サンプル入力は複数の分詞を含む入力ユニットと、前記ゲート行列に基づいて、前記複数の分詞の各分詞と、前記複数の分詞を強化するための複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定するように構成され、前記相関性は各エキスパートネットワークのプリセット容量に合わせて前記複数の分詞を前記複数のエキスパートネットワークに均一に割り当てるために用いられる相関性確定ユニットと、前記ゲート行列に基づいて損失値を確定するように構成され、前記ゲート行列が直交行列に近いほど、前記損失値は小さい損失確定ユニットと、前記損失値に基づいて前記ゲート行列のパラメータを調整して、トレーニングされたデータ処理モデルを得るように構成されるパラメータ調整ユニットとを含む。
【0011】
本開示の別の態様によれば、電子機器を提供し、該電子機器は、少なくとも一つのプロセッサと、前記少なくとも一つのプロセッサに通信接続されたメモリとを含み、ここで前記メモリには、前記少なくとも一つのプロセッサによって実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されて、前記少なくとも一つのプロセッサに、本開示に提供される方法を実行させることを可能にする。
【0012】
本開示の別の態様によれば、コンピュータ命令を記憶した非一時的コンピュータ可読記憶媒体を提供し、ここで、前記コンピュータ命令は、本開示によって提供される方法を前記コンピュータに実行させるために用いられる。
【0013】
本開示の別の態様によれば、コンピュータプログラムを含むコンピュータプログラム製品を提供し、ここで、前記コンピュータプログラムは、プロセッサによって実行されると、本開示によって提供される方法を実現する。
【0014】
本開示の1つ又は複数の実施例によれば、複数のエキスパートネットワークに対するデータ処理タスクの割り当てを行う際に、最適な割り当てを考慮しつつ、均一な割り当ての制約を満足することができ、それにより、各エキスパートネットワークがいずれもデータ処理過程に機能できるようにし、データ処理効率を向上させる。
【0015】
理解すべきこととして、該部分に説明される内容は、本開示の実施例の要点又は重要な特徴を識別することを意図しておらず、本開示の保護範囲を限定するためのものではない。本開示の他の特徴は、以下の明細書によって容易に理解されるであろう。
【図面の簡単な説明】
【0016】
図面は、実施例を例示的に示し、明細書の一部を構成し、明細書の文字による説明とともに、実施例の例示的な実施形態を説明するために用いられる。図示の実施例は例示的目的のみであり、特許請求の範囲を限定するものではない。全ての図面において、同一の符号は、類似しているが、必ずしも同じとは限らない要素を指す。
【0017】
図1】本開示の実施例による、本明細書で説明される様々な方法を実施することができる例示的なシステムの概略図を示す。
図2】本開示の実施例による、データ処理方法の例示的なプロセスを示す。
図3】本開示の実施例による、データ処理モデルの例示的なブロック図を示す。
図4】本開示の実施例による、データ処理モデルをトレーニングするための方法の例示的なフローチャットを示す。
図5A】関連技術によるデータ処理プロセスの一例を示す。
図5B】本開示の実施例による、データ処理プロセスの一例を示す。
図6】本開示の実施例による、データ処理装置の例示的なブロック図を示す。
図7】本開示の実施例による、データ処理モデルをトレーニングするための装置の例示的なブロック図を示す。
図8】本開示の実施例を実現するために使用され得る例示的な電子機器のブロック図を示す。
【発明を実施するための形態】
【0018】
以下、図面に合わせて本開示の例示的な実施例を説明して、それに含まれる本開示の実施例における様々な詳細が理解を助けるためので、それらは単なる例示的なものと考えられるべきである。従って、当業者であれば、本開示の範囲及び精神から逸脱することなく、本明細書で説明された実施例に対して様々な変更及び修正を行うことができることを認識すべきである。同様に、明瞭と簡潔のために、以下の説明では公知の機能及び構造についての説明を省略している。
【0019】
本開示では、特に明記しない限り、様々な要素を説明するための「第1」、「第2」などの用語は、これらの要素の位置関係、タイミング関係、又は重要性関係を限定することを意図していない。このような用語は、一要素を別の要素から区別するためにのみ用いられる。いくつかの例では、第1の要素と第2要素は、要素の同じ例を指してもよく、場合によっては、コンテキストの説明に基づいて、異なる例を指してもよい。
【0020】
本開示の様々な例の説明で用いられる用語は、特定の例を説明することのみを目的としており、限定することを意図していない。コンテキストで別途に明確に示されていない限り、特に要素の数を限定しないなら、要素は一つであってもよいし、複数であってもよい。なお、本開示で用いられる用語「及び/又は」は、リストされたアイテムのいずれか及び可能な全ての組み合わせをカバーする。
【0021】
以下、図面を参照して本開示の実施例について詳細に説明する。
図1は、本開示の実施例によると、本明細書に記載された様々な方法及び装置を、その中で実施することができる例示的なシステム100の概略図を示す。図1を参照すると、該システム100は、一つ以上のクライアントデバイス101、102、103、104、105と106、サーバ120、及び一つ以上のクライアントデバイスをサーバ120に結合する一つ以上の通信ネットワーク110を含む。クライアントデバイス101、102、103、104、105と106は、一つ以上のアプリケーションを実行するように構成されることが可能である。
【0022】
本開示の実施例では、サーバ120は、本開示の実施例による方法の一つ又は複数のサービス又はソフトウェアアプリケーションを実行できるように動作する。
【0023】
いくつかの実施例では、サーバ120は、非仮想環境と仮想環境を含むことができる他のサービス又はソフトウェアアプリケーションも提供することができる。いくつかの実施例では、これらのサービスは、webベースのサービス又はクラウドサービスとして提供することができ、例えば、ソフトウェアアズアサービス(SaaS)モデルでクライアントデバイス101、102、103、104、105及び/又は106のユーザに提供される。
【0024】
図1に示す構成では、サーバ120は、サーバ120により実行される機能を実現する一つ以上のアセンブリを含んでもよい。これらのアセンブリは、一つ以上のプロセッサで実行できるソフトウェアアセンブリ、ハードウェアアセンブリ、又はそれらの組み合わせを含んでもよい。クライアントデバイス101、102、103、104、105及び/又は106を操作するユーザは、これらのアセンブリが提供するサービスを利用するために、一つ以上のクライアントアプリケーションを順次利用してサーバ120とやり取りをすることができる。様々な異なるシステム構成が可能であり、システム100とは異なってもよいことを理解されたい。したがって、図1は、本明細書に記載された様々な方法を実施するためのシステムの一例であり、制限することを意図していない。
【0025】
ユーザは、クライアントデバイス101、102、103、104、105、および/または106を使用して、本開示の実施例による方法によって処理されるデータを取得することができる。クライアントデバイスは、クライアントデバイスのユーザがクライアントデバイスとやり取りするインターフェースを提供することができる。クライアントデバイスは、該インターフェースを介してユーザに情報を出力することもできる。図1では6つのクライアントデバイスしか図示されていないが、当業者であれば理解できるように、本開示はいかなる数のクライアントデバイスもサポートできる。
【0026】
クライアントデバイス101、102、103、104、105及び/又は106は、携帯型ハンドヘルドデバイス、汎用コンピュータ(例えば、パーソナルコンピュータやノートパソコン)、ワークステーションコンピュータ、ウェアラブルデバイス、スマートスクリーンデバイス、セルフサービス端末デバイス、サービスロボット、ゲームシステム、シンクライアント、各種のメッセージングデバイス、センサ、又はその他の検知デバイスなどの様々なタイプのコンピュータデバイスを含んでもよい。これらのコンピュータデバイスは、MICROSOFT Windows、APPLE iOS、類UNIXオペレーティングシステム、Linux又は類Linuxオペレーティングシステム(例えば、GOOGLE Chrome OS)などの様々なタイプ及びバージョンのソフトウェアアプリケーションやオペレーティングシステムを実行したり、MICROSOFT Windows Mobile OS、iOS、Windows Phone、Androidなどの各種のモバイルオペレーティングシステムを含んだりすることができる。携帯用ハンドヘルドデバイスには、携帯電話、インテリジェントフォン、タブレット、パーソナルデジタルアシスタント(PDA)などを含んでもよい。ウェアラブルデバイスは、ヘッドマウント型ディスプレイ(例えば、スマートグラス)と他のデバイスを含んでもよい。ゲームシステムは、様々なハンドヘルド型のゲームデバイス、インターネット対応のゲームデバイスなどを含んでもよい。クライアントデバイスは、例えば、インターネットInternet関連アプリケーション、通信アプリケーション(例えば、電子メールアプリケーション)、ショートメッセージサービス(SMS)アプリケーション、様々なアプリケーションを実行でき、且つ様々な通信プロトコルを使用できる。
【0027】
ネットワーク110は、当業者に知られている任意のタイプのネットワークであってもよく、それは、データ通信をサポートするために、複数の利用可能なプロトコルのいずれか一つ(TCP/IP、SNA、IPXなどを含むがこれらに限定されない)を使用することができる。例として、一つ以上のネットワーク110は、ローカルエリアネットワーク(LAN)、イーサネットベースのネットワーク、トークンループ、ワイドエリアネットワーク(WAN)、インターネット、仮想ネットワーク、仮想プライベートネットワーク(VPN)、イントラネット、エクストラネット、ブロックチェーンネットワーク、公衆交換電話網(PSTN)、赤外線ネットワーク、無線ネットワーク(例えば、ブルートゥース、WIFI)、及び/又はこれら及び/又はその他のネットワークの任意の組み合わせであってもよい。
【0028】
サーバ120は、一つ以上の汎用コンピュータ、専用サーバコンピュータ(例えば、PC(パーソナルコンピュータ)サーバ、UNIXサーバ、ミッドレンジサーバ)、ブレードサーバ、大型コンピュータ、サーバクラスタ、又はその他のいかなる適切な配置及び/又は組み合わせを含んでもよい。サーバ120は、仮想オペレーティングシステムを実行する一つ以上の仮想マシン、又は仮想化に関わる他のコンピューティングアーキテクチャ(例えば、サーバの仮想記憶デバイスを維持するために仮想化された論理記憶デバイスの一つ以上のフレキシブルプール)を含んでもよい。様々な実施例では、サーバ120は、以下に説明する機能を提供する一つ以上のサービス又はソフトウェアアプリケーションを実行することができる。
【0029】
サーバ120における計算ユニットは、上記した任意のオペレーティングシステム及び任意の商用サーバオペレーティングシステムを含む一つ以上のオペレーティングシステムを実行することができる。サーバ120は、HTTPサーバ、FTPサーバ、CGIサーバ、JAVAサーバ、データベースサーバなど、様々な追加のサーバアプリケーション及び/又は中間層アプリケーションのいずれか一つを実行することもできる。
【0030】
いくつかの実施例では、サーバ120は、クライアントデバイス101、102、103、104、105及び/又は106のユーザから受信したデータフィード及び/又はイベントの更新を分析及び統合するための一つ以上のアプリケーションを含んでもよい。サーバ120は、クライアントデバイス101、102、103、104、105及び/又は106の一つ以上のディスプレイデバイスを介してデータフィード及び/又はリアルタイムイベントを表示する一つ以上のアプリケーションを含んでもよい。
【0031】
いくつかの実施例では、サーバ120は、分散型システムのサーバであってもよいし、ブロックチェーンを組み込んだサーバであってもよい。サーバ120は、クラウドサーバであってもよいし、人工知能技術を備えたインテリジェントクラウドコンピューティングサーバやインテリジェントクラウドホストであってもよい。クラウドサーバはクラウドコンピューティングサービスシステムにおけるホスト製品であり、従来の物理ホストと仮想専用サーバ(VPS、Virtual Private Server)サービスに存在する管理難度が大きく、業務拡張性が弱いという欠陥を解決する。
【0032】
システム100は、一つ以上のデータベース130を含むこともできる。いくつかの実施例では、これらのデータベースはデータやその他の情報を記憶するために使用できる。例えば、データベース130のうちの一つ以上は、音声ファイルや動画ファイルのような情報を記憶するために使用できる。データベース130は、さまざまな位置に配置することができる。例えば、サーバ120が使用するデータベースは、サーバ120のローカルにあってもよいし、サーバ120から離れて、ネットワーク又は専用の接続を介してサーバ120と通信してもよい。データベース130は、さまざまなタイプであってもよい。いくつかの実施例では、サーバ120が使用するデータベースは、リレーショナルデータベースであってもよい。これらのデータベースのうちの一つ以上は、命令に応じてデータベースとデータベースからのデータを記憶、更新、検索できる。
【0033】
いくつかの実施例では、データベース130のうちの一つ以上は、アプリケーションによって使用され、アプリケーションのデータを記憶することもできる。アプリケーションで用いられるデータベースは、キー値リポジトリ、オブジェクトリポジトリ、ファイルシステムでサポートされる汎用リポジトリなど、様々なタイプのデータベースであってもよい。
【0034】
図1のシステム100は、本開示に基づいて説明した様々な方法及び装置を応用することができるように、様々な方法で構成し操作することができる。
図2は、本開示の実施例によるデータ処理方法の例示的なプロセスを示す。
【0035】
図2に示すように、ステップS202において、入力データを確定することができ、入力データは、複数の分詞を含む。
ステップS204において、ゲート行列に基づいて複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定することができる。ここでは、複数のエキスパートネットワークは、複数の分詞を強化するために用いられる。
【0036】
ステップS206において、相関性と各エキスパートネットワークのプリセット容量とに基づいて複数の分詞を複数のエキスパートネットワークに均一に割り当て、複数の分詞を強化することができる。
【0037】
ステップS208において、強化された複数の分詞に基づいてデータ処理結果を確定することができる。
本開示の実施例によって、複数のエキスパートネットワークに対するデータ処理タスクの割り当てを行う際に、最適な割り当てを考慮しつつ、均一な割り当ての制約を満足することができ、それにより、各エキスパートネットワークがいずれもデータ処理過程に機能できるようにし、データ処理効率を向上させる。
【0038】
以下、本開示の原理について詳細に説明する。
Transformerモデルは注意メカニズムに基づくニューラルネットワークモデルであり、主に言語翻訳、テキスト分類などの自然言語処理(NLP)タスクに用いられる。Transformerアーキテクチャは自然言語処理の分野で広く用いられている。Transformerモデルは、主に2つの部分で構成される。エンコーダー(Encoder)とデコーダー(Decoder)である。エンコーダは、入力シーケンスを固定長のベクトル表現に変換し、デコーダは、該ベクトルを出力シーケンスに変換する。エンコーダとデコーダとの間に、入力シーケンスと出力シーケンスとの相関性をキャプチャする1つ又は複数の注意メカニズム層がある。具体的には、Transformerモデルは主に複数のTransformerLayerで構成され、各TransformerLayerはいずれも、自己注意層(Self-Attention)とフィードフォワードネットワーク(Feed-Forward Network(FFN)という2つの主要な部分を含む。自己注意メカニズムは、各語と他の語との相関性を計算し、統合する方法である。この方法は、シーケンス内の距離に関係なく、入力シーケンス内の各要素間の関係をキャプチャする。Transformerモデルでは、自己注意メカニズムは、入力シーケンスまたは出力シーケンスにおける各要素が他の要素に与える影響を計算するために用いられる。フィードフォワードニューラルネットワークは、入力シーケンスの非線形変換に用いられ、完全接続層に基づくニューラルネットワークである。Transformerモデルでは、FFNは2つの完全接続層からなることができる。
【0039】
現在のTransformerネットワーク構造では、普遍的には、大量の行列乗算を運用し、ネットワークパラメータ量の大きさと行列演算の回数とは正比例の関係を呈し、これは実際の運用において、次のような一連の問題につながる。
【0040】
1. 計算複雑度が高い。Transformerベースのモデルは、構造が複雑であり、行列乗算および注意メカニズム計算を大量に含み、その結果、計算およびトレーニング時間が長くなる。これは、大規模データセットおよびリアルタイム応用にとって重要なボトルネックとなる。
【0041】
2. 資源の消費が大きい。Transformerベースのモデルは計算の複雑性が高いため、そのトレーニング及び推論プロセスは、GPU、TPU等を含む大量の計算リソースを必要とする。これは、資源の限られた環境にとって挑戦である。
【0042】
3. 長いシーケンスの処理能力が限られている。Transformerベースのモデルは、短いシーケンスのデータを処理するのに優れているが、長いシーケンスのデータを処理する場合、性能の低下が問題となる可能性がある。これは主に、モデルの自己注意メカニズムが長いシーケンスを処理する際に大量の注意点数を計算する必要があり、計算効率を低下させるためである。
【0043】
したがって、Transformerネットワーク構造では、最適な結果を得るためには、多数のパラメータが必要である。モデルパラメータの量を倍増させると、従来の構造では計算リソースが倍増することを意味する。
【0044】
本開示におけるデータ処理モデルは、大規模プリトレーニングモデル (例えば、大規模言語モデル、ビッグ言語モデル)における混合エキスパートネットワーク (Mix of Experts,MoE)に関する。簡単に言えば、MoEモデルは、Transformerアーキテクチャにおけるフィードフォワードネットワーク(Feed-Forward Network,FFN)モジュールの数を増やし、各フィードフォワードネットワークはエキスパートである。データ処理プロセスにおいて、モデルに入力した異なる分詞(トークンまたは記号とも呼ばれる、token)は選択的に異なるエキスパートに割り当てて計算して、分詞(例えば、分詞を特徴づける特徴ベクトル)の強化を実現する。このようにして、モデルのパラメータ量を増幅することができる(例えば、Z人のエキスパートが設定される場合、FFNモジュールのパラメータをZ倍に増幅することができる)が、計算量は以前と同じである。
【0045】
混合エキスパートネットワークの利点は、計算と記憶量のデカップリングを可能にすることであり、つまり、計算リソースと記憶容量を独立して拡張および最適化できることを意味する。この特性により、本開示の実施例が提供する混合エキスパートネットワークは、限られた計算リソース内でより多くのモデルパラメータを収容でき、これにより、モデルの表現能力と性能を向上させる。また、このデカップリング設計は、最適な性能および効率を達成するために、実際のニーズに応じて計算リソースおよび記憶リソースの割り当てを柔軟に調整することができる。したがって、本開示の実施例が提供する混合エキスパートネットワークは、計算リソースを効率的に利用するために効果的なソリューションを提供し、特にリソースが限られている環境において、より大きな優位性を発揮できる。
【0046】
ステップS202において、入力データを確定することができ、入力データは、複数の分詞を含む。
テキスト処理の例では、テキスト分詞のアルゴリズムを用いて自然言語の入力を処理して、対応する複数の分詞を得ることができる。入力データの分詞は、入力テキストの単一文字または単語に対応するtokenを含んでもよく、特殊記号に対応するtokenを含んでもよい。特殊記号は、例えば、文頭記号[CLS]と異なる文を分割するために用いられるか、または文末に位置する記号[SEP]などを含むことができる。
【0047】
他のデータ処理分野でTransformerベースのネットワーク構造を使用する場合、分詞は、対応的に他のデータ(例えば、画像など)において分割されたデータセグメントを表すことができる。
【0048】
ステップS204において、ゲート行列に基づいて複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定することができる。ここでは、複数のエキスパートネットワークは、複数の分詞を強化するために用いられる。
【0049】
MoEモデルにおいて、ルーティングモジュールを使用して、入力した分詞を対応するエキスパートネットワークに割り当てる。ここで、ルーティングモジュールは一次投影に相当し、入力された分詞のベクトル表現を各エキスパートネットワークに投影する。ルーティングモジュールは式(1)のように表すことができる。
【0050】
【数1】
【0051】
ここで、Xは入力データを表し、Linearは線形マッピングの関数を表し、softmaxは線形マッピングの結果を正規化することを表す。ルーティングモジュールによって出力された結果は、各分詞と複数のエキスパートネットワークの各々との間の相関性を表すために用いられることができる。
【0052】
【0053】
【数2】
【0054】
ここで、Xは入力データを表し、Wはゲート行列を表す。
ステップS206において、相関性と各エキスパートネットワークのプリセット容量とに基づいて複数の分詞を複数のエキスパートネットワークに均一に割り当て、複数の分詞を強化することができる。
【0055】
従来技術では、各ネットワークのフォワードプロセスにおいて、ルーティングモジュールにおいて確定された、分詞との最大の相関性を有するエキスパートネットワークによって、その分詞を処理する。しかし、このような割当方式によって「モデル崩壊」という現象が現れ、新しく導入された複数のエキスパートの場合、モデルはそのうちの1~2人の「エキスパート」のみを利用する傾向があり、残りの「エキスパート」ネットワークは効果的にトレーニングされ、使用されることができず、それにより、ネットワークの予測効果を効果的に高めることができない。関連技術において、補助損失関数を用いて誘導することは、各「エキスパート」ネットワークをいずれもトレーニングすることを可能にする。補助損失関数は、一般的に、次の式(3)の形を有する。
【0056】
【数3】
【0057】
予測のためのゲート部分のエントロピーを上げることによってルーティングモジュールによる予測結果が平均に向かうように誘導する。しかし、補助損失関数を用いて誘導を行った場合でも、実際のネットワーク運用では、複数のtokenが高い計算パフォーマンスを保証するには、スコアリング予測を並行して実行する必要がある。一方、複数のtokenが並行して「ルーティング」を行った場合、「一か所に集まる」ことが発生し、個々の「エキスパート」が取得するtoken数が一致しないことが表れている。現代のコンピューティングハードウェアでは、この不一致は、計算効率の低下につながる。
【0058】
上記課題を解決するために、本開示は、複数の分詞を異なるエキスパートネットワークに均一等に割り当て、全てのエキスパートネットワークが均一な方法で計算リソースを使用し、計算効率を向上させる。
【0059】
入力データに含む分詞数とエキスパートネットワーク数とに基づいて各エキスパートネットワークの所定容量すなわち各エキスパートネットワークが処理できる分詞の数を確定することができる。例えば、各エキスパートネットワークの所定容量は、M/eとして確定されてもよく、ここで、Mは、入力データにおける分語の数であり、eは、エキスパートネットワークの数である。いくつかの例では、M/eの結果を、各エキスパートネットワークの所定容量を確定するために、切り上げられてもよいし、下に切り取られてもよい。エキスパートネットワークに1つの分詞を割り当てるごとに、そのエキスパートネットワークの容量の一部を占有する。
【0060】
いくつかの実施例では、各分詞について、該分詞と最も高い相関性を有するエキスパートネットワークを、ゲート行列に基づいて確定された相関性を使用して確定することができる。該最も高い相関性を有するエキスパートネットワークの残存容量がゼロでない場合、該分詞は、依然として残存容量を有するエキスパートネットワークに割り当てられることができる。複数の分詞に対して順々に相関性を計算して、エキスパートネットワークに割り当てることができる。
【0061】
他の実施例では、複数の分詞に対して複数の割り当てを行うことができる。各割り当ては、エキスパートネットワークに、入力された複数の分詞を一度に強化させる。割り当てられた回数を設定することで、入力された分詞に対するネットワークの計算量を調整できる。明らかなことに、本開示の実施例によるデータ処理モデルによって占有される必要がある計算資源は、入力された分詞の数と、エキスパートネットワークによる分詞の処理回数とに基づいて確定され、一方、データ処理モデルが記憶するパラメータの量は、エキスパートネットワークの数に基づいて確定される。両者の間には関連性がない。したがって、計算量と記憶量とのデカップリングを実現することができる。
【0062】
多回割当の場合、そのうちの一部の割当案において、各分詞を、該分詞との相関性が最も高いエキスパートネットワークに割り当て、他の部分の割当案には、最終的な分配結果が均一な割当になるように制約条件を加えることができる。
【0063】
たとえば、複数の分詞を2回割り当てることができる。ここで、1回目の割当てにおいて、各分詞をいずれも該分詞と最も高い相関性を有するエキスパートネットワークに割り当てることができる。2回目の割当てでは、各分詞を、均一割当の制約の下で、可能な限りより関連性の高いエキスパートネットワークに割り当てる。二回の割り当ての結果により、各エキスパートネットワークが処理する分詞数がほぼ同じであるため、計算資源の均一な割り当てが可能となる。いくつかの例では、最適輸送アルゴリズムに基づいて均一な割り当てを実現することができる。
【0064】
最適輸送アルゴリズムは、数学と最適化の分野で輸送問題を解決するために用いられるアルゴリズムである。最も基本的な形態において、それは、ある場所の集合から別の場所の集合へ、どのように物品を最小のコストで移動させるかに関する。この問題には、物流、画像処理、機械学習などの分野を含む多くのバリエーションがある。最適輸送アルゴリズムでは、一般的に、その各要素がある場所から別の場所への移動コストを表す「コストマトリックス」がある。アルゴリズムの目標は、すべての需要と供給制約を満たしながら総輸送コストを最小限に抑える輸送案を見つけることである。この問題を解決するために、最適輸送アルゴリズムは、一般的に、線形計画、グラフ理論などの数学的ツールを組み合わせる。大規模問題では、より効率的な計算スキルと最適化手法も必要である。機械学習と深層学習の背景において、最適輸送アルゴリズムは、モデルの性能を向上させるツールとして、特にデータ分布間のアライメント、マッピングまたは移行学習に関する時のツールとして使用されている。これは、異なるデータセット間のより良好な対応関係を確立するのに役立ち、それにより、デルの汎化能力を向上させることができる。最適輸送演算法を利用して、様々な応用場面で高効率、低コストのリソース割当と伝送案を実現することができる。
【0065】
本開示の実施例における分詞に対する割り当ての問題は、輸送の問題に変換することができ、それにより、最適輸送アルゴリズムを利用して各エキスパートネットワークへの分詞の均一な割当を実現することができる。
【0066】
いくつかの例では、ステップS206は、相関性に基づいて第1割当案を確定し、第1割当案において、各分詞は、該分詞と最も高い相関性を有するエキスパートネットワークに割り当てることと、第1割当案と各エキスパートネットワークのプリセット容量とに基づいて各エキスパートネットワークの残存容量を確定することと、相関性と各エキスパートネットワークの残存容量とに基づいて第2割当案を確定し、ここで、第2割当案は、複数の分詞が複数のエキスパートネットワークに均一に割り当てられるように、第1割当案に組み合わせることとを含むことができる。例えば、最適輸送アルゴリズムを基に、相関性と各エキスパートネットワークの残余容量とに基づいて第2割当案を確定することができる。例において、最適輸送アルゴリズムは、sinkhornアルゴリズムまたは任意の他の適切な最適輸送アルゴリズムであってもよい。Sinkhornアルゴリズムは、コスト(分詞とエキスパートネットワークとの相関性)を考慮して、均一な割り当ての制約を満たすことができる。sinkhornアルゴリズムを利用して、GPUなどの加速ハードウェアで効率的に実現できる。分詞をエキスパートのネットワークに割り当てる過程を最適輸送問題に変換することにより、最適輸送アルゴリズムを用いて、各分詞に可能な限り自己との相関性が最も高いエキスパートを選択させつつ、輸送結果の均一性を保証し、それにより各エキスパートが同数(またはほぼ同じ数)の分詞を処理して、最適な計算効率を実現する。
【0067】
いくつかの例では、各エキスパートネットワークのプリセット容量は、同じであってもよい。複数回の割り当てを行う場合、(N×M)/eに基づいて各エキスパートネットワークのプリセット容量を確定することができる。ここで、Nは割当て回数、Mは入力データにおける分詞の数、eはエキスパートネットワークの数である。
【0068】
ステップS208において、強化された複数の分詞に基づいてデータ処理結果を確定することができる。例えば、エキスパートネットワークは、TransformerネットワークアーキテクチャにおけるFFNの機能を実現する。割り当てられた分詞がエキスパートネットワークを介して強化された後、強化された分詞は、自己注意層のようなネットワーク内の次の層に入力することができる。いくつかの例では、ステップS208は、自己注意メカニズムに基づいて、強化された複数の分詞を処理してデータ処理結果を得ることを含むことができる。
【0069】
図3は、本開示の実施例によるデータ処理モデルの例示的なブロック図を示す。図3に示すデータ処理モデルを用いて図2に示すデータ処理方法を実現することができる。図3に関連して説明するデータ処理モデルは、ディープニューラルネットワークまたは本開示の原理と一致する任意の他の数学モデルであってもよい。ビッグ言語モデルなどの大規模言語モデルに図3に示すデータ処理モデルの構造を用いることができる。
【0070】
図3に示すように、データ処理モデルは、ルーティング層310と、複数のエキスパートネットワークを含むエキスパートネットワーク層320と、出力層330とを含むことができる。
【0071】
ルーティング層310はゲート行列に基づいて入力データにおける複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定するように構成され、ここでは、相関性は、各エキスパートネットワークのプリセット容量に合わせて複数の分詞を均一に複数のエキスパートネットワークに割り当てるために用いられる。
【0072】
エキスパートネットワーク層320におけるエキスパートネットワークは、割り当てられた分詞を強化するように構成することができる。
出力層330は、強化された複数の分詞に基づいてデータ処理結果を確定するように構成することができる。
【0073】
いくつかの実施例では、ゲート行列に基づいて複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定することは、入力データとゲート行列との積に基づいて、複数のエキスパートネットワークの各エキスパートネットワークと、複数の分詞の各分詞との相関性を確定することを含むことができる。
【0074】
いくつかの実施例では、複数の分詞を複数のエキスパートネットワークに均一に割り当てることは、相関性に基づいて第1割当案を確定し、第1割当案において、各分詞は、該分詞と最も高い相関性を有するエキスパートネットワークに割り当てることと、第1割当案と各エキスパートネットワークのプリセット容量とに基づいて各エキスパートネットワークの残存容量を確定することと、相関性と各エキスパートネットワークの残存容量とに基づいて第2割当案を確定し、ここで、第2割当案は、複数の分詞が複数のエキスパートネットワークに均一に割り当てられるように、第1割当案に組み合わせることとを含むことができる。
【0075】
いくつかの実施例では、各エキスパートネットワークのプリセット容量は、同じであってもよい。
いくつかの実施例では、相関性と各エキスパートネットワークの残存容量に基づいて第2割当案を確定することは、最適入力アルゴリズムを基に、相関性と各エキスパートネットワークの残余容量とに基づいて第2割当案を確定することを含むことができる。
【0076】
いくつかの実施例では、最適輸送アルゴリズムは、sinkhornアルゴリズムであってもよい。
いくつかの実施例では、出力層は、自己注意メカニズムに基づいて強化された複数の分詞を処理してデータ処理結果を得るように構成されることができる。
【0077】
図4は、本開示の実施例による、データ処理モデルをトレーニングするための方法の例示的なフローチャートを示す。図4に示す方法を用いて図3に関連して説明するデータ処理モデルをトレーニングすることができる。
【0078】
ステップS402では、サンプル入力を確定することができ、ここでは、サンプル入力は複数の分詞を含む。予め確定されたトレーニングデータセットからサンプル入力の内容を選択することができる。
【0079】
ステップS404において、ゲート行列に基づいて入力された複数の分詞の各分詞と、複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定することができる。ここでは、複数のエキスパートネットワークは、複数の分詞を強化するために用いられる。ステップS204において確定される相関性は、各エキスパートネットワークのプリセット容量に合わせて、複数のエキスパートネットワークに複数の分詞を均一に割り当てるために用いられることができる。ここで、各エキスパートネットワークのプリセット容量は同じで、本開示において図2に関連して説明する方法を使用して各エキスパートネットワークのプリセット容量を確定することができる。
【0080】
ステップS406では、ゲート行列に基づいて損失値を確定することができる。ここでは、ゲート行列が直交行列に近いほど、損失値は小さくなる。いくつかの実施例では、直交行列の特性に基づいて損失値を設計することができる。直交行列の特徴の1つは、直交行列とその転置行列との積が単位行列であることである。したがって、ゲート行列とその転置行列との積を確定し、且つ単位行列との誤差に基づいて損失値を確定することができる。損失値は、例えば、以下の式(4)に基づいて確定されることができる。
【0081】
【数4】
【0082】
【0083】
ステップS408では、ステップS406で確定された損失値に基づいて、ゲート行列のパラメータを調整して、トレーニングされたデータ処理モデルを得ることができる。
【0084】
本開示の実施例によって提供されるモデルトレーニング方法によって、トレーニングされたデータ処理モデルにおける各エキスパートネットワークのトレーニング可能なパラメータを表すゲート行列における各エキスパートネットワークに対応するベクトルが互いに(略)直交するように損失値を設定することにより、各エキスパートネットワークは、異なる方法で分詞を強化することができる。ゲート行列が直交行列に近い場合、各エキスパートネットワークは異なる方法で各分詞と相関し、それにより、各エキスパートネットワークは異なる分詞を選択する傾向があり、各分詞にエキスパートネットワークを割り当てる場合、エキスパートネットワークが同じ分詞を選択する傾向があり、その結果、部分的な分詞が欠落してしまう状況を回避する。
【0085】
図5Aは関連技術によるデータ処理プロセスの一例を示す。図5Aに示す例では、ルーティングモジュールのパラメータが同質化する現象が存在し、具体的には、ゲート行列における各エキスパートネットワークに対するベクトルの点乗角度は近く、式(5)に示すとおりである。
【0086】
【数5】
【0087】
【0088】
図5Aに示す例において、同質化現象が存在するために、異なるエキスパートネットワーク510および520は、処理のために同じ分詞(例えば、C、D、E、F、G)を選択する傾向があり、それにより、部分的な分詞(A、B)は見落とされて処理されることができない。
【0089】
図5Bは本開示の実施例によるデータ処理プロセスの一例を示す。図4を参照して説明されるトレーニング方法によってトレーニングされたデータ処理モデルにおけるゲート行列における各エキスパートネットワークに対するベクトルは直交する傾向があるため、異なるエキスパートネットワークは異なる分詞を選択して処理することができ、図5Aに見られる均質化の問題を回避する。
【0090】
図6は本開示の実施例によるデータ処理装置の例示的なブロック図を示す。図6に示すように、データ処理装置600は、入力ユニット610、相関性確定ユニット620、割り当てユニット630、及び出力ユニット640を含むことができる。図6で説明されるデータ処理装置を用いて図2に関連して説明されるデータ処理方法を実行することができる。
【0091】
入力ユニット610は入力データを確定するように構成され、入力データは複数の分詞を含む。
相関性確定ユニット620はゲート行列に基づいて複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定するように構成され、ここで、複数のエキスパートネットワークは複数の分詞を強化するために用いられる。
【0092】
割り当てユニット630は相関性と各エキスパートネットワークのプリセット容量とに基づいて複数の分詞を複数のエキスパートネットワークに均一に割り当て、複数の分詞を強化するように構成される。
【0093】
出力ユニット640は複数の強調された分詞に基づいてデータ処理結果を確定するように構成される。
いくつかの実施例では、相関性確定ユニットは、入力データとゲート行列との積に基づいて、複数のエキスパートネットワークの各エキスパートネットワークと、複数の分詞の各分詞との相関性を確定することを含むように構成される。
【0094】
いくつかの実施例では、相関性と各エキスパートネットワークのプリセット容量とに基づいて複数の分詞を複数のエキスパートネットワークに均一に割り当てることは、相関性に基づいて第1割当案を確定し、第1割当案において、各分詞は、該分詞と最も高い相関性を有するエキスパートネットワークに割り当てることと、第1割当案と各エキスパートネットワークのプリセット容量とに基づいて各エキスパートネットワークの残存容量を確定することと、相関性と各エキスパートネットワークの残存容量とに基づいて第2割当案を確定し、ここで、第2割当案は、複数の分詞が複数のエキスパートネットワークに均一に割り当てられるように、第1割当案に組み合わせることとを含むことができる。
【0095】
いくつかの実施例では、各エキスパートネットワークのプリセット容量は同じであってもよい。
いくつかの実施例では、相関性と各エキスパートネットワークの残存容量に基づいて第2割当案を確定することは、最適入力アルゴリズムを基に、相関性と各エキスパートネットワークの残余容量とに基づいて第2割当案を確定することを含むことができる。
【0096】
いくつかの実施例では、最適輸送アルゴリズムは、sinkhornアルゴリズムであってもよい。
いくつかの実施例では、強化された複数の分詞に基づいてデータ処理結果を確定することは、自己注意メカニズムに基づいて強化された複数の分詞を処理してデータ処理結果を得ることを含むことができる。
【0097】
図6に示す装置600の各モジュール又はユニットは、図2を参照して説明される方法200の各ステップに対応することができることを理解されたい。したがって、上述した方法200に関して説明される動作、特徴、および利点は、装置600および装置600に含まれるモジュールおよびユニットに同様に適用可能である。簡潔のために、いくつかの操作、特徴及び利点はここでは説明を省略する。
【0098】
図7は、本開示の実施例による、データ処理モデルをトレーニングするための装置の例示的なブロック図を示す。図7に示すように、装置700は、入力ユニット710、相関性確定ユニット720、損失確定ユニット730、及びパラメータ調整ユニット740を含むことができる。図7に示すデータ処理装置を用いて図4に関連して説明されるデータ処理モデルをトレーニングするための方法を実行することができる。
【0099】
入力ユニット710はサンプル入力を確定するように構成されることができ、サンプル入力は複数の分詞を含む。
相関性確定ユニット720はゲート行列に基づいて複数の分詞の各分詞と複数のエキスパートネットワークの各エキスパートネットワークとの相関性を確定するように構成されることができる。ここでは、複数のエキスパートネットワークは複数の分詞を強化するために用いられ、相関性は各エキスパートネットワークのプリセット容量に合わせて複数の分詞を複数のエキスパートネットワークに均一に割り当てるために用いられる。
【0100】
損失確定ユニット730は、ゲート行列に基づいて損失値を確定するように構成されることができ、ここで、ゲート行列が直交行列に近いほど損失値は小さくなる。
【0101】
パラメータ調整ユニット740は、損失値に基づいてゲート行列のパラメータを調整して、トレーニングされたデータ処理モデルを得るように構成されることができる。
【0102】
いくつかの実施例では、損失確定ユニットは、ゲート行列とゲート行列の転置行列との積を確定し、積と単位行列との誤差に基づいて損失値を確定するように構成されることができる。
【0103】
いくつかの実施例では、誤差は最小平均二乗誤差である。
図7に示す装置700の各モジュール又はユニットは、図4を参照して説明される方法400の各ステップに対応することができることを理解されたい。したがって、上述した方法400に関して説明される動作、特徴、および利点は、装置700および装置700に含まれるモジュールとユニットに同様に適用可能である。簡潔のために、いくつかの操作、特徴及び利点はここでは説明を省略する。
【0104】
上記では、特定のモジュールを参照して特定の機能を検討したが、本明細書で説明する各ユニットの機能は、複数のユニットに分割でき、および/または複数のユニットの少なくともいくつかの機能が、単一のユニットに組み合わせられることを留意されたい。
【0105】
本明細書では、ソフトウェアハードウェア要素またはプログラムモジュールの一般的なコンテキストで様々な技術を説明することができることも理解されたい。図6図7に関して説明される各ユニットは、ハードウェアにおいて、またはソフトウェアおよび/またはファームウェアと組み合わせたハードウェアにおいて実現することができる。例えば、これらのユニットは、1つ又は複数のプロセッサにおいて実行され、コンピュータ可読記憶媒体に記憶されるように構成されたコンピュータプログラムコード/命令として実装することができる。選択的に、これらのユニットはハードウェアロジック/回路として実装することができる。例えば、いくつかの実施例では、ユニット610~640、ユニット710~740のうちの1つまたは複数は、システムオンチップ(System on Chip,SoC)で一緒に実現されてもよい。SoCは、集積回路チップ(例えば、プロセッサ(例えば、中央処理ユニット(Central Processing Unit、CPU)、マイクロコントローラ、マイクロプロセッサ、デジタル信号プロセッサ(Digital Signal Processor、DSP)などを含む)、メモリ、1つ又は複数の通信インターフェース、及び/又は他の回路中の1つ又は複数のコンポーネント)を含んでもよく、オプションで受信したプログラムコードの実行、及び/又は埋め込みファームウェアを含むことで機能を実行することができる。
【0106】
本開示の別の態様によれば、電子機器を更に提供し、前記電子機器は、少なくとも一つのプロセッサと、前記少なくとも一つのプロセッサに通信接続されたメモリとを含み、前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令は前記少なくとも一つのプロセッサにより実行されると、前記少なくとも1つのプロセッサが、本開示の実施例による方法を実行することを可能にする。
【0107】
本開示の別の態様によれば、コンピュータ命令を記憶した非一時的コンピュータ可読記憶媒体も提供し、コンピュータ命令は、前記コンピュータに、本開示の実施例による方法を実行させるために用いられる。
【0108】
本開示の別の態様によれば、コンピュータプログラムを含むコンピュータプログラム製品も提供し、ここで、コンピュータプログラムは、プロセッサによって実行されると、本開示の実施例による方法を実現する。
【0109】
本開示の技術案において、関連するユーザ個人情報の収集、記憶、使用、加工、伝送、提供と開示などの処理は、すべて関連法律法規の規定に適合し、公序良俗に反しない。
【0110】
本開示の実施例によれば、電子機器、可読記憶媒体及びコンピュータプログラム製品をさらに提供する。
次に、図8を参照して、本開示のサーバまたはクライアントとして機能することができる電子機器800の構成ブロック図について説明し、これは、本開示の各態様に適用可能なハードウェア装置の一例であってもよい。電子機器は、様々な形態のデジタル電子コンピュータ、例えば、ラップトップ型コンピュータ、デスクトップ型コンピュータ、ステージ、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、大型コンピュータ、その他の適切なコンピュータを示す。電子機器は更に、様々な形態の移動装置、例えば、パーソナルデジタル処理、携帯電話、インテリジェントフォン、ウェアラブル機器とその他の類似する計算装置を示してよい。本明細書に示される部品、これらの接続関係及びこれらの機能は例示的なものに過ぎず、本明細書に説明した及び/又は請求した本開示の実現を制限しない。
【0111】
図8に示すように、電子機器800は、リードオンリーメモリ(ROM)802に記憶されているプログラム又は記憶ユニット808からランダムアクセスメモリ(RAM)803にロードされたプログラムに基づいて各種の適切な動作及び処理を実行することができる計算ユニット801を含む。RAM803には、更に電子機器800を操作するために必要とされる様々なプログラムとデータが記憶されている。計算ユニット801、ROM802及びRAM803は、バス804を介して互いに接続される。入力/出力(I/O)インタフェース805もバス804に接続される。
【0112】
電子機器800における複数の部材は、I/Oインタフェース805に接続され、複数の部材は、入力ユニット806と、出力ユニット807と、記憶ユニット808と、通信ユニット809とを含む。入力ユニット806は、電子機器800に情報を入力することができる任意のタイプのデバイスであってもよく、入力ユニット806は、入力された数字または文字情報を受信し、電子機器のユーザ設定および/または機能制御に関するキー信号入力を生成することができ、マウス、キーボード、タッチスクリーン、トラックパッド、トラックボール、ジョイスティック、マイクおよび/またはリモコンを含むことができるが、これらに限定されない。出力ユニット 807 は、情報を提示することができる任意のタイプのデバイスであってよく、ディスプレイ、スピーカ、ビデオ/オーディオ出力端子、バイブレータまたはプリンタを含むことができるが、これらに限定されない。記憶ユニット808は、磁気ディスク、光ディスクを含むことができるが、これらに限定されない。通信ユニット809は、電子機器800が、インターネットなどのコンピュータネットワークおよび/または様々な電気通信ネットワークを介して他のデバイスと情報/データを交換することを可能にし、且つモデム、ネットワークカード、赤外線通信デバイス、無線通信トランシーバおよび/またはチップセットを含むことができるが、これらに限定されない。例えばブルートゥースTMデバイス、802.11デバイス、WiFiデバイス、WiMaxデバイス、セルラー通信デバイスおよび/またはその類似物などが挙げられる。
【0113】
計算ユニット801は、処理および計算能力を有する様々な汎用および/または専用処理コンポーネントであってもよい。計算ユニット801のいくつかの例は、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、様々な専用人工知能(AI)計算チップ、機械学習モデルアルゴリズムを実行する様々な計算ユニット、デジタル信号プロセッサ(DSP)、および任意の適切なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。計算ユニット801は、上述した方法200、400などの様々な方法および処理を実行する。例えば、いくつかの実施例において、方法200、400は、機械可読媒体内に有形的に具現化されるコンピュータソフトウェアプログラムとして実現することができる。例えば、記憶ユニット808が挙げられる。いくつかの実施例では、コンピュータプログラムの一部又は全部は、ROM802及び/又は通信ユニット809を介して電子装置800にロード及び/又はインストールすることができる。コンピュータプログラムがRAM803にロードされ、計算ユニット801によって実行されると、上述の方法200、400の1つ又は複数のステップを実行することができる。代替的に、他の実施例では、計算ユニット801は、他の任意の適切な方法(例えば、ファームウェアを用いて)によって方法200、400を実行するように構成されることができる。
【0114】
本明細書で上述したシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールド・プログラマブル・ゲート・アレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップ(SOC)、複雑なプログラマブル論理デバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はこれらの組み合わせにおいて実装することができる。これらの様々な実施形態は、一つ以上のコンピュータプログラムに実施され、該一つ以上のコンピュータプログラムは少なくとも一つのプログラマブルプロセッサを含むプログラマブルシステムで実行し及び/又は解釈してもよく、該プログラマブルプロセッサは専用又は汎用プログラマブルプロセッサであってもよく、記憶システム、少なくとも一つの入力装置、少なくとも一つの出力装置からデータと命令を受信し、データと命令を該記憶システム、該少なくとも一つの入力装置、該少なくとも一つの出力装置に送信してよいこと、を含んでもよい。
【0115】
本開示の方法を実施するプログラムコードは一つ以上のプログラミング言語のいかなる組み合わせで書かれてよい。これらのプログラムコードを汎用コンピュータ、特殊目的のコンピュータ又は他のプログラマブルデータ処理装置のプロセッサ又はコントローラに提供してよく、よってプログラムコードはプロセッサ又はコントローラにより実行される時に流れ図及び/又はブロック図に規定の機能/操作を実施する。プログラムコードは完全に機械で実行してよく、部分的に機械で実行してよく、独立ソフトウェアパッケージとして部分的に機械で実行し且つ部分的に遠隔機械で実行してよく、又は完全に遠隔機械又はサーバで実行してよい。
【0116】
本開示のコンテキストにおいて、機械可読媒体は有形の媒体であってもよく、命令実行システム、装置又はデバイスに使用される又は命令実行システム、装置又はデバイスに結合されて使用されるプログラムを具備又は記憶してよい。機械可読媒体は機械可読信号媒体又は機械可読記憶媒体であってもよい。機械可読媒体は、電子、磁気、光学、電磁、赤外線、又は半導体システム、装置又はデバイス、又は上記内容のいかなる適切な組み合わせを含んでもよいが、これらに限定されない。機械可読記憶媒体のより具体的な例は、一つ以上のリード線による電気接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、消去可能なプログラマブル読み出し専用メモリ(EPROM又はフラッシュメモリ)、光ファイバー、ポータブルコンパクトディスク読み出し専用メモリ(CD-ROM)、光記憶機器、磁気記憶機器、又は上記内容のいかなる適切な組み合わせを含む。
【0117】
ユーザとのインタラクションを提供するために、コンピュータにはここで説明したシステムと技術を実施してよく、該コンピュータは、ユーザに情報を表示するための表示装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)監視モニタ)、及びキーボードとポインティング装置(例えば、マウスやトラックボール)を備え、ユーザは該キーボードと該ポインティング装置を介してコンピュータに入力してよい。その他のタイプの装置は更に、ユーザとのインタラクションを提供するためのものであってもよく、例えば、ユーザに提供するフィードバックはいかなる形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、いかなる形態(音入力、音声入力、又は触覚入力を含む)でユーザからの入力を受信してよい。
【0118】
ここで述べたシステムや技術は、バックステージ部材を含む計算システム(例えば、データサーバとして)や、ミドルウェア部材を含む計算システム(例えば、アプリケーションサーバ)や、フロントエンド部材を含む計算システム(例えば、グラフィカルユーザインターフェースやウェブブラウザを有するユーザコンピュータであり、ユーザが、そのグラフィカルユーザインターフェースやウェブブラウザを通じて、それらのシステムや技術の実施形態とのインタラクションを実現できる)、あるいは、それらのバックステージ部材、ミドルウェア部材、あるいはフロントエンド部材の任意の組み合わせからなる計算システムには実施されてもよい。システムの部材は、任意の形式や媒体のデジタルデータ通信(例えば、通信ネットワーク)により相互に接続されてもよい。通信ネットワークの一例は、ローカルネットワーク(LAN)、広域ネットワーク(WAN)、インターネットとブロックチェーンネットワークを含む。
【0119】
コンピュータシステムは、クライアント側とサーバを含んでもよい。クライアント側とサーバは、一般的に相互に遠く離れ、通常、通信ネットワークを介してインタラクションを行う。互にクライアント側-サーバという関係を有するコンピュータプログラムを対応するコンピュータで運転することによってクライアント側とサーバとの関係を生成する。サーバは、クラウドサーバであってもよく、分散型システムのサーバでも、又はブロックチェーンと組み合わされたサーバであってもよい。
【0120】
理解すべきこととして、前述した様々な形態のフローを用いて、ステップを改めて順位付け、増加又は削除してよい。例えば、本開示に記載された各ステップは、並列的に実行してもよいし、順次実行してもよいし、異なる順序で実行してもよく、本開示に開示された技術案が所望する結果を実現できれば、本文はこれに限定されないことである。
【0121】
本開示の実施例又は例は図面を参照して説明されたが、上記の方法、システム、及び装置は単なる例示的な実施例又は例であり、本開示の範囲はこれらの実施例又は例によって制限されるものではなく、授権後の特許請求の範囲及びその均一範囲のみによって限定されることを理解されたい。実施例又は例の様々な要素は省略されてもよく、又はそれらの均一要素によって代替されてもよい。なお、各ステップは、本開示で説明した順序とは異なる順序で実行されてもよい。更に、実施例又は例の様々な要素は、様々な方法で組み合わせられてもよい。重要なのは、技術の進化に伴い、ここで説明される多くの要素は、本開示の後に現れる同等の要素に置き換えることができるということである。
図1
図2
図3
図4
図5A
図5B
図6
図7
図8
【外国語明細書】