전체 글523 Bagging Predictors 이번 포스팅에서는 Leo Breiman의 논문 'Bagging Predictors'에 대한 내용을 간략히 정리해본다. - 목차 - 1. Introduction 2. Bagging Classification Trees 3. Bagging Regression Trees 4. Why Bagging Works 5. A Linear Regression Illustration 6. Concluding Remarks 1. Introduction 학습 데이터 $L=\{ (y_n, x_n), n=1, \ldots, N \}$이 있다. $y_n$은 클래스 라벨이거나 수치형 반응 변수일 수 있다. 이때 학습 데이터 $L$을 이용하여 예측모형 $\phi(x, L)$을 만들어본다고 가정하자. 또한 학습 데이터의 시퀀스 $\{ .. 2022. 7. 16. [Matplotlib] 모자이크 플롯(Mozaic Plot) 그리기 안녕하세요~ 꽁냥이에요. 얼마 전에 두 개 또는 세 개 범주형 변수를 시각화하는 모자이크 플롯(Mozaic Plot)이 있다는 것을 알게 되었는데요. 안타깝게도 Matplotlib에서는 자체적으로 모자이크 플롯(Mozaic Plot)을 그려주진 않더라고요. 그래서 꽁냥이가 자체적으로 Matplotlib을 이용해서 모자이크 플롯을 그리는 방법을 소개하려고 합니다. 꽁 냥이는 2개 범주형 변수에 대해서만 고려했어요. 3개가 되면 좀 지저분해 보이기도 하고 구현하기 귀찮기도 했어요 ㅎㅎ; 모자이크 플롯(Mozaic Plot) 함수 먼저 아래는 모자이크 플롯을 그려주는 함수입니다. 이 함수는 데이터프레임 df, x축에 표시할 범주형 칼럼 x_class_label, y축에 표시할 범주형 칼럼, y_class_la.. 2022. 7. 16. 파이썬(Python) 함수에 부분 인자 적용하기 (feat. partial) 파이썬 코딩을 하다 보면 함수에 모든 인자가 아닌 특정 부분 인자만 고정시키고 다른 인자에는 for loop를 돌면서 동적으로 할당하고 싶을 때가 있다. 파이썬에서는 functools 모듈의 partial을 이용하면 이 모든 것이 가능하다. 따라서 이번 포스팅에서는 functools 모듈의 partial의 사용법과 예제를 알아보자. 1. partial 사용법 partial은 첫번째 인자로 함수를 넣어주고 뒤이어 해당 함수의 인자값을 정해주는 방식이다. partial( '함수', '인자1', '인자2', . . . ) 2. partial 예제 사용법을 알았으니 실제로 써보자. 다음 코드는 a, b, c, d 인자를 갖는 함수 func에서 a, b인자를 먼저 고정시켜놓고 나머지 c, d 인자에 대한 함수 g.. 2022. 7. 15. 파이썬(Python) 내장 함수 iter 사용법 (feat. next) 이번 포스팅에서는 파이썬(Python) 내장 함수인 iter 함수의 사용법을 알아보려고 한다. 1. iter 함수 사용법 iter 함수는 순회 가능한(Iterable) 객체를 받아서 Iterator로 바꿔준다. 또한 특정값(Sentinel)을 지정하여 더 이상 값을 꺼내지 않도록 설정할 수도 있는데 이때에는 첫 번째 인자로 순회 가능한 객체가 아닌 호출 가능한(Callable) 함수를 넣는다. 구체적인 사용법은 다음과 같다. iter( '순회가능한 객체' ) iter( '호출 가능한 객체', '반복 감시자' ) 2. iter 함수 예제 사용법을 알았으니 실제로 써보자. a. 첫 번째 사용법 다음은 리스트를 iterator 객체로 바꿔준다. iterator는 그 자체로 출력할 순 없고 for 문이나 lis.. 2022. 7. 14. 파이썬(Python) 내장함수 filter를 이용하여 리스트에서 특정 조건을 만족하는 원소 추출하기 오늘은 파이썬(Python) 내장 함수인 filter의 사용법을 알아보려고 한다. filter는 기본적으로 리스트에서 특정 조건을 만족하는 원소들만 추출하고 싶을 때 사용하는 함수다. filter 사용법 filter 함수는 첫 번째 인자로 조건을 나타내는 함수를 넣어준다. 조건을 나타내는 함수란 리턴값이 True 또는 False여야 한다는 것이다. 그리고 두 번째 인자로 추출하고 싶은 리스트를 넣어준다. filter( '조건 함수', '리스트 또는 Iterable 가능한 객체' ) filter 예제 여기서는 문자열 원소를 갖는 리스트에서 특정 문자로 시작하는 원소를 filter를 이용하여 추출해보고자 한다. 예를들어 문자열 리스트에서 'A'로 시작하는 문자열만 뽑는다고 한다면 다음과 같이 해준다. fil.. 2022. 7. 12. 22. 로지스틱 회귀(Logistic Regression)에 대해서 알아보자. 이번 포스팅에서는 로지스틱 회귀에 대한 개념과 적합 알고리즘에 대해서 소개한다. - 목차 - 1. 로지스틱 회귀(Logistic Regression)란 무엇인가? 2. 로지스틱 회귀 적합 알고리즘 3. 장단점 본 포스팅에서는 수식을 포함하고 있습니다. 티스토리 피드에서는 수식이 제대로 표시되지 않을 수 있으니 PC 웹 브라우저 또는 모바일 웹 브라우저에서 보시기 바랍니다. 1. 로지스틱 회귀(Logistic Regression)란 무엇인가? 로지스틱 회귀는 분류 문제에서 활용되는 회귀 모형이며 그 정의는 다음과 같다. 로지스틱 회귀는 출력 변수의 조건부 확률을 Softmax 함수를 이용하여 모델링한 것이다. 이 말의 뜻을 살펴보자. a. Softmax 함수란 무엇인가? Softmax 함수는 $K$범주 분.. 2022. 7. 3. 21. XGBoost에 대해서 알아보자 이번 포스팅에서는 부스팅 계열에 떠오르는 샛별 XGBoost에 대해서 알아보려고 한다. 여기에서는 XGBoost의 개념, 알고리즘 동작 원리를 예제와 함께 알아보고자 한다. - 목차 - 1. XGBoost란 무엇인가? 2. XGBoost 알고리즘 3. 장단점 및 고려 사항 XGBoost는 Gradient Boosting 알고리즘을 알아야 이해하기 쉽다. 아래 포스팅에 Gradient Boosting에 대한 설명을 해놓았으니 먼저 읽고 오기 바란다. 20. Gradient Boosting 알고리즘에 대해서 알아보자 with Python 20. Gradient Boosting 알고리즘에 대해서 알아보자 with Python 이번 포스팅에서는 Gradient Boosting의 개념과 알고리즘을 소개하며 이를 .. 2022. 6. 26. XGBoost : A Scalable Tree Boosting System 이번 포스팅에서는 Boosting 계의 정점이라고 할 수 있는 XGBoost를 소개한 논문인 "A Scalable Tree Boosting System"을 읽고 정리해보려고 한다. - 목차 - 1. Introduction 2. Tree Boosting In A Nutshell 3. Split Finding Algorithms 4. System Design 5. Related Works 6. End to End Evaluation 7. Conclusion 1. Introduction 머신 러닝은 많은 분야에서 중요한 도구로써 활약하고 있다. 그 이유는 2가지가 있다. 첫 번째는 복잡한 패턴을 학습하는 효율적인 모형의 사용, 두 번째는 대용량 데이터에 대해서도 학습이 가능하도록 하는 확장성이다. 머신러닝 방.. 2022. 6. 24. [Scikit-Learn] 8. 나이브 베이즈(Naive Bayes) 분류기 학습하기(feat. GaussianNB, CategoricalNB, MultinomialNB) 이번 포스팅에서는 Scikit-Learn에서 나이브 베이즈 분류기(Naive Bayes Classifier)를 학습하는 방법에 대해서 알아본다. 나이브 베이즈 분류기(Naive Bayes Classifier)는 설명 변수가 범주형, 빈도수 그리고 연속형인지에 따라 다른 방법으로 학습한다. 각각 살펴보자. 1. 범주형 변수(CategoricalNB) 2. 빈도수(MultinomialNB) 3. 연속형 변수(GaussianNB) 나이브 베이즈 분류기(Naive Bayes Classifier)에 대한 개념은 아래 포스팅에 소개해놓았니 관심 있는 분들은 보시기 바란다. [머신 러닝] 4. 나이브 베이즈 분류기(Naive Bayes Classifier) with Python [머신 러닝] 4. 나이브 베이즈 분류.. 2022. 6. 18. [Scikit-Learn] 7. Gradient Boosting 모형 만들기(feat. GradientBoostingClassifier, GradientBoostingRegressor) Scikit-Learn(sklearn)에서는 GradientBoostingClassifier, GradientBoostingRegressor를 이용하여 Gradient Boosting 예측 모형을 학습할 수 있다. Gradient Boosting은 분류와 회귀 문제 모두 적용할 수 있는데 이에 대해서 각각 알아본다. 1. 분류 문제(GradientBoostingClassifier) 2. 회귀 문제(GradientBoostingRegressor) Gradient Boosting에 대한 개념과 Scikit-Learn에서 의사결정나무를 학습하는 방법을 아래 포스팅에서 소개해놓았다. 읽고 오면 좋다. 20. Gradient Boosting 알고리즘에 대해서 알아보자 with Python 20. Gradient .. 2022. 6. 18. 이전 1 ··· 28 29 30 31 32 33 34 ··· 53 다음