日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

【机器学习算法-python实现】采样算法的简单实现

發布時間:2025/4/5 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【机器学习算法-python实现】采样算法的简单实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.背景

? ? 采樣算法是機器學習中比較常用,也比較容易實現的(出去分層采樣)。常用的采樣算法有以下幾種(來自百度知道): 一、單純隨機抽樣(simple random sampling)將調查總體全部觀察單位編號,再用抽簽法或隨機數字表隨機抽取部分觀察單位組成樣本。優點:操作簡單,均數、率及相應的標準誤計算簡單。 缺點:總體較大時,難以一一編號。二、系統抽樣(systematic sampling)又稱機械抽樣、等距抽樣,即先將總體的觀察單位按某一順序號分成n個部分,再從第一部分隨機抽取第k號觀察單位,依次用相等間距,從每一部分各抽取一個觀察單位組成樣本。優點:易于理解、簡便易行。缺點:總體有周期或增減趨勢時,易產生偏性。三、整群抽樣(cluster sampling)總體分群,再隨機抽取幾個群組成樣本,群內全部調查。優點:便于組織、節省經費。缺點:抽樣誤差大于單純隨機抽樣。四、分層抽樣(stratified sampling)先按對觀察指標影響較大的某種特征,將總體分為若干個類別,再從每一層內隨機抽取一定數量的觀察單位,合起來組成樣本。有按比例分配和最優分配兩種方案。優點:樣本代表性好,抽樣誤差減少。以上四種基本抽樣方法都屬單階段抽樣,實際應用中常根據實際情況將整個抽樣過程分為若干階段來進行,稱為多階段抽樣。各種抽樣方法的抽樣誤差一般是:整群抽樣≥單純隨機抽樣≥系統抽樣≥分層抽樣

2.代碼實現

? ??? ? 無放回抽樣:隨機抽樣(RandomSampling)和系統抽樣(SystematicSampling)。? ? 有放回抽樣:隨機抽樣(RepetitionRandomSampling)。
''' Sampling archive@author: Garvin Li ''' import random def loadDataSet(fileName): #general function to parse tab -delimited floatsdataMat = [] #assume last column is target valuefr = open(fileName)for line in fr.readlines():curLine = line.strip().split('\t') # fltLine = map(float,curLine) #map all elements to float()dataMat.append(curLine)return dataMatdef RandomSampling(dataMat,number):try:slice = random.sample(dataMat, number) return sliceexcept:print 'sample larger than population'def RepetitionRandomSampling(dataMat,number): sample=[]for i in range(number):sample.append(dataMat[random.randint(0,len(dataMat)-1)])return sample def SystematicSampling(dataMat,number): length=len(dataMat)k=length/numbersample=[] i=0if k>0 : while len(sample)!=number:sample.append(dataMat[0+i*k])i+=1 return sampleelse :return RandomSampling(dataMat,number) if __name__=='__main__':dataMat=loadDataSet('/Users/hakuri/Desktop/data1.txt') # print RandomSampling(dataMat,7) # RepetitionSampling(dataMat,4)print SystematicSampling(dataMat,9)
測試結果就不單獨上圖了,測試集和代碼都提供下載,有興趣可以去看一下。過一段把高級聚類算法寫好,實現一下分層抽樣。
下載地址:點擊我


/********************************

* 本文來自博客 ?“李博Garvin“

* 轉載請標明出處:http://blog.csdn.net/buptgshengod

******************************************/



總結

以上是生活随笔為你收集整理的【机器学习算法-python实现】采样算法的简单实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。