본문 바로가기

공부/AI5

[DL] TypeError: TextEncodeInput must be Union[TextInputSequence, Tuple[InputSequence, InputSequence]] 학습이 잘 돌아가던 중 1epoch가 달성되기 전에 갑자기 아래와 같은 에러가 발생했다. TypeError: TextEncodeInput must be Union[TextInputSequence, Tuple[InputSequence, InputSequence]] 원인은 Text data에서 Tokenizing할때 결측치가 있어서였다. 분명 결측치를 제거했다고 생각했는데, 바보같이 제거한 df를 저장 안하고 to_csv를 했다.. 나는 바보다.. 해결 import pandas as pd # delimiter가 콤마(,)로 된 csv파일을 불러온 후(한글이라 인코딩은 utf-8 사용) df = pd.read_csv('train_data.csv', sep = ",", engine='python', encodi.. 2021. 9. 29.
[DL]활성화 함수 (Activation Function) 개념 Deep Learning, Machine Leraning을 공부하다보면 여러 Layer를 구성하고 항상 마지막 출력값에 적용해주는 함수가 있다. 개념을 알지 못하고 단순히 코드필사만 해본 사람이라도 한번쯤은 봤을법 한, 그 함수들.. Sigmoid, ReLU 등등.. 이러한 함수들이 바로 Activation Function 이다. 아래 설명은 https://playground.tensorflow.org/ 을 활용한다. 정의 입력 신호의 총합을 출력신호로 변환하는 함수를 일반적으로 Activation Function이라고 한다. Actication Function의 목적 간단하게 말하면 Deep Learning Network에 비선형성을 적용하기 위함이다. 처음엔 나도 그냥 이게 뭐? 비선형성이 적용되는게.. 2021. 6. 22.
[DL기초] batch_size, epoch, step 개념 그리고 iteration 일반적으로 Gradient Descent는 아래 3가지 개념을 베이스로 학습이 진행된다. batch_size: Gradient Descent를 한번 계산하기 위한 학습 데이터의 개수 steps: Gradient Descent를 batch_size별로 계산하되, 전체 학습 데이터에 대해서 이를 반복해서 적용한 횟수 epoch: 전체 학습 데이터에 대해서 steps를 진행 이제, 여기서 Iteration 개념이 헷갈린다. Keras의 경우 batch사이즈와 epochs를 인자로 입력해서 얼마나 반복적으로 학습을 수행할지 결정한다. 예를들어 학습데이터 전체가 100개이고, batch_size가 5인 경우, 1 epoch를 위해서 steps는 20번씩 Gradient Descent를 계산한다. (전체를 탐색한다.. 2021. 6. 9.
[DL] 경사하강법(Gradient Descent) 직접 구현하기 Gradient Descent - 경사하강법 딥 러닝에서는 함수의 예측값과 실제값의 차이(오류)를 줄이는 방향으로 가중치(w)를 계속 조절해야 하는데, 대표적인 방법으로 경사하강법을 사용한다. 핵심은 가중치(w)를 계속 조절하다가 더이상 오류값이 좁혀지지 않으면 그때가 최적이라 판단하고 w를 반환해 주는것이다. 그럼 어떻게..? gradient descent는 함수의 기울기를 이용해 최소값을 알아보는데 이 방법으로 알수있는것은 아래와 같다. 1. 기울기가 양수인 경우: x값이 커질 수록 함수 값이 커짐 => x를 음의 방향으로 옮겨! - 기울기가 음수인 경우: x값이 커질 수록 함수 값이 작아짐 => x를 양의 방향으로 옮겨! 2. 기울기의 값이 큰 경우(상대적으로): x의 위치가 최소값/최대값에 해당되.. 2021. 6. 4.