LoginSignup
13
11

More than 3 years have passed since last update.

☆誰でもできる IBMのWatson studioで機械学習(Machine Learning)をやってみた

Last updated at Posted at 2018-07-02

目的

IBM Watson studioを使って、機械学習をしてみよう!
クレジットカードの登録が不必要なライトアカウントを使って、無料で簡単に実装してみたいと思います。

Watson Studioのセットアップ

私は、以下のサイトを参考に作成する事ができました!
10分でできるPython機械学習環境! Watson Studioセットアップガイド
Azure同様、有料版もありますが、実験やデモ程度なら無料版で色々試す事ができるのは嬉しいです。

機械学習で使用するデータの準備

機械学習ではお馴染みのあやめのデータを使って識別を行います。

アイリスデータ
今回は、このWebサイトにあったデータを使ってみます。データ数は合計で150程度ですが、機械学習に触れてみるにはこれくらいで良いと思います。

データの中身は、こんな感じ
キャプチャ.PNG

CSVの形式になっており、一番右が識別を行う対象のあやめの名称。
他のデータは、あやめの特徴を表すデータです。
1行目のデータを表す名前が日本語だと文字化けしてしまうので注意です。
88.PNG

次は、データをWatson Studioに取り込む作業です。
projectの画面から、この部分をクリックするとデータを取り込む事ができます
キャプチャ6.PNG

無事、データを取り入れる事ができました。
無題.png

Watson studio New Modeler flow作成まで

New Modeler flowを選択
New Modeler flowは、Azure Machine Learningみたいにドラック&ドロップの感覚で作成できます。
キャプチャ.PNG

project名(任意)を書いて、createをクリック。
Select flow typeはデフォルトのままで行きたいと思います。
キャプチャ1.PNG

数秒待つと、真っ白なキャンバスみたいなページになります。
キャプチャ2.PNG

Watson studio アルゴリズムの選択まで

この白いキャンバスに必要なモジュールをドラック&ドロップしていきます。

左のImportをクリックすると以下のようなモジュールが出てきます。
キャプチャ.PNG

その後、Data Assetをクリックしたままキャンバスまでドラック&ドロップ
1キャプチャ.PNG

Data Assetをダブルクリックし、Change data assetをクリック
その後、先ほどのデータを選択、以下のようになったのを確認したら、
8キャプチャ.PNG

下のほうにあるsaveをクリックします!
キャプチャ9.PNG

次に、データの分割と何を識別するのかWatsonに教えてあげましょう!
教師あり学習で識別するので、今回は半分のデータで学習させて、半分のデータで評価をします。

Field OperationからPartitionはデータの分割、Typeは識別するターゲットを選択します。
今回は、あやめの種類がターゲットとなります。
キャプチャ.PNG

こんな感じで並べて、Azure Machine Learningのようにモジュールを繋げていきましょう。
Data Assetの丸い部分をクリックしたまま、Partitionの左側の丸い部分まで持っていくと線を引くことができます。
キャプチャ2.PNG

繋げ終わったら、Partitionをダブルクリック。
デフォルトでTrainingとTestは半分ずつのようです。
Seedの部分は、データを分割する時のRandom seedで、Generateを押すとRandomで数字が変わります(指定も可能)。
キャプチャ3.PNG

Typeをダブルクリックすると右にこんなものがでてきます。
キャプチャ4.PNG

Configure Typesをクリックします。この時には、まだデータがこのモジュールまでやってきていないので、Read Valuesを押して、データをこのモジュールまで到達させてあげます。
5キャプチャ.PNG

今回は、あやめを識別するので、Targetにします。
1キャプチャ.PNG

Watson Studio アルゴリズムの選択から実行まで

データを識別する為のアルゴリズムを選択していきます。
キャプチャ3.PNG
様々用意されており、今回はRandom Treesを利用していきます。
Random Treesの概要

繋げたら、いよいよRunを押して実行してみます。
キャプチャ55.PNG

数秒待つと、黄色いモジュールが出てきました。これで機械学習による識別は終わりです。
キャプチャ.PNG

学習モデルの評価

黄色いモジュールを右クリックをして、View Modelをクリックしてみましょう。

識別の精度は84%、ほどほどって感じですかね。
キャプチャte.PNG

もちろん、Confusion Matrixも見る事ができます。
キャプチャdsada.PNG

これはモデルを作成した時の、特徴量の重要度を示すグラフです。
Azure Machine Learningでは、このようなものが無かったのですが、Watsonでは知る事ができます。petal.lengthが一番重要度が高いことが分かりました。

キャプチャfgsgs.PNG

これは、Random Treesで作成した決定木のルールをみる事ができます。
Top Decision Rulesのタブを押すと他にも、Top Rules by Insightでは、あやめの種類ごとの作成した決定木、All Rulesで全ての決定木を見る事ができます。
キャプチャcasdcd.PNG

まとめ

機械学習のシンプルな部分を簡単に実装できました!

今回使った、あやめのデータを3次元のグラフにしてみました。
IBMのWatson studioでデータの可視化をノンプログラミングでやってみる

13
11
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
13
11