Álgebra Linear
Este capítulo corresponde ao capítulo 4 de Grus (2019).
📓 Abrir o notebook deste capítulo no Colab ↗ — só o código, pronto para rodar.
Existe algo mais inútil, ou menos útil, do que álgebra?
— Billy Connolly
Álgebra linear é o ramo da matemática que trata de espaços vetoriais. Um capítulo curto não ensina álgebra linear — mas ela sustenta uma quantidade grande de conceitos e técnicas de ciência de dados, e ignorá-la seria pior do que tratá-la de forma incompleta.
O que este capítulo constrói é pequeno: um punhado de funções sobre listas de números. O que ele entrega é a base sobre a qual quase todo o resto do livro se apoia. A função dot, que cabe em duas linhas, é usada por onze módulos deste livro; a distance, por cinco — inclusive pelos classificadores que decidem por proximidade.
Este livro implementa tudo em Python puro e não usa numpy em lugar nenhum. Este é o capítulo onde essa decisão precisa de justificativa, porque é o único em que a biblioteca faria exatamente o que estamos construindo, só que melhor.
E a justificativa não é nossa — é do próprio autor do livro-texto, que escreve, no meio deste capítulo, que usar listas como vetores é ótimo para exposição e péssimo para desempenho, e que em produção você deve usar NumPy.
Ou seja: ninguém aqui está defendendo que se escreva dot à mão no trabalho. A questão é outra — quem nunca escreveu não sabe o que a chamada faz, e passa a vida chamando.
Ao final deste capítulo, você será capaz de:
- Representar dados numéricos como vetores e operar sobre eles componente a componente
- Implementar soma, subtração, multiplicação por escalar e média de vetores
- Explicar o que o produto escalar mede, e não apenas como calculá-lo
- Calcular magnitude e distância entre vetores, e reconhecer essas contas quando elas reaparecerem disfarçadas em outros capítulos
- Representar conjuntos de dados e relações binárias como matrizes, e avaliar quando essa representação compensa
Seções
| Seção | Tópico |
|---|---|
| 4.1 | Vetores |
| 4.2 | Matrizes |
Leituras adicionais
A seção “For Further Exploration” do capítulo 4 de Grus (2019) indica três livros de álgebra linear disponíveis gratuitamente:
- Linear Algebra, de Jim Hefferon (Saint Michael’s College)
- Linear Algebra, de David Cherney, Tom Denton, Rohit Thomas e Andrew Waldron (UC Davis)
- Linear Algebra Done Wrong, de Sergei Treil (Brown University) — uma introdução mais avançada, para quem estiver disposto
E encerra observando que toda a maquinaria construída aqui vem pronta no NumPy, junto de bastante coisa a mais.