카테고리 없음

SK Networks AI Camp플레이데이터 SK네트웍스 Family AI 캠프 11기 : th Week

snowFallW 2025. 4. 6. 23:06

Introduction

2025년 3월 31일 ~ 2025년 4월 4일 SKN Family AI 캠프를 수강한 내용을 바탕으로 작성하였습니다.

Y (한것)

이번 주는 두 번째 단위 프로젝트가 있었고, 학습한 내용은 다음과 같다.

  • 대만 음원 사이트 KKBOX의 고객 데이터를 활용한 이탈 예측 모델 프로젝트 진행
  • NLP 기초 개념 학습
  • 사이드 프로젝트 회의 및 작업 정의

W (배운것)

 팀 프로젝트: 고객 이탈 예측 모델

이번 프로젝트에서는 실제 데이터를 활용하여 고객 이탈 여부를 예측하는 모델을 만드는 작업을 진행했다. 강사님께서 주제를 미리 선정할 수 있는 여유를 주셔서 지난주 목요일에 미리 주제를 정할 수 있었고, 이를 바탕으로 팀원들과 데이터를 분할하여 전처리하는 방식으로 프로젝트를 진행했다. 하지만 데이터를 다루는 과정에서 몇 가지 아쉬운 점이 있었다.
가장 큰 문제는 데이터의 크기와 복잡성에 대한 막연한 부담감 때문에, 데이터 전처리에 소극적이었다는 점이다. 실제 로그 데이터라서 이상치가 없을 거라는 생각에 이상치 처리나 누락값에 대한 고려가 부족했고, 이로 인해 모델의 성능에도 부정적인 영향을 주었다.

모델 학습은 이진 분류 문제였기 때문에 로지스틱 회귀, 랜덤 포레스트 등 다양한 분류 모델을 테스트했고, 각자의 방식으로 하이퍼파라미터를 조정해보았다. 하지만 왜 이 모델을 선택했는지, 어떤 특징(feature)을 중심으로 학습시켜야 하는지에 대한 충분한 고민 없이 진행하다 보니, 결과적으로 모델 성능이 만족스럽지 못했다. 이번 프로젝트를 통해 데이터 전처리와 모델 선택, 특징 엔지니어링의 중요성을 몸소 느낄 수 있었다.

 

NLP 기초 학습

LLM(Large Language Model)을 만드는 것이 최종 목표이기 때문에, 이번 주에는 자연어처리(NLP)의 기초 개념을 학습했다.

  • 토큰화(Tokenization): 문장을 단어 또는 형태소 단위로 나누는 과정
  • 불용어(Stopwords) 제거: 분석에 필요 없는 단어 필터링
  • 형태소 분석: 단어의 품사와 의미 단위 파악
  • Bag of Words와 TF-IDF: 문장을 벡터화하는 기본 방법
  • Word2Vec, FastText 개념

 실습을 통해서 같은 문장이라도 전처리 방법에 따라 결과가 크게 달라질 수 있음을 알 수 있었고, 텍스트 데이터를 어떻게 수치화하고 모델 입력값으로 사용할 수 있는지에 대한 전반적인 감을 잡을 수 있었다.

사이드 프로젝트 회의 및 할일 정의

 부트캠프 시작 이후로 매주 진행해오고 있는 사이드 프로젝트 스터디도 꾸준히 해오고 있다. 프로젝트는 거의 마무리 단계에 접어들었지만, 예상보다 완료가 늦어진 점은 아쉽다. 부트캠프 내 프로젝트 일정과 각자의 개인 일정이 겹치면서 속도가 늦어진 면도 있지만, 꾸준히 회의를 통해 방향성을 점검하고 조율할 수 있었던 점은 긍정적으로 생각 된다. 또한 나는 프로젝트 리드 역할을 맡고 있어서, 팀을 이끌며 방향을 잡는 경험 자체를 배우는 과정이라고 생각하고 있다. 특히 매주 회의에서 각자의 작업을 리뷰하고 피드백을 주고받으며 내가 놓친 부분을 다시 돌아볼 수 있었다는 점도 큰 배움이었다.

T (해야할 것)

데이터 분석 및 모델링

  • 데이터 전처리의 중요성 재인식
    다음 프로젝트에서는 이상치나 누락값에 대한 처리부터 더 꼼꼼하게 점검할 예정이며, "실제 데이터라서 깨끗할 거다"라는 전제를 버리고 데이터의 질부터 확인하는 습관을 들여야 겠다. 또한 내가 실제 서비스를 만들때 이러한 로그의 중요성에 대해 다시 한번 더 생각하고 데이터 로깅에도 주의를 기울여야 겠다.
  • 모델 선택에 대한 논리 강화
    단순히 성능이 좋은 모델을 사용하는 것이 아니라, 데이터의 특성과 문제의 목적에 적합한 모델을 선택하고 그 이유를 한번 더 논의 해 보는 시간을 가진다.
  • 특징(feature) 선정과 해석에 집중
    앞으로는 모델 학습 전, 어떤 특징이 모델에 기여할 수 있는지 구체적으로 고민하고 도메인 지식을 반영한 feature engineering을 시도해볼 것이다.

NLP 학습

  • 기초 개념을 코드로 체화하기
    이번에 학습한 NLP 기초 개념들(토큰화, 불용어 제거, 형태소 분석, 벡터화 방식 등)을 직접 코드로 다시 구현해보며, 단순 이론이 아닌 '사용할 수 있는 기술'로 익힐 예정이다.

사이드 프로젝트

  • 일정 관리와 역할 분담 더 명확하게
    남은 기간 동안 프로젝트를 완성도 있게 마무리하기 위해 구체적인 일정과 마일스톤을 다시 설정하고, 각자 맡은 역할을 조금 더 세분화하여 책임감을 더 높일 수 있도록 해보겠다.
  • 프로젝트 운영 및 리딩 역량 강화
     내가 리드 역할을 맡은 만큼,  기존의 프로젝트 회의 후 정리 자료가 너무 부실했던 부분이 있어 매주 회의 전 후 정리 자료를 더 체계적으로 관리하고, 팀원들의 의견을 수렴하는 과정에서 더 능동적으로 소통할 계획이다.