분류 전체보기

    [NLP] NLP 기초, 텍스트 전처리의 모든 것

    [NLP] NLP 기초, 텍스트 전처리의 모든 것

    텍스트 분석은 단어마다 쪼개는게 상당히 어렵고, 내 나름대로 진입장벽이 꽤 높다고 생각해서 쉽게 도전하지 못했던 분야였다. 이번에 데이콘 NLP대회에 경험삼아 참가해서 여러 코드도 참고해서 따라해보고 적용해봐야겠다는 생각에 기초부터 다지자!! 결심했다. [파이썬 머신러닝 완벽가이드]에서 나오는 텍스트분석은 어떤 프로세스로 분석을 전개해가야 하는지 틀을 잡을 수 있게 도와주었다. 텍스트 분석 수행 프로세스 1) 텍스트 사전 준비작업 ( 텍스트 전처리 ) : 텍스트를 피처로 만들기 전, 미리 클렌징, 대/소문자 변경, 특수문자 삭제, 단어토큰화 작업, 스탑워드 제거, 어근추출 등의 텍스트 정규화를 진행 2) 피처 백터화/추출 : 사전 준비작업으로 가공된 텍스트에서 피처를 추출하고, 이에 백터값 할당 => B..

    [python] SMOTE를 활용한 오버샘플링

    [python] SMOTE를 활용한 오버샘플링

    이번에는 SMOTE를 활용한 오버샘플링을 적용해보겠습니다. 일반적으로 언더샘플링보다 오버샘플링이 예측 성능상 더 유리한 경우가 많아 주로 사용됩니다. ## 오버샘플링? 이상 데이터와 같이 적은 데이터 세트를 증식하여 학습을 위한 충분한 데이터를 확보하는 방법으로, 동일한 데이터의 단순 증식은 과적합을 유발할 수 있기 때문에 의미가 없으므로 원본 데이터의 피처값들을 아주 약간씩 변형하여 증식 여기서 주의할 점은 SMOTE를 적용할 때는 반드시 학습 데이터 세트만 오버샘플링을 해야합니다!!! 검증 데이터 세트 혹은 테스트 데이터 세트를 오버샘플링 하는 경우 결국 원본 데이터가 아닌 데이터 세트에서 검증되기 때문에 올바른 검증이 되지 않습니다. 캐글의 Credit Card Fraud Detection 데이터를..

    [python] LGBMClassifier 단번에 성능 높이기

    [python] LGBMClassifier 단번에 성능 높이기

    Light GBM은 XGBoost보다 개선된 성능과 빠른 수행률을 보여주어 많은 대회의 상위 랭커들이 활용하는 모델이라고 할 수 있습니다! 저는 LGBMClaasifier 모델을 활용할 때 특히 주의해야 할 부분을 짚어보려고 하는데요, LGBMClassifier hyper parameter 중 'boost_from_averge' 설정입니다. Light GBM이 버전업 됨에 따라 boost_from_average 파라미터의 디폴트 값이 False에서 True로 변경되었습니다. 레이블 값이 극도로 불균형한 분포인 데이터의 경우 boost_from_average = True 값은 재현율과 roc_auc_score를 매우 저하시킵니다! Light GBM 2.1.0이상 버전이거나, 불균형한 데이터 세트에서 예측 ..

    [python] 교차검증을 간단하게 cross_val_score()

    sklearn은 kfold 교차검증을 보다 편리하게 수행할 수 있는 API를 제공합니다. 바로 cross_val_score() 인데요! 기존에 폴드 세트를 지정하고, for 루프에서 반복으로 학습 및 테스트 데이터의 인덱스를 추출하고, 반복적으로 학습과 예측을 수행하는 일련의 과정을 한번에 수행해주는 API입니다. 특히 classifier 학습을 진행하는 경우 자동으로 stratified KFold 방식을 진행해주기 때문에 더할나위 없이 편하다고 할 수 있겠네요! cross_val_score() 사용법 cross_val_score(estimator, X, y, scoring=평가지표, cv=교차 검증 폴드 수) 까지가 주요 파라미터라고 할 수 있습니다. * 여기서 estimator가 classifier ..

    [Tableau] 필터기능 익히기

    [Tableau] 필터기능 익히기

    태블로는 다양한 필터 기능을 가지고 있는데 그중에서 몇가지의 필터 기능을 알아보겠습니다. 해당 예시는 태블로에서 기본적으로 제공되는 sample-superstore 데이터로 진행됩니다. 데이터 원본 필터 데이터 원본 필터란, 데이터를 불러올 때부터 전체 데이터 중 일부 데이터만 끌어오는 경우 적용하는 필터입니다. 예를 들어 Category 가 세가지로 나뉘는 경우 하나의 항목만 가져와서 시각화를 진행하겠다! 하는 경우 시작부터 데이터를 필터해서 가져올 수 있다는 것입니다. 데이터 원본 탭을 보면 우측 상단에 [필터] 라고 표시된 부분을 확인할 수 있습니다. 이미 저는 한차례 실습을 통해 하나의 필터가 적용되어 있는 상태인데요 [편집] > [추가]를 통해 편집창으로 들어가게 되면 저는 region에서 Ce..

    [Tableau] 실무에서 많이 쓰이는 하이라이트 차트 그리기 (히트맵)

    [Tableau] 실무에서 많이 쓰이는 하이라이트 차트 그리기 (히트맵)

    마지막으로 학습해볼 차트는 실무에서 가장 많이 쓰인다고 하는 하이라이트 차트, 히트맵입니다. 아직까지도 실무에서는 테이블 형태의 데이터로 시각화하는 것을 선호한다고 하는데요, 하이라이트 차트에 대해 자세히 알아보고, 부가적으로 버블차트와 트리맵에 대해 알아보겠습니다. 본 게시물 역시 태블로에서 기본적으로 제공되는 sample - superstore 데이터를 기반으로 진행합니다. 하이라이트 차트 그리기 우선 시작 전에 기본적으로 알고 가면 좋은 팁은 - 차원을 먼저 더블클릭하는 경우 -> 테이블 형태 - 측정값을 먼저 더블클릭하는 경우 -> 그래프 형태 로 시각화가 되게 됩니다. 따라서 본 하이라이트 분석에서는 테이블 형태로 나타내야 하기 때문에 차원을 먼저 더블클릭 해줍니다. 차원인 customer na..

    [Tableau] 산점도 차트 그리기

    [Tableau] 산점도 차트 그리기

    이번에는 두 변수 사이의 관계를 나타낼 수 있는 산점도 차트에 관해 학습해보겠습니다 :) 또한 추세선을 그려보며 두 변수의 상관관계 역시 파악해보겠습니다. 마지막으로 조금 더 나아가 '계산된 필드 만들기' 항목을 활용하여 두 변수를 조합한 새로운 변수를 만들어보도록 하겠습니다. 본 예시는 태블로에서 기본적으로 제공되는 sample superstore 데이터셋을 활용하였습니다. Scatter Plot 그리기 이익과 할인율 사이의 관계를 알아보기 위해 행 - Profit / 열 - Discount를 넣어주었습니다. 상식적으로는 할인율이 커질수록 판매자가 얻는 이익은 적어지기에 음의 상관관계를 띄겠구나 예측할 수 있겠네요. 여기서 제품별로 이익과 할인율 사이의 관계를 파악하기 위해 Product Name을 마..

    [Tableau] 비율 차트의 모든 것

    [Tableau] 비율 차트의 모든 것

    보통 데이터 시각화를 하면 대체적으로 파이차트가 빠지지 않았던 것같은데요. 이번 포스팅은 파이차트의 단점을 지적해보고 대신 사용할 수 있는 비율 bar chart를 활용해보도록 하겠습니다. 또한 실무에서 가장 많이 활용하는 퀵테이블 기능을 활용하여 구성비율을 요리조리 나타내보도록 하겠습니다. ※ 태블로에서 기본적으로 제공되는 샘플 슈퍼스토어 데이터를 활용합니다. 파이차트 그리기 우선 파이차트를 나타내보도록 하겠습니다. 파이차트를 나타내는 방법에는 총 두가지가 있는데요 첫 번째는 우측 상단에 표현방식을 사용한 방법입니다. 매출 합계의 비율을 세그먼트별로 나누어서 비율을 보기 위해 두가지 항목을 선택해줍니다 ( 윈도우 ctrl, 맥 cmd 키를 눌러 복수 선택 ) 복수선택이 되어있는 상태에서 표현방식의 파이..

    [Tableau] 라인 차트를 쓰는 경우와 영역 차트를 쓰는 경우

    [Tableau] 라인 차트를 쓰는 경우와 영역 차트를 쓰는 경우

    라인차트를 쓰는 경우는 보통 날짜 데이터를 시각화할 때 많이 쓰곤 하는데, 과거에 라인이라도 분기별로 또는 월별로 분절되어 표시되는 것을 연속형으로 연결하고 싶었지만 해결방법을 몰랐었다. 이번 인프런 태블로 기초 수업을 통해 해결방법은 물론 라인차트와 영역차트를 써야하는 경우를 구분할 수 있게 되었다는 것이 와닿는다. 데이터 시각화에서는 시각화하는 사람의 생각에 따라 결과물이 다르게 산출되기 때문에, 어떤 차트를 쓸지도 개인의 선택에 따라 달라진다. 나는 어떤 데이터에 어떤 차트가 적합할지 늘 헷갈렸다. 하지만 이번 라인 vs 영역을 구분하는 수업을 통해 두 가지는 확실히 잡고 갈 수 있겠다 :) Line chart 날짜 연속형으로 나타내는 법 이번에도 마찬가지로 슈퍼스토어 - 샘플 데이터를 가져와서 활..

    [Tableau] Bar chart에서 요구되는 기능 모음

    [Tableau] Bar chart에서 요구되는 기능 모음

    이전에 학교 수업을 통해서 Tableau라는 데이터 시각화 툴을 처음 접하게 됐다 원리를 듣기는 했으나,, 여러 명이 같이 수강하는 수업이다 보니 이해하기는 커녕 빨리빨리 작업을 따라가는 것에만 치중해서 정작 내가 원하는 데이터를 끌어와서 시각화하는 것에는 지식의 한계가 있었다 그래서 몇 년간 손 놓고 있다가 다시 흥미가 생긴 툴 쓸 줄은 아나, 제대로 쓸 줄 모르기에 이번에 인프런 "웰컴 투 태블로 월드" 강의를 접하게 되고 "제대로" 익혀보려한다 기초를 할 줄 알았으나,, drill down 할수록 더 재미진 툴 본 게시물은 tableau 데이터 연결 창에서 기본으로 제공하는 sample - Superstore 데이터를 활용했습니다! 기본적인 Bar chart를 그리기 전에 .. 데이터를 보면 파란색..