欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

對(duì)python中數(shù)據(jù)集劃分函數(shù)StratifiedShuffleSplit的使用詳解

 更新時(shí)間:2018年12月11日 14:29:58   作者:凍雞hhhh  
今天小編就為大家分享一篇對(duì)python中數(shù)據(jù)集劃分函數(shù)StratifiedShuffleSplit的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

文章開(kāi)始先講下交叉驗(yàn)證,這個(gè)概念同樣適用于這個(gè)劃分函數(shù)

1.交叉驗(yàn)證(Cross-validation)

交叉驗(yàn)證是指在給定的建模樣本中,拿出其中的大部分樣本進(jìn)行模型訓(xùn)練,生成模型,留小部分樣本用剛建立的模型進(jìn)行預(yù)測(cè),并求這小部分樣本的預(yù)測(cè)誤差,記錄它們的平方加和。這個(gè)過(guò)程一直進(jìn)行,直到所有的樣本都被預(yù)測(cè)了一次而且僅被預(yù)測(cè)一次,比較每組的預(yù)測(cè)誤差,選取誤差最小的那一組作為訓(xùn)練模型。

下圖所示

python StratifiedShuffleSplit的使用

2.StratifiedShuffleSplit函數(shù)的使用

官方文檔

用法:

from sklearn.model_selection import StratifiedShuffleSplit
StratifiedShuffleSplit(n_splits=10,test_size=None,train_size=None, random_state=None)

2.1 參數(shù)說(shuō)明

參數(shù) n_splits是將訓(xùn)練數(shù)據(jù)分成train/test對(duì)的組數(shù),可根據(jù)需要進(jìn)行設(shè)置,默認(rèn)為10

參數(shù)test_size和train_size是用來(lái)設(shè)置train/test對(duì)中train和test所占的比例。例如:

1.提供10個(gè)數(shù)據(jù)num進(jìn)行訓(xùn)練和測(cè)試集劃分

2.設(shè)置train_size=0.8 test_size=0.2

3.train_num=num*train_size=8 test_num=num*test_size=2

4.即10個(gè)數(shù)據(jù),進(jìn)行劃分以后8個(gè)是訓(xùn)練數(shù)據(jù),2個(gè)是測(cè)試數(shù)據(jù)

注*:train_num≥2,test_num≥2 ;test_size+train_size可以小于1*

參數(shù) random_state控制是將樣本隨機(jī)打亂

2.2 函數(shù)作用描述

1.其產(chǎn)生指定數(shù)量的獨(dú)立的train/test數(shù)據(jù)集劃分?jǐn)?shù)據(jù)集劃分成n組。

2.首先將樣本隨機(jī)打亂,然后根據(jù)設(shè)置參數(shù)劃分出train/test對(duì)。

3.其創(chuàng)建的每一組劃分將保證每組類比比例相同。即第一組訓(xùn)練數(shù)據(jù)類別比例為2:1,則后面每組類別都滿足這個(gè)比例

2.3 具體實(shí)現(xiàn)

from sklearn.model_selection import StratifiedShuffleSplit
import numpy as np
X = np.array([[1, 2], [3, 4], [1, 2], [3, 4],
 [1, 2],[3, 4], [1, 2], [3, 4]])#訓(xùn)練數(shù)據(jù)集8*2
y = np.array([0, 0, 1, 1,0,0,1,1])#類別數(shù)據(jù)集8*1

ss=StratifiedShuffleSplit(n_splits=5,test_size=0.25,train_size=0.75,random_state=0)#分成5組,測(cè)試比例為0.25,訓(xùn)練比例是0.75

for train_index, test_index in ss.split(X, y):
 print("TRAIN:", train_index, "TEST:", test_index)#獲得索引值
 X_train, X_test = X[train_index], X[test_index]#訓(xùn)練集對(duì)應(yīng)的值
 y_train, y_test = y[train_index], y[test_index]#類別集對(duì)應(yīng)的值

運(yùn)行結(jié)果:

python StratifiedShuffleSplit的使用

從結(jié)果看出,1.訓(xùn)練集是6個(gè),測(cè)試集是2,與設(shè)置的所對(duì)應(yīng);2.五組中每組對(duì)應(yīng)的類別比例相同

以上這篇對(duì)python中數(shù)據(jù)集劃分函數(shù)StratifiedShuffleSplit的使用詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解python opencv、scikit-image和PIL圖像處理庫(kù)比較

    詳解python opencv、scikit-image和PIL圖像處理庫(kù)比較

    這篇文章主要介紹了詳解python opencv、scikit-image和PIL圖像處理庫(kù)比較,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 如何使用repr調(diào)試python程序

    如何使用repr調(diào)試python程序

    這篇文章主要介紹了如何使用repr調(diào)試python程序,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • 分享Python中四個(gè)不常見(jiàn)的小技巧

    分享Python中四個(gè)不常見(jiàn)的小技巧

    這篇文章主要介紹了分享Python中四個(gè)不常見(jiàn)的小技巧,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • python geopandas讀取、創(chuàng)建shapefile文件的方法

    python geopandas讀取、創(chuàng)建shapefile文件的方法

    shapefile是GIS中非常重要的一種數(shù)據(jù)類型,在ArcGIS中被稱為要素類(Feature Class),主要包括點(diǎn)(point)、線(polyline)和多邊形(polygon),本文重點(diǎn)給大家介紹python geopandas讀取、創(chuàng)建shapefile文件的方法,需要的朋友參考下吧
    2021-06-06
  • 我們?yōu)槭裁匆獪p少Python中循環(huán)的使用

    我們?yōu)槭裁匆獪p少Python中循環(huán)的使用

    這篇文章主要介紹了我們?yōu)槭裁匆獪p少Python中循環(huán)的使用,我將闡述 Python 提供的一些簡(jiǎn)單但是非常有用的結(jié)構(gòu),一些小技巧以及一些我在數(shù)據(jù)科學(xué)工作中遇到的案例。我將討論 Python 中的 for 循環(huán),以及如何盡量避免使用它們,需要的朋友可以參考下
    2019-07-07
  • Python并行計(jì)算庫(kù)Joblib高效使用指北

    Python并行計(jì)算庫(kù)Joblib高效使用指北

    Joblib是用于高效并行計(jì)算的Python開(kāi)源庫(kù),其提供了簡(jiǎn)單易用的內(nèi)存映射和并行計(jì)算的工具,以將任務(wù)分發(fā)到多個(gè)工作進(jìn)程中,這篇文章主要介紹了Python并行計(jì)算庫(kù)Joblib使用指北,需要的朋友可以參考下
    2024-08-08
  • 深入探究Django中的Session與Cookie

    深入探究Django中的Session與Cookie

    周末小閑在家研究了下django的 cookie 和 session,所以下面這篇文章主要給大家深入地介紹了關(guān)于Django中Session與Cookie的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面跟著小編來(lái)一起看看吧。
    2017-07-07
  • python 中的9個(gè)實(shí)用技巧,助你提高開(kāi)發(fā)效率

    python 中的9個(gè)實(shí)用技巧,助你提高開(kāi)發(fā)效率

    這篇文章主要介紹了python 中的9個(gè)實(shí)用技巧,幫助大家提高python開(kāi)發(fā)時(shí)的效率,感興趣的朋友可以了解下
    2020-08-08
  • Python合并列表、字典、字符串、CSV文件、多文件技巧

    Python合并列表、字典、字符串、CSV文件、多文件技巧

    在 Python 中,有多種方法可以實(shí)現(xiàn)數(shù)據(jù)合并,無(wú)論是合并列表、合并字典、合并字符串、合并CSV文件還是合并多個(gè)文件夾中的文件,都可以使用簡(jiǎn)單而強(qiáng)大的Python技巧來(lái)實(shí)現(xiàn),通過(guò)合并數(shù)據(jù),可以更方便地進(jìn)行數(shù)據(jù)處理和分析
    2024-03-03
  • python中如何使用正則表達(dá)式的集合字符示例

    python中如何使用正則表達(dá)式的集合字符示例

    我們都知道,正則表達(dá)式可以很方便地對(duì)字符串進(jìn)行匹配、查找、分割等操作,下面這篇文章主要給大家介紹了關(guān)于python中如何使用正則表達(dá)式的集合字符的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下。
    2017-10-10

最新評(píng)論