如何改进ld中不同主题的单词分配

2024-09-20 22:54:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在研究一种不是英语的语言,我从不同的来源收集了数据。我已经做了我的预处理,如标点删除,停止词删除和标记化。现在我想提取领域特定的词汇。假设我有与体育、娱乐等相关的数据,我想提取与这些特定领域相关的单词,比如板球等,并将它们放在密切相关的主题中。我试着用lda来做这个,但是我没有得到正确的簇。同样,在一个主题的一部分中,一个词也出现在其他主题中。在

我怎样才能提高我的成绩?在

 # URDU STOP WORDS REMOVAL
        doc_clean = []
        stopwords_corpus = UrduCorpusReader('./data', ['stopwords-ur.txt'])    
        stopwords = stopwords_corpus.words()
        # print(stopwords)
        for infile in (wordlists.fileids()):
            words = wordlists.words(infile)
            #print(words)


            finalized_words = remove_urdu_stopwords(stopwords, words)
            doc = doc_clean.append(finalized_words)

            print("\n==== WITHOUT STOPWORDS ===========\n")
            print(finalized_words)

            # making dictionary and corpus
        dictionary  = corpora.Dictionary(doc_clean)
        # convert tokenized documents into a document-term matrix
        matrx= [dictionary.doc2bow(text) for text in doc_clean]
        # generate LDA model
        lda = models.ldamodel.LdaModel(corpus=matrx, id2word=dictionary, num_topics=5, passes=10)
        for top in lda.print_topics():
                print("\n===topics from files===\n")
                print (top)

Tags: 数据inclean主题fordocdictionarycorpus
1条回答
网友
1楼 · 发布于 2024-09-20 22:54:25

LDA及其缺陷:LDA的思想是从你的语料库中发现潜在的主题。这种无监督机器学习方法的一个缺点是,你最终会遇到一些人类难以理解的话题。另一个缺点是,您很可能最终会遇到一些通用主题,包括出现在每个文档中的单词(如“简介”、“日期”、“作者”等)。第三,你将无法发现潜在的话题,而这些话题根本就不存在。如果你只有一篇关于板球的文章,它将不会被算法识别。在

为什么LDA不适合您的案例: 你在寻找一些明确的主题,比如cricket你想学习一些关于板球词汇的知识,对吗?然而,LDA会输出一些主题,而您需要识别板球词汇,以便确定例如,主题5与板球有关。通常情况下,LDA将识别与其他相关主题混合的主题。记住这一点,有三种情况:

  1. 你对板球一无所知,但你能确定与板球有关的主题。在
  2. 你是个板球专家,已经知道板球的词汇了
  3. 你对cricket一无所知,也无法识别LDA产生的语义主题。在

在第一种情况下,您可能会遇到这样的问题:您可能会将单词与cricket关联起来,而这些单词实际上与cricket无关,因为您依赖LDA输出来提供高质量的主题,这些主题仅与cricket有关,而没有其他相关主题或通用术语。在第二种情况下,首先你不需要分析,因为你已经知道板球的词汇了!第三种情况可能是当你依靠计算机来解释主题时。然而,在LDA中,您总是依赖于人类来给出输出的语义解释。在

那么该怎么办:有一篇论文叫做Targeted Topic Modeling for Focused Analysis (Wang 2016),它试图确定哪些文档与预定义的主题有关(比如cricket)。如果你有一个主题列表,你想获得一些特定于主题的词汇(板球、篮球、浪漫喜剧等等),一个起点可以是首先确定相关文档,然后继续分析与某个主题相关的文档的单词分布。在

请注意,也许有完全不同的方法可以执行您正在寻找的东西。如果你想继续读LDA相关文献,我相对相信我链接的文章是你最好的选择。在

编辑: 如果这个答案对你有用,你可能会发现my paper也很有趣。它使用一个标记的学术经济学论文数据集(600多个可能的标签),并尝试各种LDA风格,以获得对新学术论文的最佳预测。回购协议包含我的代码、文档和论文本身

相关问题 更多 >

    热门问题