본문 바로가기
Chapter 4-7. GAN(Generative Adversarial Networks) 2023년 HOT 키워드는 GPT와 같은 대규모 생성형 AI였다. 이번 장에서는 기본적인 생성형 AI에 대해 이해하고 시계열 데이터에서 생성형 AI가 어떻게 이용되는지 알아보고자 한다. GAN(Generative Adversarial Networks)이란? 오토인코더와 유사한 비지도 학습기법으로 GAN(Generative Adversarial Networks) 알고리즘이 있다. GAN은 생성자와 판별자라는 두 개의 신경망으로 구성된다. 생성자는 랜덤한 분포를 입력받아 실제와 유사한 데이터를 출력한다. 그러면 판별자는 생성자에서 얻은 가짜 데이터와 훈련 데이터에서 추출한 진짜 데이터를 입력받아 해당 데이터가 진짜인지 가짜인지 구별해낸다. 해당 과정을 반복하면 생성자는 점점 실제와 유사한 데이터를 만들어내고.. 2024. 2. 29.
Chapter 4-6. AutoEncoder(2) 다양한 AutoEncoder 지난 챕터에서는 오토인코더의 개념과 가장 기본적인 형태인 적층형 오토인코더에 대해 알아보았다. 이 외에도 다양한 형태의 오토인코더가 존재한다. 이번 장에서는 몇 가지 인기있는 오토인코더에 대해 다루어본다. Robust 오토인코더 Robust 오토인코더는 Robust PCA와 오토인코더가 결합된 오토인코더이다. 오토인코더는 이상이 포함된 데이터를 포함하여 학습시킬 경우 이상의 형태까지 학습될 수 있다. Robust 오토인코더는 이러한 문제점을 해결하기 위해 제안되었다. Robust 오토인코더를 이해하기 위해 먼저 Robust PCA에 대해 알아보자. 기존 PCA 방법은 이상치에 매우 민감하였다. 아래의 그림을 보자. 그림에서 파란 데이터는 정상 데이터를 붉은 데이터는 이상치를 .. 2024. 1. 25.
Chapter 4-5. AutoEncoder 오토인코더란? 오토인코더는 데이터의 압축을 통해 특성을 학습하는 비지도 방법의 인공 신경망이다. 오토 인코더의 목적은 고차원 데이터를 저차원으로 압축하여 데이터의 중요한 특성을 찾는 것이다. 오토인코더는 3가지 부분으로 이루어진다. 먼저, 인코더는 입력 데이터를 작은 차원으로 압축하는 부분이다. 이어지는 바틀넥 부분은 압축된 정보를 담고 있는 영역으로 오토인코더 알고리즘의 핵심에 해당한다. 이 부분을 잠재(latent) 영역, 혹은 코딩(coding) 영역이라고도 부른다. 마지막 디코더 부분은 압축되었던 데이터를 다시 입력형태와 동일하도록 변형하는 부분이다. 신경망의 핵심인 바틀넥 부분에 대해 조금 더 이야기하겠다. 바틀넥은 통과하는 정보의 양을 제한하기 위해 존재한다. 아키텍처를 보면 바틀넥의 크기가 .. 2023. 12. 27.
Chapter 4-4. Seq2Seq Seq2Seq란? Seq2Seq, 즉 Sequence-to-Sequence는 인코더-디코더 형태의 구조로 이루어져 있어 sequence 형태의 데이터를 처리하는 모델이다. 인코더 : 입력 시퀀스로부터 정보를 압축하여 고정된 크기의 문맥 벡터로 변환하는 역할 디코더 : 인코더가 전달한 문맥 벡터를 기반으로 출력 시퀀스를 순차적으로 생성하는 역할 그래서 Seq2Seq는 기존의 단순히 LSTM, GRU로만 구성된 모델들에 비해 sequence 데이터를 처리하는 데에 있어 대부분 더 좋은 성능을 발휘하게 된다. Seq2Seq 구조의 종류 Seq2Seq의 구조는 모델 각각의 입 / 출력 형태에 따라 다양한 종류로 나뉘게 된다. one-to-many : vector 형태의 데이터를 입력하여 sequence 형태의 .. 2023. 11. 30.
Chapter 4-3. RNN Chapter 4-3. RNN RNN 우리가 다루는 데이터에는 서로 독립적이지 않고 연관되어 있는 경우가 많다. 예를 들어, 날씨 정보에서 현재 비가 오고 있다면 5분 후에 날씨도 비가 올 것이라고 예측할 수 있다. 또한 이미지 데이터나 문장처럼 데이터의 위치와 순서가 중요한 데이터도 있다. 예를 들어, 이미지 데이터에서 픽셀 단위로 이루어진 고양이 이미지를 순서와 상관없이 혼합해버리면 해당 이미지를 고양이로 이해하기 어려울 것이다. 추가로 문장 데이터를 예로 들면 “나는 구글에서 일한다”라는 문장과 “나는 일할 때 구글을 사용한다”의 문장에서 구글이란 단어는 문자는 같지만 문맥상 다른 의미를 갖는다. 이처럼 시간의 영향을 받거나 위치나 순서가 중요한 데이터를 일반적으로 순차 데이터(sequential .. 2023. 10. 26.
Chapter 4-2. 기초 베이지안 통계 Chapter 4-2. 기초 베이지안 통계 베이지안 통계학은 딥 러닝의 여러 분야에서 사용된다. 대표적인 분야가 바로 생성 모델이다. 이번 챕터에서는 베이지안 통계학의 기본 개념과 간단한 예제를 통해 베이지안 통계학이 어떻게 동작하는지 살펴보자. Frequentist와 Bayesian 통계학을 배우는 목적은 여러 가지가 있는데, 그 중 하나는 확률분포를 결정하는 모수(unknown parameter)를 추정하는 것이다. 모수(unknown parameter)를 과학적으로 추정하려고 시도한 결과, 모수를 바라보는 여러 관점들이 나타났다. 그 중 두 가지가 바로 빈도론자(Frequentist)와 베이지안(Bayesian)이다. 대표적인 통계적 실험인 동전 던지기로 빈도론자와 베이지안의 차이를 이해해보자. 우.. 2023. 9. 21.
Chapter 4. 신경망과 딥러닝 Chapter 4. 신경망과 딥러닝 앞서 Chapter 3에서 머신 러닝이 무엇인지 살펴보았다. 이번 챕터에서는 딥 러닝의 정의가 무엇인지에서 시작하여 딥 러닝에 대해 심층적으로 알아보고자 한다. 딥 러닝이란 무엇인가? 딥 러닝은 머신 러닝에 포함된 하위 개념으로 머신 러닝이 알고리즘을 이용해서 데이터를 분석하고, 분석을 통해 학습하여 그것을 기반으로 하여 판단이나 예측을 하는 것인 반면 딥 러닝은 더 나아가 컴퓨터가 사람처럼 인식하고 학습할 수 있는 것을 말한다. 이러한 딥 러닝 알고리즘은 XAIOps의 장단기 부하예측에서 사용하고 있다. 딥 러닝이 무엇인가 알기 위해서는 인공 신경망을 먼저 알아야한다. 인공 신경망은 뇌에 있는 생물학적 뉴런의 네트워크에서 영감을 받은 머신 러닝 모델이다. 뉴런의 구조.. 2023. 8. 31.
Chapter 3-8. 비지도 학습 Chapter 3-8. 비지도 학습 대부분의 흔히 알고있는 머신러닝 알고리즘은 지도 학습 기반의 알고리즘입니다. 이는 이전 챕터들에서도 소개되었지만, 데이터에 정답(레이블)이 알고 있는 상태로 학습을 하는 방식입니다. 본 챕터에서는 지도 학습과 상반되는 비지도 학습이 무엇이며, 왜 필요한지 그리고 어떤 문제에 적용하여 사용할 수 있는지에 대해 알아보겠습니다. 현실 세계에서 우리가 다룰수 있는 대부분의 데이터들은 정답(레이블)이 없는 데이터입니다. 그렇다면 어떻게 대부분의 지도 학습에 적용될 수 있었을까요? 이는 사람이 직접 데이터에서 라벨링 처리 과정을 수행했기 때문입니다. 이는 굉장히 비효율적이고 사람이 직접 수행하다보니 실수도 발생할 수 있고 또 많은 비용들이 발생하게 됩니다. 그렇기때문에 라벨링 처.. 2023. 7. 26.
Chapter 3-7. GAM 이론 및 실습 Chapter 3-7. GAM 이론 및 실습 일반적인 선형 회귀분석은 모형의 단순성으로 인해 해석과 추론이 쉽다는 장점이 있으나 예측력이라는 중요한 부분에서 한계를 가진다. 선형모형은 회귀 문제에서 독립변수와 예측변수가 선형적 관계가 있다고 가정한다. 이러한 가정이 맞는 경우도 있지만 부정확한 경우도 얼마든지 존재한다. 일반화 가법 모형(Generalized Additive Model)은 선형 가정을 완화시키는 가장 강력한 추론 방법이다. 일반화 가법 모형과 선형회귀 모형의 차이를 간단한 예제를 통해 설명하겠다. R MASS 패키지에 포함되어 있는 mcycle 데이터는 모터사이클 사고 모의실험을 통해 머리의 가속과 감속을 측정한 자료이다. 해당 데이터에서 times 필드는 충돌 후 시간(millsecon.. 2023. 6. 29.