深入淺出numpy中的np.norm

一、np.norm函數

np.norm函數是numpy中用於計算範數的函數,它既可以用來計算向量的範數,也可以用來計算矩陣的範數,屬於Linalg模塊中的函數。在計算機視覺和機器學習中,範數的概念被廣泛應用。範數可以看作是一個度量,衡量了一個向量或矩陣的大小。

舉個例子,當計算一個向量的L2範數時,可以使用以下代碼:

import numpy as np
a = np.array([1,2,3,4,5])
a_norm = np.linalg.norm(a)
print(a_norm)

輸出結果為:7.416198487095663

同樣地,計算一個矩陣的L2範數時,可以使用以下代碼:

b = np.array([[1,2],[3,4]])
b_norm = np.linalg.norm(b)
print(b_norm)

輸出結果為:5.477225575051661

二、np.normal函數

np.normal函數是numpy中用於生成正態分布樣本的函數,生成的樣本符合正態分布,屬於Random模塊中的函數。在機器學習中,正態分布是一個經常被使用的概率分布之一,模型的訓練過程中,常常需要使用正態分布樣本。

舉個例子,使用以下代碼生成100個符合標準正態分布的樣本:

c = np.random.normal(size=100)
print(c)

輸出結果為:

[-1.02808587 -0.04961923  0.96857156  1.37436408 -0.07254383 -0.53620235
  0.5426509   0.47989203  0.61184214  0.37882288 -1.07082572  0.11586262
 -1.13651891 -0.50076015  1.00883485  0.19819802 -0.51186928 -0.74366655
 -2.12361115 -0.12777973  0.52504142 -0.12370698 -0.45475514 -0.04131366
  2.32444915  0.09176157 -0.04520375 -0.73605509  1.28156361  0.11365801
 -1.08149692  0.38256987 -0.24460931 -1.18346185  0.83774516 -0.32663667
 -0.34274911  0.38507699 -0.45781524  1.68705853 -1.09868433  1.63065313
 -0.42286053 -1.25505109 -0.9333997   0.92621916  0.6483387   0.59802578
 -0.22541982 -1.48176319  2.52790009 -1.1221344  -0.87152693  1.03293814
  1.03775423  0.79320272 -0.49700086 -0.20112928  0.4733402   0.96616795
 -1.02722359 -0.83955627  0.88046191 -1.57468468  1.40756927  0.93377186
 -1.10557221  0.50859889  1.62561175 -0.42386375 -0.24974815  0.31917863
  0.27630884  0.44867754  2.1088356  -2.06993521  0.26188256 -0.30129463
 -0.03378072 -0.58371088 -0.50152625 -1.41244717  1.67346924  0.07440498
 -1.41684906 -0.01158429 -0.79652115 -0.96873142 -0.68856048  0.64132541
 -1.61692551 -1.96327763 -1.28813257  0.94040417  0.5153291   0.96188202
  0.76775038 -1.38117603 -0.74700929 -0.83199082]

三、np.norm.ppf

np.norm.ppf函數是numpy中用於計算正態分布累積分布函數的反函數,屬於stats模塊中的函數。由於正態分布的分布函數是連續可導的,因此np.norm.ppf能夠將概率值轉換為對應的樣本值。在統計學中,分位數是經常使用的一個概念,它表示分布中的具體點,計算分位數需要用到累積分布函數的反函數。

舉個例子,使用以下代碼計算標準正態分布中,累積概率是0.95的那個樣本值:

ppf_val = np.random.normal.ppf(0.95)
print(ppf_val)

輸出結果為:1.6448536269514722

四、np.normal.random_choice

np.normal.random_choice函數是numpy中用於從給定的正態分布中生成隨機取樣的函數。在機器學習中,模型訓練時需要對數據進行抽樣,從而生成訓練集、測試集等。

以下代碼可以從給定的正態分布中進行隨機抽樣:

arr = np.arange(10)
arr_sample = np.random.choice(arr, 5)
print(arr_sample)

輸出結果為:

[1 5 4 6 3]

以上就是對numpy中np.norm函數的詳細介紹,包括了計算範數、生成正態分布樣本、計算正態分布累積分布函數反函數、生成隨機抽樣等方面。numpy是一個強大的數值計算庫,其擁有眾多的函數和功能,這一篇文章只是對其中一部分進行了介紹。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/192522.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-01 10:28
下一篇 2024-12-01 10:28

相關推薦

  • Python矩陣轉置函數Numpy

    本文將介紹如何使用Python中的Numpy庫實現矩陣轉置。 一、Numpy庫簡介 在介紹矩陣轉置之前,我們需要了解一下Numpy庫。Numpy是Python語言的計算科學領域的基…

    編程 2025-04-28
  • Python中的np.arange函數

    在本篇文章中,我們將着眼於Python中的np.arange函數。我們將從多個方面對這個函數進行全面解析,涵蓋的內容包括介紹、功能、用法、案例以及注意事項等。如果您想深入了解np.…

    編程 2025-04-28
  • Python列錶轉numpy數組

    本文將闡述Python中列表如何轉換成numpy數組。在科學計算和數據分析領域中,numpy數組扮演着重要的角色。Python與numpy的無縫結合使得數據操作更加方便和高效。因此…

    編程 2025-04-27
  • Python三大:NumPy、Pandas、matplotlib

    本文將詳細介紹三大Python數據處理及可視化庫——NumPy、Pandas以及matplotlib,為讀者提供從基礎使用到應用場景的全面掌握。 一、NumPy NumPy是Pyt…

    編程 2025-04-27
  • numpy中np.sort函數返回索引的使用方法

    本文將會提供關於使用numpy中np.sort函數返回索引的詳細解釋和使用方法 一、np.sort函數返回索引的基本語法 numpy中的np.sort函數可以將數組按照從小到大的順…

    編程 2025-04-25
  • 深入淺出統計學

    統計學是一門關於收集、分析、解釋和呈現數據的學科。它在各行各業都有廣泛應用,包括社會科學、醫學、自然科學、商業、經濟學、政治學等等。深入淺出統計學是指想要學習統計學的人能夠理解統計…

    編程 2025-04-25
  • 深入理解np.diag

    一、介紹 NumPy是一個開源的Python科學計算庫,它支持高維數組和矩陣運算。np.diag是NumPy中的一個函數,可以用來創建對角矩陣、獲取對角線元素、構建對角線數組等。 …

    編程 2025-04-25
  • NumPy的delete函數詳解

    一、delete函數簡介 NumPy是Python中常用的科學計算庫,它提供了許多方便的函數和工具來處理數值數據。其中,delete函數是一個用於刪除數組中某些元素的函數。其函數原…

    編程 2025-04-24
  • numpy ravel函數

    一、ravel函數的簡介 在NumPy中,ravel函數的作用是將一個多維數組壓縮成一維數組。這個函數返回一個扁平化之後的一維數組,這個數組會參考原始數組的內存結構,所以它會返回一…

    編程 2025-04-24
  • 深入淺出torch.autograd

    一、介紹autograd torch.autograd 模塊是 PyTorch 中的自動微分引擎。它支持任意數量的計算圖,可以自動執行前向傳遞、後向傳遞和計算梯度,同時提供很多有用…

    編程 2025-04-24

發表回復

登錄後才能評論