深さ学習の深さを理解する学習概要


マシン学習
呉恩達先生の授業では、マシン学習の定義があります。
ML:


Pはperformanceで、TはTaskで、EはExperienceで、マシン学習は一つのTaskに対して、Experienceによって、Performanceを昇格させます。
機械学習では神経ネットワークの位置がますます重要になり、非線形活性化関数は神経ネットワーク適合分布に寄与し、効果は線形分類器よりも著しく優れていることが分かった。
y=Wx+b
通常のアクティブ関数はReLU、sigmoid、tanhがあります。
sigmoidは値を(0,1)にマッピングする。

tanhは入力を(-1,1)区間にマッピングします。


#    tanh
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
def tanh(x):
    return (np.exp(x)-np.exp(-x))/(np.exp(x)+np.exp(-x))
X=np.linspace(-5,5,100)
plt.figure(figsize=(8,6))
ax=plt.gca()#get current axis:       
#                 
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
#  bottom x 
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data',0))
#  left y 
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data',0))
ax.plot(X,tanh(X),color='blue',linewidth=1.0,linestyle="-")
plt.show()
fig1
オープンフレーム
ニューラルネットワークの層数が深くなると、分布を捕捉する効果が強くなり、深度学習は深層神経ネットワークの学習を意味すると簡単に考えられます。
現在は二大主流の深さ学習フレームがあります。PytochとTensorflow。
Pytochはダイナミック計算図をサポートしています。Pythonに近い使い方をしています。
Tensorflowは静的な計算図で、新しい言語のように使われています。簡単に使えるkersはもう誰も守ってくれなくて、tensorflowに統合されたそうです。
一つの深さ学習項目の運行フローは主に以下の通りです。
v fig2
深さ学習計算が重複し、膨大な量のため、GPUにモデルを配置する必要があります。GPUの設計は深さ学習計算を加速するのに適しています。GPUでの深さ学習実験を容易にするために、CUDAアーキテクチャを開発しました。今はほとんどのDLモデルはCUDAに基づいて加速されています。
CUDAについて
1.CUDAとは何ですか?
CUDAは、グラフィックカードメーカーNVIDIAの演算プラットフォームです。CUDAは、GPUが複雑な計算問題を解決できるようにするNVIDIAによって導入された汎用並列計算アーキテクチャである。
2.CUDNNとは何ですか?
NVIDIA cuDNNは、深度神経ネットワーク用のGPUアクセラレータです。性能、使いやすさ、低メモリオーバヘッドを強調します。NVIDIA cuDNNはより高いレベルのマシン学習フレームに統合できる。
方向の概要
現在のコンピュータビジョンの発展は自然言語処理より成熟し、NLPのトレーニングはCVよりもリソースを消費し、CVモデルは比較的小さい。
CV方向:
1.画像分類(Reset,DenseNet)
  • ターゲット検出Object Detect
  • スタイルはSteyle Transfer
  • に移動します。
  • CycleGAN:例えば、画像の中で馬からシマウマまで、シマウマから馬に戻ってもいいです。
  • ImageCaptioning:画像から記述テキストを生成し、一般的にCNNでfeatureを取得し、RNNを入力してテキスト
  • を取得する。
    2.NLP方向で
  • 感情分析:分類評論データ
  • Question Answeting:問題の一部->が答えを出す
  • Translation:OpenNM T-pyが使用でき、OpenNMT-pyはオープンソースのseq->seqモデル
  • である。
  • ChotBotチャットロボットは、Question Answeringに基づいて、現在
  • をスタートしたばかりです。
    また、Deep Reinforcement Learningを強化して、簡単なレンガゲームから有名なアルファGoまでやります。
    そして予備訓練言語モデル:BERT、GPT 2のような機械に話を続けさせます。
    学習を移転する
    CVではNNの低層が位置情報(端、角などの細かい情報)を抽出し、高層が抽象情報を抽出することができるので、低層のネットワークは繰り返し使用でき、高層を変更して他のタスクを適用するように訓練される。
    このように、深さ学習プロファイルに関する記事は終了しました。これからも深さ学習の文章を更新していきます。さらに関連する深さ学習の文章を検索してください。また、下記の関連記事をご覧ください。これからもよろしくお願いします。