1、weka的历史
1992年末,新西兰怀卡托大学计算机科学系Ian Written博士申请基金。
1993年获新西兰政府资助,并于同年开发出接口和基础架构。
1994年发布了第一个weka的内部版本。
1996年,第一个公开版本weka2.1发布。weka的早期版本主要采用C语言编写。
1997年,团队决定使用Java重新改写。Java允许用一个统一的接口来学习方案和方法的预处理和后处理,决定使用Java来代替C++或其他面向对象的语言,是因为Java编写的程序可以运行在绝大部分计算机上,而无须重新编译,更不需要修改源代码。weka已经测试过的平台包括Linux, Windows和Macintosh操作系统,甚至PDA。最后的可执行程序复制过来即可运行,完全绿色,不需求复杂安装。当然,Java也有其缺点,最大的问题是它在速度上有缺陷,执行一个Java程序比相应的C语言程序马上好几倍。
1999年,发布Java的weka 3版本。
2013年,weka的最新版本是3.7.8。
2、weka功能简介
weka系统汇集了最前沿的机器学习算法和数据预处理工具,以便用户能够快速灵活地将已有的处理方法应用于新的数据集。
weka主界面为weka GUI选择器,它通过右边的四个按钮提供四种主要的应用程序供用户选择,如图:
1)Explorer(探索者),系统提供的最容易使用的图像用户接口。通过选择菜单和填写表单,可以调用weka的所有功能。
虽然探索者界面使用很方便,但它也存在一个缺陷,要求它将所需数据全部一次读进内存,一旦用户打开某个数据集,就会读取全部数据。因此,这种批量方式仅适合处理中小规模的问题。而知识流刚好能够弥补这一缺陷。
2)KnowledgeFlow(知识流),使用增量方式的算法来处理大型数据集,用户可以定制处理数据流的方式和顺序。按照一定顺序将代表数据源、预处理工具、学习算法、评估手段和可视化模块的各构件组合在一起,形成数据流。
3)Experimenter(实验者),用于帮助用户解答实际应用分类和回归技术中遇到的一个基本问题-----对于一个已知问题,哪种方法及参数值能够取得最佳效果?尽管探索者界面也能通过交互完成这样的功能,但通过实验者界面,用户可以让处理过程实现自动化。实验者界面更加容易使用不同参数去设置分类器和过滤器,使之运行在一组数据集中,收集性能统计数据,实现重要的测试实验。
4)Simple CLI(简单命令行),这个界面是为不提供自己的命令行界面的操作系统提供的,该简单命令行界面用户和用户进行交互,可以直接执行weka命令。