はじめに 最近流行りのDeep Learningに関する入門記事です。 Deep Learningは既にオープンソースのライブラリが豊富に出まわっており、今回はその中でも国産で定評があり、とある記事でGPU計算が現状で割と速いと書かれていたchainerを使用します。 ただ、Chainerの入門記事は多くあるのですが、そのほとんどが手書き文字を認識するmnistのサンプルを実行して終わっています。 たしかに、mnistのサンプルを眺めれば、Chainerの使い方はわかってくるのですが、なんとなくわかるのと自分で組めるのは違うなということで、今回はchainerを使ったDeep Learningが自分で組めるというところまでを目標にやっていきます。 開発環境 ・OS: Mac OS X EI Capitan (10.11.5) ・Python 2.7.12: Anaconda 4.1.1 (
画像分野では今やDeep Learningによる解析が主流となりつつありますが、結果の解釈が難しいのが難点です。医療分野などでは特に、モデルの出力に対する説明力が強く求められるのではないでしょうか。今回は、そういった時に活用できる可視化手法を紹介します。 紹介する手法はOBJECT DETECTORS EMERGE IN DEEP SCENE CNNs, Zhou+, '14で提案されている方法です。 論文中でやっていること classificationモデルの学習(通常の学習) 1と同じ前処理を適用した画像を入力として、1で学習したモデルでclass毎の確率値を計算 2で使用した画像の一部の領域をマスクした画像を入力として、class毎の確率値を計算 3を5000個程度の領域で行い、値を取得 4の個々の出力値と2の出力値の差分をとる 任意の閾値を設定し、5の値が閾値を超えていない領域は0
Caffeって? Caffeは、アメリカのカリフォルニア大学バークレー校が開発している、ディープラーニングのフレームワークです。 マルチプラットフォーム(LinuxやMax OS X)で動く C++やPythonで実装できる 数ある機械学習のフレームワークの中で開発が活発で、処理速度が速い いろいろな研究成果が報告されている などなど Macにインストールする Ubuntuでのインストールはすごく簡単でしたが、Mac、特に10.9と10.10(MavericsとYosemite)にインストールするのが厄介です。その理由がlibstdc++問題(勝手に自分が命名)です。 libstdc++は、C++の標準ライブラリです。 Caffeに必要な、ソフトウェアをインストールするのに必要なオプションです。 しかし、libstdc++は、OS X 10.9と10.10では対応しておりません。libc+
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Deep Learning bookとは? Deep Learning bookは2016年末にMIT Pressより発売予定の書籍(英語)で、深層学習御三家の一人Bengio先生や画像生成のGANで有名なGoodfellow先生らによって書かれており、現時点で深層学習の決定版と言える教科書です。太っ腹なことに本の内容はウェブサイトで公開されており無料で読むことができます。 Deep Learning; Ian Goodfellow, Yoshua Bengio and Aaron Courville, MIT Press, 2016.
更新履歴 [2017/03/08] AWS 公式 Deep Learning AMI v2 リリース! CUDA 8.0 になり、TensorFlow v1.0.0, MXNet v0.9.3 など Deep Learning に便利な AMI NVIDIA 提供 NVIDIA CUDA Toolkit 7.5 on Amazon Linux NVIDIA DIGITS 4 on Ubuntu 14.04 2016/09 末に公開された模様。 自分で CUDA をインストールしたことがある方ならわかると思いますが、NVIDIA の GPU ドライバから始まり、CUDA をインストールするのはなかなかの手間でした。(まあ、一度 AMI を作ればってのはありますが) この AMI を使えば、ものすごく簡単にサーバが使い始められます! AWS 提供 Deep Learning AMI Amazo
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? これなあに? 先週は強化学習の勉強会をしました。 今週は音声処理の勉強会をやるぞということになって僕はまた焦って資料をかき集めました。 この記事は音声処理の勉強会を行うにあたって、参考になったサイト、もしくは情報をまとめたものです。 勉強会で共有するために作ったけどせっかくだしあげておくことにしました。 読んだ感想や要点なんかも簡単にまとめれたらと思います。 特に参考になった記事、重要だと思った記事には★マークをつけておきます。 僕自身が音声処理初心者ということ、短い時間でまとめたことから誤りや不適切な点があるかもしれません。 その場合
DeepLearningや深層学習など、CUDAやGPGPUなどの需要が 急激に高まっている。 一方でnVidiaやATI(AMD)は元々3Dグラフィックスをベースに CUDAやGPGPUを発展させてきた。 決して、DeepLearningなどの汎用演算を想定してCUDAやGPGPUが 設計されきたわけではない。 ラスタライザやShaderコアなどで実装されている浮動小数演算器を、 より汎用的な演算に解放しよう努力はしているが ラスタライズ処理で必須とされる回路規模のインパクトは今日現時点でも軽くはない。 では、スパコン業界ではどうだろうか? 時間レンタルでスパコンにTensorFlowを流したらどうだろうか? 昨今のスパコンは、米国製、中国製 問わず Intel®Xeon®やnVidiaなどのハイエンドCPU/GPUを コア・パーツとして力技で組み上げられていた。 しかし、その力技にも限
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この部分は需要が高いと思ったので、以下の自分の投稿から抜粋。 TensorFlowのチュートリアルを通して、人工知能の原理について学習する http://qiita.com/jintaka1989/items/3b70b5c5541620536fa2 以下のことについて知りたい人向けの記事。 ・各機械学習ライブラリの比較 ちなみに私はTensorFlowしか触っていないので、 この記事はブログなどを探索して、それをまとめたものである。 追記:実際にライブラリをいろいろ使ってみた人の感想はこちら https://speakerdeck.c
原文 DBMを用いた多形態データの学習(Multimodal Learning with Deep Boltzmann Machines) Nitish Srivastava (2012) 1. 要約/背景 画像と文字の混合データにDBMを適用したら、良好な結果を得られた。 テキストと画像では抽出データの型が異なるため、もともと併用が難しい テキスト→語数カウントベクトルであり、成分は離散的かつスパースである。 画像→ピクセルに分割し、各点の輝度をベクトルにまとめる。 SVMとLDA→混合データの認識に使われるが、教師データがない場合、特徴抽出ができない… 混合データによる学習イメージを下に示す。 画像をインプットした時に、意味(タグ登録してある)を選択識別する感じ。 2. 骨子の理論 分析過程の模式図を以下に示す。 ポイントは、画像の特徴とテキストの特徴をそれぞれ別のDBMで学習させるこ
原文 強化学習における自己符号化器付き深層ニューラルネットワーク(Deep Auto-Encoder Neural Networks in Reinforcement Learning) Sascha Lange and Martin Riedmiller (2010) 1. 要約 (メモリ基盤の)バッチ強化学習(Reinforcement Learning; RL)アルゴリズムを考案した。これにより、自己符号化器でDNN (Deep Neural Network)を学習し、特徴空間を創出することができる。 メインの機械学習アルゴリズムは、MLP(Multi Layer Perceptions) 、いわゆる多層自己符号化器を使う。 2. 背景 強化学習は、次の2ステップからなる。 ①入力データから特徴を抽出する ②特徴空間から、教義(Policy)を学び、行動に落としこむ これまで、①は人
DSSTNEとは? DSSTNEは、Deep Scalable Sparse Tensor Network Engineの頭文字を並べたもので、読み方は“Destiny”と読むらしい。 なぜ今アマゾンがDeep Learning(DL)のオープンソースを発表したのか? DSSTNEは、既存のDeepLearningのオープンソースよりも、データがSparse(疎)なときに高いパフォーマンスを示すため、Amazonのように大量の商品データ、ユーザーデータを持ち、その二つのオブジェクトが購買、評価などの行動をした行動データを持つような疎行列データを持つ場合に強いDeapLearningのオープンソースと言える。 スパース(疎)行列データとは? 疎行列(そぎょうれつ、英: sparse matrix)とは、成分のほとんどが零である行列のことをいう。 スパース行列とも言う。 有限差分法、有限体積法
光センサがコースを検知したら左曲がりに進行、検知しなかったら右回りに進行、という味気ないやつ 青色 僕らの期待の新星DQN 入力:[[光センサの検知/不検知][前回とった行動]]を1セットに過去5個分 : 20次元 隠れ層:50ユニット x 2枚ほど <実は前の記事で隠れ層が1枚なのに2枚と勘違いしてました> 出力:左曲がり進行、直進、右曲がり進行 ご褒美:コースから5px以内 +1ポイント 10px以内 +0.5ポイント 壁際2px以内 -1ポイント そして、壁にぶつかったら張り付き続けてしまい学習時間に支障が出そうになるのでコース上に位置リセット。 現状の状況 いくら直近の過去のことを覚えていても自分の位置もわからない一つ目お化けじゃ迷子になる様子? せめて2つ以上センサーがあるようなライントレーサーにしたり、自分の位置を計算したりするなど何らかの手段で、自分とコースの位置関係を把握で
こんにちは 本業はプログラマじゃない人です。 テレビで「ディープラーニング」というキーワードがバズっているときに、 分散深層強化学習でロボット制御 | Preferred Researchを見て、 試してみたいことが出てきたので、いきなりクローンとは言わず、まず簡単なものから作った。 ⇒ 置き場:DeepQNetworkTest 狙い Pythonも初めて!Chainerも初めて! プログラミングの作法すら分からないのに周囲にソフト屋さんがいない! でも、自走機械に強化学習というのをやらせてみたい! ⇒ とりあえず公開すれば教えてくれる人が出てくるかもしれない 慣性とか持っている機械を動かして見せてる事例が本当に少ない(気がする) ⇒ 次のステップで入れてみよう やったこと ConvNetJS Deep Q Learning Reinforcement Learning with Neur
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Goodfellow,Bengio,CourvilleさんのDeep Learning本の18章まとめ 重要と思った部分だけ独断で抽出しています. 本当にメモ書き程度です. すみません. 間違っている記述があるかもしれません. 心眼で書いている部分があるかもです. Score matchingのくだりは正直よくわかっていないです. 18.Confronting the Partition Function 16章でやったように(無向グラフィカルモデルとかでは)規格化されていない確率分布がよく現れる. このとき規格化するためには積分をする
Deep Residual Learning for Image Recognition Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun ImageNetのCompetitionで1位になったMSRAの論文 ・network層をdeepにすることは性能向上に欠かせない。 ・しかし、Deepにすると性能が向上せずに悪くなることが知られている。(下のグラフ) ・これらはOverfittingによるものではなく、勾配が0になったり、発散したりするため。 これを解決しようというのがこの論文の趣旨 Residual Network 普通のNetwork $H(x)$が所望するmapping(求めたい変換) 2 weight layerをH(x)になるように学習する Residual Network ・$x$をshortcutして足し合わせると$H(
Deep Learning系のライブラリを試すのが流行っていますが、Exampleを動かすのはいいとしても、いざ実際のケースで使おうとするとうまくいかないことがよくあります。 なんとか動かしてみたけれど精度が出ない、データの加工の仕方が悪いのか、モデルのパラメーターが悪いのか、原因がぜんぜんわからん・・・という事態を乗り越えるには、やはり仕組みに対する理解が必要になってきます。 そんなわけで、本編では画像の用意という一番最初のスタートラインから、Chainerで実装したCNNを学習させるところまで、行うべき手順とその理由を解説していきたいと思います。 前段として理論編を書いていますが、ここではライブラリなどで設定しているパラメーターが、理論編の側とどのようにマッチするのかについても見ていきたいと思います。 なお、今回紹介するノウハウは下記リポジトリにまとめています。画像認識を行う際に役立て
SensorBee オフィシャルサイト: http://sensorbee.io/ github: https://github.com/sensorbee/sensorbee SensorBeeはPreffered Networksさんが先日発表したStreaming ETL(Extract/Transform/Load)のためのOSSです。 ニュースリリースの中でそのコンセプトを以下の様に説明されています。 SensorBeeはネットワークのエッジやフォグで発生する非構造化ストリームデータに対して継続的に機械学習を適用し、その結果を既存のデータベースやデータ分析システムに転送したり、直接ロボットなどにフィードバックして制御を行うために開発されました。機械学習ではChainerをサポートすることにより、deep learningのストリームデータへの適用が可能となっています。またJuba
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 機械学習の世界において、画像といえばConvolutional Neural Network(以下CNN)というのは、うどんといえば香川くらい当たり前のこととして認識されています。しかし、そのCNNとは何なのか、という解説は意外と少なかったりします。 そこで、本記事ではCNNについてその仕組みとメリットの解説を行っていきたいと思います。 なお、参考文献にも記載の通り解説の内容はStanfordのCNNの講座をベースにしています。こちらの講座はNeural NetworkからCNN、はてはTensorflowによる実装まで解説される予定な
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く