find()
y la indexación lógica son tus amigos. Del mismo modo, evite agregar a los vectores y, en su lugar, preasigne memoria para sus resultados y elimínela más adelante si es necesario.
Mi algoritmo básico para “mejorar el código lento de las personas” es buscar bucles for con sentencias if anidadas dentro de ellas, especialmente si se agregan a un vector (aunque el resaltado de sintaxis de MatLab ya les advertirá sobre eso). Un ejemplo estúpido podría ser un ciclo de 1 a 1000000 que pone números pares en un vector.
iguala = []; para i = 1: 1E6 si rem (i, 2) == 0% si es incluso ... iguala = [iguala, i]; fin fin
¡Este código será SLOOOOOWWW!
- Cómo interpretar los resultados de R después del análisis en las organizaciones
- ¿Cómo puede un estudiante de primer año en la universidad comenzar su viaje para una carrera en ML e IA?
- ¿Los principales profesionales de aprendizaje profundo a menudo tienen grandes lagunas de conocimiento debido a lo rápido que se mueve el campo?
- ¿Cuál es el mejor foro de red neuronal en Internet?
- ¿Existe alguna directriz para diseñar redes neuronales en términos de número de capas ocultas, número de unidades ocultas, tamaño de filtro (CNN) y paso de tiempo (RNN)?
pares = 1: 1E6; % Preasignar espacio excesivo para el resultado. pares [rem (pares, 2) ~ = 0] = []; % Convierta todos los valores no pares en vectores vacíos, eliminándolos del vector de resultados.
¡Este código será súper rápido!