最近の記事

物体検知・セグメンテーション

・広義の物体認識タスク: 一例: ・代表的なデータセット: ・PrecisionとRecall: 適合度(Precision) “りんご”と予測したもののうち、実際にあたっていた割合 再現度(Recall) “りんご”の真値のうち、ただしく予測された割合 ・IoU(Intersection over Union): ・Precision/Recallの計算例(人のクラス): ・AP:Average Precision 上の表は、5つの物体を各画像に含むデ

    • Transformer

      ・機械翻訳の歩み:Encoder-Decoder Model ⇒ Transformer (Encoder-Decoder x Attention) ⇒ BERT ・TransformerーAttention is all you need:RNNを使わないで高い翻訳精度を達成した。Transformer主要モジュール ・Attention:二種類ある AttentionとはQuery Q とKey K とValue V の3つのベクトルで計算される。各単語がそれぞれの

      • 応用モデル

        ・MobileNets:resnetの簡素化バージョンで精度がほとんど変わらない。Depthwise ConvolutionとPointwise Convolutionの組み合わせで軽量化を実現した。 ・Depthwise Convolution:入力チャネルと関係なく、フィルターのチャネルが1 ・Pointwise Convolution:1 x 1 convとも呼ばれる(正確には1 x 1 x c)もので通常の畳み込みと変わらないが、サイズが1 x 1だけ。 ・De

        • 軽量化・高速化技術

          ・プルーニング・・分散深層学習:データ並列化、モデル並列化を用いてディープランニングを加速する手法である。 ・データ並列化:1)同期型:教師データを複数に分け、違うデバイスで同じ重みのネットワークで勾配を得る。その勾配で全デバイスのモデルを更新する。2)非同期型:全デバイスのモデルが各自で勾配を得て更新する。 処理のスピードは、非同期型の方が早いが、非同期型は学習が不安定になりやすい。現在は同期型の方が精度が良いことが多いので、主流となっている。 ・モデル並列化:モデル

        物体検知・セグメンテーション

          Alpha Go

          。・Alpha Go:近年のニューラルネットワーク強化学習の集大成の一つである。方策ネットワークと評価ネットワークに分かれる。 方策ネットワーク 評価ネットワーク Policy Net、ValueNetの入力 Roll Out Policy:NNではなく線形の方策関数探索中に高速に着手確率を出すために使用される 赤字の特徴はRollOut時には使用されず、TreePolicyの初期値として使用されるときに使われる。上記の特徴が19×19マス分あり、出力はそのマスの着

          強化学習

          ・強化学習:機械学習において教師データの代わりに環境のフィットバックを教師データとした学習モデルである。長期的に環境からの報酬を最大化できるように環境のなかで行動を選択し、最大報酬を得るエージェントを作ることを目標とする機械学習分野である。行動の結果として与えられる利益(報酬)をもとに、行動を決定する原理を改善していく仕組みである。 応用例:迷宮脱出AIなど 環境について事前に完璧な知識があれば、最適な行動を予測し決定することは可能だが、強化学習の場合、完璧な知識は成り立

          強化学習

          Attention Mechanism

          ・Attention Mechanism:seq2seq だけでは長い文章への対応が難しかった。なぜなら、長い文をRNNの最後の層まで伝達してその中間層結果であるcontext vectorは先頭の文の情報を失ってしまう。文章が長くなるほどそのシーケンスの内部表現の次元も大きくなっていく仕組みが必要になる。Attention Mechanismは「入力と出力のどの単語が関連しているのか」の関連度を学習する仕組み。 通常のseq2seq seq2seq+Attention

          Attention Mechanism

          word2vec

          ・word2vec:機械翻訳では、単語を数値ベクトルへ変換してニューラルネットワークに与えることが必要がある。word2vecがその変換の役割を担うアルゴリズムである。 ・one-hot ベクトル: 英語のone-hotベクトルは数万単語があり、ベクトルとして大きすぎて、それにそのほとんどが0である。実用性に欠ける。このベクトルを圧縮できるのがword2vecである。 ・word2vecの使用:word2vecの正体は二次元行列である。 one-hotベクトル ・ w

          Seq2seq

          ・Seq2seq:Encoder-Decoderモデルの一種で、機械対話や、機械翻訳などのテキストタスクによく使用されている。 ・Encoder RNN:ユーザーがインプットしたテキストデータを、単語等のトークンに区切って渡す。<SOS>,< EOS>はStart of string, End of stringの略でEncoderの出力値は捨てらる。 例:昨日 食べた 刺し身 大丈夫 でした か Taking:文章を単語等のトークン毎に分割し、トークンごとにIDがある

          双方向RNN

          ・双方向RNN:過去の情報だけ(RNN)でなく、未来の情報を加味することで、精度を向上させるためのモデルである。 考え方としてRNNをもう一つ逆方につけるのが双方向ということである。系列の最初のステップs1->snから繰り返して順方向に予想することに加えて,系列の最後のステップsnからの逆方向の予測も行えるモデルである。 考察・双方向RNNは結局通常のRNNに逆方向推論のRNNをつけることで双方向を実現している。例えば機械翻訳では通常のRNNでは順方向に予測するが、双方向

          双方向RNN

          GRU

          ・GRU:従来のLSTMでは、パラメータが多数存在していたため、計算負荷が大きかった。GRUではパラメータを大幅に削減し、精度は同等またはそれ以上が望めるRNN構造。 ・確認テスト:LSTMとCECが抱える課題について、それぞれ簡潔に述べよ ・回答:LSTMは計算量が大きい、その構造の中のCECは時間依存度に関係なく重みが一律で学習特性が無い。 ・確認テスト:LSTMとGRUの違いを簡潔に述べよ ・回答:LSTMはメモリセル(CEC)を使うことで勾配消失問題を回避し、

          LSTM

          ・LSTM:RNNの一種 LSTM block ・Constant Error Carousel (CEC):勾配消失および勾配爆発の解決方法として導入された。勾配が1であれば解決できる。 ・入力ゲート: CECの課題は入力データについて、時間依存度に関係なく重みが一律である。学習特性が無いため、入力ゲートと出力ゲートを導入して解決 ・入力ゲートと出力ゲート: LSTMのCECは、過去の情報が全て保管されている。過去の情報が要らなくなった場合、削除することはできず

          再帰型ニューラルネットワーク(RNN)

          ・RNN: 時系列データ(株価、音声データなど)に対応可能な、ニューラルネットワークである。 ・RNNの数学的記述: u[:,t+1] = np.dot(X, W_in) + np.dot(z[:,t].reshape(1, -1), W)z[:,t+1] = functions.sigmoid(u[:,t+1])np.dot(z[:,t+1].reshape(1, -1), W_out)y[:,t] = functions.sigmoid(np.dot(z[:,t+1

          再帰型ニューラルネットワーク(RNN)

          最新(?)のCNN

          ・AlexNet:実質上二つのCNNの合体である。 過学習を防ぐ施策:サイズ4096の全結合層の出力にドロップアウトを使用している。 ・ZFNet: ・GoogLeNet:Inceptionモジュール、Global Average Poolingを導入 ・VGGNet:シンプルで強力 ・ResNet:いままで十数層の構造が限界だったが、resnetは1000層構造でも学習できることが新な時代を作った。以下は50層の場合 ・EfficientNet:ResNetの基

          最新(?)のCNN

          畳み込みニューラルネットワーク(CNN)

          ・畳み込み演算: 上の図のように画像は結局0~255の二次元の行列である。この二次元行列に以下の演算を行うことが畳み込み演算である。 左の行列が画像に相当する。真ん中の行列は畳み込みの重みw(フィルター)で、右の行列が畳み込み結果である。 ・畳み込み層:画像など高次元データを処理する際に用いられる特殊なネットワーク構造。上記のフィルターの値を最適化することが畳み込みニューラルネットワークの学習を意味する。通常ではフィルター数が複数である。 ・バイアス: ・パディング

          畳み込みニューラルネットワーク(CNN)

          過学習

          ・過学習:テスト誤差と訓練誤差とで学習曲線が乖離すること。オーバーフィッティングとも言う。 原因としてネットワークの自由度(層数、ノード数、パラメータの値etc...)が高い ・正則化:ネットワークの自由度を制約すること。L1正則化、L2正則化、ドロップアウトなどの手法がある。 ・Weight decay(荷重減衰):ニューラルネットワークの重みが大きくなると過学習が発生することがある。逆伝搬の誤差に対して、正則化項を加算することで、重みを抑制する。 ・L1、L2正則

          過学習