Álgebra linear com NumPy
np.dot, np.linalg.inv, np.linalg.eig, np.linalg.solve para sistemas de equações.
Álgebra linear com NumPy é uma aula grátis de Learn AI with Python no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Learn AI with Python, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Learn AI with Python inclui 4 aulas no total.
Álgebra Linear em NumPy
NumPy fornece operações matriciais por meio do operador @ e do módulo np.linalg, a base de praticamente todos os algoritmos de aprendizado de máquina.
Multiplicação de Matrizes com @
O operador @ realiza a multiplicação matricial propriamente dita. As dimensões internas devem coincidir: (m,k) @ (k,n) resulta em (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]]@ versus * (Importante!)
* é aplicado elemento a elemento, enquanto @ realiza uma multiplicação matricial. Confundi-los é um erro clássico.
print(A * B) # element-wise: [[ 5 12]
# [21 32]]
print(A @ B) # matrix product (different result)np.dot
np.dot é a forma em função. Para matrizes 2D, equivale a @; para matrizes 1D, calcula o produto escalar (um escalar).
u = np.array([1, 2, 3])
v = np.array([4, 5, 6])
print(np.dot(u, v)) # 1*4 + 2*5 + 3*6 = 32Matriz Inversa
np.linalg.inv(A) retorna a inversa, a matriz que produz a identidade quando multiplicada por A. Apenas matrizes quadradas e não singulares possuem uma.
A = np.array([[4.0, 7.0], [2.0, 6.0]])
Ainv = np.linalg.inv(A)
print(np.round(A @ Ainv, 6)) # identityDeterminante
np.linalg.det(A) fornece o determinante. Um determinante igual a 0 significa que a matriz é singular e não pode ser invertida.
print(np.linalg.det(A)) # 10.0 (nonzero -> invertible)Resolução de Sistemas Lineares
Para resolver A x = b, prefira np.linalg.solve(A, b) a calcular a inversa. Essa abordagem é mais rápida e numericamente mais estável.
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.]Por que usar solve em vez de inv
Calcular inv(A) @ b desperdiça trabalho e amplifica o erro de arredondamento. solve usa diretamente a decomposição LU. Em código real, prefira solve.
# Avoid: x = np.linalg.inv(A) @ b
# Prefer: x = np.linalg.solve(A, b)Autovalores e Autovetores
np.linalg.eig(A) retorna autovalores e autovetores. Eles fundamentam PCA, a análise de estabilidade e muito mais.
A = np.array([[2.0, 0.0], [0.0, 3.0]])
vals, vecs = np.linalg.eig(A)
print(vals) # [2. 3.]Normas de Vetores e Matrizes
np.linalg.norm mede a magnitude. Por padrão, é a norma euclidiana (L2) para vetores, usada em tudo, desde distâncias até regularização.
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)Transposta
A.T transpõe uma matriz, trocando linhas e colunas. Ela aparece constantemente em fórmulas como as equações normais.
A = np.array([[1, 2, 3], [4, 5, 6]])
print(A.T)
# [[1 4]
# [2 5]
# [3 6]]Verificação rápida
Teste sua lembrança de álgebra linear.
Recapitulação
Ferramentas de álgebra linear:
@/np.dotpara produtos matriciais e escalares (não*)np.linalg.inv,np.linalg.detnp.linalg.solve(A, b)é melhor do que inverternp.linalg.eigpara decomposição em autovalores e autovetoresnp.linalg.normpara magnitudes eA.Tpara transpor
Perguntas Frequentes
A aula “Álgebra linear com NumPy” é grátis?
Sim — o texto completo de “Álgebra linear com NumPy” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Learn AI with Python, atualize para CoddyKit PRO. O curso de Learn AI with Python inclui 4 aulas no total.
O que vou aprender em “Álgebra linear com NumPy”?
np.dot, np.linalg.inv, np.linalg.eig, np.linalg.solve para sistemas de equações. Você pratica Learn AI with Python com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Learn AI with Python?
Nenhuma experiência prévia é necessária. Learn AI with Python no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Álgebra linear com NumPy”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Learn AI with Python?
Sim. Cada aula de Learn AI with Python inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Criação e propriedades de matrizes
- Indexação, fatiamento e indexação avançada
- Transmissão e operações vetorizadas
- Álgebra linear com NumPy