from sklearn import datasets
import numpy as np
from keras.models import sequential
from keras.layers import dense
from sklearn.model_selection import cross_val_score
from sklearn.model_selection import kfold
# 匯入資料
dataset = datasets.load_iris(
)x = dataset.data
y = dataset.target
# 設定隨機種子
seed =
7np.random.seed(seed)
# 構建模型函式
defcreate_model
(optimizer=
'adam'
, init=
'glorot_uniform'):
# 構建模型 *輸入層(4個輸入)---> 隱藏層(4個神經元)---> 隱藏層(6個神經元)---> 輸出層(3個輸出)
model = sequential(
) model.add(dense(units=
4, activation=
'relu'
, input_dim=
4, kernel_initializer=init)
) model.add(dense(units=
6, activation=
'relu'
, kernel_initializer=init)
) model.add(dense(units=
3, activation=
'softmax'
, kernel_initializer=init)
)# 編譯模型
model.
compile
(loss=
'categorical_crossentropy'
, optimizer=optimizer, metrics=
['accuracy'])
return model
model = kerasclassifier(build_fn=create_model, epochs=
200, batch_size=
5, verbose=0)
kfold = kfold(n_splits=
10, shuffle=
true
, random_state=seed)
results = cross_val_score(model, x, y, cv=kfold)
print
('accuracy: %.2f%% (%.2f)'
%(results.mean()*
100, results.std())
)
多分類學習
多分類學習的基本思路是拆解法,即將多個二分類任務拆為若干個二分類任務求解。具體地就是,先對問題進行拆分,然後為每個拆分的二分類任務訓練乙個分類器 在測試時,對這些分類器的 結果進行整合以獲得最終的多分類結果。關鍵 多分類任務如何拆分。經典的為 一對一 one vs one,ovo 一對多 one v...
P4 使用keras進行多分類問題
今天使用keras中的fashionminst資料集進行的,是乙個關於識別服飾的多分類問題,新知識有 知識點匯入資料集 tf.keras.datasets.fashion mnist.load data 看plt.imshow train image 1 plt.show 看資料集尺寸 print ...
softmax多分類學習
softmax回歸從零開始實現 import torch import torchvision import numpy as np import sys import d2lzh pytorch as d2l 獲取資料 batch size 256 train iter,test iter d2l...