乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      圖解Numpy精翻版,一文帶你入門Python數(shù)據(jù)處理

       只怕想不到 2019-08-25

      本文精心翻譯自Jay Alammar的博客:https://jalammar./visual-numpy/,其用圖解的方式詳細介紹了 NumPy的功能和使用示例。

      NumPy 是 Python 生態(tài)中數(shù)據(jù)分析、機器學習和科學計算的基礎。它極大地簡化了向量和矩陣的操作處理。Python 的一些主要軟件包(如 scikit-learn、SciPy、pandas 和 tensorflow)都以 NumPy 作為其架構(gòu)的基礎部分。除了能對數(shù)值數(shù)據(jù)進行切片(slice)和切塊(dice)之外,使用 NumPy 還能為處理和調(diào)試上述庫中的高級實例帶來極大的便利。

      本文將介紹 NumPy 的一些主要方法,以及在將數(shù)據(jù)送入機器學習模型之前,numpy是如何表示不同類型數(shù)據(jù)(表格、圖像、文本等)的。

      import numpy as np

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

      通過傳遞一個 python 列表,并使用 np.array()來創(chuàng)建 NumPy 數(shù)組。python 創(chuàng)建的數(shù)組如下圖右所示:

      NumPy 提供了一些初始化數(shù)組的方法,例如 ones()、zeros() 和 random.random() 等方法。只要傳遞希望 NumPy 生成的元素維數(shù)即可:

      一旦創(chuàng)建了數(shù)組,就可以隨意操作啦。

      數(shù)組運算

      下面創(chuàng)建兩個 NumPy 數(shù)組來展示數(shù)組運算功能。下圖兩個數(shù)組分別為 data 和 ones:

      將它們按位置相加(即每行對應相加),直接輸入 data + ones 即可:

      除了加,還可以進行如下操作:

      數(shù)組和單個數(shù)字之間也可以進行運算操作(即向量和標量之間的運算)。比如說,數(shù)組表示以英里為單位的距離,希望將其單位轉(zhuǎn)換為千米。只需輸入 data * 1.6 即可:

      NumPy 是通過廣播機制(broadcasting)來實現(xiàn)的,通過判斷維數(shù),來推測要進行的運算。

      索引

      可以像對 python 列表進行切片一樣,對 NumPy 數(shù)組進行任意的索引和切片:

      聚合

      NumPy 還提供聚合功能:

      除了 min、max 和 sum 之外,還可以使用 mean 得到平均值,使用 prod 得到所有元素的乘積,使用 std 得到標準差等等。

      更多維度

      上述的例子都是在一個維度上處理向量。NumPy 優(yōu)雅的關(guān)鍵在于能夠?qū)⑸鲜鏊蟹椒☉玫饺我鈹?shù)量的維度。

      創(chuàng)建矩陣

      可以傳遞下列形狀的 python 列表,使 NumPy 創(chuàng)建一個矩陣來表示它:

      np.array([[1,2],[3,4]])

      也可以使用上面提到的方法(ones()、zeros() 和 random.random()),只要傳入一個描述創(chuàng)建的矩陣維數(shù)的元組即可:

      矩陣運算

      如果兩個矩陣大小相同,可以使用算術(shù)運算符(+-*/)對矩陣進行加和乘。NumPy 將其視為 position-wise 運算:

      也可以對不同大小的兩個矩陣執(zhí)行此類算術(shù)運算,但前提是某一個維度為 1(如矩陣只有一列或一行),在這種情況下,NumPy 使用廣播規(guī)則執(zhí)行算術(shù)運算:

      點乘

      算術(shù)運算和矩陣運算的一個關(guān)鍵區(qū)別是矩陣乘法使用點乘。NumPy 為每個矩陣賦予 dot() 方法,可以用它與其他矩陣執(zhí)行點乘操作:

      在上圖的右下角添加了矩陣維數(shù),來強調(diào)這兩個矩陣的臨近邊必須有相同的維數(shù)??梢园焉鲜鲞\算視為:

      矩陣索引

      當處理矩陣時,索引和切片操作將更加有用:

      矩陣聚合

      可以像聚合向量一樣聚合矩陣:

      不僅可以聚合矩陣中的所有值,還可以使用 axis 參數(shù)執(zhí)行跨行或跨列聚合:

      轉(zhuǎn)置和維度重塑

      處理矩陣時的一個常見需求是旋轉(zhuǎn)矩陣。當需要對兩個矩陣執(zhí)行點乘運算并對齊它們共享的維度時,通常需要進行轉(zhuǎn)置。NumPy 數(shù)組有一個方便的方法 T 來求得矩陣轉(zhuǎn)置:

      在某些應用中,需要對特定矩陣的變換維度。在機器學習應用中,經(jīng)常會有當某個模型對輸入形狀的要求與的數(shù)據(jù)集不同。NumPy 中的 reshape() 方法就可以發(fā)揮作用。只需將矩陣所需的新維度賦值給它即可??梢詾榫S度賦值-1,NumPy 可以根據(jù)的矩陣推斷出正確的維度:

      更多維度

      NumPy 可以在任意維度實現(xiàn)上述提到的所有內(nèi)容。其中心數(shù)據(jù)結(jié)構(gòu)被叫作 ndarray(N 維數(shù)組)。

      在很多情況下,處理一個新的維度只需在 NumPy 函數(shù)的參數(shù)中添加一個逗號:

      實際用法

      以下是 NumPy 可實現(xiàn)的有用功能的實例演示。

      公式

      均方差公式,它是監(jiān)督機器學習模型處理回歸問題的核心:

      在 NumPy 中實現(xiàn)該公式很容易:

      這樣做的好處在于,NumPy 并不關(guān)心 predictions 和 labels 包含一個值還是一千個值(只要它們大小相同)。可以通過一個示例依次執(zhí)行上面代碼行中的四個操作:

      預測和標簽向量都包含三個值,也就是說 n 的值為 3。減法后,得到的值如下:

      然后將向量平方得到:

      對這些值求和:

      得到的結(jié)果即為該預測的誤差值和模型質(zhì)量評分。

      數(shù)據(jù)表達

      電子表格、圖像、音頻等需要處理和構(gòu)建模型所需的數(shù)據(jù)類型,其中很多都適合在 n 維數(shù)組中表示:

      表格

      電子表格就是二維矩陣。電子表格中的每個工作表都可以是它自己的變量。python 中最流行的表格抽象是 pandas 數(shù)據(jù)幀,其在 NumPy 之上構(gòu)建。

      音頻

      音頻文件是樣本的一維數(shù)組。每個樣本都是一個數(shù)字,代表音頻信號的一小部分。CD 質(zhì)量的音頻每秒包含 44,100 個樣本,每個樣本是-65535 到 65536 之間的整數(shù)。這意味著如果有一個 10 秒的 CD 質(zhì)量 WAVE 文件,可以將它加載到長度為 10 * 44,100 = 441,000 的 NumPy 數(shù)組中。如果想要提取音頻的前一秒,只需將文件加載到 audio 的 NumPy 數(shù)組中,然后獲取 audio[:44100]。

      下面是一段音頻文件:

      其他時間序列數(shù)據(jù)也可以同樣表示(如股票隨時間變化的價格)。

      圖像

      圖像是尺寸(高度 x 寬度)的像素矩陣。

      如果圖像是黑白(即灰度)的,則每個像素都可以用單個數(shù)字表示(通常在 0(黑色)和 255(白色)之間)。

      下圖是一個圖像文件的部分:

      如果圖像是彩色的,則每個像素由三個數(shù)字表示———紅、綠和藍。在這種情況下,需要一個三維數(shù)組(因為每個單元格只能包含一個數(shù)字)。因此彩色圖像由尺寸為(高 x 寬 x3)的 ndarray 表示:

      著作權(quán)歸作者所有

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多