목록AI/MLOps (4)
꺼내먹는지식 준
사전 product Serving에서 확인했던 Voila의 장점은 노트북에서 프로토 타입을 쉽게 만들 수 있다는 것이다. 그러나 레이아웃을 잡기 어려워서 웹 개발을 해야 할 수도 있다. 그러나 현재 이 글의 대상자들은 데이터 분석가 혹은 사이언티스트 인데, 이들이 밑단부터 웹 개발을 할 필요는 없다. 즉 이로 인해 자바 스크립트, React, Vue 등을 사용해야 하는데, 이는 시간대비 효율적이지 않다. 처음부터 HTML/ 자바스크립트 + Flask/Fast API가 아닌, 기존 코드를 조금만 수정해서 웹 서비스를 만드는 것이 목표 데이터 분석가 혹은 사이언티스트가 웹 서비스를 작업하는 Flow를 살펴보자. 시나리오 1 시나리오 2 시나리오 1 의 경우 익숙해지는데 시간이 오래 걸린다. 시나리오 2의 경..
Notebook 베이스 프로토타입 Jupyter Notebook에서 함수를 작성한 후, 예측 함수 실행해보며 성능 확인 혼자 확인 할 때는 위와 같이 진행해도 괜찮으나, 동료들과 함께 보면서 이야기 할 때는? "Module Not Found Error..." 라이브러리의 의존성으로 테스트를 위해 추가 환경 설정이 필요하다. (requirements.txt를 명시할 수도 있지만.. ) $\rightarrow$ 개발을 잘 아는 분들에게는 가상환경 세팅 요청할 수 있지만.. 모르는 분들은? nbconvert를 사용해 HTML으로 추출할 수도 있음 인터렉티브하게 조작하기 어려우며, 이미지 용량 따라 느려질 수도 있음 이에 따라 모델 개발 후, 사람 들과 테스트할 수 있는 프로토타입을 먼저 만들어보자. 모델이 어..
용어정리 Serving 서비스화 production 환경에 모델을 사용할 수 있도록 베포 머신러닝 모델을 개발, 현실 세계에서 사용할 수 있도록 하는 행위 (웹, 앱) Inference 모델에 데이터가 제공되어 예측하는 경우, 사용하는 관점 Serving - Inference 가 혼재되어 사용하는 경우도 존재 (ex. Batch Serving/ Batch Inference) Online Serving 웹 서버 요청 받으면 요청 내용을 보내준다는 개념은 어렵지 않으나, HTML 문서나 오브젝트를 전달해준다는 뜻이 좀 모호하다. 아래의 예시들을 보자. 변경도 가능 , 대기 취소 (변경 응답, 취소 응답 ) 정리하자면 client 의 다양한 요청을 웹 서버가 잘 처리해서 응답으로 제공하는 것이 바로 onlin..
MLOps 개론 모델 개발 과정은 다음의 순서를 따른다. 1) 해당 과정은 자신의 컴퓨터, 서버 인스턴스에서 주로 실행 2) 고정된 데이터를 사용해 학습 3) 학습된 모델을 앱, 웹 서비스에서 사용할 수 있도록 만드는 과정 필수 3) 번 과정을 Real World, Production 환경에 모델을 배포한다 표현 모델이 배포된 후, Deploy 과정이 생성된다. 이 경우 발생 문제 1) 모델의 결과값이 이상한 경우가 존재 원인 파악, input 데이터가 예측 못한 형태인 경우, Research 와는 다르게 outlier 처리 불가능 2) 모델의 성능이 계속 변경 정형 데이터에서는 정확히 알 수 있으나, 비정형 데이터(이미지)는 알기 어려울 수 있다. 예측 값과 실제 레이블을 알아야 한다. 3) 새로운 모..