`
eric_weitm
  • 浏览: 242179 次
  • 性别: 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()
分享到:
评论

相关推荐

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

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

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

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

    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示例代码,用于演示如何...

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

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

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

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

    精通python自然语言处理 等英文书中的代码(from Github)

    本资源集合了"精通Python自然语言处理"等英文书籍中的代码,旨在帮助读者深入理解和实践Python在NLP领域的应用。 1. **NLTK(Natural Language Toolkit)** NLTK是Python中用于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中文分词示例代码及其使用的盘古分词类库,旨在帮助开发者理解和实现中文分词功能。 首先,让...

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

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

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

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

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

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

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

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

    hanlp-python_spiderpbl_ch11/11.5.py_自然语言处理入门_

    `11.5.py`可能是一个章节练习或示例代码,对应何晗先生的书籍关于自然语言处理的部分。这个Python版本的代码可能是为了配合书中理论讲解,提供实际操作的例子,帮助读者更好地理解和掌握NLP的基本概念和方法。 `...

    基于百度云的自然语言处理-分词-示例

    而"BDY_Nlp"可能是与百度云自然语言处理相关的代码库或者样例数据,里面可能包含了调用API的示例代码,展示了如何与百度云的服务进行交互,进行分词、词性标注和命名实体识别。 通过学习这个示例,开发者不仅可以...

    自然语言处理的最佳实践与示例

    针对常见NLP任务的示例代码和数据集 这个资源库对于NLP领域的学者、工程师和研究人员来说,是一个非常有价值的参考工具。通过学习这个资源库中的内容,您可以更好地了解NLP领域的新发展和最佳实践,从而为构建高质量...

Global site tag (gtag.js) - Google Analytics