强烈推荐的TensorFlow、Pytorch和Keras的样例资源(深度学习初学者必须收藏)
TensorFlow、Keras和Pytorch是目前深度學(xué)習(xí)的主要框架,也是入門(mén)深度學(xué)習(xí)必須掌握的三大框架,但是官方文檔相對(duì)內(nèi)容較多,初學(xué)者往往無(wú)從下手。本人從github里搜到三個(gè)非常不錯(cuò)的學(xué)習(xí)資源,并對(duì)資源目錄進(jìn)行翻譯,強(qiáng)烈建議初學(xué)者下載學(xué)習(xí),這些資源包含了大量的代碼示例(含數(shù)據(jù)集),個(gè)人認(rèn)為,只要把以上資源運(yùn)行一次,不懂的地方查官方文檔,很快就能理解和運(yùn)用這三大框架。
一、TensorFlow
資源地址:
https://github.com/aymericdamien/TensorFlow-Examples
資源介紹:
本資源旨在通過(guò)示例輕松深入了解TensorFlow。 為了便于閱讀,它包括notebook和帶注釋的源代碼。
它適合想要找到關(guān)于TensorFlow的清晰簡(jiǎn)潔示例的初學(xué)者。 除了傳統(tǒng)的“原始”TensorFlow實(shí)現(xiàn),您還可以找到最新的TensorFlow API實(shí)踐(例如layers,estimator,dataset, ......)。
最后更新(07/25/2018):添加新示例(GBDT,Word2Vec)和 TF1.9兼容性! (TF v1.9 +推薦)。
配置環(huán)境:
python 3.6以上,TensorFlow 1.8+
資源目錄:
0 ?- 先決條件
機(jī)器學(xué)習(xí)簡(jiǎn)介
MNIST數(shù)據(jù)集簡(jiǎn)介
1 ?- 簡(jiǎn)介
Hello World(包含notebook和py源代碼)。非常簡(jiǎn)單的例子,學(xué)習(xí)如何使用TensorFlow打印“hello world”。
基本操作(包含notebook和py源代碼)。一個(gè)涵蓋TensorFlow基本操作的簡(jiǎn)單示例。
TensorFlow Eager API基礎(chǔ)知識(shí)(包含notebook和py源代碼)。開(kāi)始使用TensorFlow的Eager API。
2 ?- 基礎(chǔ)模型
線性回歸(包含notebook和py源代碼)。使用TensorFlow實(shí)現(xiàn)線性回歸。
線性回歸(eager api)(包含notebook和py源代碼)。使用TensorFlow的Eager API實(shí)現(xiàn)線性回歸。
Logistic回歸(包含notebook和py源代碼)。使用TensorFlow實(shí)現(xiàn)Logistic回歸。
Logistic回歸(eager api)(包含notebook和py源代碼)。使用TensorFlow的Eager API實(shí)現(xiàn)Logistic回歸。
最近鄰(包含notebook和py源代碼)。使用TensorFlow實(shí)現(xiàn)最近鄰算法。
K-Means(包含notebook和py源代碼)。使用TensorFlow構(gòu)建K-Means分類器。
隨機(jī)森林(包含notebook和py源代碼)。使用TensorFlow構(gòu)建隨機(jī)森林分類器。
Gradient Boosted Decision Tree(GBDT)(包含notebook和py源代碼)。使用TensorFlow構(gòu)建梯度提升決策樹(shù)(GBDT)。
Word2Vec(詞嵌入)(包含notebook和py源代碼)。使用TensorFlow從Wikipedia數(shù)據(jù)構(gòu)建詞嵌入模型(Word2Vec)。
3 ?- 神經(jīng)網(wǎng)絡(luò)
監(jiān)督學(xué)習(xí)部分
簡(jiǎn)單神經(jīng)網(wǎng)絡(luò)(包含notebook和py源代碼)。構(gòu)建一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)(如多層感知器)來(lái)對(duì)MNIST數(shù)字?jǐn)?shù)據(jù)集進(jìn)行分類。 Raw TensorFlow實(shí)現(xiàn)。
簡(jiǎn)單神經(jīng)網(wǎng)絡(luò)(tf.layers / estimator api)(包含notebook和py源代碼)。使用TensorFlow'layers'和'estimator'API構(gòu)建一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)(如:Multi-layer Perceptron)來(lái)對(duì)MNIST數(shù)字?jǐn)?shù)據(jù)集進(jìn)行分類。
簡(jiǎn)單神經(jīng)網(wǎng)絡(luò)(Eager API)(包含notebook和py源代碼)。使用TensorFlow Eager API構(gòu)建一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)(如多層感知器)來(lái)對(duì)MNIST數(shù)字?jǐn)?shù)據(jù)集進(jìn)行分類。
卷積神經(jīng)網(wǎng)絡(luò)(包含notebook和py源代碼)。構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)以對(duì)MNIST數(shù)字?jǐn)?shù)據(jù)集進(jìn)行分類。 Raw TensorFlow實(shí)現(xiàn)。
卷積神經(jīng)網(wǎng)絡(luò)(tf.layers / estimator api)(包含notebook和py源代碼)。使用TensorFlow'layers'和'estimator'API構(gòu)建卷積神經(jīng)網(wǎng)絡(luò),對(duì)MNIST數(shù)字?jǐn)?shù)據(jù)集進(jìn)行分類。
遞歸神經(jīng)網(wǎng)絡(luò)(LSTM)(包含notebook和py源代碼)。構(gòu)建遞歸神經(jīng)網(wǎng)絡(luò)(LSTM)以對(duì)MNIST數(shù)字?jǐn)?shù)據(jù)集進(jìn)行分類。
雙向LSTM(包含notebook和py源代碼)。構(gòu)建雙向遞歸神經(jīng)網(wǎng)絡(luò)(LSTM)以對(duì)MNIST數(shù)字?jǐn)?shù)據(jù)集進(jìn)行分類。
動(dòng)態(tài)LSTM(包含notebook和py源代碼)。構(gòu)建一個(gè)遞歸神經(jīng)網(wǎng)絡(luò)(LSTM),執(zhí)行動(dòng)態(tài)計(jì)算以對(duì)不同長(zhǎng)度的序列進(jìn)行分類。
無(wú)監(jiān)督
自動(dòng)編碼器(包含notebook和py源代碼)。構(gòu)建自動(dòng)編碼器以將圖像編碼為較低維度并重新構(gòu)建它。
變分自動(dòng)編碼器((包含notebook和py源代碼)。構(gòu)建變分自動(dòng)編碼器(VAE),對(duì)噪聲進(jìn)行編碼和生成圖像。
GAN(Generative Adversarial Networks)(包含notebook和py源代碼)。構(gòu)建生成對(duì)抗網(wǎng)絡(luò)(GAN)以從噪聲生成圖像。
DCGAN(Deep Convolutional Generative Adversarial Networks)(包含notebook和py源代碼)。構(gòu)建深度卷積生成對(duì)抗網(wǎng)絡(luò)(DCGAN)以從噪聲生成圖像。
4 ?- 工具
保存和還原模型(包含notebook和py源代碼)。使用TensorFlow保存和還原模型。
Tensorboard ?- 圖形和損失可視化(包含notebook和py源代碼)。使用Tensorboard可視化計(jì)算圖并繪制損失。
Tensorboard ?- 高級(jí)可視化(包含notebook和py源代碼)。深入了解Tensorboard;可視化變量,梯度等......
5 ?- 數(shù)據(jù)管理
構(gòu)建圖像數(shù)據(jù)集(包含notebook和py源代碼)。使用TensorFlow數(shù)據(jù)隊(duì)列,從圖像文件夾或數(shù)據(jù)集文件構(gòu)建您自己的圖像數(shù)據(jù)集。
TensorFlow數(shù)據(jù)集API(包含notebook和py源代碼)。引入TensorFlow數(shù)據(jù)集API以優(yōu)化輸入數(shù)據(jù)管道。
6 ?- 多GPU
多GPU的基本操作(包含notebook和py源代碼)。在TensorFlow中引入多GPU的簡(jiǎn)單示例。
在多GPU上訓(xùn)練神經(jīng)網(wǎng)絡(luò)(包含notebook和py源代碼)。一個(gè)清晰簡(jiǎn)單的TensorFlow實(shí)現(xiàn),用于在多個(gè)GPU上訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)。
數(shù)據(jù)集
一些示例需要MNIST數(shù)據(jù)集進(jìn)行訓(xùn)練和測(cè)試。官方網(wǎng)站:http://yann.lecun.com/exdb/mnist/
二、Keras
資源地址:
https://github.com/erhwenkuo/deep-learning-with-keras-notebooks
資源介紹:
這個(gè)github的repository主要是ErhWen Kuo在學(xué)習(xí)Keras的一些記錄及練習(xí)。希望在學(xué)習(xí)過(guò)程中發(fā)現(xiàn)到一些好的信息與示例也可以對(duì)想要學(xué)習(xí)使用Keras來(lái)解決問(wèn)題的同學(xué)帶來(lái)幫助。這些notebooks主要是使用Python 3.6與Keras 2.1.1版本跑在一臺(tái)配置Nivida 1080Ti的Windows 10的機(jī)臺(tái)所產(chǎn)生的結(jié)果,但有些部份會(huì)參雜一些Tensorflow與其它的函式庫(kù)的介紹。
配置環(huán)境:
python 3.6以上,Keras 2.1.1
資源目錄:
0.圖象數(shù)據(jù)集/工具介紹
0.0: COCO API解說(shuō)與簡(jiǎn)單示例
0.1:土炮自制撲克牌圖象數(shù)據(jù)集
0.2:使用Pillow來(lái)進(jìn)行圖像處理
1.Keras API示例
1.0:使用圖像增強(qiáng)來(lái)進(jìn)行深度學(xué)習(xí)
1.1:如何使用Keras函數(shù)式API進(jìn)行深度學(xué)習(xí)
1.2:從零開(kāi)始構(gòu)建VGG網(wǎng)絡(luò)來(lái)學(xué)習(xí)Keras
1.3:使用預(yù)訓(xùn)練的模型來(lái)分類照片中的物體
1.4:使用圖像增強(qiáng)來(lái)訓(xùn)練小數(shù)據(jù)集
1.5:使用預(yù)先訓(xùn)練的卷積網(wǎng)絡(luò)模型
1.6:卷積網(wǎng)絡(luò)模型學(xué)習(xí)到什么的可視化
1.7:構(gòu)建自動(dòng)編碼器(Autoencoder)
1.8:序列到序列(Seq-to-Seq)學(xué)習(xí)介紹
1.9: One-hot編碼工具程序介紹
1.10:循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)介紹
1.11: LSTM的返回序列和返回狀態(tài)之間的區(qū)別
1.12:用LSTM來(lái)學(xué)習(xí)英文字母表順序
2.圖像分類(Image Classification)
2.0: Julia(Chars74K)字母圖像分類
2.1:交通標(biāo)志圖像分類
2.2:辛普森卡通圖像角色分類
2.3:時(shí)尚服飾圖像分類
2.4:人臉關(guān)鍵點(diǎn)辨識(shí)
2.5: Captcha驗(yàn)證碼分類
2.6: Mnist手寫(xiě)圖像分類(MLP)
2.7: Mnist手寫(xiě)圖像分類(CNN)
3.目標(biāo)檢測(cè)(Object Recognition)
3.0: YOLO目標(biāo)檢測(cè)算法概念與介紹
3.1: YOLOv2目標(biāo)檢測(cè)示例
3.2:浣熊(Racoon)檢測(cè)-YOLOv2模型訓(xùn)練與調(diào)整
3.3:浣熊(Racoon)檢測(cè)-YOLOv2模型的使用
3.4:袋鼠(Kangaroo)檢測(cè)-YOLOv2模型訓(xùn)練與調(diào)整
3.5:雙手(Hands)檢測(cè)-YOLOv2模型訓(xùn)練與調(diào)整
3.6:辛普森卡通圖象角色(Simpson)檢測(cè)-YOLOv2模型訓(xùn)練與調(diào)整
3.7: MS COCO圖象檢測(cè)-YOLOv2模型訓(xùn)練與調(diào)整
4.物體分割(Object Segmentation)
5.關(guān)鍵點(diǎn)檢測(cè)(Keypoint Detection)
6.圖象標(biāo)題(Image Caption)
7.人臉檢測(cè)識(shí)別(Face Detection/Recognition)
7.0:人臉檢測(cè)- OpenCV(Haar特征分類器)
7.1:人臉檢測(cè)- MTCNN(Multi-task Cascaded Convolutional Networks)
7.2:人臉識(shí)別-臉部檢測(cè)、對(duì)齊&裁剪
7.3:人臉識(shí)別-人臉部特征提取&人臉?lè)诸惼?/p>
7.4:人臉識(shí)別-轉(zhuǎn)換、對(duì)齊、裁剪、特征提取與比對(duì)
7.5:臉部關(guān)鍵點(diǎn)檢測(cè)(dlib)
7.6:頭部姿態(tài)(Head pose)估計(jì)(dlib)
8.自然語(yǔ)言處理(Natural Language Processing)
8.0:詞嵌入(word embeddings)介紹
8.1:使用結(jié)巴(jieba)進(jìn)行中文分詞
8.2: Word2vec詞嵌入(word embeddings)的基本概念
8.3:使用結(jié)巴(jieba)進(jìn)行歌詞分析
8.4:使用gensim訓(xùn)練中文詞向量(word2vec)
三、Pytorch
資源地址:
https://github.com/yunjey/pytorch-tutorial
資源介紹:
這個(gè)資源為深度學(xué)習(xí)研究人員提供了學(xué)習(xí)PyTorch的教程代碼大多數(shù)模型都使用少于30行代碼實(shí)現(xiàn)。 在開(kāi)始本教程之前,建議先看完P(guān)ytorch官方教程。
配置環(huán)境:
python 2.7或者3.5以上,pytorch 0.4
資源目錄:
1.基礎(chǔ)知識(shí)
PyTorch基礎(chǔ)知識(shí)
線性回歸
Logistic回歸
前饋神經(jīng)網(wǎng)絡(luò)
2.中級(jí)
卷積神經(jīng)網(wǎng)絡(luò)
深度殘差網(wǎng)絡(luò)
遞歸神經(jīng)網(wǎng)絡(luò)
雙向遞歸神經(jīng)網(wǎng)絡(luò)
語(yǔ)言模型(RNN-LM)
3.高級(jí)
生成性對(duì)抗網(wǎng)絡(luò)
變分自動(dòng)編碼器
神經(jīng)風(fēng)格轉(zhuǎn)移
圖像字幕(CNN-RNN)
4.工具
PyTorch中的TensorBoard
?總結(jié)
TensorFlow、Keras和Pytorch是目前深度學(xué)習(xí)的主要框架,也是入門(mén)深度學(xué)習(xí)必須掌握的三大框架,但是官方文檔相對(duì)內(nèi)容較多,初學(xué)者往往無(wú)從下手。本人從github里搜到三個(gè)非常不錯(cuò)的學(xué)習(xí)資源,并對(duì)資源目錄進(jìn)行翻譯,強(qiáng)烈建議初學(xué)者下載學(xué)習(xí),這些資源包含了大量的代碼示例(含數(shù)據(jù)集),個(gè)人認(rèn)為,只要把以上資源運(yùn)行一次,不懂的地方查官方文檔,很快就能理解和運(yùn)用這三大框架。
作者:黃海廣
請(qǐng)關(guān)注和分享↓↓↓?
機(jī)器學(xué)習(xí)初學(xué)者
QQ群:774999266或者654173748(二選一)
往期精彩回顧
機(jī)器學(xué)習(xí)簡(jiǎn)易入門(mén)-附推薦學(xué)習(xí)資料
機(jī)器學(xué)習(xí)初學(xué)者公眾號(hào)下載資源匯總(一)
黃海廣博士的github鏡像下載(機(jī)器學(xué)習(xí)及深度學(xué)習(xí)資源)
吳恩達(dá)老師的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)課程筆記打印版
機(jī)器學(xué)習(xí)小抄-(像背托福單詞一樣理解機(jī)器學(xué)習(xí))
首發(fā):深度學(xué)習(xí)入門(mén)寶典-《python深度學(xué)習(xí)》原文代碼中文注釋版及電子書(shū)
科研工作者的神器-zotero論文管理工具
機(jī)器學(xué)習(xí)的數(shù)學(xué)基礎(chǔ)
機(jī)器學(xué)習(xí)必備寶典-《統(tǒng)計(jì)學(xué)習(xí)方法》的python代碼實(shí)現(xiàn)、電子書(shū)及課件
總結(jié)
以上是生活随笔為你收集整理的强烈推荐的TensorFlow、Pytorch和Keras的样例资源(深度学习初学者必须收藏)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 革命性提升-宇宙最强的NLP预训练BER
- 下一篇: 首发:台大林轩田《机器学习基石》系列课程