



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Mallet:自然语言处理工具包发表于128 天前技术,科研评论数 6 被围观1006Views+MALLET是基于java的自然语言处理工具箱,包括分档得分类、句类、主题模型、信息抽取等其他机器学习在文本方面的应用,虽然是文本的应用,但是完全可以拿到多媒体方面来,例如机器视觉。MALLET包含了足够的文本分类的算法,还有特征提取的算法等。文本分类的算法像是Nave Bayes, Maximum Entropy, and Decision Trees等,而且也对代码做了优化。MALLET也包含sequence tagging的工具和算法,例如信息抽取的应用等,算法有Hidden Markov Models, Maximum Entropy Markov Models, and Conditional Random Fields.MALLET也包含主题模型:topic modelingtoolkit contains efficient, sampling-based implementations of Latent Dirichlet Allocation, Pachinko Allocation, and Hierarchical LDA.MALLET当然还有其他功能,很强大。下面是api和一个pdf的链接:API 教程。=关于MALLET的安装配置=这里有一个安装配置的说明,我把它转载过来了:Mallet使用说明Mallet是专门用于机器学习方面的软件包,此软件包基于java。通过mallet工具,可以进行自然语言处理,文本分类,主题建模。文本聚类,信息抽取等。下面是从如何配置mallet环境到如何使用mallet进行介绍。一实验环境配置1.下载并安装JDK,并正确设置环境变量需设置三个环境变量:JAVA_HOME:该环境变量的值就是Java所在的目录,例如C:Program FilesJavajdk1.6.0_10PATH:指定一个路径列表,用于搜索可执行文件。该环境变量值为:%JAVA_HOME%binCLASSPATH:指定一个路径列表,是用于搜索Java编译或者运行时需要用到的类。该环境变量的值为:%JAVA_HOME%libtools.jar;%JAVA_HOME%libdt.jar运行cmd分别输入javac和java,没有出错则表示配置成功。2.下载apache-ant,不需安装,只需正确设置环境变量。apache-ant是一个基于Java的编译工具。下载/bindownload.cgi,解压放到你要的目录配置ANT_HOME:设置为apache-ant的解压目录,例如:C:serverapache-ant-1.8.0classpath:%ANT_HOME%libPath:%ANT_HOME%bin测试运行cmd输入ant结果如下则表示配置成功Buildfile:build.xmldoes not exist!Build failed3下载mallet最新版本mallet-2.0.5,地址:/download.php配置环境变量:MALLET_HOME=MALLET的解压目录,例如C:malletPath中添加%MALLET_HOME%binclasspath:%mallet_home%class;%mallet_home%lib;%mallet_home%libmallet-deps.jar运行cmd,进入到mallet的解压目录输入ant如果出现Build successful字样,则表示配置成功二Mallet简要说明全称:MAchineLearning forLanguagEToolkitMallet是一java的软件包,专门用于统计自然语言处理,文本分类,主题建模,信息抽取,以及其它涉及文本的机器学习方面的应用。a)文本分类:它的基本思想是,用大量的训练样本训练分类器,再用些测试样本测试分类器的性能,然后保存训练好的分类器模型。当将未知类别的文本输入已训练好的分类模型时,可输出此未知类别样本所属各个类别的的概率。b)主题建模:主题建模用于分析大量的未标示(类别未知)的文本。通过分析这些文本,可以得出一些(个数可指定,也可默认)主题,每个主题由一些经常出现在一起的词组成。可以保存建模好的主体模型,以备推断一未知文本所属主题时所用。c)Mallet可以把文本转换为数学上的表达形式,从而更有效的对文本进行机器学习。这个过程是通过“管道(pipe)”系统实现的,它可以进行分词,移除停用词,把序列转换为向量等方面的操作。具体代码可见malletsrcccmalletpipe。三Mallet使用步骤文本分类:1.C:malletmallet import-dir -input sample-dataclassify-input* -output classify-input.mallet此命令等价于:C:malletjava cc.mallet.classify.tui.Text2Vectors -input sample-dataclassify-input* -outputclassify-input.vectors此命令是把classify-input(此名称可以根据自己的需要改,我在此命名此文件夹名为classify-input)目录下的文件夹中的所有数据转为特征向量的形式,mallet可用已转换好的数据格式进行训练、测试分类器等操作。注:在此,classify-input下有三个文件夹,分别为sport、science、food。执行此命令后,系统会自动将数据分为三类,类别名称为sport、science、food,三个文件夹下的数据类别分别于所属文件夹名称一一对应。2.C:malletmallet train-classifier -input classify-input.mallet-trainerNaiveBayes-training-portion 0.8 -output-classifier classifier1.classifier此命令等价于:C:malletjava cc.mallet.classify.tui.Vectors2Classify -inputclassify-input.vectors-trainerNaiveBayes-training-portion 0.8 -output-classifierclassifier1.classifier此命令是训练、测试分类器。-input参数的值classify-input.mallet是第一步中生成的特征向量,-trainer参数的值NaiveBayes是指训练分类器的算法,可以指定其他算法,例如MaxEnt等。-training-portion参数的值这里是0.8,可以根据需要设定,0.8的意思是随机抽取classify-input.mallet数据中的80%当训练数据,剩下的当测试数据,用于测试已训练好的分类器的准确性等等性能指标。-output-classifier参数的值classifier1.classifier是所存已训练好的分类器的名称。3.C:malletjava cc.mallet.classify.tui.Text2Classify -input sample-datadataclassify-test.txt -output - -classifier classifier1.classifier此命令是用已训练好的分类器来对一未知类别文本进行分类。-input参数值sample-datadataclassify-test.txt是要进行分类的未知类别文本的位置。-output后面参数值“-”意思是直接在命令行中输出所属各个类别的概率。-classifier参数的值是指使用的分类器名称(即,训练好的分类器)。注:对未知类别文本进行分类时不需进行数据预处理,直接输入文本即可,文本中一行代表一个分类实例。主题建模1. C:malletmallet import-dir -input sample-datatopic-input -output topic-input.mallet-keep-sequence -remove-stopwords此命令是将topic-input目录下的所有文本转换为特征序列,-keep-sequence参数必须有,否则会出错,因为主题建模时所用数据源就是特征序列,而不是特征向量,所以必须用-keep-sequence此参数来限制转换数据的格式。-remove-stopwords的意思是移除停用词。2. C:malletmallet train-topics -input topic-input.mallet-num-topics 2 -output-doc-topicsdocstopics-inferencer-filename infer1.inferencer此命令是用第一步的数据进行主题建模,参数-num-topics的值2意思是限定主题个数为2,可以根据需要设置其他值,默认的主题数为10.。-output-doc-topics参数的意思是输出文档-主题矩阵,存到docstopics文件中。-inferencer-filename参数的意思是对将训练好的主题模型进行存储,以备后用,在此,此主题模型存到参数值infer1.inferencer中,可根据习惯自行命名。3.C:malletmallet import-dir -input sample-datadata -outputtopic-test.mallet-keep-sequence -remove-stopwords同1说明。4.C:malletmallet infer-topics -input topic-test.mallet-inferencerinfer1.inferencer -output-doc-topicstestdocstopics用训练好的主题模型对未标示的文本topic-test进行主题推断。-inferencer参数的意思是用已经训练好的主题模型infer1.inferencer进行对未知文本的主题推断。-output-doc-topics参数的意思是输出文档-主题矩阵,存到docstopics文件中。注:文本分类时未知文本必须用一文档表示,文档中每行代表一分类实例。而主题建模时可以对单个文档主题建模,可以对一目录下的所有文档进行主题建模,例如主题建模第三步,可以用import-dir命令。C:malletmallet import-file -input sample-datadatatopi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数学苏教七年级下册期末解答题压轴模拟真题真题(比较难)答案
- 沪教版生活中常见的盐单元达标综合模拟测评学能测试试题
- (完整版)数学初中苏教七年级下册期末模拟真题试卷经典套题答案
- 英语小学五年级上册期末提高试题测试卷(附答案解析)
- (英语)高一英语完形填空夹叙夹议的基本方法技巧及练习题及练习题(含答案)含解析
- (完整版)数学苏教六年级下册期末测试模拟真题答案
- 2025年土建质量员资质考试实战试卷C含答案详解
- 2025年设备监理师之质量投资进度控制综合检测试卷A卷含答案
- 初级会计电算化考试练习题及答案
- 2025机械制造工艺数字化试题及答案
- 保障农民工工资课件
- 人脸采集管理办法
- 壶腹部肿瘤的治疗及护理
- 感术行动培训课件
- 桥梁施工安全会议记录
- 乡村旅游环境卫生培训
- 六级英语试题库电子版及答案
- 2025年工程机械行业发展研究报告
- (二模)2025年5月济南市高三高考针对性训练英语试卷(含答案解析)
- 智慧燃气解决方案
- 抖音来客本地生活服务丽人美容美体商家短视频拍摄创作运营方案
评论
0/150
提交评论