0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

データプリパレーションツールPaxataを触ってみた

Last updated at Posted at 2020-08-23

私は受託で顧客企業のデータ分析をしています。
先日、顧客からPaxataの導入検討のため、製品の評価をしてほしいという依頼を受け、Paxataを試験的に触る機会をいただきました。
Paxataは2019年にDataRobotが買収1したデータプリパレーションツールです。
利用するにはサブスクか、Azure/AWSのVMに入れてもらかの2パターンがあり、今回は後者でした。

感想

あくまで感想です。それぞれがメリットになるかデメリットになるかは、時と場合によると思います。

  • ノンコーディングといえど、ある程度のプログラミング的思考力は必要
    • ノンコーディングツールは魔法じゃない
    • 開発者自身がパーツの組み合わせを設計してデータ加工する必要があるので、全くプログラミングできない人が使うにはハードルが高い
  • 視認性が高く、どんな処理をやってるか把握しやすい
    • 詳細設計書とか書いてる場合は不要になりそう
  • 処理結果のプレビュー機能や文字列の自動名寄せ機能がある
    • 置換処理とかで置換前と置換後をプレビューで比較できる
    • 文字列の株式会社(株)くらいの違いなら自動で名寄せしてくれる
  • あまり複雑な処理はできない
    • 処理は直列でネストも分岐も繰り返しもできない
    • 誰が作っても同じような水準の仕上がりになる(SIerが好きそう)
  • 作った処理をPythonにエクスポートするとかできない
    • ベンダーロックインされる
  • 現状、機械学習との連携はDataRobotのみサポート
    • 加工したデータをscikit-learnとかで使うには、一旦DBやファイルにエクスポートする必要がある
  • レビューやデプロイのプロセスを組み込みにくい
    • 開発/本番環境といったデプロイの概念がないので、メンテナンス時には運用中のプロダクトを直接触ることになる
    • gitのようにプルリクを出すことも差分を見ることもできないので、レビューしにくい
    • pytestやJUnitのようなテスト機能はない
    • バージョン管理機能があるので、前のバージョンに戻すとかはできる

実際の操作

Paxataは次の3つのコンポーネントで構成されています。

# コンポーネント 説明
1 ライブラリ データセットを管理(プロジェクトの出力もここで管理)
2 プロジェクト データ加工処理の定義
3 プロジェクトフロー プロジェクトの処理フローと実行スケジュールの定義

開発するときは、

  1. ライブラリにデータセットをインポート
  2. プロジェクトで処理を定義
  3. プロジェクトフローで処理をスケジューリング
  4. 処理結果をライブラリで確認

というのが大まかな流れになります。

ライブラリにデータセットをインポート

試しにCSVファイルをインポートすると、こんな感じになります。データはこちらからお借りしました。
image.png
image.png

「プロファイル」という機能を使うと、カラムごとの基本統計量やカテゴリに関する情報を出してくれます。
image.png

プロファイル結果もライブラリで管理されます。
image.png

プロジェクトで処理を定義

インポートしたデータでプロジェクトを作成してみます。
image.png

カラムのデータ型を変えたり置換したりしようとすると、こんな感じで処理結果のプレビューが出ます。
image.png
image.png

「計算」というツールで、Excelみたいな関数を使って新しいカラムを作ることもできます。
image.png

文法は結構シビアでした。
image.png
image.png

「集計」というツールで、集計もできます。ただし、これは新しいカラムとして追加するタイプの集計で、例えばCount Encodingするときに使うようなものです。
image.png

普通の(?)集計をする場合は「シェイプ」というツールを使います。
image.png

プロジェクトフローで処理をスケジューリング

作ったプロジェクトをスケジューリングしてみます。時間間隔以外にcrontabフォーマットの指定もできます。
image.png

グラフ表示するとこんな感じです。プロジェクトが1つしかないとしょぼいですが…。
image.png

実行するとこんな感じです。
image.png

処理結果はアンサーセットとしてライブラリで管理します。
image.png

終わり

この記事は顧客企業およびPaxataの販売代理店に許諾を得て執筆しています。

  1. https://www.datarobot.com/jp/news/datarobot-acquires-paxata-to-bolster-its-end-to-end-ai-capabilities/
    調べても日本語の情報があまり出てこないので、自分で触ってみた感想を投稿することにしました。どなたかの参考になれば幸いです。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?