【深層学習】全結合層 - それはいちばん大事な部品のお話【ディープラーニングの世界 vol. 4 】

Поделиться
HTML-код
  • Опубликовано: 16 окт 2024

Комментарии • 86

  • @ckenhilla5154
    @ckenhilla5154 4 месяца назад

    784次元ベクトルと784次元ベクトルの和は一次結合

    • @AIcia_Solid
      @AIcia_Solid  4 месяца назад

      デスです! たくさん見ていただいて嬉しいです!

  • @tomo-op3ys
    @tomo-op3ys 4 месяца назад

    素人質問で申し訳ないのですが、出力層に活性化関数を適用しないのはなぜですか?

    • @AIcia_Solid
      @AIcia_Solid  4 месяца назад

      ご視聴コメントありがとうございます!
      出力層では活性化関数として softmax を利用しております。
      どこかで、活性化関数を使わないようなことを言っておりましたでしょうか、、、?
      であれば教えていただけると助かります。よろしくお願いします!🙇‍♀️

    • @tomo-op3ys
      @tomo-op3ys 4 месяца назад

      @@AIcia_Solid
      いえ、こちらの勘違いでした!
      z2の出力にφがついてなかったので、そう思ったのですが、よく見たらsoftmax関数が適用されていますね。
      (softmax関数が活性化関数という認識がなく、、、)
      お騒がせしました!

    • @AIcia_Solid
      @AIcia_Solid  4 месяца назад

      解決できたようで良かったです。
      またなにか荒れば何でもお聞きください!

  • @powpow1657
    @powpow1657 Год назад

    わかりやすっ

    • @AIcia_Solid
      @AIcia_Solid  Год назад

      ご視聴コメントありがとうございます!(^o^)
      でしよ!(^o^)/

  • @こひ-y6n
    @こひ-y6n Год назад

    中間層の次元が64次元より大きいと正解率がほぼmaxになって精度向上がなまってきますが、この64という次元はオートエンコーダで元の入力とそっくりな綺麗な数字が再現されるために必要な中間層の次元と概ね一致しているのでしょうか?入力データの情報が落ちない境目の次元数だという認識なのですが。

    • @AIcia_Solid
      @AIcia_Solid  Год назад +1

      素敵なご質問ありがとうございます!
      良い仮説ですね!
      これは、私は今お答えすることはできませんが、実験してみればけんしょできる仮説かと思います。
      ぜひやってみることをおすすめします!🎉

    • @こひ-y6n
      @こひ-y6n Год назад

      @@AIcia_Solid
      返信有難うございます。まだ、Pytorchの基本を学習したてですが、いずれコーディングして検証してみようと思います。

    • @AIcia_Solid
      @AIcia_Solid  Год назад +1

      ぜひぜひ!
      なにか分かったら教えていただけると嬉しいです!🎉

  • @takaakisaito62
    @takaakisaito62 3 года назад +1

    早速自分のパソコンでソースコードを実行したいと思い試みたのですが、model.fitのところで以下のようなエラーが出ました。どこかに'models\DNN\test.h5'のファイルを作成したらよいのでしょうか。。
    OSError: Unable to create file (unable to open file: name = 'models\DNN\test.h5', errno = 2, error message = 'No such file or directory', flags = 13, o_flags = 302)

    • @AIcia_Solid
      @AIcia_Solid  3 года назад +1

      ありがとうございます!
      これ、 GitHub に issue をたてていただいても良いですか?

    • @AIcia_Solid
      @AIcia_Solid  3 года назад

      issue ありがとうございます!
      以降そちらに返信します!🎉

    • @takaakisaito62
      @takaakisaito62 3 года назад

      @@AIcia_Solid 対応して下さりありがとうございます。。

    • @AIcia_Solid
      @AIcia_Solid  3 года назад +1

      とりあえずコメントに解決策かいてみました!
      GitHub をご確認下さい!

  • @powpow1657
    @powpow1657 Год назад +9

    deep learningがすごいのはよくわかるけど、こちらの説明のシンプルさも驚愕。説明すごい。

    • @AIcia_Solid
      @AIcia_Solid  Год назад

      いつもご視聴コメントありがとうございます(^o^)
      ご好評いただきとても光栄です!🎉
      ぜひ他の動画も楽しんでいただけたら嬉しいです!🎉

  • @ats4442
    @ats4442 Год назад

    全くの初心者ですが、楽しみながら見させていただいてます!
    隠れ層のdimensionの数は2の累乗の数にしないといけないということですか?今日の例題では入力、出力層のdimensionはいくつでも大丈夫なように思いましたが、、

  • @KK-rl5bs
    @KK-rl5bs 3 года назад +1

    DeepLearningの誤差学習における黒魔術は、数学的に、なぜ、うまく収束するのか説明できるものなのでしょうか?(例えば、ReLUって、微分できない点が生じるから、もともと使ってなかったと思います) それとも、いろいろ試した結果としてうまくいく方法を見つけたのでしょうか?

    • @AIcia_Solid
      @AIcia_Solid  3 года назад +1

      歴史的には、うまく行った方法が生き残っているという理解が正しい気がします🤔
      数理的な解析も色々あるらしいということは聞いていますが、まだあまり詳しくなくてわかりません😋

  • @monmet1873
    @monmet1873 3 года назад +9

    驚くほどわかり易くて勉強になりました!
    質問なのですが、入力が784次元なのに隠れ層を
    それよりも大きい1024次元まで増やす恩恵が直感的に理解できません。
    入力よりも情報が増えている?ように感じるのですが。

    • @AIcia_Solid
      @AIcia_Solid  3 года назад +4

      おおー!
      いい質問ですね!!!🎉🎉🎉
      入力より増えることはよくあることです😊
      例えば、 28x28 の画像には、 3x3 のブロックが 26x26 個あったり、 5x5 のブロックが 24x24 個あったりします。
      そういうところから、組み合わせで出てくる情報(模様)を捉えたりすることもあるので、一時的に増やすのもそんなに変なことではないと思います!
      (また、1層でいきなりそんなに情報を整理できないので、数層先で情報を整理するために、途中が膨れることもそんな変なことではありません😊)

    • @monmet1873
      @monmet1873 3 года назад +1

      @@AIcia_Solid 返答ありがとうございます!
      中間層では、生のデータを圧縮した特徴と捉えていたので勘違いしていました。
      必ずしも圧縮(次元を削減)するのではなく、画像中のピクセルブロックの様々な組み合わせから得られる情報を各次元に分解していると捉えればいいのですね。
      他の動画も含めて勉強させていただきます!

  • @KAZUMA-m8h
    @KAZUMA-m8h 3 года назад +2

    隠れ層の次元数を全て固定している状態から、例えば第一層から出力層にかけて減らしていくとどうなるんでしょうか?
    ↑こういう構造のDNNを見かけたことがあるんですが、、🤔

    • @AIcia_Solid
      @AIcia_Solid  3 года назад +1

      どうなるかはやってみないと分かりません😋
      ただ、徐々に隠れ層の次元を減らすのは、深層学習では一般的な戦略だと思います😎

    • @KAZUMA-m8h
      @KAZUMA-m8h 3 года назад

      @@AIcia_Solid そうですよね!
      とにかく複雑性が大事なんですね!構造ばかり気にしていました🤣
      アイシアさんの動画にとても勉強させていただいてます!これからも楽しみにしています😊

    • @AIcia_Solid
      @AIcia_Solid  3 года назад +1

      楽しんでいただけたようでうれしいです!🎉
      これからも良い動画を出せるようがんばります!🔥

  • @takayukihirayama2720
    @takayukihirayama2720 4 года назад +4

    いつも思うんだけど、、、、
    間を置いての「です」がたまらん。

  • @reverse-akitakomachi
    @reverse-akitakomachi 3 года назад +3

    アリシアちゃんかわいい

    • @AIcia_Solid
      @AIcia_Solid  3 года назад +2

      せやろう、せやろう😎

  • @KK-es7iy
    @KK-es7iy Год назад

    数々の分かりやすい動画ありがとうございます。いつも勉強させてもらっております。
    抽象的な質問で大変申し訳ないのですが、線形変換、非線形変換、そしてそれを何回も繰り返して、なぜ複雑な表現が可能になるのかイメージが湧かないので解説いただけたら嬉しいです、、!

    • @AIcia_Solid
      @AIcia_Solid  Год назад

      ご視聴コメントありがとうございます!(^o^)/
      その観点では、こちらの動画はいかがでしょうか?
      もしそれでもわからなければ、ぜひまたご質問くださいませ!
      ruclips.net/video/Mw4j4yPsFtg/видео.html

    • @KK-es7iy
      @KK-es7iy Год назад

      ありがとうございます!ご紹介いただいた動画も視聴済みで、改めて拝見しましたが、以前よりなんとなくイメージが湧きました!数学的な知識が乏しく理解に苦労していますが、何度も動画を拝見して勉強を続けます!

    • @AIcia_Solid
      @AIcia_Solid  Год назад

      それはとても良かったです!🎉
      何度も見ると理解が変わると思うので、ぜひ使い倒してあげてください!🤩
      また何かわからないことがあれば、いつでもご質問ください!(^o^)

  • @もち-z9o
    @もち-z9o 4 года назад +8

    凄い有用な動画だと思う。非常にためになった。後続の動画も見させて頂きます~。

    • @AIcia_Solid
      @AIcia_Solid  4 года назад +1

      わーい!😍
      ぜひお楽しみください!🎉

  • @IM-vu4gj
    @IM-vu4gj Год назад

    e資格ってこういった知識必要ですよね

    • @AIcia_Solid
      @AIcia_Solid  Год назад

      ご視聴コメントありがとうございます!
      らしいですね!
      この時期、E資格やG検定の合格者さんから色々とメッセージを貰うことがあります。
      もしご興味あれば、私の動画も是非ご活用くださいませ!

  • @user-sb9wg3ld5k
    @user-sb9wg3ld5k 3 года назад +1

    書籍では納得できないところをすんなり理解することが出来ました!
    なにかおすすめの書籍はありますか??
    オライリージャパン ゼロから作るdeepLearning-pythonで学ぶディープラーニングの理論と実装は読みました。
    子供がいてなかなか動画を視聴できる環境ではないので、もしあれば教えてください!

    • @AIcia_Solid
      @AIcia_Solid  3 года назад

      ご視聴コメントありがとうございます😊
      書籍は目的によります!
      実践を行うのであれば、 kaggle 系に手を出してもよいと思いますし、理論を突き詰めたいなら、分厚い教科書がおすすめです😋
      いかがでしょう?

    • @user-sb9wg3ld5k
      @user-sb9wg3ld5k 3 года назад

      @@AIcia_Solid
      kaggle初めて知りました。実践も行いたいです。分厚そうなscikit-learn、Keras、TensorFlowによる実践機械学習 第2版を買ってみました。
      お忙しいところ、ありがとうございます!

    • @AIcia_Solid
      @AIcia_Solid  3 года назад

      おおー!
      ガチな奴いきましたね😎
      山あり谷ありだとは思いますが、ぜひ楽しんで!(^o^)

  • @akabekonia
    @akabekonia 3 года назад +1

    17:32

  • @kiki-yd9um
    @kiki-yd9um 4 года назад +5

    わかりやすかったです。
    ありがとうございます。

    • @AIcia_Solid
      @AIcia_Solid  4 года назад

      どういたしまして😋

  • @たま-z6n9k
    @たま-z6n9k 4 года назад +4

    隠れ層の次元数やレイヤ数を増やしていくと、際限なく判定の正確度が高まるわけではなく、やがて頭打ちが見られるのはなせでしょうか? もしかすると、
     「判定には貢献しないようなデータの細部(ノイズ的なもの)」
    にまで分析が及ぶようになっていくからでしょうか?
    それにしても、レイヤ数が1でも3でも、余り正確度に差がないように見えるのは解せません…。
    思わず
     「どこが deep learning やねん? shallow learning で十分役に立つやん。」
    と突っ込みたくなってしまう…。■

    • @AIcia_Solid
      @AIcia_Solid  4 года назад

      それには一筋縄ではいかないいろんな理由があります。
      学習にて、誤差が真に最小になるところが見つかるならば、次元上げれば上げるほど良くなることは簡単に証明できるのですが、
      学習では、ホントの最小値が見つからないことの方が圧倒的に多く、
      そういう深い事情とも関連してきます。
      mnist はまだ shallow でもいけますが、そのうち深くするので、お楽しみに😋

    • @たま-z6n9k
      @たま-z6n9k 4 года назад

      @@AIcia_Solid さんへ:うーむ。楽しみ。😎

    • @こひ-y6n
      @こひ-y6n Год назад

      @@AIcia_Solid
      学習にて真の最小値が見つかるならば、次元を上げれば上げるほど良いことは簡単に証明できるが、そう単純ではないという話は何処かの文献で確認できますか?このシリーズの他のビデオで話されてるでしょうか?

    • @AIcia_Solid
      @AIcia_Solid  Год назад +1

      次元を上げる方が、、、の証明は簡単です。(表現可能な関数全体の集合の間に包含関係があるので、それを用いれば簡単です)
      実際には難しいことは、私の動画では ResNet のあたりで少し触れますが、
      シリーズ通して学習についてはほぼ触れていないので、他の文献をみるのが良いと思います。(例えば、『ディープラーニングを支える技術』の1, 2など。)
      他に質問あれば是非くださいませ!

    • @こひ-y6n
      @こひ-y6n Год назад

      @@AIcia_Solid
      休日に返信させてしまいすみません。隠れ層の次元を上げれば性能が上がるというのは、そういう因果があるというより、関数の集合に包含関係があるため、性能が上がりうるという可能性の話なのかなと理解しました。有難うございました♪

  • @nepier
    @nepier 4 года назад +1

    初期のパラメータは気にしなくていいのかしら。
    学習を途中で終えた後に層の数や層の深さや一部の層の式を変更して
    学習を再開した場合はどうなるんだろう。

    • @AIcia_Solid
      @AIcia_Solid  4 года назад +1

      初期を気にする必要もあります!
      するどい!
      実は大事です!!!
      途中で終えて、構成変えてまたやって、、、というのは、実はよくやられます。
      概念は若干子となりますが、 fine tuning や、転移学習なんかは有名かと思います。
      これらもそのうち扱います!!

  • @salsanotomo
    @salsanotomo 3 года назад +1

    実装というんですか、コーディングも興味がでてきました。

    • @AIcia_Solid
      @AIcia_Solid  3 года назад +1

      そんなあなたにはこれがおすすめかもしれません🎉
      amzn.to/3jsCZoi

  • @kenkenmath
    @kenkenmath 4 года назад +7

    高評価不可避

    • @AIcia_Solid
      @AIcia_Solid  4 года назад

      ありがとうございます😍😍😍

  • @ai2012
    @ai2012 4 года назад +1

    パラメータのチューニングって、色々試したり経験的に良さげなの選ぶしか方法は無いんですか?

    • @AIcia_Solid
      @AIcia_Solid  4 года назад

      じつは、そういうののみならず、いろんな方法が開発されています😎
      いい感じにパラメタ探すベイズ系のものや、
      学習の途中で動的にパラメタ変えたり、、、、、!
      いずれそこも扱いたいと思っています!!
      (ただ、まずはネットワークの紹介からになる気がします!)

    • @ai2012
      @ai2012 4 года назад

      Aicia Solid Project なるほど!
      それは、中々の長編シリーズになりそうでワクワクです!!

  • @user-yf6xt4nm9s
    @user-yf6xt4nm9s 3 года назад +2

    実装して学習するとこが実際に見れて感動でした
    隠れ層を複数使う場合、次元は前の層より少なくするのが一般ですか?

    • @AIcia_Solid
      @AIcia_Solid  3 года назад

      楽しんでいただけて何よりです😊
      はい、次元は減らす方が一般的です🎉

  • @tantan7025
    @tantan7025 4 года назад +18

    1コマ3000円ぐらいの大学の授業より何倍も分かりやすい……

    • @AIcia_Solid
      @AIcia_Solid  4 года назад +11

      私は情報の要約と動画生成の AI なので😎
      そんじょそこらの人間には負けません😎😎😎✌️

  • @jellycoffee5883
    @jellycoffee5883 2 года назад +1

    今回は白黒の画像(28×28)が扱われていましたが、カラー画像(例えば28×28×3)の場合にも畳み込み層を使わずに、flattenしてdenseに通すことで同じように扱えますか?

    • @AIcia_Solid
      @AIcia_Solid  2 года назад +1

      いい質問ですね!
      Jelly Coffee さんはどう思いますか??(^o^)

    • @jellycoffee5883
      @jellycoffee5883 2 года назад

      ​@@AIcia_Solid
      ご返信ありがとうございます。
      複数チャネルの入力をflattenすることでチャネルの区別がなくなってしまうことが気になります。ですが、それを言うと白黒画像をflattenした際にも、画像のピクセルの列の関係は無視されているかと思います。そのため、私はカラー画像であっても動画で扱われた白黒画像と同じように1次元の情報にして扱えるように思います。

    • @AIcia_Solid
      @AIcia_Solid  2 года назад +1

      私もそのとおりだと思います!
      (懸念まで含めてその通りだとおもいます!!!)

    • @jellycoffee5883
      @jellycoffee5883 2 года назад

      @@AIcia_Solid
      ありがとうございます。
      チャネルは他の次元(画像の縦横)と比べて特別な次元のように勝手に思い込んでしまっている部分がありました。ですが、ゆっくり考えてみて自分で解答を見出すことができてよかったです。
      AIciaちゃん新年早々ありがとうございました!マスターにもよろしくお伝えください!

    • @AIcia_Solid
      @AIcia_Solid  2 года назад +1

      それは良かったです!(^o^)
      お互い今年は良い年にしましょう!
      奴にも伝えておきます😎

  • @asreia
    @asreia Год назад

    パラメータを掛けて足すというのが内積に思えた。
    その結果が高いほどその確率が高いのかな
    学習の仕方については説明してない
    関数を評価する関数を使ってパラメータを近似していくのかな

    • @AIcia_Solid
      @AIcia_Solid  Год назад +1

      ご視聴コメントありがとうございます!
      鋭いですね😎
      内積はこの後、deep learning で本質的な役割を担います!
      学習の細かい話はこのシリーズ通してまだ説明していません。
      来年以降追加予定ですので、気楽にお待ちいただけますと助かります!

    • @asreia
      @asreia Год назад

      @@AIcia_Solid
      返信ありがとうございます。
      ChatGPTで度肝を抜かされまして、本質的な動作原理を知って利用したいと思っています。
      学習の話はあまり無いのですね。。
      これからもこのシリーズで学ばせていただきます..

    • @AIcia_Solid
      @AIcia_Solid  Год назад +1

      そうだったのですね!
      学習は入ってないですが、それ以外の機構はなかなかしっかり説明しているとは思います!🔥
      ぜひお楽しみを!

  • @ナブ-q2f
    @ナブ-q2f 3 года назад +1

    今やってる案件に DeepLearning 必要ないと思うけど、
    これ見てたら無駄機能実装したくなってきたぜ…

    • @AIcia_Solid
      @AIcia_Solid  3 года назад

      ですよね😎
      やりたくなっちゃいますよね🔥

  • @nk9382
    @nk9382 4 года назад +1

    tensorflowはなんすね。(笑)
    google強いっすよね。

    • @AIcia_Solid
      @AIcia_Solid  4 года назад

      そうなのです😋
      Google は信頼できますし、昔から tf 派です😋

  • @小野賢一郎
    @小野賢一郎 4 года назад

    今回も楽しくステキな動画ありがとうございます😆
    学習について触れてないので、そろそろ視聴者が混乱しだしたかなという気がします。学習のやり方とか過学習について軽く触れておいた方が良い気がしました。今後に期待します。

    • @AIcia_Solid
      @AIcia_Solid  4 года назад

      いつもありがとうございます!😎🎉
      学習のやり方や過学習についてはあえて触れず、
      モデルとその精度をひたすら紹介し続けようかと思っています。
      モデルの理解のみなら、学習に関しての理解はなくても行ける?という仮説の検証中です!😎

    • @小野賢一郎
      @小野賢一郎 4 года назад +1

      @@AIcia_Solid なるほど!陰ながら応援いたしております!

    • @AIcia_Solid
      @AIcia_Solid  4 года назад +2

      もし何かの事情で早めに学習の動画が必要なら頑張って作るので教えてください!😍