Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
「深層学習による自然言語処理」読書会 第5章5.1
Search
Kei Shiratsuchi
PRO
September 08, 2017
Technology
0
460
「深層学習による自然言語処理」読書会 第5章5.1
「深層学習による自然言語処理」読書会
第5章5.1
Kei Shiratsuchi
PRO
September 08, 2017
Tweet
Share
More Decks by Kei Shiratsuchi
See All by Kei Shiratsuchi
モノリスとマイクロサービスの橋渡し - ベターからモアベターへ
kei_s
PRO
0
110
なぜ リアーキテクティング専任チームを作ったのか
kei_s
PRO
2
1.5k
実践 Rails アソシエーションリファクタリング / Rails association refactoring in practice
kei_s
PRO
8
8.9k
「Go言語でつくるインタプリタ」を Rust で移植してみた / "Write An Interpreter In Go" In Rust
kei_s
PRO
1
1.9k
Rust言語で作るインタプリタ / Write An Interpreter In Rust
kei_s
PRO
2
680
育児休業のご報告と、育児グッズとしてのスマートスピーカー / Parental Leave and SmartSpeaker
kei_s
PRO
0
860
「深層学習による自然言語処理」読書会 第6章2.7
kei_s
PRO
0
460
最近個人的に気になるプログラミング言語おさらい Ruby, Python, Go, Rust, Julia
kei_s
PRO
0
1k
「深層学習による自然言語処理」読書会 第2章2.1~2.5
kei_s
PRO
0
460
Other Decks in Technology
See All in Technology
Workflows から Agents へ ~ 生成 AI アプリの成長過程とアプローチ~
belongadmin
3
150
Rubyで作る論理回路シミュレータの設計の話 - Kashiwa.rb #12
kozy4324
1
310
Model Mondays S2E01: Advanced Reasoning
nitya
0
360
Nonaka Sensei
kawaguti
PRO
3
680
今からでも間に合う! 生成AI「RAG」再入門 / Re-introduction to RAG in Generative AI
hideakiaoyagi
1
170
開発効率と信頼性を両立する Ubieのプラットフォームエンジニアリング
teru0x1
0
140
2025/6/21 日本学術会議公開シンポジウム発表資料
keisuke198619
1
290
原則から考える保守しやすいComposable関数設計
moriatsushi
3
420
Autonomous Database サービス・アップデート (FY25)
oracle4engineer
PRO
2
770
SFTPコンテナからファイルをダウンロードする
dip
0
270
doda開発 生成AI元年宣言!自家製AIエージェントから始める生産性改革 / doda Development Declaration of the First Year of Generated AI! Productivity Reforms Starting with Home-grown AI Agents
techtekt
0
160
「規約、知識、オペレーション」から考える中規模以上の開発組織のCursorルールの 考え方・育て方 / Cursor Rules for Coding Styles, Domain Knowledges and Operations
yuitosato
6
1.7k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
430
65k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.3k
For a Future-Friendly Web
brad_frost
179
9.8k
Scaling GitHub
holman
459
140k
How GitHub (no longer) Works
holman
314
140k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Transcript
ʮਂֶशʹΑΔࣗવݴޠॲ ཧʯಡॻձ ୈষ ⽩⼟ 慧 株式会社レトリバ © 2017 Retrieva, Inc.
ࣗݾհ • 名前:⽩⼟ 慧 • 年齢:33歳 • 所属:株式会社レトリバ(2016年4⽉〜) • 職業:エンジニア
• ⾃然⾔語処理:⼤学の授業レベル。 • 深層学習:⼊社してから少しだけ案件で。 © 2017 Retrieva, Inc. 2
<એ> • WEB+DB PRESS Vol.100 に、弊社 のメンバーが特集記事を書きまし た。 • 特集1
作って学ぶ⼈⼯知能 • 第1章 ⼈⼯知能とはどんな技術なの か? • 第2章 ⾃然⾔語処理 • 第3章 機械学習 • 第4章 深層学習とニューラルネット ワーク • 明⽇ 8/24 発売! © 2017 Retrieva, Inc. 3
ൣғ • 5.1. 機械翻訳 • 5.1.1 「統計」翻訳と「ニューラル」翻訳 • 5.1.2 典型的なモデル構成
• 5.1.3 ⼊出⼒の処理単位/未知語に対する改良 • 5.1.4 被覆に対する改良 • 5.1.5 今後の発展 • 付録: GitHub に公開された Chainer による NMT の実装 © 2017 Retrieva, Inc. 4
ʮ౷ܭʯ༁ͱʮχϡʔϥϧʯ༁ • ニューラル翻訳(NMT) • 系列変換モデルのように、1つのニューラルネットで翻訳モデルを構成 するような機械翻訳⽅式 • 統計翻訳(SMT)との対⽐として使われる⽤語。最近では系列変換モデ ルを使った機械翻訳の総称として使われるようになった •
WMT15,16でニューラル翻訳システムが統計翻訳システムを⼤ きく上回った • この章では、2017年1⽉時点でのベースライン技術に絞って解 説 © 2017 Retrieva, Inc. 5
యܕతͳϞσϧߏ • 注意機構付き系列変換モデルが、ニューラル翻訳を含めた機械翻訳 のベースラインと考えられるようになってきた • GroungHog(RNNSearch) • 現在メンテナンスは終了 • GroungHog
は⼆種類あるが、RNNSearch は注意機構付き • OpenNMT • 現時点で速度、メモリ使⽤量、最終的な翻訳精度で優れていると⾔われる • 本節ではOpenNMTで採⽤されているモデルを解説する © 2017 Retrieva, Inc. 6
యܕతͳϞσϧߏ • 符号化部分 • 2層双⽅向LSTM • 復号化部分 • 2層LSTM •
注意機構 © 2017 Retrieva, Inc. 7
యܕతͳϞσϧߏʢූ߸Խ෦ʣ © 2017 Retrieva, Inc. 8
యܕతͳϞσϧߏʢ෮߸Խ෦ɺֶश࣌ʣ © 2017 Retrieva, Inc. 9
యܕతͳϞσϧߏʢ෮߸Խ෦ɺධՁ࣌ʣ • 正解がわからないので、前 の時刻 j-1 の予測を利⽤し て j の予測を⾏う •
EOSが出⼒されるまで繰り 返す • ビーム探索を⽤いて処理を ⾏うことが多い © 2017 Retrieva, Inc. 10
ೖग़ྗͷॲཧ୯Ґະޠʹର͢Δվྑ • 扱う語彙数を多くすると計算量が⼤きくなりすぎ、精度も低下 する • ニューラル翻訳では統計翻訳より語彙数が少ないのが現状 • 未知語をどう扱うかも課題 • 統計翻訳を踏襲して、未知語を後処理で何かの語に置き換える⼿法も
ある © 2017 Retrieva, Inc. 11
ೖग़ྗͷॲཧ୯Ґະޠʹର͢Δվྑ • 「単語」ではなく「⽂字」を単位にする⽅法 • ⽂字数は多くても数1000⽂字で収まるので、簡単になる • ⼀⽅、系列⻑は圧倒的に⻑くなるので、予測誤りが多くなる • トレードオフの⾒極めはまだ •
バイト対符号化 • 前処理として、⼀定の語彙数になるまで、出現頻度が⼤きい⽂字ペア を1つの⽂字としてまとめていく © 2017 Retrieva, Inc. 12
ඃ෴ʹؔ͢Δվྑ • ニューラル翻訳の既知の弱点 • 繰り返し⽣成する、過剰⽣成問題(Over-generation) • 必要な語やフレーズを無視する、不⾜⽣成問題(Under-generation) • 被覆(Coverage)概念を導⼊する •
統計翻訳時代には普通に使われていた • 注意機構で計算される注意確率の合計が、復号化器の処理が終わった 際に何らかの値(全て1のベクトルなど)になるよう学習させる © 2017 Retrieva, Inc. 13
ࠓޙͷൃల オレはようやく登りはじめたばかりだからな。 このはてしなく遠いNMT坂をよ… © 2017 Retrieva, Inc. 14
(JU)VCʹެ։͞Εͨ $IBJOFS ʹΑΔ /.5 ͷ࣮ • https://github.com/mlpnlp/mlpnlp-nmt © 2017 Retrieva,
Inc. 15