tutoriales de programación | grupocodesi.com

Los algoritmos MÁS RÁPIDO para la clasificación de series con Python

Los algoritmos MÁS RÁPIDO para la clasificación de series con Python

La mayoría de los métodos de clasificación de series de tiempo de última generación (SOTA) están limitados por una alta complejidad computacional es por ello que se apoyan de los algoritmos con python. Esto los hace lentos para entrenar en conjuntos de datos más pequeños y efectivamente inutilizables en conjuntos de datos grandes. Pero los desarrollos de Python van mejorando con el paso del tiempo.

En este contexto, recientemente, ROCKET (RandOM Convolutional KErnel Transform) ha logrado SOTA de precisión en solo una fracción del tiempo que otros clasificadores de series de tiempo SOTA. Esto significa que ROCKET transforma series de tiempo en características utilizando núcleos convolucionales aleatorios y pasa las características a un clasificador lineal.

Por esa razón y muchas otras más no menos importantes, es que te recomendamos este curso de python profesional, el cual lo imparten de manera presencial o en linea, con instructores expertos en este lenguaje de programación.

¡MiniRocket es aún más rápido!

¡MiniRocket es aún más rápido!

MiniRocket (MINImally RandOm Convolutional KErnel Transform) es una reformulación (casi) determinista de Rocket que es 75 veces más rápida en conjuntos de datos más grandes y cuenta con una precisión aproximadamente equivalente. Este es un desarrollo de Python.

Para darnos una idea de su velocidad, en los 108 conjuntos de datos en el archivo UCR, Rocket se ejecutó en aproximadamente 2 horas en un solo núcleo de CPU. ¡MINIROCKET tardó solo 8 minutos en ejecutarse! A modo de comparación, el siguiente algoritmo SOTA más rápido (cBOSS) tomó aproximadamente 14 horas.

necesitas una pagina web

Introducción rápida a Rocket

En esencia, Rocket para Python es un método para la transformación de series de tiempo o extracción de características. Las características extraídas contienen información relacionada con la pertenencia a la clase de serie, que puede modelarse mediante un clasificador lineal.

Rocket transforma las series de tiempo convolucionando primero cada serie con 10.000 núcleos convolucionales aleatorios. Los granos aleatorios tienen longitud, pesos, sesgo, dilatación y relleno aleatorios. Luego, Rocket uno de los algoritmos con python puede aplica por separado la agrupación máxima global y la agrupación de "proporción de valores positivos" de PPV a la salida convolucional para producir 2 características por kernel, una característica para cada método de agrupación. Esto da como resultado 20.000 características por serie temporal de entrada.

La proporción de valores positivos indica cómo ponderar la prevalencia de un patrón capturado por el kernel. Este valor es el elemento más crítico de ROCKET y contribuye a su alta precisión. ¿En qué se diferencia MiniRocket de Rocket?

Tanto MiniRocket como Rocket se desarrollaron en Python y se basan en la combinación de valores de convolución utilizando PPV, o proporción de valores positivos, de los resultados de convolución. Como repaso rápido, puede definir PPV como PPV = proporción de valores que son mayores que 0, después de convolucionar X con pesos W y restar el sesgo b.

MiniRocket utiliza un conjunto pequeño y fijo de núcleos convolucionales en lugar de núcleos con hiperparámetros aleatorios. En general, MiniRocket minimiza la cantidad de opciones de hiperparámetros para cada kernel. El número de núcleos MiniRocket se mantiene lo más pequeño posible, sin dejar de mantener la precisión, para maximizar la eficiencia computacional.

El hecho que ambos hayan sido construidos en Python nos muestra la gran versatilidad y usabilidad de este lenguaje de programación, a la vez que nos permite visualizar su potencial de crecimiento.

Articulos Relacionados a la tecnología Java

Seguridad de Java Java para Android Applets Java Juegos en Java Web Services Java Servidor Java Java 8 Fundamentos de Java 8 Java 3D Curso de Java

Articulos Relacionados a la tecnología Python

Algunas diferencias entre Java y Python Introducción a los lenguajes de programación: Python Fundamentos de la comunidad de desarrolladores de Python Algunas ventajas y desventajas de Python Python o Java, cuál debes elegir Arreglos en Python Clases en Python Importancia de Python Python para Android Pydroid 3 Tutorial Entorno Virtual en Python Fundamentos de Python Caracteristicas de Python Compatibilidad de python con versiones anteriores Importancia de escribir codigo limpio en python Probar Aplicaciones de Python en nevegadores Python para Proyecto de la NASA Funciones dañinas de un malware escritas en Python Recuperar archivos cifrados por un malware escrito en Python Ofuscar codigo escrito en Python Ejecutar aplicacion en python Compiladores de Python Actualización de Visual Studio Code para Python de septiembre de 2020 Python 3.8.6 ahora está disponible en Python Insider Secuencias de comandos de Python en Azure Cloud Shell El lenguaje de programación Python Optimiacion en Python Instalación de múltiples versiones de Python Mypy: escritura estática opcional para Python IDE, integraciones de Linter de Mypy para Python Extension Mypy para python Propósito y pautas de PEP de Python Flujo de trabajo PEP para Python Enviar un PEP para mejorar Python revisar un PEP en Python Bienvenido a Python 3 Cambiar a Python 3 Vulnerabilidad de Python Desarrollo Web en Python Python como lenguaje principal Algoritmos con Python El futuro de Python Trabajo Geoespacial y python Eliminacion de fondo con python KMeans en Python Pyglobe de python Habilidades para el desarrollo en python

Diseño Web Grupo Codesi