最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python常用庫之NumPy和sklearn入門

 更新時間:2019年07月11日 11:56:31   作者:ML小菜鳥  
這篇文章主要介紹了python常用庫之NumPy和sklearn入門,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

Numpy 和 scikit-learn 都是python常用的第三方庫。numpy庫可以用來存儲和處理大型矩陣,并且在一定程度上彌補了python在運算效率上的不足,正是因為numpy的存在使得python成為數(shù)值計算領域的一大利器;sklearn是python著名的機器學習庫,它其中封裝了大量的機器學習算法,內(nèi)置了大量的公開數(shù)據(jù)集,并且擁有完善的文檔,因此成為目前最受歡迎的機器學習學習與實踐的工具。

1. NumPy庫

首先導入Numpy庫

import numpy as np

1.1 numpy.array 與 list

a = [1,2,3,4,5,6] # python內(nèi)置數(shù)組結構
b = np.array(a) # numpy數(shù)組結構

python有內(nèi)置數(shù)組結構(list),我們?yōu)槭裁催€要使用numpy的數(shù)組結構呢?為了回答這個問題,我們先來看看python內(nèi)置的數(shù)組結構有什么樣的特點。我們在使用list的時候會發(fā)現(xiàn),list數(shù)組中保存的數(shù)據(jù)類型是不用相同的,可以是字符串、可以是整型數(shù)據(jù)、甚至可以是個類實例。這種存儲方式很使用,為我們使用帶來了很多遍歷,但是它也承擔了消耗大量內(nèi)存的缺陷或不足。為什么這么說呢?實際上list數(shù)組中的每個元素的存儲都需要1個指針和1個數(shù)據(jù),也就是說list中保存的其實是數(shù)據(jù)的存放地址(指針),它比原生態(tài)的數(shù)組多了一個存放指針的內(nèi)存消耗。因此,當我們想去減少內(nèi)存消耗時,不妨將list替換成np.array,這樣會節(jié)省不少的空間,并且Numpy數(shù)組是執(zhí)行更快數(shù)值計算的優(yōu)秀容器。

1.2 numpy常用操作

創(chuàng)建數(shù)組

np.array([1,2,3]) # 創(chuàng)建一維數(shù)組
np.asarray([1,2,3])
np.array([1,2,3], [4,5,6]) # 創(chuàng)建多維數(shù)組

np.zeros((3, 2)) # 3行2列 全0矩陣
np.ones((3, 2)) #全1矩陣
np.full((3, 2), 5) # 3行2列全部填充5

np.array 和 np.asarray 的區(qū)別:

def asarray(a, dtype=None, order=None):
 return array(a, dtype, copy=False, order=order)

可見,它們區(qū)別主要在于: array會復制出一個新的對象,占用一份新的內(nèi)存空間,而asarray不會執(zhí)行這一操作。array類似深拷貝,asarray類似淺拷貝。

數(shù)值計算

基礎計算

arr1 = np.array([[1,2,3], [4,5,6]])
arr2 = np.array([[6,5], [4,3], [2,1]])

# 查看arr維度
print(arr1.shape) # (2, 3)

#切片 
np.array([1,2,3,4,5,6])[:3] #array([1,2,3])
arr1[0:2,0:2] # 二維切片

#乘法
np.array([1,2,3]) * np.array([2,3,4]) # 對應元素相乘 array([2,6, 12])
arr1.dot(b) # 矩陣乘法

#矩陣求和
np.sum(arr1) # 所有元素之和 21
np.sum(arr1, axis=0) #列求和 array([5, 7, 9])
np.sum(arr1, axis=1) # 行求和 array([ 6, 15])

# 最大最小
np.max(arr1, axis=0/1)
np.min(a, axis=0/1)

進階計算

arr = np.array([[1,2], [3,4], [5,6]])

#布爾型數(shù)組訪問方式
print((arr>2))
 """
 [[False False]
 [ True True]
 [ True True]]
 """
print(arr[arr>2]) # [3 4 5 6]

#修改形狀
arr.reshape(2,3)
 """ 
 array([[1, 2, 3],
 [4, 5, 6]])
 """
arr.flatten() # 攤平 array([1, 2, 3, 4, 5, 6])
arr.T # 轉置

2. sklearn庫

若你想快速使用sklearn,我的另一篇博客應該可以滿足您的需求,點擊跳轉:《ML神器:sklearn的快速使用

是python的重要機器學習庫,其中封裝了大量的機器學習算法,如:分類、回歸、降維以及聚類;還包含了監(jiān)督學習、非監(jiān)督學習、數(shù)據(jù)變換三大模塊。sklearn擁有完善的文檔,使得它具有了上手容易的優(yōu)勢;并它內(nèi)置了大量的數(shù)據(jù)集,節(jié)省了獲取和整理數(shù)據(jù)集的時間。因而,使其成為了廣泛應用的重要的機器學習庫。下面簡單介紹一下sklearn下的常用方法。

監(jiān)督學習

sklearn.neighbors #近鄰算法
sklearn.svm #支持向量機
sklearn.kernel_ridge #核-嶺回歸
sklearn.discriminant_analysis #判別分析
sklearn.linear_model #廣義線性模型

sklearn.ensemble #集成學習
sklearn.tree #決策樹
sklearn.naive_bayes #樸素貝葉斯
sklearn.cross_decomposition #交叉分解
sklearn.gaussian_process #高斯過程

sklearn.neural_network #神經(jīng)網(wǎng)絡
sklearn.calibration #概率校準
sklearn.isotonic #保守回歸
sklearn.feature_selection #特征選擇
sklearn.multiclass #多類多標簽算法

以上的每個模型都包含多個算法,在調(diào)用時直接import即可,譬如:

from sklearn.linear_model import LogisticRefression
lr_model = LogisticRegression()

無監(jiān)督學習

sklearn.decomposition #矩陣因子分解
sklearn.cluster # 聚類
sklearn.manifold # 流形學習
sklearn.mixture # 高斯混合模型
sklearn.neural_network # 無監(jiān)督神經(jīng)網(wǎng)絡
sklearn.covariance # 協(xié)方差估計

數(shù)據(jù)變換

sklearn.feature_extraction # 特征提取
sklearn.feature_selection # 特征選擇
sklearn.preprocessing # 預處理
sklearn.random_projection # 隨機投影
sklearn.kernel_approximation # 核逼近

數(shù)據(jù)集

此外,sklearn還有統(tǒng)一的API接口,我們通??梢酝ㄟ^使用完全相同的接口來實現(xiàn)不同的機器學習算法,一般實現(xiàn)流程:

  step1. 數(shù)據(jù)加載和預處理

  step2. 定義分類器, 比如: lr_model = LogisticRegression()

  step3. 使用訓練集訓練模型 : lr_model.fit(X,Y)

  step4. 使用訓練好的模型進行預測: y_pred = lr_model.predict(X_test)

  step5. 對模型進行性能評估:lr_model.score(X_test, y_test)

常見命令:

1. 數(shù)據(jù)集分割

# 作用:將數(shù)據(jù)集劃分為 訓練集和測試集
# 格式:train_test_split(*arrays, **options)
from sklearn.mode_selection import train_test_split
X, y = np.arange(10).reshape((5, 2)), range(5)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=42)
"""
參數(shù)
---
arrays:樣本數(shù)組,包含特征向量和標簽

test_size:
  float-獲得多大比重的測試樣本 (默認:0.25)
  int - 獲得多少個測試樣本

train_size: 同test_size

random_state:
  int - 隨機種子(種子固定,實驗可復現(xiàn))
  
shuffle - 是否在分割之前對數(shù)據(jù)進行洗牌(默認True)

返回
---
分割后的列表,長度=2*len(arrays), 
  (train-test split)
"""

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • python寫入Excel表格的方法詳解

    python寫入Excel表格的方法詳解

    這篇文章主要為大家詳細介紹了python寫入Excel表格的方法,使用jupyter?notebook,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • python裝飾器原理源碼示例分析

    python裝飾器原理源碼示例分析

    本文由淺入深介紹了python的裝飾器,并且通過代碼展現(xiàn)了如何自己手寫裝飾器函數(shù)和類裝飾器,有需要的朋友可以參考下,希望可以有所幫助
    2021-09-09
  • Python實現(xiàn)將數(shù)據(jù)庫一鍵導出為Excel表格的實例

    Python實現(xiàn)將數(shù)據(jù)庫一鍵導出為Excel表格的實例

    下面小編就為大家?guī)硪黄狿ython實現(xiàn)將數(shù)據(jù)庫一鍵導出為Excel表格的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • python 開發(fā)的三種運行模式詳細介紹

    python 開發(fā)的三種運行模式詳細介紹

    這篇文章主要介紹了python 開發(fā)的三種運行模式詳細介紹的相關資料,需要的朋友可以參考下
    2017-01-01
  • Python 虛擬環(huán)境venv詳解

    Python 虛擬環(huán)境venv詳解

    Python 虛擬環(huán)境主要是為不同 Python 項目創(chuàng)建一個隔離的環(huán)境,每個項目都可以擁有獨立的依賴包環(huán)境,而項目間的依賴包互不影響,對Python 虛擬環(huán)境venv相關知識感興趣的朋友一起看看吧
    2021-09-09
  • python抓取豆瓣圖片并自動保存示例學習

    python抓取豆瓣圖片并自動保存示例學習

    python抓取豆瓣圖片并自動保存示例學習,示例使用了beautifulsoup庫分析HTML代碼,beautifulsoup是一個HTML/XML解析器,可以用來做網(wǎng)頁爬蟲
    2014-01-01
  • 詳解Python中的Dict

    詳解Python中的Dict

    這篇文章主要為大家介紹了Python中的Dict,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • Python獲取svn版本信息

    Python獲取svn版本信息

    本文主要介紹了Python獲取svn版本信息,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-07-07
  • 13行python代碼實現(xiàn)對微信進行推送消息的示例代碼

    13行python代碼實現(xiàn)對微信進行推送消息的示例代碼

    本文主要介紹了13行python代碼實現(xiàn)對微信進行推送消息的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • Matplotlib中%matplotlib inline如何使用

    Matplotlib中%matplotlib inline如何使用

    這篇文章主要介紹了Matplotlib中%matplotlib inline如何使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07

最新評論

荥经县| 五莲县| 东阿县| 河南省| 巨野县| 土默特左旗| 花莲市| 英德市| 杭锦后旗| 马山县| 吐鲁番市| 贵德县| 青海省| 南岸区| 固阳县| 昌邑市| 榆林市| 台州市| 京山县| 宜君县| 塘沽区| 施秉县| 通江县| 宜章县| 渑池县| 呼玛县| 通榆县| 岫岩| 名山县| 德化县| 油尖旺区| 武隆县| 沙洋县| 进贤县| 雅安市| 平顶山市| 临海市| 凤凰县| 石泉县| 麟游县| 双流县|