【講座の趣旨】
本セミナーでは,データ分析や人工知能の開発において欠かせないデータの前処理技術についてレクチャーし,実演を交えて解説します。Google
Colab環境用に準備されているサンプルコードを使って実データを対象に前処理し,機械学習してみることで,実践的な技術を習得していただくことがねらいです。実際,市販の教科書を片手にGoogle
Colabにあらかじめインストール済みの各種ライブラリ(数値計算,機械学習,深層学習フレームワーク)を使って,どなたでも簡単にデータサイエンスやAIの初歩を体験することができます。しかし,そうした初歩的なサンプルコードの多くが理想的なデータ形式であったり,整理されたデータを対象としているため,実務において目の前にした未整理のデータの前処理に挫折してしまう方も多いと聞きます。このようにサンプルデータと実務で直面する生データとのギャップに戸惑うことは少なくありません。このセミナーでは,とにかく手っ取り早く手を動かしながら実用的なデータ前処理のコツをつかみたい人には最適です。困ったときにそのまま使える便利で実用的な前処理用サンプルコードを提供します。また,講師のこれまでの研究や実務の経験から,有用なデータの収集方法のコツ,思ったようなデータが入手できないときの秘策,学習が上手くいかないときのチューニングのノウハウなども伝授します。
【講座内容】
1.準備
1.1 Google Colabを使ったPython実行環境
1.2 便利なライブラリ群
1.2.1 NumPy, pandas
1.2.2 scikit-learn
1.2.3 matplotlib
1.2.4 Tensorflow, Keras
2.基本的な前処理テクニック
2.1 標準化,正規化,ビニング
2.2 外れ値と欠損値の扱い
2.2.1 四分位範囲による外れ値除去
2.2.2 外れ値に頑健な標準化法
2.2.3 単一代入法による欠損値の補完
2.2.4 多重代入法による欠損値の補完
2.3 特徴選択手法
2.3.1 フィルタ法(カイ二乗検定,ANOVA,ピアソン積率相関係数)
2.3.2 ラッパ法(RFE,Boruta)
2.3.3 正則化(リッジ回帰,LASSO回帰,弾性回帰ネット)
2.4 次元削減手法
2.4.1 PCA
2.4.2 NMF
2.4.3 UMAP
2.4.4 その他の次元削減
3.高度な前処理テクニック
3.1 カテゴリカルデータの数値データへの変換
3.1.1 one-hotエンコーディング
3.2.2 ラベルエンコーディングとその他のエンコーディング法
3.2.3 特徴量ハッシング
3.2.4 カテゴリ変数の分散表現(エンティティ埋め込み)
3.2 不均衡データに対するリサンプリング法
3.2.1 アンダーサンプリング(ENN, NearMiss, TomekLinks,
etc.)
3.2.2 オーバーサンプリング(SMOTE, ADASYN, BorderlineSMOTE,
etc.)
3.3 時系列データに対する前処理
3.3.1 窓付き統計値
3.3.2 タイムゾーンの変換
3.3.3 時系列データの補完
4.テキストデータの前処理テクニック
4.1 テキスト抽出と分かち書き・形態素解析
4.2 単語分散表現とトピックモデリング
4.2.1 Word2Vec
4.2.2 fastText
4.2.3 潜在的ディリクレ配分法 (LDA)
4.2.4 その他のトピック分布
4.3 ニューラルネットワークを用いたテキスト分類
4.3.1 畳み込みニューラルネットワークによる分類
4.3.2 BERTのファインチューニングによる分類
4.3.3 テキストデータの拡張方法
4.4 大規模言語モデル
4.4.1 言語モデルのファインチューニング
4.4.2 言語モデルの軽量化
4.4.3 言語モデルの説明可能性
5.まとめ
5.1 演習問題
5.2 もっと詳しく学びたい方へ
【質疑応答】 |