作者主题模型

作者主题模型ATMODEL

最近一篇关于JAVA的博客中处理的结果,直接用于该python代码运行。
遇到的bug:

1.BUG1

perwordbound = at_model.bound(at_model.corpus, author2doc=at_model.author2doc,
                              doc2author=at_model.doc2author) / corpus_words

ValueError:bound cannot be called with authors not seen during training.
原因:author.txt中存在

湖北大学,2,5,6,8
湖北大学
,9,28
湖北中医药大学
,7,9,56

这样的不规范数据

2.BUG2

for a, a_doc_ids in author2doc.items():
    for i, doc_id in enumerate(a_doc_ids):
        author2doc[a][i] = doc_id_dict[doc_id]

提示author2doc[a][i] = doc_id_dict[doc_id]出错,KeyValue:’ ’
原因:author.txt中存在某行最后以“,”结尾,导致切割时出现空文档,如下面的第一行

中南大学,11,12,
北京大学,15

下面代码有如下问题:

  1. 有冗余部分
  2. 最后导出的结果sim.csv用Excel打开是乱码,但用Notepad++打开正常,要在Notepad++将编码改为UTF-8-BOM
  3. 功能不够完整
  4. 对内存不友好,但不知道如何调整目前的文件格式
# -*- coding:utf-8 -*-
import os
import re
from gensim.corpora import Dictionary
from gensim.models import AuthorTopicModel
from gensim.models import atmodel
from pprint import pprint
from sklearn.manifold import TSNE
# from bokeh.io import output_notebook
from bokeh.models import HoverTool
from bokeh.plotting import figure, output_file, show, ColumnDataSource
from gensim import matutils
import pandas as pd
from pandas import DataFrame
import xlrd
import openpyxl
from xlutils.copy import copy
import csv

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值