sm-remote 移植,実験記録は軽量自作,CI なしと決め ENV_01 を作成した.
.github/dependabot.yml(uv + github-actions)・.gitignore 更新(data/・runs/・重み)・pyproject.toml(Python 3.12)・パッケージ骨組み・README を作成し,ENV_02〜ENV_04 を整備した.Newton に ~/work/TIASJudgeModel と ~/data/TIASJudgeModel(700)を作り,コードを tar over ssh で送って uv sync を通し torch 2.14.0+cu130・CUDA 有効・GPU 3 台を確認した.
[tool.uv.sources] での対処は不要).GPU は 3 台のうち 1 台が他ユーザー使用中で,共用前提の GPU 指定が必要uv sync が PyPI からのダウンロードで connection reset(safetensors)→ 再試行中 / ② 非対話 ssh では uv が PATH に無く command not found(export PATH="$HOME/.local/bin:$PATH" が必要)/ ③ 踏み台経由で Newton.local の名前解決が一時的に失敗(再試行で復帰).② ③ は ENV_02 のトラブルシューティングに記録したmanifest.csv を学習の唯一の入口とし,patient_id を必須にした.取得できない場合に画像 ID を患者 ID と見なす代替はしない(同一患者が分割を跨ぐと評価が壊れる).claude/rules/ に coding-style・project-structure・testing・error-handling を作成し(path-scoped rule),pyproject.toml に ruff の選択ルールと pytest の slow マーカーを追加した.CLAUDE.md の必須ルール欄にプロジェクト固有の制約(データの持ち出し禁止・患者単位分割・色拡張の禁止等)を明記した.
<クラス>_あり / <クラス>_ややあり,淡紅は「(正常)」のみ)に PNG 計 1085 枚.5 クラス集約で 暗赤紅 380・淡紅 337・紫 145・紅 119・淡白 104(不均衡 3.7 倍).全画像 Format24bppRgb(アルファなし)でマスク外は黒 (0,0,0).サイズは幅 449〜900・高さ 279〜1025 でばらばら(舌領域のバウンディングボックス切り出し)severity 列として保持し,学習は 5 クラス(9 クラスは最小 51 枚・不均衡 6.6 倍で不利).評価では severity 別の層別 recall を見る.リサイズの余白は背景と同じ黒で埋める.クラス表示名は元データに合わせ「暗赤紅」に修正patient_id 単位で分割し,将来複数枚が入っても壊れないようにする(前提が変わった時に patient_id を実 ID へ入れ直す)<label>_<severity> の ASCII スラッグへ対応付けてコピーする手順を ENV_03 に記載したclinical-data)を使う方針を ENV_03 に明記した-EncodedCommand(UTF-16LE + Base64)で渡すと引用符の問題を回避できるscp を実行させる形にし,画像は研究室 LAN 内で直送した(手元 PC は制御コマンドのみ).件数はフォルダごとに元と完全一致,非 PNG は 0 件.手順と実施記録は ENV_03.
scp "...\*.png" は使えない.ファイルを列挙して 100 件ずつ渡す(コマンドライン長の上限対策).日本語フォルダ名は <label>_<severity> の ASCII スラッグへ対応付けて転送した