LDA代码训练报错记录

1、AttributeError: ‘CountVectorizer‘ object has no attribute ‘get_feature_names‘

代码内容:

tf_feature_names = tf_vectorizer.get_feature_names()

报错信息

AttributeError: 'CountVectorizer' object has no attribute 'get_feature_names'
报错解析:

属性错误 :“CountVectorizer”对象没有属性“get_feature_names”
其实是sklearn版本问题,解决方案

  • 修改sklearn的版本(需要降级)

    • `pip install scikit-learn==0.20.0
    • 提示:如果降低版本,后续与其他包的匹配会出现新的问题,需要慎重
  • 修改参数

    • tf_feature_names = tf_vectorizer.get_feature_names_out()
    • 将参数名称进行修改
    • 提示:如果用到pyLDAvis进行可视化时,同样需要修改里面的代码

TypeError: drop() takes from 1 to 2 positional arguments but 3 were given

报错代码 :

pic = pyLDAvis.sklearn.prepare(lda, tf, tf_vectorizer)

报错信息:

TypeError: drop() takes from 1 to 2 positional arguments but 3 were given

需要修改_prepare.py文件 ,
将243行代码改为 default_term_info = default_term_info.sort_values(
by=‘saliency’, ascending=False).head®.drop(‘saliency’, axis=1)

drop(‘saliency’, 1) ==> drop(‘saliency’, axis=1)

你可能感兴趣的:(LDA,报错)