Skip to content

Commit b02e08a

Browse files
authored
Merge pull request pseudolab#13 from pseudolab/pseudo-contents
main image updated. typo, additional modifications
2 parents fa227c2 + 6693449 commit b02e08a

File tree

3 files changed

+39
-28
lines changed

3 files changed

+39
-28
lines changed

_posts/2022-03-21-mlflow_튜토리얼.md

Lines changed: 39 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,32 @@
11
---
22
layout: post
3-
title: "[컨텐츠 연재] #01 간단하게 살펴보는 MLflow"
3+
title: "[컨텐츠 연재] #01 폭돌이와 살펴보는 MLflow 튜토리얼"
44
author: 김소연
55
categories: [ 컨텐츠 ]
6-
image: assets/images/pseudo-contents/intro2.png
6+
image: assets/images/pseudo-contents/intro3.png
77
---
88

99

10-
안녕하세요, 가짜연구소입니다.
10+
안녕하세요, 처음 뵙겠습니다. 저는 가짜연구소 커뮤니티 빌더 김소연입니다!⎝㋡⎠
11+
저는 앞으로 you익하고 잼2있는 지식과 그 지식을 배우고 공유하는 사람들에 대한 내용으로 글을 연재할 예정입니다 :)
12+
특별히, 가짜연구소 내에서 정말 많은 지식과 경험이 공유되고 있는데요! 정말 몸과 시간만 허락한다면 여러 스터디와 크루를 하고 싶을 정도로
13+
재미있는 주제와 열정있는 사람들이 많아서..후후..이런 부분을 어떻게 유익하고 재미있게 녹여내볼지 고민이긴합니다.
14+
기초 딥러닝, 컴퓨터 비전, 자연어처리 외에도 MLOps, GNN, XAI 그리고 캐글 대회와 관련된 내용으로 컨텐츠를 생각하고 있으니 앞으로 `많은 관심!,뜨거운 관심!,꾸준한 관심!` 부탁드리며
15+
혹시 다뤄주면 좋겠다!라는 컨텐츠가 있다면 언제든 저에게 알려주세요 :) 그럼 두구두구 이제 시작해보겠습니다!
1116

12-
가짜연구소는 **machine learning 연구를 중심으로 모인 비영리 커뮤니티**입니다.
13-
어느덧 3기가 마무리되고 4기 모집까지 성공적으로 마무리되었는데요!
14-
가짜연구소 안에서 다양한 스터디와 크루가 만든 프로젝트, 자유로운 질의응답이 이루어지고 있는만큼 엄청난 양의 지식이 공유되었겠죠~?
15-
가짜연구소에서 지향하는 **공유, 동기부여, 함께하는 즐거움**의 가치 실현을 위해 그동안 내부적으로 축적된 AI 관련된 지식을 컨텐츠형으로 공유하고, 확장하고자 해요.
16-
기초 딥러닝, 컴퓨터 비전, 자연어처리 외에도 MLOps, GNN, XAI 그리고 캐글 대회와 관련된 내용을 컨텐츠로 연재할 예정이니 `많은 관심!,뜨거운 관심!,꾸준한 관심!` 부탁드리겠습니다.
17-
그럼, 이제 이번 컨텐츠로 *흘러들어*가볼까요~~?
1817

1918
<br/>
2019

2120
![intro](https://user-images.githubusercontent.com/40655873/159262760-21ce9bbf-7186-4735-8176-0f47545b5b39.png)
2221

2322
<br/>
2423

24+
시작하기에 앞서 가짜연구소는 **machine learning 연구를 중심으로 모인 비영리 커뮤니티**입니다.
25+
어느덧 3기가 마무리되고 4기 모집까지 성공적으로 마무리되었는데요!
26+
가짜연구소 안에서는 다양한 스터디와 크루가 만든 프로젝트 그리고 자유로운 질의응답이 이루어지고 있는만큼 엄청난 양의 지식이 공유되었겠죠~?
27+
가짜연구소에서 지향하는 **공유, 동기부여, 함께하는 즐거움**의 가치 실현을 위해 그동안 내부적으로 축적된 AI 관련된 지식을 컨텐츠형으로 공유하고, 확장하고자 해요.
28+
여러가지 주제들 속에서도 그 첫번째 타자는 누구일까요!!! 그럼 이제 컨텐츠로 *흘러들어*가볼까요~~?
29+
2530
### Contents
2631
* [왜 필요하고, 중요하죠?](#왜-필요하고-중요하죠)
2732
* [MLflow 탄생 배경: MLOps](#MLOps가-무엇인가요)
@@ -81,7 +86,7 @@ MLOps는 머신러닝이 적용된 기능을 서비스에 적용하기 위해
8186

8287
* MLlow tracking : 파라미터와 결과를 비교하기 위해 실험 결과 저장
8388
* MLlow projects: 머신러닝 코드를 재사용하고 재현 가능한 형태로 포장. 포장된 형태를 다른 협업자에게 공유 및 프로덕션에 반영
84-
* MLlow model registry : mlflow model에 사용되는 전체적 라이프 사이클에 관여하는 모델 저장소, API 및 UI 기능 관리
89+
* MLlow model registry : MLflow model에 사용되는 전체적 라이프 사이클에 관여하는 모델 저장소, API 및 UI 기능 관리
8590
* MLlow models: 다양한 ML 라이브러리에서 모델을 관리하고 배포, serving, 추론
8691

8792
더 자세한 사항은 [MLlow](https://www.mlflow.org/docs/latest/concepts.html) 공식 사이트에서 확인해주세요 :)
@@ -240,7 +245,11 @@ python mlflow_tracking.py
240245

241246
아마 이쯤되면 튜토리얼을 진행하신 정훈님에 대한 생각도 조금 궁금해지셨을 것 같은데요!
242247
본격적인 인터뷰에 앞서 튜토리얼에 신청해주신 분들은 왜 MLOps를 배우고자 하는 니즈가 있었을까요?
243-
우선 튜토리얼은 온라인으로 진행, 선착순으로 인원을 받아 총 3회 진행됐고, 참여자는 총 63명이었어요.
248+
우선 튜토리얼은 온라인으로 진행, **선착순으로 인원을 받아 총 3회 진행됐고, 참여자는 총 63명**이었어요.
249+
250+
![posts](https://user-images.githubusercontent.com/40655873/159950882-1bd8eebf-1247-4f53-a326-fe06e7995888.png)
251+
252+
244253
소수의 인원을 제외하고는 MLOps 관련 경험이 없으셨지만 대부분의 인원이 왜 배우고 싶은가에 대한 분명한 동기가 있었어요.
245254
요약하자면 **효율적인 머신러닝 파이프라인 구축과 자동화** 그리고 **실제 서비스 적용 및 시스템 확장에 필요성**이 가장 큰 부분이었어요.
246255
그런만큼 본 튜토리얼에서 MLOps의 기본적 개념, 전체적인 생태계와 흐름과 현업 실제 활용 사례에 대해 듣고 싶은 기대가 있었던걸로 응답해주셨어요.
@@ -258,11 +267,11 @@ MLOps에 대한 관심도가 굉장히 높다는 것을 직접 느낄 수 있었
258267
대학원을 졸업하고 여러 기업 중 톡집사 팀을 선택한 이유는 **자연어 모델을 실서비스에 적용하고 있었기 때문인데요.**
259268
대학원 재학중에도 많은 논문을 작성하고 다양한 연구를 했지만, 제가 만든 모델이 실제 활용되지 못하는 것이 늘 아쉬웠더만큼
260269
지금은 **사내에서 제가 만든 모델이 서비스에 적용되는 것을 보며 재미있게 개발하고 있습니다.**
270+
아, 폭돌이는 제가 가장 좋아하는 최애 아이디입니다.*(웃음+1)*
261271

272+
### 오호.. 모델러로서 어떻게 그리고 왜 MLOps, MLflow의 필요성을 느끼게 됐죠?
262273

263-
### 오호.. 모델러로서 어떻게 그리고 왜 MLOps, mlflow의 필요성을 느끼게 됐죠?
264-
265-
MLOps를 처음 접하게 된 것은 호기심과 함께 그 당시 MLOps가 **** 해보여 공부를 시작하게 되었습니다.*(웃음)*
274+
MLOps를 처음 접하게 된 것은 호기심과 함께 그 당시 MLOps가 **** 해보여 공부를 시작하게 되었습니다.*(웃음+2)*
266275
20년도쯤에 처음 용어를 듣고 관련자료를 찾아보기 시작한 것 같네요. 그 때는, 이걸 어느곳에 적용되는지 왜 적용해야하는지 감이 오지 않았습니다.
267276
오히려, 작년부터 사내에서 MLOps를 도입하고 있는데 적용하면서 필요성과 효과를 더 잘 느낀 것 같아요.
268277

@@ -276,30 +285,30 @@ MLOps 도입을 사내에서 적극적으로 하게 된 이유는 팀 상황 때
276285
그래서 MLOps를 도입해 제한적인 인원만 가용할 수 있는 상황에서 제가 원하는 결과를 얻고자 했습니다.
277286

278287
처음에는 다양한 Tracking 도구들 중 Weight&Bias(이하 wandb) 를 사용했었는데, wandb 라이센스 정책이 바뀌면서 유료화가 되었어요.
279-
그래서 오픈 소스이며 tracking 서버를 제가 운영할 수 있는 mlflow를 선택하게 되었습니다.이름도 좀 멋있다고 생각했어요.*(웃음2)*
288+
그래서 오픈 소스이며 tracking 서버를 제가 운영할 수 있는 MLflow를 선택하게 되었습니다.이름도 좀 멋있다고 생각했어요.*(웃음+3)*
280289
저희는 사내망이 분리되어 있기 때문에 외부 서비스에 접속하는데 까다로운 보안 절차가 필요한데요.
281-
현재는 mlflow의 트랙킹 서버를 사내망에서 작동중이고 해당 서버에서 모든 프로젝트의 실험 기록들을 저장하고 있습니다.
290+
현재는 MLflow의 트랙킹 서버를 사내망에서 작동중이고 해당 서버에서 모든 프로젝트의 실험 기록들을 저장하고 있습니다.
282291

283292

284293
### 오 흥미로워요! 듣고 있으면 되게 바쁘실 것 같은데.. 이러한 튜토리얼을 진행하게 된 배경은 무엇인가요?
285294
사실 처음에는 가짜연구소 내에서 MLOps를 사용하시는 분들과 Meet up 행사를 주최하려고 했습니다.
286295
MLOps를 공부하면 공부할수록 어떤 툴을 사용해야하는지, 어떻게 파이프라인을 구성하는지에 대한 컨벤션이 정해져 있지 않다고 느껴졌거든요.
287296
각자 사용하는 방법이 다르기 때문에 서로 의견을 나누고 왜 그렇게 구성했는지 의견을 나누고 싶었습니다.
288297
그런데 막상 MLOps를 사용하는 분들이 많지 않은 것 같더라구요.
289-
그래서 그 대신 튜토리얼을 운영하며 사람들이 MLOps를 왜 필요로 하는지 알아보자란 생각으로 이어진 것 같아요.
290-
또 평소부터 교육이나 경험을 공유하는 것에 관심이 많아서 간단한 튜토리얼을 진행하게 되었습니다.
298+
그래서 그 대신 **튜토리얼을 운영하며 사람들이 MLOps를 왜 필요로 하는지 알아보자란 생각으로 이어진 것 같아요.**
299+
또 평소부터 **교육이나 경험을 공유하는 것에 관심이 많아서** 간단한 튜토리얼을 진행하게 되었습니다.
291300

292301
### 튜토리얼을 진행하시면서 그럼 어떤점을 느끼셨어요?
293302
생각보다 많은 분들이 MLOps에 관심을 가지고 있으며 필요로한다는 것을 알게되었습니다.
294-
인상적이었던 것은 튜토리얼에 참여하신 분들 중 몇몇 분이 사내 Tracking을 mlflow로 하게되었다고 말씀해주셔서 뿌듯했던 기억이 있습니다.
303+
인상적이었던 것은 **튜토리얼에 참여하신 분들 중 몇몇 분이 사내 Tracking을 MLflow로 하게되었다고 말씀해주셔서 뿌듯했던 기억이 있습니다.**
295304
아쉬웠던점은 원래 제 개인 서버에서 모두 동일한 환경으로 실습을 진행하려 했는데 그 부분이 잘 안된어 아쉬운 것 같아요.
296305
어떤분은 윈도우에서, 어떤 분은 리눅스에서 서로 환경이 다르다보니 실습에 많은 어려움을 겪었던 기억이 있네요. 온라인 상황이어서 더 그랬던 것 같기도 하고요.
297306
아마 다음 튜토리얼 부터는 제 서버에 접속해 모두 같이 실습을 진행할 예정입니다.
298307

299308
### 오, 다음에는 어떤 실습을 진행할 예정이신가요?
300309
추후에는 BentoML과 Docker 튜토리얼을 진행할 예정입니다.
301-
사내에서 mlflow, BentoML, Docker를 함께 사용해 배포 파이프라인을 구성했는데요.
302-
이번에 Tracking을 담당하는 mlflow에 대해 알아보았으니 BentoML을 통해 패키징하고 API 서버를 띄우는 방법을 알아보고 싶네요.
310+
사내에서 MLflow, BentoML, Docker를 함께 사용해 배포 파이프라인을 구성했는데요.
311+
이번에 Tracking을 담당하는 MLflow에 대해 알아보았으니 다음에는 **BentoML을 통해 패키징하고 API 서버를 띄우는 방법을 다뤄보고 싶네요.**
303312

304313
<br/>
305314

@@ -310,13 +319,15 @@ MLOps를 공부하면 공부할수록 어떤 툴을 사용해야하는지, 어
310319
# 글을 마무리하며
311320
이번 글에서는 MLOps와 MLflow 대한 간단한 설명, 가짜연구소에서 진행한 간단한 MLflow 실습 내용을 바탕으로 기본적인 기능 사용법 그리고
312321
튜토리얼을 진행한 이정훈 빌더님의 인터뷰 내용을 다루었는데요.
313-
MLflow 간단한 기능을 알아보았지만, 분명히 중간중간 궁금한 것들이 많았을 것이라 생각해요.
314-
아마 여러분들이 필요로 하는 많은 기능들이 이미 제공되어 있을테니 [공식 홈페이지](https://www.mlflow.org/docs/latest/concepts.html)
315-
참고하셔서 활용해보시길 추천드립니다. 아, 물론 유용한 기능을 가짜연구소에 들어오셔서 공유해주시면 더더욱 좋구요 ^~^!
316-
또한 MLOps에 대해 관심있으신 분들은 정훈님이 다음에 진행할 튜토리얼도 눈여겨봐주세요!
317-
318-
끝으로 저도 직접 찾아보고,따라가며 작성한 글인만큼 수정이 필요한 부분에 대해 연락주시면 감사하겠습니다 :)
319-
그럼 이번 컨텐츠는 이렇게 마무리하고 다음 컨텐츠로 돌아오도록 할게요!
322+
저는 실험의 효율성 측면에서 MLOps에 대해 알아가고 싶었는데 정훈님의 실제 이야기를 듣고 있으니 구체적으로
323+
현업에서는 어떤 어려움이 있고, 어떻게 개선할 수 있는지 더 알아보고 고민해보고 싶다는 생각을 가지게 된 인터뷰였던 것 같습니다. ◡̈⋆* `(감사해요!)`
324+
튜토리얼에서 정훈님이 강조도 하셨지만, 만약 MLflow와 같은 툴이 필요한 상황이시라면 읽지만 마시고 직접 설치해서 웹 UI까지 띄어보는걸 꼭 해보시면 좋을 것 같아요!
325+
특히 이번 내용은 MLflow의 간단한 기능을 알아보았지만, 분명히 중간중간 궁금한 것들이나 알고 싶은 기능이 더 많았을 것 같습니다.
326+
MLflow 문서를 보면 많은 기능들이 이미 제공되어 있으니 [공식 홈페이지](https://www.mlflow.org/docs/latest/concepts.html)
327+
참고하셔서 활용해보시길 추천드릴게요. 아, 물론 유용한 기능을 가짜연구소에 들어오셔서 공유해주시면 더더욱 좋구요 ^~^!
328+
329+
끝으로, MLOps에 대해 관심있으신 분들은 `정훈님이 다음에 진행할 bentoml 튜토리얼`도 눈여겨봐주세요! MLflow도 명강이었던만큼 저는 꼬오옥 들어보고 새로운 연재글을 작성해보려고 합니다.
330+
그럼 이번 컨텐츠는 이렇게 마무리하고 다음 컨텐츠로 돌아오도록 할게요! 아참, 저도 배워가며 작성한 글인만큼 수정이 필요한 부분에 대해서는 언제든지 연락주시면 감사하겠습니다 :)
320331

321332
---
322333
가짜연구소 페이지 : https://pseudo-lab.com/
975 KB
Loading
121 KB
Loading

0 commit comments

Comments
 (0)