일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 시소러스
- convolution
- 분포 가설
- 차원 감소
- GoogLeNet
- Linear algebra
- mlops
- 선형대수
- Long Short Term Memory
- dl
- f1-score
- py4e
- nn.Module
- 상호 정보량
- pytorch
- Python
- skip-gram
- CBOW
- excel
- 파이썬
- deep learning
- docker
- object detaction
- pythonForEverybody
- Gated Recurrent Unit
- Charlse Severance
- 벡터 간 유사도
- 1x1 Convolution
- 동시발생 행렬
- Multi-Layer Perceptron
- Today
- Total
목록분류 전체보기 (31)
Tech & TIL
1x1 Convolution에 대해 알아보기 전에 1x1 Convolution이 왜 사용되기 시작했는지 이해하기 위해 ILSVRC(ImageNet Large Scale Visual Recognition Challenge)라는 Challenge와 대회에서 수상을 했던 5개 Network 들의 주요 아이디어와 구조에 대해 알아보려고 한다. Network List AlexNet 최초로 Deep Learning을 이용하여 ILSVRC에서 수상 ReLU를 활성화 함수로 사용함. ReLU는 0보다 큰 x값에 대해서는 gradient를 1로 보존되기 때문에 Vanishing Gradient Problem을 해소해주었다. VGGNet 3x3 Convolution을 이용하여 Receptive field는 유지하면서 더 ..
AI를 공부해본 사람이라면 CNN이란 말을 많이 들어봤을 것이다. CNN이란 Convolutional Neural Network의 약자이고 이미지에 관련된 모델에 최적화된 네트워크이다. 본 글에서는 CNN에 사용되는 연산인 Convolution에 대해 다뤄보자. 위 그림은 크게 2 부분으로 나눌 수 있다. Convolution and Pooling layers: feature extraction Fully connected layer: decision making(e.g. classification) Convolution (합성곱) 필터를 이미지에 씌워서 모든 값을 곱하고, 더해서 하나의 아웃풋이 나온다. 필터에 값을 다르게 주면 다른 feature(특징들)를 추출할 수 있다. Padding은 왜 사용할..
딥러닝에서 사용되는 Optimization(최적화)은 왜 사용할까. 이번 강의를 듣기 전에는 Loss와 Optimization의 개념 조차 제대로 알지 못했다는 것을 알게 되었다. 기존에는 backpropagation을 하면서 어찌어찌 weight와 bias가 갱신되는구나! 정도로 알고 있었다. 지금부터 차근차근 최적화에 대해 알아보자. Optimization의 중요한 컨셉 Generalization Under Fitting / Over Fitting Cross-validation Bias-Variance tradeoff Bootstrapping Bagging and Boosting 기본적인 용어 설명을 먼저 하고 해결 방안을 제시하려고 한다. Generalization 일반적으로 학습을 시키게 되면, ..
Linear Neural Networks Linear Neural Network에서는 Data가 주어졌을 때, Data들을 가장 잘 표현할 수 있는 y = wx + b 식을 근사해야 하는 것이다. 모든 점들을 가깝게 지나가는 직선을 구하기 위해서는 기울기와 y절편을 구해야 한다. 먼저, 모든 데이터를 모델 식에 대입한 후 y_hat 벡터를 구한다. y_hat과 실제 output 값인 y의 차를 제곱해서 평균을 낸 값을 Loss로 정의하고 Loss를 줄이기 위해 Backpropagation 기법을 사용해서 Loss를 최소화한다. Loss를 최소화하기 위해서는 Loss를 각각 w와 b에 대해 편미분을 해줘서 편미분된 값을 활용해서 Loss function을 극소값을 찾아 데이터를 가장 잘 표현하는 y = w..
최성준(고려대학교 인공지능학과) 교수님 강의 정리 Table of Contents 딥러닝 소개 딥러닝의 역사: 2012 ~ 2021 딥러닝 소개 딥러닝을 구성하는 중요 요소 4가지 The data that the model can learn from The model how to transform the data The loss function that quantifies the badness of the model The algorithm to adjust the parameters to minimize the loss 딥러닝의 역사 참고자료 Deep Learning's Most Important Ideas - A Brief Historical Review The goal of this post is ..
[UNIST 인공지능대학원 임성빈 교수님 특강 정리] 수학은 원래 머리로는 어렵다. 하지만 손으로 익히는 건 가능하다. In mathematics you don't understand things. You just get used to them John Von Neumann(폰 노이만) 수학을 쉽게 공부하는 방법이 있을까? 똑똑하게 익숙해지는 방법 용어의 정의(Definition)는 일단 외우는 것부터 시작하자 교과서나 위키피디아를 활용하면 좋다 자주 용어를 보다 보면 익숙해진다 5분~10분 보고 외우고, 다음날 또 보고 또 보고 하면 좋다 용어를 외웠다면 예제를 찾아보도록 하자 가령 likelihood example을 구글링 해보면 여러 예제들이 나온다 예제를 풀어보면서 특정 용어가 실제로 어디에 사용..
Boostcamp - AI Tech 부스트캠프 개발자의 지속 가능한 성장을 위한 학습 커뮤니티 boostcamp.connect.or.kr Table of Contents 미분이란? 미분은 어디에 쓸까? 변수가 벡터라면? 미분이란? 미분(differentiation)은 변수의 움직임에 따른 함수값의 변화를 측정하기 위한 도구로 최적화에서 제일 많이 사용되는 기법이다. 미분은 함수 f 의 주어진 점 (x, f(x)) 에서의 접선의 기울기 를 구한다. 미분이 가능하려면 연속함수 모양이어야 한다. 미분은 어디에 쓸까? 한 점에서 접선의 기울기를 알면 어느 방향으로 점을 움직여야 함수값이 증가 또는 감소 하는지 알 수 있다. 증가시키고 싶다면 미분값을 더하고 감소시키고 싶으면 미분값을 빼면 된다. 미분값을 더하면..
Boostcamp - AI Tech 부스트캠프 개발자의 지속 가능한 성장을 위한 학습 커뮤니티 boostcamp.connect.or.kr 행렬(matrix)은 벡터를 원소로 가지는 2차원 배열입니다. 벡터가 공간에서 한 점을 의미한다면 행렬은 여러 점들을 나타냅니다. 행렬끼리 덧셈 같은 모양을 가지면 덧셈, 뺄셈을 계산할 수 있습니다. 행렬끼리 곱셈 행렬 곱셈은 2가지로 나뉩니다. Element Wise Product : 요소 끼리의 곱셈 (성분곱) Dot Product : i 번째 행벡터와 j 번째 열벡터 사이의 내적을 성분으로 가지는 행렬을 계산합니다. (여기서 말하는 내적은 수학에서 말하는 내적과는 다르므로 주의!) 보통 Matrix Multiplication 은 Dot Product 를 의미합니다..
Boostcamp - AI Tech 부스트캠프 개발자의 지속 가능한 성장을 위한 학습 커뮤니티 boostcamp.connect.or.kr 벡터란? 벡터는 숫자를 원소로 가지는 리스트(list) 또는 배열(array)입니다. X : 열 벡터, Xt는 (열 벡터 X를 transpose 시킨) 행 벡터를 나타냅니다. 부스트 캠프에서 강의를 듣기 전에는 벡터란 방향을 갖고 있는 어떤 선?이라는 개념으로 알고 있었는데 임성빈 교수님의 강의를 들으면서 제대로 된 정의를 알 수 있었습니다. 벡터는 공간에서 한 점을 나타낸다. 벡터는 원점으로부터 상대적 위치를 표현한다. 추가적으로 벡터에 숫자를 곱해주면 길이만 변하고 곱해주는 숫자가 0보다 작다면 반대 방향으로 바뀝니다. 벡터의 덧셈 두 벡터의 덧셈은 다른 벡터로부터..
Source : Programmers 문제 설명 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 수는 6210입니다. 0 또는 양의 정수가 담긴 배열 numbers가 매개변수로 주어질 때, 순서를 재배치하여 만들 수 있는 가장 큰 수를 문자열로 바꾸어 return 하도록 solution 함수를 작성해주세요. 제한사항 numbers의 길이는 1 이상 100,000 이하입니다. numbers의 원소는 0 이상 1,000 이하입니다. 정답이 너무 클 수 있으니 문자열로 바꾸어 return 합니다. 구현 def so..