文章目錄
- sklearn
-
-
- scikit-learn資料集
-
-
- `sklearn.datasets`:加載擷取流行資料集
- `sklearn`大資料集
- `sklearn`資料集傳回值介紹
-
- 檢視資料分布
-
-
- seaborn
-
- 資料集劃分api
- 交叉驗證
-
-
- 概念
- 目的
- api
-
-
- 機器學習
-
-
- 基本流程
-
-
- 特征預處理
-
- 歸一化
- 标準化
-
-
sklearn
scikit-learn資料集
sklearn.datasets
:加載擷取流行資料集
sklearn.datasets
:擷取小規模資料集,資料包含在datasets裡
datasets.load_*()
:擷取大規模資料,參數表示從網上下載下傳資料
datasets.fetch_*(data_home=None)
sklearn
大資料集
sklearn
參數: ~
sklearn.datasets.fetch_20newsgroups(data_home=None, subset='train')
:
subset
或
train
,
test
選擇要加載的資料集
all
sklearn
資料集傳回值介紹
sklearn
和
load
傳回的資料類型
fetch
datasets.base.Bunch(字典格式)
-
:特征資料數組,data
-
:标簽數組, 一維target
-
:資料描述DESCR
-
:特征名feature_names
-
:标簽名target_names
檢視資料分布
seaborn
seaborn.Implot()
:繪制二維散點圖,自動完成回歸拟合
-
:x、y分别代表橫縱坐标的别名sns,Implot()
-
:關聯到資料集data
-
:代表按照species,類别的分類顯示hue
-
:是否進行線性拟合fit_reg
資料集劃分api
sklearn.model_selection.train_test_split(arrays, *opetions)
-
:特征值x
-
:标簽值y
-
:劃分測試集的大小test_size
-
:随機種子,相同種子的采樣結果一樣random_state
-
:訓練集特征值、測試集特征值、訓練集标簽值、測試集标簽值return
交叉驗證
概念
訓練集:訓練集+驗證集

目的
為了讓評估模型更加準确可信, 不能提高準确率
api
sklearn.model_selection.GridSearchCV()
:對估計器的指定參數值進行詳盡搜尋
參數
-
:估計器對象estimator
-
:估計器參數param_grid
{'n_neighbors':[1,3,5...]}
-
:指定幾折交叉驗證cv
方法
-
:輸入訓練資料fit
-
:準确率score
結果分析
-
:交叉驗證中的最好結果best_score_
-
:最好的參數模型best_estimator_
-
:每次交叉驗證後的驗證集準确率和訓練集準确率結果cvesults
機器學習
基本流程
- 擷取資料集
- 資料處理【資料切割】
- 特征工程
- 機器學習
- 模型評估
特征預處理
定義:将原始資料變換映射在 (0, 1) 之間; 将資料轉化成機器能學習的資料 标準化、歸一化
歸一化
為何标準歸一化
特征的機關或大小相差較大,或某特征的方差比其他的特征大出幾個數量級,易影響目标結果 eg:
一列資料出現1和10000000
歸一化
歸一化api
sklearn.preprocession.MinMaxScaler(feature_range=(0,1)....)
:傳回轉型後的資料
MinMaxScaler.fit_transform(np.array)
标準化
api
将資料轉化在0-1之間
sklearn.preprocessing.StandarScaler()
:X為
StandardScaler.fit_transform(X)
資料格式
np.array