전체 글

· MLOps
Ubuntu 20.04가 설치되어 있는 데스크탑에 Kubeflow 1.4 설치하는 방법을 정리하려고 해요. docker, minikube, kubectl, kustomize는 설치방법이 정말 많이 나와있으니 적절히 설치 후에 과정을 진행해주세요. 제 PC에 설치된 스펙은 다음과 같습니다. Docker: 20.10.10 minikube: 1.21.0 kubectl: 1.21.7 kustomize: 3.2.0 (4.0 이상은 kubeflow 설치에 지원안된다고 공식 문서에 나와잇습니다) 목차 Minikube로 Kubernetes Cluster 구성하기 Kubeflow 1.4 설치 1. Minikube로 Kubernetes Cluster 구성하기 Minikube가 설치되어 있다면 쿠버네티스 클러스터 만들기는 ..
· MLOps
조대협님의 블로그를 참고했습니다! 감사합니다. https://bcho.tistory.com/1383 구글에서 제공하는 통합 머신러닝 플랫폼인 Vertex AI를 이용해서 MNIST 데이터를 학습하고 모델을 배포하고 Endpoint를 생성해 서빙하는 것까지 실습해보겠습니다! 목차 train.py 파일 만들기 도커 컨테이너로 패키징하기 Vertex AI에 Train JOB 생성하기 배포 및 서빙 Test 1. train.py 파일 만들기 moist 데이터를 불러와서 간단한 Linear 모델을 만들고 모델 학습 및 저장하는 코드이다. 여기서 주의깊게 봐야할 곳은 마지막에 있는 model.save 부분이다. GCS의 bucket으로 경로가 되어있는 것을 볼 수 있다. GCS의 버킷의 region은 us-cent..
· MLOps
Colab에서 GOOGLEAPPLICATIONCREDENTIALS 환경변수 설정하기 https://stackoverflow.com/questions/55106556/how-to-refer-a-file-in-google-colab-when-working-with-python DefaultCredentialsError: Could not automatically determine credentials. Please set GOOGLE_APPLICATION_CREDENTIALS or explicitly create credentials and re-run the application. 다음과 같은 CredentialsError 에러를 로컬에서도 자주 봤었는데 zshrc 에 다음 한 줄 추가로 문제된 적이 없었..
· MLOps
간단한 코드로 Vertex AI에서 모델 학습 및 배포하는 과정을 다룬다. MNIST 데이터는 데이터를 불러오는 과정을 간단하게 load_data로 할 수 있기 때문에 아래와 같이 간단히 2개의 컴포넌트로 구성할 수 있다. Load data & Training Deploy with endpoint 아래의 과정을 따라오면 다음과 같은 파이프라인을 설계할 수 있다. 0. Import Library Library를 불러오는 부분이다. import kfp from kfp import dsl from kfp.v2 import compiler from kfp.v2.dsl import (Artifact, Dataset, Input, InputPath, Model, Output, OutputPath, Classific..
· ETC
M1에서 드디어 GPU 가속을 공식적으로 지원한다.. 다만 최신 macos인 Monterey로 설치해야 한다. 여기에서 확인할 수 있다. 들어가면 설치법도 나와있으니 거기를 확인하는 게 더 좋을 수 있다. 지금 현재 (2021.11.13) 시점에서 Tensorflow를 설치하고 Jupyter Lab 설치까지의 과정을 기록해두려 할 뿐이다. 1. Install Xcode Xcode가 설치되어 있어야 한다. 대게 설치되어 있으리라 생각된다. xcode-select --install 2. Install Miniforge 여기를 클릭하면 Miniforge3-MacOSX-arm64.sh 파일을 다운받을 수 있다. chmod +x ~/Downloads/Miniforge3-MacOSX-arm64.sh sh ~/Dow..
· ETC
해커랭크는 백준, 프로그래머스와 같이 코딩 문제를 풀 수 있는 온라인 사이트이다. 다만 해외 사이트이다. 한국어를 지원하고 있지 않아 모두 영어로 되어 있다 ㅠㅠ. 우연히 어떠한 알고리즘이 나를 해커랭크로 이끌었고 취준생인 나는 인증 탭에 눈이 갔다. RestAPI가 좀 재밌을 거 같아 먼저 클릭했다. 2문제 90분이 주어졌던거 같다! HTTP GET을 이용해 받은 response를 적절히 파싱하는 문제였다. 시간이 딱 떨어지게 다 풀었다. 쉬워서 그랬나? 재밌었다. 시간이 딱 떨어졌으면 쉬웠던건 아닌가..? 어쨌든 재밌었다!!! 한 20분 뒤에 메일로 아래의 인증서가 왔다! 뭔가 뿌듯해서 Python도 도전했다. RestAPI는 Intermediate로 되어 있었지만 Python은 Basic밖에 없었다..
· MLOps
기본적인 사용법만을 작성한 글입니다. 모델 성능 확인을 위해 MNIST 데이터로 학습하는 과정을 추가했습니다. 참고한 사이트 tensorflow-onnx 목차 tf2onnx 설치 MNIST 모델 학습 및 저장 ONNX로 모델 변환 ONNX로 추론하기 추론 정확도 비교 추론 속도 비교 조금 더 복잡한 모델 결론 tf2onnx 설치 pip install -U tf2onnx # 현재 나의 버전은 1.10.0 # 알고있겠지만 -U는 --upgrade와 같다. MNIST 모델 학습 및 저장 import tensorflow as tf # 데이터 불러오기 (train_x, train_y), (test_x, test_y) = tf.keras.datasets.mnist.load_data() train_x, test_x ..
· ETC
개인 프로젝트인 Vinyl 하다가 pytube라는 라이브러리를 사용하려는데 Quick Start에서 HTTP 404 Error에러가 발생했다. Issue 탭에 가보니 발생한지 오래 되지 않은 치명적인 오류라는 것을 알 수 있었고 라이브러리 저자인 @tfdahlin가 문제를 해결하다 자러가며 다른 사용자에게 문제 해결을 부탁한 것을 보았다. 슈퍼맨도 아닌데 누가 도움을 요청하니까 꼭 나서서 해결하고 싶은 욕망이 생겼다. 열심히 디버깅해서 문제가 되는 부분을 찾았고 구글링해서 문제를 해결했다. 흥분되는 마음에 급하게 PR을 보냈다. 그런데도 Issue 탭에서는 문제에 대한 이야기가 오고갔다. 그래서 아래와 같이 Issue 탭에 글을 남겼다. 얼마 지나지 않아 고맙다는 댓글들이 올라오는 것을 보고 정말 큰 보..
ssuwani
Oops!!