J'ai créé un modèle RandomForestClassification en utilisant SkLearn en utilisant 10 fonctions textuelles différentes et un ensemble d'apprentissage de 10000. Ensuite, j'ai décapé le modèle (76mb) dans l'espoir de l'utiliser pour la prédiction. Cependant, afin de produire la forêt aléatoire, j'ai utilisé LabelEncoder et OneHotEncoder pour de meilleurs résultats sur les données catégorielles/chaîne.Prédire à partir de SciKitLearn RandomForestClassification avec des données catégoriques
Maintenant, je voudrais remonter le modèle décapé et obtenir une prédiction de classification sur 1 instance. Cependant, je ne suis pas sûr de savoir comment encoder le texte sur l'instance 1 sans charger l'intégralité de la formation & ensemble de données de test CSV à nouveau et en passant par l'ensemble du processus d'encodage.
Il semble assez laborieux de charger les fichiers csv à chaque fois. Je voudrais que ça tourne 1000 fois par heure donc ça ne me semble pas juste.
Existe-t-il un moyen de coder rapidement une ligne de données en fonction du pickle ou d'une autre variable/paramètre? L'encodage nécessite-t-il toujours TOUTES les données? Si le chargement de toutes les données d'apprentissage est nécessaire pour coder une seule ligne, il serait avantageux d'encoder les données textuelles moi-même dans une base de données où chaque caractéristique affectée à une table, auto-incrémentée avec un ID numérique et une clé UNIQUE sur le champ text/categorical, puis passez cet identifiant à RandomForestClassification? Évidemment, j'aurais besoin de réaménager et décaper ce nouveau modèle, mais alors je connaîtrais exactement la représentation numérique (codée) d'une nouvelle ligne et demanderais simplement une prédiction sur ces valeurs.
Il est très probable qu'il me manque une fonctionnalité ou un malentendu SkLearn ou Python, j'ai seulement commencé il y a 3 jours. S'il vous plaît excusez ma naïveté.
Vous auriez dû décaper votre objet LabelEncoder ... –