
2025.02.24 - [머신러닝] - [12] Xgboost에서 데이터셋이 커질 때 학습 속도가 느린 문제점을 해결한 Lightgbm은 모든 데이터를 탐색하지 않고 상호배타적인 변수를 줄여 학습 속도를 개선시킨 모델입니다. 이번 글에서는 Lightgbm의 동작 원리에 대해 자세히 다뤄보겠습니다. [12] Xgboost2024.06.28 - [머신러닝] - [7] 앙상블 모델에서 언급된 Boosting 기반으로 만들어진 Xgboost는 Gradient Boosting 모델에 정규화 함수를 더해서 과적합을 방지하고 병렬 컴퓨팅을 통해 학습 속도를 개선시킨up-one-coding.tistory.com 1. 동작 원리XGBoost와 Lightgbm의 가장 큰 차이점은 트리에서 리프 노드가 생성되는 방법입니다...

2024.06.28 - [머신러닝] - [7] 앙상블 모델에서 언급된 Boosting 기반으로 만들어진 Xgboost는 Gradient Boosting 모델에 정규화 함수를 더해서 과적합을 방지하고 병렬 컴퓨팅을 통해 학습 속도를 개선시킨 장점을 가지고 있습니다. 이번 글에서는 Xgboost의 동작 원리에 대해 자세히 다뤄보겠습니다. [7] 앙상블 모델SVM(Support Vector Machine), KNN 알고리즘과 같이 단일 분류 알고리즘을 조합해 하나의 예측 모형으로 만드는 지도학습 방법론을 앙상블 모델이라고 합니다. 이번 시간에는 앙상블 모델의 종류인 Baggingup-one-coding.tistory.com 1. 동작원리 Xgboost의 기본 원리가 되는 Decision Tree(결정 트리)는..

2024.06.28 - [머신러닝] - [7] 앙상블 모델에서 언급된 Bagging의 특징을 이용한 RandomForest 모델은 여러 개의 Tree 분류기를 생성하여 예측값을 도출하는 방법입니다. [7] 앙상블 모델SVM(Support Vector Machine), KNN 알고리즘과 같이 단일 분류 알고리즘을 조합해 하나의 예측 모형으로 만드는 지도학습 방법론을 앙상블 모델이라고 합니다. 이번 시간에는 앙상블 모델의 종류인 Baggingup-one-coding.tistory.com Bagging 기반으로 데이터셋을 복원 추출하고 여러 개의 분류기를 구현해 학습시키는 RandomForest 모델은 '집단 지성의 힘'으로 비유해 여러 개의 Tree 모델이 예측한 값들 가장 많은 값을 최종 예측값으로 사용하..

로지스틱 회귀 모델은 일종의 선형회귀 모델과 유사하지만 종속 변수가 범주형인 것을 대상으로 예측 결과가 분류 분석로써 활용될 수 있습니다. 종속 변수가 이항 변수의 경우, logit 변환을 통해 값이 0에서 1 사이로 변환되어 확률적 개념이 생기면 Threshold에 따라 분류할 수 있습니다. 종속 변수의 값이 1인 확률을 예측한 후, 설정한 Threshold에 따라 종속변수 1과 0을 분류하는 것입니다. 일반 선형회귀 모델과 달리 로지스틱 회귀 모델의 값은 아래 그래프와 같이 반드시 0에서 1 사이의 값만 산출됩니다. 로지스틱 회귀 모델에서 Odds(오즈)란 개념은 이항변수가 극단적일 때 일어날 확률을 비교하기 위해서 사용됩니다. EX) 도심지역의 발병 확률이 1 / 2000, 비도심지역의 발병확률이 ..

정규화 모델(Regularization)은 머신러닝에서 회귀 계수의 크기를 제어해 과적합을 개선하는 기법입니다. 머신러닝이 극복해야 할 가장 중요한 이슈는 편향과 분산을 조절하여 과적합이 발생하지 않은 예측 정확도가 높은 모델을 구현하는 것입니다. 위 그림처럼 편향(Bias)은 데이터의 치우치는 경향, 예측한 결과가 정답과 일정하게 차이가 나는 정도를 의미합니다. 반면 분산(Variance)은 데이터가 퍼져있는 정도, 즉 머신러닝 모델 예측의 가변성을 뜻합니다. 편향과 분산은 서로 반비례 관계를 가지는 것이 특징입니다. 정규화 모델은 편향과 분산의 반비례 관계에서 오류 값이 최대로 낮아지는 모델을 구축할 때 사용됩니다. 1. Ridge선형 회귀 모델(Linear Regression)에서 예측 정확도는 ..

분류 머신러닝 모델링에서 중요한 점은 종속 변수가 수치형이어야 하는 점입니다. 오늘 포스트 할 의사결정나무(Decision Tree Model)은 종속 변수가 범주형일 경우, 수치형일 경우 모두 사용할 수 있는 분류 지도학습 알고리즘입니다. 예를 들어, 고객의 OOT 서비스의 리뷰에 따라 재구독 여부를 분류하고자 할 때 종속 변수인 "재구독"과 "해지"가 범주형 데이터인 경우 의사결정나무를 통해 분류할 수 있습니다. 의사결정나무 모델은 데이터에 내재되어 있는 패턴을 분석해 예측 분류 모델을 나무의 형태로 만드는 것입니다. 전체 데이터가 특정 조건에 의해 이진 분할로 부분집합 형태로 나누어지고 더 이상 분류할 수 없을 때까지 과정을 반복하는 것입니다. 의사결정 나무 모델링에서 가장 먼저 이뤄지는 단계는 ..

SVM(Support Vector Machine), KNN 알고리즘과 같이 단일 분류 알고리즘을 조합해 하나의 예측 모형으로 만드는 지도학습 방법론을 앙상블 모델이라고 합니다. 이번 시간에는 앙상블 모델의 종류인 Bagging 기법과 Boosting 기법에 대해 포스트 하겠습니다. 앙상블 모델은 다수 모형의 분류 및 예측 결과를 종합하여 의사결정하는 방법입니다. 앙상블 모델의 성능은 단일 모델의 성능보다는 높다고 알려져 있지만, 단일 모델이 상호 독립적이어야 하고, 각 분류 모델의 오분류율이 적어도 50%보다는 낮아야 앙상블 모델을 사용할 가치가 있습니다. 이 포스트에서 알아볼 Bagging 기법과 Boosting 기법은 모두 단일 모델을 조합하는 방법 중 데이터를 조절하는 방법입니다. 적절한 표본 추출..

머신러닝 모델의 성능을 저하시키는 한 요인은 데이터의 Feature 수가 많아 학습 속도가 느리고 성능이 낮아지는 '차원의 저주' 현상 때문입니다. 차원이 증가할수록 설명력을 유지하기 위한 데이터의 양이 증가하는 것과 아래 그림처럼 차원이 증가할수록 데이터 포인트 간의 거리는 증가하고 의미 없는 공간이 커져 성능이 저하되는 것입니다. 차원의 저주를 해결할 수 있는 기법 중 하나인 PCA, 주성분 분석은 데이터 내 존재하는 노이즈(Noise)을 제거하고 축소된 차원 덕에 연산량이 줄어드는 효과를 가집니다. 즉, PCA의 가장 중요한 원리는 데이터의 차원을 어떻게 축소시키는 것입니다. 수학적으로 차원을 축소하는 것을 '투영(Projection)'이라고 합니다. 투영은 N차원 공간의 데이터를 (N-1)차원 공..

머신러닝 카테고리의 이번 글은 비지도학습 알고리즘의 한 종류인 KMeans 알고리즘의 개념과 동작 원리에 대해 설명하겠습니다. KMeans 알고리즘은 label이 없는 데이터를 분류하는 알고리즘입니다. KMeans 알고리즘은 label이 없는 데이터를 분류하기 때문에 knn 알고리즘처럼 정확한 분류를 하는 것은 불가능합니다. 따라서 비슷한 특성을 가진 데이터끼리 군집화를 해 분류하는 방법으로 데이터를 분류합니다. KMeans 알고리즘의 대략적인 동작원리는 각 군집의 평균을 활용해 K개의 군집으로 묶은 후, 가깝게 위치하는 데이터를 비슷한 특성을 지닌 데이터로 여기고 같은 군집으로 만드는 것입니다. KMeans 알고리즘 동작원리 순서군집의 개수, K값 정하기랜덤으로 K개의 초기 중심점(Centroi..

이번 머신러닝 카테고리의 글에서는 knn 알고리즘과 더불어 지도학습 분류 모델 중 하나인 Support Vector Machine(SVM)의 개념과 동작 원리에 대해 설명하겠습니다. SVM은 데이터의 클래스를 분류하는 최적의 경계를 찾는 알고리즘입니다. 이때의 경계는 반드시 선형이어야 하는 조건이 존재합니다. SVM는 Margin을 최대화하는 최적의 경계라 정의합니다. Margein(마진)은 각 클래스의 말단에 위치하는 데이터들 사이의 거리를 뜻합니다. 우리는 오직 각 클래스의 말단에 위치하는 데이터들만을 이용해 경계를 찾는 것이 핵심입니다. 최적의 경계를 찾는 데 사용하는 Margin에 위치하는 데이터들을 Support Vector라고 정의합니다. Margin(마진)을 구하기 위해서는 선형대수학의..
- nlp #토큰화 #nltk #konply
- #attention #deeplearning
- # 프로그래머스 #연속된 부분수열의 합 #이중 포인터 #누적합
- 머신러닝 #project #classification #dacon
- #opencv #이미지 읽기 #이미지 제작 #관심영역 지정 #스레시홀딩
- # 할인행사 #counter #딕셔너리 #프로그래머스
- pca #주성분분석 #특이값분해 #고유값분해 #공분산행렬 #차원의 저주
- #프로그래머스 #안전지대 #시뮬레이션
- randomforest #bagging #머신러닝 #하이퍼파라미터 튜닝
- #opencv #이미지 연산 #합성
- seaborn #데이터시각화 #타이타닉
- 딥러닝 #오차역전파 #연쇄법칙 #계산그래프 #최적화
- 머신러닝 #xgboost #
- 파이썬 #코딩테스트 #프로그래머스 #스택 #큐
- #python #프로그래머스 #외계어사전 #itertools #순열과조합
- 파이썬 #시각화 #matplotlib
- 잘라서 배열로 저장하기 #2차원으로 만들기
- 머신러닝 #lightgbm #goss #ebf
- python #deque #프로그래머스 #공 던지기 #문자열 계산하기 #코딩테스트
- #seq2seq #encoder #decoder #teacher forcing
- python #프로그래머스 #리스트 #인덱싱
- 로지스틱 회귀 #오즈비 #최대우도추정법 #머신러닝
- #자연어 처리 #정수 인코딩 #빈도 수 기반
- 자연어 처리 #정제 #정규표현식 #어간 추출 #표제어 추출
- #tf idf
- subquery #sql 코딩테스트
- python #프로그래머스 #겹치는선분의길이
- #물고기 종류별 대어 찾기 #즐겨찾기가 가장 많은 식당 정보 출력하기 #mysql #programmers
- 프로젝트 #머신러닝 #regression #eda #preprocessing #modeling
- html #javascript #구구단 출력