french-sentiment-analysis-with-bert icon indicating copy to clipboard operation
french-sentiment-analysis-with-bert copied to clipboard

TensorFlow JS

Open WillyPoteloin opened this issue 4 years ago • 6 comments

Bonjour,

J'ai essayé de convertir votre modèle (qui semble être le seul pertinent pour du sentiment analysis sur des textes français) au format TensorFlowJS (https://www.tensorflow.org/js/tutorials/conversion/import_keras?hl=fr) mais sans succès...

J'ai d'abord essayé de convertir directement le fichier Keras h5 trouvé sur hugging face mais il semble que celui-ci ne contient que les pondérations d'après ce que j'ai compris.

J'ai alors monté le projet en python comme expliqué et cela marche très bien.

J'ai ensuite essayé d'enregistrer le modèle récupéré par ligne suivante dans plusieurs format :

model = TFAutoModelForSequenceClassification.from_pretrained("tblard/tf-allocine")

d'abord directement au format TFJS : tfjs.converters.save_keras_model(model, './tfjs2')

J'ai alors un message qui me dit que le model de peux pas être enregistré dans ce format et qu'il faut que je l'enregistre au format TF saved model : Saving the model to HDF5 format requires the model to be a Functional model or a Sequential model. It does not work for subclassed models, because such models are defined via the body of a Python method, which isn't safely serializable. Consider saving to the Tensorflow SavedModel format (by setting save_format="tf") or using save_weights.

puis au format Keras afin de réessayer la conversion : tensorflow.keras.models.save_model(model, 'test.h5')

Même erreur qu'avec TFJS

et enfin au format TensorFlow saved model : tensorflow.saved_model.save(model, './tfmodel')

La ça marche bien mais la conversion ne marche pas mieux j'ai cette erreur : Unsupported Ops in the model before optimization : Einsum

J'ai fini par en conclure que le modèle n'était pas compatible avec une transformation vers TFJS ce qui semble être assez commun d'après la documentation.

Pensez-vous qu'il est possible de faire marcher ce modèle dans TFJS ?

N'hésitez pas a me demander plus de précisions si je ne suis pas clair.

Merci d'avance.

WillyPoteloin avatar Feb 11 '21 19:02 WillyPoteloin

Bonjour! Le modèle tblard/tf-allocine est une déclinaison du modèle CamemBERT (lui même étant une déclinaison de RoBERTa) provenant du model hub de HuggingFace. Apparemment, il semble tout à fait possible d'utiliser ces modèles avec Tensorflow JS (cf: cet article et ce repo). L'article détaille comment exporter le modèle sous format SavedModel et comment le charger dans Tensorflow JS. Pour le preprocessing du texte, vous allez aussi avoir besoin des bindings de tokenizers. Le repo semble être un exemple concret des techniques présentées par l'article, appliquées au question answering.

TheophileBlard avatar Feb 18 '21 21:02 TheophileBlard

Merci pour les infos. Je vais regarder tout et voir si j'arrive à quelque chose.

WillyPoteloin avatar Feb 26 '21 10:02 WillyPoteloin

Bonjour ! Avez-vous réussi à convertir le modèle ? J'aimerais bien utiliser ce modèle avec NodeJS

FaustinM avatar Apr 26 '21 17:04 FaustinM

Bonjour ! Avez-vous réussi à convertir le modèle ? J'aimerais bien utiliser ce modèle avec NodeJS

J'ai personnellement réussi à convertir le modèle en format SavedModel, en suivant les indications de l'article, donc cette partie fonctionne. Pour la partie Javascript je n'ai pas eu le temps de m'y pencher, sachant que je suis un novice en JS. Peut être que @WillyPoteloin a avancé sur le sujet ?

TheophileBlard avatar Apr 27 '21 18:04 TheophileBlard

Bonjour,

Malheureusement j'ai été rattrapé par le boulot et n'est pas eu le temps d'approfondir pour l'instant....

WillyPoteloin avatar Apr 28 '21 16:04 WillyPoteloin

Bonjour, merci pour l'information je regarderai de mon côté et je vous dirais si j'ai réussi :).

Bonne soirée

Le mer. 28 avr. 2021 à 18:31, Willy @.***> a écrit :

Bonjour,

Malheureusement j'ai été rattrapé par le boulot et n'est pas eu le temps d'approfondir pour l'instant....

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/TheophileBlard/french-sentiment-analysis-with-bert/issues/5#issuecomment-828597721, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGBUUYCQA2Q7UFMQYLQBAF3TLAZ6JANCNFSM4XPOIUCQ .

FaustinM avatar Apr 28 '21 16:04 FaustinM