Skip to main content

深層ニューラルネットワーク(DNN)

深層学習は何がディープラーニングなのか?
深層学習とは人工ニューラルネットワーク(ANN)での学習にほかならず、深層学習でディープなのは、ANNの「隠れ層(中間)層」です。
ネットワークの構造のベースは多層パーセプトロンです。
中間層が深いネットワークをディープニューラルネットワーク(DNN)と呼びます。わずか数年前は中間層が3~5層であれば深層学習と言われましたが、現在は中間層が数100~200以上のものも多く登場しています。
深層学習の流行は様々な要因があると考えられますが、主に7つが大きいと考えています
1.インターネットの普及
 ディープラーニングではデータ量が多ければ多いほど精度が高くなる傾向があります。インターネットが広く一般に普及した結果、大量のデータがインターネットを通じてやり取りされ収集できるようになりました。
 このデータ・セットを利用できるようになったことが、ディープラーニングの実ならず機械学習全般において優位に働いていることは間違いありません。
2.GPGPUの普及
 深層学習を計算するためのコンピューティング環境の充実が深層学習の普及に一役買ったといわれています。
 GPU(Graphics Processing Unit)は名前の通り、画像処理が専門の演算装置でして、CPUのような汎用計算を行う演算装置とはもともと性質・用途の異なるものでした。
 ところが、2007年にGPGPU(General Purpose Graphics Processing Unit)という汎用計算も行える演算装置が統合開発環境「CUDA」とともにNVIDIA社から提供されるようになると、深層学習とGPGPUは大変相性がいい(線形代数冤罪を大量に並列に行うことが可能である)ことから、シナジー効果をもたらし、一緒に普及していくこととなりました。
3.勾配消失問題の解決
 一般医深い層のネットワークを学習させようとすると、誤差が入力層まで伝播されなくなってしまいます。これは、隠れ層の活性化関数の影響が大きく、シグモイド関数のように微分すると最大値が0.25になり、これを掛け合わせていくとすぐに0に近づいていきます。これを改善するためにHyperbolic Tangentという微分したときに最大値が1になるような関数y=(1-e^(-N))/(1+e^(-N))が活性化関数に用いられるようになりました。それでも勾配消失問題は避けられませんでした。
 2011年に提案された論文にReLuト活性化関数はy=max(x,0)で前述のシグモイド関数よりもうまく機能することが示されています。今までに隠れ層ではReLuがよく用いられています。
4.画像認識コンペティションでの圧倒的な成果
 画像分類では、特徴エンジニアリングト行って、事前に画像分類で予測精度に関わる追加の予測因子である特徴量を職人芸のようにデータ・セットに追加して精度を高めていく方法が一般的であり、2012年時点で既に職人芸の域に達していました。
 ところが、2012年にGeoffrey Hinton氏率いるチームの開発した「Super Vision」が他チームのエラー率を10%以上引き離して圧倒的な制度で優勝しました。Super Visionで用いられた「AlexNet」というDNNのモデルで畳込みニューラルネットワークの一種です。
 2019#1のG検定でもILSVRCで優勝または準優勝した深層学習のモデルの名前やその特徴を問う問題が出題されました。
ILSVRCの歴代優勝チームとそのコア技術
2010    NEC-UIUC
2011    XRCE (Xerox Research Centre Europe)
2012    University of Toronto
2013    Clarifai
2014    Google (準優勝はOxfordのVGGで僅差)
2015    MSRA (Microsoft Research Asia)
2016    Trimps-Soushen (The Third Research Institute of the Ministry of Public Sencurity, P.R. China)
2017    WMW (Momenta-University of Oxford)
5.深層学習ライブラリのオープンソース化
 深層学習を用いてシステム開発やデータ分析を行う場合、多額の資金を用意しないといけないという誤差があるようですが、実は深層学習ライブラリ自体はその多くがApache2.0などのオープンソースライセンスで提供されており、コンセプトを試そうという段階では特に人的コスト以外はかかりません。
 G検定で出題された有名なオープンソースライセンスはGoogle社が提供している「TensorFlow」やそのラッパーとして大変利用しやすいAPI群を提供している「Keras」、構築と同時に評価を行うDefine-by-Run方式を用いたPreferred Networks社の国産ライブラリ「Chainer」などがあります。また、ChainerからFacebook社によりForkされてさらに改良された「PyTorch」も同じDefine-by-Run方式を採用しています。グラフを構築してから、データを流すことはこれに対してDefine-by-Runと言います。
 Facebook社は研究用にはPytorchを、製品開発用には「Caffe」やその改良版である「Caffe2」をオープンライセンスで提供しています。なた、Microsoft社も「Cognitive Toolkit(CNTK)」をオープンランセンスで提供しています。
 ONNX(Open Neural Network Exchange)とは、Facebook, Microsoft, Amazonを中心に異なるAIフレームワーク(深層学習ライブラリ)間で深層学習モデルの移行を行いやすくするオープンフォーマットのことで、CNTK、Chainer、PyTorch、Caffe2、TensorFlow(ONNX Organizationでサポート)が対応しています。
6.Alpha Goが囲碁世界キャンプを被る
 AlphaGoはGoogle傘下のDeepMind社によって開発されたコンピュータ囲碁プログラムです。2015年にプロ囲碁棋士をハンディキャップなしで被った世界初めての囲碁プログラムです。
・ポイント1:ディープラーニングのCNNと強化学習を組み合わせていること
・ポイント2:モンテカルロ木検索によって、途中から最終局面まで打ってしまい(プレイアウトという)最後から考えたときに次の最も有効な一手を考えていることの2点です。
 AlphaGoは主に以下の4つの要素で構成されます。
  • SLポリシーネットワーク(CNNによる教師あり学習)
  • RLポリシーネットワーク(REINFORCEによる方策勾配法)
  • Valueネットワーク(盤面を評価するためのネットワーク、基本的にSLポリシーネットワーク同様の構造で、回帰問題を解くための全結合層が加えられている)
  • モンテカルロ木検索(プレイアウトによりゲーム木の葉のノードからあるポリシーに従い最終局面シミュレーションを行い、結果をノードの評価に利用する仕組み)
 また、学習においては過去の棋譜によって学習する初期のAlphaGoからセルフプレイによって学習して強くなっていくAlphaZeroという発展型も作られさらに強くなっています。そのあとも躍進を続け、AlphaGoは世界トップ棋士である。
7.勾配降下法の進化
 勾配降下法はニューラルネットワークの「重み」を最適化するのに最も一般的な方法である。
 まず、ニューラルネットワークの「重み」を最適化するというのはどういうことでしょうか。最適というのは、つまりニューラルネットワークの数式モデルに入力値を与えたときに得られる出力の値(=予測値)が、正解に最も近くなるように重みを調整していくことであると考えられています。これは、言い換えると、正解と予測値の誤差を最も小さくいく問題であるといえます。
 誤差を最小化するというのは、数学的には予測値と正解の誤差を誤差関数として定義し、これを最小化するという問題にできます。
 関数を最小化するときによく用いられるのは、関数の微分です。

Comments

Popular Posts

7554 bất ngờ mở miễn phí tặng game thủ nhân dịp kỷ niệm 65 năm chiến thắng Điện Biên Phủ

  "Tiến tới kỷ niệm 65 năm chiến thắng Điện Biên Phủ(7/5/1954 - 7/5/2019) . Và cũng nhân dịp kỷ niệm 10 năm làm game của Hiker Games. Như đã hứa, xin được gửi tặng cộng đồng game thủ Việt Nam phiên bản 7554 hoàn toàn miễn phí. Các bạn có thể truy cập vào website http://www.7554.vn để download. Để đảm bảo không có hiểu nhầm nào, xin lưu ý, đây không phải là phiên bản làm lại của 7554.  Đây chỉ là phiên bản đã loại bỏ phần kiểm tra bản quyền để bất cứ ai cũng có thể tải về và trải nghiệm game. Chúc các bạn chơi game vui vẻ!"  Via 7554 Dưới đây là video hướng dẫn tải game:  Chúc các bạn chơi game vui vẻ !

Pokémon GO - Đột phá game Pokemon ngoài ĐỜI THỰC

Đã qua cái thời ngồi nhà ôm máy tính chơi game rồi! Những năm 1x của thế kỉ 21 đã xuất hiện Đột phá game ngoài ĐỜI THỰC và Pokemon Go là một ví dụ điển hình. Game dựa vào GPS để đảm bảo mọi người phải và chỉ có thể chơi khi cầm điện thoại ra đường. Cụm từ khóa Pokemon Go thực sự là một cụm từ hot lan đến tận Làng game Việt. Hiện game đang thử nghiệm trên 1 số quốc gia trong đó có Nhật Bản. Và mình cũng may mắn có 1 mail mời test thử game. Thật sự là một cảm giác mới lạ. Và một câu hỏi được đặt ra là liệu khi thế hệ game Thực tế ảo này có làm giảm lượng trẻ em ngồi nhà không hay lại tăng thêm lượng trẻ em đi bụi :))

Coinmarketcap X Solar (SXP) Learn Program with answer

 🔥Coinmarketcap X Solar (SXP) Learn Program🔥 💰Reward: 13.9 SXP[~20$] +50 diamonds (Random 5000 people) ✅Guide: 1. First signup here:  https://coinmarketcap.com/ 2. Then Signup here:  https://accounts.binance.me/en/register?ref=IWQEF0ZX  (KYC necessary) 3. Open this page and solve the quiz:  https://coinmarketcap.jotform.com/220947727078971 Answers: [Confirm once] Solar's governance is set up as: Ans: A fully decentralized autonomous organization (DAO) What innovations will Solar support within its ecosystem? Ans: All of the above How are node operators chosen? Ans: Based on votes by coin holders What is the native coin of the Solar network? Ans: SXP What happens to transaction fees? Ans: 90% of fees are burned. The remaining 10% is earned by node operators How does Solar help to ensure a sustainable blockchain future? Ans: Solar uses a highly energy-efficient consensus mechanism for its own blockchain and native coin. Solar's platform is Ans: Open source on G...