WO2023067743A1 - 学習装置、学習方法及びプログラム - Google Patents

学習装置、学習方法及びプログラム Download PDF

Info

Publication number
WO2023067743A1
WO2023067743A1 PCT/JP2021/038826 JP2021038826W WO2023067743A1 WO 2023067743 A1 WO2023067743 A1 WO 2023067743A1 JP 2021038826 W JP2021038826 W JP 2021038826W WO 2023067743 A1 WO2023067743 A1 WO 2023067743A1
Authority
WO
WIPO (PCT)
Prior art keywords
token
learning
position number
sequence
language model
Prior art date
Application number
PCT/JP2021/038826
Other languages
English (en)
French (fr)
Inventor
康仁 大杉
いつみ 斉藤
京介 西田
仙 吉田
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2021/038826 priority Critical patent/WO2023067743A1/ja
Priority to JP2023554164A priority patent/JPWO2023067743A1/ja
Publication of WO2023067743A1 publication Critical patent/WO2023067743A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Definitions

  • the present invention relates to a learning device, a learning method and a program.
  • a language model is a neural network model that obtains a distributed representation of tokens. In the language model, not a single token, but the entire text divided into tokens is input as a token sequence. can be done. Such distributed representations are also called contextual features, and the step of learning them is called pre-training.
  • a token is a unit of distributed expression such as a word or a subword.
  • pre-trained distributed representations can be used to solve various tasks such as text classification tasks and question-answering tasks.
  • the step of solving such a task is called fine-tuning.
  • BERT is based on a model called Transformer described in Non-Patent Document 1.
  • Transformer is a layered model consisting of attention mechanisms and fully connected layers.
  • the Transformer model uses a mechanism called scaled dot-product attention as attention, but this mechanism does not consider the order relation of tokens.
  • the Transformer model defines a feature value that represents the position of a token, called Positional Encoding, and adds it to the feature value of the token to consider the order relationship of the tokens.
  • Position vector such a feature quantity representing the position of a token will be referred to as a "position vector”.
  • a position vector is a vector that is uniquely determined with respect to the position number i of the token in the token series.
  • Positional Encoding distributed representation of token position numbers in a token sequence, Position Embedding used in BERT, and the like are also specific examples of position vectors.
  • Effective tokens are tokens used for model learning, such as words and subwords obtained by dividing a natural sentence text.
  • special tokens such as padding tokens are not valid tokens.
  • An embodiment of the present invention has been made in view of the above points, and aims to achieve sufficient learning of position vectors representing token positions in a token sequence.
  • a learning device changes the position number of the leading token of a token sequence included in given learning data, and sets the position number in order from the changed position number.
  • a learning device 10 capable of achieving sufficient learning of position vectors, which are feature quantities representing token positions in a token sequence, during model learning for solving a certain task.
  • a token refers to a predetermined processing unit such as a word or a subword when dividing a text.
  • the position vector is a feature amount vector uniquely determined for the position number i of the token in the token sequence.
  • Position Embedding used in BERT described in reference 1 and the like.
  • the position vector may be part of the model parameters of the language model, for example, Position Embedding described in Reference 1, or Positional Encoding PE (pos, 2i) and It may also be calculated from model parameters such as PE (pos, 2i+1) .
  • the learning device 10 sets the position number of the token at the beginning of the token sequence to a random value, and starts assigning position vectors from that position number.
  • the token sequence "XYZ” “cooking” “no” "time” “desu” “.” shall be entered in
  • the position number of the first token “XYZ” is “1”
  • the position number of the next token “cooking” is “2”
  • the position number of the next token “no” is "3”
  • Position numbers are set in order from "1".
  • the position number of the first token is a random value j
  • the position number of the next token is "j+1”
  • the position number of the next token is "j+2”.
  • the position numbers are set in order from "j", which is a random value.
  • the ratio of valid tokens appearing at a large position number i increases, so it becomes possible to sufficiently learn the position vector of that position number i.
  • the position vector of the position number "91” can be sufficiently learned as compared with the conventional technique.
  • the position of the first token is hereinafter also referred to as the "start position”, and its number is also referred to as the "start number”.
  • Effective tokens are tokens used for model learning, such as words and subwords obtained by dividing natural text.
  • special tokens such as padding tokens, for example, are not valid tokens.
  • a padding token is a padding process to align the token sequence of training data to a certain length (for example, the length specified as a learning condition, the maximum length inside a mini-batch when performing mini-batch learning, etc.).
  • FIG. 2 shows the hardware configuration of the learning device 10 according to this embodiment.
  • the learning device 10 according to the present embodiment is realized by the hardware configuration of a general computer or computer system, and includes an input device 101, a display device 102, an external I/F 103, and a communication I/F. F 104 , processor 105 and memory device 106 . Each of these pieces of hardware is communicably connected via a bus 107 .
  • the input device 101 is, for example, a keyboard, mouse, touch panel, physical button, or the like.
  • the display device 102 is, for example, a display, a display panel, or the like. Note that the learning device 10 may not have at least one of the input device 101 and the display device 102, for example.
  • the external I/F 103 is an interface with an external device such as the recording medium 103a. Through the external I/F 103, the learning device 10 can read from and write to the recording medium 103a.
  • Examples of the recording medium 103a include CD (Compact Disc), DVD (Digital Versatile Disk), SD memory card (Secure Digital memory card), USB (Universal Serial Bus) memory card, and the like.
  • the communication I/F 104 is an interface for connecting the learning device 10 to a communication network.
  • the processor 105 is, for example, various arithmetic units such as a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit).
  • the memory device 106 is, for example, various storage devices such as HDD (Hard Disk Drive), SSD (Solid State Drive), flash memory, RAM (Random Access Memory), and ROM (Read Only Memory).
  • the learning device 10 has the hardware configuration shown in FIG. 2, so that the learning process described later can be realized.
  • the hardware configuration shown in FIG. 2 is an example, and the learning device 10 may have, for example, a plurality of processors 105 or a plurality of memory devices 106. You may have various hardware other than the hardware which carried out.
  • FIG. 3 shows the functional configuration of the learning device 10 according to this embodiment.
  • the learning device 10 includes an input unit 201, a start number changing unit 202, a language model unit 203, a classifying unit 204, an updating unit 205, and an output unit 206. have. These units are implemented by, for example, processing that one or more programs installed in the learning apparatus 10 cause the processor 105 to execute.
  • One or more of these programs may be stored in memory device 106 via recording medium 103a or the like, or may be stored in memory device 106 after being downloaded from a server device or the like connected via a communication network.
  • the learning device 10 has a storage unit 207 .
  • the storage unit 207 is realized by the memory device 106, for example.
  • the storage unit 207 may be realized by a storage device such as a database connected to the learning device 10 via a communication network, for example.
  • the learning device 10 is given a set of learning data (also called a "learning data set") for a target task (hereinafter also referred to as a target task).
  • learning data include a token sequence created from text data and its correct answer data.
  • the input unit 201 inputs learning data given to the learning device 10 .
  • the start number change unit 202 sets the position number (start number) of the start position of the token sequence included in the learning data input by the input unit 201 to a random value, and calculates the position number sequence starting from the start number. do.
  • a position number sequence is a sequence represented by ⁇ j, j+1, . . . , J ⁇ where j is the starting number.
  • L be the sequence length of the token sequence
  • the language model unit 203 is realized by a language model including a neural network (for example, BERT, etc.).
  • the language model unit 203 calculates context features from the token sequence whose start number has been changed by the start number change unit 202 .
  • the model parameters of the language model that implements the language model unit 203 are referred to as "first model parameters".
  • the classification unit 204 includes a neural network and is realized by a classification model for solving a target task (for example, a natural language processing task such as a word fill-in task, a text classification task, etc.).
  • the classification unit 204 calculates the predicted feature amount of the target task from the context feature amount calculated by the language model unit 203 .
  • the model parameters of the classification model that implements the classification unit 204 are hereinafter referred to as "second model parameters".
  • the updating unit 205 updates the first model parameter and the second model parameter by supervised learning using the predicted feature amount calculated by the classifying unit 204 and the correct data included in the learning data input by the input unit 201. Update model parameters.
  • the output unit 206 outputs the learned first model parameters learned by the updating unit 205 .
  • the output unit 206 may output the learned first model parameter to a predetermined arbitrary output destination.
  • Such output destinations include, for example, auxiliary storage devices such as HDDs and SSDs, displays, other programs, and other devices or terminals connected via a communication network.
  • the storage unit 207 stores the first model parameters and the second model parameters. In addition to these, the storage unit 207 also stores, for example, intermediate calculation results when calculating the context feature amount, prediction feature amount, etc., and intermediate calculation results when updating the first model parameter and the second model parameter. may be stored.
  • ⁇ Learning data> Assuming that the target task is a word-fill-in-the-blank task, a method of creating learning data for the word-fill-in-the-blank task will be described below. For details of the word fill-in task, see, for example, "Task #1: Masked LM" described in Reference 1.
  • Text data may be data about any text. For example, each paragraph of text published on the Web such as an online encyclopedia may be extracted as one piece of text data.
  • each of the text data is divided into tokens by an appropriate tokenizer, and padding tokens are added to the end so that the length of the token sequence becomes a predetermined length L.
  • L the length of the token sequence becomes a predetermined length L.
  • the input unit 201 inputs given learning data (step S101).
  • the start number changing unit 202 sets the position number (start number) of the start position of the replaced token sequence included in the learning data input in step S101 to a random value, and A starting position number sequence is calculated (step S102).
  • the starting number changing unit 202 randomly selects a starting number j satisfying m ⁇ j ⁇ M using preset constants m and M (where m ⁇ M).
  • m ⁇ M preset constants
  • J min(j+L ⁇ 1, Z) with respect to the sequence length L of the token sequence and the maximum sequence length Z that can be handled by the language model.
  • the language model unit 203 uses the first model parameter and the position number sequence ⁇ j, j+1, .
  • a context feature amount is calculated from the replaced token series included in the obtained learning data (step S103).
  • the language model unit 203 calculates the context features by the same processing as the known language model, except that the position vector sequence corresponding to the position number sequence ⁇ j, j+1, . . . , J ⁇ is used. Just do it.
  • the position vector is Position Embedding in reference 1, it is in the form of a dictionary in which one position number and one position vector are associated.
  • a position vector sequence is obtained by searching for a position vector corresponding to each position number included in ⁇ j, j+1, . . . , J ⁇ .
  • the language model unit 203 may input the position vector sequence (Position Embedding) and the replaced token sequence to the BERT to calculate the context features.
  • the language model unit 203 extracts PE (pos, 2i) and PE (pos, 2i+1) to obtain the position vector sequence. Thereafter, similarly to Non-Patent Document 1, the language model unit 203 may input the position vector sequence and the replaced token sequence to the Transformer model and calculate the context features. Note that in PE (pos,2i) and PE (pos,2i+1), pos is the position number and i is the dimension.
  • the classification unit 204 uses the second model parameters to calculate the predicted feature amount of the word-fill-in-the-blank task from the context feature amount calculated in step S103 (step S104).
  • the classification model selects from a predetermined vocabulary set based on the context features hk for tokens with position numbers k (j ⁇ k ⁇ J) in the position number sequence ⁇ j, j+1, . . . , J ⁇ .
  • a mechanism for predicting a token with position number k for example, a one-layer feed forward neural network (Feed Forward Network) is used to transform the context feature h k into a prediction feature y k ⁇ R d ' whose dimensionality is the number of vocabulary words d'. do.
  • the vocabulary corresponding to the index of the element having the maximum value among the elements of the predicted feature amount yk can be predicted as the token with the position number k.
  • the update unit 205 uses the predicted feature amount calculated in step S104 and the correct token included in the learning data input in step S101 to generate the first model by supervised learning.
  • the parameter and the second model parameter are updated (step S105).
  • a learning method a generally known method for learning a neural network may be used.
  • the updating of the first model parameter and the second model parameter is repeatedly executed until the learning convergence condition is satisfied. Examples of convergence conditions for learning include that learning has been repeatedly executed a preset number of times, that the update amount of parameters before and after the repetition has become equal to or less than a predetermined threshold, and the like.
  • the output unit 206 outputs the learned first model parameters learned in step S105 (step S106). As a result, a trained language model is output. Note that the output unit 206 may output not only the learned first model parameters but also the learned second model parameters.
  • the learning device 10 sets a random value to the position number of the leading token of the token sequence input to the language model, and then learns model parameters from the token sequence.
  • the learning device 10 sets a random value to the position number of the leading token of the token sequence input to the language model, and then learns model parameters from the token sequence.
  • the learning of the first model parameter and the second model parameter has been described. Inference of the target task may be performed using two model parameters.
  • the learning device 10 may be called, for example, a “reasoning device” or the like. Note that when the learning device 10 functions as an inference device, the starting number changing unit 202 and the updating unit 205 are unnecessary, and the input unit 201, the language model unit 203, the classification unit 204, the output unit 206, and the storage unit 207 are replaced by Just be prepared.
  • the learning device 10 provides specific improvements to the conventional learning method regarding position vectors described in Non-Patent Document 1, Reference Document 1, etc., and is a machine learning model (particularly, For example, it represents an improvement in the technical field related to performance evaluation of machine learning models for solving natural language processing tasks such as word fill-in-the-blank tasks and text classification tasks.
  • a non-transitory storage medium storing a program executable by a computer to perform a learning process, The learning process includes changing the position number of the leading token of the token sequence contained in the given learning data, calculating the position number sequence in which the position number is set in order from the position number after the change, using the position number sequence and the token sequence to learn a language model parameter containing a position vector, which is a feature quantity corresponding to the position number, or a language model parameter for obtaining the position vector;
  • Non-transitory storage media Non-transitory storage media.
  • Reference 1 Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova, "BERT: Pre-training of Deep Bidirectional Transformers for Language, arXiv:1810.04805 [cs.CL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Machine Translation (AREA)

Abstract

一実施形態に係る学習装置は、与えられた学習用データに含まれるトークン系列の先頭トークンの位置番号を変更し、変更後の位置番号から順に位置番号を設定した位置番号系列を算出する変更部と、前記位置番号系列と前記トークン系列とを用いて、前記位置番号に対応する特徴量である位置ベクトルが含まれる言語モデルパラメータ又は前記位置ベクトルを得るための言語モデルパラメータを学習する学習部と、を有する。

Description

学習装置、学習方法及びプログラム
 本発明は、学習装置、学習方法及びプログラムに関する。
 近年、BERT(Bidirectional Encoder Representations from Transformers)を始めとした言語モデルに関する研究が盛んに行われている。言語モデルとは、トークンの分散表現を得るニューラルネットワークモデルの一つである。言語モデルでは、単一のトークンではなく、トークンに分割されたテキスト全体がトークン系列として入力されるため、そのトークン系列内の他のトークンとの意味的な関係性を反映した分散表現を得ることができる。このような分散表現は文脈特徴量とも呼ばれ、それを学習するステップは事前学習(pre-training)と呼ばれる。なお、トークンとは、単語やサブワード等といった分散表現の単位のことである。
 また、事前学習済みの分散表現を用いて、テキスト分類タスクや質問応答タスク等の様々なタスクを解くことができる。このようなタスクを解くステップはfine-tuningと呼ばれる。
 ところで、BERTは、非特許文献1に記載されているTransformerと呼ばれるモデルに基づいている。Transformerとは、注意機構や全結合層等によって構成される層を積み重ねたモデルである。Transformerモデルでは、注意として縮小付き内積注意(scaled dot-product attention)と呼ばれる仕組みを用いているが、この仕組みではトークンの順序関係は考慮されていない。このため、Transformerモデルでは、Positional Encodingと呼ばれる、トークンの位置を表す特徴量を定め、トークンの特徴量に足し合わせることでトークンの順序関係を考慮している。以下、このようなトークンの位置を表す特徴量を「位置ベクトル」と呼ぶことにする。位置ベクトルは、トークン系列中におけるトークンの位置番号iに対して一意に決まるベクトルである。なお、Positional Encoding以外にも、トークン系列中におけるトークンの位置番号の分散表現、BERTで利用されるPosition Embedding等も位置ベクトルの具体例の一つである。
Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, and Illia Polosukhin. Attention Is All You Need. In Proceedings of the NIPS 2017, pp. 5998-6008, 2017.
 ここで、位置番号iの位置ベクトルを学習するには、トークン系列の位置番号iに有効なトークンが存在する必要がある。有効なトークンとは、モデル学習に用いられるトークンのことであり、例えば、自然文のテキストを分割して得られた単語やサブワード等のことである。一方で、例えば、パディング用のトークン等といった特殊なトークンは有効なトークンに該当しない。
 しかしながら、学習用データには長いテキストもあれば短いテキストもあることが一般的であり、位置番号iが大きい場合にはその位置番号iに有効なトークンが存在しないことがある。このため、位置番号iが大きい場合には、その位置番号iの位置ベクトルが十分に学習できないことがある。
 例えば、学習用データに含まれるテキスト長を或る一定の長さに揃える場合、テキスト長がL未満のテキストにはパディング用トークンが追加される。このため、Lが或る程度大きい値である場合には、位置番号iがLに近いほど有効なトークンが存在しない可能性が高くなり、位置番号iの位置ベクトルの学習が十分にできない可能性も高くなる。
 本発明の一実施形態は、上記の点に鑑みてなされたもので、トークン系列中のトークン位置を表す位置ベクトルの十分な学習を実現することを目的とする。
 上記目的を達成するため、一実施形態に係る学習装置は、与えられた学習用データに含まれるトークン系列の先頭トークンの位置番号を変更し、変更後の位置番号から順に位置番号を設定した位置番号系列を算出する変更部と、前記位置番号系列と前記トークン系列とを用いて、前記位置番号に対応する特徴量である位置ベクトルが含まれる言語モデルパラメータ又は前記位置ベクトルを得るための言語モデルパラメータを学習する学習部と、を有する。
 トークン系列中のトークン位置を表す位置ベクトルの十分な学習を実現することができる。
位置番号の変更例を示す図である。 本実施形態に係る学習装置のハードウェア構成の一例を示す図である。 本実施形態に係る学習装置の機能構成の一例を示す図である。 本実施形態に係る学習処理の一例を示すフローチャートである。
 以下、本発明の一実施形態について説明する。本実施形態では、或るタスクを解くためのモデル学習の際に、トークン系列中のトークン位置を表す特徴量である位置ベクトルの十分な学習を実現することができる学習装置10について説明する。なお、トークンとは、テキストを分割する際の、単語やサブワード等といった所定の処理単位を指す。テキスト情報をニューラルネットワークで処理する際には、このトークン毎に分散表現に変換して用いる。また、位置ベクトルとは、トークン系列中におけるトークンの位置番号iに対して一意に決まる特徴量ベクトルのことであり、具体例としては、非特許文献1に記載されているPositional Encoding、トークン系列中におけるトークンの位置番号の分散表現、参考文献1に記載のBERTで利用されるPosition Embedding等が挙げられる。位置ベクトルは、例えば、参考文献1に記載されているPosition Embeddingのように言語モデルのモデルパラメータの一部であることもあれば、非特許文献1に記載されているPositional Encoding PE(pos,2i)及びPE(pos,2i+1)のようにモデルパラメータから計算されることもある。
 ここで、本実施形態に係る学習装置10は、モデル学習の際に、トークン系列の先頭のトークンの位置番号をランダムな値とし、その位置番号から位置ベクトルの割り当てを開始する。例えば、図1に示すように、トークン系列「XYZ」「クッキング」「の」「時間」「です」「。」「さて」「、」「今日」「の」「料理」「は」が言語モデルに入力されたものとする。この場合、従来技術では、先頭のトークン「XYZ」の位置番号を「1」、次のトークン「クッキング」の位置番号を「2」、その次のトークン「の」の位置番号を「3」等のように、「1」から順に位置番号が設定される。これに対して、本実施形態に係る学習装置10では、先頭のトークンの位置番号をランダムな値jとして、次のトークンの位置番号を「j+1」、その次のトークンの位置番号を「j+2」等のように、ランダムな値である「j」から順に位置番号を設定する。図1に示す例では、ランダムな値jとしてj=91である場合を示している。
 これにより、大きい位置番号iに出現する有効なトークンの割合が増えるため、その位置番号iの位置ベクトルを十分に学習することが可能となる。例えば、図1に示す例では、位置番号「91」には有効なトークン「XYZ」が存在するため、従来技術よりも位置番号「91」の位置ベクトルの学習を十分に行うことができるようになる。なお、トークンの位置番号は先頭のトークンから順に設定されるため、以下では、先頭のトークンの位置を「開始位置」、その番号を「開始番号」とも言う。
 なお、有効なトークンとは、モデル学習に用いられるトークンのことであり、例えば、自然文のテキストを分割して得られた単語やサブワード等のことである。一方で、例えば、パディング用トークン等といった特殊なトークンは有効なトークンに該当しない。パディング用トークンとは、学習用データのトークン系列を或る一定の長さ(例えば、学習条件として指定した長さ、ミニバッチ学習を行う場合におけるミニバッチ内部の最大長等)に揃えるためのパディング処理でトークン系列の末尾に追加されるトークンである。このパディング用トークンは、モデル学習における計算の効率化等のために追加されるものであるため、その計算結果を0とする等してモデル学習には用いられないような処理がなされる。すなわち、パディング用トークン等のようなモデル学習での計算結果が0となるトークンは有効なトークンに該当せず、それ以外のトークンが有効なトークンに該当する。
 <学習装置10のハードウェア構成>
 本実施形態に係る学習装置10のハードウェア構成を図2に示す。図2に示すように、本実施形態に係る学習装置10は一般的なコンピュータ又はコンピュータシステムのハードウェア構成で実現され、入力装置101と、表示装置102と、外部I/F103と、通信I/F104と、プロセッサ105と、メモリ装置106とを有する。これらの各ハードウェアは、それぞれがバス107を介して通信可能に接続されている。
 入力装置101は、例えば、キーボード、マウス、タッチパネル、物理ボタン等である。表示装置102は、例えば、ディスプレイ、表示パネル等である。なお、学習装置10は、例えば、入力装置101及び表示装置102のうちの少なくとも一方を有していなくてもよい。
 外部I/F103は、記録媒体103a等の外部装置とのインタフェースである。学習装置10は、外部I/F103を介して、記録媒体103aの読み取りや書き込み等を行うことができる。なお、記録媒体103aとしては、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等が挙げられる。
 通信I/F104は、学習装置10を通信ネットワークに接続するためのインタフェースである。プロセッサ105は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等の各種演算装置である。メモリ装置106は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ、RAM(Random Access Memory)、ROM(Read Only Memory)等の各種記憶装置である。
 本実施形態に係る学習装置10は、図2に示すハードウェア構成を有することにより、後述する学習処理を実現することができる。なお、図2に示すハードウェア構成は一例であって、学習装置10は、例えば、複数のプロセッサ105を有していてもよいし、複数のメモリ装置106を有していてもよいし、図示したハードウェア以外の様々なハードウェアを有していてもよい。
 <学習装置10の機能構成>
 本実施形態に係る学習装置10の機能構成を図3に示す。図3に示すように、本実施形態に係る学習装置10は、入力部201と、開始番号変更部202と、言語モデル部203と、分類部204と、更新部205と、出力部206とを有する。これら各部は、例えば、学習装置10にインストールされた1以上のプログラムが、プロセッサ105に実行させる処理により実現される。なお、これらの1以上のプログラムは、記録媒体103a等を介してメモリ装置106に格納されてもよいし、通信ネットワークを介して接続されるサーバ装置等からダウンロードされた後にメモリ装置106に格納されてもよい。
 また、本実施形態に係る学習装置10は、記憶部207を有する。記憶部207は、例えば、メモリ装置106により実現される。なお、記憶部207は、例えば、学習装置10と通信ネットワークを介して接続されるデータベース等の記憶装置により実現されていてもよい。
 ここで、学習装置10には、目的とするタスク(以下、目的タスクともいう。)の学習用データの集合(これは「学習用データセット」とも呼ばれる。)が与えられるものとする。これらの学習用データには、テキストデータから作成されたトークン系列とその正解データとが含まれる。
 入力部201は、学習装置10に与えられた学習用データを入力する。
 開始番号変更部202は、入力部201によって入力された学習用データに含まれるトークン系列の開始位置の位置番号(開始番号)をランダムな値に設定し、その開始番号から始まる位置番号系列を算出する。位置番号系列とは、開始番号をjとした場合に{j,j+1,・・・,J}で表される系列のことである。ここで、トークン系列の系列長をL、言語モデルが扱うことができる最大系列長をZとすると、J=min(j+L-1,Z)である。すなわち、開始番号をランダムな値にした場合に、位置番号系列の末尾の位置番号が最大系列長Zを超えるときには、位置番号系列は位置番号Zで打ち切るものとする。
 言語モデル部203は、ニューラルネットワークを含む言語モデル(例えば、BERT等)で実現される。言語モデル部203は、開始番号変更部202によって開始番号が変更されたトークン系列から文脈特徴量を算出する。以下、言語モデル部203を実現する言語モデルのモデルパラメータを「第1のモデルパラメータ」という。
 分類部204は、ニューラルネットワークを含み、目的タスク(例えば、単語穴埋めタスクやテキスト分類タスク等といった自然言語処理タスク)を解くための分類モデルで実現される。分類部204は、言語モデル部203によって算出された文脈特徴量から目的タスクの予測特徴量を算出する。以下、分類部204を実現する分類モデルのモデルパラメータを「第2のモデルパラメータ」という。
 更新部205は、分類部204によって算出された予測特徴量と、入力部201によって入力された学習用データに含まれる正解データとを用いて、教師あり学習により第1のモデルパラメータと第2のモデルパラメータとを更新する。
 出力部206は、更新部205によって学習された学習済み第1のモデルパラメータを出力する。なお、出力部206は、予め決められた任意の出力先に学習済み第1のモデルパラメータを出力すればよい。このような出力先としては、例えば、HDDやSSD等の補助記憶装置、ディスプレイ、他のプログラム、通信ネットワークを介して接続される他の装置又は端末等が挙げられる。
 記憶部207は、第1のモデルパラメータと第2のモデルパラメータとを記憶する。なお、これら以外も、記憶部207には、例えば、文脈特徴量や予測特徴量等を算出する際における途中の計算結果、第1のモデルパラメータと第2のモデルパラメータとを更新する際における途中の計算結果等が記憶されてもよい。
 <学習用データ>
 以下、目的タスクとして単語穴埋めタスクを想定し、単語穴埋めタスクの学習用データを作成する方法について説明する。なお、単語穴埋めタスクの詳細については、例えば、参考文献1に記載されている「Task #1: Masked LM」等を参照されたい。
 まず、テキストデータを準備する。テキストデータは、任意のテキストに関するデータでよい。例えば、オンライン百科事典等といったWeb上に公開されているテキストの各段落を1つのテキストデータとして抽出すればよい。
 次に、各テキストデータの各々を適切なトークナイザでトークンに分割し、トークン系列の長さが予め決められた長さLとなるようにパディング用トークンを末尾に追加する。これにより、例えば、各テキストデータをn=1,・・・,Nとした場合、テキストデータnから長さLのトークン系列{xn1,・・・,xnL}が得られる。
 続いて、各トークン系列{xn1,・・・,xnL}からいくつかのトークンを選択し、それら選択したトークンの各々を、マスクトークン[MASK]若しくはランダムに選んだ別のトークンに置換するか又はそのまま維持する。ここで、置換や維持の条件は参考文献1に記載されている「Task #1: Masked LM」と同様でよい。これにより、トークン系列{xn1,・・・,xnL}の一部のトークンが置換や維持されたトークン系列{x'n1,・・・,x'nL}が得られる。
 そして、トークン系列{x'n1,・・・,x'nL}を作成する際に元のトークン系列{xn1,・・・,xnL}において置換又は維持の対象に選ばれたトークンを正解データとして、トークン系列{x'n1,・・・,x'nL}とその正解データとが含まれるデータを学習用データnとする。以下では、トークン系列{x'n1,・・・,x'nL}を「置換済みトークン系列」、その正解データを「正解トークン」と呼ぶことにする。なお、置換又は維持の対象に選ばれたトークンが複数存在する場合、正解トークンも複数存在することに留意されたい。
 <学習処理>
 次に、本実施形態に係る学習処理について、図4を参照しながら説明する。なお、以下では、目的タスクとして単語穴埋めタスクを想定し、第1のモデルパラメータと第2のモデルパラメータとを同時に学習する場合について説明する。また、第1のモデルパラメータと第2のモデルパラメータは、適当な値(例えば、ランダムな値)で初期化されているものとする。
 入力部201は、与えられた学習用データを入力する(ステップS101)。
 次に、開始番号変更部202は、上記のステップS101で入力された学習用データに含まれる置換済みトークン系列の開始位置の位置番号(開始番号)をランダムな値に設定し、その開始番号から始まる位置番号系列を算出する(ステップS102)。このとき、開始番号変更部202は、予め設定された定数m及びM(ただし、m<M)を用いて、m≦j≦Mとなる開始番号jをランダムに選択する。これにより、位置番号系列{j,j+1,・・・,J}が得られる。ただし、トークン系列の系列長L、言語モデルが扱うことができる最大系列長Zに対して、J=min(j+L-1,Z)である。
 なお、m及びMは任意に設定することが可能であるが、例えば、参考文献1のように位置ベクトルが第1のモデルパラメータの1つである場合には、第1のモデルパラメータの増大を防ぐため、MをZの半分程度の値とすることが考えられる。一方で、mについては、通常、m=1とすればよいが、例えば、大きな位置番号の位置ベクトルの学習を重点的に行いたい場合にはmを1より大きい値とすることも可能である。
 次に、言語モデル部203は、第1のモデルパラメータと、上記のステップS102で算出された位置番号系列{j,j+1,・・・,J}とを用いて、上記のステップS101で入力された学習用データに含まれる置換済みトークン系列から文脈特徴量を算出する(ステップS103)。このとき、言語モデル部203は、位置番号系列{j,j+1,・・・,J}に対応する位置ベクトル系列を用いる点以外に関しては既知の言語モデルと同様の処理により文脈特徴量を算出すればよい。
 例えば、位置ベクトルが参考文献1のPosition Embeddingである場合、1つの位置番号と1つの位置ベクトルとが対応付けられた辞書のような形となっているため、言語モデル部203は、位置番号系列{j,j+1,・・・,J}に含まれる各位置番号に対応する位置ベクトルをそれぞれ検索することで、位置ベクトル系列を求める。その後は、参考文献1と同様に、言語モデル部203は、位置ベクトル系列(Position Embedding)と置換済みトークン系列とをBERTに入力し、文脈特徴量を算出すればよい。
 一方で、例えば、位置ベクトルが非特許文献1のPositional Encodingである場合、言語モデル部203は、位置番号系列{j,j+1,・・・,J}に含まれる各位置番号からPE(pos,2i)及びPE(pos,2i+1)を計算し、位置ベクトル系列を得る。その後は、非特許文献1と同様に、言語モデル部203は、位置ベクトル系列と置換済みトークン系列とをTransformerモデルに入力し、文脈特徴量を算出すればよい。なお、PE(pos,2i)及びPE(pos,2i+1)ではposが位置番号、iは次元を表すことに留意されたい。
 次に、分類部204は、第2のモデルパラメータを用いて、上記のステップS103で算出された文脈特徴量から単語穴埋めタスクの予測特徴量を算出する(ステップS104)。分類モデルは、位置番号系列{j,j+1,・・・,J}中の位置番号k(j≦k≦J)のトークンに関する文脈特徴量hに基づいて、予め決めれた語彙集合の中から位置番号kのトークンを予測する機構である。分類モデルでは、例えば、1層の順伝播型ニューラルネットワーク(Feed Forward Network)を用いて、文脈特徴量hを、次元数が語彙数d'である予測特徴量y∈Rd'に変換する。これにより、例えば、予測特徴量yの要素のうち、その値が最大となる要素のインデックスに対応する語彙を、位置番号kのトークンとして予測することができる。
 続いて、更新部205は、上記のステップS104で算出された予測特徴量と、上記のステップS101で入力された学習用データに含まれる正解トークンとを用いて、教師あり学習により第1のモデルパラメータと第2のモデルパラメータとを更新する(ステップS105)。なお、学習方法は、ニューラルネットワークの学習方法として一般的な既知の方法を用いればよい。また、第1のモデルパラメータと第2のモデルパラメータの更新は、学習の収束条件を満たすまで繰り返し実行される。学習の収束条件としては、例えば、予め設定された回数繰り返し実行されたこと、繰り返しの前後でパラメータの更新量が所定の閾値以下となったこと、等が挙げられる。
 そして、出力部206は、上記のステップS105で学習された学習済み第1のモデルパラメータを出力する(ステップS106)。これにより、学習済みの言語モデルが出力されたことになる。なお、出力部206は、学習済み第1のモデルパラメータだけでなく、学習済み第2のモデルパラメータを出力してもよい。
 <まとめ>
 以上のように、本実施形態に係る学習装置10は、言語モデルに入力されるトークン系列の先頭トークンの位置番号にランダムな値を設定した上で、そのトークン系列からモデルパラメータを学習する。これにより、例えば、トークン系列がパディングされている場合であっても、大きな位置番号に有効なトークンが存在する割合を高くすることができる。このため、大きな位置番号の位置ベクトルも十分に学習させることが可能となり、精度の良い言語モデルを獲得することができるようになる。
 ここで、本実施形態では、第1のモデルパラメータ及び第2のモデルパラメータの学習時について説明したが、本実施形態に係る学習装置10は、更に、学習済み第1のモデルパラメータ及び学習済み第2のモデルパラメータを用いて、目的タスクの推論を行ってもよい。この場合、学習装置10は、例えば、「推論装置」等と呼ばれてもよい。なお、学習装置10が推論装置として機能する場合には、開始番号変更部202及び更新部205は不要であり、入力部201、言語モデル部203、分類部204、出力部206及び記憶部207を備えていればよい。
 本実施形態に係る学習装置10は、非特許文献1や参考文献1等に記載されている位置ベクトルに関する従来の学習方法に対して特定の改善を提供するものであり、機械学習モデル(特に、例えば、単語穴埋めタスクやテキスト分類タスク等といった自然言語処理タスクを解くための機械学習モデル)の性能評価に係る技術分野の向上を示すものである。
 以上の実施形態に関し、更に以下の付記を開示する。
(付記項1)
 メモリと、
 前記メモリに接続された少なくとも1つのプロセッサと、
 を含み、
 前記プロセッサは、
 与えられた学習用データに含まれるトークン系列の先頭トークンの位置番号を変更し、変更後の位置番号から順に位置番号を設定した位置番号系列を算出し、
 前記位置番号系列と前記トークン系列とを用いて、前記位置番号に対応する特徴量である位置ベクトルが含まれる言語モデルパラメータ又は前記位置ベクトルを得るための言語モデルパラメータを学習する、
 学習装置。
(付記項2)
 前記プロセッサは、
 前記先頭トークンの位置番号jをランダムな値に変更し、
 Lを前記トークン系列の系列長、Zを言語モデルに入力可能な最大系列長、J=min(j+L-1,Z)としたとき、{j,j+1,・・・,J}を前記位置番号系列として算出する、付記項1に記載の学習装置。
(付記項3)
 前記プロセッサは、
 予め設定された定数m及びMを用いて、前記先頭トークンの位置番号を、m以上M以下のランダムな値に変更する、付記項1又は2に記載の学習装置。
(付記項4)
 前記定数mには1以上の値が設定され、
 前記言語モデルパラメータに前記位置ベクトルが含まれる場合、前記定数Mとして、言語モデルに入力可能な最大系列長Zの半分又は前記半分の前後の値が設定される、付記項3に記載の学習装置。
(付記項5)
 学習処理を実行するようにコンピュータによって実行可能なプログラムを記憶した非一時的記憶媒体であって、
 前記学習処理は、
 与えられた学習用データに含まれるトークン系列の先頭トークンの位置番号を変更し、変更後の位置番号から順に位置番号を設定した位置番号系列を算出し、
 前記位置番号系列と前記トークン系列とを用いて、前記位置番号に対応する特徴量である位置ベクトルが含まれる言語モデルパラメータ又は前記位置ベクトルを得るための言語モデルパラメータを学習する、
 非一時的記憶媒体。
 本発明は、具体的に開示された上記の実施形態に限定されるものではなく、請求の範囲の記載から逸脱することなく、種々の変形や変更、既知の技術との組み合わせ等が可能である。
 [参考文献]
 参考文献1:Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova, "BERT: Pre-training of Deep Bidirectional Transformers for Language, arXiv:1810.04805 [cs.CL]
 10    学習装置
 101   入力装置
 102   表示装置
 103   外部I/F
 103a  記録媒体
 104   通信I/F
 105   プロセッサ
 106   メモリ装置
 107   バス
 201   入力部
 202   開始番号変更部
 203   言語モデル部
 204   分類部
 205   更新部
 206   出力部
 207   記憶部

Claims (6)

  1.  与えられた学習用データに含まれるトークン系列の先頭トークンの位置番号を変更し、変更後の位置番号から順に位置番号を設定した位置番号系列を算出する変更部と、
     前記位置番号系列と前記トークン系列とを用いて、前記位置番号に対応する特徴量である位置ベクトルが含まれる言語モデルパラメータ又は前記位置ベクトルを得るための言語モデルパラメータを学習する学習部と、
     を有する学習装置。
  2.  前記変更部は、
     前記先頭トークンの位置番号jをランダムな値に変更し、
     Lを前記トークン系列の系列長、Zを言語モデルに入力可能な最大系列長、J=min(j+L-1,Z)としたとき、{j,j+1,・・・,J}を前記位置番号系列として算出する、請求項1に記載の学習装置。
  3.  前記変更部は、
     予め設定された定数m及びMを用いて、前記先頭トークンの位置番号を、m以上M以下のランダムな値に変更する、請求項1又は2に記載の学習装置。
  4.  前記定数mには1以上の値が設定され、
     前記言語モデルパラメータに前記位置ベクトルが含まれる場合、前記定数Mとして、言語モデルに入力可能な最大系列長Zの半分又は前記半分の前後の値が設定される、請求項3に記載の学習装置。
  5.  与えられた学習用データに含まれるトークン系列の先頭トークンの位置番号を変更し、変更後の位置番号から順に位置番号を設定した位置番号系列を算出する変更手順と、
     前記位置番号系列と前記トークン系列とを用いて、前記位置番号に対応する特徴量である位置ベクトルが含まれる言語モデルパラメータ又は前記位置ベクトルを得るための言語モデルパラメータを学習する学習手順と、
     をコンピュータが実行する学習方法。
  6.  コンピュータを、請求項1乃至4の何れか一項に記載の学習装置として機能させるプログラム。
PCT/JP2021/038826 2021-10-20 2021-10-20 学習装置、学習方法及びプログラム WO2023067743A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2021/038826 WO2023067743A1 (ja) 2021-10-20 2021-10-20 学習装置、学習方法及びプログラム
JP2023554164A JPWO2023067743A1 (ja) 2021-10-20 2021-10-20

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/038826 WO2023067743A1 (ja) 2021-10-20 2021-10-20 学習装置、学習方法及びプログラム

Publications (1)

Publication Number Publication Date
WO2023067743A1 true WO2023067743A1 (ja) 2023-04-27

Family

ID=86058029

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/038826 WO2023067743A1 (ja) 2021-10-20 2021-10-20 学習装置、学習方法及びプログラム

Country Status (2)

Country Link
JP (1) JPWO2023067743A1 (ja)
WO (1) WO2023067743A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110457718A (zh) * 2019-08-21 2019-11-15 腾讯科技(深圳)有限公司 一种文本生成方法、装置、计算机设备及存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110457718A (zh) * 2019-08-21 2019-11-15 腾讯科技(深圳)有限公司 一种文本生成方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
JPWO2023067743A1 (ja) 2023-04-27

Similar Documents

Publication Publication Date Title
Wang et al. Augmenting language models with long-term memory
CN111368996B (zh) 可传递自然语言表示的重新训练投影网络
JP7120433B2 (ja) 回答生成装置、回答学習装置、回答生成方法、及び回答生成プログラム
CA3078938C (en) Methods, systems, and computer program product for implementing software applications with dynamic conditions and dynamic actions
AU2018355097B2 (en) Methods, systems, and computer program product for implementing an intelligent system with dynamic configurability
Kumar et al. Controlled text generation as continuous optimization with multiple constraints
Wu et al. Exploring large language model for graph data understanding in online job recommendations
US20220405639A1 (en) Information processing apparatus, information processing method and program
JP7070653B2 (ja) 学習装置、音声認識順位推定装置、それらの方法、およびプログラム
JP7293729B2 (ja) 学習装置、情報出力装置、及びプログラム
US12026472B2 (en) Dialogue processing apparatus, learning apparatus, dialogue processing method, learning method and program
CN111738456A (zh) 评分卡模型训练方法及装置
JP2020035019A (ja) 情報処理装置、情報処理方法及びプログラム
CN117236410B (zh) 一种可信的电子文件大语言模型训练、推理方法和装置
JP2021026760A (ja) 機械翻訳装置及び方法
KR20200023664A (ko) 응답 추론 방법 및 장치
JP2021184217A (ja) モデル生成プログラム、モデル生成装置、及びモデル生成方法
WO2023067743A1 (ja) 学習装置、学習方法及びプログラム
JP6698061B2 (ja) 単語ベクトル変換装置、方法、及びプログラム
WO2021181719A1 (ja) 言語処理装置、学習装置、言語処理方法、学習方法、及びプログラム
d’Ascoli et al. Conditioned text generation with transfer for closed-domain dialogue systems
Su et al. Optimizing Multidocument Summarization by Blending Reinforcement Learning Policies
Dong et al. A Comparative Study of Different Pre-trained Language Models for Sentiment Analysis of Human-Computer Negotiation Dialogue
WO2024166183A1 (ja) 文生成学習方法、文生成方法、文生成学習装置、文生成装置及びプログラム
WO2023084759A1 (ja) 画像処理装置、画像処理方法、及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21961395

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023554164

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE