1.Intro to Deep Learning and Computer Vision
阿新 • • 發佈:2018-12-11
Intro
這是Kaggle深度學習教育課程的第一課。
在本課程結束後,您將瞭解卷積。 卷積是計算機視覺(以及許多其他應用程式)中深度學習模型的基本構建塊。 之後,我們將很快開始使用世界一流的深度學習模型。
Lesson
[1]
from IPython.display import YouTubeVideo
YouTubeVideo('OVbiVIChkVY', width=800, height=450)
Your Turn
看完視訊後,進行一些關於卷積的動手實踐。
Exercise:Convolutions for Computer Vision
Exercise Introductin
為了構建和測試你對卷積的直覺,你將設計一個垂直線檢測器。 我們將它應用於影象的每個部分,以建立一個新的張量,顯示有垂直線的位置。
執行以下4步:
- 複製這篇筆記;
- 執行完此筆記並向下滾動以檢視輸出,您將看到原始影象,以及我們將水平線檢測器應用於影象時獲得的影象示例。
- 填寫vertical_line_conv的程式碼單元格。 您將不得不考慮列表中的哪些數字將建立垂直線檢測器。 執行此單元格。
- 將vertical_line_conv新增到conv_list。 執行該單元格。 您將在水平線過濾器下方看到垂直線過濾器的輸出。 您還將看到一個列印提示,表明您是否正確。
一旦完成,您就可以瞭解深度卷積模型,這是現代計算機視覺突破的關鍵。
Import Utility Functions
我們將使用一些小的實用程式函式來載入原始影象資料,使結果視覺化並給出你的回答等提示。不要擔心這些,但執行下一個單元格來載入實用程式函式。
【1】
from learntools.deep_learning.exercise_1 import load_my_image, apply_conv_to_image, show, print_hints
Example Convolution:Horizontal Line Detector
這裡有一個你在視訊裡看到的卷積例子,你不需要去修改它。
【2】
# Detects bright pixels over dark pixels. horizontal_line_conv = [[1, 1], [-1, -1]]
Your Turn:Vertical Line Detector
用數字替換問號標記以形成垂直線檢測器,並取消註釋下面單元格中的兩行程式碼。
【3】
#vertical_line_conv = [[?, -?],
# [?, ?]]
一旦你在程式碼單元建立了vertical_line_conv,把它作為一個附加單元加到conv_list,然後執行以下程式碼單元:
【4】
conv_list = [horizontal_line_conv]
original_image = load_my_image()
print("Original image")
show(original_image)
for conv in conv_list:
filtered_image = apply_conv_to_image(conv, original_image)
print("Output: ")
show(filtered_image)
Original image
----------------------------
Filter:
[[ 1 1]
[-1 -1]]
Output:
在上方,您將看到水平線過濾器的輸出以及您新增的過濾器。 如果你做對了,過濾器的輸出將如下所示。
Keep Going
現在,您已準備好將卷積結合到強大的模型中。 這些模型很有趣,所以繼續前進。