数据挖掘工具与技术的前沿探索
一、Orange:从实验性机器学习到交互式数据挖掘
1.1 Orange框架概述
Orange是一个全面的、基于组件的机器学习和数据挖掘框架。它既面向有经验的机器学习用户和研究人员,让他们可以编写Python脚本,在尽可能复用代码的同时对新算法进行原型设计;也适合刚进入该领域的人员,他们能在强大且易用的可视化编程环境中进行操作。
Orange支持从数据预处理到建模和评估的各种任务,具体如下:
| 任务类型 | 具体内容 |
| ---- | ---- |
| 数据管理与预处理 | 采样、过滤、缩放、离散化、新属性构建等 |
| 分类和回归模型归纳 | 树、朴素贝叶斯分类器、基于实例的方法、线性和逻辑回归、支持向量机等 |
| 各种包装器 | 用于校准分类模型概率预测的包装器、用于提升和装袋的包装器等 |
| 描述性方法 | 关联规则和聚类 |
| 预测模型评估和评分方法 | 不同的保留方案、多种评分方法和可视化方法 |
1.2 Python脚本编写
Orange框架由多个层次组成。核心设计原则是使用C++编写基本的数据表示和操作以及所有耗时的程序,如大多数学习算法和数据预处理;而耗时较少的任务则用Python编写。Python是一种流行的面向对象脚本语言,以其简单性和强大功能著称,常被用作连接其他语言组件的“胶水语言”。
Python与C++之间的接口提供了紧密的集成:Python脚本可以像操作Python实现的对象一样访问和操作Orange对象;反之,Python中定义的组件也可以被C++核心使用。例如,可以使用