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
ChatGPTのアルゴリズム
Search
Yunosuke Yamada
March 03, 2023
Technology
0
350
ChatGPTのアルゴリズム
ニューラルネット系自然言語処理の歴史を、アルゴリズムも紹介しながら単純パーセプトロンからChatGPTに至るまで辿る
Yunosuke Yamada
March 03, 2023
Tweet
Share
More Decks by Yunosuke Yamada
See All by Yunosuke Yamada
React and XSS
yunosukey
0
270
DB Tree Algorithms
yunosukey
0
88
Tests in Go
yunosukey
1
100
Bugless Code
yunosukey
0
120
圏論とコンピュータサイエンス / Category Theory and Theoretical Computer Science
yunosukey
0
240
Other Decks in Technology
See All in Technology
カップ麺の待ち時間(3分)でわかるPartyRockアップデート
ryutakondo
0
110
プロダクト組織で取り組むアドベントカレンダー/Advent Calendar in Product Teams
mixplace
0
680
AIエージェントに脈アリかどうかを分析させてみた
sonoda_mj
2
140
新しいスケーリング則と学習理論
taiji_suzuki
9
3.8k
SpiderPlus & Co. エンジニア向け会社紹介資料
spiderplus_cb
0
680
知っててうれしい SQL について
greendrop
0
120
.NET 最新アップデート ~ AI とクラウド時代のアプリモダナイゼーション
chack411
0
170
20250116_JAWS_Osaka
takuyay0ne
2
160
AWS re:Invent 2024 ふりかえり勉強会
yhana
0
710
深層学習と3Dキャプチャ・3Dモデル生成(土木学会応用力学委員会 応用数理・AIセミナー)
pfn
PRO
0
430
20241125 - AI 繪圖實戰魔法工作坊 @ 實踐大學
dpys
1
450
30分でわかる「リスクから学ぶKubernetesコンテナセキュリティ」/30min-k8s-container-sec
mochizuki875
3
400
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
We Have a Design System, Now What?
morganepeng
51
7.3k
Bash Introduction
62gerente
610
210k
Faster Mobile Websites
deanohume
305
30k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Designing Experiences People Love
moore
139
23k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Practical Orchestrator
shlominoach
186
10k
A better future with KSS
kneath
238
17k
For a Future-Friendly Web
brad_frost
176
9.5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Transcript
ニューラルネットの誕生から ChatGPTまで 山田悠之介 2023/03/03
概要 目次 • 前半:ニューラルネットワークについて • 後半:自然言語処理とニューラルネット • 数式を使わずにできるだけアナロジーで説明 • 用語はちゃんと使う
2
保険 • 自分が勉強したのは学部3年の時 ◦ 5年前、2017年 ◦ ChatGPTの元になる論文:2017年 • 理論まで理解していたのは基礎的な内容 (ニューラルネットの話)
• 後半になるについて「らしい」が増えていきます 3
ニューラルネットワーク (NN) 4
単純パーセプトロン(50、60年代) • ≒1つの神経細胞をモデル化 • いい感じに学習(重みの更新)させることで線形分離可能な問題を解ける ◦ 「線形分離可能な問題」:平面を線で区切る、3次元を面で区切る • そうでない問題は解けない... ◦
下火に 5
多層パーセプトロン(80年代) • さっきの神経細胞を繋げていく • シナプス伝達のモデル化 • 重みの更新は出力側から入力側に伝播させる(誤差逆伝播) • 中間層のおかげで線形分離可能でなくても識別できる •
中間層を増やすにはマシンパワーが... ◦ 再び下火に 6
深層学習(2000年代) • マシンパワーが改善されたことで階層が深くても学習できるように • そして新しい問題が ◦ 局所最適解 ◦ 勾配の消失 7
局所最適解 • 学習は山登りに例えられる ◦ 今いる地点の傾き(勾配)を見て、上にいく(勾配法) • 逆に今いる地点しか見れないので、周りを見るともっと高い山があるのに、 手近な頂上を目指してしまう(局所最適解) ◦ 初めのうちは気まぐれで
上以外の方向に進んでみる (確率的勾配降下法) ◦ でも結局、間違った答えを 出すことはある 8
勾配の消失 • 上の方に進んでいきたいが、傾きが0だとどっちに行けば良いか分からない ◦ 学習が止まる • 誤差は逆伝播させていくので、より出力側で勾配が0になると、 入力側も学習が止まる ◦ 勾配の消失
• 階層が深くなると発生しやすくなる ◦ いろんな対応がある 9
自然言語処理(NLP)とNN 10
RNN (Recurrent neural network) • ネットワーク内で循環があるもの • 再帰的な構造のおかげで過去の状態、文脈を考慮できると言われている ◦ NLPへの応用
• 一方でうまくいっていない部分も ◦ 長期的な依存関係の学習 ◦ 勾配消失問題の発生 11
LSTM (Long short-term memory) • 長期記憶と短期記憶のモデル化 • RNNの問題点改善のため • ユニットとしてパーセプトロンではなく、
記憶の保持と忘却ができるものを利用? 12
Encoder-DecoderモデルとSeq2Seq • Encoder-Decoderモデル ◦ 入力をエンコーダで中間表現に変換してからデコーダで出力する • Seq2Seq (2014) ◦ Encoder-Decoderモデルのうち、入出力が系列になっているもの
◦ エンコーダ、デコーダにはRNN(LSTM)が使われる 13
Seq2Seq with Attention (2015) • Seq2Seqはエンコーダからデコーダに渡る情報が少なかったため、 精度が良くなかった • 改善のためAttentionが導入 ◦
2つの文章中の単語のペアに対して、 どのペアが重要か ◦ 異なる文章:Source-Target Attention ◦ 同じ文章 :Self Attention ◦ 長い文でも単語の関係をとらえやすくなった 14
Transformer (2017) • Attentionに注目 • Encoder-Decoderモデルだが RNN、LSTMを使わない • エンコーダ、デコーダには NNを6段ずつ使う
• 精度が良く、学習も並列でできる • Google翻訳もこのアルゴリズム 15
GPT (Generative Pre-trained Transformer) • Transformerの1種 • 教師あり学習するには、人力でデータを用意する必要 • 精度を上げるにはデータは多いほど良いが、大変(無理なこともある)
• 教師なしでの事前学習を採用し、その後用途別の調整 • GPT-3では570GBの文章で事前学習 ◦ GPT-3.5: GPT-3に編集と挿入機能を持たせる ◦ ChatGPT: GPT-3.5に対して微調整したもの 16
終わり 17