import pickle import os import numpy as np # # # 引入數據集,sklearn包含衆多數據集 # from sklearn import datasets # # 將數據分爲測試集和訓練集 # from sklearn.model_selection import train_test_split # #SVM # from sklearn import svm # #森林迴歸 # from sklearn.ensemble import RandomForestClassifier # # 利用鄰近點方式訓練數據 # from sklearn.neighbors import KNeighborsClassifier # # # 引入數據,本次導入鳶尾花數據,iris數據包含4個特徵變量 # iris = datasets.load_iris() # # 特徵變量 # iris_X = iris.data # # print(iris_X) # print('特徵變量的長度', len(iris_X)) # # 目標值 # iris_y = iris.target # print('鳶尾花的目標值', iris_y) # # 利用train_test_split進行訓練集和測試機進行分開,test_size佔30% # X_train, X_test, y_train, y_test = train_test_split(iris_X, iris_y, test_size=0.3) # # 我們看到訓練數據的特徵值分爲3類 # # print(y_train) # ''' # [1 1 0 2 0 0 0 2 2 2 1 0 2 0 2 1 0 1 0 2 0 1 0 0 2 1 2 0 0 1 0 0 1 0 0 0 0 # 2 2 2 1 1 1 2 0 2 0 1 1 1 1 2 2 1 2 2 2 0 2 2 2 0 1 0 1 0 0 1 2 2 2 1 1 1 # 2 0 0 1 0 2 1 2 0 1 2 2 2 1 2 1 0 0 1 0 0 1 1 1 0 2 1 1 0 2 2] # ''' # # 訓練數據 # # 引入訓練方法 # knn = svm.SVC() # # 進行填充測試數據進行訓練 # knn.fit(X_train, y_train) # # params = knn.get_params() # print(params) # ''' # {'algorithm': 'auto', 'leaf_size': 30, 'metric': 'minkowski', # 'metric_params': None, 'n_jobs': None, 'n_neighbors': 5, # 'p': 2, 'weights': 'uniform'} # # ''' # # score = knn.score(X_test, y_test) # print("預測得分爲:%s" % score) # ''' # 預測得分爲:0.9555555555555556 # [1 2 1 1 2 2 1 0 0 0 0 1 2 0 1 0 2 0 0 0 2 2 0 2 2 2 2 1 2 2 2 1 2 2 1 2 0 # 2 1 2 1 1 0 2 1] # [1 2 1 1 2 2 1 0 0 0 0 1 2 0 1 0 2 0 0 0 1 2 0 2 2 2 2 1 1 2 2 1 2 2 1 2 0 # 2 1 2 1 1 0 2 1] # ''' # # # 預測數據,預測特徵值 # print(knn.predict(X_test)) # ''' # [0 2 2 2 2 0 0 0 0 2 2 0 2 0 2 1 2 0 2 1 0 2 1 0 1 2 2 0 2 1 0 2 1 1 2 0 2 # 1 2 0 2 1 0 1 2] # ''' # # 打印真實特徵值 # print(y_test) # ''' # [1 2 2 2 2 1 1 1 1 2 1 1 1 1 2 1 1 0 2 1 1 1 0 2 0 2 0 0 2 0 2 0 2 0 2 2 0 # 2 2 0 1 0 2 0 0] # # ''' # # # # save model in path # def save_model(path, model): # f = open(path, 'wb') # pickle.dump(model, f) # f.close() # # save_model(os.path.join('H:\wamp64\www\python', 'knn.pickle'), knn) heat_f = open('H:\wamp64\www\python\knn.pickle', 'rb') reg_tree_cer = pickle.load(heat_f) # 做出預測 print('開始預測...') X_heat = [ 5.1, 3.5, 1.4, 0.2] # X_heat = [ 5.5, 3.2, 3, 0.8] X_heat = [ 10, 2, 6, 2.8] x_new = np.array(X_heat).reshape(1, -1) result_heat = reg_tree_cer.predict(x_new) print(result_heat) from sklearn import datasets import matplotlib.pyplot as plt from sklearn import preprocessing data = [[0, 0], [1, 0], [-1, 1], [1, 2]] scalerstd = preprocessing.StandardScaler().fit(data) print(scalerstd.mean_) print(scalerstd.var_)
sklearn 學習筆記1
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.