"機械学習","信号解析","ディープラーニング"の勉強

読者です 読者をやめる 読者になる 読者になる

"機械学習","信号解析","ディープラーニング"の勉強

"機械学習","信号解析","ディープラーニング"について、それぞれ勉強しながらブログにまとめていきます。テーマは気分によってバラバラかもしれません。

SVM、ニューラルネットなどに共通する分類問題における考え方

はじめに 分類問題の基本 分類における困難:線形分離不可能 非線形な分類問題 曲線、曲面によって境界を定める=空間を捻じ曲げて線形な境界を定める 素朴な疑問とその回答 次元に自由度がある 分離できる可能性が上がる うまい曲げ方を見つける 学習とは空…

TensorFlowの強さはコミュニティの大きさ。参加者の人数とレベルがすごい!

TensorFlowのコミュニティ はじめに TensorFlowの強み ネット上に質問と回答が溢れている サードパーティーがTensorFlowを盛り上げる TensorBoardなどの便利機能 宣言的プログラミング 確率モデルを記述するedward登場 Google、TensorFlow自体も頑張る アン…

中間表現の変化:生データ→自己符号化→ファインチューニングまで

2017/3/6更新 はじめに 自己符号化器 簡単な紹介 事前学習(特徴抽出) 中間表現の変化 生データ 事前学習による符号化 ファインチューニングによって変化した中間表現 ファインチューニングで中間表現が変わりすぎることを防ぐ 事前学習の初期値を生かした…

ディープラーニングは動的ネットワーク構築が主流になるか? TensorFlow Fold登場

動的ネットワーク構築と静的ネットワーク構築 静的ネットワーク構築 動的ネットワーク構築 動的なTensorFlowが登場 動的なネットワーク構築を行うライブラリ TensorFlow Foldの登場 どれがいいのか

Chainerが大幅にアップデート!深層学習フレームワークの地位確立なるか?

Chainerがアップデート Chainer 2.0の登場 分散処理対応のChainerMN ITpro記事 公式ブログ 強化学習対応のChainerRL クイックスタート 公式ブログ 最後に ライバルTensorFlow(Google開発のフレームワーク)

抑えておきたい評価指標「正解率」「精度」「再現率」

評価の指標を1つじゃない はじめに 正解率 再現率 精度 分割表 評価の方法 精度と再現率のトレードオフ F値 break-even 注意点 参考

誤差逆伝搬法(バックプロパゲーション)とは

はじめに ニューラルネットの基礎 ニューラルネットの順伝搬 1つの層での処理 多層での処理 順伝搬のまとめ ニューラルネットワークの学習 勾配法 微分の難しさ 誤差逆伝搬法 問題 誤差逆伝搬法 まずは損失の和を計算する 微分の連鎖律 出力での損失の微分 …

ニューラルネットワークの学習の工夫

はじめに 伝統的な学習の工夫 正規化、標準化、無相関化、白色化 正規化 標準化 無相関化 白色化 正則化 正則化 正則化 elastic net 伝統的な工夫について ニューラルネットワークの学習の工夫 バッチ正規化 ドロップアウト ノイズ混入 勾配ノイズ ニューラ…

Deep learningに必須なハード:GPU

はじめに 計算性能は必須 CPUとGPU CPU GPU GPGPU ベンチマーク 様々な環境での実験 ニューラルネットの構造を変えた実験 GPUの情報 ディープラーニングのGPU TensorFlowが認識するGPUの性能 2017年GPUの早見表(デスクトップ向け) 紹介

機械学習の重要なアプローチ:ベイズ理論

はじめに 記事を書いた動機 ベイズを意識する理由 ベイズ推定と正則化 ベイズ統計と伝統的統計 過学習という事実 ノイズへの対策 最大事後確率推定 最適化の立場 ベイズ推定について 正則化の試行錯誤 完全なるベイズの枠組み ベイズの枠組みを勉強できる本 …

サポートベクターマシンを手計算して理解する

サポートベクターマシンの数式 サポートベクターマシンの最適化問題 最適化問題の別の表現、双対問題 まとめ 手計算してみる 問題設定 問題を解く 最適化問題へ値を代入 制約条件を考慮 を計算する 主問題のを確認 サポートベクトルマシンによる分類器 終わ…

バイアス-バリアンス分解:機械学習の性能評価

はじめに この記事で理解できること バイアス-バリアンス分解とは 予測性能 未学習とは 過学習とは 多項式フィッティングにおける未学習と過学習の例 正則化の効力 評価をするために 損失関数の期待値とその分解 損失関数 損失の期待値の最小化 損失の期待値…

自動機械学習の登場。深層学習システムを開発する学習ソフトウェア

自動機械学習 発端 機械学習の設計と試験に飽き飽きした 能力 自動機械学習のコスト 自動機械学習の狙い 論文

線形回帰モデルと最小二乗法

はじめに 線形回帰 線形関数 線形回帰の目的 ガウスノイズモデル 最尤推定法 対数尤度 最小二乗法との関係 最小二乗法はどんなときに使えるか 次に読む記事 最尤推定より更に実用上強力なMAP推定 分類問題では最小二乗法は用いない

深層学習のフレームワーク「dynet」

dynet 特徴 Define by Runの方 Chainerよりはモジュールの粒度は低い コードの例 パラメータの準備 計算グラフ構築 学習部分 Define by Runを支えているのは結局ここ 動的にネットワークを変える まとめ dynetドキュメント ドキュメント 技術論文

TensorFlowを始める知識準備の手順

はじめに 始める前の準備 プログラミング ニューラルネットワーク テンソルのこと 動かしながら検討 様々なタイプのニューラルネット 更に理解を深める

ニューラルネットのための最適化数学

はじめに 最適化数学 最適化問題の簡単な例 例題の解法 微分による解法の注意点 凸最適化問題 凸関数 凸関数の定義 ニューラルネットの学習 ニューラルネットの目的関数 ニューラルネットの勾配降下法 パラメータを求める戦略 勾配降下法 ニューラルネットの…

本格的に深層学習をやりたい人はTensorFlowがいいのか?

なぜTensorFlow Google発である もともとテンソル計算と計算グラフを記述するもの 利用者が多い TensorFlowの弱点 ネットワークを動的に書き換えられない 対応GPUが高価 64bitにのみ対応 私自身

時系列データ:隠れマルコフモデルの基礎と、リカレントネットの台等

はじめに 隠れマルコフモデル 確率分布として考える 隠れていないマルコフモデル 隠れマルコフモデル 隠れマルコフモデルの学習 隠れマルコフモデルでの予測 隠れマルコフモデルで何ができるか リカレントネット リカレントネットの構造 時間方向への展開 深…

ChainerのDefine by Runとは?

Define by Run Define by Run Define and Run 具体例を見る 上記のコードのネットワークにおける動作

chainer記事のメモ

はじめに 記事のまとめ chainer導入 Pythonの導入 chainer導入 chainer入門 chainer公式ドキュメントのIntroduction 英語ができない場合のintroduction chainerの理解を深める chainer応用 正則化やドロップアウト 独自データを用いる 画像データ テキストデ…

kerasとchainerの違い

KerasとChainer Keras Chainer 比較 Kerasの役割 Chainerの役割 Kerasでの実装 Chainerでの実装 使い分け Chainerがいいなあ Googleの強さ 使い分け

ささっと使ってみたい人にオススメ、深層学習ライブラリ「Keras」

Kerasとは? TensorFlowを使うのと何が違うのか インストールの方法 TensorFlowの場合 Theanoの場合 Chainerに比べたアドバンテージ Kerasは最初の一歩にオススメ

機械学習手法を理解する手順

はじめに プログラムへの理解度 機械学習への理解度 何が重要か アルゴリズムとしての理解 アルゴリズムとプログラム プログラムの理解 アルゴリズムとしての理解 機械学習手法を理解する方法 機械学習を抑えるためのポイント 更新式を理解すること 判別も回…

クラスタリングの基本

はじめに クラスタリングと教師なし学習 教師なし学習 クラスタリング クラスタリングの手法 凝集型クラスタリング 重心法 単連結法 完全連結法 まとめ k-means 発展的話題

畳み込みニューラルネットワークの基礎

事前知識 テンソルで理解しておくべきことは意外と少ない 畳み込みとは 畳み込み 畳み込みニューラルネット 畳み込みニューラルネットの畳み込み処理 空間フィルタ 畳み込み層 RGB画像を扱う場合 畳み込み層まとめ 分類の方法について プーリング層 活性化関…

Irisデータを使ってChainerを試してみましょう

Chainer Chainerの基本的な使い方 まず使ってみましょう IRISデータの分類問題を対象とした全体コード 試してみること 学習中に見るべきところ

ニューラルネットワークの中間層の働き、その他脳のモデル

ニューラルネットワーク 脳のモデルとしての構造 連合層(中間層)の役割とは ニューラルネットの特徴抽出 ニューラルネットワークは本質的に教師あり学習 強化学習 強化学習の概要 Q学習 深層強化学習:Deep Q Network 脳との関連 その他 連想記憶ネットワ…

現在の人工知能開発

人工知能の歴史の全体像を簡単に概観した以下の記事が多くの人に見られるようになりました(大変うれしいことです)。 s0sem0y.hatenablog.com これを見て非常に多くの人が人工知能に関心を寄せていることを再確認いたしましたので、人工知能開発における別…

TensorFlowのtutorial:MNIST For Beginners解説

事前知識 ニューラルネットワークの構造 出力層は何を出力するのか ニューラルネットワークの学習 ミニバッチ学習 まとめ MNIST For Begginers はじめに MNISTとは Bigginersで使うニューラルネット ニューラルネットワークの数式 Tutorialのコードの解説 全…

出力層で使うソフトマックス関数

ニューラルネットの分類問題 分類するクラスの数=出力層のユニットの数 ラベルデータ 現実の出力 ソフトマックス関数 確率を出力している 交差エントロピー 損失関数 交差エントロピーを用いる理由

自己符号化器(オートエンコーダ)と主成分分析との関係

自己符号化器の役割 自己符号化器の構成方法 数式を見る 損失関数を見る 主成分分析の復習 主成分分析の復習 主成分分析の次元削減 自己符号化器と主成分分析 損失関数の書き換え 主成分分析との比較 自己符号化器の価値 非線形性を容易に表現 雑音に対する…

深層学習:ハイパーパラメータの設定に迷っている人へ

既に深層学習は、chainerやtensorflowなどのフレームワークを通して誰の手にも届くようになっています。機械学習も深層学習も、あまりよくわからないが試してみたいなという人が数多くいるように思います。そして、実際に試している人たちもたくさん居るでし…

ニューラルネットワークによる学習の停滞はどこから生ずるか

現在機械学習ではディープラーニングの活躍が目立っています。 その基礎はニューラルネットワークの学習にあり、この学習を知っているのとそうでないのとでは、各手法に関する理解度が大きく異なってくるものと思います。 今回はニューラルネットワークの学…

評価関数で見る機械学習手法

最近、学習は最適化問題に帰着されるということを自分自身強く意識するようになりました。 そこで有名なSVMや対数線形モデルなどの評価関数を見て、それぞれがどのような狙いを持っているのかを概観してみようと思います。 Support Vector Machine 評価関数 …

機械学習を発展させる3つの立場

機械学習をしようという場合には大きく分けて3つの立場があるように思います。 1.機械学習手法の狙いを提案 2.機械学習手法に対する解法を提案 3.機械学習を使ってデータを解析 機械学習は最適化問題を解くということである どちらのアプローチでも構…

現代のニューラルネットワーク描像

ニューラルネットワークは深層学習(ディープラーニング)によって復活し、多層化されるにつれ、ネットワークのユニット1つ1つに関して注目する機会はさほど多くなくなりました。 元々はニューロン同士の結合を表現したモデルであったため、その繋がりを意…

ディープラーニング最適化の有用記事

ディープラーニングの勉強を進める中で有用だった記事を載せておきます。 勾配法のまとめ記事 最適化から見たディープラーニングの考え方 通常の機械学習における最適化の視点

最小二乗法を例に機械学習を見る

最小二乗法 機械学習的な表現 最小二乗法を機械学習的に書いてみましょう。 モデルの正しさは? 予測性能の基本的な評価方法 機械学習の発展 モデルの表現、確率モデルを用いる方法 モデルを複雑にする方法 ニューラルネット

ここからはじめるディープラーニングの主流手法まとめ【保存版】

ディープラーニングは2006年にトロント大学のHinton氏が考案したDeep Belief Networkから始まりました。このとき考案されたのが事前学習という手法で、一層ずつ層を学習させてから繋げていくことで、一気に深い構造を学習させる際に生じていた勾配消失問題を…

ディープラーニングでの学習収束技術

ディープラーニングでは多くの層とユニットを用いて、非常に高い表現力を持ったネットワーク構造を作り出します。その高い表現力が包含する様々な実現可能な変換の中から、如何にして望む変換を獲得するかが学習のフェイズになります。 この学習では、表現力…

NIPSの採択論文から見る機械学習の動向 [更新]

12月に開かれる機械学習のトップカンファレンスであるNIPS。ここで採択された論文から、近年の機械学習手法の研究動向を見てみたいと思います。 NIPSとは 検索ワード ディープ(deep) スパース(sparse) 最適化(Optimization) 強化学習(Reinforcement learning…

カーネル法

ディープラーニングが現れる以前の機械学習で一斉を風靡した学習機械と言えばSupport Vector Machine(SVM)ですね。このSVMが大活躍した背景には、線形回帰・分離の手法を非線形へ拡張するカーネル法の存在がありました。 今回はそのカーネル法について解説し…

サポートベクターマシン(support vector machine:SVM)の基礎

線形識別器の代表格としてサポートベクターマシンを取り上げます。 機械学習で一躍有名となった手法の1つで、ディープラーニングが流行る以前は「え、まだニューラルネットやっているの?時代はサポートベクターマシンでしょ」と言った雰囲気でした。今はな…

フィッシャーの線形判別

フィッシャーの線形判別は、データを分類する際に統計学の分野で古くから使われている手法です。「判別」という言葉が付いていますが、事実上これはデータを分類するための都合の良い線形変換を見つける手法だと言えます。フィッシャーの線形判別は主成分分…

線形識別モデルの基本

久々の更新になります。 今回からしばらく、線形識別モデルについて記述していきます。 線形識別モデルは、データに対して、そのデータがどのクラスに属するかを分類する最も基本的な方法です。非線形な識別を考える上でも、基本的にはこの線形識別モデルが…

ニューラルネットの表現力と回帰分析

機械学習といえばニューラルネット・ディープラーニングという印象の方も多いと思われます。実際、ニューラルネットはそのアーキテクチャによって様々な種類のデータをうまく扱うことができます。今回はニューラルネットに対して、いろいろなアーキテクチャ…

フィードフォワードニューラルネットワークの基本

今回はニューラルネットワークの話をします。 僕のブログに行き着く人の多くは「ニューラルネットワーク」とか「ディープラーニング」とかで検索している人が多いみたいなので、きっと最も需要がある項目なのでしょう。 ディープラーニングをやるにしても、…

次元の呪いについて再考

最近の機械学習はディープラーニングによって大いに発達し、様々な分野で精度の記録を更新する大躍進を起こしています。しかしその活躍も計算機の設計や多くの学習パラメータの調整にしわ寄せが行っているだけの話で、膨大な次元のデータがもたらす次元の呪…

人工知能の歴史 AIを如何にして達成しようとしたか

※めちゃくちゃ長いです。一連の流れで読むと理解が深まると思います。自身の復習のためにも書き下しました。個々の章で完結しているので、それぞれ別の記事としても掲載しています。 近年は人工知能ブームが到来し、人工知能というワードを当たり前のように…