KNIME1(/naɪm/,和 knife 一样,k不发音)是德国康斯坦茨大学开发的一款功能强大的免费开源分析工具。

KNIME 究竟有什么过人之处呢?个人总结大概有这么几点:

  1. 商业模式。采用开源的方式来免费分发软件,但给付费客户提供更多具有特定附加值的服务,相比于某些如果只要处理超过一万行的数据就需要付费的软件,成本要少的多;
  2. 易于使用。KNIME 拥有上千个模块,上百个可以直接运行的示例,是数据从业者的理想工具箱。图形化编程会让你非常容易上手;
  3. 提供了良好的插件机制(PlugIn)。你可以去开发一些没有的新功能,并通过官方渠道以免费或收费的形式发布出去,官方抽成一部分,类似苹果的 App Store;
  4. 设计理念。当你无知无畏的用过,写过很多工具,突然间有那么一款让你出现 "啊哈"(aha moment) 的软件,那一定是他里面有一些视角或前瞻性是你从来没有想到过,但仔细再想想这就是最好的方案,KNIME 就能给你带来这种体验,比如 Workflow Coach 功能、Guided Analytics 理念等等;
  5. 和其他工具的互联互通性。在 Unix/Linux 的世界中,有一个重要的理念(philosophy)就是,Do one thing, and do it well,做一个大而全的工具是很困难的,这个理念就是要让制作工具的人(程序员)在做功能的时候只做一个功能,并把它做好。复杂的功能,由简单功能一个串一个就好了。KNIME 知道自己擅长哪些,知道自己不擅长哪些,所以他做了不少和其他工具,语言互通互联的接口,比如他可以调用 Python,把 Python 的代码块组织到当前的流程(workflow)中,等等这类互联互通的工作,所谓,他山之石,可以攻玉。

KNIME 生态圈
大致介绍如下:

  • KNIME Analytics Platform:KNIME 分析平台。分析平台在我们的语境中经常被简称为 KNIME,我们可以利用 KNIME 来图形化的构造数据模型。它提供了众多的基础分析处理模块,我们将在后面对其中的模块进行一一介绍。在正常下载、安装 KNIME 之后,我们将能够使用 KNIME 分析平台。
  • KNIME Server:KNIME 服务端程序。KNIME 服务端程序提供了 workflow 协作、自动化执行、自动化管理、自动化部署、引导式分析(guided analytics)等一系列功能,这部分功能为团队提供了极大的便利。这部分是需要收费的。这也是 KNIME 公司的主要收入来源之一。
  • KNIME Extensions:KNIME 扩展程序。扩展程序主要是在 KNIME Analytics Platform 的基础上,增加了一些复杂的数据类型,以及一些额外的机器算法。比如对于文字处理、图模型等等模块就属于 KNIME 的扩展程序。这部分程序是通过 KNIME 分析平台菜单 File -> install KNIME Extensions... 来进行查找安装的。
  • KNIME Integrations: KNIME 集成程序。这一部分主要是 KNIME 利用大型的第三方的工具或是语言,用来完成复杂的任务。这里的好处在于,有的功能 KNIME 中没有,但第三方的工具已经实现好了,那么 KNIME 就可以直接调用第三方工具进行处理,甚至可以再将第三方工具处理后的结果再放回 KNIME 进行下一步处理。对于一些需要大数据、机器学习、以及 Python、R 等工具的任务会特别方便。比如,对于深度学习有一个特别常用的库 - keras,KNIME 集成中就有对应模块,用来对接 keras,提供控制调用。这一部分是由 KNIME 官方维护的。虽然这一部分叫 KNIME Integrations,但这一部分和 KNIME Extensions 的安装位置是一致的。为了方便起见,我们在后面统一不加区分的把这部分内容称为扩展。
  • Community Extensions:社区扩展程序。社区扩展是由社区成员贡献的扩展。其中有一部分被称为 Trusted Community Extensions -- 信任的社区扩展,它是社区扩展程序的子集,它的主要特点在于它有一套严格的测试、版本兼容,以及版本的发布运维流程。这一部分仍然与上面所说的 KNIME Extensions 安装位置相同。
  • Partner Extensions:第三方扩展程序。这部分程序是由第三方公司维护的扩展,通常,这一部分扩展需要购买才能使用。

KNIME 的资源
KNIME 除了内置的 node description 窗格可以随时参考节点的信息之外, KNIME 的官方网站2简直就是一个宝藏。只要你会英文,或者英文不好也没有关系(坚持学习一阵时间就习惯了),这个网站中各式各样、组织的清清楚楚的学习资源等你来学、来查。
当你遇到搞不定的问题时,你可以去 KNIME 论坛(英文)3提问,只要你描述的够清晰、准确,众多的 KNIME 爱好者或是 KNIME 官方的人员会协助你解决你遇到的问题。在KNIME 博客(英文)中,你可以看到众多作者分享他们使用 KNIME 的经验,甚至是有一些作者将自己的经验连载成了一个系列,比如 Will They Blend(他们能混合吗?)系列就是将 KNIME 和各种各样其他工具进行混合的尝试。KNIME TV channel4有不少关于 KNIME 的视频教程。另外,在 twitter, facebook, 以及 LinkedIn 都有相应的 KNIME 主页或是讨论组。在 KNIME 4.0 后,KNIME 官方推出了 KNIME Hub,它不仅有着众多的 workflow,你可以通过搜索找到和你工作任务相关的主题参考,另外 KNIME Hub 还将一些现有的 workflow 打散成节点,当你有不会使用的节点时,你将会通过搜索节点名称获得众多相关的示例 workflow ,进而学会如何使用节点。另外,nodepit5 也是一个和 KNIME Hub 有着同样作用的网站,这个站点比官方的 Hub 年纪更大一些,除了搜索以外,你还可以安装 NodePit for KNIME 扩展,使用它内置的云盘功能存储或分享 workflow。
原文:https://zhuanlan.zhihu.com/p/90017360?utm_source=wechat_session



 

Logo

获得宣传、场地、资金和创业导师资源

更多推荐