SlideShare una empresa de Scribd logo
1 de 31
第2部特集2
Pythonによる
機械学習入門
第3回メドレー読書会
樋本 和大
2015/12/14 Kazuhiro Himoto 0
+α
自己紹介
2015/12/14 Kazuhiro Himoto 1
樋本和大 ひもと かずひろ
化学系 (理論/コンピュータ) のポスドクからデータサイエンス業界に転身
科学グラフィクス描いたりしてます
bash
awk
Python
fortran90
SQL
Hive
MongoDB
アカデミア 転身後に頑張り中
PNASの
論文に提供し
ました
教科書
の表紙になりまし
た
アジェンダ
2015/12/14 Kazuhiro Himoto 2
第2部特集2
Pythonによる機械学習入門
第1章 イントロダクション
第2章 NumPy、SciPy、matplotlibの基礎
第3章 scikit-learn入門
イントロダクション
2015/12/14 Kazuhiro Himoto 3
なぜPythonで機械学習なのか
2015/12/14 Kazuhiro Himoto 4
目標
2015/12/14 Kazuhiro Himoto 5
scikit-learnの理解
 scikit-learn
Pythonの機械学習ライブラリ
URL: http://scikit-learn.org/stable/
その他重要ライブラリ
NumPy
数学
SciPy
科学技術計算
matplotlib
可視化
pandas
データフレーム
Pythonのバージョンは2系と3系がある
2015/12/14 Kazuhiro Himoto 6
Python 3 への移行が進みつつある様子
+α
■ 実務上の個人的な感想
Python 2 で不便はない
■ これからPythonを学ぶ場合
コミュニティが Python 3 に移
行しているのだから、Python 3
から入るのがよいのでは
Pythonのインストール
2015/12/14 Kazuhiro Himoto 7
教科書参照
pp. 114-117
標準Python + pip
パッケージ管理ツール「pip」
2015/12/14 Kazuhiro Himoto 8
scikit-learnやnumpyなどのパッケージをインストール・管理するツール。
例) scikit-learnをインストールしたい場合
(参考)Anaconda
2015/12/14 Kazuhiro Himoto 9
データサイエンス分野でポピュラー
メモ
MeCab (形態素解析ツール) に対応していない。
設定をいじれば対応可能のようだが、相当面倒らしい。
樋本
実務でMeCabの使用場面が多く、anacondaは使っていません。
+α
NumPy、SciPy、matplotlibの基礎
2015/12/14 Kazuhiro Himoto 10
(参考) Jupyter notebook
2015/12/14 Kazuhiro Himoto 11
Jupyter notebookを使って進めていきます。
※教科書外
http://jupyter.org/index.html
+α
NumPy
2015/12/14 Kazuhiro Himoto 12
なむぱい、なむぴい
数学関連のライブラリ
URL: http://www.numpy.org/
ベクトルの演算
行列の演算
etc.
数学関連の演算操作を高速に行える
(内部はC/C++、Fortranで実装)
NumPyのサンプル
2015/12/14 Kazuhiro Himoto 13
⇒Jupyter notebookへ
■インストール (pip)
$ pip install numpy
SciPy
2015/12/14 Kazuhiro Himoto 14
さいぱい、さいぴい
科学技術計算ライブラリ
URL: http://www.scipy.org/
フーリエ変換
信号処理
微分方程式ソルバ
特殊関数
etc.
NumPyがベースとなっている。
SciPyのサンプル
2015/12/14 Kazuhiro Himoto 15
⇒Jupyter notebookへ
■インストール (pip)
$ pip install scipy
matplotlib
2015/12/14 Kazuhiro Himoto 16
まっとぷろっとりぶ
グラフや図を描画するライブラリ
URL: http://matplotlib.org/
http://matplotlib.org/gallery.html
matplotlib のサンプル
2015/12/14 Kazuhiro Himoto 17
⇒Jupyter notebookへ
■インストール (pip)
$ pip install matplotlib
(参考) Pandas
2015/12/14 Kazuhiro Himoto 18
ぱんだす
データフレームを扱えるライブラリ。
 データの前処理
 SQLのようなテーブルの結合、集計操作
 各種分析
ディクショナリ
{
‘ID’ : [‘A’, ‘B’ , ‘C’ ],
‘AGE’: [‘15’, ‘21’, ‘65’]
}
データフレーム
ID AGE
A 15
B 21
C 65
使用頻度
高
すべてのプロジェクトで
使っています
$ pip install pandas
■インストール (pip)
+α
scikit-learn入門
2015/12/14 Kazuhiro Himoto 19
scikit-learn
2015/12/14 Kazuhiro Himoto 20
さいきっと・らーん
機械学習ライブラリ
■インストール (pip)
URL: http://scikit-learn.org
$ pip install scikit-learn
scikit-learnによる機械学習
2015/12/14 Kazuhiro Himoto 21
 線形回帰
 ロジスティック回帰
 サポートベクターマシン (SVM)
 KMeansクラスタリング
scikit-learnによる機械学習
2015/12/14 Kazuhiro Himoto 22
 線形回帰
 ロジスティック回帰
 サポートベクターマシン (SVM)
 KMeansクラスタリング
線形回帰
2015/12/14 Kazuhiro Himoto 23
線形回帰
2015/12/14 Kazuhiro Himoto 24
データを直線(平面、超平面)でフィットさせる手法。
y = a*x + b ⇒ 係数a と 切片b を求める。
(y = aTx + b)
アルゴリズム:最小二乗法
sklearn.linear_model.LinearRegression()
人工生成したデータを対象に線形回帰
2015/12/14 Kazuhiro Himoto 25
実際のデータを対象に線形回帰
2015/12/14 Kazuhiro Himoto 26
糖尿病の被験者データ 442件
説明変数
 年齢
 性別
 体重
 ...
目的変数
 1年の病気の進行具合 (を数値化したもの)
データセットの内容は下記で確認できます
http://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_diabetes.html
10変数
正規化されている
と思われる
プログラム
2015/12/14 Kazuhiro Himoto 27
結果 (学習)
2015/12/14 Kazuhiro Himoto 28
結果 (評価)
2015/12/14 Kazuhiro Himoto 29
― 予測値
― 実測値
+α
宿題
2015/12/14 Kazuhiro Himoto 30
 線形回帰
 ロジスティック回帰
 サポートベクターマシン (SVM)
 KMeansクラスタリング

Más contenido relacionado

La actualidad más candente

Py datameetup1
Py datameetup1Py datameetup1
Py datameetup1shiroyagi
 
PythonによるWebスクレイピング入門
PythonによるWebスクレイピング入門PythonによるWebスクレイピング入門
PythonによるWebスクレイピング入門Hironori Sekine
 
Pythonの環境導入 2014年春季版
Pythonの環境導入 2014年春季版Pythonの環境導入 2014年春季版
Pythonの環境導入 2014年春季版Katsuhiro Morishita
 
Python3 プログラミング勉強会
Python3 プログラミング勉強会Python3 プログラミング勉強会
Python3 プログラミング勉強会Tetsuya Morimoto
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版Katsuhiro Morishita
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Reportgree_tech
 
WindowsでPython
WindowsでPythonWindowsでPython
WindowsでPythondrillan
 
勉強会 Cvml python基礎
勉強会 Cvml python基礎勉強会 Cvml python基礎
勉強会 Cvml python基礎真哉 杉野
 
「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of Python「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of PythonTakanori Suzuki
 
Pynyumon03 LT
Pynyumon03 LTPynyumon03 LT
Pynyumon03 LTdrillan
 
素振りのススメ at Python入門者の集い
素振りのススメ at Python入門者の集い素振りのススメ at Python入門者の集い
素振りのススメ at Python入門者の集いTakayuki Shimizukawa
 
Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Kir Chou
 
次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発shoma h
 
Python札幌 2012/06/17
Python札幌 2012/06/17Python札幌 2012/06/17
Python札幌 2012/06/17Shinya Okano
 
BPStudy#54 そろそろPython3
BPStudy#54 そろそろPython3BPStudy#54 そろそろPython3
BPStudy#54 そろそろPython3Atsushi Odagiri
 
Windowsにpythonをインストールしてみよう
WindowsにpythonをインストールしてみようWindowsにpythonをインストールしてみよう
WindowsにpythonをインストールしてみようKenji NAKAGAKI
 
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12Takanori Suzuki
 
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpPython エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpTakeshi Komiya
 

La actualidad más candente (20)

Py datameetup1
Py datameetup1Py datameetup1
Py datameetup1
 
PythonによるWebスクレイピング入門
PythonによるWebスクレイピング入門PythonによるWebスクレイピング入門
PythonによるWebスクレイピング入門
 
Pythonの環境導入 2014年春季版
Pythonの環境導入 2014年春季版Pythonの環境導入 2014年春季版
Pythonの環境導入 2014年春季版
 
Python3 プログラミング勉強会
Python3 プログラミング勉強会Python3 プログラミング勉強会
Python3 プログラミング勉強会
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Report
 
WindowsでPython
WindowsでPythonWindowsでPython
WindowsでPython
 
勉強会 Cvml python基礎
勉強会 Cvml python基礎勉強会 Cvml python基礎
勉強会 Cvml python基礎
 
「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of Python「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of Python
 
S18 t0 introduction
S18 t0 introductionS18 t0 introduction
S18 t0 introduction
 
Pynyumon03 LT
Pynyumon03 LTPynyumon03 LT
Pynyumon03 LT
 
素振りのススメ at Python入門者の集い
素振りのススメ at Python入門者の集い素振りのススメ at Python入門者の集い
素振りのススメ at Python入門者の集い
 
Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!
 
次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発
 
Python札幌 2012/06/17
Python札幌 2012/06/17Python札幌 2012/06/17
Python札幌 2012/06/17
 
BPStudy#54 そろそろPython3
BPStudy#54 そろそろPython3BPStudy#54 そろそろPython3
BPStudy#54 そろそろPython3
 
Windowsにpythonをインストールしてみよう
WindowsにpythonをインストールしてみようWindowsにpythonをインストールしてみよう
Windowsにpythonをインストールしてみよう
 
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
 
Stapy#22 LT
Stapy#22 LTStapy#22 LT
Stapy#22 LT
 
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpPython エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjp
 

Destacado

Unityワークショップ
UnityワークショップUnityワークショップ
UnityワークショップMitu217
 
Python開発環境三種の神器
Python開発環境三種の神器Python開発環境三種の神器
Python開発環境三種の神器Yukitaka Uchikoshi
 
セクシー女優で学ぶ画像分類入門
セクシー女優で学ぶ画像分類入門セクシー女優で学ぶ画像分類入門
セクシー女優で学ぶ画像分類入門Takami Sato
 
Python東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしようPython東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしようHiroshi Funai
 
Python on Science ? Yes, We can.
Python on Science ?   Yes, We can.Python on Science ?   Yes, We can.
Python on Science ? Yes, We can.Marcel Caraciolo
 
Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編Etsuji Nakai
 
認知症にやさしいまちづくり ~セクターを越えたつながり~
認知症にやさしいまちづくり ~セクターを越えたつながり~認知症にやさしいまちづくり ~セクターを越えたつながり~
認知症にやさしいまちづくり ~セクターを越えたつながり~Dementia Friendly Japan Initiative
 

Destacado (9)

Unityワークショップ
UnityワークショップUnityワークショップ
Unityワークショップ
 
Python開発環境三種の神器
Python開発環境三種の神器Python開発環境三種の神器
Python開発環境三種の神器
 
Python for Data Science
Python for Data SciencePython for Data Science
Python for Data Science
 
NumPy闇入門
NumPy闇入門NumPy闇入門
NumPy闇入門
 
セクシー女優で学ぶ画像分類入門
セクシー女優で学ぶ画像分類入門セクシー女優で学ぶ画像分類入門
セクシー女優で学ぶ画像分類入門
 
Python東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしようPython東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしよう
 
Python on Science ? Yes, We can.
Python on Science ?   Yes, We can.Python on Science ?   Yes, We can.
Python on Science ? Yes, We can.
 
Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編
 
認知症にやさしいまちづくり ~セクターを越えたつながり~
認知症にやさしいまちづくり ~セクターを越えたつながり~認知症にやさしいまちづくり ~セクターを越えたつながり~
認知症にやさしいまちづくり ~セクターを越えたつながり~
 

Similar a 第3回メドレー読書会後半

最近思った機械学習(PyTorch)のベストプラクティス
最近思った機械学習(PyTorch)のベストプラクティス最近思った機械学習(PyTorch)のベストプラクティス
最近思った機械学習(PyTorch)のベストプラクティスMasato Fujitake
 
Pythonで機械学習をやってみる(bizpy 1/19 2022)
Pythonで機械学習をやってみる(bizpy 1/19 2022)Pythonで機械学習をやってみる(bizpy 1/19 2022)
Pythonで機械学習をやってみる(bizpy 1/19 2022)Hirofumi Watanabe
 
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化Yutaka Kato
 
Pythonでターミナルに画像表示
Pythonでターミナルに画像表示Pythonでターミナルに画像表示
Pythonでターミナルに画像表示Masato Fujitake
 
20230216_Python機械学習プログラミング.pdf
20230216_Python機械学習プログラミング.pdf20230216_Python機械学習プログラミング.pdf
20230216_Python機械学習プログラミング.pdfShintaro Fukushima
 
PredictionIOのPython対応計画
PredictionIOのPython対応計画PredictionIOのPython対応計画
PredictionIOのPython対応計画Shinsuke Sugaya
 
20220615_Visual_Programing_IoTLT_vol11_kitazaki_v1.pdf
20220615_Visual_Programing_IoTLT_vol11_kitazaki_v1.pdf20220615_Visual_Programing_IoTLT_vol11_kitazaki_v1.pdf
20220615_Visual_Programing_IoTLT_vol11_kitazaki_v1.pdfAyachika Kitazaki
 
Antプログラミング(1) - プラグイン
Antプログラミング(1) - プラグインAntプログラミング(1) - プラグイン
Antプログラミング(1) - プラグイン隆行 神戸
 
エキスパートPythonプログラミング改訂3版の読みどころ
エキスパートPythonプログラミング改訂3版の読みどころエキスパートPythonプログラミング改訂3版の読みどころ
エキスパートPythonプログラミング改訂3版の読みどころTakayuki Shimizukawa
 
みんなのPython勉強会 in 長野 #3, Intro
みんなのPython勉強会 in 長野 #3, IntroみんなのPython勉強会 in 長野 #3, Intro
みんなのPython勉強会 in 長野 #3, IntroTakeshi Akutsu
 
Quantum teleportation
Quantum teleportationQuantum teleportation
Quantum teleportationYuuOkano
 
High performance python computing for data science
High performance python computing for data scienceHigh performance python computing for data science
High performance python computing for data scienceTakami Sato
 
Pythonによる画像処理について
Pythonによる画像処理についてPythonによる画像処理について
Pythonによる画像処理についてYasutomo Kawanishi
 
PyPro2の読みどころ紹介:Python開発の過去と現在 - BPStudy93
PyPro2の読みどころ紹介:Python開発の過去と現在 - BPStudy93PyPro2の読みどころ紹介:Python開発の過去と現在 - BPStudy93
PyPro2の読みどころ紹介:Python開発の過去と現在 - BPStudy93Takayuki Shimizukawa
 

Similar a 第3回メドレー読書会後半 (20)

最近思った機械学習(PyTorch)のベストプラクティス
最近思った機械学習(PyTorch)のベストプラクティス最近思った機械学習(PyTorch)のベストプラクティス
最近思った機械学習(PyTorch)のベストプラクティス
 
Pythonで機械学習をやってみる(bizpy 1/19 2022)
Pythonで機械学習をやってみる(bizpy 1/19 2022)Pythonで機械学習をやってみる(bizpy 1/19 2022)
Pythonで機械学習をやってみる(bizpy 1/19 2022)
 
osakapy 2014.05 LT
osakapy 2014.05 LTosakapy 2014.05 LT
osakapy 2014.05 LT
 
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
 
Pythonでターミナルに画像表示
Pythonでターミナルに画像表示Pythonでターミナルに画像表示
Pythonでターミナルに画像表示
 
Why python
Why pythonWhy python
Why python
 
20230216_Python機械学習プログラミング.pdf
20230216_Python機械学習プログラミング.pdf20230216_Python機械学習プログラミング.pdf
20230216_Python機械学習プログラミング.pdf
 
Why python
Why pythonWhy python
Why python
 
S08 t0 orientation
S08 t0 orientationS08 t0 orientation
S08 t0 orientation
 
PredictionIOのPython対応計画
PredictionIOのPython対応計画PredictionIOのPython対応計画
PredictionIOのPython対応計画
 
Introduction
IntroductionIntroduction
Introduction
 
20220615_Visual_Programing_IoTLT_vol11_kitazaki_v1.pdf
20220615_Visual_Programing_IoTLT_vol11_kitazaki_v1.pdf20220615_Visual_Programing_IoTLT_vol11_kitazaki_v1.pdf
20220615_Visual_Programing_IoTLT_vol11_kitazaki_v1.pdf
 
Antプログラミング(1) - プラグイン
Antプログラミング(1) - プラグインAntプログラミング(1) - プラグイン
Antプログラミング(1) - プラグイン
 
エキスパートPythonプログラミング改訂3版の読みどころ
エキスパートPythonプログラミング改訂3版の読みどころエキスパートPythonプログラミング改訂3版の読みどころ
エキスパートPythonプログラミング改訂3版の読みどころ
 
みんなのPython勉強会 in 長野 #3, Intro
みんなのPython勉強会 in 長野 #3, IntroみんなのPython勉強会 in 長野 #3, Intro
みんなのPython勉強会 in 長野 #3, Intro
 
Quantum teleportation
Quantum teleportationQuantum teleportation
Quantum teleportation
 
High performance python computing for data science
High performance python computing for data scienceHigh performance python computing for data science
High performance python computing for data science
 
Pythonによる画像処理について
Pythonによる画像処理についてPythonによる画像処理について
Pythonによる画像処理について
 
Pythonとベイズ統計
Pythonとベイズ統計Pythonとベイズ統計
Pythonとベイズ統計
 
PyPro2の読みどころ紹介:Python開発の過去と現在 - BPStudy93
PyPro2の読みどころ紹介:Python開発の過去と現在 - BPStudy93PyPro2の読みどころ紹介:Python開発の過去と現在 - BPStudy93
PyPro2の読みどころ紹介:Python開発の過去と現在 - BPStudy93
 

第3回メドレー読書会後半