본문 바로가기

분류 전체보기

(64)
[패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 39회차 미션 인공지능강의 05. PART 4) 딥러닝의 3 STEP의 기초 67. 효과적으로 사용할 수 있는 기법 - 07. (STEP 2) SMOTE 알고리즘 불균형 데이터 Imbalanced Data 클래스별로 학습 데이터셋의 크기가 급격히 차이가 나는 데이터를 Imbalanced Data라고 부른다. 임의 언더 샘플링 Random Under Sampling 다수 클래스 (Majority Class)에서 임의로 샘플링하여 크기를 맞추는 방법을 Random Under Sampling이라 한다. 이 경우, 임의로 선택된 샘플이 대표성이 떨어질 경우 학습이 잘못된 방향으로 될 수 있다. 임의 오버 샘플링 Random Over Sampling 소수 클래스 (Minority Class)의 데이터를 반복하여 양을 학습 데이..
[패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 38회차 미션 인공지능강의 05. PART 4) 딥러닝의 3 STEP의 기초 65. 효과적으로 사용할 수 있는 기법 - 05. (STEP 2) 배치 정규화와 변형 기법들 - 2 배치 정규화의 한계 : Mini-batch에 의해 크게 영향을 받는다. . 배치의 크기가 너무 작으면 잘 동작하지 않는다. - 메모리의 한계로 인해 RNN이나 크기가 큰 CNN에 적용하기 어렵다 . 배치의 크기가 너무 커도 잘 동작하지 않는다. - 병렬화 연산 효율이 떨어진다. 가중치 정규화 Weight Normalization . FC 계층의 w는 '방향'과 '크기'를 같이 학습하지만, 이를 분리하여 g와 v로 나누어 학습 . 학습 시 자유도가 개선되어 최적화가 더 쉽게 이루어짐 . 학습 시 CNN에서 배치 정규화 대비 연산량이 매우 감소 (..
[패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 37회차 미션 인공지능강의 05. PART 4) 딥러닝의 3 STEP의 기초 63. 효과적으로 사용할 수 있는 기법 - 03. (STEP 1) 데이터 증강 기법 데이터 증강 - Affine Transform. - Noise 삽입. - 색상, 밝기 변형. 불변성 Invariance X-불변 함수는 입력에 X를 적용해도 그 결과가 영향을 받지 않는다. 단, 여기서 영향을 받지 않는다는 것은 출력에 X를 적용한 것과 같다는 의미이다. 회전과 불변성 회전은 Scale에 Invariant하다. 회전은 Translation에 Variant하다. Affine Transform .영상의 2차원 변환을 Affine Transform이라 한다. CNN은 Affine Transform에 대해 Variant하다. 즉, Affine Tran..
[패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 36회차 미션 인공지능강의 05. PART 4) 딥러닝의 3 STEP의 기초 61. 효과적으로 사용할 수 있는 기법 - 01. (STEP 1) 과적합의 해결 과대 적합 Overfitting 이진 분류 문제에서의 Overfitting. 마치 시험 족보를 외우듯 주어진 문제의 답을 암기해 버리는 것과 유사. 데이터셋의 의미 학습 데이터(Training Data) : 학습 과정에서 보여지고, 실제 모델을 학습하는 데에 사용 되는 데이터. 검증 데이터(Validation Data) : 학습 과정에 보여지는 데이터이지만, 모델 학습에 사용하지 않고 학습이 잘되는지 검증하는데에 사용. 테스트 데이터(Test Data) : 학습 과정에서는 사용하지 않고, 학습을 마친 모델을 평가하기 위해 단 한번만 사용. 손실 함수 그래프 실제로..
[패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 35회차 미션 인공지능강의 05. PART 4) 딥러닝의 3 STEP의 기초 59. 맥락을 파악하는 Attention 기법 - 08. (STEP 3) Attention 신경망 구현 및 학습 - 2 ## 학습, 테스트 루프 정의 # Implement training loop @tf.function def train_step(model, inputs, labels, loss_object, optimizer, train_loss, train_accuracy): output_labels = labels[:, 1:] shifted_labels = labels[:, :-1] with tf.GradientTape() as tape: predictions = model([inputs, shifted_labels], training=..
[패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 34회차 미션 인공지능강의 05. PART 4) 딥러닝의 3 STEP의 기초 57. 맥락을 파악하는 Attention 기법 - 06. (STEP 2) Attention 신경망의 수식적 이해 - 3 Transformer model Positional Encoding . 시간적 위치별로 고유의 Code를 생성하여 더하는 방식 . 전체 Sequence의 길이 중 상대적 위치에 따라 고유의 벡터를 생성하여 Embedding된 벡터에 더해줌 Scaled Dot-Product Attention 𝑄 = [𝒒 0 , 𝒒 1 , … , 𝒒 𝑛 ] 𝐾 = [𝒌 0 , 𝒌 1 , … , 𝒌 𝑛 ] 𝑉 = [𝒗 0 , 𝒗 1 , … , 𝒗 𝑛 ] 𝐶 = softmax( 𝐾^𝑇*𝑄/root(𝑑_𝑘)) 𝒂 = 𝐶^𝑇*𝑉 = softmax( 𝑄..
[패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 33회차 미션 인공지능강의 05. PART 4) 딥러닝의 3 STEP의 기초 55. 맥락을 파악하는 Attention 기법 - 04. (STEP 2) Attention 신경망의 수식적 이해 - 1 Attention mechanism 𝒒 ∈ ℝ𝑛,𝒌𝑗 ∈ ℝ𝑛 Compare 𝒒,𝒌𝑗 = 𝒒 ∙ 𝒌𝑗 = 𝒒𝑇𝒌𝑗 Aggregate 𝒄,𝑉 = Sum(𝑐𝑗𝒗𝑗) .Compare 함수로는 Dot-Product (Inner Product)가 많이 쓰이며, Aggregation은 weighted sum을 많이 사용한다. Seq2seq에서는 Encoder의 hidden layer들을 key와 value로 사용한다. Seq2seq에서는 Decoder의 hidden layer들을 Query로 사용한다. Seq2seq - Attentio..
[패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 32회차 미션 인공지능강의 05. PART 4) 딥러닝의 3 STEP의 기초 53. 맥락을 파악하는 Attention 기법 - 02. (STEP 1) Attention 신경망 - 1 Query, Key-Value Query: 질의. 찾고자 하는 대상 Key: 키. 저장된 데이터를 찾고자 할 때 참조하는 값 Value: 값. 저장되는 데이터 Dictionary: Key-Value Pair로 이루어진 집합 Attention mechanism Q에 대해 어떤 K가 유사한지 비교하고, 유사도를 반영하여 V들을 합성한 것 Attention value이다. Seq2seq - Key-Value 대부분의 Attention network에서는 key와 value를 같은 값을 사용한다. Seq2seq에서는 Encoder의 hidden ..