Matrices de enteros. Solo tiene que cortar los números en segmentos manejables individualmente. El manejo inteligente de exponentes en hardware de punto flotante no es de mucha utilidad. Hay oportunidades para soltar precisión a veces, pero en su mayoría ocurren a gran escala; ¡calcular productos de 53 bits x 53 bits (o 64 bits x 64 bits) y redondear la ley, la mitad del producto no hace nada útil en ubicaciones en el medio del número!
Entonces, no hay nada para ello, prácticamente, sino dividir en rodajas enteras.
Hay tamaños intermedios para los que esto no es cierto. Siempre que los números no sean demasiado grandes, puede cortarlos en trozos bastante pequeños, cada uno almacenado en un formato de punto flotante. Esto significa que puede usar métodos de transformación directa como transformadas de Fourier con números complejos. Sin embargo, esto es un desperdicio en el almacenamiento. Debe conservar todos los bits de sus productos, de modo que sus rebanadas tengan como máximo la mitad del tamaño de los significados de coma flotante y no utilice el almacenamiento de exponentes en absoluto. En realidad, es peor que eso; necesita almacenar números lo suficientemente grandes como para contener la suma de una pila completa de productos por pares, un producto por pares para cada porción. Y necesitará raíces complejas de unidad (o equivalentes) con la precisión suficiente para no perder la precisión suficiente para hacer que el resultado exacto sea incierto. Entonces, una vez que sus números se vuelven lo suficientemente grandes, todo el punto de coma flotante se ahoga, y también podría usar números enteros.
- ¿Merecen la pena los cursos de Data Science en Microsoft Professional Program?
- ¿Cómo manejan las empresas el análisis cooperativo de datos que preserva la privacidad? ¿Hay algunos casos reales?
- ¿Cuál es el escenario actual / las perspectivas futuras de la ciencia de datos en la India en comparación con Silicon Valley?
- ¿Por qué odias el aprendizaje automático y la ciencia de datos?
- ¿Cual es mejor? ¿Minería de datos o análisis para inteligencia de negocios?
Curiosamente, si no lo ha visto antes, la forma habitual de manejar números muy largos es utilizar transformaciones (básicamente, siempre, hasta donde sé, transformaciones de Fourier), pero utilizando anillos finitos cuidadosamente seleccionados en lugar de los números complejos. Por todo tipo de razones, eso solo funciona bien con enteros como el tipo de implementación de bajo nivel en el hardware.