데싸 이모저모 23

AIFFELThon | '누설자속탐상기 장비 교정 시기 탐지' 프로젝트 회고

1. 아이펠톤이란AIFFELThon은 모두의 연구소에서 진행하는 기업 연계 프로젝트로,기업이 제시하는 실제 과업과 문제 해결을 팀 단위로 약 두 달간 수행하는 과정이다. 나는 제조업 대상 AI 솔루션을 주로 다루는 기업 과제에 참여해,4명의 팀원과 함께 누설자속탐상기 장비 교정 시기 탐지라는 주제를 진행하게 되었고,어쩌다 보니...팀장을 맡게 되었다. 2. 프로젝트 소개누설자속탐상기는 봉강의 표면 결함을 비파괴 검사 방식으로 잡아내는 장비다.검사 과정에서 봉강과 센서의 간격을 유지하기 위해 세라믹슈라는 부품이 쓰이는데, 이 부품이 닳으면 센서 감도가 변한다.변하는 센서 감도에 따라 센서가 결함을 잘 탐지하게 하기 위해 감도를 조정해 주는 장비 교정(Calibration)이 필요하다. 문제는 교정 시점을 ..

KDT 해커톤 | 예선 선발을 위한 기획 과정

우리 '일멍쉬멍'이 시작되기까지처음 모두의 연구소 디스코드에 KDT 해커톤 공지가 올라왔을 때는 그저 ‘이런 것도 있네~’ 하고 무심히 지나쳤다.사실 교육을 시작하기 전까지만 해도, 내가 이런 대회에 나가게 될 줄은 전혀 몰랐다.그러다 감사하게도 함께 데이터톤을 했던 팀원의 제안으로 “제가… 개발해 본 적도 없고 개발 관련 지식도 별로 없는데 괜찮으시겠나요?!”를 외치며 '어디 한번 해보자' 하고 참여하게 되었다. 주제: 함께하는 미래로 연결하는 디지털 혁신지정과제: 지역 균형 발전을 위한 디지털 사회서비스 개발 해커톤을 시작하면서 우리는 이 주제를 어떻게 풀어낼 수 있을지를 두고 여러 아이디어를 꺼내놓았다.재택근무 지원 플랫폼이나 지방 인프라 분석 툴, 정착 Q&A 챗봇 등 다양한 아이디어가 논의됐는..

LangchainThon | 식품의약품안전처 건강기능식품정보 수집 → 벡터 임베딩

데이터 선정Langchain 기반의 RAG 프로젝트 기획이 끝난 뒤, 팀에서는 “신뢰할 수 있는 건강기능식품 정보”를 어떻게 확보할 수 있을지 여러 방면으로 찾아보았다.그중에서 눈에 띈 것은 공공데이터포털과 식품의약품안전처(MFDS)에서 제공하는 OpenAPI였다.수많은 API 중에서 유용할 것 같은 데이터는 「식품의약품안전처_건강기능식품정보」였다.이 API는 단순한 제품명이나 업체명뿐 아니라,섭취 방법보관 방법주의 사항표준 성분주요 효과등 여러 가지 정보를 제공해, 추후 RAG 기반 영양제의 '성분' 추천에 적합하겠다는 생각이 들었다.그래서 데이터 수집 → 임베딩 → 검색 구조로 진행해 보기로 결정했다. 데이터 수집초반에 우리 팀은 '성분'에 필터링을 걸어 필요한 성분을 가지고 있는 영양제만 가져올 수..

LangchainThon | 맞춤형 영양제 추천 '영양제 Check!' 프로젝트 회고

이번 프로젝트는 ‘NLP 프로젝트 톺아보기’ 세션을 통해 LLM의 구조와 활용법을 익힌 뒤, 이를 직접 응용해 본 프로젝트였다.특히 그중에서도 이번 모듈에서 중점적으로 학습한 RAG(Retrieval-Augmented Generation) 기법 실습이었다.최근에는 LLM의 성능이 아주 향상되었지만, 여전히 LLM의 문제로 꼽을 수 있는 할루시네이션 현상을 극복하기 위하여문서 기반의 외부 지식을 검색하고 참조하여 더 신뢰도 높은 응답을 생성하는 방법이다.이번 프로젝트는 이 RAG 구조를 실생활 문제에 적용한 사례로,“나에게 맞는 영양제를 신뢰도있는 근거와 함께 추천해 주는 시스템”을 구축하고자 했다. 1. 프로젝트 개요"이 영양제가 내 몸에 맞을까? 나는 무슨 영양제를 먹어야 할까?"건강기능식품에 대한 정..

DATAThon | 프로젝트 회고

왜 벌써 회고를?이번 DATAThon 프로젝트에서는 팀원들과 함께 3일간(+⍺ 조금..?) 한 개의 데이터셋을 가지고 흡연 여부를 예측하는 모델을 만들었다.EDA와 파생 변수 생성은 내가 직접 진행한 부분이었고, 그 이후의 모델링 과정은 다른 팀원들이 중심이 되어 작업해 주셨다.Feature Engineering까지 작업한 후에는 발표자료를 만드는 작업을 했고, 최종 모델 선정과 결과는 팀원들이 도출해 주셨다. 그래서 모델링 과정은 생략한 채, 간단히 결과를 요약하고이 프로젝트를 통해 얻은 인사이트와 느낀 점들을 중심으로 회고를 남겨보려 한다. 최종 모델과 전략 요약우리 팀의 최종 모델은 LightGBM, XGBoost, CatBoost를 활용한 Soft Voting 앙상블 모델이었다.최종 ROC-AUC..

DATAThon | Feature Engineering: 파생 변수 만들기

EDA 이후, Feature Engineering 시도와 실험EDA를 통해 변수 간 상관관계를 확인한 결과, 단순히 기존 피처와 모델 파라미터 튜닝만으로는 성능을 훨씬 향상시키기 어렵다는 생각이 들었다.그래서 Kaggle Discussion과 다른 블로그들을 참고하며, 보다 의미 있는 파생 변수(feature)를 만들어보면 어떨까 고민했고우리 팀은 직접 여러 가지 시도를 해보았다. 1️⃣ Gender 변수 추가키(height)가 흡연 여부(smoking)와 왜 높은 상관관계를 보일까?의문을 가지던 중, Kaggle Discussion에서 외부 데이터셋을 활용하여 gender(성별)를 추가했다는 내용을 발견했다.이 내용을 보니 흡연자에 주로 남성의 비율이 높기 때문에 덩달아 키가 흡연 여부와 높은 상관관..

DATAThon | 데이터 이해와 탐색적 데이터 분석(EDA)

프로젝트의 첫날에는 본격적인 모델 튜닝에 앞서, 전체 데이터를 전반적으로 살펴보고 기초적인 탐색적 분석(EDA) 작업을 진행했다.이 과정을 통해 데이터의 구조와 특성을 파악하고, 이후 분석 방향을 설정하는 데에 초점을 맞췄다. 1️⃣ 결측치&이상치 확인 가장 먼저 학습 데이터와 테스트 데이터를 살펴본 결과, 다음과 같은 점들을 확인할 수 있었다. 학습 데이터와 테스트 데이터 모두 결측치 없음문자형 변수 없음 하지만 일부 이상치로 보이는 값들이 존재함예를 들어, 아래와 같은 변수들이 통계적으로 눈에 띄는 수치를 보였다.변수명평균값최대값비고eyesight(시력)1.x9.9일반적인 시력 범위를 벗어남LDL114.6 1860.0 serum creatinine0.899.9 AST25.52 778.0 ALT26...

DATAThon | 프로젝트의 시작

프로젝트 개요 및 배경모두의 연구소 데이터사이언티스트 과정에서는 총 3번의 팀 프로젝트가 진행된다.그중 첫 번째 팀 프로젝트를 마무리하며, 내가 맡았던 역할과 프로젝트의 전반적인 흐름을 간단히 정리해두고자 한다. 이번 DATAThon 프로젝트는 그동안 학습한 데이터 분석 및 머신러닝 기법을 바탕으로,팀별로 원하는 데이터를 선정하고 분석 주제를 설정한 뒤, 3일간 집중적으로 분석을 수행하고 4일 차에 발표를 진행하는 형식으로 구성되었다.(+ 자율 학습은 별도...!) 데이터 선정우리 팀은 Kaggle의 “Binary Prediction of Smoker Status using Bio-Signals” 데이터를 선택하였다. 이 데이터는 실제 Bio-Signals 데이터셋을 기반으로 딥러닝 모델을 통해 새롭게 ..

머신러닝 | 파이썬으로 따라가는 분류 실습 - 신용카드 사기 거래 탐지편

이번 실습에서는 캐글 신용카드 거래 데이터를 활용한 사기 거래 탐지 문제를 통해,분류 모델의 전처리부터 학습, 평가, 오버샘플링, 튜닝까지 전체 머신러닝 실습 흐름 경험을 공유해 보려고 한다. 실습은 아이펠 모두의연구소 Main Quest의 일환으로 ⌈파이썬 머신러닝 완벽 가이드⌋의 예제를 참고하여 진행되었다.📌 사용 데이터: 신용카드 사기 거래 탐지 데이터셋 (Class: 0=정상, 1=사기) 📌 사용 도구: scikit-learn, XGBoost, LightGBM, imbalanced-learn 등 📝 실습 구성 단계데이터 불러오기 및 탐색전처리: 이상치 제거 + 로그 변환학습 / 테스트 데이터 분리모델 학습 / 예측 / 평가SMOTE 오버샘플링 적용하이퍼파라미터 튜닝모델별 성능 비교1️⃣ 데..

머신러닝 | 파이썬으로 따라가는 분류 실습 기초편

이번 글에서는 사이킷런(Scikit-learn)이 제공하는 내장 데이터와 라이브러리를 활용해,기본적인 분류 모델의 흐름을 실습해 보는 과정을 정리하려고 한다.모든 모델을 다루지는 않지만, 대표적인 분류 알고리즘들을 이용해 데이터 불러오기 → 학습 → 예측 → 평가까지의 과정을 따라가 보며,머신러닝의 전체적인 흐름을 이해하는 데 도움이 되었으면 한다. 해당 실습 코드는 아이펠 모두의연구소의 [머신러닝 활용 다양한 데이터 다루기] 모듈 강의를 기반으로 작성되었습니다.* 코드의 동작과 의미는 함께 이해할 수 있도록 주석으로 설명을 덧붙였다. 1️⃣ 라이브러리 불러오기먼저 사용할 데이터 셋을 확인한다.사이킷런에서는 다양한 예제 데이터 셋을 내장 형태로 제공하고 있어, 실습에 바로 활용할 수 있다.# 사이킷런 ..