IT is IT.

空想イノベーション

畳み込みニューラルネットワークの基本的な考え方

畳み込みニューラルネットワークの最初のモデルが考案されたのは1982年とされている。 畳み込みニューラルネットワークは、主に画像を処理するためのネットワークと言ってもよいが、構造もそれにあわせ、人間がもつ視覚野の神経細胞の2つの動きを真似する、…

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

畳み込みニューラルネットワーク(Convolutional Neural Network:CNN)は、画像をそのまま2次元のまま入力することができるモデルである。 本来画像とは、画像データの縦横の2次元であるが、そこにRGBやHSVといった色に関する情報を持つため、数値情報とし…

バッチ正規化で無理やりデータを変形させる

各層に伝わるデータの分布を、重みの初期値を工夫することで、勾配消失の起きにくいアプローチをとることがあるが、もっと直接的な方法も存在する。 バッチ正規化と呼ばれる手法で、各層に伝わってきたデータを、その層でまた正規化してしまう、という手法だ…

機械学習における学習”前”の工夫

正規化 入力データを学習する前に、各特徴量間のスケールを調整した方がよいケースがある。 例えば、経済指標を予測する場合、円とドルでは100倍もの差が生じている。 このようなケースでも、事前にスケールを調整し、パラメータの偏りをなくすことで、学習…

ドロップアウトの弱点と克服法

ドロップアウトは、オーバーフィッティングを回避するための手法として効果的な手法ではあったが、それでも弱点はある。 それは、訓練データに対しては非常に効果的に最適化されているものの、テストデータに対しては最適化しきれていないため、どうしてもオ…

ドロップアウトによるオーバーフィッティング対策

訓練データに対して最適化されすぎてしまう、という機械学習における最大の敵ともいえる、オーバーフィッティング。 解決策として、正則化が挙げられることについて、以前記述したことがある。 itisit.hateblo.jp これ以外にも方法はあり、その一つとして、…

ニューラルネットワークの「学習」とは何を意味するのか

機械学習では、モデルの予測値と実際の値との誤差をなくすことを目的に、誤差関数を定義し、最小化を行う。 この時の関数の最小化とは、偏微分を表すが、偏微分を求める方法として、勾配降下法が用いられる。 勾配降下法は、勾配(微分値)に沿って降りてい…

ReLU関数の特徴

現在、tanh関数に変わってよく使われているのが、ReLU(Rectified Linear Unit)関数である。 ReLU関数ではxが0より大きければ、微分値は常に最大値である1が得られることがわかる。 tanh関数では最大値が1、となるため、このことからも誤差逆伝播の際に勾配…

シグモイド関数とtanh関数

ディープニューラルネットワークにおいて、隠れ層を増やすと、誤差逆伝播で勾配消失することがわかっている。 これは、活性化関数であるシグモイド関数の微分の最大値に問題があるためだ。 シグモイド関数の微分の最大値は0.25である。 これにより勾配消失が…

機械学習に欠かせないGPUの発展

機械学習、とりわけディープラーニングの発展に欠かせない存在が、CPUやGPUなどのハードウェアの進歩である。 コンピュータには、CPU(Central Processing Unit)とGPU(Graphics Processing Unit)という演算処理装置があり、それぞれ異なった性質を持って…

最後に仕上げるファインチューニング

ニューラルネットワークにおいて重要な役割を示すオートエンコーダであるが、これをいくら積み重ねても、ラベルを出力できない、ということに注意する必要がある。 つまり、オートエンコーダ自身が、入力から重要な情報だけを抽出する、という教師なし学習の…

オートエンコーダを積み重ねた結果

オートエンコーダ自信は、ニューラルネットワーク対して有効な手法であり、ディープニューラルネットワークには適用しきれませんでした。 では、一体どのようにして、ディープニューラルネットワークに対応できるようにしたか。 それは非常に単純であり、オ…

オートエンコーダによる情報伝達法

2006年にトロント大学のジェフリー・ヒントンによって、ニューラルネットワークが抱える、理想と現実のギャップを解決する手法が提唱された。 オートエンコーダ、あるいは、自己符号化器と呼ばれる手法で、ディープラーニングの主要な構成要素となった。 オ…

ニューラルネットワークにおける勾配消失問題とは?

隠れ層を増やすことで、より複雑な認識、予測が可能となりうるニューラルネットワークであるが、一方で、誤差逆伝播法による、予測結果と実際の正解との誤差をフィードっバックするうえで、ネットワークを深くすることで、誤差が最後まで正しく伝播されなく…

単純パーセプトロンと多層パーセプトロン

単純パーセプトロンは、入力をもとに出力を行うもので、線形分類しか行うことができなかった。 これに、入力と出力の関係性を、隠れ層の中に重み付けとして表現する関数を追加することで、非線形分類ができるようになった。 これが多層パーセプトロンの基本…

オーバーフィッティングとアンダーフィッティング

訓練データにのみ正解率が高くなり、テストデータで極端に正解率が下がってしまう状態に陥ってしまうことを、オーバーフィッティングと呼ぶ。 この状態では、正しい予測、評価を行えなくなってしまう可能性がある。 そこで、オーバーフィッティングを防ぐ方…

モデル評価のための色々な数式

モデルを評価するうえで、その方法は一つではなく、いくつか存在する。 それら評価を行ううえで、必要となるのが、混同行列(confusion matrix)である。 混同行列は、以下のように分類される。 真陽性True Positive(TP) 偽陰性False Negative(FN) 偽陽…

訓練データ、検証データ、テストデータの役割と意味

これまでに述べてきたように、機械学習は、データを学習することによってデータの特徴をつかみ、識別、予測できるようにするもである。 この時、既知のデータだけでは、未知のデータ(入力)に対して識別、予測することができない。 そこで、手元にあるデー…

教師なし学習の代表的手法、k-means

教師なし学習とは、出力のない、入力データの構造や特徴をつかむものであるが、その教師なし学習の中の一つ、k-meansは、データをk個のグループ(クラスタ)に分けることを目的としている。 つまり、入力データから、グループ構造を見つけ出し、それぞれに分…

人間の脳を真似したニューラルネットワーク

人間の脳の中の構造を模したアルゴリズムである。 人間の脳には、ニューロンと呼ばれる神経回路があり、互いに結びつくことで全体を構成している。 単純パーセプトロンは、ニューラルネットワークのモデルで、複数の特徴量(入力)を受け取り、1つの出力を行…

サポートベクターマシンの欠点克服法

SVMとも呼ばれる高度な数学的理論に支えられた手法で、ディープラーニングが登場するまでは、最も人気のある機械学習の手法の1つであった。 サポートベクターマシンでは、入力データの各データ点と距離が最大となるような境界線を求めることで、パターン分類…

ランダムフォレストによる学習アルゴリズム

ランダムフォレストとは、決定木を用いる学習手法である。 特徴量をランダムに選び出すことで、ランダムに複数の決定木が作られる。 この結果、各予想で異なる結果が出ることがあるが、それぞれの結果を用いて多数決をとることで、最終的な決定を行う。 また…

線形回帰とロジスティック回帰

線形回帰 統計でも用いられる手法で、最もシンプルなモデルの1つである。 データの分布があったときに、そのデータに最も当てはまる直線を考える、というもの。 線形回帰に正則化項を加えた、ラッソ回帰、リッジ回帰などがある。 双方の違いは、どのような項…

教師あり学習と教師なし学習

教師あり学習 教師あり学習とは、与えられたデータ(入力)をもとに、そのデータがどんなパターン(出力)になるのかを識別・予測するものである。 具体例として、以下のようなものがあげられる。 過去の売上(入力)から、将来の売上(出力)を予測する 与…

シンギュラリティとは「無限」の到来

シンギュラリティとは、レイ・カーツワイルが主張したもので、人工知能が十分に賢くなり、自分自身より賢い人工知能を作るようになった瞬間、無限に知能の高い存在を作り出すことをさす。 それが、2045年であると主張している。 スポンサーリンク // なお、…

AIでいうところの特徴量

徴量とは、注目すべきデータの特徴を量的に表したものである。 ここでいう特徴量とは、人間が選択したものをさしている。 スポンサーリンク // 一方で、特徴量を機械学習自身で発見するアプローチを特徴表現学習と呼ぶ。 ディープラーニングも、特徴表現学習…

コンピュータが知識を得ることの難しさ

機械翻訳自体は、人工知能が始まって以来、長く研究が続いている分野だが、1970年代までは, 翻訳のための文法規則や辞書を主に手作業で整備する方式である、ルールベース機械翻訳が一般的だった。 それから1990年代以降は、統計的機械翻訳が主流となり、翻訳…

シンボルグラウンディング問題はコンピュータには真似できない?

人工知能において、フレーム問題という大きな問題が存在しているが、同様に、シンボルグラウンディング問題というものも存在している。 これは、記号(シンボル)とその対象がいかにして結びつくか、という問題で、スティーブン・ハルナッドによって議論され…

強いAIと弱いAI

アメリカの哲学者、ジョン・サールが発表した「Minds, Brains, and Programs」(脳、心、プログラム)という論文で、強いAI、弱いAIという言葉が使われた。 強いAI 適切にプログラムされたコンピュータは人間が心を持つのと同じ意味で心を持つ。 また、プロ…

会話相手が人工知能か人間かを見分ける基準

人工知能ができているかどうかを判定する基準として使われているのが、アラン・チューリングが提唱した、チューリングテストである。 スポンサーリンク // チューリングテストとは、別の場所にいる人間がコンピュータと会話し、相手がコンピュータと見抜けな…