我有一个模型,我想腌制它使用。我使用joblib,但是当我对其进行腌制时,出现错误TypeError:无法腌制模块对象。请如何解决。
import pandas as pd
import joblib
from src.model.svm_model import SVMModel
class TextClassificationPredict(object):
def __init__(self):
self.test = None
@staticmethod
def get_train_data():
df_train = pd.read_excel("Data/Data.xlsx", header=0)
# test data
test_data = []
test_data.append({"feature": u"truyen full", "target": "mo_truyenfull"})
df_test = pd.DataFrame(test_data)
model = SVMModel()
clf = model.clf.fit(df_train["feature"], df_train["target"])
joblib.dump(model.clf, "test.pkl")
这是SVMModel
from sklearn.pipeline import Pipeline
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfTransformer
from src.transformer.feature_transformer import FeatureTransformer
from sklearn.linear_model import SGDClassifier
class SVMModel(object):
def __init__(self):
self.clf = self._init_pipeline()
@staticmethod
def _init_pipeline():
pipe_line = Pipeline([
("transformer", FeatureTransformer()),
("vect", CountVectorizer()),
("tfidf", TfidfTransformer()),
("clf-svm", SGDClassifier(loss='log', penalty='l2', alpha=1e-3, n_iter=20, random_state=None))
])
return pipe_line