- 리서치 코드 품질 관리 자동화
본 강의에서는 코드 문제 및 CI(+실습)에 대해서 말씀을 해주셨다.
- 리서치 코드 품질 문제
- 일반적으로 리서치 조직에서 생기는 코드 품질의 문제에 대해 이해 한다.
- 복사 붙여 넣기 -
- 괜찮은 오픈소스를 일단 복사 붙여놓고, 돌아가는지 확인하고 자신의 task에 맞게 바꾸는 경우가 되게 많다고한다. 그러다보니 실제 코드를 만들 때, 관리 및 정리가 부족하고 새로운 것을 적용하려고 할때 어려움이 잦다고 한다. (꼭 다 그렇다는 것은 아니다.)
- 깨진 유리창의 법칙
- 품질이 낮은 코드를 쌓아올리기 시작하면, 곧 다른 협업자들의 코드 품질도 떨어지기 시작한다는 것이다.
- 문제
- 코드 중복
- 코드 재사용성
- 너무 많은 전역 변수
- 당장 쓰기에는 편할 수 있지만, 항상 사이드이펙트를 가져온다. - 이상하게 꼬여있는 import
- PyhonPath 환경변수를 잘 활용하기. - 명확하지 않은 변수명
- 너무 축약형을 쓰면, 자신밖에 못알아본다. 팀웍을 위해서 이해하기 쉬운 변수로 만들기.
- 린트와 유닛 테스트
- Python 타입 체크 : mypy라이브러리 - 지속적 통합( Continuous Integration / CI )
- 지속적으로 퀄리티 컨트롤을 적용하는 프로세스를 실행하는 것
- 작은 단위의 작업, 빈번합 통합
- 모든 개발을 완료한 뒤에 퀄리티 컨트롤을 적용하는 고전적인 방법을 대체하는 방법으로서, SW의 질적 향상과 SW를 배포하는데 걸리는 시간을 줄이는데 초점이 맞추어져 있다.
- Github Actions
- 실습은 생략 (github으로 진행하였다)
'공부 > MLOps' 카테고리의 다른 글
MLops - 5.1 (TFDV) (0) | 2022.02.02 |
---|---|
MLOps - 5 (TFDV) (0) | 2022.01.23 |
MLOps - 3 (0) | 2022.01.03 |
MLOps - 2 (0) | 2021.12.12 |
MLOps - 1 (0) | 2021.12.07 |