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

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

▶ 北京小米智能科技有限公司の特許一覧

特表2022-509892ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体
<図1>
  • 特表-ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体 図1
  • 特表-ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体 図2
  • 特表-ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体 図3
  • 特表-ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体 図4
  • 特表-ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体 図5
  • 特表-ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体 図6
  • 特表-ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体 図7
  • 特表-ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体 図8
  • 特表-ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-01-25
(54)【発明の名称】ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体
(51)【国際特許分類】
   G06N 20/00 20190101AFI20220118BHJP
   G06N 3/08 20060101ALI20220118BHJP
【FI】
G06N20/00 130
G06N3/08
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2020502271
(86)(22)【出願日】2019-11-26
(85)【翻訳文提出日】2020-01-17
(86)【国際出願番号】 CN2019120801
(87)【国際公開番号】W WO2021077529
(87)【国際公開日】2021-04-29
(31)【優先権主張番号】201911019142.1
(32)【優先日】2019-10-24
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】319003367
【氏名又は名称】北京小米智能科技有限公司
【氏名又は名称原語表記】Beijing Xiaomi Intelligent Technology Co.,Ltd.
【住所又は居所原語表記】NO.003, floor 3, building 6, yard 33, middle Xierqi Road, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】110000729
【氏名又は名称】特許業務法人 ユニアス国際特許事務所
(72)【発明者】
【氏名】李 ▲響▼
(72)【発明者】
【氏名】▲孫▼ 于惠
(72)【発明者】
【氏名】姜 佳良
(72)【発明者】
【氏名】崔 建▲偉▼
(57)【要約】
本発明は、ニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び、電子装置、並びにプログラム及び記録媒体に関する。ニューラルネットワークモデルを圧縮する方法は、複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得し、それぞれのトレーニングサンプルペアが、ソースデータ及びソースデータに対応するターゲットデータを含むステップと、ソースデータを入力とし、ターゲットデータを検証として、元の教師モデルをトレーニングするステップと、トレーニングサンプルセット及び元の教師モデルに基づいて中間教師モデルをトレーニングし、1つ又は複数の中間教師モデルが教師モデルセットを構成するステップと、トレーニングサンプルセット、元の教師モデル及び教師モデルセットに基づいて複数の候補生徒モデルをトレーニングし、複数の候補生徒モデルが生徒モデルセットを構成するステップと、複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するステップと、を含む。複数の教師モデルを導入することにより、生徒モデルのトレーニングをマルチレベルでガイドすることを実現し、これにより、生徒モデルの品質を向上させる。
【選択図】図1
【特許請求の範囲】
【請求項1】
複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得し、それぞれのトレーニングサンプルペアが、ソースデータ及び前記ソースデータに対応するターゲットデータを含むステップと、
前記ソースデータを入力とし、前記ターゲットデータを検証として、元の教師モデルをトレーニングするステップと、
前記トレーニングサンプルセット及び前記元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングし、前記1つ又は複数の中間教師モデルが教師モデルセットを構成するステップと、
前記トレーニングサンプルセット、前記元の教師モデル及び前記教師モデルセットに基づいて複数の候補生徒モデルをトレーニングし、前記複数の候補生徒モデルが生徒モデルセットを構成するステップと、
前記複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するステップと、を含む
ことを特徴とするニューラルネットワークモデルを圧縮する方法。
【請求項2】
いずれかの前記中間教師モデルのモデルパラメータの総数は、前記元の教師モデルのモデルパラメータの総数よりも少ない
ことを特徴とする請求項1に記載のニューラルネットワークモデルを圧縮する方法。
【請求項3】
前記トレーニングサンプルセット及び前記元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングし、前記1つ又は複数の中間教師モデルが教師モデルセットを構成するステップは、前記ソースデータを入力とし、複雑な教師モデルにより出力された疑似ターゲットデータを検証として、トレーニングされるそれぞれの中間教師モデルをトレーニングするステップを含み、前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル、又はトレーニング済み且つ前記モデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである
ことを特徴とする請求項2に記載のニューラルネットワークモデルを圧縮する方法。
【請求項4】
次の順位の中間教師モデルのモデルパラメータの総数が前の順位の中間教師モデルのモデルパラメータの総数よりも小さくなるように、前記教師モデルセットにおける前記1つ又は複数の中間教師モデルは、それぞれのモデルパラメータの総数に従って降順で順位付けされ、且つ、現在の順位の中間教師モデルをトレーニングするための前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル又はトレーニング済みのいずれかの前の順位の中間教師モデルである
ことを特徴とする請求項3に記載のニューラルネットワークモデルを圧縮する方法。
【請求項5】
前記トレーニングサンプルセット、前記元の教師モデル及び前記教師モデルセットに基づいて複数の候補生徒モデルをトレーニングし、前記複数の候補生徒モデルが生徒モデルセットを構成するステップは、
前記複数の候補生徒モデルに一対一に対応する複数のトレーニングパスを確定し、且つ、前記トレーニングパスが、前記元の教師モデルを起点としてそのまま対応する候補生徒モデルに至るか、又は前記元の教師モデルを起点として少なくとも1つの前記中間教師モデルを経由してから対応する候補生徒モデルに至るステップと、
それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの前記中間教師モデル及び対応する候補生徒モデルをトレーニングするステップと、を含む
ことを特徴とする請求項2に記載のニューラルネットワークモデルを圧縮する方法。
【請求項6】
前記それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの前記中間教師モデル及び対応する候補生徒モデルをトレーニングするステップは、
前記トレーニングパスが、前記元の教師モデルを起点としてそのまま対応する候補生徒モデルに至る場合、前記ソースデータを入力とし、トレーニング済みの前記元の教師モデルにより出力された疑似ターゲットデータを対応する候補生徒モデルの検証とするステップ、
又は、
前記トレーニングパスが、前記元の教師モデルを起点として少なくとも1つの前記中間教師モデルを経由してから対応する候補生徒モデルに至る場合、前記ソースデータを入力とし、前記トレーニングパスにおける隣接する前の複雑な教師モデルにより出力された疑似ターゲットデータを検証として、それぞれの中間教師モデルをトレーニングし、且つ、トレーニングパスにおける候補生徒モデルに隣接する前の中間教師モデルにより出力された疑似ターゲットデータを候補生徒モデルの検証として、前記候補生徒モデルをトレーニングするステップを含み、
前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル、又はトレーニング済み且つ前記モデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである
ことを特徴とする請求項5に記載のニューラルネットワークモデルを圧縮する方法。
【請求項7】
前記複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するステップは、検証セットにより前記複数の候補生徒モデルの出力結果の精度を検出し、前記精度に応じて前記対象生徒モデルを選択するステップを含む
ことを特徴とする請求項1に記載のニューラルネットワークモデルを圧縮する方法。
【請求項8】
いずれかの前記中間教師モデルのモデルパラメータの総数が前記元の教師モデルのモデルパラメータの総数よりも少ないステップは、いずれかの前記中間教師モデルの層数が前記元の教師モデルの層数よりも少ないステップを含む
ことを特徴とする請求項2に記載のニューラルネットワークモデルを圧縮する方法。
【請求項9】
前記複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得するステップは、第1言語コーパスをソースデータとして取得し、前記第1言語コーパスと同一の意味を持つ第2言語コーパスをターゲットデータとして取得するステップを含む
ことを特徴とする請求項1に記載のニューラルネットワークモデルを圧縮する方法。
【請求項10】
前記ソースデータを入力とし、前記ターゲットデータを検証として、元の教師モデルをトレーニングするステップは、
前記第1言語コーパス及び前記第2言語コーパスを単語ごとに分割し、それぞれ複数の第1言語の単語及び複数の第2言語の単語を取得するステップと、
それぞれ前記複数の第1言語の単語及び前記複数の第2言語の単語をベクトル化することにより対応する複数の第1言語の単語ベクトル及び複数の第2言語の単語ベクトルを取得するステップと、
前記第1言語の単語ベクトルに基づいて、エンコーダ及びアテンションメカニズムにより第1言語コーパスベクトルを取得するステップと、
前記第2言語の単語ベクトルに基づいて、デコーダ及びアテンションメカニズムにより第2言語コーパスベクトルを取得するステップと、
前記第1言語コーパスベクトル及び前記第2言語コーパスベクトルに応じて、前記元の教師モデルをトレーニングするステップと、を含む
ことを特徴とする請求項9に記載のニューラルネットワークモデルを圧縮する方法。
【請求項11】
コーパスを取得するステップと、
請求項1~10のいずれか1項に記載のニューラルネットワークモデルを圧縮する方法により得られた対象生徒モデルであるニューラルネットワークモデルにより前記コーパスを翻訳するステップと、
翻訳結果を出力するステップと、を含む
ことを特徴とするコーパス翻訳方法。
【請求項12】
複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得するためのトレーニングサンプル取得ユニットであって、それぞれのトレーニングサンプルペアが、ソースデータ及び前記ソースデータに対応するターゲットデータを含むトレーニングサンプル取得ユニットと、
前記ソースデータを入力とし、前記ターゲットデータを検証として、元の教師モデルをトレーニングするための元のモデルトレーニングユニットと、
前記トレーニングサンプルセット及び前記元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングするための中間モデルトレーニングユニットであって、前記1つ又は複数の中間教師モデルが教師モデルセットを構成する中間モデルトレーニングユニットと、
前記トレーニングサンプルセット、前記元の教師モデル及び前記教師モデルセットに基づいて複数の候補生徒モデルをトレーニングするための生徒モデルトレーニングユニットであって、前記複数の候補生徒モデルが生徒モデルセットを構成する生徒モデルトレーニングユニットと、
前記複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するための対象モデル選択ユニットと、を含む
ことを特徴とするニューラルネットワークモデルを圧縮する装置。
【請求項13】
いずれかの前記中間教師モデルのモデルパラメータの総数は、前記元の教師モデルのモデルパラメータの総数よりも少ない
ことを特徴とする請求項12に記載のニューラルネットワークモデルを圧縮する装置。
【請求項14】
前記中間モデルトレーニングユニットは、さらに、前記ソースデータを入力とし、複雑な教師モデルにより出力された疑似ターゲットデータを検証として、トレーニングされるそれぞれの中間教師モデルをトレーニングするためのものであり、前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル、又はトレーニング済み且つ前記モデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである
ことを特徴とする請求項13に記載のニューラルネットワークモデルを圧縮する装置。
【請求項15】
次の順位の中間教師モデルのモデルパラメータの総数が前の順位の中間教師モデルのモデルパラメータの総数よりも小さくなるように、前記教師モデルセットにおける前記1つ又は複数の中間教師モデルは、それぞれのモデルパラメータの総数に従って降順で順位付けされ、且つ、現在の順位の中間教師モデルをトレーニングするための前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル又はトレーニング済みのいずれかの前の順位の中間教師モデルである
ことを特徴とする請求項14に記載のニューラルネットワークモデルを圧縮する装置。
【請求項16】
前記生徒モデルトレーニングユニットは、
前記複数の候補生徒モデルに一対一に対応する複数のトレーニングパスを確定するためのパス確認サブユニットであって、前記トレーニングパスが、前記元の教師モデルを起点としてそのまま対応する候補生徒モデルに至るか、又は前記元の教師モデルを起点として少なくとも1つの前記中間教師モデルを経由してから対応する候補生徒モデルに至るパス確認サブユニットと、
それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの前記中間教師モデル及び対応する候補生徒モデルをトレーニングするためのトレーニングサブユニットと、をさらに含む
ことを特徴とする請求項13に記載のニューラルネットワークモデルを圧縮する装置。
【請求項17】
前記トレーニングサブユニットは、さらに、前記トレーニングパスが、前記元の教師モデルを起点としてそのまま対応する候補生徒モデルに至る場合、前記ソースデータを入力とし、トレーニング済みの前記元の教師モデルにより出力された疑似ターゲットデータを対応する候補生徒モデルの検証とし、
又は、
前記トレーニングパスが、前記元の教師モデルを起点として少なくとも1つの前記中間教師モデルを経由してから対応する候補生徒モデルに至る場合、前記ソースデータを入力とし、前記トレーニングパスにおける隣接する前の複雑な教師モデルにより出力された疑似ターゲットデータを検証として、それぞれの中間教師モデルをトレーニングし、且つ、トレーニングパスにおける候補生徒モデルに隣接する前の中間教師モデルにより出力された疑似ターゲットデータを候補生徒モデルの検証として、候補生徒モデルをトレーニングするためのものであり、前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル、又はトレーニング済み且つ前記モデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである
ことを特徴とする請求項16に記載のニューラルネットワークモデルを圧縮する装置。
【請求項18】
前記対象モデル選択ユニットは、さらに、検証セットにより前記複数の候補生徒モデルの出力結果の精度を検出し、前記精度に応じて前記対象生徒モデルを選択するためのものである
ことを特徴とする請求項12に記載のニューラルネットワークモデルを圧縮する装置。
【請求項19】
いずれかの前記中間教師モデルのモデルパラメータの総数が前記元の教師モデルのモデルパラメータの総数よりも少ないことは、いずれかの前記中間教師モデルの層数が前記元の教師モデルの層数よりも少ないことを含む
ことを特徴とする請求項13に記載のニューラルネットワークモデルを圧縮する装置。
【請求項20】
前記トレーニングサンプル取得ユニットは、さらに、第1言語コーパスを前記ソースデータとして取得し、前記第1言語コーパスと同一の意味を持つ第2言語コーパスを前記ターゲットデータとして取得するためのものである
ことを特徴とする請求項12に記載のニューラルネットワークモデルを圧縮する装置。
【請求項21】
前記元のモデルトレーニングユニットは、さらに、
前記第1言語コーパス及び前記第2言語コーパスを単語ごとに分割し、それぞれ複数の第1言語の単語及び複数の第2言語の単語を取得し、
それぞれ前記複数の第1言語の単語及び前記複数の第2言語の単語をベクトル化することにより対応する複数の第1言語の単語ベクトル及び複数の第2言語の単語ベクトルを取得し、
前記第1言語の単語ベクトルに基づいて、エンコーダ及びアテンションメカニズムにより第1言語コーパスベクトルを取得し、
前記第2言語の単語ベクトルに基づいて、デコーダ及びアテンションメカニズムにより第2言語コーパスベクトルを取得し、
前記第1言語コーパスベクトル及び前記第2言語コーパスベクトルに応じて、前記元の教師モデルをトレーニングするためのものである
ことを特徴とする請求項20に記載のニューラルネットワークモデルを圧縮する装置。
【請求項22】
コーパスを取得するための受信ユニットと、
請求項1~10のいずれか1項に記載のニューラルネットワークモデルを圧縮する方法により得られた対象生徒モデルであるニューラルネットワークモデルにより前記コーパスを翻訳するための処理ユニットと、
翻訳結果を出力するための出力ユニットと、を含む
ことを特徴とするコーパス翻訳装置。
【請求項23】
命令を記憶するためのメモリと、
前記メモリに記憶された命令を呼び出して請求項1~10のいずれか1項に記載のニューラルネットワークモデルを圧縮する方法又は請求項11に記載のコーパス翻訳方法を実行するためのプロセッサーと、を含む
ことを特徴とする電子機器。
【請求項24】
命令が記憶されているコンピュータ読み取り可能な記録媒体であって、前記命令がプロセッサーにより実行される場合、請求項1~10のいずれか1項に記載のニューラルネットワークモデルを圧縮する方法又は請求項11に記載のコーパス翻訳方法を実行することを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機械翻訳分野に関し、特に、機械翻訳に使用されるニューラルネットワークモデルを圧縮する方法、コーパス翻訳方法及びその装置、並びに電子装置及びコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【0002】
人工知能技術の発展に伴い、ニューラルネットワークによる深層学習は、既に画像分類、機械翻訳、音声認識などの複数の機械学習タスクにおいて優れたパフォーマンスを達成している。
【0003】
現在、最適なネットワークモデルの出力結果を取得するために、通常、複数のネットワーク層及び超大規模なパラメータを含む深層ニューラルネットワークモデルを使用する。このような複雑なネットワーク構造は、モデルの出力結果を著しく向上させるものの、記憶スペースが小さいモバイル機器に配置されることが困難になる一方で、コンピューティングパフォーマンスが低い低電力モバイル機器での推論遅延が大きすぎて実用的価値をもたらすことも困難になる。このため、複雑なニューラルネットワークモデルを効率的に圧縮することによりモデルのストレージのオーバーヘッドを削減し、モデルの推論速度を向上させるとともに圧縮による翻訳品質への影響をなるべく低減することは、実際にネットワークモデルをモバイル機器に応用するための重要な技術になり、現在の学術界及び産業界における研究のホットスポットになる。
【0004】
ニューラルネットワークモデルを圧縮する一般的な方法には、パラメータの量子化、行列の分解、モデルの枝刈り及び知識の蒸留が含まれ、ここで、知識の蒸留は、モデルを圧縮してモデルの複雑さを軽減するだけでなく、モデルの圧縮に起因した予測精度の低下の問題を緩和することができるので、現在、ニューラルネットワークモデルを圧縮する主流な方法になっている。知識蒸留モデルを圧縮する方法において、一般的に、大規模なパラメータ及び複雑なネットワーク構造を有するモデルは、「教師モデル」と呼ばれ、比較的少ないパラメータ及び比較的単純な構造を有するモデルは、「生徒モデル」と呼ばれ、教師モデルのネットワークの中間層における出力情報又は出力層における分類情報を取得し、教師モデルにより生成された上記の追加の知識により生徒モデルのトレーニングをガイドし、トレーニングは、一般的に、KLダイバージェンスなどを知識蒸留の最適化目標として使用される。
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、知識蒸留のトレーニング過程において、通常、1つの教師モデルが1つの生徒モデルをガイドするという単一レベルの知識蒸留が使用され、一般的に教師モデルの予測精度が生徒モデルよりもはるかに優れているため、単一レベルの知識蒸留により教師モデルの知識を生徒モデルに効果的に移すことは困難になる。このため、予測精度がより優れた、移動端に配置されるためのニューラルネットワーク生徒モデルを取得することは困難になる。
【課題を解決するための手段】
【0006】
関連技術に存在する問題を克服するために、本発明の第1態様によれば、ニューラルネットワークモデルを圧縮する方法を提供し、前記方法は、複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得し、それぞれのトレーニングサンプルペアが、ソースデータ及びソースデータに対応するターゲットデータを含むステップと、ソースデータを入力とし、ターゲットデータを検証として、元の教師モデルをトレーニングするステップと、トレーニングサンプルセット及び元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングし、1つ又は複数の中間教師モデルが教師モデルセットを構成するステップと、トレーニングサンプルセット、元の教師モデル及び教師モデルセットに基づいて複数の候補生徒モデルをトレーニングし、複数の候補生徒モデルが生徒モデルセットを構成するステップと、複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するステップと、を含む。
【0007】
一実施例において、いずれかの中間教師モデルのモデルパラメータの総数は、元の教師モデルのモデルパラメータの総数よりも少ない。
【0008】
一実施例において、トレーニングサンプルセット及び元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングし、1つ又は複数の中間教師モデルが教師モデルセットを構成するステップは、ソースデータを入力とし、複雑な教師モデルにより出力された疑似ターゲットデータを検証として、トレーニングされるそれぞれの中間教師モデルをトレーニングするステップを含み、ここで、複雑な教師モデルは、トレーニング済みの元の教師モデル、又はトレーニング済み且つモデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである。
【0009】
一実施例において、次の順位の中間教師モデルのモデルパラメータの総数が前の順位の中間教師モデルのモデルパラメータの総数よりも小さくなるように、教師モデルセットにおける1つ又は複数の中間教師モデルは、それぞれのモデルパラメータの総数に従って降順で順位付けされ、且つ、現在の順位の中間教師モデルをトレーニングするための複雑な教師モデルは、トレーニング済みの元の教師モデル又はトレーニング済みのいずれかの前の順位の中間教師モデルである。
【0010】
一実施例において、トレーニングサンプルセット、元の教師モデル及び教師モデルセットに基づいて複数の候補生徒モデルをトレーニングし、複数の候補生徒モデルが生徒モデルセットを構成するステップは、複数の候補生徒モデルに一対一に対応する複数のトレーニングパスを確定し、且つ、トレーニングパスが、元の教師モデルを起点としてそのまま対応する候補生徒モデルに至るか、又は元の教師モデルを起点として少なくとも1つの中間教師モデルを経由してから対応する候補生徒モデルに至るステップと、それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの中間教師モデル及び対応する候補生徒モデルをトレーニングするステップと、を含む。
【0011】
一実施例において、それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの中間教師モデル及び対応する候補生徒モデルをトレーニングするステップは、トレーニングパスが、元の教師モデルを起点としてそのまま対応する候補生徒モデルに至る場合、ソースデータを入力とし、トレーニング済みの元の教師モデルにより出力された疑似ターゲットデータを対応する候補生徒モデルの検証とするステップ、又は、トレーニングパスが、元の教師モデルを起点として少なくとも1つの中間教師モデルを経由してから対応する候補生徒モデルに至る場合、ソースデータを入力とし、トレーニングパスにおける隣接する前の複雑な教師モデルにより出力された疑似ターゲットデータを検証として、それぞれの中間教師モデルをトレーニングし、且つ、トレーニングパスにおける候補生徒モデルに隣接する前の中間教師モデルにより出力された疑似ターゲットデータを候補生徒モデルの検証として、候補生徒モデルをトレーニングするステップを含み、ここで、複雑な教師モデルは、トレーニング済みの元の教師モデル、又はトレーニング済み且つモデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである。
【0012】
一実施例において、複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するステップは、検証セットにより複数の候補生徒モデルの出力結果の精度を検出し、精度に応じて対象生徒モデルを選択するステップを含む。
【0013】
一実施例において、いずれかの中間教師モデルのモデルパラメータの総数が元の教師モデルのモデルパラメータの総数よりも少ないステップは、いずれかの中間教師モデルの層数が元の教師モデルの層数よりも少ないステップを含む。
【0014】
一実施例において、トレーニングサンプルセットを取得するステップは、第1言語コーパスをソースデータとして取得し、第1言語コーパスと同一の意味を持つ第2言語コーパスをターゲットデータとして取得するステップを含む。
【0015】
一実施例において、ソースデータを入力とし、ターゲットデータを検証として、元の教師モデルをトレーニングするステップは、第1言語コーパス及び第2言語コーパスを単語ごとに分割し、それぞれ複数の第1言語の単語及び複数の第2言語の単語を取得するステップと、それぞれ複数の第1言語の単語及び複数の第2言語の単語をベクトル化することにより対応する複数の第1言語の単語ベクトル及び複数の第2言語の単語ベクトルを取得するステップと、第1言語の単語ベクトルに基づいて、エンコーダ及びアテンションメカニズムにより第1言語コーパスベクトルを取得するステップと、第2言語の単語ベクトルに基づいて、デコーダ及びアテンションメカニズムにより第2言語コーパスベクトルを取得するステップと、第1言語コーパスベクトル及び第2言語コーパスベクトルに応じて、元の教師モデルをトレーニングするステップと、を含む。
【0016】
本発明の実施例の第2態様によれば、コーパス翻訳方法を提供し、前記方法は、コーパスを取得するステップと、第1態様に係るニューラルネットワークモデルを圧縮する方法により得られた対象生徒モデルであるニューラルネットワークモデルによりコーパスを翻訳するステップと、翻訳結果を出力するステップと、を含む。
【0017】
本発明の実施例の第3態様によれば、ニューラルネットワークモデルを圧縮する装置を提供し、前記装置は、複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得するためのトレーニングサンプル取得ユニットであって、それぞれのトレーニングサンプルペアが、ソースデータ及びソースデータに対応するターゲットデータを含むトレーニングサンプル取得ユニットと、ソースデータを入力とし、ターゲットデータを検証として、元の教師モデルをトレーニングするための元のモデルトレーニングユニットと、トレーニングサンプルセット及び元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングするための中間モデルトレーニングユニットであって、1つ又は複数の中間教師モデルが教師モデルセットを構成する中間モデルトレーニングユニットと、トレーニングサンプルセット、元の教師モデル及び教師モデルセットに基づいて複数の候補生徒モデルをトレーニングするための生徒モデルトレーニングユニットであって、複数の候補生徒モデルが生徒モデルセットを構成する生徒モデルトレーニングユニットと、複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するための対象モデル選択ユニットと、を含む。
【0018】
一実施例において、いずれかの中間教師モデルのモデルパラメータの総数は、元の教師モデルのモデルパラメータの総数よりも少ない。
【0019】
一実施例において、中間モデルトレーニングユニットは、さらに、ソースデータを入力とし、複雑な教師モデルにより出力された疑似ターゲットデータを検証として、トレーニングされるそれぞれの中間教師モデルをトレーニングするためのものであり、ここで、複雑な教師モデルは、トレーニング済みの元の教師モデル、又はトレーニング済み且つモデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである。
【0020】
一実施例において、次の順位の中間教師モデルのモデルパラメータの総数が前の順位の中間教師モデルのモデルパラメータの総数よりも小さくなるように、教師モデルセットにおける1つ又は複数の中間教師モデルは、それぞれのモデルパラメータの総数に従って降順で順位付けされ、且つ、現在の順位の中間教師モデルをトレーニングするための複雑な教師モデルは、トレーニング済みの元の教師モデル又はトレーニング済みのいずれかの前の順位の中間教師モデルである。
【0021】
一実施例において、生徒モデルトレーニングユニットは、複数の候補生徒モデルに一対一に対応する複数のトレーニングパスを確定するためのパス確認サブユニットであって、トレーニングパスが、元の教師モデルを起点としてそのまま対応する候補生徒モデルに至るか、又は元の教師モデルを起点として少なくとも1つの中間教師モデルを経由してから対応する候補生徒モデルに至るパス確認サブユニットと、それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの中間教師モデル及び対応する候補生徒モデルをトレーニングするためのトレーニングサブユニットと、をさらに含む。
【0022】
一実施例において、トレーニングサブユニットは、さらに、トレーニングパスが、元の教師モデルを起点としてそのまま対応する候補生徒モデルに至る場合、ソースデータを入力とし、トレーニング済みの元の教師モデルにより出力された疑似ターゲットデータを対応する候補生徒モデルの検証とし、又は、トレーニングパスが、元の教師モデルを起点として少なくとも1つの中間教師モデルを経由してから対応する候補生徒モデルに至る場合、ソースデータを入力とし、トレーニングパスにおける隣接する前の複雑な教師モデルにより出力された疑似ターゲットデータを検証として、それぞれの中間教師モデルをトレーニングし、且つ、トレーニングパスにおける候補生徒モデルに隣接する前の中間教師モデルにより出力された疑似ターゲットデータを候補生徒モデルの検証とし、候補生徒モデルをトレーニングするためのものであり、ここで、複雑な教師モデルは、トレーニング済みの元の教師モデル、又はトレーニング済み且つモデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである。
【0023】
一実施例において、対象モデル選択ユニットは、さらに、検証セットにより複数の候補生徒モデルの出力結果の精度を検出し、精度に応じて対象生徒モデルを選択するためのものである。
【0024】
一実施例において、いずれかの中間教師モデルのモデルパラメータの総数が元の教師モデルのモデルパラメータの総数よりも少ないことは、いずれかの中間教師モデルの層数が元の教師モデルの層数よりも少ないことを含む。
【0025】
一実施例において、トレーニングサンプル取得ユニットは、さらに、第1言語コーパスをソースデータとして取得し、第1言語コーパスと同一の意味を持つ第2言語コーパスをターゲットデータとして取得するためのものである。
【0026】
一実施例において、元のモデルトレーニングユニットは、さらに、第1言語コーパス及び第2言語コーパスを単語ごとに分割し、それぞれ複数の第1言語の単語及び複数の第2言語の単語を取得し、それぞれ複数の第1言語の単語及び複数の第2言語の単語をベクトル化することにより対応する複数の第1言語の単語ベクトル及び複数の第2言語の単語ベクトルを取得し、第1言語の単語ベクトルに基づいて、エンコーダ及びアテンションメカニズムにより第1言語コーパスベクトルを取得し、第2言語の単語ベクトルに基づいて、デコーダ及びアテンションメカニズムにより第2言語コーパスベクトルを取得し、第1言語コーパスベクトル及び第2言語コーパスベクトルに応じて、元の教師モデルをトレーニングするためのものである。
【0027】
本発明の実施例の第4態様によれば、コーパス翻訳装置を提供し、前記装置は、コーパスを取得するための受信ユニットと、第1態様に係るニューラルネットワークモデルを圧縮する方法により得られた対象生徒モデルであるニューラルネットワークモデルによりコーパスを翻訳するための処理ユニットと、翻訳結果を出力するための出力ユニットと、を含む。
【0028】
本発明の実施例の第5態様によれば、電子機器を提供し、前記電子機器は、命令を記憶するためのメモリと、メモリに記憶された命令を呼び出して第1態様に係るニューラルネットワークモデルを圧縮する方法又は第2態様に係るコーパス翻訳方法を実行するためのプロセッサーと、を含む。
【0029】
本発明の実施例の第6態様によれば、命令が記憶されているコンピュータ読み取り可能な記録媒体を提供する。前記命令がプロセッサーにより実行される場合、第1態様に係るニューラルネットワークモデルを圧縮する方法又は第2態様に係るコーパス翻訳方法を実行する。
【0030】
(発明の効果)
本開示の実施例に提供された技術的案によれば、以下のような技術効果が奏される。パラメータの総数がより少ない複数の中間教師モデルを追加導入することで、マルチパスで生徒モデルのトレーニングをガイドすることを実現することにより、徐々に元の教師モデルの知識を生徒モデルにより効果的に移し、マルチパスで生成された複数の生徒モデルから品質が最適なものを最終的な対象生徒モデルとして選択し、これにより、対象生徒モデルの品質を向上させることができる。
なお、前記一般的な記載及び後述の詳細な記載は、単なる例示的で解釈的な記載であり、本発明を限定しない。
【図面の簡単な説明】
【0031】
以下の図面は、明細書に組み入れて本明細書の一部分を構成し、本発明に該当する実施例を例示するとともに、明細書とともに本発明の原理を解釈する。
図1】一例示的な実施例に係るニューラルネットワークモデルを圧縮する方法のフローを示す模式図である。
図2】他の例示的な実施例に係るニューラルネットワークモデルを圧縮する方法のフローを示す模式図である。
図3】一例示的な実施例に係るニューラルネットワークモデルのアーキテクチャを示す模式的なブロック図である。
図4】一例示的な実施例に係る生徒モデルが異なるトレーニングパスを示す模式的なブロック図である。
図5】一例示的な実施例に係るコーパス翻訳方法のフローを示す模式図である。
図6】一例示的な実施例に係るニューラルネットワークモデルを圧縮する装置を示す模式的なブロック図である。
図7】一例示的な実施例に係るコーパス翻訳装置を示す模式的なブロック図である。
図8】一例示的な実施例に係る装置を示す模式的なブロック図である。
図9】一例示的な実施例に係る電子装置を示す模式的なブロック図である。
【発明を実施するための形態】
【0032】
以下、例示的な実施例について詳細に説明し、その実施例を図面に示す。以下の記載が図面に関わる場合、特に別の説明がない限り、異なる図面における同一符号は、同じ又は類似する要素を示す。以下の例示的な実施例に記載の実施形態は、本発明と一致する全ての実施形態を代表するものではない。逆に、それらは、添付の特許請求の範囲に記載されているように、本発明の一部の局面と一致する装置および方法の例に過ぎない。
【0033】
生徒モデルのトレーニング効果を達成できるために、本発明の実施例は、ニューラルネットワークモデルを圧縮する方法10を提供し、図1を参照すると、ステップS11~S15を含むニューラルネットワークモデルを圧縮する方法10を提供し、以下、各ステップについて詳細に説明する。
【0034】
ステップS11、複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得し、それぞれのトレーニングサンプルペアが、ソースデータ及びソースデータに対応するターゲットデータを含む。
【0035】
実際的なモデルのアプリケーションシナリオに応じてトレーニングサンプルを取得し、トレーニングサンプルにおけるソースデータは、ニューラルネットワークモデルの入力に使用され、ターゲットデータは、ニューラルネットワークモデルの出力を検証するために使用され、また、検証結果に応じて損失を計算することなどによりニューラルネットワークモデルのパラメータを調整し、これにより、トレーニングの目的を達成することができる。例えば、画像認識分野では、元の画像以及元の画像の標準分類を取得し、音声認識分野では、元のオーディオ及び元のオーディオの標準テキストを取得する。一実施例において、コーパス翻訳分野では、第1言語コーパスを元のデータとして取得し、第1言語コーパスと同一の意味を持つ第2言語コーパスをターゲットデータとして取得する。
【0036】
ステップS12、ソースデータを入力とし、ターゲットデータを検証として、元の教師モデルをトレーニングする。
【0037】
実際的なネットワークモデルの構造に応じて元の教師モデルをトレーニングし、ソースデータを元の教師モデルに入力し、元の教師モデルによりソースデータの特徴を抽出して出力結果を取得し、出力結果及びターゲットデータに応じて損失値を算出し、この損失値に応じて、出力の結果が一定の条件を満たすまで、元の教師モデルのパラメータを調整することにより、トレーニングを完了することができる。
【0038】
図2に示すように、一実施例において、ステップS12は、第1言語コーパス及び第2言語コーパスを単語ごとに分割し、それぞれ複数の第1言語の単語及び複数の第2言語の単語を取得するステップS121と、それぞれ複数の第1言語の単語及び複数の第2言語の単語をベクトル化することにより対応する複数の第1言語の単語ベクトル及び複数の第2言語の単語ベクトルを取得するステップS122と、第1言語の単語ベクトルに基づいて、エンコーダ及びアテンションメカニズムにより第1言語コーパスベクトルを取得するステップS123と、第2言語の単語ベクトルに基づいて、デコーダ及びアテンションメカニズムにより第2言語コーパスベクトルを取得するステップS124と、第1言語コーパスベクトル及び第2言語コーパスベクトルに応じて、元の教師モデルをトレーニングするステップS125と、を含むことができる。
【0039】
コーパス翻訳モデルにおいて、ベクトル化、特徴抽出及びアテンションメカニズムによりコーパスのベクトルを取得し、そして標準語義により生成されたベクトルとの比較を行うことによりトレーニングする。
【0040】
上記の実施例において、元の教師モデルのアーキテクチャは、図3に示すようなものであることができる。第1言語コーパスを単語ごとに分割することにより複数の第1言語の単語xnを取得し、ソース言語の単語ベクトル表現層により第1言語の単語をベクトル化して、第1言語の単語ベクトルを取得し、そして複数のエンコーダ層により特徴抽出を行い、さらにアテンションメカニズム(Attention Mechanism)により第1言語コーパスベクトルを取得する。他方、第2言語コーパスを単語ごとに分割することにより複数の第2言語の単語ynを取得し、対象言語の単語ベクトル表現層により第2言語の単語をベクトル化して、第2言語の単語ベクトルを取得し、そして複数のデコーダ層により特徴抽出を行い、さらにアテンションメカニズムにより第2言語コーパスベクトルを取得する。最終的に、損失関数により第1言語コーパスベクトルと第2言語コーパスベクトルとの損失値を取得し、損失値に基づいて元の教師モデルのパラメータを調整して、最終的にトレーニング済みの元の教師モデルを取得する。ここで、エンコーダ層とデコーダ層の層数は、同じでもよいし、異なっていてもよい。
【0041】
ステップS13、トレーニングサンプルセット及び元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングし、1つ又は複数の中間教師モデルが教師モデルセットを構成する。
【0042】
実際の需要に応じて、複数の中間教師モデルを取得することにより、生徒モデルのマルチパストレーニングを実現することができ、中間教師モデルのモデルタイプ及びアーキテクチャは、元の教師モデルと同じである。一実施例において、いずれかの中間教師モデルのモデルパラメータの総数は、元の教師モデルのモデルパラメータの総数よりも少ない。言い換えれば、中間教師モデルは、元の教師モデルよりも単純である。一実施例において、いずれかの中間教師モデルの層数は、元の教師モデルの層数よりも少ない。即ち、モデルの層数を減らすことにより、モデルのパラメータの総数を低減する。モデルパラメータを直接減らすか、又は層数のモデルパラメータを減らすことにより、モデルの計算量を低減するとともに、元の教師モデルの出力によりトレーニングすることができる。
【0043】
具体的な実施例において、元の教師モデルが図3に示すモデルのアーキテクチャである場合、中間教師モデルは、元の教師モデルよりも少ないエンコーダ層及び/又はデコーダ層を備えることができる。
【0044】
複数の中間教師モデルにおける一部の中間教師モデルが同程度の単純さを持つ場合があり、複数の中間教師モデルの単純さが階段状をなす。即ち、複数の中間教師モデルの単純さが順次に増えることにより、後続のトレーニングにおいて様々なモデルにより監視してマルチパスを取得することができる。
【0045】
中間教師モデルをトレーニングする原理は、元の教師モデルをトレーニングするものと同じである。
【0046】
一実施例において、ステップS13は、ソースデータを入力とし、複雑な教師モデルにより出力された疑似ターゲットデータを検証として、トレーニングされるそれぞれの中間教師モデルをトレーニングするステップを含むことができる。ここで、複雑な教師モデルは、トレーニング済みの元の教師モデル、又はトレーニング済み且つモデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである。
【0047】
本実施例において、元の教師モデル及び中間教師モデルをトレーニングした後、ソースデータを入力してモデルの出力、即ち上記の疑似ターゲットデータを取得し、この疑似ターゲットデータは、自身よりも単純なモデルをトレーニングする場合に検証として使用されることができる。具体的に、中間教師モデルをトレーニングする場合、ソースデータを中間教師モデルに入力し、中間教師モデルにより出力結果を取得し、このソースデータに基づいてトレーニング済みの元の教師モデルにより出力された疑似ターゲットデータとの比較を行うことにより損失値を取得するか、又は、このソースデータに基づいてトレーニングを完了し且つこの中間教師モデルよりも複雑な他の中間教師モデルにより出力された疑似ターゲットデータとの比較を行うことにより損失値を取得し、得られた損失値に応じてモデルパラメータを調整し、最終的にこのモデルのトレーニングを完了する。
【0048】
いくつかの実施例において、教師モデルセットにおける1つ又は複数の中間教師モデルは、次の順位の中間教師モデルのモデルパラメータの総数が前の順位の中間教師モデルのモデルパラメータの総数よりも小さくなるように、それぞれのモデルパラメータの総数に従って降順で順位付けされ、且つ、現在の順位の中間教師モデルをトレーニングするための複雑なモデルは、トレーニング済みの元の教師モデル又はトレーニング済みのいずれかの前の順位の中間教師モデルである。
【0049】
本実施例において、中間教師モデルの単純さに従って順次にトレーニングし、先ず比較的複雑な中間教師モデルをトレーニングし、トレーニング済みの中間教師モデルにより出力された疑似ターゲットデータは、後続の中間教師モデルをトレーニングする場合における検証データとすることができる。このため、1つの中間教師モデルをトレーニングする場合、複数の複雑なモデルにより出力された疑似ターゲットデータから検証データを選択する可能性があるので、それぞれの中間教師モデルの監視データのソースが異なることを実現し、同程度の単純さを持つ複数の中間教師モデルであっても、異なるトレーニングパスを備え、これにより、異なる中間教師モデルを得ることができる。
【0050】
いくつかの実施例において、元の教師モデルは、ビーム検索アルゴリズムに基づいて出力データを取得することができる。トレーニング後、元のデータ、即ち第1言語コーパスを元の教師モデルに入力し、ビーム検索(beam search)アルゴリズムにより出力データを得ることができる。
【0051】
ステップS14、トレーニングサンプルセット、元の教師モデル及び教師モデルセットに基づいて複数の候補生徒モデルをトレーニングし、複数の候補生徒モデルが生徒モデルセットを構成する。
【0052】
計算能力が比較的低い一部の端末機器にニューラルネットワークモデルを配置できるようにするために、モデルの複雑さ及び計算量には一定の要求があり、実際的な端末機器の条件に応じて、元の教師モデル及び中間教授モデルのアーキテクチャと類似するものの、元の教師モデル及び中間教師モデルよりも単純な複数の候補生徒モデルを設置することができる。一実施例において、ステップS14は、複数の同じ生徒モデルを取得し、且つ、候補生徒モデルのモデルパラメータ及び/又は層数がいずれかの中間教師モデルよりも少ないステップを含むことができる。
【0053】
候補生徒モデルをトレーニングする原理は、中間教師モデルをトレーニングするものと同じであってもよい。
【0054】
一実施例において、ステップS14は、複数の候補生徒モデルに一対一に対応する複数のトレーニングパスを確定し、且つ、トレーニングパスが、元の教師モデルを起点としてそのまま対応する候補生徒モデルに至るか、又は元の教師モデルを起点として少なくとも1つの中間教師モデルを経由してから対応する候補生徒モデルに至るステップと、それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの中間教師モデル及び対応する候補生徒モデルをトレーニングするステップと、を含むことができる。
【0055】
トレーニングパスにおける生徒モデルをトレーニングする際に、トレーニングパスが、元の教師モデルを起点としてそのまま対応する候補生徒モデルに至る場合、ソースデータを入力とし、トレーニング済みの元の教師モデルにより出力された疑似ターゲットデータを対応する候補生徒モデルの検証とするか、又は、トレーニングパスが、元の教師モデルを起点として少なくとも1つの中間教師モデルを経由してから対応する候補生徒モデルに至る場合、ソースデータを入力とし、トレーニングパスにおける隣接する前の複雑な教師モデルにより出力された疑似ターゲットデータを検証として、それぞれの中間教師モデルをトレーニングし、且つ、トレーニングパスにおける候補生徒モデルに隣接する前の中間教師モデルにより出力された疑似ターゲットデータを候補生徒モデルの検証として、候補生徒モデルをトレーニングする。ここで、複雑な教師モデルは、トレーニング済みの元の教師モデル、又はトレーニング済み且つモデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである。
【0056】
ここで、トレーニングパスは、順次にトレーニングをガイドするためのモデルから構成される仮想パスであり、それぞれのトレーニングパスは、元の教師モデルを起点とし、候補生徒モデルを終点とし、それらの中間に中間教師モデルが存在しなくてもよく、異なるパラメータを持つ1つ又は複数の中間教師モデルが存在してもよく、モデルの複雑さ、即ちパラメータの総数の降順ソートに従って、順次にトレーニングする。このため、複数のトレーニングパスを指定して、一対一で対応して複数の候補生徒モデルをトレーニングすることにより、徐々に元の教師モデルの知識を生徒モデルにより効果的に移し、生徒モデルの品質を向上させることができる。
【0057】
具体的な実施例を用いて上記の候補生徒モデルのトレーニング方式を説明すると、例えば、図4に示すように、1つの元の教師モデルTN及び複雑さが順次に減る2つの順位の中間教師モデルTN-1とTN-2が含まれる。ここで、元の教師モデルTNは、トレーニングサンプルセット
によりトレーニングし、ここで、xがソースデータであり、yが対応するターゲットデータである。元の教師モデルをトレーニングした後、さらにソースデータxを入力して、一対一で対応する疑似ターゲットデータyTを取得し、元の教師モデルの疑似ターゲットデータセット
を得る。中間教師モデルTN-1は、1つの元の教師モデルTNのみがそれよりも複雑であるので、元の教師モデルTNによりのみトレーニングすることができる。即ち、元の教師モデルの疑似ターゲットデータセット
により、ソースデータxを入力とし、疑似ターゲットデータyTを検証として、中間モデルTN-1をトレーニングした後、同様に疑似ターゲットデータセットを得る。これに対して、中間教師モデルTN-2は、元の教師モデルTN及び中間教師モデルTN-1よりも単純であるので、元の教師モデルTN又は中間教師モデルTN-1によりトレーニングして得られ、即ち、ソースデータを入力とし、元の教師モデルTNの疑似ターゲットデータ又は中間教師モデルTN-1の疑似ターゲットデータを検証としてトレーニングすることができる。このため、2つの中間教師モデルTN-2を設置し、それぞれ元の教師モデルTN及び中間教師モデルTN-1によりトレーニングして異なるトレーニングパスを形成することができる。これを基にして、4つの候補生徒モデルSを設置し、同様に、それぞれ元の教師モデルTN、中間教師モデルTN-1及び異なるパストレーニングにより得られた2つの中間教師モデルTN-2によりトレーニングすることができる。異なるトレーニングパスによりトレーニングされた候補生徒モデルは、異なるパラメータを持つ。
【0058】
ステップS15、複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択する。
【0059】
異なるトレーニングパスにより得られた複数の候補生徒モデルにおいて、1つの候補生徒モデルを対象生徒モデルとして選択し、この対象生徒モデルは、モデルの複雑さに対する端末機器の要求を満たすとともに、ニューラルネットワークモデルの品質に対する要求を満たすことができる。一実施例において、ステップS15は、検証セットにより複数の候補生徒モデルの出力結果の精度を検出し、精度に応じて対象生徒モデルを選択するステップを含むことができる。トレーニング済みの複数の候補生徒モデルにおいて、品質が最適な候補生徒モデルを対象生徒モデルとして選択し、選択の方式として、検証セットにより複数の生徒モデルをテストすることができ、ここで、検証セットは、トレーニングサンプルセットの原理と同様に、テストデータ及びそれに対応する標準結果データを有し、また、テストデータは、トレーニングサンプルセットにおけるソースデータよりもノイズ干渉を増加させ、その後、候補生徒モデルの出力結果と標準結果データとの比較の精度に応じて、最も精度の高い候補生徒モデルを対象生徒モデルとして選択することができる。
【0060】
上記のいずれかの実施例に係るニューラルネットワークモデルを圧縮する方法により、トレーニングして単純化の要求を満たす複数の生徒モデルを取得するとともに、異なるトレーニングパスによりトレーニングされた生徒モデルから最適なものを対象生徒モデルとして選択することにより、より単純且つ品質がより高いニューラルネットワークモデルを得ることができる。
【0061】
同一の発明構想によれば、本発明は、コーパス翻訳方法20をさらに提供し、図5を参照すると、コーパス翻訳方法20は、コーパスを取得するステップS21と、上記のいずれかの実施例に係るニューラルネットワークモデルを圧縮する方法10により得られた対象生徒モデルであるニューラルネットワークモデルによりコーパスを翻訳するステップS22と、翻訳結果を出力するステップS23と、を含む。
【0062】
同一の発明構想によれば、図6は、ニューラルネットワークモデルを圧縮する装置100を示し、図6に示すように、ニューラルネットワークモデルを圧縮する装置100は、複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得するために構成され、それぞれのトレーニングサンプルペアが、ソースデータ及びソースデータに対応するターゲットデータを含むトレーニングサンプル取得ユニット110と、ソースデータを入力とし、ターゲットデータを検証として、元の教師モデルをトレーニングするための元のモデルトレーニングユニット120と、トレーニングサンプルセット及び元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングするために配置され、1つ又は複数の中間教師モデルが教師モデルセットを構成する中間モデルトレーニングユニット130と、トレーニングサンプルセット、元の教師モデル及び教師モデルセットに基づいて複数の候補生徒モデルをトレーニングするために配置され、複数の候補生徒モデルが生徒モデルセットを構成する生徒モデルトレーニングユニット140と、複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するための対象モデル選択ユニット150と、を含む。
【0063】
一実施例において、いずれかの中間教師モデルのモデルパラメータの総数は、元の教師モデルのモデルパラメータの総数よりも少ない。
【0064】
一実施例において、中間モデルトレーニングユニット130は、ソースデータを入力とし、複雑な教師モデルにより出力された疑似ターゲットデータを検証として、トレーニングされるそれぞれの中間教師モデルをトレーニングするためにさらに配置され、ここで、複雑な教師モデルは、トレーニング済みの元の教師モデル、又はトレーニング済み且つモデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである。
【0065】
一実施例において、教師モデルセットにおける1つ又は複数の中間教師モデルは、次の順位の中間教師モデルのモデルパラメータの総数が前の順位の中間教師モデルのモデルパラメータの総数よりも小さくなるように、それぞれのモデルパラメータの総数に従って降順で順位付けされ、且つ、現在の順位の中間教師モデルをトレーニングするための複雑なモデルは、トレーニング済みの元の教師モデル又はトレーニング済みのいずれかの前の順位の中間教師モデルである。
【0066】
一実施例において、生徒モデルトレーニングユニット140は、複数の候補生徒モデルに一対一に対応する複数のトレーニングパスを確定するために配置され、且つ、トレーニングパスが、元の教師モデルを起点としてそのまま対応する候補生徒モデルに至るか、又は元の教師モデルを起点として少なくとも1つの中間教師モデルを経由してから対応する候補生徒モデルに至るパス確認サブユニットと、それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの中間教師モデル及び対応する候補生徒モデルをトレーニングするためのトレーニングサブユニットと、をさらに含む。
【0067】
一実施例において、トレーニングサブユニットは、トレーニングパスが、元の教師モデルを起点としてそのまま対応する候補生徒モデルに至る場合、ソースデータを入力とし、トレーニング済みの元の教師モデルにより出力された疑似ターゲットデータを対応する候補生徒モデルの検証とするか、又は、トレーニングパスが、元の教師モデルを起点として少なくとも1つの中間教師モデルを経由してから対応する候補生徒モデルに至る場合、ソースデータを入力とし、トレーニングパスにおける隣接する前の複雑な教師モデルにより出力された疑似ターゲットデータを検証として、それぞれの中間教師モデルをトレーニングし、且つ、トレーニングパスにおける候補生徒モデルに隣接する前の中間教師モデルにより出力された疑似ターゲットデータを候補生徒モデルの検証とし、候補生徒モデルをトレーニングするためにさらに配置され、ここで、複雑な教師モデルは、トレーニング済みの元の教師モデル、又はトレーニング済み且つモデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである。
【0068】
一実施例において、対象モデル選択ユニット150は、検証セットにより複数の候補生徒モデルの出力結果の精度を検出し、精度に応じて対象生徒モデルを選択するためにさらに使用される。
【0069】
一実施例において、いずれかの中間教師モデルのモデルパラメータの総数が元の教師モデルのモデルパラメータの総数よりも少ないことは、いずれかの中間教師モデルの層数が元の教師モデルの層数よりも少ないことを含む。
【0070】
一実施例において、トレーニングサンプル取得ユニット110は、第1言語コーパスをソースデータとして取得し、第1言語コーパスと同一の意味を持つ第2言語コーパスをターゲットデータとして取得するためにさらに配置される。
【0071】
一実施例において、元のモデルトレーニングユニット120は、第1言語コーパス及び第2言語コーパスを単語ごとに分割し、それぞれ複数の第1言語の単語及び複数の第2言語の単語を取得し、それぞれ複数の第1言語の単語及び複数の第2言語の単語をベクトル化することにより対応する複数の第1言語の単語ベクトル及び複数の第2言語の単語ベクトルを取得し、第1言語の単語ベクトルに基づいて、エンコーダ及びアテンションメカニズムにより第1言語コーパスベクトルを取得し、第2言語の単語ベクトルに基づいて、デコーダ及びアテンションメカニズムにより第2言語コーパスベクトルを取得し、第1言語コーパスベクトル及び第2言語コーパスベクトルに応じて、元の教師モデルをトレーニングするためにさらに配置される。
【0072】
上記の実施例におけるニューラルネットワークモデルを圧縮する装置100に関して、ここで各モジュールが動作を行う具体的な方法については、その方法に関する実施例には詳細に説明したので、ここでの詳細な説明は省略する。
【0073】
同一の発明構想によれば、図7は、コーパス翻訳装置200を示し、図7に示すように、コーパス翻訳装置200は、コーパスを取得するための受信ユニット210と、上記のいずれかの実施例に係るニューラルネットワークモデルを圧縮する方法10により得られた対象生徒モデルであるニューラルネットワークモデルによりコーパスを翻訳するための処理ユニット220と、翻訳結果を出力するための出力ユニット230と、を含む。
【0074】
上記の実施例におけるコーパス翻訳装置200に関して、ここで各モジュールが動作を行う具体的な方法については、その方法に関する実施例には詳細に説明したので、ここでの詳細な説明は省略する。
【0075】
図8は、一例示的な実施例に係る上記のいずれかの実施例の装置を示す模式的なブロック図である。例如、装置300は、携帯電話、コンピュータ、デジタルブロードキャスト端末、メッセージ送受信機器、ゲームコンソール、タブレットデバイス、医療機器、フィットネス機器、個人向け携帯型情報端末機器(PDA)などであってもよい。
【0076】
図8を参照すると、装置300は、処理ユニット302、メモリ304、電源ユニット306、マルチメディアユニット308、オーディオユニット310、入力/出力(I/O)インタフェース312、センサーユニット314、及び通信ユニット316からなる群から選ばれる少なくとも1つを備えてもよい。
【0077】
処理ユニット302は、一般的には、制御装置300の全体の操作、例えば、表示、電話呼び出し、データ通信、カメラ操作及び記録操作に関連する操作を制御する。処理ユニット302は、上述した方法におけるステップの一部又は全部を実現できるように、命令を実行する少なくとも1つのプロセッサー320を備えてもよい。また、処理ユニット302は、他のユニットとのインタラクションを便利にさせるように、少なくとも1つのモジュールを備えてもよい。例えば、処理ユニット302は、マルチメディアユニット308とのインタラクションを便利にさせるように、マルチメディアモジュールを備えてもよい。
【0078】
メモリ304は、装置300での操作をサポートするように、各種のデータを記憶するように構成される。これらのデータは、例えば、装置300で何れのアプリケーション又は方法を操作するための命令、連絡先データ、電話帳データ、メッセージ、画像、ビデオなどを含む。メモリ304は、何れの種類の揮発性又は不揮発性メモリ、例えば、SRAM(Static Random Access Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、EPROM(Erasable Programmable Read Only Memory)、PROM(Programmable ROM)、ROM(Read Only Member)、磁気メモリ、フラッシュメモリ、磁気ディスク、或いは光ディスクにより、或いはそれらの組み合わせにより実現することができる。
【0079】
電源ユニット306は、装置300の各種ユニットに電力を供給するためのものであり、電源管理システム、1つ又は複数の電源、及び装置300のために電力を生成、管理及び分配することに関連する他のユニットを備えてもよい。
【0080】
マルチメディアユニット308は、前記装置300とユーザーとの間に出力インタフェースを提供するスクリーンを備えてもよい。一実施例では、スクリーンは、例えば、液晶ディスプレイ(LCD)やタッチパネル(TP)を備えてもよい。スクリーンは、タッチパネルを備える場合、ユーザーからの入力信号を受信するように、タッチスクリーンになることができる。また、タッチパネルは、タッチや、スライドや、タッチパネル上の手振りを感知するように、少なくとも1つのタッチセンサーを有する。前記タッチセンサーは、タッチやスライド動作の境界を感知できるだけではなく、タッチやスライド操作と関連する持続時間や圧力も感知できる。一実施例では、マルチメディアユニット308は、フロントカメラ及び/又はバックカメラを有してもよい。装置300が、例えば、撮影モードやビデオモードのような操作モードにある時、フロントカメラ及び/又はバックカメラが外部のマルチメディアデータを受信できる。フロントカメラ及びバックカメラのそれぞれは、固定の光学レンズ系であってもよいし、焦点距離及び光学ズーム能力を有するものであってもよい。
【0081】
オーディオユニット310は、オーディオ信号を出力及び/又は入力するように構成される。例えば、オーディオユニット310は、マイクロフォン(MIC)を有してもよい。装置300が、例えば、呼び出しモード、記録モード、又は音声認識モードのような操作モードにある時、マイクロフォンは、外部のオーディオ信号を受信するように配置される。受信したオーディオ信号は、メモリ304にさらに記憶されてもよいし、通信ユニット316を介して送信されてもよい。一実施例では、オーディオユニット310は、オーディオ信号を出力するためのスピーカをさらに備えてもよい。
【0082】
I/Oインタフェース312は、処理ユニット302と外部のインタフェースモジュールとの間にインタフェースを提供するためのものである。上記外部のインタフェースモジュールは、キーボードや、クリックホイールや、ボタンなどであってもよい。これらのボタンは、ホームボタンや、音量ボタンや、スタートボタンや、ロックボタンであってもよいが、それらに限らない。
【0083】
センサーユニット314は、装置300のために各方面の状態を評価する少なくとも1つのセンサーを備えてもよい。例えば、センサーユニット314は、装置300のオン/オフ状態や、ユニットの相対的な位置を検出することができる。例えば、前記ユニットは、装置300のディスプレイ及びキーパッドである。センサーユニット314は、装置300又は装置300の1つのユニットの位置の変化、ユーザーによる装置300への接触の有無、装置300の方向又は加速/減速、装置300の温度変化などを検出することができる。センサーユニット314は、何れの物理的な接触もない場合に付近の物体を検出するように構成される近接センサーを有してもよい。センサーユニット314は、イメージングアプリケーションに用いるための光センサー、例えば、CMOS又はCCD画像センサーを有してもよい。一実施例では、当該センサーユニット314は、加速度センサー、ジャイロスコープセンサー、磁気センサー、圧力センサー又は温度センサーをさらに備えてもよい。
【0084】
通信ユニット316は、装置300と他の設備の間との無線又は有線通信を便利にさせるように構成される。装置300は、通信標準に基づく無線ネットワーク、例えば、WiFi、2G又は3G、又はそれらの組み合わせにアクセスできる。1つの例示的な実施例では、通信ユニット316は、ブロードキャストチャンネルを介して外部のブロードキャスト管理システムからのブロードキャスト信号又はブロードキャストに関する情報を受信する。1つの例示的な実施例では、前記通信ユニット316は、近距離通信を促進するために近距離無線通信(NFC)モジュールをさらに備えてもよい。例えば、NFCモジュールは、無線周波数認識装置(RFID:Radio Frequency IDentification)技術、赤外線データ協会(IrDA:Infrared Data Association)技術、超広帯域無線(UWB:Ultra Wide Band)技術、ブルートゥース(登録商標)(BT:Bluetooth(登録商標))技術及び他の技術により実現されてもよい。
【0085】
例示的な実施例では、装置300は、上述した方法を実行するために、1つ又は複数の特定用途向け集積回路(ASIC:Application Specific Integrated Circuit)、デジタル信号プロセッサー(DSP:Digital Signal Processor)、デジタル信号処理デバイス(DSPD:Digital Signal Processing Device)、プログラマブルロジックデバイス(PLD:Programmable Logic Device)、書替え可能ゲートアレイ(FPGA:Field-Programmable Gate Array)、コントローラ、マイクロコントローラ、マイクロプロセッサー、又は他の電子機器により実現されてもよい。
【0086】
例示的な実施例では、命令を有するコンピュータ読み取り可能な記録媒体、例えば、命令を有するメモリ304をさらに提供する。前記命令は、装置300のプロセッサー320により実行されて上述した方法を実現する。例えば、前記コンピュータ読み取り可能な記録媒体は、ROM、RAM、CD-ROM、磁気テープ、フロッピー(登録商標)ディスク及び光データメモリなどであってもよい。
【0087】
図9は一例示的な実施例に係る電子装置400を示すブロック図である。例えば、装置400はサーバーとして提供されてもよい。図9を参照すると、装置400は、1つ以上のプロセッサーがさらに含まれた処理ユニット422と、処理ユニット422により実行可能な指令、例えばプログラムを記憶するメモリ432を代表とするメモリリソースとを含む。メモリ432に記憶されたアプリケーションプログラムは、1つ以上のそれぞれが一組の命令に対応するモジュールを含んでもよい。また、上記の方法を実行するために、処理ユニット422は命令を実行するように配置される。
【0088】
装置400は、装置300の電源管理を実行するように配置された電源ユニット426と、装置400をインターネットに接続させるように配置された有線又は無線インターネットインタフェース450と、入力/出力(I/O)インタフェース458とを備えてもよい。装置400はメモリ432に記憶された操作システム、例えばWindows ServerTM、Mac OS XTM、UnixTM,LinuxTM、FreeBSDTMなどに基づいて操作できる。
【0089】
当業者は、明細書に対する理解、及び明細書に記載された発明に対する実施を介して、本発明の他の実施形態を容易に取得することができる。本発明は、本発明に対する任意の変形、用途、又は適応的な変化を含み、このような変形、用途、又は適応的な変化は、本発明の一般的な原理に従い、本発明では開示していない本技術分野の公知知識、又は通常の技術手段を含む。明細書及び実施例は、単に例示的なものであって、本発明の本当の範囲と主旨は、以下の特許請求の範囲により示される。
【0090】
本発明は、上記で記述され、図面で図示した特定の構成に限定されず、その範囲を離脱しない状況で、様々な修正や変更を実施してもよい。本発明の範囲は、添付される特許請求の範囲のみにより限定される。

図1
図2
図3
図4
図5
図6
図7
図8
図9
【手続補正書】
【提出日】2020-01-17
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0001
【補正方法】変更
【補正の内容】
【0001】
本発明は、機械翻訳分野に関し、特に、機械翻訳に使用されるニューラルネットワークモデルを圧縮する方法及び装置、コーパス翻訳方法及び装置、電子装置、並びにプログラム及び記録媒体に関する。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0029
【補正方法】変更
【補正の内容】
【0029】
本発明の実施例の第6態様によれば、ロセッサーにより実行されることにより、第1態様に係るニューラルネットワークモデルを圧縮する方法又は第2態様に係るコーパス翻訳方法を実行するプログラムを提供する。
本発明の実施例の第7態様によれば、前記プログラムが記憶された記録媒体を提供する。
【手続補正4】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得し、それぞれのトレーニングサンプルペアが、ソースデータ及び前記ソースデータに対応するターゲットデータを含むステップと、
前記ソースデータを入力とし、前記ターゲットデータを検証として、元の教師モデルをトレーニングするステップと、
前記トレーニングサンプルセット及び前記元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングし、前記1つ又は複数の中間教師モデルが教師モデルセットを構成するステップと、
前記トレーニングサンプルセット、前記元の教師モデル及び前記教師モデルセットに基づいて複数の候補生徒モデルをトレーニングし、前記複数の候補生徒モデルが生徒モデルセットを構成するステップと、
前記複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するステップと、を含む
ことを特徴とするニューラルネットワークモデルを圧縮する方法。
【請求項2】
いずれかの前記中間教師モデルのモデルパラメータの総数は、前記元の教師モデルのモデルパラメータの総数よりも少ない
ことを特徴とする請求項1に記載のニューラルネットワークモデルを圧縮する方法。
【請求項3】
前記トレーニングサンプルセット及び前記元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングし、前記1つ又は複数の中間教師モデルが教師モデルセットを構成するステップは、前記ソースデータを入力とし、複雑な教師モデルにより出力された疑似ターゲットデータを検証として、トレーニングされるそれぞれの中間教師モデルをトレーニングするステップを含み、前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル、又はトレーニング済み且つ前記モデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである
ことを特徴とする請求項2に記載のニューラルネットワークモデルを圧縮する方法。
【請求項4】
次の順位の中間教師モデルのモデルパラメータの総数が前の順位の中間教師モデルのモデルパラメータの総数よりも小さくなるように、前記教師モデルセットにおける前記1つ又は複数の中間教師モデルは、それぞれのモデルパラメータの総数に従って降順で順位付けされ、且つ、現在の順位の中間教師モデルをトレーニングするための前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル又はトレーニング済みのいずれかの前の順位の中間教師モデルである
ことを特徴とする請求項3に記載のニューラルネットワークモデルを圧縮する方法。
【請求項5】
前記トレーニングサンプルセット、前記元の教師モデル及び前記教師モデルセットに基づいて複数の候補生徒モデルをトレーニングし、前記複数の候補生徒モデルが生徒モデルセットを構成するステップは、
前記複数の候補生徒モデルに一対一に対応する複数のトレーニングパスを確定し、且つ、前記トレーニングパスが、前記元の教師モデルを起点としてそのまま対応する候補生徒モデルに至るか、又は前記元の教師モデルを起点として少なくとも1つの前記中間教師モデルを経由してから対応する候補生徒モデルに至るステップと、
それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの前記中間教師モデル及び対応する候補生徒モデルをトレーニングするステップと、を含む
ことを特徴とする請求項2に記載のニューラルネットワークモデルを圧縮する方法。
【請求項6】
前記それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの前記中間教師モデル及び対応する候補生徒モデルをトレーニングするステップは、
前記トレーニングパスが、前記元の教師モデルを起点としてそのまま対応する候補生徒モデルに至る場合、前記ソースデータを入力とし、トレーニング済みの前記元の教師モデルにより出力された疑似ターゲットデータを対応する候補生徒モデルの検証とするステップ、
又は、
前記トレーニングパスが、前記元の教師モデルを起点として少なくとも1つの前記中間教師モデルを経由してから対応する候補生徒モデルに至る場合、前記ソースデータを入力とし、前記トレーニングパスにおける隣接する前の複雑な教師モデルにより出力された疑似ターゲットデータを検証として、それぞれの中間教師モデルをトレーニングし、且つ、トレーニングパスにおける候補生徒モデルに隣接する前の中間教師モデルにより出力された疑似ターゲットデータを候補生徒モデルの検証として、前記候補生徒モデルをトレーニングするステップを含み、
前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル、又はトレーニング済み且つ前記モデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである
ことを特徴とする請求項5に記載のニューラルネットワークモデルを圧縮する方法。
【請求項7】
前記複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するステップは、検証セットにより前記複数の候補生徒モデルの出力結果の精度を検出し、前記精度に応じて前記対象生徒モデルを選択するステップを含む
ことを特徴とする請求項1に記載のニューラルネットワークモデルを圧縮する方法。
【請求項8】
いずれかの前記中間教師モデルのモデルパラメータの総数が前記元の教師モデルのモデルパラメータの総数よりも少ないステップは、いずれかの前記中間教師モデルの層数が前記元の教師モデルの層数よりも少ないステップを含む
ことを特徴とする請求項2に記載のニューラルネットワークモデルを圧縮する方法。
【請求項9】
前記複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得するステップは、第1言語コーパスをソースデータとして取得し、前記第1言語コーパスと同一の意味を持つ第2言語コーパスをターゲットデータとして取得するステップを含む
ことを特徴とする請求項1に記載のニューラルネットワークモデルを圧縮する方法。
【請求項10】
前記ソースデータを入力とし、前記ターゲットデータを検証として、元の教師モデルをトレーニングするステップは、
前記第1言語コーパス及び前記第2言語コーパスを単語ごとに分割し、それぞれ複数の第1言語の単語及び複数の第2言語の単語を取得するステップと、
それぞれ前記複数の第1言語の単語及び前記複数の第2言語の単語をベクトル化することにより対応する複数の第1言語の単語ベクトル及び複数の第2言語の単語ベクトルを取得するステップと、
前記第1言語の単語ベクトルに基づいて、エンコーダ及びアテンションメカニズムにより第1言語コーパスベクトルを取得するステップと、
前記第2言語の単語ベクトルに基づいて、デコーダ及びアテンションメカニズムにより第2言語コーパスベクトルを取得するステップと、
前記第1言語コーパスベクトル及び前記第2言語コーパスベクトルに応じて、前記元の教師モデルをトレーニングするステップと、を含む
ことを特徴とする請求項9に記載のニューラルネットワークモデルを圧縮する方法。
【請求項11】
コーパスを取得するステップと、
請求項1~10のいずれか1項に記載のニューラルネットワークモデルを圧縮する方法により得られた対象生徒モデルであるニューラルネットワークモデルにより前記コーパスを翻訳するステップと、
翻訳結果を出力するステップと、を含む
ことを特徴とするコーパス翻訳方法。
【請求項12】
複数のトレーニングサンプルペアを含むトレーニングサンプルセットを取得するためのトレーニングサンプル取得ユニットであって、それぞれのトレーニングサンプルペアが、ソースデータ及び前記ソースデータに対応するターゲットデータを含むトレーニングサンプル取得ユニットと、
前記ソースデータを入力とし、前記ターゲットデータを検証として、元の教師モデルをトレーニングするための元のモデルトレーニングユニットと、
前記トレーニングサンプルセット及び前記元の教師モデルに基づいて1つ又は複数の中間教師モデルをトレーニングするための中間モデルトレーニングユニットであって、前記1つ又は複数の中間教師モデルが教師モデルセットを構成する中間モデルトレーニングユニットと、
前記トレーニングサンプルセット、前記元の教師モデル及び前記教師モデルセットに基づいて複数の候補生徒モデルをトレーニングするための生徒モデルトレーニングユニットであって、前記複数の候補生徒モデルが生徒モデルセットを構成する生徒モデルトレーニングユニットと、
前記複数の候補生徒モデルのトレーニング結果に応じて、1つの候補生徒モデルを対象生徒モデルとして選択するための対象モデル選択ユニットと、を含む
ことを特徴とするニューラルネットワークモデルを圧縮する装置。
【請求項13】
いずれかの前記中間教師モデルのモデルパラメータの総数は、前記元の教師モデルのモデルパラメータの総数よりも少ない
ことを特徴とする請求項12に記載のニューラルネットワークモデルを圧縮する装置。
【請求項14】
前記中間モデルトレーニングユニットは、さらに、前記ソースデータを入力とし、複雑な教師モデルにより出力された疑似ターゲットデータを検証として、トレーニングされるそれぞれの中間教師モデルをトレーニングするためのものであり、前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル、又はトレーニング済み且つ前記モデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである
ことを特徴とする請求項13に記載のニューラルネットワークモデルを圧縮する装置。
【請求項15】
次の順位の中間教師モデルのモデルパラメータの総数が前の順位の中間教師モデルのモデルパラメータの総数よりも小さくなるように、前記教師モデルセットにおける前記1つ又は複数の中間教師モデルは、それぞれのモデルパラメータの総数に従って降順で順位付けされ、且つ、現在の順位の中間教師モデルをトレーニングするための前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル又はトレーニング済みのいずれかの前の順位の中間教師モデルである
ことを特徴とする請求項14に記載のニューラルネットワークモデルを圧縮する装置。
【請求項16】
前記生徒モデルトレーニングユニットは、
前記複数の候補生徒モデルに一対一に対応する複数のトレーニングパスを確定するためのパス確認サブユニットであって、前記トレーニングパスが、前記元の教師モデルを起点としてそのまま対応する候補生徒モデルに至るか、又は前記元の教師モデルを起点として少なくとも1つの前記中間教師モデルを経由してから対応する候補生徒モデルに至るパス確認サブユニットと、
それぞれのトレーニングパスにおけるモデルの順序に従って、このトレーニングパスにおける対応する候補生徒モデルをトレーニングするか、又はこのトレーニングパスにおける対応する少なくとも1つの前記中間教師モデル及び対応する候補生徒モデルをトレーニングするためのトレーニングサブユニットと、をさらに含む
ことを特徴とする請求項13に記載のニューラルネットワークモデルを圧縮する装置。
【請求項17】
前記トレーニングサブユニットは、さらに、前記トレーニングパスが、前記元の教師モデルを起点としてそのまま対応する候補生徒モデルに至る場合、前記ソースデータを入力とし、トレーニング済みの前記元の教師モデルにより出力された疑似ターゲットデータを対応する候補生徒モデルの検証とし、
又は、
前記トレーニングパスが、前記元の教師モデルを起点として少なくとも1つの前記中間教師モデルを経由してから対応する候補生徒モデルに至る場合、前記ソースデータを入力とし、前記トレーニングパスにおける隣接する前の複雑な教師モデルにより出力された疑似ターゲットデータを検証として、それぞれの中間教師モデルをトレーニングし、且つ、トレーニングパスにおける候補生徒モデルに隣接する前の中間教師モデルにより出力された疑似ターゲットデータを候補生徒モデルの検証として、候補生徒モデルをトレーニングするためのものであり、前記複雑な教師モデルは、トレーニング済みの前記元の教師モデル、又はトレーニング済み且つ前記モデルパラメータの総数が現在トレーニングされる中間教師モデルのモデルパラメータの総数よりも多い他の中間教師モデルである
ことを特徴とする請求項16に記載のニューラルネットワークモデルを圧縮する装置。
【請求項18】
前記対象モデル選択ユニットは、さらに、検証セットにより前記複数の候補生徒モデルの出力結果の精度を検出し、前記精度に応じて前記対象生徒モデルを選択するためのものである
ことを特徴とする請求項12に記載のニューラルネットワークモデルを圧縮する装置。
【請求項19】
いずれかの前記中間教師モデルのモデルパラメータの総数が前記元の教師モデルのモデルパラメータの総数よりも少ないことは、いずれかの前記中間教師モデルの層数が前記元の教師モデルの層数よりも少ないことを含む
ことを特徴とする請求項13に記載のニューラルネットワークモデルを圧縮する装置。
【請求項20】
前記トレーニングサンプル取得ユニットは、さらに、第1言語コーパスを前記ソースデータとして取得し、前記第1言語コーパスと同一の意味を持つ第2言語コーパスを前記ターゲットデータとして取得するためのものである
ことを特徴とする請求項12に記載のニューラルネットワークモデルを圧縮する装置。
【請求項21】
前記元のモデルトレーニングユニットは、さらに、
前記第1言語コーパス及び前記第2言語コーパスを単語ごとに分割し、それぞれ複数の第1言語の単語及び複数の第2言語の単語を取得し、
それぞれ前記複数の第1言語の単語及び前記複数の第2言語の単語をベクトル化することにより対応する複数の第1言語の単語ベクトル及び複数の第2言語の単語ベクトルを取得し、
前記第1言語の単語ベクトルに基づいて、エンコーダ及びアテンションメカニズムにより第1言語コーパスベクトルを取得し、
前記第2言語の単語ベクトルに基づいて、デコーダ及びアテンションメカニズムにより第2言語コーパスベクトルを取得し、
前記第1言語コーパスベクトル及び前記第2言語コーパスベクトルに応じて、前記元の教師モデルをトレーニングするためのものである
ことを特徴とする請求項20に記載のニューラルネットワークモデルを圧縮する装置。
【請求項22】
コーパスを取得するための受信ユニットと、
請求項1~10のいずれか1項に記載のニューラルネットワークモデルを圧縮する方法により得られた対象生徒モデルであるニューラルネットワークモデルにより前記コーパスを翻訳するための処理ユニットと、
翻訳結果を出力するための出力ユニットと、を含む
ことを特徴とするコーパス翻訳装置。
【請求項23】
命令を記憶するためのメモリと、
前記メモリに記憶された命令を呼び出して請求項1~10のいずれか1項に記載のニューラルネットワークモデルを圧縮する方法又は請求項11に記載のコーパス翻訳方法を実行するためのプロセッサーと、を含む
ことを特徴とする電子機器。
【請求項24】
ロセッサーにより実行されることにより、請求項1~10のいずれか1項に記載のニューラルネットワークモデルを圧縮する方法又は請求項11に記載のコーパス翻訳方法を実行することを特徴とするプログラム
【請求項25】
請求項24に記載のプログラムが記憶された記録媒体。
【国際調査報告】