¿Qué tan importante es el álgebra lineal en informática, es decir, cómo se interrelacionan los dos?

Estoy de acuerdo con Jesse Reiss en que puedes ser un ingeniero de software sin conocer álgebra lineal sofisticada, aunque es crucial como académico o especialista en ciertos campos.

El álgebra lineal en informática puede dividirse ampliamente en dos categorías:

  • Álgebra lineal para cantidades espaciales. Aquí se trata de vectores de 2, 3 o 4 dimensiones y le preocupan las rotaciones, proyecciones y otras operaciones matriciales que tienen alguna interpretación espacial. Este es el tipo de álgebra lineal que surge, por ejemplo, en gráficos de computadora o simulaciones físicas.
  • Álgebra lineal para estadísticas. Aquí se trata de vectores en espacios de alta dimensión que no tienen una interpretación espacial particular y le interesan las descomposiciones de matrices, etc. Este dominio incluye procesamiento de señales, aprendizaje automático estadístico y compresión.

El primero es realmente un caso especial del segundo, pero a efectos prácticos, las matemáticas que le interesarán diferirán sustancialmente a través de este límite.

Además de estas excelentes respuestas, el álgebra lineal es crucial para:

  • Compresión de audio, video e imagen, incluyendo MP3, JPEG / JPEG-2000 y video MPEG o VP8
  • Modulación y codificación, incluidos códigos convolucionales y, por ejemplo, EV-DO, Wi-Fi, Gigabit Ethernet, QAM, HDTV y el Sistema de posicionamiento global
  • ¡Procesamiento de señales, incluida la Transformación rápida de Fourier y el autoajuste! “Estoy en un barco” no hubiera sido posible sin álgebra lineal.
  • Colorimetría
  • Estadísticas y aprendizaje automático, incluido algo tan lejano como el comercio automatizado en los mercados financieros

Muy importante para cosas como:

  • programación de gráficos
  • teoría de grafos (gráficos sociales por ejemplo)
  • Descomposición de valores singulares para sistemas de recomendación (pagerank, recomendaciones de netflix, filtrado colaborativo)
  • agrupamiento y clasificación de datos
  • reconocimiento de patrones
  • varias formas de inteligencia artificial

muchas otras cosas, especialmente en ingeniería mecánica y civil, pero preguntaste sobre informática.

Dan O’Neill enumeró los campos aplicables muy bien. Es muy común en informática científica. Eche un vistazo a BLAS (subprogramas de álgebra lineal básica) y LAPACK http://en.wikipedia.org/wiki/Bas

Algunos de los más notables son Netlib BLAS, GNU Scientific Library (GSL), Intel Math Kernel Library (MKL), NVIDIA CUDA

En los juegos de computadora, el álgebra lineal se usa ampliamente:

  • Los gráficos en 3D tienen que ver con el álgebra lineal. Trazar formas, incluyendo rotarlas, moverlas, colocar cámaras en ciertos lugares, etc.
  • Física en 2D y 3D también (fuerzas, colisiones, etc.): juegos de billar, pájaros enojados, simuladores de vuelo, juegos de conducción o simplemente juegos de disparos en 3D.
  • Los efectos 3D programados con sombreadores usan álgebra lineal y hardware para calcular grandes cantidades de cálculos de manera muy eficiente usando procesamiento paralelo.

Es absolutamente esencial en Machine Learning.

Las respuestas anteriores no enfatizaron que en realidad el Álgebra lineal es un lenguaje de aprendizaje automático: los vectores para listas de características y matrices se usan todo el tiempo.

Estoy haciendo aprendizaje automático en Coursera y se trata principalmente de hacer que los problemas reales de aprendizaje automático se traduzcan en problemas de álgebra lineal / Análisis numérico (que se resolvieron hace mucho tiempo).

También es muy importante en Computer Graphics .

Por ejemplo, en OpenGL, la cámara y las posiciones de los objetos se representan con matrices (cada objeto tiene su propio sistema de coordenadas). Por lo tanto, es útil tener un fuerte fondo de álgebra lineal.

Todas las imágenes se pueden representar en formato matricial.
En el caso de una imagen en escala de grises de 256 × 256 píxeles, la imagen se almacena como una matriz de 256 × 256, siendo cada elemento de la matriz un número entero que varía de 0 (para negro) a 225 (para blanco).

Las imágenes en color, por ejemplo en escala RGB, tienen tres valores para cada píxel, lo que significa que se convierte en una matriz tridimensional.

Muy importante en visión artificial para:

  • modelado de cámara;
  • geometría epipolar;
  • calibración y autocalibración;
  • estimación de pose;
  • estructura desde el movimiento;
  • y muchas otras cosas

Muy importante en el aprendizaje automático. Por ejemplo :

  • Reducción de dimensionalidad (por ejemplo, análisis de componentes principales)
  • Agrupamiento
  • Clasificación
  • Predicción
  • Sistemas de recomendación (por ejemplo, filtrado colaborativo)
  • etc.

Depende de lo que quieras hacer.

El álgebra lineal aparece en la teoría de muchos campos en informática. Los modelos de aprendizaje estadístico con frecuencia dependen del álgebra matricial y la descomposición. La manipulación de imágenes se basa en la manipulación de vectores y las transformaciones matriciales. Cualquier cosa con física usará manipulación de vectores y ecuaciones diferenciales que requieren álgebra lineal para comprender verdaderamente.

Si desea entrar en la teoría de todo, necesita saber álgebra lineal. Si desea leer libros blancos y considerar nuevos algoritmos y sistemas de vanguardia, necesita saber muchas matemáticas. Dicho esto, como ingeniero de software profesional, rara vez uso mi conocimiento de álgebra lineal y conozco a muchos ingenieros muy talentosos que no pudieron encontrar los valores propios de una matriz para salvarles la vida.

Aún así, lo recomendaría. Cuanto más estudies, más fácil será aprender.

Recientemente estudié la teoría de grafos espectrales algorítmicos: considere la matriz de adyacencia de un gráfico y luego use métodos espectrales para deducir propiedades sobre el gráfico. La razón por la que esto es aplicable en CS es porque podemos considerar una red de (alguna descripción dada) con grupos muy densos entre los vértices. ¡Al desarrollar un algoritmo espectral para la matriz de adyacencia, es posible recuperar los grupos!

Si quieres entrar en gráficos de computadora, es álgebra lineal hasta el final.

Para un programador de aplicaciones, es posible que el cálculo nunca surja, pero muchas escuelas tratarán la informática como un programa de ingeniería y, como tal, deberías poder hablar el idioma de los ingenieros (matemáticas, especialmente cálculo).

Bueno, ampliamente en gráficos de computadora (2D / 3D), cuando desea transformar objetos, aplique algunas transformaciones lineales y muchos otros temas (programación lineal, transformaciones de Fourier, algoritmos numéricos) …

Pensando en la secuencia de Fibonacci se puede resolver utilizando álgebra lineal (valores propios / vectores, etc.), ¡la solución es más rápida que la programación dinámica!

Gráficos, criptografía, minería web, algoritmos matemáticos … Cada una de estas aplicaciones es un curso completo de información y detalles.

¿Como todo?

Regresión, clasificación, optimización, agrupamiento, PCA …

Incluso si no hace aprendizaje automático, puede usarlo para acelerar sus bucles.

More Interesting

¿Qué es una lista de investigadores en UCLA que están trabajando en la investigación de aprendizaje automático?

Estoy interesado en seguir una carrera de investigación en aprendizaje automático. ¿Es el programa de maestría en informática en la Universidad de Nueva York una buena opción?

¿Vale la pena el tiempo dedicado a participar en la investigación financiada por NSF como estudiante?

Cómo encontrar doctorados en ciencias de la computación o investigadores que hayan publicado artículos

¿Cuál es el significado de las funciones de conjunto submodular?

¿Cuánta potencia informática se necesitaría para simular un mundo virtual que no se puede distinguir del mundo real?

¿Cuáles son algunos aspectos de investigación basados ​​en aplicaciones de big data?

¿Quiénes son los mejores académicos y practicantes del aprendizaje automático?

¿Podría el aprendizaje automático reemplazar a científicos e investigadores médicos?

¿Cuáles son algunos temas candentes en la investigación en nanotecnología?

¿Cuál es la diferencia entre visión por computadora, procesamiento de imágenes digitales y computación multimedia?

¿Cuál es el mejor servicio de indexación en línea para la investigación en informática?

¿Cuáles son algunos de los usos activos de los sistemas distribuidos de lectura / escritura / lectura débilmente consistentes como Bayou?

¿Cuánto trabajo se ha hecho para identificar acentos algorítmicamente?

¿Qué productos han salido de Microsoft Research?