ブログ

Datathon体験記

こんにちは、バーズ・ビューのCTOの高倉です。

ヘルスケア領域はビッグデータの宝庫であることは誰もが知っていることですが、そのデータを巧みに扱うデータソンが日本で初開催されるという情報が社長からもたらされ、もちろん参加してきました。
私の体験記をお楽しみください。
来年は京都で開催されることが決定しています。私も参加予定ですので、データサイエンティストのみなさん、ぜひ京都でお会いしましょう!

結論

・かなりエキサイティング。
・アドレナリン出てるのがわかる。
・すごく疲れる。
たとえ分からないことがあっても、わかる努力ができる人は是非参加を。

概要

先日医療データを用いたDatathonに参加してきました。そこで感じたことをまとめます。
これまで興味はあったという方の参加の後押しになればと思います。

Datathonって何?

データ解析をチームで時間内に行う大会です。
DataとMarathonを掛け合わせた造語です。
走ったりはしません。ご安心ください。

私のデータサイエンティストとしてのスペック

医療知識:★★★☆☆
データを扱っているので、一通りわかる。わからないことも調べられる
Hack(R):★☆☆☆☆
基本コマンドは知ってるが、解析できるレベルではない
Hack(Python):★★☆☆☆
基本コマンドは知っている。データ解析に使ったことがない
Hack(エクセル):★★★★★
昔ソケット通信プログラムのテスト仕様書をエクセルで書いていたが、 VBAソケット通信を実装したりしてた。ピボットテーブル大好き
統計:★★★☆☆
大学で生物統計学をやってたので一通り知っているが、10年近くブランクがある。

レギュレーションについて

今回は医療データを扱います。12チーム、6つの課題、3時間で行われました。
基本、全部英語。
1チーム10名、各チームにデータサイエンティストがファシリテーターとして補助してもらいます。このファシリテータは手出ししません。進捗確認をしていました。一番忙しい時に声をかけてくるという役割。
ファシリテーターとも英語でやり取りします。

当日のスケジュールは以下の通り
11:00〜12:00 ルール説明
12:00〜13:00 昼食
13:00〜16:00 Datathon!
16:00〜17:00 発表3分、2分質疑応答 ✖12チーム
17:00〜表彰とクロージング

ルール説明・昼食

チーム毎にテーブルに分かれて、ルールを確認します。
この時点では課題は明確ですが、データは未入手です。
ルール確認後、昼食をとりながら自己紹介をしました。自己紹介は日本語で。
自分のバックグラウンドと参加理由、疑問があればいうような形。ただ他のチームも自己紹介するので一気に賑やかに。

私とAIを扱う大手企業の方以外、全員MD。
この時点では場違い感を感じ始めました。

次に役割決め。私たちのチームは以下のように決めました。

チーム構成

私のチームはこんな感じでした。
・チームリーダー:方針決定やタイムマネジメントなど。ファシリテート能力が必要。
・発表者:発表資料作成と発表を担当
・解析者:データ解析担当。私はここを担当
・データ項目精査:対象データの項目の意味を理解し、扱うデータを決定

実際ほとんどデータ解析に携わったことのない人がほとんどで、エクセルで結果のあたり付けだけでも早くしたい、それ以外にチームに貢献できなさそうと考え立候補。そのあと、もう一方Rを使っていたそうなので二人で解析を引き受けました。発表スライド用のデータはRで作ろうと。この時はみんなでそう決めました。この時は。

方針極め

チームリーダを中心に3時間の時間の使い方について打ち合わせをしました。チーム内の共通語は日本語。理解が早いから。
実際、データを見てみないとなんとも言えないというところだったので、少し早めに完成させ、残り時間でブラッシュアップというタイムスケジュールを組みました。
課題は明確だったので、発表の資料としてスプライン曲線でこんなグラフが出るのではないか。なんて話をし、これを作ろうと、この時はみんなでそう決めました。この時は。

事前準備

スプライン曲線ってなによ?から始まります。
スプライン曲線は、非線形のデータを予測しながら滑らかな線が引けるもので、今回の解析には非常に合っていると判断。
ですが、エクセルでスプライン曲線で検索すると分かりますが、地獄です。が、Rのライブラリを探し、使い方を確認します。

Datathon!

Datathon開始。

確認が終わる前にDatathonが開始。
13時ジャストにデータへのアクセス情報が公開されます。
急いでパスを打ち込んで、ファイルダウンロード。
ファイルの定義書、CSV形式のデータファイル、発表スライドのテンプレートが入っていました。
ファイルの定義書は読まずに、CSVファイルを開いて、列数、行数を確認します。
15,000行だったので、ある程度エクセルで行けそうと判断。
このタイミングで、データのオーバービューを作っておけばよかったと後で後悔します。

使えそうなデータを確認し、ピボットテーブルと散布図でデータの傾向を確認します。
多分、10分ぐらいできたと思います。できた資料で、傾向確認のためのグラフはチームで共有します。
項目決定チームが、定義書から、項目をピックアップし、私が解析に使えそうかデータの確認というやりとりがしばらく続きます。
エクセルで小気味よくデータを返せるとやっぱり楽しい。

開始40分

当初計画立てていたグラフが大まかに姿を見せ始めます。
ここで共変量項目も決定され、解析チームの処理が延々続きます。
解析チームの処理待ちという状況。
ここで、エクセルの限界を感じ始めます。計画を立てるのには向いているかもしれませんが、統計にはやはり向いていない。。。

開始80分

解析チームは依然ちまちました作業を繰り返します。
Rでのグラフ作成は絶不調。
保険的にエクセルでどこまでできるか不明ですが、グラフ作成を開始します。

開始120分

共変数の設定が完了。だけど、依然、メインのグラフが出来上がらない。
横軸の適切なステップ数を色々試すがやっぱり時間かかる。
エクセルで、簡単な処理が軽くパニックだと全然わからなくなる。この時はとにかく焦りまくってて全然方法が分からない。これが余計あせらせる。

チームリーダは随所でブレイクタイムを作り、情報共有の場を作ってくれるけど解析チームはあまり余裕がない。。。

一旦休憩!って言われたけど、解析チームは休めない。。。
チームメンバーは助けようと、話しかけまくってくるけど、時間ないからそれどころではない。
ここでチームリーダーも解析に回ってくれた。

あと10分!

グラフ作りまくって、発表担当に送る。これを繰り返す。
見辛いところを修正し送る。ちょっと範囲を変えて渡す。
Rはまだ格闘中。
とにかく時間がない。
解析チームで方法考えて、グラフにしてを繰り返す。ギリギリまで。

Time up!

こんなに集中したことない。ってぐらい集中しました。
無理やりまとめたという感触。残尿感がすごい。

発表

ここも日本語でいい!って言われてたけど、結論はやっぱり英語じゃなきゃダメってことで、ほとんどのチームが英語で発表を。みんなすごい。
発表スライドは締め切られちゃったけど、解析チームは共変量について解析をこっそり始めます。

結果

ツッコミどころが沢山ある解析だったけど、当初の目的である仮説と結論を結びつけることにはなんとか成功。この時点で吐きそうになってる。
共変量については終わってからチームメンバーに共有。検定できていないので、あくまで傾向として捉えてもらうことに。

振り返ってみて。

Pythonのデータ解析勉強しなきゃ。合わせてRも使えるようになりたい。
ものすごい飢餓感!
Pythonではデータの整理や計算。綺麗なグラフはRで。
よそのチームからも話を聞きましたがみんな一様に「あと30分ほしかった」という絶妙なバランスでした。
全体を見て、データ解析できる人の数はまだまだ少ないようです。こんな集まりでも1割程度という感じ。需要が高いが供給が少ないと感じました。

次回に向けて

もう一度、統計を勉強し直す。
毎日Pythonに触れる。
Rはオライリー。これは週末だけ。
週末に隔週は月一で弊社で勉強会開くのもいいかもしれませんね。
データサイエンティストって胸を張って名乗れるようになりたい!

Happy Datathon!

関連記事

  1. [e-MATCHコラム:1] 応需システムとは?
PAGE TOP