無料で使えるデータ可視化ツール
Python に限らずデータを可視化するときに便利で、しかも無料で使用することができるツールをまとめたみました。
Orange
Orange は Python で実装されているオープンソースのワークフローベースのデータマイニングツールです。 そのため、データサイエンスに慣れ親しんでいるPythonユーザーは、すでにOrangeをご存知かもしれません。
Orange には次の機能があります。
データの前処理
分類
モデリング
回帰
クラスタリング
可視化
その他の各種機能のためのマイニングおよび機械学習アルゴリズムをPythonライブラリを内包しています。
Orangeにはビジュアルプログラミング環境も付属しており、ワークベンチにはデータをインポートするためのツールと、
ドラッグアンドドロップした、さまざまなウィジェットをマウスでつなぎ合わせて、ワークフローを作成します。
ビジュアルプログラミングには、ヘルプとしてオンラインチュートリアルが豊富にあり、
非常に使いやすいUIとなっています。
https://orange.biolab.si/screenshots/images/image-viewer.png
ビデオチュートリアルも用意されているので参考にしてみてください。
https://www.youtube.com/watch?v=HXjnDIgGDuI&feature=youtu.be
Orangeにはバイオインフォマティックス、テキスト処、位置情報、時系列データなど、
多くのアドオンが提供されていて、機能拡張を行うことができるようになっています。
Pythonはプログラミングと統合が簡単なので、Orangeは初心者や専門家がデータマイニングを行う上で、最初に使うツールとして最適なものとなります。
KNIME
KNIME は、オープンソースの分析、統合、およびレポート作成のためのプラットフォームです。 Javaで書かれていて Eclipse 上に実装された、ワークフローベースのデーターマイニングツールです。 単独のアプリケーションは無料で使用できます。
ユーザは、GUIを使ってワークフローを作成して、データの前処理、収集、分析、モデリング、
およびレポート作成を実行します。
https://www.youtube.com/watch?v=ft7Ksgss3Tc
https://www.youtube.com/watch?v=11jI90b2GWU
KNIMEはEclipseの拡張メカニズム機能を利用して、テキストや画像マイニングなどをプラグインとして追加することで、必要な機能が得られるようになっています。
KNIMEサーバーが提供する機能を使いたい場合は、商業ライセンスを購入する必要があります。
このソフトウェアは企業での使用に向いているでしょう。
Rapidminer
商業バージョンのデュアルライセンスで提供されている、
ワークフローベースのデータマイニングツールです。
RapidMinerは、ユーザーフレンドリーで豊富なデータサイエンスライブラリを使って、
ビジネスプロセスに予測分析するための手助けとなります。
Rapid Miner Studio では、データの前処理、収集、フィルタリング、
分類など標準的なデータマイニング機能に加えて、
強力な可視化環境、テンプレートとワークフロー、
Python や R といった言語との連携ができるオールインワンの
ビジュアルプログラミング環境になっています。
Rapid Minerは、ビジネスでの商業利用、研究、
および教育に適したツールです。
DataMelt
DataMelt は、数値計算、数学、統計、記号計算、データ分析、データ視覚化のためのフリーソフトウェアです。 https://jwork.org/dmelt/data_dm/slides/slide00.png
GUI部分はJavaで実装されていて、Python、Ruby、Groovy(およびその他)などのスクリプト言語を
呼び出すようなソフトウェア構造になっています。
公式サイトでは、詳細なドキュメントや、コード、描画例が豊富に公開されています。
https://www.youtube.com/watch?v=HrZAfwWsXrU
https://www.youtube.com/watch?v=Ovhd_-vnwgw
]
機能
DataMelta が持っている機能をリストします。
チャートプロット
データ分析
2D/3D 可視化
データマイニング
ベクターグラフィックス
ニューラルネットワーク
Python/Jython, BeanShell, Groovy, JRuby, Matlab/Octave の実行
Portable application
線形/非線形回帰
データフィッティング
数値計算
統計計算
線形代数
シンボリック演算
シンボル認識
テキスト処理
このソフトウェアは、学生、エンジニア、科学者に非常に向いているでしょう。
Zeppelin
Zeppelin は、SQLやScala,Python, Java など20以上の言語を呼び出せる、 WEBベースのノートブックで、次のようなことが行なえます。
データ取り込み
データ発見
データ分析
データの可視化
コラボレーション
TeX表記での数式表記
外部ストレージのサポート (Git/S3/Azure/Google Cloud/ZeppelinHub/MongoDB/Hadoop)
https://zeppelin.apache.org/docs/0.8.1/assets/themes/zeppelin/img/screenshots/display_formula.png
このソフトウェアは、学生、エンジニア、科学者に非常に向いているでしょう。
ELKI
ELKI は、Javaで実装された、AGPLv3ライセンスで公開されているオープンソースソフトウェアです。 このソフトウェアは、クラスター分析と異常値検出に焦点を当ています。
ELKIは、GUIから選択したアルゴリズムを、実行してその結果を表示します。
ELKIのソフトウェアを維持するためのサポートを提供していないようですが、
この領域で研究するためには最適化されています。
研究者向きと言えるでしょう。
WEKA
Weka は、Javaで実装され、GNU GPLライセンスで公開されている、オープンソースのソフトウェアです。 Linux、Mac OS XおよびWindows上で動作します。
このソフトウェアは、データマイニングのための機械学習アルゴリズムを集めたもので、次のような機能があります。
データの前処理
分類
回帰
クラスタリング
関連付けルール
可視化
次のインタフェースから構成されています。
Weka Knowledge Explorer
Experimenter
Knowledge Flow
コマンドライン(CLI)
Explorerは、マイニングデータを2Dで可視化するための使いやすいGUIです。
ここから、様々なファイルフォーマットから生データをインポートして、
フィルタリング、クラスタリング、分類および属性選択のような、マイニングアクションを行います。
大規模なデータセットを扱うようなときは、Explorer がデータセット全体をメインメモリにロードしようとするので、
メモリ消費が少なくなるCLIも提供されています。
Wekaは、ラピッドプロトタイピングだけでなく教育や研究目的にも理想的な選択となります。
MOA
大量のリアルタイムデータストリームを高速で処理する必要があるアプリケーションに最適です。
MOAはGNU GPLライセンスで配布されていて、
コマンドライン、GUI、またはJava APIを介して使用できます。
このソフトウェアは、機械学習アルゴリズムを豊富にまとめていて、
リアルタイムアプリケーションの設計時に最適な選択肢とでしょう。
ストリームマイニングアルゴリズムは、通常すべてのデータセットをメモリに保存することなく、
より速い計算を必要とし、限られた時間内に作業を完了させる必要があります。
MOAはこれらの要件に非常にマッチしています。
WekaとMOAは互いに密接に連携させることができ、どちらからも、もう一方を呼び出すことができます。
リアルタイムデータから情報を分析しマイニングしようとしている人には、MOAが最良の選択となります。