Álgebra Linear

Autor

Douglas Braga

Nota

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.

ImportanteÉ aqui que a regra “sem bibliotecas” fica explicada

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:

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.

Grus, Joel. 2019. Data Science from Scratch: First Principles with Python. 2nd ed. O’Reilly Media.