UOS 데이터셋을 활용하여 베어링 결함 진단을 위한 연속 학습(Continual Learning) 프레임워크를 제공한다.
- 저장소 클론
git clone https://github.com/On-Device-Bearing-Fault-diagnosis-System-using-Continual-Learning.git
cd On-Device-Bearing-Fault-diagnosis-System-using-Continual-Learning- Conda 환경 생성 및 활성화
conda create -n myvenv python=3.8
conda activate myvenv- 의존성 패키지 설치
pip install -r requirements.txt-
UOS 데이터셋 구조: UOS 데이터셋은 연속 학습(Continual Learning) 시나리오에 맞게 세 가지 phase로 구성되어 있다.
Phase 1 (Deep groove ball bearing)
Phase 2 (Cylindrical roller bearing)
Phase 3 (Tapered roller bearing)
-
프로젝트 루트 디렉토리에 데이터셋을 저장할 폴더를 생성
mkdir data- UOS 데이터셋을 다운로드 받고, 압축해제하여 다음과 같이 디렉토리 구조를 구성
data/
├── BearingType_DeepGrooveBall/
├── BearingType_CylindricalRoller/
└── BearingType_TaperedRoller/
# ER 알고리즘을 사용한 기본 학습
python main.py --strategy replay
# 전체 학습 데이터 사용
python main.py --strategy jointDeepFault_UOS/
├── dfb/ # 핵심 모듈
│ ├── model/ # 모델 구현
│ └── databuilder/ # 데이터 처리
├── src/ # 소스 코드
│ ├── data/ # 데이터 관리
│ ├── experiments/ # 실험 구현
│ └── utils/ # 유틸리티
├── results/ # 실험 결과
└── configs/ # 설정 파일
python main.py --strategy [replay/joint] [매개변수...]| 매개변수 | 설명 | 기본값 |
|---|---|---|
| --strategy | 학습 전략 (replay / joint) | replay |
| --epoch | 학습 에폭 수 | 200 |
| --batch-size | 배치 크기 | 64 |
| --lr | 학습률 | 0.01 |
| --memory-size | replay memory buffer 크기 | 2000 |
| --device | 학습 장치 (cuda/cpu) | cuda |