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
500
0
Share
「深層学習による自然言語処理」読書会 第5章5.1
「深層学習による自然言語処理」読書会
第5章5.1
Kei Shiratsuchi
PRO
September 08, 2017
More Decks by Kei Shiratsuchi
See All by Kei Shiratsuchi
モノリスとマイクロサービスの橋渡し - ベターからモアベターへ
kei_s
PRO
0
120
なぜ リアーキテクティング専任チームを作ったのか
kei_s
PRO
2
1.6k
実践 Rails アソシエーションリファクタリング / Rails association refactoring in practice
kei_s
PRO
8
9.8k
「Go言語でつくるインタプリタ」を Rust で移植してみた / "Write An Interpreter In Go" In Rust
kei_s
PRO
1
2k
Rust言語で作るインタプリタ / Write An Interpreter In Rust
kei_s
PRO
2
790
育児休業のご報告と、育児グッズとしてのスマートスピーカー / Parental Leave and SmartSpeaker
kei_s
PRO
0
900
「深層学習による自然言語処理」読書会 第6章2.7
kei_s
PRO
0
480
最近個人的に気になるプログラミング言語おさらい Ruby, Python, Go, Rust, Julia
kei_s
PRO
0
1.1k
「深層学習による自然言語処理」読書会 第2章2.1~2.5
kei_s
PRO
0
500
Other Decks in Technology
See All in Technology
BIツール「Omni」の紹介 @Snowflake中部UG
sagara
0
270
20260410 - CNTUG meetup #72 - DiskImage Builder 介紹:以 Kubespray CI 打造 RockyLinux 10 Cloud Image 為例
tico88612
0
120
ADOTで始めるサーバレスアーキテクチャのオブザーバビリティ
alchemy1115
2
270
Introduction to Bill One Development Engineer
sansan33
PRO
0
400
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
5
14k
Kubernetes基盤における開発者体験 とセキュリティの両⽴ / Balancing developer experience and security in a Kubernetes-based environment
chmikata
0
250
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
インフラを Excel 管理していた組織が 3 ヶ月で IaC 化されるまで
geekplus_tech
3
180
試されDATA SAPPORO [LT]Claude Codeで「ゆっくりデータ分析」
ishikawa_satoru
0
360
CloudSec JP #005 後締め ~ソフトウェアサプライチェーン攻撃から開発者のシークレットを守る~
lhazy
0
130
デシリアライゼーションを理解する / Inside Deserialization
tomzoh
0
250
Strands Agents × Amazon Bedrock AgentCoreで パーソナルAIエージェントを作ろう
yokomachi
2
270
Featured
See All Featured
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
100
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
Marketing to machines
jonoalderson
1
5.1k
Accessibility Awareness
sabderemane
0
94
Context Engineering - Making Every Token Count
addyosmani
9
810
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
Believing is Seeing
oripsolob
1
110
Raft: Consensus for Rubyists
vanstee
141
7.4k
Skip the Path - Find Your Career Trail
mkilby
1
100
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