機器學習 00:準備工作Numpy

Numpy是什麼

numberical 和 python
功能強大的python庫
主要作用:

  • 執行數學任務
  • 處理圖像
  • 矩陣數值計算

安裝

參考教程
下載網址
雖然好像下錯版本了,但是安裝成功了小白很開心!

應用實例

3、矩陣數學運算

  1. 生成隨機數組random.rand(4,4)
  2. 將數組轉化爲矩陣mat()
    注:生成隨機矩陣就可以mat(random.rand(4,4))
  3. 矩陣求逆randMat.I
  4. 創建單位矩陣eye(n)
  5. 矩陣乘法randMat*invRandMat
    注:下邊代碼中,矩陣和它的逆相乘按理來說應該是單位矩陣,但是由於計算機計算有誤差,所以計算出來並不是,可以myEye-eye(4)得到誤差值
Traceback (most recent call last):
  File "E:/Python/TestNumpy.py", line 1, in <module>
    import numpy as np
ModuleNotFoundError: No module named 'numpy'
>>> from numpy import *
>>> random.rand(4,4)
array([[0.10158214, 0.3719441 , 0.94063777, 0.50643896],
       [0.92600614, 0.77236761, 0.35572363, 0.99252495],
       [0.58464786, 0.10804458, 0.67350135, 0.87358246],
       [0.32934685, 0.2607976 , 0.72263533, 0.31676123]])
>>> randMat = mat(random.rand(4,4))
>>> randMat.I
matrix([[ 1.02749897, -2.40507528, -0.33632994,  1.27810379],
        [ 0.05177492,  2.54948785, -0.10568138, -1.17175427],
        [-2.58994448,  1.43275664,  0.68643284,  1.57925206],
        [ 0.0971614 ,  0.62072199,  1.08438911, -0.98672751]])
>>> invRandMat = randMat.I
>>> randMat*invRandMat
matrix([[ 1.00000000e+00,  5.28210783e-17, -7.54562791e-17,
          1.69183312e-16],
        [-2.02484111e-16,  1.00000000e+00,  4.91238539e-18,
         -2.15480015e-17],
        [ 2.86544104e-17,  2.51922955e-16,  1.00000000e+00,
          1.57562566e-16],
        [ 2.26452988e-16,  4.92101953e-17, -3.25806708e-17,
          1.00000000e+00]])
>>> myEye = randMat*invRandMat
>>> myEye - eye(4)
matrix([[ 0.00000000e+00,  5.28210783e-17, -7.54562791e-17,
          1.69183312e-16],
        [-2.02484111e-16,  0.00000000e+00,  4.91238539e-18,
         -2.15480015e-17],
        [ 2.86544104e-17,  2.51922955e-16,  0.00000000e+00,
          1.57562566e-16],
        [ 2.26452988e-16,  4.92101953e-17, -3.25806708e-17,
          2.22044605e-16]])
>>> 

參考文獻

  1. 《機器學習實戰》
發佈了41 篇原創文章 · 獲贊 1 · 訪問量 1840
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章