背景介绍:
1)Weka: Weka有两种意思:一种不会飞的鸟的名字,一个机器学习开源项目的简称(Waikato Environment for Knowledge Analysis,http://www.cs./~ml/weka/)。 我们这里当然要介绍的是第二种意思啦,Weka项目从1992年开始,由新西兰政府支持,现在已在机器学习领域大名鼎鼎。Weka里有非常全面的机器学习 算法,包括数据预处理、分类、回归、聚类、关联规则等。Weka的图形界面对不会写程序的人来说非常方便,而且提供“KnowledgeFlow” 功能,允许将多个步骤组成一个工作流。另外,Weka也允许在命令行执行命令。 2)R R就不用我废话了吧,呵呵,越来越受欢迎的统计软件(http://www./)。 3)R与Weka: R里有很多机器学习的函数和包,不过Weka里提供的函数更全面更集中,所以我有时候需要用到Weka。以前我是这样用R和Weka的: 在R中准备好训练的数据(如:提取数据特征……); 整理成Weka需要的格式(*.arff); 在Weka里做机器学习(如:特征选择、分类……); 从Weka的预测结果计算需要的统计量(如:sensitivity, specificity, MCC……)。 来回捣腾两个软件还是挺麻烦的;为了偷懒,我没学Weka的命令行,只会用图形界面的,在数据量大的时候非常受罪,有时候还会内存不够。现在发现R竟然提供了和Weka的接口函数包RWeka,以后方便多了哦,下面介绍一下RWeka的功能: RWeka (http://cran./web/packages/RWeka/index.html) : 1) 数据输入和输出 WOW():查看Weka函数的参数。 Weka_control():设置Weka函数的参数。 read.arff():读Weka Attribute-Relation File Format (ARFF)格式的数据。 write.arff:将数据写入Weka Attribute-Relation File Format (ARFF)格式的文件。 2) 数据预处理 Normalize():无监督的标准化连续性数据。 Discretize():用MDL(Minimum Description Length)方法,有监督的离散化连续性数值数据。 3) 分类和回归 IBk():k最近邻分类 LBR():naive Bayes法分类 J48():C4.5决策树算法(决策树在分析各个属性时,是完全独立的)。 LMT():组合树结构和Logistic回归模型,每个叶子节点是一个Logistic回归模型,准确性比单独的决策树和Logistic回归方法要好。 M5P():M5 模型数算法,组合了树结构和线性回归模型,每个叶子节点是一个线性回归模型,因而可用于连续数据的回归。 DecisionStump():单层决策树算法,常被作为boosting的基本学习器。 SMO():支持向量机分类 AdaBoostM1():Adaboost M1方法。-W参数指定弱学习器的算法。 Bagging():通过从原始数据取样(用替换方法),创建多个模型。 LogitBoost():弱学习器采用了对数回归方法,学习到的是实数值 MultiBoostAB():AdaBoost 方法的改进,可看作AdaBoost 和 “wagging”的组合。 Stacking():用于不同的基本分类器集成的算法。 LinearRegression():建立合适的线性回归模型。 Logistic():建立logistic回归模型。 JRip():一种规则学习方法。 M5Rules():用M5方法产生回归问题的决策规则。 OneR():简单的1-R分类法。 PART():产生PART决策规则。 4) 聚类 Cobweb():这是种基于模型方法,它假设每个聚类的模型并发现适合相应模型的数据。不适合对大数据库进行聚类处理。 FarthestFirst():快速的近似的k均值聚类算法 SimpleKMeans():k均值聚类算法 XMeans():改进的k均值法,能自动决定类别数 DBScan():基于密度的聚类方法,它根据对象周围的密度不断增长聚类。它能从含有噪声的空间数据库中发现任意形状的聚类。此方法将一个聚类定义为一组“密度连接”的点集。 5)关联规则 Apriori():Apriori是关联规则领域里最具影响力的基础算法,是一种广度优先算法,通过多次扫描数据库来获取支持度大于最小支持度的频繁项 集。它的理论基础是频繁项集的两个单调性原则:频繁项集的任一子集一定是频繁的;非频繁项集的任一超集一定是非频繁的。在海量数据的情况 下,Apriori 算法的时间和空间成本非常高。 Tertius():Tertius算法。 6)预测和评估: predict():根据分类或聚类结果预测新数据的类别 table():比较两个因子对象 evaluate_Weka_classifier():评估模型的执行,如:TP Rate,FP Rate,Precision,Recall,F-Measure。 |
|
来自: ShangShujie > 《DM,ML》