0
votes

Puis-je convertir un modèle / fichier ".py" ou ".ipynb" créé sur le Tensorflow de Google Colab en modèle / fichier coreML?

J'ai créé un modèle CNN sur le Tensorflow de Google Colab et téléchargé le fichier en tant que fichier ".py". Comment puis-je convertir ce fichier en un fichier ".coreml"?

Tout conseil est très apprécié!

Merci!


1 commentaires

Les fichiers .py sont des fichiers de code source Python. Ce n'est pas un modèle d'apprentissage automatique. Vous devrez également télécharger le fichier de modèle CNN réellement formé.


3 Réponses :


0
votes

Documentation sur la conversion en .mlmodel s de Core ML: https://developer.apple.com/documentation/coreml/converting_trained_models_to_core_ml

Pour les modèles TensorFlow, vous devez le convertir en modèle Frozen.pb en tant qu'entrée pour la fonction de conversion. Voici quelques exemples: https://github.com/tf-coreml / tf-coreml / tree / master / examples


0 commentaires

0
votes

Si vous avez téléchargé un fichier .py , vous n'avez pas téléchargé le modèle, mais tout le script Python.

Une fois votre modèle compilé, vous pouvez utiliser le package python coremltools pour convertir le modèle TensorFlow / Keras en un fichier .mlmodel .

import coremltools

core_mlmodel = coremltools.converters.keras.convert(your_keras_model, respect_trainable=True)
core_mlmodel.save("YourModel.mlmodel")

Ensuite, vous trouverez votre modèle sur la gauche dans Fichiers .


1 commentaires

Merci Sebastian. Très appréciée. J'apprends le modèle multi-sortie et j'ai essayé d'utiliser cette fonction pour convertir le modèle .h5 en coreml. J'utilise ce script suivant pour cette conversion. Cependant, lorsque j'exécute ce modèle coreml dans Xcode, il y a toujours une erreur disant que "La taille de la couche de sortie 'output2' dans le réseau neuronal ne correspond pas au nombre de classes dans le classificateur." Je suis sûr que j'ai énuméré le nombre correct de classes. Un conseil sur la façon de résoudre ce problème est très apprécié? Merci!



0
votes

@ Sebastian J. Vogt. Ceci est mon code de conversion. Est-ce correct? Merci!

import coremltools

category_output_labels = ['dress', 'shirt', 'trousers']
color_output_labels = ['black', 'blue', 'green', 'pink', 'red', 
'white']

coreml_model = coremltools.converters.keras.convert('./fashion_multi_output_v02.h5',

input_names = 'image', image_input_names = 'image', class_labels = ['category_output_labels', 'color_output_labels'])


0 commentaires