목록Statistics & AI (48)
Stats & AI tech blog - '일단 시도함'
이번 포스팅에서는 머신러닝 분류 알고리즘 중 하나인 서포트 벡터 머신(SVM)에 대해 알아보려고 한다.SVM은 Decision Tree나 인공신경망과 함께 자주 사용되는 분류 기법이며, 특히 이진 데이터(binary data) 분류 문제에서 좋은 성능을 보이는 것으로 알려져 있다. 1. 서포트 벡터 머신 (SVM)SVM은 데이터를 분류하는 결정 경계(Decision Boundary)을 정의해서 초평면(hyperplane)을 선택하는 알고리즘이다.SVM에 사용되는 몇 가지 개념을 알아보자. 1.1 결정 경계 (Decision Boundary) / 초평면 (Hyperplane)왼쪽 그림처럼 분류할 집단을 구분하는 속성이 2차원인 경우에는 선(line)으로 두 집단을 구분할 수 있다. 이렇게 집단을 구분하는..
이번 포스팅에서는 통계학에서 중요한 개념인 편향(bias)과 분산(variance)에 대해 알아보고자 한다. 1. 편향과 분산편향이란, 추정 결과가 한쪽으로 치우쳐있는 경향을 말한다.머신러닝에서는 편향을 통해 예측값들이 정답에서 얼마나 멀리 떨어져 있는지를 나타낼 수 있다. 분산이란, 데이터들이 흩어져있는 정도를 의미한다.머신러닝에서는 분산을 통해 어떤 포인트에 대한 모델 예측 결과의 가변성을 나타낸다. 위쪽 첫 번째 과녁은 모든 결과가 원점에 가깝게 모여져 있다. 이런 경우는 낮은 편향, 낮은 분산을 가진다.위쪽 두 번째 그림은 모든 결과가 원점 중심으로 퍼져있다. 이런 경우는 낮은 편향을 가지지만 상대적으로 높은 분산을 가진다. 아래쪽 첫 번째 그림은 모든 결과가 원점에서 떨어진 거리에 가깝게 모여..
Ensemble (앙상블 기법) 이번 포스팅에서는 분류 예측 문제를 다룰 때 자주 사용되는 앙상블 기법에 대해 알아보고자 한다.앙상블 기법이 무엇인지 개념을 알아보고, 어떤 종류가 있는지 알아보도록 하겠다. 1. 앙상블 기법이란?여러 개의 분류 모델을 결합해서 최적의 모델을 만드는 방법을 앙상블 기법이라고 한다. 여러 모델을 결합한 앙상블 모델은 단일 모델보다 더 뛰어난 성능을 보이고, 보다 일반화(generalized)된 모델이기 때문에 과적합(overfitting) 문제를 감소시킨다는 장점이 있다. 이론적으로는 M개의 독립적인 단일 모델을 결합한 앙상블 모델의 오류가 M개 모델 평균 오류의 1/M 수준으로 감소하는데, 현실적으로는 독립성 가정이 지켜지지 않는 경우가 많기 때문에, 앙상블 모델의..
GAN, Generative Adversarial Network (적대적 생성 신경망) 적대적 생성 신경망 (GAN)은 영상, 음성, 자연어 등을 생성하는 생성 모델 분야에서 엄청난 성과를 보여주고 있는 신경망 구조이다. GAN 모델은 단순한 영상 생성 뿐만 아니라, denoising, segmentation 등에도 활용할 수 있다. 이번 포스팅에서는 먼저 생성 모델 (generative model)이 왜 중요한지 알아보고, 적대적 (adversarial) 학습 방법이 무엇인지를 살펴보도록 하겠다. 1. 생성 모델 (Generative Model) 사진 자료를 통해 개와 고양이를 분류하는 문제를 풀고 있다고 생각해보자.이 문제를 해결하려면 앞서 배웠던 컨볼루션 신경망(CNN) 기법을 사용해서 사진의..
LSTM, Long Short Term Memory (장단기 기억 신경망) 이전 포스팅에서 알아봤던 순환신경망(RNN)은 시계열 데이터를 다루는데 특화된 모델이지만 단점이 존재한다.시계열의 시점이 길어질수록 기울기 소실 문제에 취약해진다는 것인데, 이런 경우 시점의 간격이 클수록 앞의 정보가 이후 시점으로 충분히 전달되지 않을 수 있다. 이런 순환신경망의 단점을 보완하기 위해 제시된 신경망이 장단기 기억 신경망(LSTM) 이다.LSTM은 순환신경망의 한 종류로, 정보의 기억과 망각을 적절히 제어할 수 있도록 cell의 구조를 변형한 신경망이다. 1. LSTM의 Gate 먼저 일반적인 순환신경망의 문제가 왜 발생하는지 알아보겠다. 첫 번째 시점의 input(x1)으로 파란 물감을 입력하고 이후 두 번..
1. 시계열 자료 (Time Series Data) 데이터가 어느 한 시점에서 획득된 것이 아니라 시간 순서에 따라 획득되어진 자료로 심전도나 기상 관측 자료, 주가 차트 등의 데이터를 시계열 데이터라고 한다. 시계열 데이터의 정의를 조금 확장하면 정적인 데이터도 시계열의 범주에서 다룰 수 있는데, 예를 들어 단일 흉부 촬영 영상은 정적 데이터지만 추적 관찰을 통해 연속 촬영된 흉부 촬영 영상의 집합은 시계열 데이터로 간주할 수 있다. 이 밖에도 유전체 배열은 시간이 아니라 공간적인 선후 관계를 가지지만 시계열 특성으로 간주할 수 있고, 단어의 순서로 이루어진 문장이나 음성 대화 같은 자연어 데이터도 대표적인 시계열 데이터에 속한다고 볼 수 있다. 시계열 데이터는 아래 3가지 특성을 가진다.시간 의존성 ..
1. 혼합 정밀도 훈련(Mixed Precision Training)이란? 딥러닝에서는 일반적으로 신경망의 크기가 커질 수록 성능이 향상되는 특징을 가진다. 반면에, 모델이 복잡해질수록 메모리와 컴퓨팅에 대한 문제가 발생하게 된다.혼합 정밀도 훈련(Mixed Precision Training)은 모델의 정확도와 파라미터에 영향을 끼치지 않고, 메모리 요구사항을 줄이고 GPU에서 산술 속도를 높일 수 있는 신경망 훈련 방법이다. 혼합정밀도 훈련은 모델 학습 과정에서 부동 소수점 연산의 정밀도를 혼합하여 사용하는데, 일반적으로는 반 정밀도(16비트 부동 소수점, FP16)와 단 정밀도(32비트 부동 소수점, FP32)를 혼합하여 사용한다. 일반적으로 딥러닝에서는 FP32연산이 사용되는데, FP32연산은 메모..
머신러닝 딥러닝 관련 최신 연구 동향과 모델을 파악하기 위한 방법/사이트들을 정리해 보았다. 논문주요 학술 지식 웹사이트인 arXiv나 IEEE Xplore와 같은 플랫폼에서 모델의 성능과 특징에 대한 정보를 담은 논문을 찾아볼 수 있다.arXiv : https://arxiv.org/IEEE Xplore : https://ieeexplore.ieee.org/Xplore/home.jsp 컴퓨터 비전 컨퍼런스컴퓨터 비전 분야의 주요 컨퍼런스인 CVPR(Computer Vision and Pattern Recognition), ICCV(International Conference on Computer Vision), ECCV(European Conference on Computer Vision) 등에서 발표된..
다층 퍼셉트론(MLP), 심층신경망(DNN)에 이어 이번 포스팅에서는 컨볼루션 신경망(CNN)에 대해 알아보고자 한다. 1. 컨볼루션 신경망 (Convolution Neural Network) 이란? CNN은 영상 자료로부터 패턴인식을 하는데 이용되는 end-to-end 방식의 딥러닝 기법이다. end-to-end 방식이란 feature 추출부터 분류까지 전체적인 과정을 하나의 모델로 수행 가능한 알고리즘을 뜻하는데,CNN 이전에 사용하던 영상 분류 알고리즘에는 사람이 직접 feature를 선택하는 hand-crafted feature 추출 과정이 포함되어 있었다. 이러한 방법은 얼마나 좋은 feature를 선택하냐에 따라 성능이 크게 좌우된다는 단점이 존재했고, hand-crafted feature..
2024.04.02 - [Data Science/Deep Learning] - [ML/DL] DNN, Deep Neural Network (심층신경망) (2) - 차원의 저주 (Curse of dimensionality) [ML/DL] DNN, Deep Neural Network (심층신경망) (2) - 차원의 저주 (Curse of dimensionality)DNN, Deep Neural Network (심층신경망) (2) - 차원의 저주 (Curse of dimensionality) 2024.04.02 - [Deep Learning] - [DL] DNN, Deep Neural Network (심층신경망) (1) - 기울기 소실 (Vanishing gradient) [DL] DNN, Deep Neu..