머신러닝 (16) 썸네일형 리스트형 정제(Cleaning) / 정규화(Normalization) 코퍼스에서 용도에 맞게 토큰을 분류하는 작업 = 토큰화(tokenization) 토큰화 작업 전, 후에는 텍스트 데이터를 용도에 맞게 정제(cleaning) 및 정규화(normalization)해야 함 정제 및 정규화의 목적은 다음과 같다. 정제(cleaning) : 갖고 있는 코퍼스로부터 노이즈 데이터를 제거한다. 정규화(normalization) : 표현 방법이 다른 단어들을 통합시켜서 같은 단어로 만들어준다. 정제 작업은 토큰화 작업 전후에 방해가 되는 부분을 배제시키기 위해 지속적으로 이루어 지기도 함 1. 규칙에 기반한 표기가 다른 단어들의 통합 필요에 따라 정의할 수 있는 정규화 규칙의 예로서 같은 의미를 갖고 있음에도, 표기가 다른 단어들을 하나의 단어로 정규화하는 방법이 있다. 가령, US.. 텍스트 전처리 전처리 파이프라인 가장 재미없고(?) 반복적인 끝이 없는 작업 하지만 가장 중요 - 어쩌면 모델링만큼 데이터가 중요한 시대 - 중요한 데이터를 어떻게 처리해야 할까? SOTA* 알고리즘은 공개되어 있다. NLP Project Workflow -e.g. Task : 고객 상품 리뷰, 평점 데이터를 수집해서 감성 분석 모델을 만들어 볼까 1. 문제정의 -단계를 나누고 simplify, x와 y의 정의 2. 데이터수집 - 문제 정의에 따른 수집, 필요에 따라 레이블링 3. 데이터 전처리 및 분석 - 형태를 가공, 필요에 따라 EDA 수행 4. 알고리즘 적용 - 가설을 세우고 구현 / 적용 5. 평가 - 실험 설계, 테스트셋 구성 6. 배포 - RESTful API를 통한 배포, 상황에 따라 유지/보수 Text.. 추천시스템의 이해와 문서 유사도 추천시스템이란? 개인 맞춤형 서비스 제공 위해 구매패턴 등 과거 데이터를 분석하여 상품을 추천하는 시스템 - 당신만을 위한 최신상품, 이 상품을 선택한 다른 사람들이 좋아하는 상품들 등 추천시스템은 왜 뜨고 있을까? 고객 선택 및 구매 적중률을 높이기 위해 데이터에 대한 메타 정보 관리와 분석 알고리즘이 중요해지고 있다. 1. 롱테일(80-20법칙에서 소외된 80퍼센트 고객에서도 상당한 영업기회가 존재한다는 현상) 문제를 해결할 수 있다. 2. 고객과 기업 양측 모두에게 이익이 된다. 고객 입장에선 개인화 서비스로 고객만족도가 증가하고 기업 입장에선 고객의 니즈 충족으로 매출이 증가한다. 추천시스템은 여러 가지 종류가 존재한다. 1. 사용자 프로파일링 기반 2. segment 기반 3. 상품 연관규칙 기.. 사이킷런 사이킷런? 파이썬 기반의 다른 머신러닝 패키지도 사이킷런 스타일의 API를 지향할 정도로 쉽고 가장 파이썬스러운 API를 제공합니다. 머신러닝을 위한 매우 다양한 알고리즘과 개발을 위한 편리한 프레임워크와 API를 제공합니다. 오랜 기간 실전 환경에서 검증됐으며, 매우 많은 환경에서 사용되는 성숙한 라이브러리입니다. 주로 Numpy와 Scipy 기반 위에서 구축한 라이브러리입니다. 피처(Feature)란? 피처는 데이터 세트의 일반 속성 예> 머신러닝은 2차원 이상의 다차원 데이터에서도 많이 사용되므로 티켓값을 제외한 나머지 속성을 모두 피처로 지칭 레이블, 클래스, 티켓값, 결정값? 티켓값 또는 결정값은 지도 학습시 데이터의 학습을 위해 주어지는 정답 데이터 지도 학습 중 분류의 경우에는 이 결정값을 .. 파이썬 기반 머신러닝 생태계 이해 1. 머신러닝? 애플리케이션을 수정하지 않고도 데이터를 기반으로 패턴을 학습하고 결과를 추론하는 알고리즘 기법을 통칭합니다. 2. 왜 필요한가? 머신러닝은 복잡한 문제를 데이터를 기반으로 숨겨진 패턴을 인지해 해결. 머신러닝 알고리즘은 데이터를 기반으로 통계적인 신뢰도를 강화하고 예측 오류를 최소화하기 위한 다양한 수학적 기법을 적용해 데이터 내의 패턴을 스스로 인지하고 신뢰도 있는 예측 결과를 도출해 냅니다. 3. 머신러닝의 분류 머신러닝은 지도학습과 비지도학습, 강화학습으로 나뉩니다. 지도 학습은 명확한 결정값이 주어진 데이터를 학습하는 것이며, 비지도 학습은 결정값이 주어지지 않는 데이터를 학습하는 것입니다. 지도학습 - 분류, 회귀, 시각/음성감지/인지 비지도학습 - 군집화(클러스터링), 차원축소.. 평가 1. 분류 성능 평가 지표 이진 분류 성능평가 지표 - 정확도, 오차행렬, 정밀도, 재현율, F1스코어, ROC AUC가 주로 성능 평가 지표가 활용됩니다. 2. 정확도(Accuracy) -예측 결과가 동일한 데이터 건수 / 전체 예측 데이터 건수 -정확도는 직관적으로 모델 예측 성능을 나타내는 평가 지표입니다. 하지만 이진 분류의 경우 데이터의 구성에 따라 ML 모델의 성능을 왜곡할 수 있기 때문에 정확도 수치 하나만 가지고 성능을 평가하지 않습니다. 특히 정확도는 불균형한 레이블 값 분포에서 ML 모델의 성능을 판단할 경우, 적합한 평가 지표가 아닙니다. 3. 오차 행렬(Confusion Matrix) - 오차 행렬은 이진 분류의 예측 오류가 얼마인지와 더불어 어떠한 유형의 예측 오류가 발생하고 있는.. 스태킹 앙상블 모델 기반 모델들이 예측한 값들을 Stacking 형태로 만들어서 메타 모델이 이를 학습하고 예측하는 모델 교차 검증 세트 기반의 스태킹은 이에 대한 개선을 위해 개별 모델들이 각각 교차 검증으로 메타 모델을 위한 학습용 스태밍 데이터 생성과 예측을 위한 테스트용 스태킹 데이터를 생성한 뒤 이를 기반으로 메타 모델이 학습과 예측을 수행합니다. 이는 다음과 같이 2단계 스텝으로 구분될 수 있습니다. 스텝1 : 각 모델별로 원본 학습, 테스트 데이터를 예측한 결과 값을 기반으로 메타 모델을 위한 학습용/ 테스트용 데이터를 생성합니다. 스텝2 : 스텝 1에서 개별 모델들이 생성한 학습용 데이터를 모두 스태킹 형태로 합쳐서 메타 모델이 학습할 최종 학습용 데이터 세트를 생성합니다. 마찬가지로 각 모델들이 생성한 테스.. LightGBM XGBoost 대비 더 빠른 학습과 예측 수행 시간, 더 작은 메모리 사용량, 카테고리형 피처의 자동 변환과 최적 분할(원 - 핫 인코딩 등을 사용하지 않고도 카테고리형 피처를 최적으로 변환하고 이에 따른 노드 분할 수행), GPU 지원 이전 1 2 다음