背景:最大熵模型可用于文本分类
maxent是个非常不错的最大熵java实现
主要的功能还是分为两部分特征提取和GIS迭代算法
1)特征提取采取了简单将分词作为特征,目前只支持单个字段,但如过要实现多字段特征也是很简单的事情。
2)GIS迭代算法没什么好说的,大量的数学推导,从数学上保证了解的唯一性和迭代收敛
1)整个训练流程就是
读取每行文本---》分词成特征----》迭代计算----》最后生成每个特征对于输出分类的权重
2)整个分类过程就是
读取样本(一行)---》分词成特征-----》根据每个特征在输出分类的权重,计算该样本在输出各分类中的概率
我以3w个真实样本作为训练,1.5w是垃圾,1.5w是非垃圾
另外1w个真实样本作为测试,5k垃圾,5k非垃圾
共产生了49838个特征,6792个仅出现在垃圾中,7797个特征在垃圾和非垃圾都出现,35249个特征仅出现在非垃圾中
模型文件大小:1.9M
实际垃圾 实际非垃圾
机审垃圾 4766 6
机审非垃圾 234 4994
垃圾召回率:95.32%
准确率: 99.87%
通过100个并发,每个并发10000条,耗时77s,性能还是可以接受的。
分享到:
相关推荐
OpenNLP(Open Natural Language Processing)是一个开源的自然语言处理工具包,主要为Java开发者提供服务。这个"opennlp-tools-1.3.0.gz"文件是OpenNLP的1.3.0版本,它包含了处理自然语言所需的各种算法和模型。...
OpenNLP 开发人员文档 OpenNLP 是一个基于机器学习的自然语言处理工具包,旨在提供一个成熟的工具包,用于自然语言处理任务,如断词、句子切分、部分词性标注、命名实体抽取、组块、解析和指代消解。 OpenNLP 库...
**C#实现OpenNLP** OpenNLP是一个流行的自然语言处理(NLP)库,主要由Apache软件基金会开发,主要用于处理各种NLP任务,如词性标注、命名实体识别、句子分割等。在C#中实现OpenNLP,通常是为了在.NET环境中利用其...
**OpenNLP 知识点详解** OpenNLP(Open Source Natural Language Processing)是一个由Apache软件基金会开发的Java库,专门用于处理自然语言文本。它提供了丰富的功能,可以帮助开发者进行各种自然语言处理(NLP)...
初学openNLP分词,代码初步实现了opennlp的相关方法
Apache OpenNLP 是一个强大的自然语言处理库,主要用于处理人类语言数据,提供多种文本分析功能。在这个场景中,我们使用OpenNLP来构建一个Java语言模型,该模型能够识别文本中的词汇、短语和实体,并进行句法分析,...
在本项目中,开发者利用了SpringBoot、OpenNLP、Neo4j和Spark等技术来构建一个智能的石油相关论文分析系统。这个系统的核心功能是通过朴素贝叶斯分类器对石油领域的学术论文进行自动分类和理解。接下来,我们将详细...
nlp-intent-toolkit, 基于OpenNLP的意向识别 nlp-intent-toolkit使用OpenNLP的插槽识别意图。这是使用OpenNLP训练系统接受自然语言输入,特别是通过speech-to-text源进行输入,并返回带有参数的识别操作的一个例子。...
opennlp, Apache OpenNLP镜像 欢迎使用 Apache OpenNLP ! Apache OpenNLP库是一种基于机器学习的自然语言文本处理工具包。这个工具包完全用Java编写,支持常见的,任务,例如标记。句子分割。part-of-speec
1 什么是OpenNLP,其具有哪些"内功"? 维基百科:Apache OpenNLP库是一个基于机器学习的自然语言文本处理的开发工具包,它支持自然语言处理中一些共有的任务,例如:标记化、句子分割、词性标注、固有实体提取(指在...
java运行依赖jar包
OpenNLP.NET是一个开源项目,它是Apache OpenNLP库的.NET平台实现,为.NET开发者提供了自然语言处理(NLP)的功能。OpenNLP是广泛应用于文本分析、信息提取、语义理解等领域的重要工具,它使用统计学方法处理自然...
OpenNLP 是一个机器学习工具包,用于处理自然语言文本。支持大多数常用的 NLP 任务,例如:标识化、句子切分、部分词性标注、名称抽取、组块、解析等 OpenNLP 是一个机器学习工具包,用于处理自然语言文本。支持...
【资源说明】 1、该资源包括项目的全部源码,下载可以直接使用! 2、本项目适合作为计算机、数学、电子信息等专业的...基于SpringBoot+OpenNLP+Neo4j+Spark朴素贝叶斯分类器实现石油相关论文的智能分析问答系统源码.zip
该项目是基于OpenNLP、Neo4j数据库和Spark的朴素贝叶斯分类器来实现一个石油相关论文的智能分析问答系统。以下是对这些关键组件及其在项目中的应用的详细解释: 1. **OpenNLP**: OpenNLP是Apache软件基金会开发的一...
该项目利用了基于springboot + vue + mysql的开发模式框架实现的课设系统,包括了项目的源码资源、sql文件、相关指引文档等等。 【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理...
1. **灵活性**:OpenNLP MaxEnt模型可以适应各种复杂的特征函数,包括线性和非线性特征,这使得模型能够处理复杂的数据模式。 2. **效率**:训练过程和预测过程都相对高效,适合处理大规模数据。 3. **可扩展性**...
OpenNLP 是一个机器学习工具包,用于处理自然语言文本。该工具包完全用 Java 编写,并支持常见的 NLP 任务,例如标记化、 句子分割、词性标记、命名实体提取、分块、解析、 共指解析、语言检测等。通常需要这些任务...
欢迎使用Apache OpenNLP! Apache OpenNLP库是基于机器学习的工具箱,用于处理自然语言文本。 该工具包完全用Java编写,并支持常见的NLP任务,例如标记化,句子分段,词性标记,命名实体提取,分块,解析,共指...
OpenNlp OpenNlp是自然语言处理(NLP)的开源库。 它在C#中提供了许多NLP工具: 句子分割器 标记器 词性标记器 分块器 共指 名称实体识别 解析树 ... 所有基于maxent算法的NLP工具都需要运行模型文件