用NLTK进行文本分析

本文介绍了如何使用NLTK库进行英文和中文的文本分析,包括分词方法如空格分词、启发式分词和机器学习模型(HMM、CRF),并提到了结巴分词这一中文分词工具。同时,探讨了社交网络语言处理中的正则表达式应用,以及词形变化的处理,如词干提取和词形归一化。此外,还简述了NLTK在情感分析、文本相似度和文本分类等自然语言处理任务上的应用。

句子放进去就是字符串;

一、英文分词:利用空格;

中文分词:启发式分词,用长度优先的方式,最长的在字典中出现的词;

机器学习分词法:HMM、CRF

结巴分词的GitHub主页:https://github.com/fxsjy/jieba

基于python的中文分词的实现及应用:http://www.cnblogs.com/appler/archive/2012/02/02/2335834.html

对python中文分词模板结巴分词算法过程的理解和分析:

http://ddtcms.com/blog/archive/2013/2/4/69/jieba-fenci-suanfa-lijie/

https://blog.youkuaiyun.com/neutblue/article/details/7375085

二、社交网络语言

正则表达式:

http://www.regexlab.com/zh/regref.htm

import re
emoticons_str = r"""
    (?:
        [:=;] # 眼睛
        [oO\-]? # ⿐鼻⼦子
        [D\)\]\(\]/\\OpP] # 嘴
    )"""
regex_str = [
    emoticons_str,
    r'<[^>]+>', # HTML tags
    r'(?:@[\w_]+)', # @某⼈人
    r"(?:\#+[\w_]+[\w\'_\-]*[\w_]+)", # 话题标签
    r'http[s]?://(?:[a-z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-f][0-9a-f]))+', 
                   # URLs
    r'(?:(?:\d+,?)+(?:\.?\d+)?)', # 数字
    r"(?:[a-z][a-z'\-_]+[a-z])", # 含有 -
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值