深度學習知識點總結(二)

2021-09-26 14:44:14 字數 1605 閱讀 2596

原**:

for dog,cat in zip(dp.dogs,dp.cats)[:1000]:

報錯:typeerror: 'zip' object is not subscriptable

解決方法:使用list包裝zip物件,如下,

for dog,cat in list(zip(dp.dogs,dp.cats))[:1000]:

在python3.x下使用如下**:

import cpickle as pk

會報如下錯誤:

importerror: no module named 'cpickle'

原因:python2有cpickle,但是在python3下,是沒有cpickle的;

解決辦法:將cpickle改為pickle即可,**如下:

import pickle as pk

解決方法

將training_data, validation_data, test_data = cpickle.load(f)

改為training_data, validation_data, test_data = cpickle.load(f,encoding='bytes')

1.sdk是什麼?

sdk:

概念:軟體開發工具包(sdk,全稱:software development kit)

一般都是一些軟體工程師為特定的軟體包、軟體框架、硬體平台、作業系統等建立應用軟體時的開發工具的集合。

通俗點是指由第三方服務商提供的實現軟體產品某項功能的工具包。

就相當於很多api和其他檔案的集合體,你可以用這個完成某乙個事情。

舉例子:

整個計算器產品可以看做是乙個sdk,它裡面有api集合(計算器),說明文件(說明書),以及一些其他檔案。

這個sdk的功能就是計算,可能要算什麼不確定,但是你可以通過這個sdk中的某個方法完成,實現你的目的。

2.api是什麼?

api:

一般是指一些預先定義的函式,目的是提**用程式與開發人員基於某軟體或硬體得以訪問一組例程的能力,而又無需訪問原始碼,或理解內部工作機制的細節。

其實就是別人已經寫好的可以實現特定功能的函式,而你只需要根據他提供好的介面,也就是呼叫他的方法,傳入他規定的引數,然後這個函式就會幫你實現這些功能。

一句話:sdk包含api

class是乙個物件導向的類,用來描述具有相同的屬性和方法的物件的集合,它定義了該集合中每個物件所共有的屬性和放啊。物件是類的例項。

類就相當於乙個模板,模板裡面可以包含很多函式(例如:def),函式裡面實現一些功能

舉例說明:

class mytestcase(unittest.testcase):#class 是關鍵字(表示要開始建立類了),mytestcase是新建的類名稱

def test_login(self): #test_login被稱為函式

url=「 #實現的功能

print(「begin」)

類在用的時候需要例項化,而函式再用的時候則不需要

在類中定義函式,類和函式都可作為乙個模組儲存。要呼叫類或函式只需要import這個類或函式所在模組名稱就可以了。

在乙個模組當然可以訪問另外乙個模組的類。

機器學習 深度學習知識點總結

近期準備秋招,想把之前學過的一些知識總結一下,盡量言簡意賅,主要圍繞機器學習和深度學習,部落格也擱置了一段時間了,以後會常常更新,記錄學習,寫部落格不僅能總結知識,還能在寫的過程中養成思考並查缺的習慣,其實有很多東西想寫的,包括ml dl cv,近期做的人臉識別,還有一些刷題心得等,近期開始慢慢寫吧...

深度學習知識點

1.epoch設定 epoch太小,可能欠擬合,但可能因為太慢不得不減小epoch epoch太大,會過擬合,導致準確率下降。如下圖,顯然epoch 2時準確率下降,已經過擬合了 2.學習率選擇 fast.ai中有乙個learn.lr find 找學習率 x 和loss y 的曲線中斜率最大的即可。...

深度學習知識點2

1.為什麼引入非線性啟用函式?引入非線性啟用函式,可以使深層的神經網路不再是線性的輸入組合,而是可以逼近任意函式,如果不使用啟用函式,在這種情況下每一層的輸出都是上一層輸入的線性函式,無論神經網路的有多少層,輸出的最終結果都是乙個線性組合,與沒有隱藏層的效果相差不多,也就成了最原始的感知機了。2.為...