본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다. (https://fastcampus.info/4oKQD6b)
학습 후기
오늘은 Chapter Part.2 머신러닝 상품화 내용에서 머신러닝 상품화를 위하여 환경관리 도구를 직접 다루는 실습을 진행하였습니다. 환경관리 도구가 중요한 이유는 내 환경에서는 개발이 가능하지만? 상대 컴퓨터에서 개발이 안되는 이러한 문제를 해결하기 위해서 환경 관리 도구를 다루는 법을 배웠고, 이때 활용되는 2가지의 핵심 도구를 사용해 보았습니다.
Conda(Anaconda/MiniConda)같은 경우는 이제 conda create로 프로젝트 별로 독립된 환경을 만들고, conda activate로 들어가보는 실습을 진행했고, 인터프리터를 추가하거나, 버전을 명시해서 생성을 해보았습니다. 또한 이제 내 환경의 리스트를 파일로 추출하여 다른 사람이 똑같은 환경을 복제해서 사용하는 재현성을 확인해보았습니다.
또다른 도구는 Virtualenv를 사용해 보았습니다. Conda와는 다른점은, Conda처럼 무겁지 않고 파이썬 패키지 관리에만 집중할떄 사용하는 가벼운 도구입니다. 또한 이때 가상환경을 활성화한 상태에서 패키지 설치를 수행하면, 내 컴퓨터의 다른 시스템을 건들지 않고 해당 환경 내에서만 패키기자 설치됨을 확인 했습니다. 이때 가장 신기했던 점은, 환경도 코드처럼 변경하고, 관리할 수 있다. 였습니다.
일반적으로, 가상환경도 우리가 막 필요한게 설치하고, 시스템에 파이썬이 아무리 깔려 있어도 내가 만든 가상환경 안에 없으면 없는것이구나. 라고 깨달았습니다. 이것이 진짜 철저한 환경 관리가 개발에서 매우 중요함을 깨달았습니다. 또한 내가 맞춰놓은 환경들도 파일 하나로 만들어 놓으면? 동일한 환경을 가지면서 구축할수 있다는 것이 신기했고, 이렇게 서로 표준화된 협업을 할 수 있구나. 라고 생각했습니다. 이제 실재로 개발할때 이러한 환경 관리 도구를 사용해서 안정성, 재현성을 추구해야겠다고 다짐했습니다.



