1️⃣ LSTM (Long Short Term Memory) ▶ LSTM 이란? Long Short Term Memory = 장단기 메모리 → 장기 의존성과 단기 의존성을 모두 기억할 수 있다는 의미 - Vanilla RNN의 기울기 소실 문제를 해결하고자 등장했다. - 새로 계산된 hidden state를 출력값으로도 사용한다. - Vanilla RNN과 내부 연산 방식만 다르고 입력값, 출력값은 Vanilla RNN처럼 사용할 수 있다. (Vanilla RNN을 사용한 부분의 모델을 LSTM으로 바꿔서 사용 가능) 💡 RNN의 장기 의존성 문제 RNN은 시계열 데이터와 같은 순차 데이터의 경향성을 학습하는 데 훌륭한 성능을 제공한다. 하지만 모델 학습에 사용하는 데이터의 길이(sequence)가 길어..
1️⃣ 한국어 자연어 처리 ▶ 자연어 처리의 기본 요소 - 자연어 처리의 기본은 단어 추출에서 시작 - 텍스트의 단어를 통해 문장의 의미, 구성 요소 및 특징을 파악 가능 ▶ 한국어에서의 단어 - 한국어에서 단어의 기준은 명확하지 않다. - 교착어인 한국어에서 단어는 의미적 기능을 하는 부분과 문법적인 기능을 하는 부분의 조합으로 구성된다. → 한국어 자연어 처리에서는 단어의 의미적 기능과 문법적인 기능을 구분하는 것이 중요 2️⃣ KoNLPy ▶ 형태소 분석 형태소 분석이란 ? : 주어진 한국어 텍스트를 단어의 원형 형태로 분리해 주는 작업 ▶ KoNLPy : 여러 한국어 형태소 사전을 기반으로 한국어 단어를 추출해 주는 파이썬 라이브러리 - 각 형태소 사전별 형태소 표기 방법 및 기준의 차이가 존재한..
1️⃣ 모델 저장하고 불러오기 ▶ 모델의 구성요소 1) 모델의 구조 - 레이어의 종류와 형태 - 입력 값의 형태 2) 가중치 값 - 각 레이어의 행렬에 저장된 실제 float32 실수 값들 - 모델의 학습 = Loss값이 낮아지도록 가중치의 값을 수정하는 과정의 연속 (학습된 가중치가 있다면 직접 학습할 필요없이 사용 가능) - 같은 모델도 가중치 값에 따라 성능이 달라짐 3) Compile 정보 - Optimizer의 종류, Learning Rate(lr), 사용한 Loss Function 정보 - 모델을 학습시키기 위한 정보들 (모델을 학습시키지 않고 사용만 할 목적이라면 위 정보들은 Compile 정보는 필요 없음) ▶ 모델의 저장 형식 1) H5 Format - 과거 Keras에서 사용하던 저장 ..
1️⃣ 순차 데이터란? ▶ RNN과 순차 데이터 - RNN(Recurrent Neural Network)은 CNN과 함께 대표적인 딥러닝 모델 - 시계열 데이터 같은 순차 데이터(Sequential Data) 처리를 위한 모델 RNN의 이해에는 순차 데이터가 가지는 특징의 이해가 필요하다. 순차 데이터 - 순서(Order)를 가지고 나타나는 데이터 - 데이터 내 각 개체 간의 순서가 중요 - 날짜에 따른 기온 데이터나 단어들로 이루어진 문장 등 순차 데이터 종류 1) 시계열 데이터 (Time-Series Data) - 일정한 시간 간격을 가지고 얻어낸 데이터 ex) 연도별 대한민국의 평균 기온, 시간별 주식 가격 기록 등 2) 자연어 데이터 (Natural Language) - 인류가 말하는 언어를 의미..
1️⃣ 자연어 처리 ▶ 자연어 처리 란? 자연어 처리(Natural Language Processing, NLP)는 컴퓨터를 통해 인간의 언어를 분석 및 처리하는 인공지능의 한 분야 자연어 처리의 적용 사례 문서분류, 키워드 추출, 감정 분석, ... 학습 가능한 데이터양의 증가 및 연산 처리 속도의 발전으로 자연어 처리 또한 더욱 복잡한 머신러닝 알고리즘 적용 가능 → 자연어 처리 + 머신러닝 머신러닝 기반 자연어 처리의 적용 사례 문서 요약, 기계 번역, 챗봇, ... 2️⃣ 텍스트 전처리 ▶ 모델링을 위한 데이터 탐색 및 전처리 데이터 전처리를 하는 이유 → 모델이 좀 더 효과적이고 효율적으로 작동하기 위해 → GIGO (Garbage In, Garbage Out) 데이터 탐색 - 데이터 통계치 e..
1️⃣ 이미지와 Convolution 연산 ▶ Fully-connected Layer와 이미지 데이터 FC Layer는 1차원 데이터를 요구한다. 이미지를 단순하게 1차원으로 바꾸면 2차원 상에서 가지는 정보를 포기해야한다. - 이미지 내 사물 간의 거리 관계 등 - 색의 변화 (특히, 세로로 변하는 상황) → 즉, 공간 정보(Spatial Information)가 무너진다. 따라서, 이미지 처리에 특화된 딥러닝 모델이 등장 : Convolutional Neural Network CNN의 대표적인 구성 요소 - Convolutional Layer - Pooling Layer - 분류기(Classifier): Fully-connected layer ▶ Convolution 연산 : CNN을 구현하는 핵심 ..
1️⃣ 이미지 데이터란? ▶ CNN과 이미지 데이터 - CNN은 대표적인 딥러닝 모델 - 이미지 분석 작업에 최적화된 성능을 보인다. (CNN이 이미지 분류만을 하기 위한 모델은 아니지만 분류를 잘 하기 위한 방향으로 발전된 모델이다) - CNN이 이미지 데이터를 잘 학습하는 원리를 알기 위해서 이미지 데이터를 이해할 필요가 있다. 이미지 데이터 - 사진, 그림 등을 컴퓨터로 저장한 데이터 - JPG, PNG 등 픽셀 (Pictures Elements) - 이미지는 픽셀이라 불리는 점을 기반으로 구성된다. - 각 픽셀은 색깔이나 밝기 정보를 가진다. - 이러한 픽셀이 가로, 세로로 모여 2차원 이미지를 형성한다. - Pictures Elements → Picel → Pixel 이미지 데이터 종류 1) 컬..
1️⃣ 딥러닝 모델 학습의 문제점 실생활 문제 데이터의 차원이 증가하고, 구조가 복잡해졌다. 다양한 문제가 발생하게 되고 기술력의 부족으로 딥러닝 기술은 실질적인 한계를 마주하게 되었다. 1) 학습 속도 문제 : 데이터의 개수가 폭발적으로 증가하여 딥러닝 모델 학습 시 소요되는 시간도 함께 증가 2) 기울기 소실 문제 : 더 깊고 더 넓은 망을 학습시키는 과정에서 출력값과 멀어질 수록 학습이 잘 안되는 현상 발생 3) 초기값 설정 문제 : 초기값 설정 방식에 따른 성능 차이가 매우 크게 발생 4) 과적합 문제 : 학습 데이터(training data)에 모델이 과하게 최적화되어 테스트 데이터(test data)에 대한 모델 성능 저하 → 1980년대 말 ~ 90년 중반 두번째 AI 빙하기 2️⃣ 학습 속..
1️⃣ 딥러닝 모델의 학습 방법 ▶ 딥러닝 모델의 구성 요소 ▶ 딥러닝 모델의 학습 방법 Loss function 을 최소화하기 위해 최적화 알고리즘을 적용 → 예측값과 실제값 간의 오차값을 최소화하기 위해 오차값을 최소화하는 모델의 인자를 찾는 알고리즘을 적용 손실 함수 (Loss Function) - 실제값과 모델이 예측한 값 간의 차이를 계산해주는 함수 - 손실 함수의 값은 가중치와 편향을 업데이트하는 데에 사용된다. - Loss(손실) : 예측값과 실제 값 간의 오차값 최적화 (Optimization) - 오차값을 최소화하는 모델의 인자를 찾는 것 ▶ Gradient Descent (GD) - 가장 기본적인 최적화 알고리즘 - 신경망의 가중치들을 𝑊라고 했을 때, 손실함수 𝐿𝑜𝑠𝑠(𝑊)의 값을 최..
1️⃣ 딥러닝 개론 ▶ 딥러닝의 정의 머신러닝의 여러 방법론 중 하나로, 인공신경망에 기반하여 컴퓨터에게사람의 사고방식을 가르치는 방법. 머신러닝도 인공지능의 방법론(method) 중 하나. ▶ 인공신경망의 정의 생물학의 신경망에서영감을 얻은 학습 알고리즘으로, 사람의 신경 시스템(Neuron System)을 모방. ▶ 인공신경망의 특징 모델 스스로 데이터의 특성(feature)을 학습하여 지도학습(Classification, Regression), 비지도학습(Clustering)을 모두 적용 가능하다. → 딥러닝은 지도학습, 비지도학습이 모두 적용 가능한 모델이다. ▶ 딥러닝의 역사 - 퍼셉트론(perceptron)의 개념이 처음 등장한 것은 1958년 - 1960 ~ 1980년대에 딥러닝의 첫 트랜드..