본문 바로가기

머신러닝 읽어주는 남자

(31)
Zero shot Learning Zero shot learning(제로샷 학습) 기본 정의: 한 번도 듣도보도 못했던 클래스를 분류하도록 학습하는 것 기존에 승용차라는 데이터가 많아서 승용차 클래스에 대해서 성공적으로 학습을 했음. 근데 입력이 갑자기 트럭이 갑자기 나타남. 바람컨데 그럼 알아서 트럭이라는 승용차와 가까운 클래스를 짜잔하고 만들어주면 좋겠지만, 기존 모델들은 안습적이게도 일반적으로 노답이 됨 ㅠㅠㅠ (정확히는 기존 클래스에 분류해버림) 그러한 상황을 해결하기 위해 만든 방법이 zero-shot learning 알아서 새로운 클래스를 뚝딱 만들어서 첨보는 트럭을 분류해주는 식으로 말이다
From AI to neuroscience 병변 분석. 싱글셀 레코딩., 뉴로이미징들의 뉴로 사이언스 테크닉이 ai에 적용 되고 있다 이를 virtual brain anal이라고 한다 차원 감소로 뇌를 시각화하는 기술이 최근 ai에 적용됨 Receptive field mapping 으로 한 유닛의 반응 특성을 본다Activity maximization 특정 클래스의 유닛의 행동이 최대화 됨으로 합성 이미지룰 생성함 중뇌 도파민성 뉴런의 신호를 분석해보면 TD- learning 과 놀랍게도 닮아 있다. AI의 분석하기 위해 내면 시각 흐름을 분석하여 deep supervised net에 대한 근거를 발견했다. LSTM이 전전두엽의 task 관련 정보의 gating-based maintanance 모델에 대한 인사이트를 제공해주었다.
Learning to rank 기본의 머신 러닝 방식: 한 번에 하나씩만 처리가능.(ex. 스팸필터: 하나의 메일에 대해서 스팸여부 확률을 구함)learning to Rank 중에 pointwise 방식도 리그레션 또는 classification방법을 사용함보통 square loss 혹은 cross entropy를 줄이는 식으로 학습함라벨이 구체적인 doc이 됨 Learning to Rank: 구체적은 스코어보다는 리스트의 order만을 생각함. 이들의 공통점은 랭킹을 pairwise classification 또는 regression 문제로 변형하여 해결하였다. pairwise: query 1개와 , document 2개를 비교하여 2개의 document의 순서를 정한다.순서가 바뀐걸 최소화하는 것으로 학습을 한다.대표적은 방법으로..
[오직 핵심]Softmax와 아이들 Softmax 수학적 의미multi class linear classifier(multinomial Logistic Regression) 실제적 의미K개의 클래스중에 특정 클래스에 속할 점수를 멋있게 확률 값으로 바꿔줌 (참고! 확률 값의 특징: 양수, 합이 1) 수식 Softmax는 그냥 한 클래스에 속할 확률을 나타내줄뿐이므로 학습을 위하여 cost function 이 필요하다대표적인 2개의 cost function은 아래 두개 이다. Classification는 기본적으로 정답 클래스은 한개 이다. Hinge loss기본 개념정답스코어보다 오답 스코어가 1이상 작은 경우에는 loss = 01이상의 차이가 안 날 경우 그만큼을 cost로 여김 즉! 정답과 일정 이상의 점수가 낮아지도록 학습함 예시정답..
[오직 컨셉]Generative model vs Discriminative model |봐도 봐도 어려운 두 모델 비교해보도록 하자 정의상으로 보자 Generative model은 joint distiribution p(x,y)를 학습에 사용하는 방법이다(x,y)란 무엇인가? 데이터 그 자체를 의미한다.p(x,y)는 그 데이터가 나올 확률을 의미하게 된다.사물 인식을 예를 들면, (x = 고양이 사진, y=고양이): 고양이라는 label를 가진 고양이 사진 그 데이터 그 자체p(x = 고양이 사진, y=고양이): 고양이라는 label를 가진 고양이 사진 그 데이터가 나올 확률 Discriminative model은 posterior p(y|x)를 학습에 사용하는 방법이다.p(y|x)는 classifier에게 매우 자연스러운 확률이다.어떤 데이터가 주어졌을때 특정 레이블을 가진 확률이다.예..
[오직 컨셉]Gradient Descent Gradient Descent기본 개념기울기 = 0인 즉 최대값인 상단 피크(concave) 또는 최소값인 하단 피크(convex 그래프)인 부분을 찾는 알고리즘, 장점: 수학적으로 간단하다단점: local maxima, local minima, saddle point도 여기에 포함된다. Stochastic Gradient Descent기존 방법은 전체 트레이닝 데이터를 보고 한번의 업데이트를 하는데 이러면 1 epoch 에 한번의 업데이트만 일어난다. 그래서 너무 오래걸리는 문제가 발생한다. 그래서 매번 임의의 데이터 하나를 샘플하여 그 데이터에 대해서 gradient를 계산하여 업데이트를 해준다 장정: 업데이트 속도가 매우 빠르다.단점: 데이터 하나만 보기 때문에 이상한 방향으로 업데이트가 될 확률이..
[오직 컨셉] 텐서플로우(Tensorflow) 텐서플로우 핵심 컨셉 텐서(tensor)라는 노드로 그래프를 구성하고 세션에서 그래프를 실행한다.(정확히는 노드를 실행시키므로써 그래프를 실행시킨다) 2+3 =5라는 것을 계산하고 싶다면? 1. 2라는 A 노드를 생성한다. ( a = tf.constant(2))2. 3이라는 B 노드를 생성한다. (b = tf.constant(3))3. 첫번째 노드와 두번째 노드를 더하는 C 노드를 생성한다. (c = a+b)4. 세션을 만든다. (sess = tf.Session())5. 세션에 C 노드를 넣고 실행시키면 5가 튀어나온다. (sess.run(c) ==> 5) Tensor란? 여기서는 모든 종류의 데이터를 의미한다. 이 tensor는 shape이 존재한다. 0차 Tensor 이자 스칼라이자 shape:() ..
[오직 컨셉] Attention Attention(for Seq2Seq) 기본 개념연속적인 많은 정보중에 특정한 부분에 집중하는 기법, 말그대로 집중 한 줄 의미: 현재 출력할 부분 직전과 비슷한 의미(비슷한 단어)가 나왔던 곳만 집중하여 정보를 가져와서 입력으로 넣어준다. 좀 더 상세 의미 1. encoding 즉 입력 쪽에서 hidden state를 싹싹 모은다. 여기에는 입력 문장의 구간별 정보가 잘 담겨져있다. (이를 F matrix라고 한다) 2. 이를 통째로 decoding, 즉 출력 쪽으로 보낸다. 3. attention 값을 원하는 곳 직전의 hidden state를 살짝 변형한다. (V 행렬로 변형 시켜준다) 4. 위에서 살짝 변형된 hidden state와 유사한 encoding의 hidden state를 찾는다. 5..

반응형