-
Matplotlib
查看全部 -
MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設(shè)計(jì)典范,用一種業(yè)務(wù)邏輯、數(shù)據(jù)、界面顯示分離的方法組織代碼,將業(yè)務(wù)邏輯聚集到一個(gè)部件里面,在改進(jìn)和個(gè)性化定制界面及用戶交互的同時(shí),不需要重新編寫業(yè)務(wù)邏輯。MVC被獨(dú)特的發(fā)展起來(lái)用于映射傳統(tǒng)的輸入、處理和輸出功能在一個(gè)邏輯的圖形化用戶界面的結(jié)構(gòu)中。
簡(jiǎn)單的說(shuō), MVC 是一種軟件開(kāi)發(fā)的方法,它把代碼的定義和數(shù)據(jù)訪問(wèn)的方法(模型)與請(qǐng)求邏輯 (控制器)還有用戶接口(視圖)分開(kāi)來(lái)。?這種設(shè)計(jì)模式關(guān)鍵的優(yōu)勢(shì)在于各種組件都是?松散結(jié)合?的。這樣,每個(gè)由 Django驅(qū)動(dòng) 的Web應(yīng)用都有著明確的目的,并且可獨(dú)立更改而不影響到其它的部分。 比如,開(kāi)發(fā)者 更改一個(gè)應(yīng)用程序中的 URL 而不用影響到這個(gè)程序底層的實(shí)現(xiàn)。 設(shè)計(jì)師可以改變 HTML 頁(yè)面 的樣式而不用接觸 Python 代碼。 數(shù)據(jù)庫(kù)管理員可以重新命名數(shù)據(jù)表并且只需更改一個(gè)地方,無(wú)需從一大堆文件中進(jìn)行查找和替換
簡(jiǎn)單的說(shuō), MVC 是一種軟件開(kāi)發(fā)的方法,它把代碼的定義和數(shù)據(jù)訪問(wèn)的方法(模型)與請(qǐng)求邏輯 (控制器)還有用戶接口(視圖)分開(kāi)來(lái)。?這種設(shè)計(jì)模式關(guān)鍵的優(yōu)勢(shì)在于各種組件都是?松散結(jié)合?的。這樣,每個(gè)由 Django驅(qū)動(dòng) 的Web應(yīng)用都有著明確的目的,并且可獨(dú)立更改而不影響到其它的部分。 比如,開(kāi)發(fā)者 更改一個(gè)應(yīng)用程序中的 URL 而不用影響到這個(gè)程序底層的實(shí)現(xiàn)。 設(shè)計(jì)師可以改變 HTML 頁(yè)面 的樣式而不用接觸 Python 代碼。 數(shù)據(jù)庫(kù)管理員可以重新命名數(shù)據(jù)表并且只需更改一個(gè)地方,無(wú)需從一大堆文件中進(jìn)行查找和替換
查看全部 -
sigmoid函數(shù)
查看全部 -
交叉檢驗(yàn),在數(shù)據(jù)量較少的時(shí)候防止過(guò)擬合出現(xiàn)的方法。
將訓(xùn)練集劃分為n部分,取其中一個(gè)為驗(yàn)證集,n-1個(gè)為測(cè)試集。循環(huán)n次。保證所有的部分都充當(dāng)了一次驗(yàn)證集。將最后分?jǐn)?shù)取平均值
查看全部 -
換了優(yōu)化器:SGD? 變成了RMSprop
優(yōu)化器的含義?
查看全部 -
線性與非線性之間多了一個(gè)激活函數(shù)
不同的激活函數(shù)效果不同
relu的結(jié)果比較“生硬”
tanh的結(jié)果繪制的曲線能夠更好的貼合
softmax: 在多分類中常用的激活函數(shù),是基于邏輯回歸的。
Softplus:softplus(x)=log(1+e^x),近似生物神經(jīng)激活函數(shù),最近出現(xiàn)的。
Relu:近似生物神經(jīng)激活函數(shù),最近出現(xiàn)的。
tanh:雙曲正切激活函數(shù),也是很常用的。
sigmoid:S型曲線激活函數(shù),最常用的。
hard_sigmoid:基于S型激活函數(shù)。
linear:線性激活函數(shù),最簡(jiǎn)單的。
查看全部 -
神經(jīng)網(wǎng)絡(luò)的進(jìn)化
查看全部 -
線性神經(jīng)網(wǎng)絡(luò)與激活函數(shù)
激活函數(shù)作用是優(yōu)化
查看全部 -
感知器數(shù)學(xué)模型
查看全部 -
感知器-最小神經(jīng)元
查看全部 -
import matplotlib.pyplot as plt?
index=27
plt.imshow(x_train[index])
查看全部 -
1.# 交叉檢驗(yàn)
k = 4
num_val_samples = len(train_data) // k ???# //得到的是一個(gè)整數(shù)
num_epochs = 100
all_scores = [] ?# 得分
?
# 進(jìn)行循環(huán)的交叉檢驗(yàn)
for i in range(k):
????# 首先把驗(yàn)證集取出來(lái),要取出驗(yàn)證集,需要得到驗(yàn)證集兩個(gè)邊界的大小
????val_data = train_data[i * num_val_samples: (i + 1) * num_val_samples]
????val_targets = train_target[i * num_val_samples: (i + 1) * num_val_samples]
????
????# 構(gòu)造訓(xùn)練集,因?yàn)槲覀兊挠?xùn)練集本身是不連續(xù)的,所以需要用個(gè)函數(shù)連起來(lái)
????partial_train_data = np.concatenate(
????????[train_data[: i * num_val_samples],
????????train_data[(i + 1) * num_val_samples:]],
????????axis=0)
????partial_train_targets = np.concatenate(
????????[train_target[: i * num_val_samples],
????????train_target[(i + 1) * num_val_samples:]],
????????axis=0)
????
????# 使用模型,每進(jìn)行一折,都要重新構(gòu)造一個(gè)模型出來(lái)
????model = build_model()
????model.fit(partial_train_data, partial_train_targets, epochs=num_epochs, batch_size=1, verbose=0) ????# 如果輸出的話行數(shù)有101*100*4,輸出太多,所以暫時(shí)不輸出
????
????val_mse, val_mae = model.evaluate(val_data, val_targets, verbose=0)
????
????all_scores.append(val_mae)
????print('第', i + 1, '折,MSE:', val_mse, 'MAE:',val_mae)
查看全部
舉報(bào)