knime白皮书(中文版).doc_第1页
knime白皮书(中文版).doc_第2页
knime白皮书(中文版).doc_第3页
knime白皮书(中文版).doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

技术报告(Knime: The Konstanz Information Miner)摘要-knime是一个能用来很简单的虚拟装配和交互执行数据管道的标准的环境Knime被设计成为一个教学,研究以及合作的平台,在这里你可以很容易的集成新的算法,数据操纵或者是可视化的方法比如一个新的模块或是节点。在这本白皮书我们将介绍有关设计方面的基础构架以及怎样将新节点插入的简单过程。第一 概述在过去的几年里,人们对标准的数据分析环境的迫切需求已经达到前所未有的程度。为了充分利用大量不同种类的数据分析方法,这样一个环境是必须的-能够简单而直观的使用,允许对分析进行快速和交互式的变换,用户可以可视化的搜索结果。为了应付这些挑战,数据流水线操作环境是再合适不过一种模型。它允许用户通过标准的组建模块可视化地组装和修改数据分析流,同时提供一种直观,图示的方法来记载操作日记。Knime就能提供这样的一个环境。图1展示的是一个例子的数据分析流截图在中间,一个数据流正从三个源节点读入同时在多处进行处理,也跟分析流相平行,包括预处理,建模,以及可视化节点。在这种类繁多的节点中,你可以选择数据源,数据处理步骤,模型搭建算法,可视化技术甚至是输入输出模型工具,然后将它拖到工作区,可以让它和其他节点连接起来。让所有操作实现图形交互的能力创建了检索你手中的数据集功能强大的环境Knime是用Java编写的而他的图形作业编辑区是一个类似Eclipse插件程序的工具。扩充是很容易的,通过打开API和数据抽象框架,把正确定义的新节点快速加入就可以了。在这本白皮书里我们会描述一些有关Knime内核的细节。更多信息你可以登陆网站查询。第二部分 构架Knime的构架在设计之初就有三个主要的原则: 可视化,交互式构架:数据流应该通过简单的拖放各种处理单元来组合。标准的应用程序能被设计通过单个的数据管道。 模块化:处理单元和数据容器不应该相互依靠,以便分布式计算和不同算法的独立开发的实现更简单。数据类型被封装,也就是说没有数据类型被重定义,新的数据类型能够伴随着明。类型描述传递器和比较器被很容易的添加。新的数据类型和已经存在的数据类型被同时声 易扩展性:它应该能很容易的添加新的处理节点或者是窗体,同时通过简单的插入和演示方法来对他们进行分布而不需通过复杂的安装/卸载步骤。为了达到这个目的,管道节点由数据分析处理组成,通过边来连接各节点传输数据或者是模型。每一个节点处理到达的数据或者模型然后把处理的结果传递到输出端口。图2处理结构图示处理的类型从简单的数据操作(如数据清洗,数据合并)到复杂的数据统计学功能(如平均数的计算,标准误差,用线性回归实现交互式的数据模型计算操作/聚类/决策树/神经网络)。另外,大部分模型节点允许交互式的检索处理结果。下面我们将简单的描述有关数据节点和数据作业管理核心内容,以及怎么样实现可视化交互式对话。A数据结构节点之间所有的数据流都被打包成一个叫数据目录的类,它把元信息和数据容器类型以及真实的数据联系起来。这种数据能够被反复的存取,比如数组。每一行包含一个特殊的标志位(或者是关键字)和具体的一串保存着真实数据的元数据避免通过行号或者索引号来获取入口的原因是可预测性,这就需要能够处理大量的数据同时也因此不需要保存每一行来获得快速,随机的访问。图3 主要的基础数据结构UML图示B节点节点是Knime中最主要的处理单元和经常用来在工作区组装一个可视化的节点,节点包类的功能性和利用用户定义的节点模型执行,如果合适的话可能是一个数据对话框,一个或者多个数据窗体例子如果用户由设定的需求对话框和窗体才会生效。下面图示展示了最常见的模型视图控制板样板。例外,为了实现输入输出,每一个节点都有有输入输出端口,它们能用来传输数据或是模型。图4 结构的UML图示C工作流程管理Knime的工作流程连接各节点的必需或者是正式的曲线图,一个有向循环图。作业流程管理器允许插入新的节点,同时也允许在两个节点之间添加有向边。同时它也能保存节点的状态轨迹(如配置,执行),如果需要也能够用以返回一组可执行节点。这样的环境构架能够自由的将工作量分给几个并行的线程,在未来甚至可以是分布式集中服务器。正是因为有了这基础的图形结构,工作流程管理器才能够满足所有节点按用户在实际需求中的希望的路径执行的需要。D可视化和交互式的便捷每一个节点都有一系列实物与之相对应。第三部分 库Knime能够提供种类繁多的饿节点,在这些节点当中有的用于各种数据输入输出,处理,转换,也有用于数据挖掘,机器学习以及可视化组件。数据输入输出:一般的文件阅读器,ARFF和Hitlist文件阅读器,数据库连接器,CSV,Hitlist and ARFF 写入器数据操作:数据行列过滤,数据分割和取样,随机拖放或是排列,数据连接与合并。数据转换:流失数据值代替器,模型转换器,存储箱,抽象值发生器小堆,规则管理挖掘。数据挖掘算法:聚类(K-方法,sota, 数据模糊 c-方法),决策树,(模糊)规则导向,回归,机器学习:神经网络(RBF和MLP),支持向量机,贝叶斯网络和贝叶斯分类器数据统计:通过集成的R可视化:离散点,柱状图,平行坐标,多面缩放比例,规则策划者,直线和月饼图微型化:描述节点(?:表示需要用外部的库或者是工具)第四部分 knime的外延Knime已经包括了用新的插件程序合并已经存在的数据分析工具,例如Weka,数据统计工具箱R,以及JFREEChart。一般情况下总是直接创建一个包给外部工具,而不必对这些进行修改而只是执行它们自己。添加新节点,也即是添加新的操作到Knime其实是很容易的。为了做到这一点我们需要对以下三个抽象类进行扩充:节点模型类:这个类用来承担主要的计算。它需要编写三种主要的方法:配置(configure()), 执行(execute(), 重启(reset())第一个用来把元信息输入表格然后产生新的具体输出。执行函数用来实际的处理数据或模型的输出。最后的重启用来丢弃所有的临时结果。节点对话框类:这个类用来具体化对话框,这能让用户调整自己的设置从而影响节点的执行。DefaultDialogComponent对象的一个标准设置能用来非常快速的创建对话框,而且只用简单的几个标准设置。节点图示类:这个类能被重新编写多次以实现在一个基础模型上的不同图示表示。每一个图示都通过HiliteHander被自动注册,同时发送事件当其他图示已经被标识出来,利用启动事件 另外对于这三个模型,对话框和图示类编程者需要提供一个节点库,创建新的实例。这个库也提供名字和其他细节比如可用图示的编码或缺失标志,或是对话框标志。一个以Eclipse为基础的开发环境允须快速的产生所需类的来创建一个新的节点。第五部分 可扩展的空间Knime有待进一步扩展。下面介绍了当下一些比较活跃的扩展开发方向。A元节点将一些小的工作流程压缩到一个集成节点的能力将使我们能够指派专门的服务器给这些小的数据流,把它作为一个重定义的模型输出给其他用户同时如果需要也允许我们创建一个包来重复执行,比如cross-validation,bagging and boosting, ensemble learning 等等最初的原型看起工作效果很好,我们同样希望将这一特点集成在将来的版本里、处理网状工作流程的功能也将让用户能够可视化的设计更加大,更加复杂的工作流程。B分布式处理由于这标准的构架让已定义的具体节点在不同的机器上执行变得很容易。但是为了提高和多 处理机机器的兼容性,同步共享存储变得越来越重要。Knime将会提供一个相应的构架来实现并行数据处理以及在聚类和网格之上的分布式操作。C化学和生物信息学当下很多羡慕都针对于生命科学应用领域。节点用来处理基因表达和高吞吐量,高容量细胞化学分析图都在研究开发。D网络服务实验性的节点被设计用来获得化学模型的数据估算。Knime本身也能够被看成是一个提供网络服务的潜在服务器,允许外部用户执行重定义的工作流程。我们要感谢许多Konstanz University的学生们的大量反馈信息以及bug报告.我们特别要感谢Kilian Thiel &Simona Pintilie在Sota resp.平行坐标现实方面所付出的努力.参考资料References1 Eclipse Foundation, Eclipse 3.1 Documentation,.2 Ian H. Witten and Eibe Frank, Data Mining: Practical machinelearning tools and techniques, Morgan Kaufmann, San Francisco,2005.3 R Development Core Team, R: A language and environment forstatistical

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论