タグ

ブックマーク / elix-tech.github.io (6)

  • はじめてのAdversarial Example

    今回はadversarial exampleについて解説していきます。Adversarial exampleというのは、下図のように摂動を与えることによりモデルに間違った答えを出力させてしまうもののことです。 この例では、もともとモデルがパンダと正しく分類することができていた画像に摂動を与えることで、テナガザルと誤分類させています。しかし、人間には元の画像との違いはほとんど分からず、パンダのままに見えます。 Adversarial exampleは機械学習モデルを実用化していく上で大きな問題となります。例えば、交通標識をadversarial exampleにしてしまえば、自動運転車をだませてしまう可能性があります。 注目を集めてきている研究分野ですが、まだちゃんと調べたことがないという人も多いかと思います。今回もなるべく丁寧に解説していきたいと思います。 目次 基礎 攻撃 防御 論文紹介

    はじめてのAdversarial Example
    xiangze
    xiangze 2017/10/23
  • はじめてのGAN

    今回はGAN(Generative Adversarial Network)を解説していきます。 GANは“Deep Learning”というの著者でもあるIan Goodfellowが考案したモデルです。NIPS 2016でもGANのチュートリアルが行われるなど非常に注目を集めている分野で、次々に論文が出てきています。 また、QuoraのセッションでYann LeCunが、この10年の機械学習で最も面白いアイディアと述べていたりもします。 “The most interesting idea in the last 10 years in ML, in my opinion.” –Yann LeCun GANは聞いたことはあるけれどあまり追えてないという人向けに基礎から解説していきたいと思います。それでは順に見ていきましょう。 目次 基礎理論 DCGAN 実装 論文紹介 まとめ 基礎理

    はじめてのGAN
    xiangze
    xiangze 2017/03/20
  • Kerasで学ぶAutoencoder

    Kerasの公式ブログにAutoencoder(自己符号化器)に関する記事があります。今回はこの記事の流れに沿って実装しつつ、Autoencoderの解説をしていきたいと思います。間違いがあれば指摘して下さい。また、Kerasの公式ブログはKerasでの実装に関してだけでなく、機械学習自体についても勉強になることが多く、非常におすすめです。 今回の記事では様々なタイプのAutoencoderを紹介しますが、日語ではあまり聞き慣れないものもあるかと思いますので、今回は名称を英語で統一したいと思います。 目次 イントロダクション Undercomplete Autoencoder Sparse Autoencoder Deep Autoencoder Convolutional Autoencoder Denoising Autoencoder まとめ イントロダクション Autoencod

    Kerasで学ぶAutoencoder
  • DQNをKerasとTensorFlowとOpenAI Gymで実装する

    はじめに 少し時代遅れかもしれませんが、強化学習の手法のひとつであるDQNをDeepMindの論文Mnih et al., 2015, Human-level control through deep reinforcement learningを参考にしながら、KerasとTensorFlowとOpenAI Gymを使って実装します。 前半では軽くDQNのおさらいをしますが、少しの強化学習の知識を持っていることを前提にしています。 すでにいくつか良記事が出ているので紹介したいと思います。合わせて読むと理解の助けになると思うので、是非参考にしてみてください。 DQNの生い立ち + Deep Q-NetworkをChainerで書いた DQNが生まれた背景について説明してくれています。Chainerでの実装もあるそうです。 ゼロからDeepまで学ぶ強化学習 タイトルの通り、ゼロからDeepま

    DQNをKerasとTensorFlowとOpenAI Gymで実装する
  • Kerasで学ぶ転移学習

    前回記事では、KaggleのFacial Keypoints Detectionを題材にして、単純なニューラルネットワークから転移学習まで解説しました。 事前に学習した重みを読み込んだ後、全ての層で学習するのではなく、一部の層をフリーズさせることもできるという話を最後に少しだけしました。ちょうどその後、転移学習について詳細に解説しているKerasの公式ブログ記事が公開されましたこともあり、今回はこの記事を参考にしつつ、転移学習をメインに解説していきます。間違いがあれば指摘してください。今回もFacial Keypoints Detectionのデータを使って解説していくので、前回記事も是非合わせて読んでみてください。 また、Keras 1.0.4が公開されたのでまだの人はアップデートしておくと良いかと思います。 目次 転移学習 可視化 全結合層のみ学習(前回モデル) 全結合層+一部の畳み込

    Kerasで学ぶ転移学習
  • Kaggle Facial Keypoints DetectionをKerasで実装する

    KaggleのチュートリアルにもなっているDaniel NouriさんのUsing convolutional neural nets to detect facial keypoints tutorial という記事の流れに沿って、Facial Keypoints DetectionをKerasで実装していきます。単純なモデルから徐々に複雑にしながら解説していきます。多少の機械学習の知識があることを前提にしますが、なるべく分かりやすく解説していきたいと思います。間違い・質問・提案などあれば遠慮なく連絡してください。 KerasはPythonで書くことができるTheanoとTensorFlowベースのライブラリです。直感的に書くことができる人気急上昇中のライブラリです。2015年3月に初公開され、2016年4月にKeras 1.0が公開されました。 Danielさんの記事ではLasagne

    Kaggle Facial Keypoints DetectionをKerasで実装する
    xiangze
    xiangze 2016/06/07
  • 1