전체 글 8

[MLflow] MLflow 설치 및 주요기능 설명

이전에 tensorflow 로 기본 머신러닝에 대해서 공부해보면서 Tensorboard 를 이용해본 경험이 있으실 겁니다. Mlflow도 tensorboard와 같은 기능을 제공하는 도구입니다. ML flow 주요 기능 1. Tracking : 파라미터, 결과(metrics) 등을 logging하여 결과를 UI로 확인 가능 2. Projects : 아나콘다 혹은 도커 등을 이용해서 만든 모델의 환경을 재생성할 수 있도록 지원 3. Models : 모델을 도커,AWS,Apache에 배치할 수 있도록 지원 4. Model Registry : 모델 전체 사이클을 관리하기 위한 기능 ML flow 설치 # 작업할 디렉토리 이동 ex.DO_IT cd ~/DO_IT sudo apt install upgrade pi..

MLops/MLflow 2023.01.22

[DVC] Data Version Control | 데이터와 모델 버전관리

DVC, 왜 필요한가? - data science 프로젝트를 하면서 수많은 파일과 모델 그리고 데이터셋을 다룬적이 있을 것이다. - 이러한 파일들에 대해서 버전 관리를 도와주는 오픈소스 도구이다. - Git 에는 대용량 파일을 업로드할 수 없다. - DVC를 이용해서 dvc 파일을 Git에 올리면 된다. * DVC 에 대한 더 자세한 내용은 gitgub 링크 확인 바랍니다. https://github.com/iterative/dvc 1. DVC 및 Git 설치 * DVC를 이용하기 위해서는 Git도 함께 사용하게 됩니다. Git에 대한 기본적인 이해가 있다는 가정하에 아래 설명을 하겠습니다. sudo apt install upgrade pip # 깃 설치 sudo apt install git # dvc ..

MLops/DVC 2023.01.22

[Docker] 도커 기본 명령어 정리

1. Docker pull --> Docker pull [이미지명] : [테그명] docker pull ubuntu:22.04 ## pull 의 옵션 확인 docker pull --help ## 테그명 지정 안할 시 1) 과 2) 는 같은 명령어 입니다. 최신 버전을 불러옵니다. # 1) docker pull ubuntu # 2) docker pull ubuntu:latest docker pull 뒤에 불러올 이미지명과 특정 테그를 불러오는 명령어 입니다. 2. Docker images 현재 생성된 이미지들을 확인할 수 있는 명령어 입니다. docker images # or docker image ls 3. Docker build 이미지를 생성하기 위한 명령어 입니다. 생성한 dockerfile을 bui..

MLops/Docker 2023.01.14

[Docker] Docker란? [ 설명 및 설치 방법 - Linux ]

Docker 설명 Docker 는 애플리케이션을 빠르게 구축하고, 이에 대해서 테스트 및 베포할 수 있도록 해주는 소프트 플랫폼입니다. 컨테이너 (Container) 라는 표준화된 유닛으로 서비스를 패키징하고, 이 컨테이너 안에는 소프트웨어를 실행하는데 필요한 모든 환경설정을 포함하고 있습니다. 그래서 이러한 컨테이너를 활용하여 Docker 로 환경에 구애받지 않고, (예, 운영체제, 라이브러리 버전, 등 ) 소프트웨어를 사용할 수 있도록 할 수 있습니다. 사실 이러한 설명은 와 닿지 않을 수 있습니다. 아래 예시를 읽고 위에 Docker 그림을 한번 다시 보시길 바랍니다. 예를 들어, 우리는 다른나라로 한 해에 필요한 식자재를 수출하는 프로젝트를 맡았다고 생각해 봅시다. 이 프로젝트를 성공적으로 진행시..

MLops/Docker 2023.01.14

사칙연산 [문제번호 : 10869]

처음풀이 : A = int(input()) B = int(input()) print(A+B) print(A-B) print(A*B) print(A/B) print(A%B) 예제입력을 보면 "7 3" 입니다. 따라서 input() 함수를 두번 나눠서 실행하면 Runtime Error가 발행합니다. 추가적으로 4번째 출력물로 나머지를 구해야하는데, "/" 를 사용하게 되면 소수점이 포함되어 출력이 됩니다. ** '/' --> Float ** '//' --> int 따라서 결과적으로 아래과 같이 풀어야 합니다. A,B = map( int, input().split() ) print(A+B) print(A-B) print(A*B) print(A//B) print(A%B) 단계별로 풀어보기 > 입출력과 사칙연산 ..

Coding Test/백준 2022.12.24

LSTM으로 스팸메일 분류하기

이번에는 "딥러닝을 이용한 자연어 처리 입문"에 게재된 스팸메일 분류하기를 통해 자연어처리(NLP)의 과정을 정리해보고자 한다. 본 내용은 10장의 RNN을 이용한 텍스트 분류의 내용이다. 데이터의 샘플 수 확인하기 ( 데이터 크기 확인 ) 데이터 타입과 결측값 확인 데이터 레이블 분포 확인 train데이터와 test데이터 생성 토큰화 단어등장 빈도 확인 ( 빈도수가 적은 단어 제거 ) LSTM으로 스팸 메일 분류 필요 라이브러리 설치 import numpy as np import pandas as pd import matplotlib.pyplot as plt import urllib.request from sklearn.model_selection import train_..

Data-Science/NLP 2022.01.31

SKTBrain KoBERT 텐서플로우로 돌리기

1. 데이터 소개 COLUMN: Premise | Hypothesis | label LABEL : "Contradiction", "Entailment", "Neutral" train.csv : 28998 row, 3 col test.csv: 1666 row, 3col submission.csv : 1666, 1col (label) train = pd.read_csv('train_data.csv') test = pd.read_csv('test_data.csv') submit = pd.read_csv('submission.csv') 2. Validation 데이터 생성 ** train 데이터와 validatoin데이터를 생성할 때 레이블값의 불균형이 생기면 안되기 때문에 랜덤 샘플링으로 데이터셋 구분 imp..

Data-Science/NLP 2022.01.31

문장 관계 분류 모델, KoBERT로 돌려보다

0. 목차 Bert를 사용하는 이유 Bert 활용 분야 코드 (tensorflow) 1. BERT를 사용하는 이유 "Attention is all you need"이라는 논문이 나온 이후로 자연어처리(NLP)분야는 더욱 빠르게 발전하기 시작했다. 논문에서 Transformer라고 이름을 붙힌 이 모델은 Attention layer를 활용하여 인코더(Encoder)와 디코더(Decoder)를 만들어 번역모델로도 사용하곤 했다. 추후 이 모델의 인코더 혹은 디코더만을 활용하여, 인코더(Encoder)로 BERT와 같은 모델을 만들었고, 디코더(Decoder)로 GPT와 같은 모델을 만들었다. 각각의 장점으로 인코더(Encoder)는 문장의 문맥을 인식하는 데 유리하고, 디코더(Decoder)는 문장 생성에 ..

Data-Science/NLP 2022.01.31