Algebra Linear dengan NumPy
np.dot, np.linalg.inv, np.linalg.eig, np.linalg.solve untuk sistem persamaan.
Algebra Linear dengan NumPy ialah pelajaran Pelajari AI dengan Python percuma di CoddyKit. Ini ialah pelajaran 4 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Pelajari AI dengan Python, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Pelajari AI dengan Python merangkumi sejumlah 4 pelajaran.
Algebra Linear dalam NumPy
NumPy menyediakan operasi matriks melalui pengendali @ dan modul np.linalg, iaitu asas bagi hampir setiap algoritma pembelajaran mesin.
Pendaraban Matriks dengan @
Pengendali @ melakukan pendaraban matriks sebenar. Dimensi dalaman mesti sepadan: (m,k) @ (k,n) menghasilkan (m,n).
import numpy as np
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])
print(A @ B)
# [[19 22]
# [43 50]]@ berbanding * (Penting!)
* beroperasi secara unsur demi unsur, manakala @ melakukan pendaraban matriks. Kekeliruan antara kedua-duanya ialah pepijat lazim.
print(A * B) # element-wise: [[ 5 12]
# [21 32]]
print(A @ B) # matrix product (different result)np.dot
np.dot ialah bentuk fungsi. Bagi tatasusunan 2D, hasilnya sama dengan @; bagi tatasusunan 1D, fungsi ini mengira hasil darab titik (skalar).
u = np.array([1, 2, 3])
v = np.array([4, 5, 6])
print(np.dot(u, v)) # 1*4 + 2*5 + 3*6 = 32Songsangan Matriks
np.linalg.inv(A) mengembalikan matriks songsang, iaitu matriks yang menghasilkan matriks identiti apabila didarab dengan A. Hanya matriks segi empat sama yang tidak singular mempunyainya.
A = np.array([[4.0, 7.0], [2.0, 6.0]])
Ainv = np.linalg.inv(A)
print(np.round(A @ Ainv, 6)) # identityPenentu
np.linalg.det(A) memberikan penentu. Penentu bernilai 0 bermakna matriks itu singular dan tidak boleh disongsangkan.
print(np.linalg.det(A)) # 10.0 (nonzero -> invertible)Menyelesaikan Sistem Linear
Untuk menyelesaikan A x = b, utamakan np.linalg.solve(A, b) berbanding mengira matriks songsang. Cara ini lebih pantas dan lebih stabil dari segi angka.
A = np.array([[3.0, 1.0], [1.0, 2.0]])
b = np.array([9.0, 8.0])
x = np.linalg.solve(A, b)
print(x) # [2. 3.]Mengapa solve berbanding inv
Mengira inv(A) @ b membazirkan kerja dan memperkuat ralat pembundaran. solve menggunakan penguraian LU secara terus. Gunakan solve dalam kod sebenar.
# Avoid: x = np.linalg.inv(A) @ b
# Prefer: x = np.linalg.solve(A, b)Nilai Eigen dan Vektor Eigen
np.linalg.eig(A) mengembalikan nilai eigen dan vektor eigen. Kedua-duanya menjadi asas kepada PCA, analisis kestabilan dan banyak lagi.
A = np.array([[2.0, 0.0], [0.0, 3.0]])
vals, vecs = np.linalg.eig(A)
print(vals) # [2. 3.]Norma Vektor dan Matriks
np.linalg.norm mengukur magnitud. Secara lalai, fungsi ini ialah norma Euclidean (L2) bagi vektor, yang digunakan dalam pelbagai perkara daripada jarak hingga regularisasi.
v = np.array([3.0, 4.0])
print(np.linalg.norm(v)) # 5.0 (sqrt(9+16))
print(np.linalg.norm(v, 1)) # 7.0 (L1 norm)Transpos
A.T mentransposkan matriks dengan menukar baris dan lajur. Ia kerap muncul dalam formula seperti persamaan normal.
A = np.array([[1, 2, 3], [4, 5, 6]])
print(A.T)
# [[1 4]
# [2 5]
# [3 6]]Semakan Pantas
Uji ingatan anda tentang algebra linear.
Ulang Kaji
Peralatan algebra linear:
@/np.dotuntuk pendaraban matriks dan hasil darab titik (bukan*)np.linalg.inv,np.linalg.detnp.linalg.solve(A, b)lebih baik daripada menyongsangkan matriksnp.linalg.eiguntuk penguraian eigennp.linalg.normuntuk magnitud,A.Tuntuk mentransposkan
Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 53
- Pelajaran
- 225
Soalan Lazim
Adakah pelajaran “Algebra Linear dengan NumPy” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Pelajari AI dengan Python, termasuk “Algebra Linear dengan NumPy”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Pelajari AI dengan Python merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Algebra Linear dengan NumPy”?
np.dot, np.linalg.inv, np.linalg.eig, np.linalg.solve untuk sistem persamaan. Anda berlatih Pelajari AI dengan Python menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Pelajari AI dengan Python?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Pelajari AI dengan Python di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 4 daripada 4.
Berapa lamakah pelajaran “Algebra Linear dengan NumPy” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Pelajari AI dengan Python ini?
Ya. Setiap pelajaran Pelajari AI dengan Python menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Penciptaan dan Sifat Tatasusunan
- Pengindeksan, Penghirisan dan Pengindeksan Lanjutan
- Penyiaran dan Operasi Bervektor
- Algebra Linear dengan NumPy