Jupyter Notebook を使った大規模データの可視化と機械学習
本実験では、Jupyter Notebook を使って大規模データの可視化と機械学習を行います。数値データを可視化し俯瞰することは解析の基礎であり、どのようなデータであれ非常に大切なことです。
Jupyter Notebook (IPython Notebook) とは
- Python という名のプログラミング言語が使えるプログラミング環境。計算コードと計算結果を同じ場所に時系列で保存できるので、実験系における実験ノートのように、いつどんな処理を行って何を得たのか記録して再現するのに便利。
本実習で用いるデータ
(詳細)
- 「ニューヨークの大気状態観測値」
- 「合州国の州別暴力犯罪率」
- 「スポーツテストデータ」
- 「好きなアイスクリームアンケート」
- 「新国民生活指標データ」
- 「都道府県別アルコール類の消費量」
- 「スイス銀行紙幣データ」
- 「あやめのデータ」
- 「ピマ・インディアンの糖尿病診断」
- 「パーキンソン病診断データ」
- 「大腸菌タンパク質の細胞内局在」
- 「酵母タンパク質の細胞内局在」
- 「ワインの品質」(赤ワイン)
- 「ワインの品質」(白ワイン)
Step1 から Step6 まで、とりあえず見よう見まねで計算を実行する(コピペでOK)。
Step 1. まずは、ウォーミングアップから
まずは次のリンクをクリックして、Pythonで簡単な計算をしてみましょう。
Step 2. Pandas を用いた演算
Pythonでは、皆がよく使う関数などをライブラリとしてまとめてあり、それをインポートして使います。行列データの取り扱いについて、Pandas というライブラリを使って学んでみましょう。
Step 3. タブ区切りデータ、コンマ区切りデータ等の読み込み
インターネット上にあるテキストファイル(タブ区切りデータ、コンマ区切りデータ等)をダウンロードし、Pandasに読み込む方法を会得しましょう。
Step 4. 読み込んだデータの可視化
大規模データを可視化する方法はいくつかありますが、本実習では以下の方法を学んでください。
- 折れ線グラフ ... 「ニューヨークの大気状態観測値」を例に
- ヒストグラム ... 「好きなアイスクリームアンケート」を例に
- ボックスプロットとバイオリンプロット ... 「あやめのデータ」を例に
- 散布図 ... 「合州国の州別暴力犯罪率」を例に
- 散布図行列 ... 「スポーツテストデータ」を例に
- 相関行列 ... 「新国民生活指標データ」を例に
Step 5. 機械学習(教師なし)
教師なし学習(Unsupervised Learning)とは、機械学習の手法の一つで、データの背後に存在する本質的な構造を抽出するために用いられます。本実習ではこれを少しだけ体験してみましょう。
- 主成分分析 ... 「都道府県別アルコール類の消費量」を例に
- 階層的クラスタリング ... 「都道府県別アルコール類の消費量」を例に
Step 6. 機械学習(教師あり)
教師あり学習(Supervised learning)とは、機械学習の手法の一つで、事前に与えられたデータを「例題(=先生からの助言)」(training data)とみなして、それをガイドに学習(=データへの何らかのフィッティング)を行うところからこの名があります。本実習ではこれも少しだけ体験してみましょう。
- 機械学習で二値分類 ... 「ワインの品質」を例に
課題
実習用データの中から1つを選び、データの可視化と機械学習を用いながら解析し、結果を考察してください。
解析例
-
「好きなアイスクリームアンケート」 を用いて、アイスクリームの好みから性別(gender)などを判別。
-
「ピマ・インディアンの糖尿病診断」を用いて、測定データから糖尿病か否かを判別。
-
「パーキンソン病診断データ」を用いて、測定データからパーキンソン病か否かを判別。
-
「大腸菌タンパク質の細胞内局在」を用いて、いくつかのパラメータからそのタンパク質がどこに局在するか判別。
-
「酵母タンパク質の細胞内局在」を用いて、いくつかのパラメータからそのタンパク質がどこに局在するか判別。