見出し画像

databricksを使って良かったところ・改善してほしいところ

金融データ活用推進協会(FUDA)主催の機械学習コンペ
「第2回金融データ活用チャレンジ」に参加しました。

このコンペ参加の醍醐味の一つに
有料級のデータ分析ツールを”無料”で使える点があります。

今年は、
databricks(昨年も使えた)
dataiku(今年はじめて使える)
tableau(今年はじめて使える)
の豪華3点ツールの使用ができました。

私自身、金融機関に勤めていますが、
日頃、こうした最新ツールに触れる機会はなく、
大変、ありがたく思っています。

signate コンペページより抜粋

この記事では、
私自身がコンペ期間中を通じて使ってきた(昨年も使った)
Databricksについて
・良かったところ、
・改善してほしいところ
を非エンジニア目線で、緩〜くご紹介していきたいと思います。

金融データ活用チャレンジの概要はこちら↓


🧐そもそもdatabricksとは🧐


公式ドキュメントや、その他の記事に書かれていることを
一言で簡単にまとめると、
「データの収集・加工・分析から機械学習モデルの開発・運用までを一貫してできる統合プラットフォーム」です。

詳細は公式ドキュメントをご覧ください↓


😄良かったところ😄


1.   データの可視化・プロファイルが超簡単
2.   別のノートブックの関数や変数を使える
3.   ノートブック上で生成AIが使える
4.   モデル管理が超便利

1.データの可視化・プロファイルが超簡単


Databricksを使って最も便利だと思ったのが、
ノーコードでデータの可視化・プロファイリングができる点です。

Pythonコード書かずに、
ほんの数クリックで、データをグラフに変換できるのは、
大変、ありがたいです!
グラフの種類も非常に豊富で、折れ線やヒストグラムといった標準的なものだけでなく、バブルチャートや地図、ワードクラウドまであります。
また、これらのグラフはインタラクティブな形で表示されます。


以下では、
データの可視化・プロファイリングの
実際のプロセスをまとめてみました。

◾️1.1データの可視化について


可視化エディタ機能を使って、超簡単に可視化できます

ステップ
❶可視化タイプ(グラフの種類)を選択
❷可視化するデータを指定
❸別のカラムでグループ化も可能

ここでは、
SBAの承認年(ApprovalFY)ごとに、データが何件あるかを可視化します。
件数については、今回のターゲットであるMIS_Status別に分けます。

結果がコチラ

Barにマウスを当てると数値が表示されるなど
インタラクティブに確認できます


◾️1.2 データプロファイリングについて


データプロファイリングというボタンを押すだけで、
読み込んだデータについて、
カラムごとの数や欠損値、標準統計量を簡単に確認できます。

ヒストグラムを拡大して見ることも可能です。


2.別のノートブックの関数や変数を使える


個人的にかなりお気に入りの機能です。

%run コマンドで、
別のノートブックで定義されている関数や変数を呼び出して
使うことができるという機能になります。

何が嬉しいかというと、
複数のノートブックで同じ関数や変数を使えることです。

特徴量の前処理やモデルの学習・訓練は関数化しておき、
一つのノートブックに定義しておくのが、
管理としてはとても楽です!

utils_notebookに定義された関数や変数が使えるようになる


3.ノートブック上で生成AIが使える


端的に言うと、
わざわざChatGPTに聞かなくても良くなったということです。

ノートブックのセル上で
生成AIに対し、自然言語で指示を与えるだけで、
コードを生成してもらうことができます。

また、エラーが発生した際、
「診断エラー」というボタンを押せば、
生成 AIがエラーの原因を調べて解決方法を提示してくれる
という機能もあります。

見にくいのですが、以下に利用したイメージを載せます

❶ノートブックのセル上にプロンプトを記載できます。
❷生成AIがコードの改善提案をしてくれます。
(左が現状、右が変更後です)


4.モデル管理が便利


Databricksは、
機械学習モデルの管理も簡単にしてくれます。
MLflowという機能を使って
モデルのバージョン管理、実験管理が行えるため、
複数のモデルを比較・管理することが可能です。

特に、
・訓練したモデルのパラメーターを参照したり、
・モデルごとの訓練過程をグラフで見たり、
特徴量の重要度をすぐに確認できたり、
するところは超便利でした。

私自身、
まだまだ使いこなせていませんが、
使いこなせれば、すごく便利なんだろうなと
ポテンシャルを感じさせる機能でした


🙇‍♂️改善してほしいところ🙇‍♂️


無料で使わせてもらっておいて….
と怒られそうですが、、、
素晴らしいツールと考えるからこそ
改善してほしいところにも
あえて、触れておきたいと思います。

1.   無料版でできることを増やしてほしい
2.   クラスターの起動時間を短くしてほしい
3.   生成AIの精度を高めてほしい

1.無料でできることを増やしてほしい


Databricksは
Databricks Community Editionに登録することで、
無料で使うことができます。(しかも無期限)

ただし、有料版に比べると
できることが圧倒的に少なすぎて、
普段使いは難しい印象です。

金融データ活用チャレンジで
「無料」で「有料版」を使わせてもらったからこそ、
Databricksの良さが分かりますが、
今の「無料版」だけではその良さが分からないかなと思います。

個人ユーザーが使うことを想定していないんでしょうね。。。


2.クラスターの起動時間を短くしてほしい


Databricksを使うためには、
クラスターと呼ばれる
コンピュータリソースを起動させる必要があります。
この起動に3〜5分かかります。

これは地味にストレスでした。


3.生成AIの精度を高めてほしい


Notebook上で生成AIを使えるようになっている点は
非常に素晴らしいのですが、
回答の精度はかなり良くなかったです(泣)
正直なところ、
途中からChatGPTを使っていました。

回答内容や入力可能トークン数から
GPT-3.0かGPT-3.5レベルかと推察します。

中には、プロンプト設計(カスタム指示・RAG)を工夫すれば、
バージョンを上げなくても、
いくつか改善できる点はあるのではと思いました。
(例えば、日本語での質問には日本語で回答するなど)

今後に期待したいです!

さいごに


繰り返しになりますが、
改善してほしいところはあるものの、
これを上回って余りあるほど、
素晴らしいプラットフォームだと思います。

databricksに限らず、
今後のデータ処理・加工・分析ツールには、
こちらで紹介したような便利機能(ノーコード・生成AI)の搭載が
進むことが予想されます。

これからは、
こうした便利機能を使い倒せるスキル
重要になってくると実感しました。

また、来年も使わせていただきたいです!


金融データ活用チャレンジについての関連記事
↓こちらもご覧ください


この記事が気に入ったらサポートをしてみませんか?