基于Python的中文自动分词实验

中文自动分词实验 实验内容 使用任意分词方法进行分词 实验要求和目的 使用任意分词方法实现汉语自动分词; 给出至少 1000 个句子的分词结果(以附件形式); 计算出分词结果的正确率

本文包含相关资料包-----> 点击直达获取<-------

中文自动分词实验

实验内容

使用任意分词方法进行分词

实验要求和目的

使用任意分词方法实现汉语自动分词;

给出至少 1000 个句子的分词结果(以附件形式);

计算出分词结果的正确率,并给出计算依据;

用实例说明所用分词方法分别对“交叉歧义”和“组合歧义”的处理能力;

提交实验报告,给出详细实验过程和结果;提交源代码和可执行程序。

实验环境

操作系统 macOS Sierra

内存 16G

开发语言 Python

程序主要算法

如对一个字符串:

S:有意见分歧

分词结果 1: w1:有/ 意见/ 分歧/

分词结果 2: w2:有意/ 见/ 分歧/

最大概率分词就是要求得 Max(P(w1|s),P(w2|s)) 。

根据贝叶斯公式:

P(w|s)=P(s|w)P(w)/P(s) (公式 1)

在公式 1 中,因为 P(s)和 P(w|s)都基本一样,因此,就求最大的 P(w)即可。根据一元语法,词之间出现的概率互相独立,因此有下面的公式成:

P(w)=P(w1,w2,…,w3)=P(w1)P(w2)…P(w3) (公式 2)

即字符串出现的概率就是构成字符串的各个词的概率之积。而一个词的概率可以按照其出现的次数除以语料中总的词数得到。

分析下面的例子,我们可以计算得到各个词的概率为:

  • 有:0.018
  • 有意:0.0005
  • 意见:0.001
  • 见:0.0002
  • 分歧:0.0001

则根据公式 2 有:

  • P(w1)=p(有)P(意见)P(分歧)=0.018 0.001 0.0001=1.8*10^(-9)
  • P(w2)=P(有意)P(见)P(分歧)=0.0005 0.0002 0.0001=1*10^(-11)
  • 由于 P(w1)>P(w2),故 w1 为该字符串的分词结果。

当然,在实际操作过程中,如果字符串比较长,分词的形式就会非常多,计算量和长度呈指数增长关系,因此需要采用一定的来减少运算量,我们可以看到字符串的概率是累计相乘的,因此可以采用动态规划的方法来减少运算量。

这里记 P`(w)为到达候选词 wi 时的累计概率,则

P (wi)=P (wi-1)P(wi)(公式 3)

根据公式 3,有 P (意见)=P (有)P(意见)

实验过程

首先利用微博词频语料库构造分词训练语料库,使用 Sogou 新闻语料作为训练集。然后使用分词算法输出到文本文件。

实验结果

分词好的 700 多条句子已经放到压缩包中,名为 seg.txt

实验结论和体会

通过分词实验,探索了很多分词方案。如 HMM/FMM,以及本文说的概率最大分词法。对机器学习有了一定的了解。

参考文献

  • 中文文本自动校对系统设计与实现(西南交通大学·张涛)
  • 基于领域文本大数据的快速分词系统的设计与实现(南京大学·陶德彬)
  • 汉语词法分析平台的构建(大连理工大学·叶子语)
  • 中文文本自动校对系统设计与实现(西南交通大学·张涛)
  • 基于网络爬虫的论坛数据分析系统的设计与实现(华中科技大学·黎曦)
  • 基于知识图谱的文本分类算法研究(厦门大学·潘洋彬)
  • 面向不同错误类型的中文文本纠错方法研究(湘潭大学·龙广玉)
  • 中文文本自动校对系统设计与实现(西南交通大学·张涛)
  • 面向程序设计领域的新词检测算法研究与应用(东华大学·刘梦)
  • 中文文本校对关键技术研究与应用(电子科技大学·吴淙)
  • 互联网舆情安全预警平台数据采集及处理软件的设计与实现(电子科技大学·李明轩)
  • 中文文本自动校对系统设计与实现(西南交通大学·张涛)
  • 基于微服务的智能实验教学管理系统的设计与实现(西安电子科技大学·刘凯)
  • 网络信息采集技术及中文未登录词算法研究(北京邮电大学·陈浩)
  • 网络新闻语料库建设及其分布式检索系统研究(华中师范大学·鲁松)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:源码码头 ,原文地址:https://bishedaima.com/yuanma/36095.html

相关推荐

  • 基于SpringBoot框架的服装生产管理

    这是一个采用Java语言开发的🔥🔥SpringBoot核心框架的服装生产管理系统源代码🔥🔥,该项目运用了SpringBoot和Vue的技术栈,开发工具为Idea或Eclipse
    2024年05月23日
    7 1 1
  • 基于JSP+sqlserver的电子书在线网站源码

    随着互联网技术的不断发展,电子书行业也逐渐兴起,基于JSP+SQL Server的电子书在线网站源码的研究和开发变得日益重要,该系统采用JSP,Servlet和SQL Server等技术实现了一个功能完善的电子书下载网站系统
    2024年05月07日
    21 1 6
  • 基于Springboot+Jean推理机+Jsoup实现的个人健康监控管理系统

    基于Springboot+Jean推理机+Jsoup实现的个人健康监控管理系统 一,项目简介 1,1 背景分析 健康管理的思路和实践最初出现在美国
    2024年05月14日
    3 1 1
  • 基于SpringBoot框架的网上服装商城

    这是一套采用🔥🔥SpringBoot为核心的电商服装平台源代码,主要编程语言为Java,并结合了Vue,js技术,开发工具选择的是Idea或Eclipse,此项目可被用作毕业设计或课程实践任务
    2024年05月23日
    45 1 8
  • CNN 模型之Python

    CNN 模型 一,CNN 模型原理 1,1 什么是 CNN 在数字图像处理中有一个称为“边缘检测”的技术,它用到了信号的卷积操作,使用 Sobel 算子和原图像做卷积
    2024年05月14日
    2 1 1
  • 基于JSP的美食网站食谱网站、javaweb源码

    本文将探讨基于JSP的美食网站食谱网站,javaweb源码的设计与实现,当前,随着网络技术的不断发展,人们对于获取美食信息的需求日益增长,然而,在现有的美食网站中,用户可能会遇到信息不够详尽
    2024年05月07日
    7 1 1
  • 基于SSM的中医管理系统源码

    这是一个🔥🔥基于SSM的中医管理系统🔥🔥的项目源码,开发语言Java,开发环境Idea/Eclipse,这个 中医管理系统开发技术栈为SSM项目,可以作为毕业设计课程设计作业使用SSM框架实现一个中医管理系统
    2024年05月23日
    16 1 5
  • SpringDataJPA

    (一)J2EE 项目系列(三)--Spring Data JPA+Spring+SpringMVC+Maven 快速开发(1)项目架构 (二)J2EE 项目系列(三)--Spring Data JPA+Spring+SpringMVC+Maven 快速开发(2)多个第三方服务端接入之云旺 IM (三)Java-解决实现 JPA 的 hibernate 自动建表的编码问题 (四)WEB 后台--基于 Token 的 Web 后台登录认证机制(并讲解其他认证机制以及 cookie 和 session 机制) (一)J2EE 项目系列(三)--Spring Data JPA+Spring+SpringMVC+Maven 快速开发(1)项目架构 文章结构:(1)项目环境搭建;(2)简单业务逻辑测试框架;(3)项目配置注意点;(4)快速开发上手技巧; 一
    2024年05月14日
    3 1 1
  • 基于tensorflow和flask的本地图片库web图片搜索引擎

    基于tensorflow和flask的本地图片库web图片搜索引擎 1 Project Overview 1,1 Project Description Based on tensorflow and Flask
    2024年05月14日
    2 1 1
  • 使用Python编写的换脸软件

    使用Python编写的换脸软件 这是一个使用Python编写的换脸软件,所提供的换脸功能包含以下两个场景: 将图像B上的人脸换成图像A上的人脸
    2024年05月14日
    1 1 1

发表回复

登录后才能评论