¿Cuáles son las precauciones para cambiar los trabajos de entrenamiento de la versión antigua a la nueva?
Las diferencias entre la nueva versión y la versión anterior radican en:
- Diferencias en la creación de trabajo de entrenamiento
- Diferencias en la adaptación del código de entrenamiento
- Diferencias en motores de entrenamiento incorporados
Diferencias en la creación de trabajo de entrenamiento
En la versión anterior, puede usar algoritmos personalizados, marcos comunes e imágenes personalizadas para crear trabajos de entrenamiento.
En la nueva versión, puede utilizar los algoritmos personalizados para crear trabajos de entrenamiento.
En la nueva versión, los algoritmos se pueden seleccionar por categoría al crear un trabajo de entrenamiento. Esto no afecta a los puestos de entrenamiento existentes.
Si utiliza algoritmos personalizados o marcos comunes para crear trabajos de entrenamiento en la versión anterior, puede utilizar un script personalizado para hacerlo en la nueva versión.
Si utiliza imágenes personalizadas para crear trabajos de entrenamiento en la versión anterior, puede utilizar una imagen personalizada para hacerlo en la nueva versión.
Diferencias en la adaptación del código de entrenamiento
En la versión anterior, se requiere que configure la entrada y salida de datos de la siguiente manera:
# Parse CLI parameters. import argparse parser = argparse.ArgumentParser(description='MindSpore Lenet Example') parser.add_argument('--data_url', type=str, default="./Data", help='path where the dataset is saved') parser.add_argument('--train_url', type=str, default="./Model", help='if is test, must provide\ path where the trained ckpt file') args = parser.parse_args() ... # Download data to your local container. In the code, local_data_path specifies the training input path. mox.file.copy_parallel(args.data_url, local_data_path) ... # Upload the local container data to the OBS path. mox.file.copy_parallel(local_output_path, args.train_url)
En la nueva versión, solo necesita configurar las entradas y salidas de entrenamiento. En el código, se utilizan arg.data_url y arg.train_url como rutas locales. Para obtener más información, consulte Desarrollo de un script personalizado.
# Parse CLI parameters. import argparse parser = argparse.ArgumentParser(description='MindSpore Lenet Example') parser.add_argument('--data_url', type=str, default="./Data", help='path where the dataset is saved') parser.add_argument('--train_url', type=str, default="./Model", help='if is test, must provide\ path where the trained ckpt file') args = parser.parse_args() ... # The downloaded code does not need to be set. Use data_url and train_url for data training and output. # Download data to your local container. In the code, local_data_path specifies the training input path. #mox.file.copy_parallel(args.data_url, local_data_path) ... # Upload the local container data to the OBS path. #mox.file.copy_parallel(local_output_path, args.train_url)
Diferencias en motores de entrenamiento incorporados
- En la nueva versión, se instala MoXing 2.0.0 o posterior de forma predeterminada para los motores de entrenamiento integrados.
- En la nueva versión, Python 3.7 o posterior se utiliza para los motores de entrenamiento incorporados.
- En la nueva imagen, el directorio principal predeterminado se ha cambiado de /home/work a /home/ma-user. Comprueba si el código de entrenamiento contiene una codificación dura de /home/work.
- Built-in training engines are different between the old and new versions. Commonly used built-in training engines have been upgraded in the new version.
Para utilizar un motor de entrenamiento en la versión anterior, cambie a la versión anterior. Tabla 1 enumera las diferencias entre los motores de entrenamiento incorporados en las versiones antiguas y nuevas.
Tabla 1 Diferencias entre los motores de entrenamiento incorporados en las versiones antiguas y nuevas Entorno de tiempo de ejecución
Motor y versión de entrenamiento incorporados
Versión anterior
Versión nueva
TensorFlow
TensorFlow-1.8.0
√
x
TensorFlow-1.13.1
√
Próximamente
TensorFlow-2.1.0
√
√
MXNet
MXNet-1.2.1
√
x
Caffe
Caffe-1.0.0
√
x
Spark MLlib
Spark-2.3.2
√
x
Ray
Ray-0.7.4
√
x
XGBoost with scikit-learn
XGBoost-0.80-Sklearn-0.18.1
√
x
PyTorch
PyTorch-1.0.0
√
x
PyTorch-1.3.0
√
x
PyTorch-1.4.0
√
x
PyTorch-1.8.0
x
√
MPI
MindSpore-1.3.0
x
√
Horovod
Horovod_0.20.0-TensorFlow_2.1.0
x
√
horovod_0.22.1-pytorch_1.8.0
x
√
MindSpore-GPU
MindSpore-1.1.0
√
x
MindSpore-1.2.0
√
x
Consultoría funcional Preguntas frecuentes
- ¿Cuáles son los requisitos de formato para los algoritmos importados desde un entorno local?
- ¿Cuáles son las soluciones para el underfitting?
- ¿Cuáles son las precauciones para cambiar los trabajos de entrenamiento de la versión antigua a la nueva?
- ¿Cómo obtengo un modelo de ModelArts entrenado?
- ¿Cómo configuro el entorno de tiempo de ejecución del motor de IA Scikit_Learn 0.18.1?
- ¿Deben ser categóricos los hiperparámetros optimizados usando un algoritmo de TPE?
- ¿Para qué se utiliza TensorBoard en los trabajos de visualización de modelos?
- ¿Cómo obtengo RANK_TABLE_FILE en ModelArts para el entrenamiento distribuido?
- ¿Cómo obtengo las versiones CUDA y cuDNN de una imagen personalizada?
- ¿Cómo obtengo un archivo de instalación de MoXing?
- En un entrenamiento con multinodo, el nodo de PS TensorFlow que funciona como un servidor se suspenderá continuamente. ¿Cómo determina ModelArts si el entrenamiento está completo? ¿Qué nodo es un trabajador?
- ¿Cómo instalo MoXing para una imagen personalizada?
Comentarios
¿Le pareció útil esta página?
Deje algún comentariomore