帶你少走彎路:強烈推薦的Keras快速入門資料和翻譯(可下載)

2021-02-20 機器學習初學者

上次寫了TensorFlow和PyTorch的快速入門資料,受到很多好評,讀者強烈建議我再出一個keras的快速入門路線,經過翻譯和搜索網上資源,我推薦4份入門資料,希望對大家有所幫助。

備註:另外兩個入門資料

TensorFlow的快速入門資料

PyTorch的快速入門資料


很負責任地說:看完這些資料,Keras基本入門了,接下來碰到問題能自己查資料解決了!(本文作者:黃海廣)

推薦資料

1.《python深度學習》及中文注釋的代碼

TensorFlow團隊的Josh Gordon推薦這本書,TF2.0基於Keras。如果你是一個深度學習新手,最好從這本書入手。當然這本書裡的代碼需要改一下,但非常簡單:

import keras -> from tensorflow import keras

python深度學習》由Keras之父、現任Google人工智慧研究員的弗朗索瓦•肖萊(François Chollet)執筆,詳盡介紹了用Python和Keras進行深度學習的探索實踐,包括計算機視覺、自然語言處理、產生式模型等應用。書中包含30多個代碼示例,步驟講解詳細透徹。

作者在github公布了代碼,代碼幾乎囊括了本書所有知識點。在學習完本書後,讀者將具備搭建自己的深度學習環境、建立圖像識別模型、生成圖像和文字等能力。但是有一個小小的遺憾:代碼的解釋和注釋是全英文的,即使英文水平較好的朋友看起來也很吃力。

本站認為,這本書和代碼是初學者入門深度學習及Keras最好的工具。

黃海廣對全部代碼做了中文解釋注釋,並下載了代碼所需要的一些數據集(尤其是「貓狗大戰」數據集),並對其中一些圖像進行了本地化,代碼全部測試通過。(請按照文件順序運行,代碼前後有部分關聯)。


以下代碼包含了全書80%左右的知識點,代碼目錄:

2.1: A first look at a neural network( 初識神經網絡)

3.5: Classifying movie reviews(電影評論分類:二分類問題)

3.6: Classifying newswires(新聞分類:多分類問題 )

3.7: Predicting house prices(預測房價:回歸問題)

4.4: Underfitting and overfitting( 過擬合與欠擬合)

5.1: Introduction to convnets(卷積神經網絡簡介)

5.2: Using convnets with small datasets(在小型數據集上從頭開始訓練一個卷積

5.3: Using a pre-trained convnet(使用預訓練的卷積神經網絡)

5.4: Visualizing what convnets learn(卷積神經網絡的可視化)

6.1: One-hot encoding of words or characters(單詞和字符的 one-hot 編碼)

6.1: Using word embeddings(使用詞嵌入)

6.2: Understanding RNNs(理解循環神經網絡)

6.3: Advanced usage of RNNs(循環神經網絡的高級用法)

6.4: Sequence processing with convnets(用卷積神經網絡處理序列)

8.1: Text generation with LSTM(使用 LSTM 生成文本)

8.2: Deep dream(DeepDream)

8.3: Neural style transfer( 神經風格遷移)

8.4: Generating images with VAEs(用變分自編碼器生成圖像)

8.5: Introduction to GANs(生成式對抗網絡簡介)

中文注釋與解釋如圖:

圖:代碼的中文注釋與解釋

作者的github:

https://github.com/fchollet/deep-learning-with-python-notebooks

中文注釋代碼:

https://github.com/fengdu78/machine_learning_beginner/tree/master/deep-learning-with-python-notebooks

2.keras的樣例代碼

資源地址:

https://github.com/erhwenkuo/deep-learning-with-keras-notebooks

資源介紹:

這個github的repository主要是ErhWen Kuo在學習Keras的一些記錄及練習。希望在學習過程中發現到一些好的信息與示例也可以對想要學習使用Keras來解決問題的同學帶來幫助。這些notebooks主要是使用Python 3.6與Keras 2.1.1版本跑在一臺配置Nivida 1080Ti的Windows 10的機臺所產生的結果,但有些部份會參雜一些Tensorflow與其它的函式庫的介紹。

配置環境:

python 3.6以上,Keras 2.1.1

資源目錄:

0.圖象數據集/工具介紹

0.0: COCO API解說與簡單示例

0.1:土炮自製撲克牌圖象數據集

0.2:使用Pillow來進行圖像處理

1.Keras API示例

1.0:使用圖像增強來進行深度學習

1.1:如何使用Keras函數式API進行深度學習

1.2:從零開始構建VGG網絡來學習Keras

1.3:使用預訓練的模型來分類照片中的物體

1.4:使用圖像增強來訓練小數據集

1.5:使用預先訓練的卷積網絡模型

1.6:卷積網絡模型學習到什麼的可視化

1.7:構建自動編碼器(Autoencoder)

1.8:序列到序列(Seq-to-Seq)學習介紹

1.9: One-hot編碼工具程序介紹

1.10:循環神經網絡(RNN)介紹

1.11: LSTM的返回序列和返回狀態之間的區別

1.12:用LSTM來學習英文字母表順序

2.圖像分類(Image Classification)

3.目標檢測(Object Recognition)

3.0: YOLO目標檢測算法概念與介紹

3.1: YOLOv2目標檢測示例

3.2:浣熊(Racoon)檢測-YOLOv2模型訓練與調整

3.3:浣熊(Racoon)檢測-YOLOv2模型的使用

3.4:袋鼠(Kangaroo)檢測-YOLOv2模型訓練與調整

3.5:雙手(Hands)檢測-YOLOv2模型訓練與調整

3.6:辛普森卡通圖象角色(Simpson)檢測-YOLOv2模型訓練與調整

3.7: MS COCO圖象檢測-YOLOv2模型訓練與調整

4.物體分割(Object Segmentation)

5.關鍵點檢測(Keypoint Detection)

6.圖象標題(Image Caption)

7.人臉檢測識別(Face Detection/Recognition)

7.0:人臉檢測- OpenCV(Haar特徵分類器)

7.1:人臉檢測- MTCNN(Multi-task Cascaded Convolutional Networks)

7.2:人臉識別-臉部檢測、對齊&裁剪

7.3:人臉識別-人臉部特徵提取&人臉分類器

7.4:人臉識別-轉換、對齊、裁剪、特徵提取與比對

7.5:臉部關鍵點檢測(dlib)

7.6:頭部姿態(Head pose)估計(dlib)

8.自然語言處理(Natural Language Processing)

8.0:詞嵌入(word embeddings)介紹

8.1:使用結巴(jieba)進行中文分詞

8.2: Word2vec詞嵌入(word embeddings)的基本概念

8.3:使用結巴(jieba)進行歌詞分析

8.4:使用gensim訓練中文詞向量(word2vec)

3.keras的官方樣例

資源地址:

https://github.com/keras-team/keras/tree/master/examples

資源介紹:

這個github是Keras的官方例子,包含了CV、NLP、生成模型以及一些通用的函數代碼,可以說是教科書式的,拿過來改下輸入輸出就能用,非常方便。

4.keras的預訓練模型

資源地址:

https://github.com/fchollet/deep-learning-models

這個倉庫是keras的作者建立的,包含的預訓練的 Keras 模型:

VGG16

VGG19

ResNet50

Inception v3

CRNN for music tagging

樣例說明:

圖像分類代碼

from resnet50 import ResNet50
from keras.preprocessing import image
from imagenet_utils import preprocess_input, decode_predictions

model = ResNet50(weights='imagenet')

img_path = 'elephant.jpg'
img = image.load_img(img_path, target_size=(224, 224))
x = image.img_to_array(img)
x = np.expand_dims(x, axis=0)
x = preprocess_input(x)

preds = model.predict(x)
print('Predicted:', decode_predictions(preds))

總結

看完這些資料,Keras基本入門了,接下來碰到問題能自己查資料解決了!

關於本站

「機器學習初學者」公眾號由是黃海廣博士創建,黃博個人知乎粉絲22000+,github排名全球前110名(32000+)。本公眾號致力於人工智慧方向的科普性文章,為初學者提供學習路線和基礎資料。原創作品有:吳恩達機器學習個人筆記、吳恩達深度學習筆記等。

往期精彩回顧

備註:加入本站微信群或者qq群,請回復「加群」加入知識星球(4300+用戶,ID:92416895),請回復「知識星球

相關焦點

  • 帶你少走彎路:強烈推薦的Pytorch快速入門資料和翻譯(可下載)
    ,受到很多好評,讀者強烈建議我出一個pytorch的快速入門路線,經過翻譯和搜索網上資源,我推薦3份入門資料,希望對大家有所幫助。備註:TensorFlow的快速入門資料很負責任地說:看完這些資料,Pytorch基本入門了,接下來碰到問題能自己查資料解決了!
  • 帶你少走彎路:強烈推薦的TensorFlow快速入門資料和翻譯(可下載)
    本文根據群友的要求,整理了4份TensorFlow的入門資料,很負責任地說:看完這些資料,TensorFlow基本入門了,接下來碰到問題能自己查資料解決了!推薦一位大神寫的TF2.0的樣例代碼,推薦參考。
  • 10分鐘入門Keras : 兩種快速模型搭建方式
    對於更複雜的結構,你應該使用 Keras 函數式 API,它允許構建任意的神經網絡。model.compile(loss=keras.losses.categorical_crossentropy, optimizer=keras.optimizers.SGD(lr=0.01, momentum=0.9, nesterov=True))現在,你可以批量地在訓練數據上進行迭代了:model.fit
  • 深度學習第17講:keras入門和快速上手指南
    Tensorflow實現深度學習筆記13:Tensorflow實戰之手寫mnist手寫數字識別深度學習筆記14:CNN經典論文研讀之Le-Net5及其Tensorflow實現深度學習筆記15:ubuntu16.04 下深度學習開發環境搭建與配置深度學習筆記16:CNN經典論文研讀之AlexNet及其Tensorflow實現
  • C語言入門書籍推薦和下載,小白自學經典
    作為一個 80 後老程式設計師,我想用我的經驗給大家推薦幾本經典書籍,讓小白少走彎路。1) 《C語言小白變怪獸》既適合對計算機一竅不通的小白,也適合有編程基礎的讀者,還可以用來進階。這本書語言幽默,生動形象,通俗易懂,給人耳目一新的感覺,但是這本書非常淺顯,並不深入,所以適合純小白入門,找到門以後也就扔了。這本書著重於語言藝術,針對純小白下足了功夫,小學生坐在馬桶上都能學會編程。說實話,我非常欣賞作者的創意和用心,國內像這樣寫書的少之又少,入門的書就應該是這個樣子。
  • 帶你少走彎路:五篇文章學完吳恩達機器學習
    作者:黃海廣[2]時間不多的朋友可以按照以下五篇文章的筆記和作業代碼(原課程作業是 OCTAVE的,這裡是復現的 Python 代碼)進行學習,快速入門機器學習,避免走彎路。可以收藏下這篇文章,以後用碎片時間在手機上學習機器學習。
  • 首發:適合初學者入門人工智慧的路線及資料下載
    本文為AI入門提供了一個簡易的學習路線,並提供了代碼和數據集下載。(黃海廣)一、前言AI以及機器學習入門,初學者遇到的問題非常多,但最大的問題就是:資料太多!!!看不完!!!不知道如何取捨!!!人的精力有限!!!
  • 從零開始深度學習第17講:keras入門及快速上手指南
    Tensorflow 雖然很強大,但語法和使用便利性上對於新手來說並不是那麼的友好,所以到這裡筆者需要給大家介紹 keras 了。      keras 是一款使用純 python 編寫的神經網絡 API,使用 keras 能夠快速實現你的深度學習方案,所以 keras 有著為快速試驗而生的美稱。ker
  • 好書推薦|走向TensorFlow 2.0:深度學習應用編程快速入門
    —文末附本書電子版下載地址
  • 推薦|機器學習入門方法和資料合集
    近些天在微信群裡經常看小夥伴問到「機器學習如何入門,看哪些資料 ?」,於是乎想根據筆者學習兩年多的學習經驗,介紹下機器學習如何入門,該看哪些資料?下面我將從以下幾個方面整理機器學習入門的資源:(1)語言:機器學習中常用的語言。
  • Python 深度學習,你的 Keras 準備好了嗎?
    該書是由 Keras 作者寫的,所以全書基本圍繞著 Keras 講深度學習的各種實現,從 CNN,RNN 到 GAN 等,偏入門,但理論和實戰部分都講的還不錯,承載著很多作者對深度學習整體性的思考。因為在實際項目開發中,我們通常會根據自己的需求去下載各種相應的框架庫,但是可能每個項目使用的框架庫並不一樣,或使用框架的版本不一樣,這樣需要我們根據需求不斷的更新或卸載相應的庫,管理起來相當麻煩。所以通過創建虛擬環境,相當於為不同的項目創建一塊獨立的空間,在這個空間裡,你安裝任何庫和框架都是獨立的,不會影響到外部環境。
  • 韓語入門學習資料下載
    韓語下載--外語資料--外語愛好者網站 http://www.ryedu.net/Soft/hanyu/Index.html
  • 教程 | 一招教你使用 tf.keras 和 eager execution 解決複雜問題
    (生成對抗網絡)能翻譯句子嗎?(神經網絡機器翻譯)能根據圖片生成標題嗎?(圖片標註)在暑期實習期間,我使用 TensorFlow 的兩個最新 API(tf.keras 和 eager execution)開發了這些示例,以下是分享內容。希望你們能覺得它們有用,有趣!
  • TensorFlow 1.9 新增 tf.keras 官方入門教程(Keras與TF的深度集成)
    好消息是Keras的許多核心功能已經融入了原生的TensorFlow(tf.keras),TensorFlow 1.9新增tf.keras官方入門文檔,介紹了tf.keras的使用。這幾天打開TensorFlow的官方教程頁(https://www.tensorflow.org/tutorials/),會發現教程頁中給出的DEMO變成了基於tf.keras的教程。
  • Keras 教程: Python 深度學習終極入門指南
    開始之前推薦的預備知識本指南推薦的預備知識有:為了能快速開始, 我們假設你已經具備了這方面的知識.為什麼要用 Keras?相反地, 本教程旨在帶你從零到一, 儘量”無痛”地建立卷積神經網絡!如果你有興趣掌握深度學習背後的理論, 強烈推薦史丹福大學的這門課:開始前的小提示:我們試著讓教程儘可能流線化, 這意味著任何一個主題, 我們都不會太深究細節. 萬一你想要學習關於一個函數或模塊更多的知識, 同時打開 Keras 文檔 很有幫助.
  • Keras系列(一):介紹
    這裡打一個不恰當的比方,前者相當於tensorflow等後端,後者類比於keras,街機模擬器(keras)把一些常用必殺技(tensorflow等後端中常用的模型、操作等)進行了封裝,讓我們在遊戲(深度學習)的世界裡快樂玩耍。好吧,鐵柱好像暴露了年齡和癖好,以前可沒少挨父母揍啊
  • Keras入門系列教程:兩分鐘構建你的第一個神經網絡模型
    Keras主要用於快速原型設計,高級研究和生產中,具有三個主要優勢:用戶友好的Keras提供一致而簡潔的API, 能夠極大減少一般應用下用戶的工作量,同時,Keras提供清晰和具有實踐意義的bug反饋。
  • SPSS軟體下載、安裝與快速入門
    學習任何東西,都有一個入門的過程。
  • 可能是最通俗易懂的Python入門資料整理和最優學習路線推薦.
    Python 這門語言是學習數據科學和人工智慧始終繞不開的一個基礎知識和技能點,我們只有點亮這個技能點才能更好的開展我們的宏圖霸業(有網友說想用Python實現自動賺錢)。廢話不多說,我們直接進入正題。在這篇文章裡,我會把所涉及的資料分為三個部分。
  • 【Python環境】python的nltk中文使用和學習資料匯總幫你入門提高
    http://zhidao.baidu.com/question/567881533.html2. nltk初步使用入門資料2.1 PYTHON自然語言處理中文翻譯 NLTK 中文版.pdf http://ishare.iask.sina.com.cn/f/23996193.html 中文版的《PYTHON自然語言處理》 這是一個好書,強烈推薦。