'빅데이터 관련 자료/Dacon' 카테고리의 글 목록 (2 Page)
Data Analyst
300x250
300x250

빅데이터 관련 자료/Dacon 104

train_test_split / LGBM (1)

이번시간에는 train_test_split() 으로 데이터셋을 split 하고 해당 데이터 셋을 이용해 모델을 학습하고 검증하는 방법에 대해 알아 보겠습니다. 학습에 사용 할 모델은 Light GBM 입니다 Light GBM 모델을 선언 이후 학습을 위해서는 fit() 메소드를 사용합니다. 이때 fit() 메소드 내부에 다음과 같이 파라미터를 적용해주면 모델이 학습을 하면서 validation 데이터를 이용해 계속 검증을 진행 합니다. model.fit(x_train, y_train, eval_set = [(x_train,y_train),(x_valid,y_valid)] ) #train_test_split() 메소드를 이용해 train/validation 데이터 나누기 # stratify 옵션을 활용하여..

train_test_split - (4)

이번시간에는 train_test_split() 메소드의 stratify파라미터에 대해 알아보겠습니다. stratify: stratify 파라미터는 분류 문제를 다룰 때 매우 중요하게 활용되는 파라미터 값 입니다. stratify 값으로는 target 값을 지정해주면 됩니다. stratify값을 target 값으로 지정해주면 target의 class 비율을 유지 한 채로 데이터 셋을 split 하게 됩니다. 만약 이 옵션을 지정해주지 않고 classification 문제를 다룬다면, 성능의 차이가 많이 날 수 있습니다. # 라이브러리 로딩 from sklearn.model_selection import train_test_split #train_test_split() 메소드를 이용해 train/valida..

train_test_split() - (3)

이번시간에는 train_test_split() 메소드의 test_size 파라미터와 shuffle 파라미터 에 대해 알아보겠습니다. test_size: test data(validation data) 구성의 비율을 나타냅니다. train_size의 옵션과 반대 관계에 있는 옵션 값이며, 주로 test_size 파라미터를 지정 해줍니다. test_size = 0.2 로 지정 하면 전체 데이터 셋의 20%를 test(validation) 셋으로 지정하겠다는 의미입니다. default 값은 0.25 입니다. shuffle: 데이터를 split 하기 이전에 섞을지 말지 여부에 대해 지정해주는 파라미터 입니다. default = True 입니다. # 라이브러리 로딩 from sklearn.model_selecti..

train_test_split() - (2)

train_test_split()을 이용한 train / validation(test) 분리 train_test_split 함수를 통해 단 1줄로 깔끔하게 분리할 수 있습니다. 패키지는 sklearn.model_selection에 있습니다. train_test_split 메소드는 총 4개의 값을 반환하고 2개의 값을 필수적으로 채워주어야 합니다. 반환 하는 값은 학습에 사용할 X,y 값, 검증에 사용할 X,y 값 이렇게 총 4개의 값을 반환하고, 입력값으로는 원본 데이터의 X,y을 채워주어야 합니다. # 라이브러리 로딩 from sklearn.model_selection import train_test_split x_train,x_valid, y_train, y_valid = train_test_spli..

train_test_split - (1)

모델링 과정에서 가장 먼저 알아볼 것은 바로 train_test_split() 메소드입니다. train_test_split() 메소드는 데이터 셋을 train_set과 test_set으로 손쉽게 분리할 수 있게 도와주는 메소드입니다. train / test 데이터 셋을 분리하는 이유 먼저, train/test를 분리하는 목적에 대해 정확히 이해해야 합니다. 용어를 정확히 하자면 train/test가 아니라 train/validation이 맞는 표현입니다. 머신러닝 모델에 train 데이터를 학습 시킨 후 test 데이터를 모델로 예측했을 경우 성능이 생각보다 낮게 나오는 경우가 발생합니다. 이러한 현상을 보통 Overfitting 되었다고 합니다. 이미지 출처 : educative.io 즉, 현재 모델이..

TF-IDF(Term Frequency - Inverse Document Frequency) - (2)

이번 시간에는 TF-IDF를 이용하여 청와대 청원 데이터를 벡터화 시켜 보도록 하겠습니다. 실습 순서는 다음과 같습니다. train 데이터를 이용해 TF-IDF 학습(fit) 학습(fit) 된 TF-IDF를 이용해 train 데이터 변환(transform) train 데이터로 학습(fit) 된 TF-IDF를 이용해 test 데이터 변환(transform) 그럼 바로 실습을 진행해보도록 하겠습니다 #라이브러리 로딩 from sklearn.feature_extraction.text import TfidVectorizer #TF-IDF으로 train 데이터를 피처 벡터화 변환 수행 vect = TfidfVectorizer() vect = TfidfVectorizer() vext.fit(train['data']..

TF-IDF(Term Frequency - Inverse Document Frequency) - (1)

이번시간에는 BOW의 TF-IDF(Term Frequency - Inverse Document Frequency)에 대해 알아 보겠습니다. 이전에 설명한 카운트 기반 벡터화는 숫자가 높을수록 중요한 단어로 인식합니다. 하지만, 단순히 단어의 빈도만 고려한다면 모든 문서에서 자주 쓰일 수 밖에 없는 단어들이 중요하다고 인식 될 수 있습니다. 이런 문제를 보완하기 위해 TF-IDF 벡터화를 사용합니다. TF-IDF는 개별 문서에서 자주 등장하는 단어에는 높은 가중치를, 모든 문서에서 자주 등장하는 단어에 대해서는 패널티를 주는 방식으로 값을 부여합니다. 예를 들어 총 5개의 문서가 있다고 가정하면, 딥러닝이라는 단어는 5개 문서에서 모두 등장하고, 머신러닝이라는 단어는 1번 문서에서만 빈번히 등장한다고 했을..

CountVectorizer - (2)

이번 시간에는 CountVectorizer를 이용하여 청와대 청원 데이터를 벡터화 시켜 보도록 하겠습니다. 실습 순서는 다음과 같습니다. train 데이터를 이용해 CountVectorizer 학습(fit) 학습(fit) 된 CountVectorizer를 이용해 train 데이터 변환(transform) train 데이터로 학습(fit) 된 CountVectorizer를 이용해 test 데이터 변환(transform) 그럼 바로 실습을 진행해보도록 하겠습니다 from sklearn.featrue_extraction.text import CounterVectorizer #Count Vectorization으로 train 데이터를 피처 벡터화 변환 수행 vect = CounterVector() vect.fi..

CountVectorizer - (1)

이번시간에는 BOW의 카운트 기반 벡터화(CountVectorizer)에 대해 알아 보겠습니다. 카운트 기반 벡터화 Bag of Words를 설명하면서 텍스트 데이터를 숫자형 데이터로 변환하는 방법에 대해 알아보았습니다. 그와 마찬가지로, 단어에 값을 부여할 때 각 문장에서 해당 단어가 나타나는 횟수 즉, Count를 부여하는 경우를 카운트 벡터화라고 합니다. 카운트 벡터화에서는 값이 높을수록 중요한 단어로 인식됩니다. 카운트 기박 벡터화 실습 카운트 기반 벡터화는 사이킷런의 CountVectorizer 클래스를 활용하여 적용할 수 있습니다. 아래 코드 CountVectorzier를 활용하여 한 문장을 BOW로 만드는 코드입니다. from sklearn.feature_extraction.text impo..

Bag of Words

오늘은 Bag of Words의 개념에 대해 알아보겠습니다. 머신러닝 모델은 텍스트로 된 변수를 바로 사용할 수 없습니다. 텍스트를 특정 의미가 있는 숫자형 값인 벡터 값으로 변환해야 되는데 이를 피처 벡터화라고 합니다. 텍스트 데이터를 벡터화하는 방법은 여러가지가 있지만, 그중 단순한 방법인 Bag of Words에 대해 알아 보겠습니다. Bag of Words(BOW) ? ? Bag of Words란 단어들의 문맥이나 순서를 무시하고, 단어들에 대한 빈도 값을 부여해 변수를 만드는 방법입니다. BOW 를 이용하여 텍스트 데이터를 숫자형 값으로 변환해 보겠습니다. 문장1: 나는 축구하는 것을 좋아합니다. 문장2: 나는 주말에 친구들을 만나 함께 축구하는 것을 좋아합니다. 그리고 나는 친구들을 만나 축구..

300x250
300x250