Spaces:
Running
Running
| title: MuscleCare Train AI | |
| emoji: π₯ | |
| colorFrom: green | |
| colorTo: purple | |
| sdk: docker | |
| pinned: false | |
| license: apache-2.0 | |
| # MuscleCare Train AI | |
| CNN + GRU κΈ°λ° κ·Όμ‘ νΌλ‘λ μμΈ‘ λͺ¨λΈ μλ νμ΅ μμ€ν | |
| ## π μ£Όμ κΈ°λ₯ | |
| - **μλ λ°μ΄ν° λ‘λ©**: Hugging Face `Merry99/MuscleCare-DataSet` λ°μ΄ν°μ μλ λ‘λ | |
| - **CNN + GRU λͺ¨λΈ**: μνμ€ λ°μ΄ν°μμ νΌλ‘λ μμΈ‘ | |
| - **μλ νμ΅ μ€μΌμ€λ§**: λ§€μ£Ό μΌμμΌ μμ μλ λͺ¨λΈ μ λ°μ΄νΈ | |
| - **μ€λ³΅ λ°©μ§**: μ΄λ―Έ νμ΅λ μΈμ λ°μ΄ν° μλ μ μΈ | |
| - **TFLite λ³ν**: λͺ¨λ°μΌ λ°°ν¬λ₯Ό μν TFLite λͺ¨λΈ μλ μμ± (νμ) | |
| ## π¦ μ€ν λ°©λ² | |
| ### Docker μ¬μ© (κΆμ₯) | |
| ```bash | |
| # μ΄λ―Έμ§ λΉλ | |
| docker build -t musclecare-train-ai . | |
| # μ€ν | |
| docker run musclecare-train-ai | |
| ``` | |
| ### λ‘컬 μ€ν (Python 3.10 νμ) | |
| ```bash | |
| # Python 3.10 νμΈ | |
| python3.10 --version | |
| # ν¨ν€μ§ μ€μΉ | |
| python3.10 -m pip install -r requirements.txt | |
| # μ€ν | |
| python3.10 start.py | |
| ``` | |
| λλ μ€ν¬λ¦½νΈ μ¬μ©: | |
| ```bash | |
| ./run_local.sh | |
| ``` | |
| ## π μ 체 νλ‘μ° | |
| 1. **λ°μ΄ν° λ‘λ**: `load_dataset.py`λ‘ Hugging Face λ°μ΄ν°μ λ‘λ | |
| 2. **λͺ¨λΈ νμ΅**: `train_e2e.py`λ‘ CNN + GRU λͺ¨λΈ νμ΅ | |
| 3. **λͺ¨λΈ μ μ₯**: νμ΅λ λͺ¨λΈμ `./model/fatigue_net_v2.pt`μ μ μ₯ (PyTorch state_dict νμ) | |
| 4. **TFLite λ³ν**: `convert_tflite.py`λ‘ TFLite λͺ¨λΈ μμ± β `./model/fatigue_net_v2.tflite` | |
| ## π νμΌ κ΅¬μ‘° | |
| - `load_dataset.py`: Hugging Face λ°μ΄ν°μ λ‘λ | |
| - `train_e2e.py`: CNN + GRU λͺ¨λΈ νμ΅ (PyTorch state_dict νμμΌλ‘ μ μ₯) | |
| - `convert_tflite.py`: PyTorch β TFLite λ³ν | |
| - `train_scheduler.py`: μλ νμ΅ μ€μΌμ€λ¬ | |
| - `start.py`: μλ νμ΅ μ€μΌμ€λ¬ μμ μ€ν¬λ¦½νΈ | |
| - `app.py`: FastAPI μ ν리μΌμ΄μ (λμ€μ ꡬν μμ ) | |
| ## π§ μꡬμ¬ν | |
| - Python 3.10 (TFLite λ³ν νμ) | |
| - PyTorch 2.0+ | |
| - ONNX, ONNX-TF, TensorFlow (TFLite λ³νμ©) | |
| ## π λͺ¨λΈ μ μ₯ μμΉ | |
| - PyTorch λͺ¨λΈ: `./model/fatigue_net_v2.pt` (state_dict νμ) | |
| - **TFLite λͺ¨λΈ: `./model/fatigue_net_v2.tflite`** (λͺ¨λ°μΌ λ°°ν¬μ©, νμ) | |
| - νμ΅ μν: `./model/training_state.json` | |
| ## β οΈ μ€μ μ¬ν | |
| - **TFLite λ³νμ νμμ λλ€** (λͺ¨λ°μΌ λλ°μ΄μ€μμ μ€ν νμ) | |
| - λͺ¨λΈμ λ°λμ PyTorch state_dict νμμΌλ‘ μ μ₯λμ΄μΌ ν©λλ€ (TorchScript νμ λΆκ°) | |
| - Python 3.10 μ΄μμ΄ νμν©λλ€ (TFLite λ³ν ν¨ν€μ§ νΈνμ±) | |
| ## π μλ νμ΅ μ€μΌμ€ | |
| - μ€ν μκ°: λ§€μ£Ό μΌμμΌ μμ (00:00) | |
| - μ€λ³΅ λ°©μ§: `training_state.json`μ μ μ₯λ μΈμ IDλ μλ μ μΈ | |
| - λͺ¨λΈ λ²μ : μλ μ¦κ° | |
| - TFLite λ³ν: νμ΅ ν μλ μν | |