전체 글 142

ChatGPT를 활용한 DEVOPS&MLOPS 기초 실습 #0

2023 오픈소스 컨트리뷰터 DEVOPS&MLOPS에서 경험한 실습 도전과제 총 9개를 통해 배웠던 내용을 시리즈 형태로 블로그로 게시할 생각입니다. 도전과제 목차 0. 파이썬 개발 환경 구축 1. 파이썬 신조어 퀴즈 2. 파이썬 랜덤 업/다운 숫자 맞추기 게임 3. 파이썬 Flask 웹 앱 제작 4. 공부시간/ 점수 예측 회귀 머신러닝 모델 생성 5. 타이타닉 우주선 분류 모델 생성 6. Cat & Dogs 이미지 분류 딥 러닝 모델 생성 7. Git과 Github, 그리고 Github Action 8. Github Action으로 Devops Basic 구축 9. Github Action, MLaaS로 MLOPS 구축 총 10가지의 도전과제를 진행하면서, 제가 느낀 점, 만났던 트러블슈팅, 해결방법을..

2023 오픈소스 컨트리뷰터 지원 합격 후기 꿀팁

42서울 커뮤니티에서 오픈 소스 컨트리뷰터 홍보글이 올라와, 지원했는데 좋은 결과를 받을 수 있었다. 1지망에는 체험형 DEVOPS/MLOPS 2지망에는 참여형 backend.ai 총 2개의 지망을 받았고, 1지망에 합격할 수 있었다. 아쉬운 점은 체험형과 참여형 2가지가 있었는데, 내가 하고 싶었던 건 참여형이었다. 그런데 왜 내가 1지망에 체험형을 지원했을까? 제대로 읽지 않았기 떄문이다. 체험형, 참여형 뭐가 다른지 읽지 않고, 내가 관심있는 DEVOPS/MLOPS를 보고 그냥 지원했다. 하지만 지금까지 활동하면서 정말 많은 내용을 배울 수 있었다. 그래서 후회는 없다. 좋은 멘토를 만날 수 있었고, 나와 관심분야가 같은 멘티들을 만날 수 있었기 떄문이다. 지원 합격한 자기소개를 공개하도록 하겠다...

RMSE, NDCG 추천 시스템 평가 지표

RMSE 평가를 안할 수 없으니, 정량적인 평가를 해보자 Root Mean Square Error 평균 제곱근 편차 실제 값과 모델의 예측 값의 차이를 하나의 숫자로 나타낸다 예측 대상 값에 영향을 받는다 (Scale-dependent) 평점 등 prediction problem의 추천 성능을 평가할 때 사용하는 지표 제곱하여 더 큰 오차를 만든다. 제곱근으로 원래 scale의 숫자로 돌아감 RMSE는 낮을 수록 추천 알고리즘이 성능이 좋다고 평가 가능 성능이 좋다고 해서 꼭 좋은 추천은 아니다. 잔차의 제곱을 산술평균한 값의 제곱근 = 표준편차 = RMSE 이러한 극단적인 예가 있기 때문에 RMSE가 작다고 무조건 좋은 건 아니다. NDCG Normalized Discounted Cumulative G..

추천시스템(RS) 2022.07.27

추천 시스템 종류와 한계

추천 알고리즘 컨텐츠 기반 추천 시스템 - 사용자가 과거에 좋아했던 아이템 파악, 그 아이템과 비슷한 아이템 추천 - 스파이더맨 4.5 -> 캡티마블 > 타이타닉 협업 필터링 - 비슷한 성향, 취향을 갖는 다른 유저가 좋아한 아이템을 현재 유저에게 추천 - 간단하면서 수준 높은 정확도를 나타낸다 - 스파이더맨 4.5준 2명의 유저 -> 유저 A가 과거 좋아했던 캡티 마블을 유저 B에 추천 하이브리드 추천 시스템 - 컨텐츠와 협업 필터링의 장 담점을 상호보완 - 협업 필터링은 새로운 아이템에 대한 추천 부족 - 컨텐츠 기법이 cold-start 문제에 도움을 줄 수 있다. 1. Context 기반 추천 - 문맥 인식 추천 2. 커뮤니티 기반 추천 - 커뮤니티 선호도를 바탕으로 추천 3. 지식 기반 추천 -..

추천시스템(RS) 2022.07.12

추천 시스템이란?

추천 시스템 - 사용자와 상품으로 구성된 시스템 - 특정 사용자가 좋아할 상품 추천 - 비슷할 상품을 좋아할 사용자를 추천 - 아이템이든 유저든 관심을 가질만한 정보를 추천 사용자가 정보를 수집하고 찾는 시간을 줄여준다. 검색 vs 추천 사용자와 상품 - 사용자와 아이템 사이의 관계를 분석하고 연관관계를 찾는다 - 해당 연관 관계 점수화 - 사용자의 정보와 아이템 정보 활용 사용자 프로필 - 사용자 구분 할 수 있는 정보 활용 수집방법 - 직접적인 방법 - 간접적인 방법 개인별 추천 또는 사용자 그룹별 추천 가능 아이템 프로필 - 플랫폼마다 정의하는 아이템 종류가 다르다 - 일반적으로 생각해볼 수 있는 추천 아이템 - 모든 것을 추천해주는 플랫폼은 현재 없다 아이템 프로필에 속하는정보 - 아이템ID, 아..

추천시스템(RS) 2022.07.12

CBF 기반 예측

아이템 유사도 기반 평점 예측 가정: 유사한 영화에는 유사한 평점을 부여할 것이다. 아이템간 유사도를 기준으로 평점에 가중치를 부여하여 평점을 예측한다. 컨텐츠 기반 유사도 측정 두 아이템간 유사도를 어떻게 정량화 할 것인가? CBF에서는 유사도를 정량화 하기 위해서 컨텐츠 자체가 가진 특성을 이용한다. 뉴스: 제목, 기사내용 영화: 장르, 감독, 출연자, 줄거리 상품: 카테고리, 가격, 상품 이미지, 상품 설명 집합 유사도 벡터 공간으로 확대한다. - 원소에 해당하는 차원을 상정하면 집합은 쉡게 벡터로 표현 가능하다 - 이진 벡터는 집합을 표현할 수 있다 - 각 원소의 가중치를 달리 적용하는 것이 수월해진다. 유사도 계산을 위한 기초 수학 지식 Vector Space Model Vector Distan..

추천시스템(RS) 2022.07.11

MovieLens Dataset

- 작은 데이터, 큰 데이터로 나눠져 있음 데이터 Record 영화 평점 예측 - 개인화 추천 - Explicit 명확한 데이터 - CBF, CF - 평점 예측 모델 Pandas 라이브러리를 활용한 데이터 분석 - datetime - apply - groupby - merge - sample - drop - agg - display # 초로 나와있는 col을 년월일초로 변경 하여 date라는 df로 만들어줌 df['date'] = pd.to_datetime(df['timestamp'].astype(int), unit='s') # year라는 col를 생성한다 date에서 year만 가져온다. df['year'] = df['date'].apply(lambda x: x.year) # year로 묶어서 cou..

추천시스템(RS) 2022.07.11

추천시스템 고려사항

고려사항 예측 vs 발견 추천 만족도 추천 신뢰도, 설명도 - 추천 결과에 대해 사용자가 신뢰 할 수 있어야 함 - 추천 결과가 어떻게 생성 됐는지 설명 제공, 근거 제공 UI, UX 도 중요함 - 다양한 니즈 충족 - 넷플릭스의 많은 변화 시스템 성능 - 많은 사람들에게 높은 정확도 - 얼마나 짧은 시간 - 알고리즘 특성에 따라서 스케일 업, 스케일 아웃 - 얼마나 새로운 피드백을 받아서 추천 시스템 보완 - 딥러닝은 학습속도가 느려 높은 Recency 힘듬 Recsys - 추천 시스템은 단지 예측하는 것 이상이다. 실제 삶의 추천시스템을 디자인하는것에 대한 issue들? - Feature 엔지니어링 - 학습 데이터셋 - Metrics - A/B 테스트 - 시스템 scalability

추천시스템(RS) 2022.07.11

추천시스템 성능 평가

성능평가 단계 1. 모델에 대한 성능 평가 단계 - 과거의 정보를 가지고 미래를 예측 - 여러번 시간에 흐름에 따라 평가 해야 함 2. 심사위원 평가 - 정성적 평가 - 내부 인력, 외부인력 추천 결과의 품질을 평가 3. 온라인 성능 평가 A/B 테스트 - 서비스의 KPI 지표로 평가 - 시스템이 로그를 수집할 수 있도록 설계해아함 - 어떤 모델, 어떤 알고리즘인지 기록해야 함 Rating Prediction 성능평가 - RMSE - 큰 오차에는 큰 페널티 - 작은 오차는 작은 페널티 - MAE - 오차 만큼의 페널티 TOP-K 추천 성능 평가 - Precision & Recall 혼동 행렬 Precision@K & Recall@K 추천 결과의 개수가 K개일 때 Precision & Recall "사용자..

추천시스템(RS) 2022.07.11

추천시스템 분류

추천시스템의 분류 어떤 요건에 맞춰 어떤 데이터를 활용하여 어떤 모델을 이용하여 어떤 방식으로 계량 할 것인가? 요건 - 베스트 셀러 - 관련 상품 - 맞춤 추천 - 특정 상황 베스트 추천 관련 추천 개인화 추천 Feedback 데이터에 따른 분류 Explicit Feedback - 사용자의 아이템에 대한 명시적 선호 정보를 가진 이력 - 1점~10점 - 만족/보통/불만족 - 선호 데이터 수집의 어려움 Implicit Feedback - 사용자의 아이템에 대한 암시적 선호 정보를 가진 이력 - 조회/ 구매/ 시청/ 머무른 시간 - 사용자의 아이템에 대한 선호도를 명확히 알기 힘들다. Explicit과 Implicit 는 서로 변환 가능하다. 행위 이력으로 Rating 추정 - 끝까지 본 영화는 높은 평점..

추천시스템(RS) 2022.07.11