분류 전체보기(624)
-
텐서(Tensor)
0차원 텐서 스칼라값을 0차원 텐서 d = np.array(5) print(d.ndim) # 0 print(d.shape) # () 이 텐서의 크기는 (32, 6, 5)을 의미 배치 크기까지 지정해주고 싶다면 batch_input_shape=(8, 2, 10) 그 외에도 입력의 속성 수를 의미하는 input_dim, 시퀀스 데이터의 길이를 의미하는 input_length 등의 인자도 사용합니다. 사실 input_shape의 두 개의 인자는 (input_length, input_dim)라고 볼 수 있음
2021.08.16 -
RNN (Recurrent Neural Network)
probability over sequences 응용 Audio to Text Text to text feedforward net input hidden output [] -----> [] ----> [] FCL을 위와 같이 간단하게 표시 각각은 모두 vector yt = f(Wyh*ht + by) ht = f(whx*xt + bh) RNN 개념 input hidden output [] -----> [] ----> [] ^ | +--------+ yt = f(Wyh*ht + by) ht = f(whx*xt + whh*ht-1 + bh) 'hidden state'를 (기억) 지니고 있다는 차이점 지금까지의 입력 데이터를 요약한 정보 모든 입력 처리 후 network에 hidden state는 sequenc..
2021.08.16 -
CNN (Convolution Neural Network)
2015년에 AlexNet이 10%의 성능향상 Convolution filer는 learning parameter +--+--+--+--+--+ |xij | | | | 3x3 filter +--+--+--+--+--+ +--+--+--+ +--+--+--+ | | | | | | x |wij | | = | | | | +--+--+--+--+--+ +--+--+--+ +--+--+--+ | | | | | | | | | | | | | | +--+--+--+--+--+ +--+--+--+ +--+--+--+ | | | | | | | | | | | | | | +--+--+--+--+--+ +--+--+--+ +--+--+--+ | | | | | | +--+--+--+--+--+ ^ | feature map 𝜎(w..
2021.08.16 -
K-means clustering
• 주어진 데이터를 k개의 cluster로 묶는 알고리즘 • 각 cluster 내 데이터들의 분산이 최소화하도록 학습 • 목표: cluster의 assignment {Zi}와 cluster center {𝜇j} 계산 unsupervised learning의 대표적 ex. 데이터를 k개의 clustering 묶음 100개의 점을 3개의 cluster로 좋은 clustering의 기준 각 cluster 내 data의 분산의 최소화 (평균 - 데이터)^2 중심과 해당 cluster 내 모든 data의 center와의 거리의 제곱 cluster의 assignment {zi}, cluster center {𝜇j} zi: xi의 cluster label ex. k=3 zi = {1, 2, 3} k-means los..
2021.08.16 -
kNN
feature space에서 거리가 가장 가까운 k개를 찾고 이들의 평균값으로 y'을 예측 "즉, 지도학습임" k-means는 비지도학습이며, clustering을 수행 predictor f(x') |𝜙(x) - 𝜙(x')|의 min을 찾기 훈련이 필요 없음 – 즉, lazy model SVM 혹은 선형회귀보다 빠름 거리 구하기 1) Euclidean distance sqrt(∑ (p1i – p2i)^2) 2) Manhattan distance ∑ | p1i – p2i | 예측 방법에서 가장 ideal 성능면에서 kNN이 잘 설계 되어 있다면 이보다 더 좋을 순 없음 이 경우 DNN 을 사용할 필요가 없음 DNN은 이를 흉내 kNN 특징 non-linear를 다 근사 prediction의 boundary..
2021.08.16 -
data partitioning, hyper-parameter tuning
데이터를 training과 testing으로 분할 보통 8:2 혹은 9:1 파라미터를 추정하는데는 많은 데이터가 필요하므로, training을 크게 testing은 모형들의 성능을 구별할 정도만 되면 충분하므로 작게 training에 과적합되면 testing에서 성능이 낮아짐 training과 testing의 data가 섞이지 않도록 주의 섞일 시, testing 결과의 성능이 좋게 됨 다른 data를 가지고 test하게 되면 성능이 높지 않게 나옴 즉, 객관적인 성능 수치를 파악하기 어려움 Validation / Development set 딥러닝에서는 다양한 hyperparameter의 결정이 필요 hyperparameter 은닉층 개수, filter size 등 테스트셋 데이터를 이용해서 결정하면 ..
2021.08.16