목록전체 글 (36)
Ethan's Values
개발자로 대면면접을 처음봤는데, 처참했고 복기를 위해 질문받은 것들이나 내가 알지 못했던 것들 작성.1) Python에서 상속(Inheritance)개념 정리상속은 기존 클래스(부모 클래스)의 속성과 메서드를 물려받아 자식 클래스를 만들고, 공통 로직을 재사용하거나 기능을 확장하는 객체지향 개념이다. 자식 클래스는 필요 시 부모 메서드를 오버라이딩해서 동작을 재정의할 수 있고, super()로 부모 로직을 재사용할 수도 있다.실무에서는 공통 로깅/설정/검증 로직을 베이스 클래스에 모아두고, 각 기능별 구현만 자식 클래스에서 확장하는 형태로 자주 활용한다. 다만 상속 계층이 깊어지면 결합도가 커질 수 있어 조합(composition)과 함께 균형 있게 사용한다.class Animal: def __in..
VirtualBox NAT 환경에서 Kubernetes Master SSH 접속까지의 네트워크 개념 정리1. 배경Kubernetes를 로컬 PC에서 구축 실습을 위해VirtualBox로 master, worker VM을 구성했다.블로그(https://woo0doo.tistory.com/44)를 참고해 네트워크 설정과 Static IP까지 설정했지만,SSH 접속 과정에서 다음과 같은 혼란을 겪었다.VM IP로 직접 접속이 안 됨포트포워딩 설정은 되어 있는데 접속 방식이 헷갈림NAT, 브리지, 같은 망 개념이 명확하지 않음이 글은 왜 이런 문제가 발생했는지,그리고 NAT 환경에서 SSH 접속이 어떻게 동작하는지를네트워크 개념부터 정리한 기록이다.2. 실습 환경 구성전체 구조 [Windows PC] | [Vi..
airflow를 사용하여 데이터 삽입, 전처리, 모델링, 검증 까지의 일련의 과정을 코딩해둔 파일을 통해 스케쥴링만 하는 환경이 단순하고 정적일 수 있다. 모델링 시 학습 변수(input), Target 변수의 타입, 스케쥴링 설정 등 적절한 옵션을 통해 작업을 수행해야 할 때 Airflow의 기능 중 Argument를 사용해서 DAG를 실행할 수 있다. 실제 사용 화면DAG 파일 작성 시 아래 모듈을 통해 Airflow 웹 상에서의 DAG 실행 시 아래 Action을 클릭 아래와 같은 화면이 나타난다. 아래 화면은 DAG 파일 코딩 시 Custom하게 변경할 수 있다.아래 화면은 학습할 입력변수 input 과 Target 변수를 각 DB 테이블에서 불러와 key값으로 병합하여 학습된다.해석- inpu..
앞서 구현한 내용들을 기반으로 FastAPI를 사용하여 모델의 예측값을 받아오는 작업을 수행하겠습니다. 참고. https://mlops-for-mle.github.io/tutorial/docs/api-serving/model-api 1) Model API | ML Engineer를 위한 MLOps 📌 Iris 데이터를 입력받아 예측값을 반환하는 API 를 작성합니다. mlops-for-mle.github.io 1. Dockerfile 작성 python 버전은 3.8.18 입니다. app.py 파일에서 mlflow.sklearn.load_model 함수 실행 시 3.9 버전이면 오류가 나더라구요. 혹시나 3.9로 진행해보시고 오류나시면 버전을 바꿔 진행해보시는 것을 추천드립니다. 그리고 위의 블로그에서는 ..
시작 이제, 테이블에 저장되어 있는 데이터를 가지고 모델링하는 DAG를 생성해보겠습니다. 0. 환경세팅 1. 테이블에 데이터 삽입을 위한 DAG 2. 모델링 수행을 위한 스케쥴링 DAG 이전글 1. 2024.03.22 - [MLOps] - MLOps Engineering(4) - Airflow compose-yaml 파일로 개발환경구성및 Airflow 스케쥴링 DAG 생성 개요 2. 2024.03.22 - [MLOps] - MLOps Engineering(5) - docker-compose up 시 테이블 자동 생성 3. 2024.03.25 - [MLOps] - MLOps Engineering(6) - 데이터 삽입 DAG 생성 모델링 수행을 위한 스케쥴링 DAG 생성 1. 컨테이너 생성 1.1 airfl..
시작 큰 목록 중 이제 환경세팅이 끝났으니, 테이블에 데이터 삽입을 위한 DAG를 만들어서 실제로 데이터 삽입이 잘 되는지 확인해보는 시간을 가져봅시다. 0. 환경세팅 1. 테이블에 데이터 삽입을 위한 DAG 2. 모델링 수행을 위한 스케쥴링 DAG 이전글 혹시나 환경세팅이 안되어서 이전글이 필요하신 분들을 위해서 링크 남겨놓겠습니다. 순서대로 진행시켜주시면 됩니다. 2024.03.22 - [MLOps] - MLOps Engineering(4) - Airflow compose-yaml 파일로 개발환경구성및 Airflow 스케쥴링 DAG 생성 개요 MLOps Engineering(4) - Airflow compose-yaml 파일로 개발환경구성및 Airflow 스케쥴링 DAG 생성 개요 시작 MLOps E..
시작 큰 목록은 아래와 같이 진행됩니다. 아직 0.환경세팅 부분입니다. 이전 글과 이어집니다. 0. 환경세팅 1. 테이블에 데이터 삽입을 위한 DAG 2. 모델링 수행을 위한 스케쥴링 DAG 이전 글 https://hykethan.tistory.com/41 MLOps Engineering(4) - Airflow compose-yaml 파일로 개발환경구성및 Airflow 스케쥴링 DAG 생성 개요 시작 MLOps Engineering1,2에서 작성한 내용을 기반으로 다음의 내용을 Airflow로 스케쥴링 하는 작업을 수행했습니다. 순서는 아래와 같이 진행됩니다. 0. 환경세팅 1. 테이블에 데이터 삽입을 위한 DAG 2 hykethan.tistory.com 참고 깃헙 docs https://mlops-fo..
시작 MLOps Engineering1,2에서 작성한 내용을 기반으로 다음의 내용을 Airflow로 스케쥴링 하는 작업을 수행했습니다. 순서는 아래와 같이 진행됩니다. 0. 환경세팅 1. 테이블에 데이터 삽입을 위한 DAG 2. 모델링 수행을 위한 스케쥴링 DAG 참고 깃헙 docs https://mlops-for-mle.github.io/tutorial/docs/intro 00. Introduction | ML Engineer를 위한 MLOps Introduction mlops-for-mle.github.io 0. 환경 세팅 수행하는 내용은 개발환경에 아무것도 설치되어 있지 않은 상태, 깨끗한 상태에서 시작합니다. 수행 순서는 아래와 같습니다. - 개발 환경: GCP, Ubuntu 20.04 e2-me..