標籤:特徵 標記 models complex python image 卷積神經網路 str 課程
Deep Learning Specialization
吳恩達老師最近在coursera上聯合deeplearning.ai 推出了有關深度學習的一系列課程,相對於之前的machine learning課程,這次的課程更加實用,作業語言也有matlab改為了python從而更加貼合目前的趨勢。在此將對這個系列課程做一個學習筆記。
而這次的Deep Learning Specialization分為五門課程,分別為:Neural Networks and Deep Learning,Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization,Structuring Machine Learning Projects,Convolutional Neural Networks,Sequence Models。
這篇隨筆首先從第一門課Neural Networks and Deep Learning的第一周開始
深度學習簡介
學習目標:
1. 瞭解推動深度學習的主要趨勢
2. 能夠解釋深度學習是如何應用到監督學習中的
3. 瞭解深度學習模型的主要類別以及什麼時候該應用什麼模型
4. 能夠簡單瞭解什麼情況下機器學習會工作的比較順利
主要內容
人工智慧將會像電力的出現一樣給人類社會帶來又一次巨大轉變。就想一百年前一樣,人工智慧也在改變著許多行業。
什麼是神經網路
假設我們用房屋的面積大小來預測一個房屋的價格,那麼我們可以用線性迴歸(linear regression)來進行擬合,同時我們知道房屋的價格不會是個負值,因此我們可以用中的藍線來進行一個擬合。
這個藍線很類似於目前神經網路中常用的啟用函數ReLU(rectified linear unit)。對於這種只有一個輸入和一個輸出的問題,我們可以用一個最簡單的神經網路來表示。
這種最簡單的神經網路就好像樂高積木一樣,更加複雜的網路都可以用這個最簡單的“樂高”塊拼接而成。
當然在日常生活中我們可能面臨更加複雜的問題。決定一個房屋價格的因素除了房屋大小以外,可能還有臥室的數量,郵遞區號(也就是房子的所在街道)以及周邊社區的富裕情況。房屋大小和臥室數量可以決定這個房屋適合幾口之家,而房屋所在街道可能決定了交通是否便利,房子所在的街道和周邊社區的富裕程度還可能決定這個房子是不是學區房。之後再由的房屋適合幾口之家,交通是否便利,是否是學區房來預測這個房屋的價格。當我們用神經網路解決此類問題時,我們只需給出輸入X也就是房屋大小,臥室數,郵編和周邊的富裕情況就可以通過一個訓練好的神經網路得到一個預測的房屋價格。
從這個神經網路我們可以看出,輸入層每個特徵都和隱層的每個神經元相連。當然,串連的權重可能會有所不同。
使用神經網路進行監督學習
監督學習中,我們一定會有成對的輸入x和輸出y。而監督學習目前有著很廣泛的應用。在不同應用中,我們應當選擇適合的輸入和輸出
在不同的應用領域,我們可能採取不同的深度學習模型。比如在不動產(real estate)和線上廣告(online advertising)中,我們更傾向於使用標準的神經網路(standardNN)。而在標記圖片或者進行Image Recognition時,我們經常使用卷積神經網路(CNN, convolutional neural network)。在進行語音辨識、翻譯等序列識別的時候,常用的模型為迴圈神經網路(RNN, recurrent neural network)。當面對自動駕駛等複雜問題時,我們可能會使用複雜混合網路(complex hybrid neural network architecture.)。
在監督學習中,我們可能面對兩種資料:結構化資料和非結構化資料。對於結構化資料來說,對於每個特徵都有明確界定的含義。而非結構化資料比如聲音、映像和文本等,特徵可能是單個音節或者像素,沒有明確的意義。
什麼促使深度學習騰飛
- 深度學習在很多領域的應用中取得了巨大的成功,比如線上廣告推薦,語音辨識和Image Recognition等。
- 目前電腦的計算能力相對於過去有了很大提高
- 我們現在有了很多資料(大資料)
從這個圖中我們可以看出,更多的資料,規模更大的網路都可以提高神經網路的表現。同時演算法的發展也是不容忽略的。比如從過去常用的sigmoid啟用函數到目前常用的ReLU啟用函數。同時新的演算法一般都使得神經網路的訓練速度更快。更快的訓練速度可以讓我們有機會訓練更大的網路來應付越來越多的資料,同時也可以讓我們嘗試更多的想法,可以更快地測試不同的參數。同時硬體的發展也讓我們可以更快的訓練網路模型來驗證想法。
機器學習001 deeplearning.ai 深度學習課程 Neural Networks and Deep Learning 第一周總結