일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- NLP
- 그로스해킹
- 취업부트캠프
- 데이터도서
- 서비스기획
- sql정리
- 스타터스
- 유데미큐레이션
- BERT
- SLASH22
- pytorch
- 그래프
- 스타터스부트캠프
- 임베딩
- 유데미부트캠프
- 토스
- AWS builders
- 취업부트캠프 5기
- 딥러닝
- AARRR
- 부트캠프후기
- SQL
- NLU
- 사이드프로젝트
- 유데미코리아
- 알고리즘
- 서비스기획부트캠프
- MatchSum
- 특성중요도
- 추천시스템
- Today
- Total
목록전체 글 (154)
다시 이음

Model Selection 오늘은 어떤 문제에 대해 어떤 모델을 선택해야 할지에 대한 이야기를 해볼거에요. 결론부터 말하자면 어떤 알고리즘이 어떤 상황에서 더 좋다는 정해진 게 없습니다. 적용해 봐야 아는 것입니다. 다만 어느 정도 특정 알고리즘이 뛰어난 성능을 발휘하는 경우를 경험적으로 인지하고 이를 먼저 적용해 보면서 최적 모델을 찾습니다. 그렇기 때문에 우리는 교차검증이라는 것을 통하여 모델 선택의 문제를 해결할 수 있습니다. 교차검증(Cross-validation) 교차검증이란, 머신러닝/딥러닝 평가에 필수적으로 사용되는 방법으로 데이터를 통한 모델을 설계한 후 모델을 검증하는 단계라고 볼 수 있습니다. 다시 말해 모델을 추정하는 데 사용되지 않았던 새로운 데이터를 예측하는 일반화 능력을 테스트..

Evaluation Metrics for Classification 안녕하세요. 오늘은 분류분석모델을 평가할 수 있는 평가지표에 대해서 알아보려고 합니다. 평가지표의 종류에 대해서 알아보기 전에 평가지표들의 기본이 되는 Confusion Matrix(오차행렬,혼동행렬)에 대해서 먼저 알아볼게요. Confusion Matrix 혼동행렬,오차행렬 이라고도 부릅니다. Confusion Matrix는 Training 을 통한 Prediction 성능을 측정하기 위해 예측 value와 실제 value를 비교하기 위한 표를 말합니다. 이 행렬을 기초로 우리는 분류분석모델을 평가할 수 있는 여러가지 지표를 살펴볼 수 있습니다. 1) 구성 Actual Class - 실제값 Predicted Class - 예측값 Tru..
Random Forests 랜덤 포레스트란? 랜덤포레스트는 결정트리(Decision trees)를 기본모델로 사용하는 앙상블 방법이라 할 수 있습니다. 앙상블 방법은 한 종류의 데이터로 여러 머신러닝 학습모델(weak base learner, 기본모델)을 만들어 그 모델들의 예측결과를 다수결이나 평균을 내어 예측하는 방법을 말합니다. 이론적으로 기본모델 몇가지 조건을 충족하는 여러 종류의 모델을 사용할 수 있습니다. 결정트리들은 독립적으로 만들어지며 각각 랜덤으로 예측하는 성능보다 좋을 경우 랜덤포레스트는 결정트리보다 성능이 좋습니다. 그렇기에 데이터가 선형이든 비선형이든, 여러분들이 분류문제를 풀어야 한다면 랜덤포레스트를 먼저 적용해 보시기를 바랍니다. 앞서 배운 결정트리모델은 한 개의 트리만 사용하기..

오늘 배운 내용을 살펴보기 전에 요즘 자주 쓰게 되는 기능인 파이프라인에 대해서 정리를 해보려고 합니다. 물론 일별 정리는 밤에 포스팅할 예정입니다 ㅎㅎ 파이프라인이란? 프로세서에서 성능을 높이기 위해서 명령어 처리 과정으로 명령어 처리를 여러 단계로 나누어 단계별로 동시에 수행 하여 병렬화를 시키는 것을 말합니다. 여러 단계의 변환을 연결하려는 경우 손으로 변환을 수행하는 것이 코드의 길이를 길게 할뿐만아니라 성능에도 차이를 줍니다. 그래서 예를 들어 다음과 같은 처리 파이프라인이 필요할 수 있습니다. 원핫인코딩 평균을 사용하여 결측값 대치 표준화 과정 피쳐를 2차로 변환 선형 회귀 피팅 or 릿지 회귀 or 로지스틱 회귀 or 결정 트리 이러한 유형의 처리 파이프라인을 간소화하기 위해 Scikit-L..
오늘은 트리기반(tree-based) 머신러닝모델에 대해서 살펴보려고 합니다. 결정트리(의사결정나무) 모델은 특성들을 기준으로 샘플을 분류해 나가는데 그 형태가 나무의 가지가 뻗어나가는 모습과 비슷해서 결정트리라는 이름을 가지고 있습니다. 결정트리의 구성 질문이나 말단의 정답을 노드(node) 라 하며 노드를 연결하는 선을 엣지(edge) 라 합니다. 결정트리의 각 노드(node)는 뿌리(root)노드, 중간(internal)노드, 말단(external, leaf, terminal) 노드로 나뉠 수 있습니다. 결정트리의 특징 결정트리는 분류와 회귀문제 모두 적용 가능합니다. 결정트리는 데이터를 분할해 가는 알고리즘입니다. 분류 과정은 새로운 데이터가 특정 말단 노드에 속한다는 정보를 확인한 뒤 말단노드의..

Polynomial Regression(다항회귀) 안녕하세요. 오늘은 회귀분석 유형중에 가장 이해가 어려웠던 다항 회귀분석에 대해 집중해보겠습니다. 선형관계 , 비선형관계 , 단조관계 1. 선형관계 선형 관계는 일반적으로 기울기 절편 형태 y = mx + b로 작성된 선형 방정식으로 설명됩니다. 독립 변수 x는 가로 축에 표시되고 종속 변수 y는 세로 축에 표시됩니다. 상수 m은 직선의 기울기 또는 가파름입니다. 상수 b는 y 절편이라고하며 선이 세로 축을 교차 할 때 y의 값입니다. 일련의 데이터 점이 완벽하게 선형 인 관계를 갖는 경우 해당 점이 직선을 이룹니다. 단순선형회귀분석, 다중선형회귀분석으로 해결 2. 비선형관계 선형 관계의 정의에 맞지 않는 두 양 간의 관계를 비선형 관계라고합니다. X 값..

Logistic Regression 훈련/검증/테스트(train/validate/test) 훈련데이터는 모델을 Fit(학습) 하는데 사용합니다. 검증데이터는 예측 모델을 선택하기 위해서 예측의 오류를 측정할 때 사용합니다. 테스트데이터는 일반화 오류를 평가하기 위해 선택된 모델에 한하여 마지막에 한 번 사용합니다. 테스트세트는 훈련이나 검증과정에서 사용하지 않도록 주의해야 합니다. 왜냐하면 테스트데이터가 유출(leak)이 되어 훈련/검증과정에 사용이 되면 모델을 잘못 평가하게 됩니다. ** 검증데이터를 통해 transform을 하게 되면 모델에 성능을 확인 할 수 있지만 성능을 개선하지는 못합니다. 개선하는 것은 하이퍼파라미터(직접 지정하여 변화를 줄 수 있는 파라미터)를 적절하게 변경함으로써 가능합니다..

Ridge Regression 이전 포스팅에서 다루었던 연속형 데이터를 다루는 선형회귀분석이 있었습니다. 그렇다면 범주형 데이터(Categorical)는 어떻게 회귀분석 할 수 있을까요? 범주형 데이터(Categorical) 범주형 데이터는 순서가 없는 명목형(nominal)과 순서가 있는 순서형(ordinal)으로 나뉩니다. 이러한 범주형 데이터를 시스템이 인식할 수 있도록 변환시키는 방법중에 하나인 Onehotencoder에 대해서 살펴볼게요. 원핫인코딩을 수행하면 각 카테고리에 해당하는 변수들이 모두 차원에 더해지게 됩니다. 즉, 새로운 차원(열)에 0,1로 마킹을 한다고 생각하시면 됩니다. 그러나 카테고리가 너무 많은 경우를 우리는 집단의 크기가 많다.(high Cardinality) 로 표현합니..

Multiple Regression (다중회귀분석) 다중회귀 분석에 대한 설명을 하기전에 회귀분석을 위해 모델 설정을 하려면 우리가 해야할 것이 있습니다. 바로 독립변수(Feature) 와 종속변수(Target)의 데이터에서 훈련 데이터와 테스트 데이터를 분리하는 것입니다. 훈련(train)과 테스트(test) 테스트 데이터와 훈련데이터를 서로 분리하는 절차 = out of sample testing 훈련 데이터를 이용하여 모델을 만들고 테스트 데이터를 넣어서 모델의 효율을 확인하는 것에 의의가 있습니다. 훈련 데이터와 테스트 데이터를 나누는 방법은 무작위로 선택해 나누는 방법이 일반적입니다. (시계열 데이터를 가지고 과거에서 미래를 예측하려고 하는 경우 무작위로 데이터를 섞으면 절대로 안됩니다. 이럴 ..

선형회귀(Linear Regression) 지도 학습 (Supervised Learning) / 비지도 학습(Unsupervised Learning) 둘의 가장 큰 차이는 'Label (답)이 주어지는가, 아닌가' 이다. 즉, 지도학습이란 데이터와 라벨(레이블)을 입력하고 학습을 통해 데이터간의 룰을 찾아 분석하는 것이다. 비지도학습은 라벨이 주어지지 않은 데이터일 경우 군집화(클러스터링)을 통해 분리하는 것이다. (비지도 학습은 답이 주어지지 않아서 분리를 한뒤에도 정확한 값이 맞는지 틀렸는지 확인이 어렵다.) 비지도 학습의 경우 클러스터링을 저번 포스팅에서 확인해본 바 있고 오늘은 지도 학습에 집중을 할 것이다. 1. 지도학습(Supervised Learning)은? 1) 회귀(Regression) ..