Open11

DevOpsについて勉強していく

winnie279winnie279

MLOps

EDA

df.head(n)
df.shape
df[column].value_counts()
df.info()
df.describe() # 整合性
df.groupby(column).describe()
df.isna().sum()
check 3 sigma
df.dropna()
df.drop_duplicates() # df.duplicated()

delete unused columns or rows

schema validation

df[column].plot()
pd.scatter_matrix(df)
df.corr().style.background_gradient(cmap="coolwarm")

master or transaction data

線形分離可能かのプロット

winnie279winnie279

Azure 成熟度レベル
https://zenn.dev/keonabut/articles/45c240a0d710de

PoCレベルのMLOps
https://qiita.com/nokoxxx1212/items/6dbcffb0bf45b2a6dcad

Pipelines
https://www.tensorflow.org/tfx/data_validation/get_started?hl=ja
https://dev.classmethod.jp/articles/create_pipeline_scikit-learn_pipeline/

Data Lake:生データ
Data Ware House(DWH):加工したデータ。探索もここから。
Data Mart:利用するためのデータ

ソフトウェアエンジニア「データサイエンティストさん、実験が再現できないんですが。。というかノートブック(分析、前処理、学習、評価がオールインワン)ですか。。」
(PoCからしばらく経って)このモデルが精度は一番良かったはずだけど、処理速度面で課題があるから、やっぱりあの二番目に精度が良かったパターンに差し替えよう。どのくらい精度に差があったっけ?そのときの学習再現できるよね?
https://qiita.com/nokoxxx1212/items/d309cbfbd9cfa78e4e23

MLOpsとは、システム開発において、データサイエンティストがやらないこと全て
https://www.slideshare.net/tetsutarowatanabe/mlops-238097926

書籍
https://www.oreilly.co.jp//books/9784873119472/
https://www.oreilly.co.jp//books/9784873119502/
https://upura.hatenablog.com/entry/2019/02/22/221125

コミュニティ
https://mlops.connpass.com/

MLflow
https://future-architect.github.io/articles/20200626/

ディレクトリ構成の参考
https://upura.hatenablog.com/entry/2018/12/28/225234

winnie279winnie279

LightGBMは欠損値があっても使えるからベースラインとして使いやすいらしい

winnie279winnie279

ETL or ELT

ELTはSQLだけ、ETLはPythonなどが必要?

ELTでは変換処理を行うための専用エンジンは不要であり、データベースのリソースを使います。普段から利用しているデータベースの処理だけで良いため、新たなスキルを習得する手間を省けます。

一方、ETLの場合は変換処理のための専用ツールの使い方やプログラミングを習わなければなりません。[1]

脚注
  1. ETLとELTの違いとは?使い分けや活用ポイントも解説!|ITトレンド ↩︎

winnie279winnie279

探索的データ分析(Exploratory Data Analysis, EDA)

(CRoss-Industry Standard Process for Data Mining, CRISP-DM)

Business Understanding(ビジネス理解)
Data Understanding(データ理解)
Data Preparation(データ準備)
Modeling(モデル構築)
Evaluation(評価)
Deployment(実装)