`
eric_weitm
  • 浏览: 246113 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

nlp示例代码

 
阅读更多
import logging
from logging import NullHandler

log = logging.getLogger(__name__)
log.addHandler(NullHandler())

from corpussrc import DoubanCorpus
from gensim import corpora, models, similarities
from cleaner import StopWordFilter

def test_lsi_query(dictionary, lsi, index):
    teststr = u'哈哈有个评论太可爱了,你们知道吴京有多努力吗?不过打一星是看新闻气的。'
filter = StopWordFilter()
    vec_bow = dictionary.doc2bow(filter.transform(jieba.cut(teststr)))
    vec_lsi = lsi[vec_bow]
    sims = index[vec_lsi]
    sims = sorted(enumerate(sims), key=lambda item: -item[1])

    log.warn(sims)

def test_deep_learning():
    # size:特征向量的维度 window:上下文相关环境的长度  min_count:最小词频率 workers:进程数
model = models.Word2Vec(DoubanCorpus('tbDoubanReview'), size=100, window=5, min_count=5, workers=4)
    model.wv[u'吴京']
    model.wv.most_similar(positive=['woman', 'king'], negative=['man'])

# 语料-》词典->bow->model->similar
# 基本思路:向量化、比较向量
def testapi():
    dictionary = corpora.Dictionary(DoubanCorpus('tbDoubanReview'))
    log.warn(dictionary.token2id)

    docs = DoubanCorpus('tbDoubanReview')
    # bow格式[(0, 1), (1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (7, 1), (8, 1), (9, 1), (10, 1)], [(11, 1), (12, 1)]
    # 每个元组的含义是 字典中的id,本文档含有的次数, 只存储本文档含有的词汇
corpus = []
    for docwords in docs:
        log.warn(docwords)
        corpus.append(dictionary.doc2bow(docwords))

    log.warn(corpus)  # 1、bow

tfidf = models.TfidfModel(corpus)  # 2、bow ->tfidf
    # [(4, 0.447213595499958), (5, 0.447213595499958), (6, 0.447213595499958), (7, 0.447213595499958), (8, 0.447213595499958)]
    # 体现每个词的重要性,数值越大,越重要
corpus_tfidf = tfidf[corpus]
    for doc in corpus_tfidf:
        log.warn(doc)

    # 3、lsi 模型, 使用奇异矩阵来压缩数据(SVD),是去掉噪声的过程(去掉同义词、反义词的干扰)
lsi = models.LsiModel(corpus_tfidf, id2word=dictionary, num_topics=10)
    corpus_lsi = lsi[corpus_tfidf]
    lsi.print_topics(10)

    lda = models.LdaModel(corpus, id2word=dictionary, num_topics=100) # 输入是bow格式
lda.print_topics(20)

    # 先建立向量model的索引
index = similarities.MatrixSimilarity(lsi[corpus_tfidf])
    test_lsi_query(dictionary, lsi, index)


if __name__ == '__main__':
    testapi()
分享到:
评论

相关推荐

    大语言模型原理解析与示例代码

    知识领域:自然语言处理、深度学习、人工智能 技术关键词:大语言模型、Transformer、文本生成、模型架构 内容关键词:技术原理、模型结构、训练过程、示例代码 用途:为想要了解大语言模型原理及应用的学习者和...

    NLP(自然语言处理)命名实体识别代码详细步骤示例

    ### NLP(自然语言处理)命名实体识别代码详细步骤示例 #### 一、环境与工具介绍 在本文中,我们将详细介绍如何使用Python中的spaCy库进行命名实体识别(Named Entity Recognition, NER)。spaCy是一款强大的开源...

    自然语言处理NLP课程资料合集-74份.zip

    自然语言处理(NLP)是计算机科学领域的一个重要分支,它专注于使计算机能够理解、解析、生成和操作人类自然语言。这个"自然语言处理NLP课程资料合集-74份.zip"压缩包包含了丰富的学习资源,旨在帮助学生和研究人员...

    LSTM_lstm示例代码_LSTM_lstm代码_lstmmatlab_LSTMMATLAB代码.zip

    在自然语言处理、语音识别、时间序列预测等领域有着广泛的应用。MATLAB作为强大的数学计算软件,也提供了实现LSTM模型的工具箱。本资料主要包含LSTM在MATLAB环境下的实现代码示例。 1. LSTM结构: LSTM网络由输...

    python 自然语言处理实战代码部分

    Python自然语言处理(NLP)是信息技术领域的一个关键分支,主要涉及文本分析、语义理解、情感分析等任务。在Python中,NLP的实践往往依赖于强大的库,如NLTK(自然语言工具包)、spaCy、TextBlob以及gensim等。本...

    NLP学习(Datawhale AI夏令营) TASK01#Datawhale示例代码

    NLP学习(Datawhale AI夏令营) TASK01#Datawhale示例代码

    stm.zip_NLP_This Just In.._stm

    STM(Sequential Training Method)在NLP(自然语言处理)领域是一种常见的序列训练方法,它主要用于处理文本序列数据,比如句子、对话或者篇章。这个“stm.zip”文件可能包含了一个简单的NLP示例代码,用于演示如何...

    (源码)基于Python的自然语言处理课程示例.zip

    本项目是基于Python的自然语言处理课程示例,包含了使用jieba、HanLP和Stanford NLP库进行中文文本处理的示例代码。项目内容涵盖了中文分词、词性标注、命名实体识别、关键词提取、依存关系解析等功能,旨在帮助用户...

    nlp-recipes-ja:日语自然语言处理的示例代码

    该存储库包含用于日语自然语言处理的示例代码。 它受到的极大启发。 内容 以下是存储库中涵盖的常用NLP方案的摘要。 在一个或多个脚本或Jupyter笔记本示例中演示了每种情况,这些脚本或示例使用了模型和存储库实用...

    人工智能,自然语言处理代码

    在IT领域,人工智能(AI)是当前最热门的研究方向之一,而自然语言处理(NLP)作为AI的一个重要分支,正逐步改变我们与计算机交互的方式。这个压缩包包含了一系列关于AI和NLP的代码示例,让我们逐一探讨这些文件所...

    自然语言处理(NLP)、Transformer、Yolo等相关技术的资源

    自然语言处理(NLP)、Transformer、Yolo 等相关技术的资源 自然语言处理(NLP)是一种人工智能技术,旨在让计算机能够理解、处理和生成人类语言。Transformer 是一种基于自注意力机制的深度学习模型,广泛应用于...

    PowerTalk示例代码

    2. **用户输入处理**:示例代码可能包含解析和处理用户输入的函数,可能涉及自然语言处理(NLP)技术。 3. **生成响应**:如何根据用户输入生成合适的回应,可能涉及对话管理策略和模板。 4. **API集成**:如何将...

    合工大自然语言处理实验报告和代码,孙晓老师的课

    code文件夹则包含了实现自然语言处理任务的源代码,可能包括Python代码,使用了诸如NLTK(自然语言工具包)、Spacy、Scikit-learn或TensorFlow等流行的NLP库。通过阅读和运行代码,学习者可以直接看到理论如何转化为...

    .NET中文分词示例代码

    在.NET开发环境中,中文分词是一项重要的任务,特别是在文本处理、搜索引擎、自然语言处理等领域。本文将详细探讨.NET中文分词示例代码及其使用的盘古分词类库,旨在帮助开发者理解和实现中文分词功能。 首先,让...

    《自然语言处理导论》一书中用C++_nlp_cpp实现的代码.zip

    在《自然语言处理导论》书中,作者不仅向读者介绍了NLP的基本概念、理论和算法,而且还提供了用C++实现的代码示例。这些代码示例是学习和理解NLP算法实现细节的重要资源。通过阅读和运行这些代码,读者可以加深对...

    自然语言处理之BERT模型算法、架构和案例实战.pptx

    《自然语言处理之BERT模型算法、架构和案例实战》是一本非常全面、实用和深入的书籍,它不仅让我深入了解了BERT模型的相关知识,还让我掌握了一些实用的NLP开发技巧。这本书值得所有对NLP和BERT模型感兴趣的读者阅读...

    Python-NLP之旅包含NLP文章代码集锦

    在IT领域,自然语言处理(Natural Language Processing, NLP)是一项关键的技术,它涉及计算机对人类语言的理解、分析和生成。Python是NLP研究和应用的首选编程语言,因为其丰富的库和简洁的语法。"Python-NLP之旅...

    python 实现语音聊天机器人的示例代码

    2. **自然语言处理(NLP)**: 这一部分负责理解文本内容并生成合适的回应。在这个例子中,我们使用了图灵机器人提供的API来完成这项任务。 #### 三、技术栈介绍 - **Python**: 主要编程语言。 - **Requests**: HTTP...

    《自然语言处理实战:利用Python理解、分析和生成文本》源代码,作者霍布森•莱恩

    《自然语言处理实战:利用Python理解、分析和生成文本》这本书是自然语言处理(NLP)领域的经典之作,由霍布森·莱恩撰写。书中的源代码是学习和实践NLP技术的重要资源,涵盖了从基础到高级的各种NLP任务。在Python...

    华为图像服务场景动效Kotlin示例代码

    总之,华为图像服务场景动效Kotlin示例代码为OpenHarmony平台的程序开发提供了强大的图像处理能力。借助Kotlin的易用性和华为图像服务的丰富功能,开发者可以轻松创建出富有创意和吸引力的图像动效,提升应用程序的...

Global site tag (gtag.js) - Google Analytics