「データエンジニアリングの基礎」を読んだので、感想・各章の内容についてまとめます www.oreilly.co.jp 全体を通しての感想 原本は Fundamentals of Data Engineering で本書は日本語訳となります。 筆者のJoe Reis氏とMatt Housley氏はデータエンジニアリ…
Data Engineering Study #23 Data orchestration 特集の発表「ワークフローオーケストレーション入門」から、ワークフローオーケストレーションの歴史について記事にまとめました。 概要 近年データエンジニアリングの周辺技術が話題に上がるようになり、ワ…
「入門 考える技術・書く技術」の読書メモ www.diamond.co.jp 全体を通しての感想 バーバラ・ミント氏著のピラミッド原則をまとめた「考える技術・書く技術」に対する、「日本人による日本人のための実践ガイド」とまえがきで述べられています。 全168Pと文…
問題 ~/.zshrcに記述した eval "$(pyenv virtualenv-init -)" によって、zshのプロンプト表示が遅くなってることに気づきました。 原因と解決方法を調べたのでまとめました。 結論 ~/.zshrcに記述するのを eval "$(pyenv virtualenv-init -)" ↓ eval "$(pyen…
ターミナルをiTerm2からAlacrittyに変えたので、Alacrittyの設定方法について紹介します。 Alacrittyとは Rust製のターミナルエミュレーターです。 公式READMEでは以下のように特徴を説明しています。 高速に動作 configファイルで柔軟にカスタマイズ可能 BD…
この記事は MLOps Advent Calendar 2023の20日目の投稿記事です。 PrefectワークフローをKubernetes Jobで実行する方法を紹介します。 本文中コード: code-for-blogpost/prefect_gke at main · nsakki55/code-for-blogpost · GitHub Prefect × Kubernetes Pr…
Prefect 2.10以降、インフラ管理の方法はAgentが非推奨となりWorkerが推奨となりました。 PrefectのWorkerについてのまとめ、KubernetesにWorkerをデプロイする場合のmanifestを紹介します。 本文中コード: code-for-blogpost/prefect_kubernetes_worker at …
「プロダクトマネージャーのしごと」を読んだので、メモをかねて各章の感想を書きます。 www.oreilly.co.jp 全体を通しての感想 原本は Product Management in Practice, 2nd Edition で本書は日本語訳となります。 本書が出版された時にプロダクトマネージ…
「機械学習システムデザイン」を読んだので、感想・各章の内容についてまとめます www.oreilly.co.jp 全体を通しての感想 原本は Designing Machine Learning Systems で本書は日本語訳版となります。 原本の著者である Chip Huyen氏が書籍に関する情報をま…
自分はキーボードに HHKB を愛用しています。プライベートでも仕事でも HHKB キーボードを使用していて、毎日 HHKB キーボードを使っています。 今回、動作異常が発生したので製造元の PFU に修理対応をしてもらったところ、サポートが最高だったので感謝の…
ゼロから自作したパケットをpythonのsocket通信を用いてサーバーに送信します。 SYNフラグのパケットをサーバーに送り、SYN, ACKフラグのパケットが返ってくるところまで確認します。 実行環境 $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=20…
Pythonのメモリプロファイルを行うためにmemrayを使用したところ、インストールからプロファイル実行まで手軽にでき、レポート方法が豊富で使い勝手が良かったので使用方法を紹介します。 本文中コード:code-for-blogpost/memray at main · nsakki55/code-f…
概要 Prefectを本番運用する場合、Flowの実行設定であるDeploymentをPrefect Cloudに登録する必要があります。 Prefectでワークフローを運用する場合、FlowとDeploymentをGitHubレポジトリでコード管理するケースが多いと思います。 この記事では、レポジト…
概要 PrefectではFlow内部で別のFlowを実行する、Sub Flowという概念があります。 Flows - Prefect Docs 例えばMLの学習パイプラインを 学習データの取得 前処理 学習 のように処理に分ける場合、各処理を1つのFlowとしてグループ化できます。 Sub Flowを呼…
PrefectでFlow実行名を変更する方法を紹介します。 本文中コード: code-for-blogpost/prefect_rename_flow at main · nsakki55/code-for-blogpost · GitHub flow実行名の変更について PrefectのFlow実行名は、デフォルトではランダムに名前が割り当てられま…
Pythonパッケージ管理ツール ryeの使い勝手がよかったので使用方法をまとめました。 ryeとは GitHub: https://github.com/mitsuhiko/rye flaskの作者である Armin Ronacher氏 (GitHubアカウント @mitsuhiko)が個人利用目的で作成した、Pythonのパッケージ関…
概要 PrefectではInfrastructure blockにECS Task Blockを指定することで、FlowをECS Taskで実行することができます。 本記事では、FlowをECS Taskで実行する2パターンの手順を紹介します。 本文中コード: https://github.com/nsakki55/prefect-ecs-task-flo…
本文中のコード github.com Prefect 2.0 2022年7月にPrefect 2.0が正式リリースされました。 Prefect1.0のサポートが2023年5月1日に終了するため、Prefect 2.0への移行が必須となっています。 Prefect 1.0から2.0に移行するメリットは次のmediumの記事が参考…
MLOpsを体系的にまとめた論文「Machine Learning Operations (MLOps): Overview, Definition, and Architecture」を読んだので、要点をまとめました。 元論文:https://arxiv.org/abs/2205.02302 TL;DR 「MLOpsって何?」に答えた論文 MLOpsに関わる文献調査…
SageMaker推論高速化のTIPS サービスの中でMLによるリアルタイム推論を行う場合、レイテンシーは重要な指標となります。 SageMakerによるリアルタイム推論の導入を検討してる場合、レイテンシーがサービス要件に合うかは気にする場合が多いと思います。 本記…
PrivateLinkによる低レイテンシー推論 SageMaker 公式ドキュメントで、SageMaker Endpointの低レイテンシー推論のベストプラクティスとして、PrivateLinkの利用が紹介されています。 低レイテンシーのリアルタイム推論AWS PrivateLink - Amazon SageMaker リ…
この記事はMLOps Advent Calendar 2022にリンクしてます。 SageMaker Endpointのレイテンシーを、負荷試験ツールLocustで計測してみました。 本文中のコード: https://github.com/nsakki55/code-for-blogpost/tree/main/sagemaker_endpoint_latency_check 記…
SageMaker Model MonitorとSageMaker Clarifyを使用して、ML監視を実践してみます。 本文中コード: https://github.com/nsakki55/code-for-blogpost/tree/main/sagemaker_model_monitoring ML監視 MLモデルの予測性能は、データと密接に関わっています。 本…
はじめに 現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法~ のJavaで書かれたサンプルコードをPythonで書いてみました。 本書はシステム設計の名著として有名で、コード・システムを綺麗に維持し続けるためのテクニックが…
「推薦システム実践入門」を読んだので、感想・各章の内容についてまとめてみます www.oreilly.co.jp 全体を通しての感想 著者の方々が現役のデータサイエンティスト・MLエンジニアというだけあり、サブタイトルの「仕事で使える導入ガイド」に相応しい「実…
AWS Certified Machine Learning – Specialty(以下、MLS)を取得したので、MLエンジニアに取って役に立つ試験なのか、自分の勉強手順について書いてみます。 AWS Certified Machine Learning – Specialty mls icon AWS認定試験のうち、AWS上で機械学習を用い…
SageMaker Hyperparameter Tuning JobでWarm Startを実行してみます 本文中のコードです github.com 目次 目次 データセット・モデル SageMaker Hyperparameter Tuningについて Estimator作成 学習データの準備 学習スクリプト Estimatorクラスの作成 親Tuni…
特徴量の異なる2つの予測モデルのABテスト環境を、SageMaeker推論エンドポイントを用いて作ってみます。 本文中のコードです github.com 目次 目次 データ・モデル 学習 データ準備 学習スクリプト 学習ジョブの実行 モデル登録 推論スクリプト モデル登録 …
本文中のコードです github.com やりたいこと boto3 で実行したECS Taskが成功・失敗したか実行側で判定したい ECS Task のCloud Watchログをポーリングし続けて、実行ログを標準出力し続けたい 実装したコード task_arn, ecs_cluster を引数に受け取り、ECS…
SageMaker で学習ジョブを実行する ~独自スクリプト~ - nsakki55 のアウトプットブログの続きです 記事中のコード github.com SagaMaker を用いたモデルの学習 SageMaker では学習に必要なスクリプトやライブラリをコンテナベースで管理し、学習に必要なイン…