SIGNATEおれおれ環境構築備忘録(全体構成)
前回のコンペで気づいた課題に対して、今回は、コンペにおいて環境構築の最適化を目指す。
前提:筆者は機械学習、プログラミング初心者です。おすすめあれば教えていただけると幸いです。
前回の様子
課題
MacとWindows環境のチームと協力しながら進めたい。
前回のコンペでは特徴量やパラメーターの管理ができていなかった。
ソースの管理もできていなかった。協力するならGitHubにてプロジェクトを進めた方がよいと感じた。
問題点、タスクを共有したい。チームで改善したい。
方策
課題を受け以下の方法を考えた。(それと参考サイト。)
1.共通の開発環境の構築
Docker を使ってコンテナ化されたデベロップメント環境を作成
開発言語、ライブラリ、ツールなどを標準化し、すべての開発者が同じ環境で作業できるようにする
Dockerファイルをリポジトリに含め、新しい開発者が簡単に同じ環境を構築できるようにする
2. バージョン管理とコラボレーション
GitHubでプロジェクトを管理
ブランチ戦略を採用し、機能ごとに分離して並行開発を行う
3. 特徴量とパラメーターの管理
MLフローの各ステップ(特徴量エンジニアリング、モデル訓練、ハイパーパラメーター調整など)をスクリプト化し、リポジトリ内に保存
各実験の入力データ、パラメーター、出力結果をログ化し、MLフローの履歴を記録
結果の比較や再現が容易になるよう、実験の管理を行う
4.タスクの共有と管理
GitHub Issuesによって管理する。
次回
GitHubプロジェクト作成〜Dockerイメージ作成まで
この記事が気に入ったらサポートをしてみませんか?