ホーム < ゲームつくろー! < IKD備忘録 VisualStudio + Pythonでディープラーニング 勾配消失問題とは? (2019. 12. 5) 前章でKerasでデフォルトで使える活性化関数をざっと紹介しました。その中で度々「勾配消失問題がおこりやすい」などと解説を入れました。他のニューラルネットワークの解説サイトでも目にするこの「勾配消失問題(Vanishing Gradient Problem)」。いったいどういうものなのでしょうか? ① 何時まで経っても賢くならない問題 ニューラルネットワークでは与えられた入力刺激値から良い感じの出力刺激値を出してくれるようにニューロンの働きを調節する必要があります。具体的には入力刺激に変化を与える活性化関数A(x)、その結果をスケールする重みwを調整します。活性化関数は基本学習前に手動で与える物なので使い手の自由ですが、各ニューロン
2018年3月29日開催 サイバーエージェントにおけるデータ活用とその技術についての勉強会「春の機械学習祭り 〜Data Engineering & Data Analysis WS#4〜」での登壇資料 (秋葉原ラボ所属 内藤遥) https://cyberagent.connpass.com/event/80969/Read less
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 今回は、協調フィルタリングとmetric learningを組み合わせたCollaborative Metric Learning (CML)の論文を読んで要点をまとめました。 ## 概要 従来の協調フィルタリングでは、内積によりuser-itemの交互作用を考慮することでuserの好みを潜在表現として獲得していたが、内積では三角不等式を必ずしも満たさないので、良い表現が得られない可能性があります。 本研究では協調フィルタリングとMetric Learningを組み合わせたCollaborative Metric Learning (CML)を提案し、user-userやitem-itemの類似度も考慮した空間に埋め込み、近似最近傍探索に応用することでto
はじめに 今回は、協調フィルタリング(Collaborative Filtering)とMetric Learningを組み合わせたCollaborative Metric Learning (CML)とそこから発展したいくつかの論文を読んだので、まとめていきたいと思います。 割と新しめな研究だからか、あまり日本語の記事がヒットしないなと感じました。 オンラインでの計算量が大きくて大変なところを近似的に解くことで高速化できるのは魅力的だと思うので、この記事を通して興味を持ってもらえたらと思います。 Metric Learningについてはほぼ初心者なので、何かありましたらコメントいただけると嬉しいです。 よろしくお願いします。 Metric Learningについてはこの辺りを参考にさせていただきました。 Deep Metric Learning の定番⁈ Triplet Lossを徹底解
メリークリスマス。 @tereka114です。 本記事はDeep Learning論文紹介 Advent Calendar 2019の25日です。 qiita.com 私はKaggleの画像コンペに頻繁に参加しています。 そのときに、毎度選定にこまるのがニューラルネットワークの最適化手法(Optimizer)です。 学習率やWeight Decayなどハイパーパラメータが多く、選択パタンが無数にあると感じています。 そのため、Kaggleでよく利用される(されうる)最適化手法を振り返ります。 もちろん、実務でも十分使えるので、皆さんの学習に活かしてくれると幸いです。 最適化手法 SGD(Momentun) Adam AdamW AdaBound RAdam 実験 Optimizer間の比較 RAdamとAdamの学習率 AdamWのWeight Decayの値 最後に 最適化手法 今回紹介
表題の通り噂の最適化手法 RAdam の論文 On the Variance of the Adaptive Learning Rate and Beyond を読んだので, そのまとめです!! 概要 一言でいうと「今までヒューリスティックに行っていた Adam 学習開始時の LR 調整を自動化できるような枠組みをつくったよ」ということになると思います. 考える問題 この論文で, 考えていくのは機械学習のように多数のデータから成る目的関数を最小化するような問題です. 特にニューラルネットワークの学習では勾配法, 特に SGD (確率的勾配降下法) と呼ばれる方法を用いることが一般的です. SGD には様々な adaptive バリエーションがあります.この adaptive とは問題の特性を生かして, SGD を早くするような工夫を指しています. 一般的な形式 一般的な adaptive
オミータです。ツイッターで人工知能のことや他媒体で書いている記事など を紹介していますので、人工知能のことをもっと知りたい方などは気軽に@omiita_atiimoをフォローしてください! 最新の最適化アルゴリズムRAdam ニューラルネットワークは画像認識や自然言語処理など多方面で使われており、おもしろいことにも使うことができます。そんなニューラルネットワークが高い精度を出すためには、優秀な最適化アルゴリズムが必要不可欠です。最適化アルゴリズムとして現在デファクトスタンダードとなっているのがAdamです。Adamが登場したのは2014年のことですが、そこからAdamに取って代わるような最適化アルゴリズムは久しく出ていません。そんな現状をとうとう変えると期待されている新しい最適化アルゴリズムの論文が国際学会ICLR2020に採択されました。その名もRectified Adam、通称RAda
3 つの要点 ✔️ 教師なしセグメンテーション手法「ReDO」の提案 ✔️ 画像生成の仕組みでセグメンテーションタスクを解く新たな試み ✔️ 教師あり学習と比べても、様々な実データセットで良いパフォーマンスを発揮 はじめに 近年、様々な分野で画像認識技術が活用されています。これは深層学習技術の発展によって、画像認識の精度が大幅に向上したためです。画像認識技術には三段階のステップに分けられます。 1つ目は、画像に何が写っているか判断する「物体認識」です。「物体認識」では画像に何が写っているか判断するだけで、その物体の位置までは判断しません。 2つ目は、画像に写っている物体の名前と位置を判断する「物体検出」です。 3つ目は、画像のピクセル単位で物体認識を行う「セマンティックセグメンテーション」です。人間はピクセル単位で物体を認識しており、「セマンティックセグメンテーション」は私たちと同様の画像
3つの要点 ✔️様々な分野で使用されている 「GAN」の包括的なサーベイ論文の紹介 ✔️応用編では、GANの品質を測る指標と様々な応用を紹介 ✔️ この記事でGANが何に応用できるか網羅的に把握が可能 A Review on Generative Adversarial Networks: Algorithms, Theory, and Applications written by Jie Gui, Zhenan Sun, Yonggang Wen, Dacheng Tao, Jieping Ye (Submitted on 20 Jan 2020) subjects : Computer Vision and Pattern Recognition (cs.CV); Machine Learning (cs.LG) はじめに 今回の記事は、GANのサーベイ論文(アルゴリズム編)に続き、
3つの要点 ✔️様々な分野で使用されている 「GAN」の包括的なサーベイ論文の紹介 ✔️アルゴリズム編では、「GAN」のアルゴリズムに焦点を絞って様々なアプローチを紹介 ✔️ この記事で「GAN」の最新動向までをキャッチアップ可能 A Review on Generative Adversarial Networks: Algorithms, Theory, and Applications written by Jie Gui, Zhenan Sun, Yonggang Wen, Dacheng Tao, Jieping Ye (Submitted on 20 Jan 2020) subjects : Computer Vision and Pattern Recognition (cs.CV); Machine Learning (cs.LG) はじめに 2014年に画像生成のためのア
3つの要点 ✔️ 一部のクラスにラベルが付与されていないデータセットで学習する半教師学習の手法 ✔️ Consistency regularizationと呼ばれる手法で仮ラベルを付与し精度を向上 ✔️ 既存のデータセット(CIFER-10)で95%の識別精度を達成 FixMatch: Simplifying Semi-Supervised Learning with Consistency and Confidence written by Kihyuk Sohn,David Berthelot,Chun-Liang Li,Zizhao Zhang,Nicholas Carlini,Ekin D. Cubuk,Alex Kurakin,Han Zhang,Colin Raffel (Submitted on 21 Jan 2020) Comments: Published by arXi
学習させた機械学習モデルにおいて、どの特徴量がどれくらい性能に寄与しているのかを知りたい場合がある。 すごく効く特徴があれば、それについてもっと深掘りしたいし、あるいは全く効かないものがあるなら取り除くことも考えられる。 使うフレームワークやモデルによっては特徴量の重要度を確認するための API が用意されていることもあるけど、そんなに多くはない。 そこで、今回はモデルやフレームワークに依存しない特徴量の重要度を計測する手法として Permutation Importance という手法を試してみる。 略称として PIMP と呼ばれたりすることもあるようだ。 この手法を知ったのは、以下の Kaggle のノートブックを目にしたのがきっかけだった。 Permutation Importance | Kaggle あんまりちゃんと読めてないけど、論文としては Altmann et al. (2
IOTが流行してから、機械を予知保全すべく、センサをどんどん増やす取り組みが 行われています。 噂では、1台の機械にセンサ100個を付ける事例も出てきたようです。 そこで疑問に思うのは、センサの個数を増やすことは正義なのか? 言い換えると、余分なセンサを増やしても異常検知性能に影響がないのか?と いうことです。 本稿では、次元の呪いに焦点を当て、「余分なセンサの個数を増やした場合、異常検知 性能がどうなるのか」を検証します。 ※コード全体はこちらに置きました。 ※こちらはPythonデータ分析勉強会#17の発表資料です。 結論から 余分なセンサ情報があると、異常検知性能が下がる可能性がある それを避けるには、余分なセンサを削減するなどの工夫が必要 想定するシーン 異常検知で有効なセンサは2つだけ 余分なセンサも付いておりほぼゼロ信号を出しているが、ノイズが含まれる(重要) 余分なセンサを増
本記事は、AI道場「Kaggle」への道 by 日経 xTECH ビジネスAI① Advent Calendar 2019のアドベントカレンダー 9日目の記事です。 Permutation ImportanceがScikit-Learnのversion0.22より導入されました。この手法はKaggleでも使われており1 、特徴選択に有用な方法です。本記事ではこのPermutation Importanceの解説と、LightGBMで5-foldでCVしながら使ってみた例を紹介します。コードの全文はKaggle Kernelとして登録してありますので、コードだけサクっとみたい方はこちらをどうぞ。 1. Permutation Importanceとは Permutation Importanceとは、機械学習モデルの特徴の有用性を測る手法の1つです。よく使われる手法にはFeature Imp
異常検知は、正常データだけで学習できる製造業で人気のある手法です。 そして、異常検知で異常を検出したとして、「異常原因を特定したい」という 要望もよく聞かれます。 そこで、本稿では、複数のセンサが付いた異常検知システムにおいて、 異常が発生した場合に、どのセンサが異常値を示しているのかを特定する 方法を検討します。 ※コード全体はこちらに置きました。 ※こちらはPythonデータ分析勉強会#17の発表資料です。 きっかけ 以前に、こんな内容をツイートしたところ、皆さん興味をお持ちのようでした。 昨日、JFEスチールの製造ラインで異常検知する話しを聞いた。 ・数十個にわたるセンサで常時監視 ・異常検知の制約は、異常のみならず異常原因も特定する ・センサは相関が強いものだけを取り出し、主成分分析だけで異常検知 ・これによりコストと納期を大幅に削減 ー続くー — shinmura0 @ 3/14
半教師あり学習の本質はどこにあるのか? 現在の半教師あり学習の悪い(?)ところ その他 今週ゼミで半教師あり学習のイントロダクション的なものをやる予定なので資料を作っている。 Self Training Generative Models S3VMs Graph-Based Algorithms Multiview Algorithms などなどの手法を簡単に紹介する予定(Blogにもあげるかもしれない)。で、資料を作っていて、「半教師あり学習とは、つまりラベルありデータだけではdata sparsenessに負けてしまうところをラベルなしデータによって補う方法ではないか」というところに行きついた気がする。 半教師あり学習 from syou6162 半教師あり学習の本質はどこにあるのか?Semi-Supervised Learning Tutorialの資料からいくつか例で見てみよう。テ
初めまして。新入社員の石川です。 大学と大学院では半教師あり学習を専門にしてきました。今回はそのこれまでの技術と今後についてご紹介します。 半教師あり学習(Semi-Supervised Learning)とは 半教師あり学習は機械学習の手法の一つで、教師あり学習で必要となるデータ形成においてコスト削減を目指します。 まず、機械学習は大きく * 教師あり学習 * 教師なし学習 * 強化学習 の3つが挙げられます。ここでは、教師あり学習と教師なし学習について簡単に説明した後に半教師あり学習について説明していきます。(強化学習は半教師あり学習とあまり関連がないため、別記事を参考にして下さい) 教師あり学習は、学習に必要となる教師データ(および評価データ)について全てのインスタンスにアノテーションと呼ばれるラベル付けの作業が必要です。 例えば、病院に来た患者のレントゲン写真をインプットしたときに
TL;DR 半教師あり学習の1つの手法である、疑似ラベルをCIFAR-10で試した サンプル数が少ない場合は、疑似ラベルを使うことでテスト精度を引き上げることができた ただし、転移学習と比べると若干見劣りすることもある 元ネタ かなり平易に書かれた論文なので読みやすいと思います。 Dong-Hyun, Lee. Pseudo-Label : The Simple and Efficient Semi-Supervised Learning Method for Deep Neural Networks. 2013 http://deeplearning.net/wp-content/uploads/2013/03/pseudo_label_final.pdf 半教師あり学習とは 「教師あり学習」と「教師なし学習」の間の子。教師あり学習のように$(X, y)$とラベル付けされたデータと、教師
AIブームの熱にアチチアチチとなっているご時世ですから、AI(人工知能)を実現する技術である機械学習というワードはよく見聞きするものでご存知の方も多いことでしょう。しかし「半教師あり学習」というワードに出会う機会はそれに比べてずっと少なく、知っている方はかなり少ないのかもしれません。 実際、今みなさんがご覧になっているこのメディアAIZINEでは「半教師あり学習」というテーマで書いた記事はまだありませんし(実際に調べました)、機械学習の参考書に目を通していても中々登場しないワードです。 しかしAI(機械学習)エンジニアを目指している僕は、機械学習の腕を競い合ったりプロのコードを見て学べる場である「Kaggle」に取り組んでいて、最近「半教師あり学習」とやらに出会いました。半教師あり学習の存在は知っていたけれど別に知らなくても困らなかったので特に調べもしていませんでしたが(おいおい・・・)、
AdaCos: Adaptively Scaling Cosine Logits for Effectively Learning Deep Face Representationsを読んだ論文読みMetricLearningFaceRecognition CVPR2019(Oral)に採択されたAdaCos: Adaptively Scaling Cosine Logits for Effectively Learning Deep Face Representationsを読んだので記録を残します。 図と表は論文から引用しています。 間違い等お気づきの点ありましたらコメントいただけると幸いです。 事前知識 昨今話題のmetric learningの手法です。metric learningについてはこちらが非常にわかりやすくまとめてくださっているのでそちらを参考にしてください。 概要 A
角度を用いた距離学習を説明してます。 基本的な理論の部分はSphereFaceで説明しています。 最終的にArcFaceの仕組みを理解できるようにするのが目標です。 ArcFaceについては優れた紹介記事がすでにありますが、角度による距離学習がどういったものか、marginを与えるとなぜうまく…
角度を用いた距離学習を説明してます。 基本的な理論の部分はSphereFaceで説明しています。 最終的にArcFaceの仕組みを理解できるようにするのが目標です。 ArcFaceについては優れた紹介記事がすでにありますが、角度による距離学習がどういったものか、marginを与えるとなぜうまく…
交差エントロピーの意味 まず交差エントロピーは、以下の式で表されます。 $$E=-\sum_{k}{{q(k)}log(p(k))}$$ pは、ニューラルネットワークで学習された確率。分類問題では学習データの正解率として出力されます。 qは、教師データの確率。1(100%)と0(0%)で出力されます(詳しくは後述) ちょっと数学チックに言うと、「確率分布pと確率分布qの近似性を表現する関数」と言うことになります。 この性質から、機械学習の損失関数に交差エントロピーが採用されています。 ちなみに、「交差」というのは2つの確率分布pとqを組み合わせていることに由来しているらしい。 さらに、分類問題で使う際にはシグマのない非常にシンプルな数式になります。 $$E=-log(p(k))$$ 分類問題の場合、教師データは全て0と1になります。つまり0%か100%かという二択になるということ。 例えば
機械学習をしているとよく交差エントロピーを最小化させられると思います。 でも冷静に考えると交差エントロピーが何かよくわかりませんでした。むしろエントロピーがわかりませんでした。 以下の記事を読み、もっと無理がない例で短くまとめたかったのですが、やはり例に無理があり、長くなってしまいました。参考文献 情報理論を視覚的に理解する (1/4) | コンピュータサイエンス | POSTD 情報理論を視覚的に理解する (2/4) | コンピュータサイエンス | POSTD 情報理論を視覚的に理解する (3/4) | コンピュータサイエンス | POSTD 情報理論を視覚的に理解する (4/4) | コンピュータサイエンス | POSTD ニューラルネットワークと深層学習 以下はこれら記事の劣化アレンジです。 A国、B国、C国があります。 A国では、一日の天気は25%ずつの確率で晴れ、曇り、雨、雪にな
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く