SlideShare a Scribd company logo
カジュアル勉強会 @仙台
データサイエンスを学ぶ 第3回
株式会社 エクテック
取締役 兼データサイエンティスト
第5回までの流れ
1部
1. 第1回のおさらい
2. データへの取り組み方
3. 色々なアプローチ
2部
1. アプローチ具体例
2. 分析環境
3. 周辺技術と知識
第2回 (2020/02/01 )
1部
1. データとは
2. 身近なデータ
3. データと科学
2部
1. データアプローチ
2. データで実現
3. 活用事例
第1回 (2020/01/24 )
第5回までの流れ
1部
1. 第3回のおさらい
2. 機械学習
3. データと機械学習
2部
1. データと分類
2. データと回帰
3. データとクラスタリング
第4回 (2020/03/07 )
1部
1. 第2回のおさらい
2. データの加工
3. データの前処理
2部
1. データの正規化
2. 予測と分類①
3. 予測と分類②
第3回 (2020/02/15 )
第5回までの流れ
1部
1. 第4回のおさらい
2. データの在り方
3. データと可視化①
2部
1. データと可視化②
2. データと可視化③
3. データと個人情報
第5回 (2020/03/28 )
本日のアジェンダ
第2回のおさらい
(Go over)
データの加工
(Data Processing)
データの前処理
(Data Pre-processing)
データの正規化
(Data Normalization)
予測と分類①
(Forecasting & Classification1)
予測と分類②
(Forecasting & Classification2)
2部1部
第2回のおさらい
(Go over)
レコードセット, データベース, テーブル
データクレンジング
破損または不正確なデータを
検出および修正するプロセス
破損または不正確なデータを
検出および修正するプロセス
データの品質を把握する
データのクレンジングをする前に、
データがどの程度、”綺麗”なのかを確認する
破損または不正確なデータを
検出および修正するプロセス
データをクレンジングする
⽋損の補完や表記の揺れの標準化, ノイズの排除など
⽬的に適した⼿法を定義し、適⽤する必要あり
破損または不正確なデータを
検出および修正するプロセス
データを名寄せ、統合する
名寄せ(マッチング)によって重複データの特定
統合(マージ)を⾏う
なんらかの理由により記録されなかった値
⽋損データ
全ての変数の値が観測されている
データを「完全データ」
⽋損データ = 不完全データ
データが不完全, ⽋損データであると
⽋損データ
統計的処理が不可能になる
結果にバイアスが⽣じる
データそのものが無駄になる
⽋損値の除去
予測値で補完する⽅法
尤度(確率)で補完する⽅法
⽋損値
出現率を⾒て、補完。
補完前後で、出現回数の
分布を確認する。
⽋損データが⼤きいと
推論による補完は厳しい
ホワイトノイズ
ランダムウォーク
※詳しくは第3回で説明します
Python R
⾼校数学 微分積分 統計学 収集⼒ 客観的思考⼒
numpypandas
scikit-learn
Tensorflow
Keras
Caretggplot2
dplyer
matplotlib
CRAN
R Studio
Pycharm
PyScripter
Atom Visual
Studio
⾃然⾔語 レコメンド 時系列
データの加⼯
(Data Processing)
なぜ、データを加⼯するのか
(1分間)
なぜ、データを加⼯するのか
データサイエンス分野
“精度” を⾼めたいから
データ加⼯
特徴量エンジニアリング
特徴量エンジニアリング
いかにデータ量を増やすか
いかにデータの質を⾼めるか
いかにデータ量を増やすか
同じ画像に対して、
⾓度を変えて、増やす
いかにデータ量を増やすか
同じ画像に対して、
RGBを変えて、増やす
いかにデータ量を増やすか
同⼀パターンに対して、
範囲内で変化を与えて、増やす
いかにデータの質を⾼めるか
ホワイトノイズ
ランダムウォーク
ホワイトノイズ
ホワイトガウスノイズ
ホワイトノイズ
ホワイトガウスノイズ
⽐較的パターン性のあるノイズ
ランダムウォーク 
“酔歩”と訳されるが、
パターンに規則がなく、予測不能
いかにデータの質を⾼めるか
精度を⾼めるにおいて、
そのノイズは意味のあるノイズ?
データの前処理
(Data Pre-processing)
そのデータは、
⽂字列?数値?
One-hot Encoding
教育科目
英語
数学
国語
理科
社会
教育科目
英語
数学
国語
理科
社会
英語 数学 国語 理科 社会
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
データの加⼯において
基本中の基本に位置する⼿法
データをxxxであるか否かの
「1 or 0」で表現する⼿法
教育科目
英語
数学
国語
理科
社会
英語 数学 国語 理科 社会
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
他の列から再現できてしまう
列の存在は予測精度に
悪影響を及ぼす可能性
教育科目
英語
数学
国語
理科
社会
英語 数学 国語 理科 社会
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
データがスパースになる
(≒列がむやみに増える)
Label-Encoding
教育科目
英語
数学
国語
理科
社会
ラベル
1
2
3
4
5
順序性がない値に
適⽤するのは避ける
アルゴリズムによって有効な
場⾯が限られてくるため
注意が必要
連番で表現される順序が
予測したい値に関係するほど
有効なデータになる
順序の差が⼀定でない
ものは避ける
Count-Encoding
教育科目
英語
数学
国語
理科
社会
実施回数
10
15
11
12
5
教育科目
英語
数学
国語
理科
社会
実施回数
10
15
11
12
5
10
15
11
12
5
+
教育科目
出現する値の頻度へと
変換する⼿法
Label-Encoding
と相性が良い
Target-Encoding
教育科目
英語
数学
国語
理科
社会
受講人数
10人以上
10人以下
10人以下
10人以下
10以上
教育科目
英語
数学
国語
理科
社会
受講回数
10
15
11
12
5
10人以上
割合算出
22%
51%
32%
24%
10%
+
教育科目
英語
数学
国語
理科
社会
受講回数
10
15
11
12
5
10人以上
割合算出
22%
51%
32%
24%
10%
10人以上
割合算出
0.22
0.51
0.32
0.24
0.10
予測にとって有効なデータ
に変換されてくれる
が、問題もある
Leak問題
教育科目
英語
数学
国語
理科
社会
受講回数
10
15
11
12
5
10人以上
割合算出
22%
51%
32%
24%
10%
10人以上
割合算出
0.22
0.51
0.32
0.24
0.10
⼿に⼊らないはずのデータを
⼿に⼊れた状態で予測してしまう
単純化
架空のデータ
ID 年齢 性別 居住地 病気
10001 42 男 仙台市泉区xxx 大腸ガン
10002 59 女 仙台市泉区yyy 胃ガン
10003 34 女 仙台市若林区xxx ウィルス感染症
10004 61 男 仙台市青葉区xxx ウィルス感染症
10005 77 男 仙台市青葉区yyy 心疾患
10006 46 女 仙台市青葉区zzz 胃ガン
10007 52 男 仙台市若林区zzz 糖尿病1型
10008 71 男 仙台市宮城野区xxx 喉頭ガン
10009 66 男 仙台市太白区xxx 心疾患
10010 54 女 仙台市太白区yyy 胃ガン
10011 41 男 仙台市若林区yyy 糖尿病2型
架空のデータ
ID 年齢 性別 居住地 病気
10001 42 1 3 1
10002 59 0 3 7
10003 34 0 4 5
10004 61 1 5 5
10005 77 1 5 6
10006 46 0 5 7
10007 52 1 4 2
10008 71 1 1 4
10009 66 1 2 6
10010 54 0 2 7
10011 41 1 4 3
架空のデータ
ID 年齢 性別 居住地 病気
10001 42 1 3 1
10002 59 0 3 7
10003 34 0 4 5
10004 61 1 5 5
10005 77 1 5 6
10006 46 0 5 7
10007 52 1 4 2
10008 71 1 1 4
10009 66 1 2 6
10010 54 0 2 7
10011 41 1 4 3
架空のデータ
ID 年齢 性別 居住地 病気
10001 40代 1 3 1
10002 50代 0 3 7
10003 30代 0 4 5
10004 60代 1 5 5
10005 70代 1 5 6
10006 40代 0 5 7
10007 50代 1 4 2
10008 70代 1 1 4
10009 60代 1 2 6
10010 50代 0 2 7
10011 40代 1 4 3
Round化
「丸める」「平たくする」
ことで単純化する
Binning
年齢
23
15
36
39
55
年齢
23
15
36
39
55
年齢層
20
10
30
30
50
年齢
23
15
36
39
55
年齢層
20
10
30
30
50
階級・階層に分ける
年齢
23
15
36
39
55
年齢層
20
10
30
30
50
10 20 30
1
1
0
0
0
1
0
0
0
1
0
1
0
1
1
1
0
0
年齢
23
15
36
39
55
年齢層
20
10
30
30
50
10 20 30
1
1
0
0
0
1
0
0
0
1
0
1
0
1
1
1
0
0
One-hot 化
予測したいデータとの関係性が
複雑(=⾮線形)でも、
ある程度予測することが可能
休憩
(10分間)
データの正規化
(Data Normalization)
正規化とは?
対象の特徴をあらかじめ
決められた基準に加⼯すること
主に画像データなどの
前処理として⾏うもの
RGB(0~255)を
0~1で表現する
なぜ、正規化するの?
学習コスト(計算時間)
を抑えるため
正規化
最⼤値 最⼩値
元の値 最⼩値
予測と分類①
(Forecasting &
Classification1)
予測と分類②
(Forecasting &
Classification2)
Jupyter上で
⾒ていきます
ノイズのあるSin波を予測
Auto-Encorderで⽂字判定
⼈名だけで国籍判定
ホワイトノイズを
Sin波に付加
ノイズをもとに
モデル学習して
予測
Adéla
Adela
adela
1→4→5→12→1
11カ国 の人名を
ベクトル化 & ゼロパディング
これらデータを用いてモデル学習 &
モデル精度の比較
simple Auto-Encoder
ノイズのあるデータ
Convolutional Auto-Encoder
De-noise Auto-Encoder
Auto-Encoder
様々な種類の
オートエンコーダ
を試す
次回のアジェンダ
第3回のおさらい
(Go over)
機械学習
(Machine Learning)
データと機械学習
(Data & ML)
データと分類
(Data & Classification)
データと予測
(Data & Prediction)
データとクラスタリング
(Data & Clustering)
2部1部
EOS

More Related Content

More from KazuhiroSato8

Casual learning-machinelearningwithexcelno8
Casual learning-machinelearningwithexcelno8Casual learning-machinelearningwithexcelno8
Casual learning-machinelearningwithexcelno8
KazuhiroSato8
 
Casual learning anomaly_detection_with_machine_learning_no1
Casual learning anomaly_detection_with_machine_learning_no1Casual learning anomaly_detection_with_machine_learning_no1
Casual learning anomaly_detection_with_machine_learning_no1
KazuhiroSato8
 
Casual learning machine_learning_with_excel_no7
Casual learning machine_learning_with_excel_no7Casual learning machine_learning_with_excel_no7
Casual learning machine_learning_with_excel_no7
KazuhiroSato8
 
Casual data analysis_with_python_vol2
Casual data analysis_with_python_vol2Casual data analysis_with_python_vol2
Casual data analysis_with_python_vol2
KazuhiroSato8
 
Casual datascience vol5
Casual datascience vol5Casual datascience vol5
Casual datascience vol5
KazuhiroSato8
 
Casual learning machine learning with_excel_no6
Casual learning machine learning with_excel_no6Casual learning machine learning with_excel_no6
Casual learning machine learning with_excel_no6
KazuhiroSato8
 
Casual learning machine learning with_excel_no5
Casual learning machine learning with_excel_no5Casual learning machine learning with_excel_no5
Casual learning machine learning with_excel_no5
KazuhiroSato8
 
Casual learning machine learning with_excel_no4
Casual learning machine learning with_excel_no4Casual learning machine learning with_excel_no4
Casual learning machine learning with_excel_no4
KazuhiroSato8
 
Basic deep learning_framework
Basic deep learning_frameworkBasic deep learning_framework
Basic deep learning_framework
KazuhiroSato8
 
Casual learning machine learning with_excel_no3
Casual learning machine learning with_excel_no3Casual learning machine learning with_excel_no3
Casual learning machine learning with_excel_no3
KazuhiroSato8
 
Casual learning machine learning with_excel_no2
Casual learning machine learning with_excel_no2Casual learning machine learning with_excel_no2
Casual learning machine learning with_excel_no2
KazuhiroSato8
 
Casual learning machine_learning_with_excel_no1
Casual learning machine_learning_with_excel_no1Casual learning machine_learning_with_excel_no1
Casual learning machine_learning_with_excel_no1
KazuhiroSato8
 
エクテック カジュアル勉強会 データサイエンスを学ぶ第2回
エクテック カジュアル勉強会 データサイエンスを学ぶ第2回エクテック カジュアル勉強会 データサイエンスを学ぶ第2回
エクテック カジュアル勉強会 データサイエンスを学ぶ第2回
KazuhiroSato8
 
エクテック カジュアル勉強会 データサイエンスを学ぶ第1回
エクテック カジュアル勉強会 データサイエンスを学ぶ第1回エクテック カジュアル勉強会 データサイエンスを学ぶ第1回
エクテック カジュアル勉強会 データサイエンスを学ぶ第1回
KazuhiroSato8
 
Casual data analysis_with_python_vol1
Casual data analysis_with_python_vol1Casual data analysis_with_python_vol1
Casual data analysis_with_python_vol1
KazuhiroSato8
 
Casual datascience vol2
Casual datascience vol2Casual datascience vol2
Casual datascience vol2
KazuhiroSato8
 
Casual datascience vol1
Casual datascience vol1Casual datascience vol1
Casual datascience vol1
KazuhiroSato8
 

More from KazuhiroSato8 (17)

Casual learning-machinelearningwithexcelno8
Casual learning-machinelearningwithexcelno8Casual learning-machinelearningwithexcelno8
Casual learning-machinelearningwithexcelno8
 
Casual learning anomaly_detection_with_machine_learning_no1
Casual learning anomaly_detection_with_machine_learning_no1Casual learning anomaly_detection_with_machine_learning_no1
Casual learning anomaly_detection_with_machine_learning_no1
 
Casual learning machine_learning_with_excel_no7
Casual learning machine_learning_with_excel_no7Casual learning machine_learning_with_excel_no7
Casual learning machine_learning_with_excel_no7
 
Casual data analysis_with_python_vol2
Casual data analysis_with_python_vol2Casual data analysis_with_python_vol2
Casual data analysis_with_python_vol2
 
Casual datascience vol5
Casual datascience vol5Casual datascience vol5
Casual datascience vol5
 
Casual learning machine learning with_excel_no6
Casual learning machine learning with_excel_no6Casual learning machine learning with_excel_no6
Casual learning machine learning with_excel_no6
 
Casual learning machine learning with_excel_no5
Casual learning machine learning with_excel_no5Casual learning machine learning with_excel_no5
Casual learning machine learning with_excel_no5
 
Casual learning machine learning with_excel_no4
Casual learning machine learning with_excel_no4Casual learning machine learning with_excel_no4
Casual learning machine learning with_excel_no4
 
Basic deep learning_framework
Basic deep learning_frameworkBasic deep learning_framework
Basic deep learning_framework
 
Casual learning machine learning with_excel_no3
Casual learning machine learning with_excel_no3Casual learning machine learning with_excel_no3
Casual learning machine learning with_excel_no3
 
Casual learning machine learning with_excel_no2
Casual learning machine learning with_excel_no2Casual learning machine learning with_excel_no2
Casual learning machine learning with_excel_no2
 
Casual learning machine_learning_with_excel_no1
Casual learning machine_learning_with_excel_no1Casual learning machine_learning_with_excel_no1
Casual learning machine_learning_with_excel_no1
 
エクテック カジュアル勉強会 データサイエンスを学ぶ第2回
エクテック カジュアル勉強会 データサイエンスを学ぶ第2回エクテック カジュアル勉強会 データサイエンスを学ぶ第2回
エクテック カジュアル勉強会 データサイエンスを学ぶ第2回
 
エクテック カジュアル勉強会 データサイエンスを学ぶ第1回
エクテック カジュアル勉強会 データサイエンスを学ぶ第1回エクテック カジュアル勉強会 データサイエンスを学ぶ第1回
エクテック カジュアル勉強会 データサイエンスを学ぶ第1回
 
Casual data analysis_with_python_vol1
Casual data analysis_with_python_vol1Casual data analysis_with_python_vol1
Casual data analysis_with_python_vol1
 
Casual datascience vol2
Casual datascience vol2Casual datascience vol2
Casual datascience vol2
 
Casual datascience vol1
Casual datascience vol1Casual datascience vol1
Casual datascience vol1
 

Casual datascience vol3