~市民データサイエンティストに向いているのはどっち?~皆さんこんにちは。KSKアナリティクスの北野です。このブログをご覧になっている方は、RapidMinerについて既によくご存知かと思います。KNIME(ナイム)という名前を聞いたことはあるでしょうか?KNIMEは、RapidMinerと同じく、データ分析をドラッグアンドドロップで行うツールです。言ってみれば、RapidMinerのライバルにあたる製品です。今日はRapidMinerとKNIMEを比較してみたいと思います。RapidMinerとKNIMEまずRapidMinerとKNIMEを簡単にご紹介いたします。RapidMinerRapidMiner(ラピッドマイナー)はプログラムの知識がなくても、データサイエンティストが行うような高度な分析業務をドラッグ&ドロップの簡単な操作で行うことができる、世界中で使われている機械学習プラットフォームです。データ加工(前処理)からデータ可視化、モデル作成、評価、運用までを一つのプラットフォームで行うことができるのが特徴です。(RapidMiner日本語サイトより)このブログの読者はすでにご存知でしょうか?もし、まだよく知らないよ、またはもっと詳しく知りたいという方がいらっしゃったら、ぜひこちらへどうぞ!KNIMEインフォコム株式会社が出している日本語のKNIMEのサイトによると、KNIMEは以下のように紹介されています。可視化を通じ、データソフトウェア開発者、エンジニア、およびデータサイエンティストたちの直感的な共同作業を可能にします。紹介文を見ると、RapidMinerもKNIMEも「直感的に操作できるデータ分析ツール」ということがわかります。このような短い文ではそれぞれどんな強みがあるのかよくわかりません。海外の評価そこで、海外ではどのように評価されているのか見てみましょう。Gartnerという調査会社が出したレポートによると、RapidMinerは6年連続リーダーポジションに位置しています。KNIMEも同じくリーダーポジションに位置しており、RapidMinerのすぐ近くに位置しています。海外の比較記事もいくつかご紹介いたします。FinancesOnlineこれらの記事を読むと、RapidMinerとKNIMEの評価はほとんど拮抗しております。RapidMinerのほうが良いと言われていたり、KNIMEのほうが良いと言われていたり様々です。モデルの作成を行います。本記事では比較がメインですので、KNIMEのインストールや使い方の説明は省略させていただきます。筆者自身はRapidMiner側の人間ですが、できる限り公平な立場で比較した所感を書いていきたいと思います。〇1.インタフェースRapidMinerKNIMEインタフェースを比べると、RapidMinerのほうがすっきりとしているでしょうか。処理の読みやすさはRapidMinerのほうが上のように感じます。KNIMEは各ノードの機能が細かく分かれているため、自然とノードの数が多くなります。その分小回りが利くと言えますが、複雑な処理になったときに少し解釈が難しくなってしまうかもしれません。次に、データを読み込んだときのインタフェースを見てみます。RapidMinerKNIMEデータを読み込んだときのインタフェースも、RapidMinerのほうが見やすいでしょうか。RapidMinerは色彩豊かで、各データについて非常に見やすくなっています。KNIMEもデータを確認できますが、色が白と黒しかありません。データなら良いですが、データの量が多くなると、一つ一つのデータが見づらくなってしまうのではないでしょうか。そのため、インタフェースではRapidMinerのほうが優れていると評価します。△2.基本統計量の確認・可視化データの分布を確認するために、基本統計量やヒストグラムを出しましょう。RapidMinerはデータを読み込んだ画面の、左のタブからすぐに基本統計量を確認できます。タブを開けばデータのヒストグラムも確認することができます。RapidMiner一方KNIMEも、”Statistics”ノードを用いて確認することができます。KNIME次に、グラフです。それぞれヒストグラムを描いてみましょう。RapidMinerKNIMERapidMinerはデータを可視化するのに、タブの”Visualizations”をクリックするだけでできます。ワンステップでできるのは非常に楽ですね。KNIMEはヒストグラムを描くハブを繋げなければなりません。最後に、モデルの見やすさを見てみます。使われる決定木のモデルを出してみましょう。RapidMinerKNIMERapidMinerのモデルは、どう分かれたのか非常にわかりやすいです。葉ノードを自由に動かすことも可能なため、非常に解釈しやすくなっています。KNIMEもモデルの可視化はできますが、より直感的なのはRapidMinerでしょうか。KNIMEの場合、色分けを指定するハブを置く必要があります。全体的に、RapidMinerに比べ、KNIMEは基本統計量や分布の確認にひと手間増えてしまいます。ひと手間加えるだけで同様のものを確認できますが、ひと手間ないほうが嬉しいかと思います。そのため、基本統計量の確認・可視化はRapidMinerのほうが少し上でしょうか。右:KNIMEオペレータ・ノードと呼び名こそ違いますが、どちらもおおよそ同じような処理を行えるのではないでしょうか。細かく見ていくと異なる部分も多いと思いますが、リストを見た限りでは大きく違いがあるようには見えません。基本的な処理ならどちらもできるのではないでしょうか。実際にデータにフィルタリングをかけてみましょう。例で、a3が3以上の行だけを抽出します。RapidMinerKNIME設定の仕方は両者とも似ています。直感的なのはRapidMinerでしょうか?KNIMEも同様の処理を行えますが、ダイアログに文字が多く、少しわかりづらい部分があるかもしれません。同様の前処理を行えますので、ここではどちらも〇にいたします。右:KNIME次にデフォルトで備えられているアルゴリズムを比較します。Bayesや決定木、k-Meansなど、よく見るアルゴリズムは両者ともそろっているでしょうか。細かい部分では異なりますが、アルゴリズムに関しては次の段で詳しく見てみたいと思います。〇5.拡張性デフォルトのアルゴリズムは、あまり違いはありませんでした。拡張性はどうでしょうか。RapidMinerRapidMinerでは「マーケットプレイス」という場所があり、ここから追加でオペレータ等をインストールすることができます。データ分析でよく使用されるPython、Rなどもあります。KNIMEもマーケットプレイスのような場所があり、エクステンションのインストールが可能です。KNIMEKNIMEもPython・Rのスクリプトを実行することができます。エクステンションについてはRapidMinerよりKNIMEのほうが充実しているかもしれません。利用できるエクステンションが多いように感じました。KNIMEのエクステンションの中に、RapidMinerのエクステンションがあるのを見つけました。アップデートされていないのか、今は使えませんでしたがKNIMEからRapidMinerを実行できる可能性があります。そのため、拡張性ではKNIMEのほうが上かと思います。◎6.サポート最後にサポートに関してです。RapidMinerもKNIMEも、どちらもインターネット上にコミュニティがあり、ユーザー同士で意見交換が行われています。Communityまた、RapidMinerはオペレータのヘルプにチュートリアルが付いております。それを基に、どんな動きをするのかすぐに確認できます。KNIMEもヘルプはありますが、チュートリアルがなく英語を読んで操作しなければならないかもしれません。サポートでいうと、各オペレータにチュートリアルもあるRapidMinerのほうが充実しているでしょうか。それでは、ここまで見てきた結果を以下にまとめます。今回はこのような結果になりましたが、私の個人的な感想を申しますと、RapidMinerは初心者にやさしい印象です。RapidMinerはUIが見やすく、またチュートリアルも非常に充実しています。ワンクリックで直感的な操作が可能なことも、初心者にはありがたい仕様です。そのためRapidMinerはより多くの方に使ってもらえるのではないでしょうか。最近は「市民データサイエンティスト」というワードも出始め、現場にいる人もデータ分析を行う時代です。そのような人には、直感的な操作が可能なツールが必要になります。全社的に分析を行おうとしている組織には、RapidMinerが向いているのではないでしょうか。教授や研究者の方に向いているかもしれません。KNIMEはエクステンションが充実しているため、「どうしてもあのアルゴリズムを使いたい!」という場合に適していると思います。これは個人の感想ですし、皆様感想は様々でしょう。これからの時代、より多くの人が分析に関わっていくなら、RapidMinerのほうが向いているのではないでしょうか。ここまでお読みいただきありがとうございます。