COMPANY

PAGE TOP

BLOG

RapidMiner vs KNIME ~市民データサイエンティストに向いているのはどっち?~

皆さんこんにちは。
KSKアナリティクスの北野です。

このブログをご覧になっている方は、RapidMinerについて既によくご存知かと思います。
では、KNIME(ナイム)という名前を聞いたことはあるでしょうか?

KNIMEは、RapidMinerと同じく、データ分析をドラッグアンドドロップで行うツールです。
言ってみれば、RapidMinerのライバルにあたる製品です。

RapidMinerのライバルならば調査せねば!ということで、
今日はRapidMinerとKNIMEを比較してみたいと思います。
  

RapidMinerとKNIME

まずRapidMinerとKNIMEを簡単にご紹介いたします。

RapidMiner

RapidMiner(ラピッドマイナー)はプログラムの知識がなくても、データサイエンティストが行うような高度な分析業務をドラッグ&ドロップの簡単な操作で行うことができる、世界中で使われている機械学習プラットフォームです。
データ加工(前処理)からデータ可視化、モデル作成、評価、運用までを一つのプラットフォームで行うことができるのが特徴です。(RapidMiner日本語サイトより)

このブログの読者はすでにご存知でしょうか?
もし、まだよく知らないよ、またはもっと詳しく知りたいという方がいらっしゃったら、ぜひこちらへどうぞ!

  

KNIME

インフォコム株式会社が出している日本語のKNIMEのサイトによると、KNIMEは以下のように紹介されています。

KNIME Analytics Platformはデータ理解、分析フロー設計、分析構成要素の可視化を通じ、データソフトウェア開発者、エンジニア、およびデータサイエンティストたちの直感的な共同作業を可能にします。

紹介文を見ると、RapidMinerもKNIMEも「直感的に操作できるデータ分析ツール」ということがわかります。
しかし、このような短い文ではそれぞれどんな強みがあるのかよくわかりません。
  
  

海外の評価

そこで、海外ではどのように評価されているのか見てみましょう。

Gartnerという調査会社が出したレポートによると、RapidMinerは6年連続リーダーポジションに位置しています。
一方、KNIMEも同じくリーダーポジションに位置しており、RapidMinerのすぐ近くに位置しています。


  
また、海外の比較記事もいくつかご紹介いたします。
Compare KNIME vs. RapidMiner in Data Science and Machine Learning Platforms | Gartner Peer Insights

Cmotions | KNIME vs. RapidMiner

RapidMiner Studio vs KNIME Analytics Platform 2019 Comparison | FinancesOnline

これらの記事を読むと、RapidMinerとKNIMEの評価はほとんど拮抗しております。
RapidMinerのほうが良いと言われていたり、KNIMEのほうが良いと言われていたり様々です。

そこで、今回は実際にデータを使ってRapidMinerとKNIMEを比較してみましょう!

  

RapidMinerとKNIMEの比較

今回はデータ分析でよく使われるIrisデータを用いて、データの読み込み、前処理、可視化、モデルの作成を行います。

なお、本記事では比較がメインですので、KNIMEのインストールや使い方の説明は省略させていただきます。
また、筆者自身はRapidMiner側の人間ですが、できる限り公平な立場で比較した所感を書いていきたいと思います。

RapidMinerとKNIME早見表

RapidMiner KNIME
1.インタフェース
2.基本統計量の確認・可視化
3.前処理
4.アルゴリズム
5.拡張性
6.サポート

  

1.インタフェース

RapidMiner

KNIME

インタフェースを比べると、RapidMinerのほうがすっきりとしているでしょうか。

ソフトの仕様上、KNIMEで使用しているノード(処理を行うブロックのこと)が多いこともあり、
処理の読みやすさはRapidMinerのほうが上のように感じます。

KNIMEは各ノードの機能が細かく分かれているため、自然とノードの数が多くなります。
その分小回りが利くと言えますが、複雑な処理になったときに少し解釈が難しくなってしまうかもしれません。

  
次に、データを読み込んだときのインタフェースを見てみます。
RapidMiner

  
KNIME

データを読み込んだときのインタフェースも、RapidMinerのほうが見やすいでしょうか。
RapidMinerは色彩豊かで、各データについて非常に見やすくなっています。

もちろんKNIMEもデータを確認できますが、色が白と黒しかありません。
少しのデータなら良いですが、データの量が多くなると、一つ一つのデータが見づらくなってしまうのではないでしょうか。

そのため、インタフェースではRapidMinerのほうが優れていると評価します。

RapidMiner KNIME
1.インタフェース

  

2.基本統計量の確認・可視化

データの分布を確認するために、基本統計量やヒストグラムを出しましょう。

RapidMinerはデータを読み込んだ画面の、左のタブからすぐに基本統計量を確認できます。
また、タブを開けばデータのヒストグラムも確認することができます。

RapidMiner

一方KNIMEも、”Statistics”ノードを用いて確認することができます。

KNIME

次に、グラフです。
それぞれヒストグラムを描いてみましょう。
RapidMiner

KNIME

RapidMinerはデータを可視化するのに、タブの”Visualizations”をクリックするだけでできます。
ワンステップでできるのは非常に楽ですね。

一方、KNIMEはヒストグラムを描くハブを繋げなければなりません。
また見た目も白黒です。

最後に、モデルの見やすさを見てみます。
よく使われる決定木のモデルを出してみましょう。

RapidMiner

KNIME

RapidMinerのモデルは、どう分かれたのか非常にわかりやすいです。
また、葉ノードを自由に動かすことも可能なため、非常に解釈しやすくなっています。

KNIMEもモデルの可視化はできますが、より直感的なのはRapidMinerでしょうか。
またKNIMEの場合、色分けを指定するハブを置く必要があります。

全体的に、RapidMinerに比べ、KNIMEは基本統計量や分布の確認にひと手間増えてしまいます。
もちろんひと手間加えるだけで同様のものを確認できますが、ひと手間ないほうが嬉しいかと思います。

そのため、基本統計量の確認・可視化はRapidMinerのほうが少し上でしょうか。

RapidMiner KNIME
1.インタフェース
2.基本統計量の確認・可視化

  

3.前処理

左:RapidMiner 右:KNIME

オペレータ・ノードと呼び名こそ違いますが、どちらもおおよそ同じような処理を行えるのではないでしょうか。
もちろん、細かく見ていくと異なる部分も多いと思いますが、リストを見た限りでは大きく違いがあるようには見えません。

基本的な処理ならどちらもできるのではないでしょうか。

また、実際にデータにフィルタリングをかけてみましょう。
例で、a3が3以上の行だけを抽出します。

RapidMiner

KNIME

設定の仕方は両者とも似ています。
しかし、より直感的なのはRapidMinerでしょうか?

KNIMEも同様の処理を行えますが、ダイアログに文字が多く、少しわかりづらい部分があるかもしれません。

ですが同様の前処理を行えますので、ここではどちらも〇にいたします。

RapidMiner KNIME
1.インタフェース
2.基本統計量の確認・可視化
3.前処理

  

4.アルゴリズム

左:RapidMiner 右:KNIME

次にデフォルトで備えられているアルゴリズムを比較します。

リストを見ると、Naïve Bayesや決定木、k-Meansなど、よく見るアルゴリズムは両者ともそろっているでしょうか。
もちろん細かい部分では異なりますが、アルゴリズムに関しては次の段で詳しく見てみたいと思います。

RapidMiner KNIME
1.インタフェース
2.基本統計量の確認・可視化
3.前処理
4.アルゴリズム

  

5.拡張性

デフォルトのアルゴリズムは、あまり違いはありませんでした。
では、拡張性はどうでしょうか。

RapidMiner

RapidMinerでは「マーケットプレイス」という場所があり、ここから追加でオペレータ等をインストールすることができます。

データ分析でよく使用されるPython、Rなどもあります。

一方、KNIMEもマーケットプレイスのような場所があり、エクステンションのインストールが可能です。

KNIME

KNIMEもPython・Rのスクリプトを実行することができます。

しかし、エクステンションについてはRapidMinerよりKNIMEのほうが充実しているかもしれません。
KNIMEのエクステンションを見ていると、PLS(部分最小二乗法)やMatlabとの連携に関するものなど、
利用できるエクステンションが多いように感じました。

また、KNIMEのエクステンションの中に、RapidMinerのエクステンションがあるのを見つけました。
アップデートされていないのか、今は使えませんでしたがKNIMEからRapidMinerを実行できる可能性があります。

そのため、拡張性ではKNIMEのほうが上かと思います。

RapidMiner KNIME
1.インタフェース
2.基本統計量の確認・可視化
3.前処理
4.アルゴリズム
5.拡張性

  

6.サポート

最後にサポートに関してです。
RapidMinerもKNIMEも、どちらもインターネット上にコミュニティがあり、ユーザー同士で意見交換が行われています。

RapidMiner Community

KNIME Community

  
また、RapidMinerはオペレータのヘルプにチュートリアルが付いております。
それを基に、どんな動きをするのかすぐに確認できます。

KNIMEもヘルプはありますが、チュートリアルがなく
英語を読んで操作しなければならないかもしれません。

サポートでいうと、各オペレータにチュートリアルもあるRapidMinerのほうが充実しているでしょうか。

  
それでは、ここまで見てきた結果を以下にまとめます。

RapidMiner KNIME
1.インタフェース
2.基本統計量の確認・可視化
3.前処理
4.アルゴリズム
5.拡張性
6.サポート

今回はこのような結果になりましたが、私の個人的な感想を申しますと、
RapidMinerは初心者にやさしい印象です。

RapidMinerはUIが見やすく、またチュートリアルも非常に充実しています。
ワンクリックで直感的な操作が可能なことも、初心者にはありがたい仕様です。

そのためRapidMinerはより多くの方に使ってもらえるのではないでしょうか。

最近は「市民データサイエンティスト」というワードも出始め、現場にいる人もデータ分析を行う時代です。
そのような人には、直感的な操作が可能なツールが必要になります。

全社的に分析を行おうとしている組織には、RapidMinerが向いているのではないでしょうか。

  

一方KNIMEは、説明がなくとも英語の資料さえあれば自分で進められるような、
教授や研究者の方に向いているかもしれません。

また、KNIMEはエクステンションが充実しているため、「どうしてもあのアルゴリズムを使いたい!」という場合に適していると思います。

もちろんこれは個人の感想ですし、皆様感想は様々でしょう。
しかし、これからの時代、より多くの人が分析に関わっていくなら、
RapidMinerのほうが向いているのではないでしょうか。
  
ここまでお読みいただきありがとうございます。
またお会いしましょう。

+++++++++++++++++++++++++++++++++++++++++++++++
▼1日で機械学習の基礎が学べる!無償ハンズオンセミナー随時開催中▼
URL: https://www.ksk-anl.com/event/
▼RapidMinerをもっと知りたい方はこちら▼
URL: https://www.rapidminer.jp/
▼早速使ってみたい!RapidMinerの体験版の無償DL▼
URL: https://www.rapidminer.jp/download/
▼導入を検討中!わかりやすい詳細なQ&A▼
URL: https://www.rapidminer.jp/faq/

$$ \begin{aligned} \newcommand\argmin{\mathop{\rm arg~min}\limits} \boldsymbol{\beta}_{\text{ridge}} & = \argmin_{\boldsymbol{\beta} \in \mathcal{R^p}} \biggl[ ||\boldsymbol{y}-\boldsymbol{X\beta}||^2 + \lambda ||\boldsymbol{\beta}||^2 \biggr] \\ & = (\boldsymbol{X}^T\boldsymbol{X} + \lambda\boldsymbol{I_{p+1}})^{-1}\boldsymbol{X}^T\boldsymbol{y} \end{aligned} $$
PAGE TOP