-
Notifications
You must be signed in to change notification settings - Fork 4
/
script_09.py
43 lines (43 loc) · 1.52 KB
/
script_09.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# importa os dataset que vem com o sklearn
from sklearn import datasets
# importa o pandas como pd
import pandas as pd
# Carrega o digits dataset na variável digits
digits = datasets.load_digits()
# Transforma os dados em pandas dataframe
data_x = pd.DataFrame(digits.data)
target_y = pd.DataFrame(digits.target)
#Importa o svm(support vector machine) do sklearn
from sklearn import svm
# Instancia um objeto svm em clf
clf = svm.SVC(gamma=0.001, C=100.)
#---------- Dividinda a base (Treino e Teste)
test_size = 0.33
seed = 7
# Importa do sklearn o train_test_split
from sklearn.model_selection import train_test_split
#Divisão do digits dataset em treino e teste
X_train, X_test, Y_train, Y_test = train_test_split(data_x, target_y, test_size = test_size, random_state = seed)
#-------- Treinando o modelo -------------
# Treina o modelo clf
clf.fit(X_train, Y_train)
# Prevê o valor do registro 472 do dígito do dataset, que é um 7.
clf.predict(data_x[:][472:473])
# Vamos conferir se o modelo acertou com
target_y[:][472:473]
# Mostra o quanto o modelo é acertivo.
clf.score(X_test, Y_test)
#------ Salvando o modelo -----------------
# importa o pickle
import pickle
# Define o nome do arquivo em disco que irá
# guardar o nosso modelo
filename = 'predict_digits_model.sav'
# salva o modelo no disco
pickle.dump(clf, open(filename, 'wb'))
# Carregando o modelo do disco
loaded_model = pickle.load(open(filename, 'rb'))
# Atribui a variável result o score do modelo
result = loaded_model.score(X_test, Y_test)
#Imprime o resultado
print(result)