【深層学習】BERT - 実務家必修。実務で超応用されまくっている自然言語処理モデル【ディープラーニングの世界vol.32】
HTML-код
- Опубликовано: 7 фев 2025
- 自然言語処理の超最強モデル、BERT くんです。
実務で NLP で困ったら、とりあえず BERT 使っておけばいいと思います。
実世界で一番利用されているモデルじゃないでしょうか。(マスターの会社でも2020年前半頃から実運用しています)
========
5:55頃に誤りがあります! V_between は 2N^2 ではなく単に N^2 で割ってください!
動画内の誤り一覧 bit.ly/error_asp
========
☆お知らせ☆
AIcia Solid Project 公式HPが出来ました!!!
sites.google.c...
HPでは私たちや動画コンテンツの紹介、板書データの公開などをしています。是非ご活用ください!!
▼関連動画
Transformer の動画はこちら! • 【深層学習】Transformer - Mu...
忙しい人向け → • 【深層学習】忙しい人のための Transfo...
Deep Learning の世界 • Deep Learning の世界
自然言語処理シリーズ • 自然言語処理シリーズ
▼目次
公開後追加予定!
▼参考文献
Devlin, Jacob, et al. "Bert: Pre-training of deep bidirectional transformers for language understanding." arXiv preprint arXiv:1810.04805 (2018).
arxiv.org/abs/...
原論文!
2年前、Transformer論文の次にコレを読んで、「Transformer と何が違うの、、、?」と混乱した思い出があります。
時代背景やこの論文の主張をわかった上で読んだらとても読みやすいと思います!(^o^)
BERTによる自然言語処理入門: Transformersを使った実践プログラミング
amzn.to/3iaFdsX
使いたいときはこれ読むとよいと思います!!
【2019年版】自然言語処理の代表的なモデル・アルゴリズム時系列まとめ - Qiita qiita.com/Left...
いろいろこれを参考にして動画を作っています
▼終わりに
ご視聴ありがとうございました!
面白かったら高評価、チャンネル登録お願いします。
動画の質問、感想などは、コメント欄やTwitterにどうぞ!
お仕事、コラボのご依頼は、TwitterのDMからお願い致します。
動画生成:AIcia Solid (Twitter: / aicia_solid )
動画編集:AIris Solid (妹) (Twitter: / airis_solid )
=======
Logo: TEICAさん ( / t_e_i_c_a )
Model: 3d.nicovideo.jp...
Model by: W01fa さん ( / w01fa )
ありがとうございます!
来年も動画配信お願いします!
ご支援いただきましてありがとうございます!!!
私が動くサーバー代として活用させていただきます🤤
これからも価値ある動画を生成できるよう精進しますので、応援いただけますと嬉しいです。
よろしくお願いします!🔥
いつも、丁寧な説明で非常にわかりやすい。手書きも味わい深さがあります。
ご視聴コメントありがとうございます!!!🎉🎉
そう言っていただけると嬉しいです😊
ぜひたくさんご活用くださーい!🥳
わかりやすい動画ですよ!僕は海外の視聴者ですけど、聞き取れやすいだと思います!
ご視聴コメントありがとうございます!😍🎉🎉🎉
すごい、日本語もお上手なのですね、、、!
わたしも英語を勉強しているので、非母国語を使いこなすこのと難しさは知っています。
尊敬します!!🎉
とある会社でデータサイエンティストをしている者です。
今後自然言語系の案件に携わる予定があるので動画拝見させていただきましたが、
非常にわかりやすく参考になりました!
(アバターもかわいく、動きが出ていて講義感があり素晴らしいです。)
他の動画もぜひ拝見させていただく予定です。動画を作ってくださりありがとうございました!
Dai K さんのような実務家の方の役に立てて嬉しいです!(^o^)
ぜひたくさんご参考にしてください😍🎉
神動画です!
でしょ!(^o^)
ご視聴コメントありがとうございました!🎉
今年度からデータアナリストに社内転職して このシリーズ見直してます。
バックグラウンドの知識が変わると同じ動画でも景色変わりますね!
おおー!
新たな仕事ですね!応援しています!❤️🔥
やはり、私の動画でもそういう感覚はあるのですね!初めて言われました😊
ぜひ、いろんな楽しみ方をしていただけると嬉しいです😊🎉
分かりやすすぎる。。
でしょ🤤🤤🤤✌️
卒業研究で自然言語処理扱うので参考になりました
それは良かった! お役に立てて光栄です!
卒業研究応援しています!🔥
非常にわかりやすい動画ありがとうございます。
SNSなどの新語が多いデータだとトークナイザーの分割がメチャクチャになりがちなのですが、
固有表現抽出などのワードの分割が重要なタスクの場合は、トークナイザーを学習し直したほうがいいのでしょうか?
その場合、事前学習済みのモデルの入力と整合性が取れなくなって流用できないですかね…?
ご視聴コメントありがとうございます!!
確かに学習済みモデルを活かすなら、辞書は同じものを使う必要があります。
ですが、たぶん、探したら、新たな単語を加える方法もあると思います👀
(万人がやりたいと思うことのはずなので)
私は今すぐ回答を持っていないですが、調べてみるとよいかと思います!🎉
わかりやすい動画ありがとうございます
テンション爆上がりしました!
見るたびに学校の講師として来て欲しい!って思ってますw
最後に、おまけでALBERTとDistilBERTの紹介も、して欲しかった…
ご視聴コメントありがとうございました!😍🎉🎉
ALBERT は後々解説予定なので、もう少々お待ちください!🎉
@@AIcia_Solid
はい!待ちますw
ありがとうございます
どういたしまして!
はじめまして!
機械学習初心者で、ソフト系苦手な私でも頭に入りやすかったです!
突然ですが、私は今、指定された動画ファイルの音声(主に会話の音声)からその音声はポジティブな会話なのかネガティブな会話なのかを判断させるシステムを作ろうとしています。現在用意できた学習データが1300個ほどしかないのですが、システムの構築にはtransformerかBERTのどちらを利用した方が良いでしょうか?
知識もかなり浅くまだまだ未熟ですがアイシアさんの意見を伺いたいです😊
そもそも音声認識の学習モデルって既存のものであるのでしょうか?
ご視聴コメントありがとうございます!🎉
今回は分類問題なので、基本的には BERT が良いかと思います!
音声認識のモデルもたくさんあり、HummingBERT などあった気がします👀
ぜひ色々と調べてみてください!🎉
面白かったです!
DistilBERTもみたいです!!
提案ありがとうございます!😍🎉🎉
検討します!🔥
分かりやすい動画をありがとうございます。
質問があるのですが、BERTはTransformerのEncoder部のみが使われているとありましたが、値を出力する際には別モデルのDecoder部が使われているのでしょうか。
ご質問ありがとうございます!
BERT の基本部分は Transformer の Encoder 部分で、
それに1層だけ追加して各タスクの結果を推論したりしています。
そんな感じで、質問の答になっているでしょうか?
@@AIcia_Solid
早速のご回答ありがとうございます。アリシアさんの回答と動画内容を見直して疑問点を解決できました。
重ねてお礼申し上げます。
それはよかったです!(^o^)
ちなみに私はアイシアです😋
よく間違われます😋✌️
動画よかったです。前に事前学習したの実行したら「徳川家康は江戸で( )を開いた」を推測さしたら悟りをひらいたとBertは推測したのですがこれはfine-tuningが悪かったからでしょうか?
ご視聴コメントありがとうございます!😍🎉
ナイスな誤りですね😎✌️
Top 100くらいに幕府がなければ、事前学習のデータセットに歴史の話題が足りなかったのかもしれません。
こういうマニアックなケースの予測であれば、上位に入っていれば十分だと思います👀
いつも素晴らしい動画をありがとうございます!
最後まで見たのですが、私の理解力が低くどのあたりが「双方向」なのかよく分かりませんでした…AttentionモデルのEncoderにBi-GRUが使われていましたが、BERTのEncoderはそれとは別物ですよね?
ご視聴コメントありがとうございます🎉
BERT は Multi-Head Attention の部分が双方向です。
(Masked Multi-Head Attention が単方向です)
これは Transformer の動画で出ているのですが、そちらは見ましたか??(^o^)
@@AIcia_Solid 自分も双方向性がmaskを外しただけで実現できているのか自信がなかったですがその部分って認識で良さそうで安心しました!mask外せば後ろの文脈も考慮できるっていうのはわかるんですがあまりにも簡単な操作で強い効力を発揮するもんだから自信なかったです……。
そんな感じです!
むしろ、普通に実装したら bidirectional になるところを、無理に mask 入れて unidirectional にしているので、
考え方によってはめちゃ自然なことでもあります!
初コメ失礼します。GECToRについて学んでいるときにBERTの復習のため見たのですが、BERTについて学んでいたときに見たかったと思うほどとても分かりやすかったです。
今のところGECToRについての日本語での解説は0なため、可能であれば解説していただきたいです
ご視聴コメントありがとうございます!!🎉
そう行っていただけて嬉しいです!
GECToR というモデルがあるのですね、知りませんでした、、!
検討しておきます!
(ただ、直近は強化学習に振りたいので、年単位で先になるかと思います、、!)
はじめまして!
機械学習よくわかってないんですがmasked language modelがアリシアさんのword2vecの解説で出てきたcbowに似てる??と思いましてなんか関係してたりしますか?👀
ご視聴コメントありがとうございます🎉
CBOW も MLM も教師なし事前学習で、欠けた単語の予測というところは共通です。
より詳細なモデルで精度よく予測・学習できるのが BERT の MLM という感じです!
ちなみに私はアイシアです😋
@@AIcia_Solid
ご回答ありがとうございます😊おお、そういう感じなんですね!
名前間違え、大変失礼致しました🙏
素晴らしい動画ありがとうございます。
いえる範囲でよいのですがアイシアさんも業務で使用しているとのことですが、具体的にどのような業務に使っているのでしょうか?
どういう分野や業務に対して機械学習が使用できるかを理解したいためお手数ですが回答よろしくお願いします。
んー、マスターのとこでどう使ってるかは、言っていいか分からないので、控えておきます😋
BERT の応用は調べればたくさん出てきますので、そちらを見た方がより網羅的でよいかと思います!
@@AIcia_Solid 回答ありがとうございました。他を参考にしてみます
I hope someday there will be English subtitles for these videos
Thank you for your watching and comment!
And, for a live in yesterday!
I hope someday...!
(Unfortunately, we have no resource to do that...!🙇♀️)
いつもわかりやすい解説ありがとうございます。
1点質問なのですが
BERTをファインチューニングではなく転移学習で使うケースは時短目的以外にないのでしょうか?
感覚的なことですが、せっかく膨大なデータを使って得た重みを少量の偏ったデータから得られる情報で更新してしまうのがもったいない気がします。
ご視聴コメントありがとうございます!
おそらく、普通は時短じゃないでしょうか?
もったいないかどうかはわかりません🤔
結局は、汎化性能が上がればそれでいいので、汎化に関わる指標を見ながら調整する(またはしない)のがよいのかとおもいます!
初めて拝見致しました。最初は声とVRの違和感がありましたが、内容が分かりやすく気にならなくなりました。これからも頑張ってください。
ご視聴コメントありがとうございます😊
これからも面白動画を生成しますので、応援よろしくお願いします🎉
4:28
ご視聴コメントありがとうございます😊
論文のFigure 1を見ると、入力の最後に[SEP]がないのに、Figure 2にはあるのはなぜでしょうか?
書き忘れですかね...
そーなんですよねーーー!書き忘れだと思います😮
VITを実行してみたら、Pre-trainingモデルの威力を感じることができました。
「MLP-Mixer Architectures」もあるので、Transformerがすごいのではなくて、Pre-trainingモデルがすごいのかな?
おおー!
試されたんですね!すごい!😍
私はまだ MLP はあまり調べてないので分かりません👀
個人的には両方偉いと思ってます😊
@@AIcia_Solid PyTorch Image Models ( timm )を利用すると、resnext、vitなどが選べるのですが、特定のデータ以外では、resnextが上回るようです。
なるほど、そうなんですね👀
お教えいただきありがとうございます!勉強になります!!😍🎉
ファインチューニングにおいて動画では1文の後に[SEP][SEP]で終わっていますが、論文のFigure4では[SEP]がでてきません。
書いてはないけど、実装上はそうなってる感じですか?
huggingface.co/transformers/model_doc/bert.html
上の実装だとsingle sentenceの場合[SEP]は1つだけですね
本当ですね、、、!
確認いただきましてありがとうございます!
当時何を確認したのか定かでないのですが、今色々見比べても [SEP] は1つというのが標準的なようです。
概要欄に修正を入れておきます、ご指摘いただきましてありがとうございました!!!
@@AIcia_Solid
返信ありがとうございます!これからも動画楽しみにしてます!
ありがとうございます!😍🎉🎉
これからもよろしくお願いします!
& 何か見つけたらまたお教えいただけるとありがたいです😭😭😭
ruclips.net/video/IaTCGRL41_k/видео.html
BERTが、何故前後の文から空欄を予測するアプローチを取っているのか疑問だったので、とても勉強になりました。
ありがとうございます。
ご視聴コメントありがとうございます!🎉🎉🎉
それは良かった!
是非この理解をご活用くださいませ!🎉
わかりやすい動画ありがとうございます!
一つ、細かいことで質問なのですが、BERTで用いられている、positional encoding の行列Eiには、学習の初め、ランダムな値が与えられて、学習の過程で徐々に場所に応じて値が最適化されていくイメージであっておりますか、?
ご視聴コメントありがとうございます!(^o^)
そのとおりです!😍🎉
@@AIcia_Solid 承知しました。
ご回答ありがとうございます😊
ここまでくると簡単な説明じゃ何も理解できないな。本読んだ方がいい
最近は素敵な本がたくさんでているので、ぜひ見てみてください!
amzn.to/44iV8LS ← これは、2年前でやや古くなりつつありますが、K K さんの用途に合えばおすすめです!
また、本もいいですが、原論文もなかなかよいですよ。
ぜひ選択肢にご検討くださいませ!