Permítanme ampliar la respuesta de Justin Rising. El álgebra abstracta se trata de extraer patrones comunes. ¿Qué tienen en común las cadenas y los enteros? Ambos se pueden agregar (1 + 1 = 2, “a” + “a” = “aa”) y ambos tienen un elemento cero (1 + 0 = 1, “a” + “” = “a”). En el lenguaje del álgebra abstracta hay un monoide para ambos.
Tenga en cuenta que para ser un monoide, la operación de suma también debe ser asociativa, por lo que (a + b) + c = a + (b + c) y cerrada. Muchos monoides también son conmutativos, por lo que a + b = b + a. Ver Monoid en Wikipedia. Esto será importante más adelante.
¿Por qué es útil esto? La abstracción es generalmente útil porque le permite escribir más código reutilizable. Si escribe código que usa solo un Monoide, puede sustituirlo en cualquier instancia de Monoid (por ejemplo, Int, String, Map o …) y simplemente funcionará.
- ¿Es la raíz de la ecuación cuadrática [matemática] x ^ 2 - ax - b ^ 2 = 0 [/ matemática] real o compleja; si es real, racional o irracional?
- Cómo determinar la suma de una secuencia si es tanto aritmética como geométrica
- ¿La teoría del caos es prácticamente inútil dado que sus conclusiones son que un sistema caótico no se presta a cálculos matemáticos?
- ¿Qué es 2 ^ 2 ^ 2003?
- ¿Cuál es una explicación de esta solución en detalle?
Eso es bueno en sí mismo. Hay un concepto muy general (Monoid) que nos permite escribir más código reutilizable. ¡Pero hay más!
En primer lugar, las personas que realizan análisis de datos tratan muchas cosas que son monoides. Por ejemplo, si desea contar elementos distintos (“¿cuántos visitantes únicos recibió esta página web?”) Está tratando con Conjuntos. Los conjuntos son monoides y, por lo tanto, son contadores de elementos únicos aproximados como HyperLogLog (que es un algoritmo súper increíble y algo que aprende por sí mismo). Entonces, si está haciendo un análisis de datos, está utilizando estos conceptos todo el tiempo, lo que los hace aún más relevantes.
Finalmente, si está haciendo análisis de datos “a escala”, está ejecutando cálculos en muchas máquinas. ¿Cómo se combinan los resultados de estos cálculos? Bueno, si estás usando monoides conmutativos, ¡solo agrégalos! La propiedad de conmutatividad significa que no importa en qué orden realice esta adición. Por lo tanto, puede agregar los resultados de la máquina 1 + máquina 2 + máquina 3 o máquina 3 + máquina 1 + máquina 2 o … lo que sea, no importa. Siempre obtendrá la respuesta correcta. Esto significa que distribuir el trabajo a través de las máquinas es realmente fácil porque nunca tendrá que preocuparse por la fusión complicada posterior.
Entonces, resumen:
– El álgebra abstracta le permite escribir código reutilizable.
– El análisis de datos involucra muchos conceptos que pueden describirse usando álgebra abstracta.
– El uso de abstracciones de álgebra abstracta (específicamente operaciones conmutativas) le permite fusionar cálculos distribuidos sin preocuparse por el orden en que se fusionan.