机器学习和生物信息学实验室联盟

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5065|回复: 5
打印 上一主题 下一主题

mRMR特征选择程序使用方法

[复制链接]
跳转到指定楼层
楼主
发表于 2013-11-12 18:35:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
声明:本帖只是对mRMR特征选择程序的使用进行介绍,没有对原理方法深究。
出处链接: http://penglab.janelia.org/proj/mRMR/
1、输入文件格式要求:
        程序的输入文件格式必须是CSV文件。
2、输入内容的格式要求:
        CSV文件的内容形式是第一行是以类别特征开始的特征变量名,特征变量名之间用 “,” 隔开,不能有其它的字符。下面每一行都是对应特征变量名的特征值一样用逗号隔开。
        !!!注意的是,特征变量的第一个必须是类别(就是你的分类的标号),这跟我们平常arff文件的习惯不一样。
         例子: http://penglab.janelia.org/proj/mRMR/test_lung_s3.csv
3、该特征选择方法提供在线版本,但是有所限制,文件大小不能超过2M,特征变量的个数不能超过10000,选择的特征不能超过200。如果受限的话自己下作者源程序使用。
4、这里介绍作者提供的C++版本的程序的使用。
     命令是:./mrmr -i input.csv -t thresholds -n fea_num -m method -s max_example -v max_variables
     解释:input.csv是出入的文件。           
               thresholds默认是9999,这个变量的作用是类似定义一个区间,在该区间里面的例子得分是一样的。
               fea_num是要选择特征的个数,作者的程序设置为最多是500。要注意如果没有改作者的程序的话如果运行程序的fea_num大于500全部设置为500。如果需要增加特征个数,要改mrmr.cpp文件,重新编译之后,就可以随意设置选择要选择的特征个数。(编译方法见下面)
               method的值只有两种"MID"和“MIQ”。
               max_example是文件例子的最大值,默认是1000。
               max_variables是特征变量的最大个数,默认是10000.
5、如果有自己改程序,就要重新编译。确定自己机器有C++编译器后,用下面的命令:
      make -f  mrmr.makefile clean
      make -f mrmr.makefile
      然后就可以用命令(见4) ./mrmr ......运行了

     如果有什么不对或者不足的地方,欢迎各位补充和指正。谢谢。

   
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享
回复

使用道具 举报

沙发
 楼主| 发表于 2014-4-18 23:07:06 | 只看该作者
从完整的arff文件得到mrmr所需要的csv文件:java -jar arff_to_csv.jar inputFile.arff outputFile1.csv
inputFile.arff 是要选择特征的输入文件,必须是完整的arff文件。outputFile1.csv就是用来供mrmr使用的输入文件,下条命令也会用到。
可以选择任意特征个数的mrmr可执行文件(附件)。
从执行mrmr的结果获得选出特征的arff文件:
java -jar mrmr_to_arff.jar mrmrOutputFile outputFile1.csv outputFile.arff -f FeaNum -c ClassNum class1 class2...
mrmrOutputFile就是执行mrmr的输出文件名,outputFile1.csv 就是执行arff_to_csv.jar 得到的结果,outputFile.arff 是最后输出的文件名。FeaNum是选出的特征的个数,ClassNum是类标的数目。后面的class1 class2。。。 就是类标,个数要跟ClassNum对应,而类标的名称要跟最原始的arff文件的类标名对应。
举例:@attribute class {-1, 0, 1}

java -jar mrmr_to_arff.jar mrmrOutputFile outputFile1.csv outputFile.arff -f FeaNum -c 3 -1 0 1



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点评

我已重新修改了arff2csv.jar,支持了arff文件中的空行;真是不看源代码,不知道学生智商有多低!  发表于 2016-6-4 15:47
回复 支持 反对

使用道具 举报

板凳
发表于 2014-4-29 22:03:42 | 只看该作者
标题是mRMR??
对mRNA序列提取特征对吗?可不可以简单描述下特征都包括哪些。
回复 支持 反对

使用道具 举报

地板
发表于 2014-4-30 09:03:17 | 只看该作者
xmubingo 发表于 2014-4-29 22:03
标题是mRMR??
对mRNA序列提取特征对吗?可不可以简单描述下特征都包括哪些。

不是,mRMR是一种纯的机器学习降维方法。
回复 支持 反对

使用道具 举报

5#
 楼主| 发表于 2014-5-1 11:35:55 | 只看该作者
xmubingo 发表于 2014-4-29 22:03
标题是mRMR??
对mRNA序列提取特征对吗?可不可以简单描述下特征都包括哪些。

mRMR全称是Max-Relevance-Min-Redundancy。它是考虑每个特征和类别的关系,进行排序从而选择所需要的特征。这个程序适用于多分类,单标记。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

机器学习和生物信息学实验室联盟  

GMT+8, 2024-5-20 00:42 , Processed in 0.070722 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表