Dataikuで定番のTitanicの分類モデルを試してみた

#Dataikuについて
【オフィシャル】
https://www.dataiku.com/

【環境周りと、簡単なDataikuに対する簡単な概要】
https://qiita.com/kinuga/items/a6be89eb564630dd6f98

#目的
Titanicのクラス分類モデルをDataikuでさくっと作る

#作業過程
##ログイン直後
初めてログインすると、以下のような画面になると思います、
最初にプロジェクトを作るところから始めます。

![キャプチャ.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/b4072262-a61e-0721-7f00-bf11bca03650.png)

##プロジェクト作成
左のNew projectをクリックして、名前を付けてCreateボタンを押下

![キャプチャ2.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/7bce7fcc-632f-6bbc-033d-4751ccca82b0.png)

##プロジェクト作成後Tips表示
起動すると、下図のようになります。SETTINGSの下に<font color="Green">●</font>のマークがありますが、
押下するとTIPSが表示されます。
この後の画面でも<font color="Green">●</font>が度々表示されており、
ユーザー補助の手厚さを感じます（英語ですが...）

![キャプチャ3.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/b5e15123-82a7-8f1b-0c52-601546b8eae9.png)

##データのインポート
DATASETSのタブをクリック
IMPORT YOUR FIRST DATASETをクリック
![キャプチャ4.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/f8f4a555-d5f8-6065-9803-31af281437cc.png)

###データのソースの選択
いろいろありますねー、一部非活性になっているものもありますが、
Administratorで設定ができていないか、Enterpriseバージョンで使用できるものもあります。
私はファイルからアップロードすることが多いのですが、DBからデータを引き込めるのは便利ですね。

![キャプチャ5.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/26cd5975-dfbc-f231-abc9-ca356f735a5d.png)

###CSVアップロード後
CREATEボタンを押下して、Dataiku上にデータを作成します。

![キャプチャ6.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/bb1b207c-e15d-9ebc-8fc9-816132e3e79c.png)

##データ確認
Age列
緑色と灰色のバーが表示されています。
灰色は欠損を示していますので、なんらかの対応（行ごと削除する、平均値とかで埋める）をする必要を感じます。
ただし、Dataikuでとりあえずモデルを作るだけならば欠損についてはあまり意識する必要はありません。
（あくまでも”とりあえず”です。精度出すならデータと向き合う必要があります。）

Ticket列
緑色と赤色のバーが表示されています。
赤色は型が違う場合に表示されています。
DataikuはIntegerとしてとらえましたが、文字が入っている為、Textとして処理してもいいかもしれません。
（Integerをクリックすると、ほかの型候補が表示されるのでTextを選ぶだけです）

![キャプチャ7.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/f697517d-90c7-b2c6-8c5e-07d506118e61.png)

##データステータス
見たままですね。
列数、行数などが表示されています
![キャプチャ8.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/87fd9135-aae7-6d19-16bd-718d97abb226.png)

##モデルの作成
データもざっくりみたところで、モデルを作ることにしましょう。

###データの選択
フロー画面までもどってきて、作成したデータをクリックします。

![キャプチャ9.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/98feaaea-52f9-16df-1f43-d6af8776f60f.png)

###Lab
QUICK MODELを選択して、
![キャプチャ10.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/e733d104-6a29-3c4d-d806-b441376a8e0d.png)

Predictionを選択します。
![キャプチャ11.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/010a60b6-edf8-f085-d0c9-6015f75be546.png)

####目的変数の選択
Variable to predictに目的変数を設定してください。
今回の場合はSurvivedになります。
![キャプチャ12.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/fe992c37-afcf-2408-4dde-bc5e848bd89c.png)

###学習の実行
TRAINを押下して、

![キャプチャ13.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/2c2576dd-30ed-0402-ca6b-fe2457418c39.png)

もう一回TRAINを押下して、終わり
![キャプチャ14.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/8a2cc37c-2609-7f01-dbe3-46362ca2afc0.png)

##学習結果の確認

クラス分類だった為に今回は二つのモデルで学習されました。
Random forest、Logistic Regression

デフォルトではROCの結果で、複数のモデルの結果を評価しています。
![キャプチャ15.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/da2fc170-c8d2-7d90-2806-3d98487abfd8.png)
すいません、一部表示されていませんが、ブラウザがEdgeなのだからかもしれません。

###結果の詳細

DecisionTreesを見たり...

![キャプチャ16.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/b0070236-6f97-de03-9e47-e45ca5e83710.png)

影響度の高い項目を確認したり...

![キャプチャ17.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/dbfed845-002e-63f0-86a9-bd77c73e6b44.png)

ROC Curveを見たり...

![キャプチャ18.PNG](https://qiita-image-store.s3.amazonaws.com/0/45464/e080f490-e45f-9859-d92c-e6eb3123857f.png)

します。
Rはよくわからないのですが、PythonでDecisionTrees出力したり、
ROC書いたりするのって、最初はまぁまぁ面倒くさいんですよね。環境作って、コード書いて。

#おわり
Dataikuって簡単で、「とりあえずデータ分析」では使いやすいのでないでしょうか？
機械学習に興味があっても、開発言語の壁があったり、環境（Linux）とかの壁もあり、
断念した人もいるかもしれません。
Dataikuは一度断念した人でも再度挑戦できるような環境だと思います。

※Dataikuの画面が一部最新版と相違しております