분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
[public: 0.90931] 사용 기술스택: Pytorch, TF-IDF 텍스트 분류
📌 코드 개요
이 코드는 데이콘 ‘악성 URL 분류 AI 알고리즘 개발’ 해커톤에 사용된 PyTorch 기반 MLP 모델을 구현한 Jupyter Notebook입니다. 주요 특징은 다음과 같습니다.
🚀 주요 내용
1. 데이터 로드 및 전처리
• train.csv, test.csv 파일을 로드하여 학습/테스트 데이터를 구성합니다.
• TF-IDF 벡터화를 적용하여 텍스트 데이터를 수치화합니다.
2. MLP 모델 설계
• PyTorch 기반의 다층 퍼셉트론(MLP) 모델을 사용하여 URL의 악성 여부를 분류합니다.
• 은닉층을 깊게 설계하고(512 → 1024 노드 확장), 활성화 함수로 ReLU를 사용합니다.
• Dropout을 0.3 → 0.5로 조정하여 과적합을 방지합니다.
3. 학습 및 검증
• EarlyStopping 기법을 직접 구현하여 최적의 모델을 저장합니다.
• Adam 옵티마이저와 CrossEntropyLoss를 활용하여 학습합니다.
• 학습 중간에 ROC-AUC 점수를 모니터링하여 성능을 평가합니다.
4. 예측 및 제출
• 학습된 모델을 기반으로 test.csv 데이터의 악성 여부를 예측합니다.
• 예측 결과를 데이콘 제출 형식으로 저장합니다.
🛠 사용 환경
• 기기: M1 MacBook Air (16GB RAM)
• 라이브러리: PyTorch, Scikit-learn, Pandas, Numpy 등
• 모델 성능: ROC-AUC 0.90931 (데이콘 퍼블릭 18등(25. 2. 9(일) 19:42기준, 프라이빗 1등 기록)
꽤 오래걸렸던 거 같은데 따로 재보지 않아서 알 수 없네요;; 도움이 되지 못해 죄송합니다.
코드 돌아가는 동안 메모리 용량이 부족하진 않았나요?
여러번 수정 거쳐서 메모리 문제 해결하였습니다.. TF-IDF 파라미터 조정하는 것 부터 배치 사이즈 등 여러가지 파라미터들을 조정하면서 실행과 오류 반복하면서 나온 결과입니다. M1 맥북에어에(메모리 16G)서 로컬로 하는 한계 때문에 그랬습니다.
데이콘(주) | 대표 김국진 | 699-81-01021
통신판매업 신고번호: 제 2021-서울영등포-1704호
직업정보제공사업 신고번호: J1204020250004
서울특별시 영등포구 은행로 3 익스콘벤처타워 901호
이메일 dacon@dacon.io |
전화번호: 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved
학습하는데 몇시간 걸렸나요?