tm4roon / survey Goto Github PK
View Code? Open in Web Editor NEWSurvey on machine learning.
Survey on machine learning.
医療テキストの抽出型要約。入力テキストを文単位に分割して、BERTに入力。トークンの平均ベクトルを文ベクトルとみなして、文をクラスタリングする。下記のwithin-cluster scoreが上位の文を抽出して、要約文を生成する。
翻訳には、翻訳文の単語を順次出力するAutoregressive translation(ART)と並列に出力するNon-Autoregressive translation(NART)がある。NARTは、推論時の計算時間がARTに比べて短いが、過去の出力情報をうまく参照することができず、翻訳品質が低い傾向にあった。そこで、ART modelのhidden states及びattention distributionとの差を損失関数に加えることによって、NARTのhidden satesやattention distributionをARTに近づけるような学習を行う。結果として、LSTM-based ARTを上回る性能を達成した。
ニューラル機械翻訳(NMT)におけるdata augmentationの手法を提案。言語モデルの出力分布をNMTの入力として利用する。NMTへの入力は基本的にone-hot表現の入力であるが、ここでは、確率的に言語モデルの出力分布を入力する。データが少ない場合、多い場合どちらにおいても、提案手法により性能を改善することが可能。
翻訳する過程において、出力文の難易度を制御することを試みた研究。Newselaのデータ(1文に対して想定読者の学年を付与している)を用いて、英語-スペイン語間の翻訳を行う。Table1にコーパスの例を示す。出力制御を行うために、出力文の難易度を入力文の先頭にラベルとして付与するといった手法を採用。また、翻訳タスクと平易化タスクのマルチタスク学習を行うことで、さらに性能が改善される。
テキスト平易化タスクにおいて、出力する平易さを制御する研究。制御する項目として、文長(NbChars)や入力文との編集距離(LevSim), 単語の平易度(WordRank), 構文木の深さ(DepTreeDepth)を挙げており、それらの以下のように入力文の文頭に挿入することにより、制御を行う。
原言語側と目的言語側の単言語コーパスを用いて、逆翻訳を繰り返すことでデータ拡張を行うIterative Back-Translationを提案。WMT2017 German-English, English-GermanのタスクでBLEUの性能を大きく改善。また、低資源言語対においても性能は改善するが、German-Englishほどの改善はない。
テキスト平易化において、出力語彙の語彙的な制約を設けることにより、平易さの度合いを制御しようとした研究。平易さ度合いを表すラベルを入力文頭に付与するほか、損失関数 L' の計算時に、各平易さ度合い l に対応する平易語 w を効果的に学習するための重み付けを行なっている。TFIDF, PPMIの2つの方法によって重み付けを行なっている。
##結果
翻訳モデルを用いたテキスト平易化に加え、単語毎の平易化操作(KEEP, ADD, DELETE)の予測タスクを加えることで、モデルに平易化時を学習させる。平易化操作の教師ラベルを生成する際には、原文と平易文のLevenshtein distanceにより、KEEP, ADD, DELETEのいずれかのラベルを付与する。結果として、SoTAのモデルに比べ平易さの評価尺度であるSARIが向上。
ニューラル機械翻訳で低頻度語や未知語に対応するため、単語より細かい分割単位(Sub-word)によるtokenize手法を提案。具体的にはByte-Pair-Encoding (BPE)を用いてtokenizeする。BPEの概略は次の通りである: (1) 文字レベルの分割で頻度をカウントし、それを初期辞書とする。(2) bigramを取り、頻度が高いものを連結し、一つのトークンとみなす。(3) (2)の処理を目的の語彙サイズになるまで繰り返す。BPEを用いたtokenizeにより、WMT 15において、BLEUが1.1 pt (En → Ge)、1.3 pt (En → Ru)向上。
言語モデルを学習させる際に、擬似的に学習データを増やすことで性能向上をはかる試み。データ拡張の方法として、次の2つの手法を提案: (1) 確率γで文中のtokenをplaceholder token "_"に置き換える。 (2) 確率γで文中のtokenを確率分布q(x) (e.g. unigram頻度分布)からサンプリングされたtokenに置き換える。
結果として、bigram Kneser-Ney noisingにより、データ拡張なしの手法に比べ、perplexityを大幅に改善。また、翻訳タスクに利用した際にも、BLEUを1.4pt改善。
PAWSをフランス語・スペイン語・ドイツ語・**語・日本語・韓国語の6つの言語に翻訳にすることで、cross-lingualのPAWS (PAWS-X)を構築。
逆翻訳により擬似的にデータを生成する際に、beam search + noise (単語の削除, マスク, 並び替え)を行うことにより、WMT2014 En-GeでBLEU 35ptを達成。(データセットが少ない場合はノイズは加えない方が良い。)
word2vecを8~16倍軽量化しつつ、高精度を実現する手法word2bitsを提案。word2vecの損失関数に量子化関数Qを追加することで、各要素が32bitsで表現されているベクトルを、1, 2bitsに落とし込む。
1, 2bitsの量子化関数は以下のように定義する。
Transformerのレイヤ自体をDropoutさせる方法LayerDropを提案。学習時には確率pでDropoutさせる。推論時には、レイヤでdropoutさせる。機械翻訳や要約, 言語モデル等のタスクにおいて、モデルを軽量化しつつ、性能を改善できることを示した。
BERTにおけるマスク単語予測を、phrase-level, entity-levelに拡張した(単語よりもまとまった単位のマスクを行う)モデルERNIEを提案。NLIやNERをはじめとする5種類のタスクで、BERTを超える性能を達成。またクローズテストにおいても、BERTに比べて、より高度な推論が可能であることを示した。
文の難易度推定を行うためのデータセット(文難易度:5段階評価)と、教師なしの難易度推定器を構築した。教師なしの難易度推定器では、(unigram, bigram, trigram)が出現する(各レベルのおける相対度数, 最も高い難易度, 最も低い難易度)の組み合わせにおいて、以下の8種類の特徴量を利用。また、文長も特徴量として加え、合計で73種類の特徴量を用いて、Random Forestにより難易度の推定を行う。結果として、教師ありの難易度推定手法を上回る結果を達成。また、人手評価と相関のある57種類のみで、73種類使用した場合と同等程度の性能を達成できることを示した。
* PCL: Phrase Complexity Level
テキスト平易化において、対象となる読者に合わせて平易さ度合いを制御できるようにすることを試みた研究。平易さの度合いを制御するために、入力文頭に、「どのくらいのレベルに平易化したいか」と「その操作」をラベルとして加える。平易レベルとして、Flesch-Kincaid Grade Level scoreを利用している。また、操作のラベルとしては、次の4つを利用している。
また、Zero-shot text simplificationにも対応できることを示した。
要約文の長さと要約文の中心となるエンティティを制御できるモデルを提案。具体的には、要約文長と対象としたいエンティティを入力テキストの文頭にラベルとして追加する。結果として、CNN-Dailymail datasetにおいてF1-ROUGE:40.38でSoTAを達成。
既存の要約データセットよりもさらに抽象度の高いデータを利用した要約に挑戦。 LDAによって得られたtopicをもとに、単語と文書のtopic embeddingを構築。このtopic embeddingを導入したConvolutional sequence-to-sequence learningを利用して、人手評価において高い評価を獲得。また、オラクル要約や既存の最高性能の手法よりも高いスコアを獲得。
負例サンプリングを伴うskip-gramによって得られるベクトルが、PMI行列を特異値分解(SVD: Singular value decomposition)することによって得られるベクトルと等価であることを示した論文。
Generative Latent Optimization (GLO)をベースとした教師なし学習の文埋め込みを獲得する手法を提案。モデルは下図のように、Sentence IDによってLatent Vector zを獲得し、そこから埋め込みたい文のBack-of-Wordを予測するような構造となっている。推論時には、Latent Vector zをランダムに初期化し、reconstruction lossが最小となるzを探索する。Semantic Textual Similarityのタスクで、uSIFを上回る性能を達成。また、Supervised Task(MR, CR, SUBJ, MPQA, TREC)においても、従来の手法に匹敵する性能を達成。
文字レベルを入力とした言語モデルから単語ベクトルを獲得する手法を提案。双方向のLSTMに文字レベルで入力。forward, backwardそれぞれLSTMから単語の末尾, 先頭の隠れ状態を獲得し、結合する。これを単語のベクトルとみなす。CoNLL2003 shared taskでstate-of-the-artを達成。また、文字レベルで入力することから、rare wordやmisspell wordなどにも対応可能。
固有表現抽出タスクにおいて英語→日本語に転移学習させる手法を提案。モデルの構造は、下図に示すBiLSTM (char+word) + CRFであるが、characterを入力する際は、ローマ字に変換したのちに入力する。転移学習及びローマ字化させることにより、有意な改善ができることを示した。また、モデルのどの部分(Character weights, Word weights, Dence weights)を転移学習すべきかを調査している。
文書き換えタスク(論文では、文法誤り訂正とスタイル変換)におけるデータ拡張手法を提案。生成した擬似データと教師データを同時に用いて学習させるのではなく、擬似データを学習したのちに、教師データでfine-tuningを行っている。
擬似データは逆翻訳によって生成を行うが、言語モデル(文法誤り訂正)や二値分類器(スタイル変換)を用いてフィルタリングすることで、学習に効果的なデータのみを抽出している。
生成型要約に関する論文。出力単語を"生成"するのか"入力文からコピー"するのかを切り替える機構とCoverage mechanism(過去のattention distributionを考慮する機構)を導入し、単語の繰り返しや情報の欠落などの問題を克服する。
ノイズ除去タスクを事前学習させることによって、モデルに変更を加えることなく、要約や文法誤りタスクの性能を改善。従来は、BERTやGPTのように、Seq2SeqのEncoder側及びDecoder側のみに対応する事前学習を行なっていた。ここでは、EncoderとDecoderを同時に学習させるために、ノイズ(単語の削除・置換・並び替え)を加えた文を入力として、元の文を復元するタスクを事前学習に用いる。
BERTの事前学習をEncoder-Decoderモデルに拡張した研究。BERTやGPTのような言語モデルの学習はEncoder及びDecoderのみの学習した出来なかった(Figure.2)。ここでは、入力文のある範囲をマスクした状態でエンコードし、その部分に入る語を予測するというタスクを解かせる事前学習を行う(Figure.1)。これにより、翻訳や要約、対話応答生成などの3つのタスク(8つのデータセット)で、性能を改善した。
文長制御可能な機械翻訳モデルを提案。次の2つのアプローチによって制御を行う。
事前学習済みのTransformer言語モデルを、Text ClassificationやTextual Entailment, Semantic Textual Similarity, Question Answeringなど様々なタスクに適応させる方法を提案。fine-tuningの際は、目的のタスクの損失に加え、言語モデルの損失も計算する。 9つのタスクでstate-of-the-artを達成。
テキスト平易化において、語彙や構文に制約を加えることで出力を制御しようと試みた研究。語彙的制約では、入力単語のベクトルに加えて、その単語が言い換えるべきかどうかのラベルを同時に入力することで制御している。また、構文的制約では、テンプレート(構文解析の結果)を用いて、出力を制限している。結果として、WikiLargeにおいてSoTAを達成。また、平易さ度合いを制御することも可能とした。
言語モデルのみを利用したシンプルな教師なしの生成型要約手法を提案。ここでは、Contextual Matching ModelとDomain Fluency Modelの2つの言語モデルを利用して要約文を生成している。生成型要約および抽出型要約の2つのタスクで、提案手法の有用性を示した。
要約では、次の2つの特性を満たしている必要がある。
ここで、は入力テキスト、
は要約文を表す。また、
は正確性の評価であり、
は、流暢性の評価を表す (
はハイパーパラメータ)。以下で、それぞれの詳細を述べる。また、出力語彙Cは、元テキストに含まれる語及びベクトル空間上でその近傍にあるk語 (論文中では、k=6)のみに制限している。
正確性は、元テキストと要約文の文脈類似度によって評価する。文脈の類似度は、言語モデルの最終出力系列のコサイン類似度によって計算する。ここで、文脈の類似度をと表すこととする。このとき、
,
はそれぞれ系列長mの入力テキスト、系列長nの要約文を表す。
実際に生成を行う際には、以下の手順に従う。
n=1のとき
n > 1のとき
言語モデル確率を利用して、流暢性の評価を行う。しかしながら、事前学習済みの言語モデルの語彙Vと出力語彙Cではサイズが異なり、適切に言語モデルが計算できない。そこで、Voronoi partitionにより語彙Vを制約を設けた語彙Cにマップさせる。ここで、のvoronoi cell
をとしたとき、言語モデルは次のように計算される。
教師あり学習のモデルに匹敵する性能を達成。
生成型要約に関する論文。 入力文とそれに相応しいtemplateの2つを利用して要約文を生成するモデル。 templateを利用することで、より流暢かつ意味のある要約文を生成できるようになった。imformativenessに関して、state-of-the-artの手法よりも優れた結果が得られた。 また、生成される要約文の頑健さと可読性を改善した。
提案手法では、次の3ステップで要約文を生成する。
要約文生成では、実用上、出力文長に制約がある場合が多い。従来の出力文長制御における研究では、ユーザが指定した文長を超えた出力となる事例が多かった。ここでは、ROUGEを直接最適化するMinimum risk trainingに、指定文長を上回ったことによるペナルティを設けることにより、要約の品質を落とさず、出力文長による制約を与えることを目指している。結果として、従来の手法に比べて、高い品質かつ指定した文長以内に要約文を収めることが可能となった。
単語を順次出力させるのではなく、並列して出力させることにより推論時の計算時間を削減した翻訳モデルを提案。WMT 2016のRomanian→EnglishではBLEU 29.8でstate-of-the-artを達成。
Decoder inputs: 以下の2つを入力とする。
Positional attention: Encoderのpositional embeddingをquery及びkey、decoderのpositional embeddingをvalueとしたattention。
Neural text generationで頻繁に発生する、同じ単語を繰り返し出力してしまう問題や高頻度な単語を過剰に出力してしまう問題に対して、望まない出力に関する損失(unlikelihood)を追加すること提案。これにより、人手評価において有意に性能を改善。unlikelihoodとして、token-levelとsentence-levelの2つを定義している。
過去に出力した単語に対してペナルティを与える。
繰り返すn-gramに対してペナルティを与える。
Attention-based seq2seq modelのencoder側を拡張。RNNの上にConvolution Gated UnitとSelf-attention layerを被せることで、n-gramレベルの局所的な特徴と文を跨ぐような長期的な特徴を捉えることによって、性能を改善。また、重複したn-gramを生成してしまう問題を軽減。
BERTを抽出型要約にfine-tuningする手法を提案。BERTでは、トークンレベルのタスク(マスク単語予測)を解いているので、これを文レベルに拡張するために、下図のように、各文の先頭に[CLS]、末尾に[SEP]を挿入することによって文境界の情報を与えている。[CLS]の位置に対応する出力ベクトルを文のベクトルとみなす。BERTの上に、Summarization Layersをのせることで二値分類を行う。Summarization Layersは、3種類 (Linear layer, Inter-sentence Transformer, RNN)用いて比較を行っている。
BERTの学習方法について詳細に調査した研究。
BERTに以下の変更を加えたものを、ここではRoBERTaと呼んでいる。
GLUE, RACE, SQuADでstate-of-the-artを達成。
Wikipedia, BooksCorpusで学習したBERTをさらに、医療関係の大規模なテキスト(PubMed, PMC)で学習したモデルBioBERTを提案。医療ドメインのNER, Relation extraction, Question answeringで、BERTを上回る性能を達成し、医療ドメインテキストによる事前学習の有用性を示した。
文法誤り訂正のタスクにおいて、擬似データ拡張手法について調査した研究。特に次の3つの点に注目して調査を行なっている。(i) データ拡張手法による違い: BACKTRANS(逆翻訳)かDIRECT NOISE(単語の追加・挿入・削除・マスク) (ii) 事前学習するデータによる違い: SimpleWiki, Wiki, Gigaword (iii) 学習方法による違い: JOINT (擬似データ+学習データを同時に学習), PRETRAIN(擬似データを学習後に、学習データでfine-tuning)。結果として、Gigwaword corpus + BACKTRANS pre-training が最も効果的であることがわかった。また、CONLL2014やJFLEG, BEAのタスクにおいて、モデル自体に改良を加えることなく性能を改善した。
入力文頭に、「どの言語に翻訳するか」を表すラベルを挿入することで多言語翻訳を実現しようという試み。入力データに変更を加えるだけで、モデル自体は変更していない。WMT2014, 2015のFrench-English, German-EnglishでSoTAを達成。また、様々な言語対を同時に学習させたことにより、低資源の言語対での性能改善やZero-shot translation(e.g. Portugese-Spanishのデータが存在しなくても、Portugese-English, English-Spanishを学習していることにより、Portugese-Spanishの翻訳が可能)を実現。
語順の入れ替えや文構造の理解に焦点を当てた言い換え認識のデータセット。従来の言い換え認識のデータセットでは、高いbag-of-words overlapを有する負例が極端に少ないため、下記のようなパターンを認識するのは、困難であった。
そこで、折り返し翻訳と語彙制約付きの言語モデルによる語順並び変えを組み合わせて、言い換え認識のデータセット(PAWS)を構築。
従来の言い換え認識のデータで学習したモデルをPAWSで評価したところ、正解率は40%以下。一方で、PAWSで学習したモデルで従来のデータで評価したところ正解率は85%以上を達成し、従来のデータに比べ、高品質な言い換えデータセットであることを示した。
「良い対話システムとは何か?」について、モデルによる出力制御と人手評価の関係性を調査した研究。出力制御では、次の4つの項目について制御を行なった: 応答の繰り返し, 応答の具体性, 発話と応答の関係性, 質問と応答のバランス。結果として、繰り返しの抑制が良い対話システムを構築するための重要な要素の一つであることを示した。また、人手評価において、interestingness, listeningなどとrepetitive, fluency, making senseなどにはトレードオフの関係があることを示した。対話システムによる評価では、engagingnessとhumanessは同一のものと見なされて評価されているが、今回の実験から、engagingnessとhumanessは全く別物であり、humanessの評価にはengagingness以外の要素も必要であることを示した。
固有表現抽出においてstate-of-the-artなモデル(BiLSTM-CNNs-CRF)を日本語に適用。 日本語の特徴に合わせて単語の入力に合わせて、文字ベースの入力を加える。提案手法(Char-BiLSTM-CRF)により日本語固有表現抽出においてstate-of-the-artを達成。
文頭に逆翻訳によって生成されたことを明示する<BT>というタグを挿入し、学習データに追加するTagged Back-Translationを提案。従来のNoised Back-Translation (逆翻訳後に単語の並び替えや削除・マスクを行う手法)に比べて、提案手法によりWMT English-Romanian, English-GermanにおいてSoTAを達成。
機械翻訳において、学習データと異なるドメインのテストデータに用いた場合には、性能が低い傾向にある。ここでは、学習データのドメインを文末にタグとして挿入する手法と、ドメイン埋め込みを導入し、token-levelでモデルに入力する手法の2つを用いて翻訳性能の改善を試みている。各ドメインのコーパス単体で学習させたモデルよりも、あらゆるドメインを同時に学習させたモデルの方が、全てのドメインで高い性能を達成した。また、ドメインタグを挿入するよりも、ドメイン埋め込みを用いた方が性能を改善できることを示した。
Neural headline generation modelにおける事前学習の効果を検証した論文。EncoderやDecoderを言語モデル的に事前学習させる他に、言語モデルを利用して、元の記事データから擬似的なheadlineを抽出し、学習データに加えるDistant Supervisionを利用し、性能を改善。
文法誤り訂正における擬似データ生成の研究。ここでは、ルールベースの擬似データ生成(ランダムに単語を置換, 挿入, 削除)と逆翻訳を利用した擬似データ生成の2つを用いて実験を行なっている。擬似データにおける誤り率や誤りタイプにフィルタリングをかけることにより、より効果的な擬似データ生成を試みている。結果として、誤り率40%程度で、既存のモデルの性能を最も改善できることを示した。
文法誤り訂正に関する研究。文中の間違った部分と正しい文を分類タスク・生成タスクのMulti-task learningを行う。文法誤り訂正タスクでは多くの場合、誤り文と訂正文の間で単語が一致する。そのため、Copy mechanismを導入している。また、コピーを学習させるために、事前学習としてノイズ除去タスクを行い、性能を改善している。
教師なしのキーフレーズ抽出手法を提案。文書ベクトルとフレーズベクトルを同じベクトル空間上にマップし、以下の2つの方法でキーフレーズ候補をランキングする。
多様性を考慮することにより、ユーザによる評価において、高いスコアを獲得。
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.