Book Review/[혼공머신] 리뷰12 순환 신경망(RNN)의 개념 RNN이란 순환 신경망을 일컫는 말로, recurent neural network의 약자입니다. 순환 신경망은 순차 데이터, 시계열 데이터를 이용하는 인공 신경망의 한 유형입니다. 이미지 데이터를 다루는 인공 신경망은 CNN인 것 처럼요! CNN는 이미지 데이터를 다루는 딥러닝 알고리즘으로 이미지 분류, 분할, 탐지 등 다양한 분야에서 쓰이지만, 반면 RNN은 순차 데이터를 다뤄 언어 변환, 자연어 처리, 음성 인식 등의 분야에 쓰입니다. CNN이 인간의 눈과 같은 역할이면, RNN은 인간의 뇌와 같은 역할을 한다고 볼 수 있습니다. 이번 포스팅에서는 RNN의 개념과 관련된 내용에 대해 알아보겠습니다. 1. 순차 데이터 앞서 말씀드린 것 처럼 RNN은 순차 데이터 혹은 시계열 데이터를 학습하는 딥러닝 알.. 2023. 5. 10. K-Means clustering 이번 포스팅에서는 비지도 학습의 대표적인 clustering 알고리즘인 K-Means clustering에 대해 알아보도록 하겠습니다. 들어가기에 앞서 비지도 학습(unsupervised learning)에 대해 알 필요가 있습니다. 해당 포스트의 초반 부분을 참고해주세요! https://sanmldl.tistory.com/9?category=976947 데이터 전처리 with python (1) 이번 포스트에서는 파이썬을 활용하여 데이터 전처리 하는 방식에 대해 혼공머신 예제를 통해 알아보도록 하겠습니다. 1. 지도학습(supervised learning)이란? 들어가기에 앞서, 지도학습(supervised learn sanmldl.tistory.com 간략하게 말하면, 비지도학습은 지도학습과는 다르게.. 2023. 1. 31. GBM기반 앙상블: XGboost, LightGBM 앞선 포스팅에서 결정 트리 기반의 앙상블 기법에 대해 배웠습니다. 이번 포스팅에서는 그 중 GBM(그레이디언트 부스팅 머신러닝)기반의 XGboost, LightGBM에 대해 간략히 알아보겠습니다. 1. XGboost XGboost는 그레이디언트 부스팅 프레임 워크를 기반의 결정 트리를 학습하는 머신러닝 알고리즘 입니다. 비정형 데이터(ex. text, image 등)에 대해서는 딥러닝 기반의 인공 신경망이 큰 효과를 보이지만, 정형 데이터에 대해서는 결정 트리 기반의 알고리즘이 가장 강력합니다. 결정 트리 알고리즘의 발전은 다음과 같습니다. 일반적인 Gradient Boosting과 경사 하강법을 사용한다는 점은 공통점입니다. 하지만 XGboost는 시스템을 최적화하고 알고리즘을 향상시켜 기존의 Grad.. 2023. 1. 16. 트리 앙상블 앙상블 기법 중 트리 앙상블에 대해 공부하고 해당 내용을 리뷰해보겠습니다! -앙상블 학습 머신러닝의 다양한 알고리즘 중 가장 강력한 알고리즘은 무엇일까요? 어떠한 데이터를 다루는지, 문제를 다루는 지에 따라 차이가 있겠지만 일반적으로 앙상블 알고리즘이 가장 강력할 것 입니다. 앙상블 학습(Ensemble learning)이란, 여러개의 모델 분류기를 생성하고, 그 예측을 결합하여 결과를 예측하는 머신러닝 기법입니다. 즉, 여러 모델을 결합하여 하나의 강력한 모델로서 더 나은 결과를 예측하는 것입니다. 앙상블 학습은 특히 정형 데이터가 주어졌을 때 매우 강력한 힘을 발휘합니다. 이번 포스팅에서는 사이킷런에서 제공하는 결정 트리 기반의 앙상블 학습을 알아보겠습니다. 1. 랜덤 포레스트(Random Fores.. 2023. 1. 16. 트리 알고리즘: 결정 트리 이번 포스팅에서는 혼공머신이 결정 트리 알고리즘에 대해 설명한 내용을 리뷰해보도록 하겠습니다. 결정 트리(Decision Tree)는 머신러닝에서 쉽지만 성능이 좋은 알고리즘 중 하나입니다. 노드와 엣지로 구성된 트리 형식입니다. 맨 위의 노드를 루트 노드(root node)라고 하고, 맨 아래 달린 노드를 리프 노드(leaf node)라고 합니다. 각 노드를 엣지로 연결하여 구성됩니다. 결정 트리에서 각 노드는 훈련 데이터의 특성에 대한 테스트를 표현합니다. 예를 들면 키가 170보다 크다 or 작다로 키에 대한 테스트를 표현하는 것입니다. 이 때 테스트 결과를 True or False로 나타내며 일반적으로 하나의 노드는 두 개의 결과(가지,Branch)를 가집니다. 그 구조를 전체적으로 살피면 Flo.. 2023. 1. 10. 확률적 경사 하강법 지금까지 살펴본 머신러닝의 흐름은 다음과 같습니다. 데이터를 준비하여 데이터를 학습시키면 모델이 완성되고, 그 모델로 예측을 진행하는 형식입니다. 그렇다면 데이터가 적으면 학습된 모델의 성능이 좋지 않을 것입니다. 또한 데이터가 너무 많으면 데이터를 유지하는 비용이 많이 들어 비효율적일 것입니다. 이를 해결하기 위해서 나온 개념이 점진적 학습(온라인 학습)의 개념입니다. 이전의 방식은 오프라인 방식으로 파란색 부분을 제외한 부분입니다. 점진적 학습은 파란색 부분으로 학습이 이뤄집니다. 즉, 훈련한 모델을 가지고 새로운 데이터에 대해서만 조금씩 더 훈련하는 것이라고 생각하면 됩니다. -확률적 경사 하강법 점진적 학습의 가장 대표적인 알고리즘은 확률적 경사 하강법(stochastic gradient desc.. 2023. 1. 4. 로지스틱 회귀 이번 포스팅에서는 로지스틱 회귀에 대해 혼공머신이 설명한 내용을 리뷰하도록 하겠습니다. - Logistic regression(로지스틱 회귀) 로지스틱 회귀는 선형 회귀와 동일하게 선형 방정식을 학습합니다. 가령 식으로 표현하면, z = a * w + b * L + c * D + e와 같습니다. 여기서 a, b, c는 각 가중치 혹은 계수가 되고 e는 편차 혹은 절편으로 상수값이 됩니다. 이 식은 다중 회귀의 선형 방정식과 같다고 볼 수 있습니다. 이때 z값을 확률로써 표현하기 위해 시그모이드 함수를 사용합니다. 식과 그래프는 다음과 같습니다. 선형 방정식의 출력 z의 음수를 사용하여 자연 상수 거듭제곱하여 1을 더한 값의 역수를 취합니다. 이 함수 식은 딥러닝의 활성화 함수로도 자주 사용되니 알아두면 .. 2023. 1. 4. 다중회귀 & 릿지, 라쏘회귀 이전 포스팅에서 선형 회귀에 대해 알아보았습니다. 이번 포스팅에서는 다중 회귀와 릿지, 라쏘 회귀를 알아보겠습니다. 이전 포스팅에서의 선형 회귀는 하나의 특성(feature)를 사용하여 모델에 학습시켰습니다. 하나의 특성만을 통해 회귀 모델을 만들어내는 것은 과소적합의 문제가 발생할 수 있습니다. 즉, 모델이 적절하게 학습하지 못한 것을 의미합니다. 이를 해결하기 위한 하나의 방법으로 다중회귀가 있습니다. 1. 다중 회귀 다중회귀는 여러 개의 특성을 사용한 선형 회귀를 의미합니다. 특성이 하나면 직선을 학습하고, 특성이 두개면 평면을 학습합니다. 그림1을 보면 더욱 쉽게 이해할 수 있습니다. 오른쪽 그림처럼 특성이 2개이면 타깃값을 기준으로 3차원 공간을 형성하고 선형 회귀 방정식은 직선이 아닌 평면이 .. 2022. 12. 8. 기본적인 회귀 알고리즘: 선형회귀, 다항회귀 앞선 포스팅에서 지도학습이 무엇인지 확인했습니다. 지도학습에는 대표적으로 회귀, 분류와 같은 문제에 적용되어 해결책을 제시해줍니다. 그렇다면 회귀에는 어떠한 종류가 있을까요? 다양한 종류가 있지만 이번 포스팅에서는 이해하기 쉽고, 기본이 되는 선형회귀와 다항회귀에 대해 알아보겠습니다. 1.선형회귀 우선, 선형회귀는 말 그대로 선형의 형태의 학습 알고리즘으로 값을 예측하는 것입니다. 즉, 선형회귀는 특성과 타깃 사이의 관계를 가장 잘 나타내는 선형 방정식을 찾는 것을 의미합니다. 일차 방정식의 형태는 특성이 하나인 경우에 적합합니다. 일차 방정식의 직선은 하나의 특성을 잘 표현하는 형태로 나타나야 학습도 잘 이뤄졌다고 할 수 있겠습니다. 수학시간에 배운 일차방정식을 생각해보세요. y = ax + b 꼴의 .. 2022. 12. 7. 이전 1 2 다음