ML&DL 이야기/ML
-
[NLP] BLEU Score(Bilingual Language Evaluation Understudy)ML&DL 이야기/ML 2024. 2. 16. 17:55
기계번역에서 자주사용되는 지표인 BLEU는 연속된 단어의 조합인 문장을 1:1 비교하지 않고, 연속된 단어의 정확도를 측정하고자 하는 방식이다. 그 전에 Precision과 Recall에 관해 알아보자. 본 내용은 https://amber-chaeeunk.tistory.com/94 을 바탕으로 작성하였습니다 Precision & Recall 우선 기본적인 Precision & Recall에 관한 정의를 보기 위해 2*2 matrix를 그려보자. 각 Case를 보면 True Positive(TP) : 실제 True인 정답을 True라고 예측 (정답) False Positive(FP) : 실제 False인 정답을 True라고 예측 (오답) False Negative(FN) : 실제 True인 정답을 Fals..
-
Beam Search in NLPML&DL 이야기/ML 2024. 2. 16. 16:46
Text 생성을 위한 Decoder에서 우리는 단어들을 연속적으로 생성하는 task를 수행해야한다(sequence data). 모델의 출력은 확률적으로 가장 가능성이 높은 확률을 띄는 조합의 단어 조합으로 결정된다. 즉, 언어 모델은 단어 시퀀스에 확률을 할당하는 모델이며, Decoder의 경우 다음에 나올 확률이 최대인 단어를 선택한다. 이를 수식으로 표현하면 아래와 같다. 무수히 많이 생성되는 후보들 중 어떤 sequence를 선택하라 지 정하는 방법 중 하나가 바로 Beam Search이다. Greedy Search(Decoding) Seq2Seq에서 가장 대표적으로 사용하는 방법으로, 해당 t시점에서 가장 확률이 높은, 가능성이 높은 단어를 고르는 방법이다. Complexity 관점이나 구현 관점..
-
[NLP] RNN, LSTM과 NLP 개론ML&DL 이야기/ML 2024. 2. 13. 20:46
허민석님의 자연어처리 유튜브 재생목록(https://youtu.be/meEchvkdB1U?si=KHEXvalYlF_RlkE9)과 LgAimers의 주재걸 교수님의 seq2seq with Attention 강의, 나동빈님의 seq2seq 영상을 바탕으로 작성하였습니다. Natural Lenguage = Sequence Data 우리는 자연어, 즉, 문장을 말할때, 문장은 단어의 연속된 집합으로 들어온다. 즉, 순차적인 단어의 구성이 바로 문장이다. 즉, 문장은 가장 최신의 과거 데이터(단어)를 바탕으로 업데이트 되는 시계열적인 특성을 지닌다. 이 점에서 sequence data라고 할 수 있을 것이다. 전통적인 NN의 경우 이러한 지속성을 지니는 데이터를 처리하기에 어려움이 있었는데, 이는 입력값들을 서로..
-
[ML] Convolution 합성곱의 정의와 FFT 고속푸리에 변환에 관하여ML&DL 이야기/ML 2023. 10. 8. 22:04
아래의 자료들을 모두 참고하여 작성하였다 https://m.blog.naver.com/ycpiglet/222556985523 [신호및시스템] 컨볼루션(Convolution)이란? - 시스템을 몰라도 입력과 임펄스 응답을 통해 출력(결 신호 및 시스템(Signals and Systems)을 수강하면서 배우게 된 컨볼루션(Convolution) 사실 컨볼루션을 ... blog.naver.com 고속 푸리에 변환에 관한 부분은 아래의 영상을 참고하였다. https://www.youtube.com/watch?v=KuXjwB4LzSA&t=1178s Convolution이란 Convolution이란 합성곱이라고도 하다. 이는 선형 시불변(Linear Time-invarient system)시스템 h에 x라는 신호가..
-
[ML] Regression과 Logit(승수)와 Sigmoid함수 그리고 Softmax함수ML&DL 이야기/ML 2023. 10. 2. 18:27
https://kevinitcoding.tistory.com/entry/%EB%94%A5-%EB%9F%AC%EB%8B%9D%EC%9D%84-%EC%9C%84%ED%95%9C-%ED%9A%8C%EA%B7%80-%EB%B6%84%EC%84%9D%EC%9D%98-%EC%9D%B4%ED%95%B4-Logit-Sigmoid-Softmax https://www.youtube.com/watch?v=K7HTd_Zgr3w 딥 러닝을 위한 회귀 분석의 이해: Logit, Sigmoid, Softmax 안녕하세요. 모두의 케빈입니다. 딥 러닝과 심층 신경망을 보다 깊이 알기 위해서는 회귀 분석에 대한 이해가 선행되어야 합니다. 그래서 오늘은 회귀 분석의 정의부터 딥 러닝에 실제로 활용되 kevinitcoding.tistor..
-
[ML] Entropy와 Likelihood관점에서의 Loss functionML&DL 이야기/ML 2023. 10. 2. 10:04
Entropy와 Cross Entropy Entropy 정보의 불확실성의 척도 정보를 표현하는데 있어서 필요한 최소 자원량, 확률이 적은 애를 길게 코딩하고 확률이 큰 아이를 짧게 코딩해라 길이와 확률은 반비례하기에 -log로 표현됨. H(x)는 x에 따른 코드 길이에 대한 확률의 기댓값으로 표현된다. 정보의 최소 자원량이기에 lower bound를 제공하는 식이라 생각하면 된다. 확률이 균등하면 엔트로피는 최대이다(discrete 일때) Cross-entropy 실제 분포인 q 를 모르고, 모델링을 하여 q 분포를 예측하고자 하는 것이다. 예측 모델링을 통해 구한 분포를 p(x) 라고 해보자. 실제 분포인 q를 예측하는 p 분포를 만들었을 때, 이 때 cross-entropy 는 아래와 같이 정의된다...
-
[ML] Optimizer란 무엇인가ML&DL 이야기/ML 2023. 8. 24. 23:40
https://tutorials.pytorch.kr/beginner/basics/optimization_tutorial.html 앞선 글에서 처럼 각 반복 단계에서 모델은 출력을 추측하고, 추측과 정답 사이의 오류(손실(loss))를 계산하고, 매개변수에 대한 오류의 도함수(derivative)를 수집한 뒤, 경사하강법을 사용하여 이 파라미터들을 최적화(optimize)합니다(https://www.youtube.com/watch?v=tIeHLnjs5U8) 24.1.23 LG Aimers 이화여자대학교 강제원 교수님의 강의 내용 추가 하이퍼파라미터(Hyperparameter) 하이퍼파라미터는 모델의 최적화 과정에서 우리가 직접 제어할 수 있는, 조절 가능한 매개변수이다. 이를 조절하는 것을 하이퍼파라미터 ..
-
Likelihood(우도, 가능도)와 MLE(Maximum Likelihood Estimaton)ML&DL 이야기/ML 2023. 7. 26. 17:51
Likelihood(우도, 가능도) 데이터가 만일 위의 그림처럼 1,4,5,6,9가 나왔을 때 분포는 주황색으로 추정하는 것이 옳을까?, 아니면 파란색으로 추정하는 것이 좋을까? 우도란 이런 정도를 나타내는 것으로, 정리하면 "데이터가 해당 분포로 부터 나왔을 가능성(liklihood)" 확률은 모수가 정해진 상태에서 특정 data가 관측될 확률이고(말이 이상하지만..!), Likelihood는 Data가 관측된 상태에서 특정 확률분포에 대한 "모수"를 추정할 수 있는 믿음의 정도..?이다. 즉, 특정 모수 하의 x가 나올 확률은 x에 관한 모수의 가능도와 같다! 우리가 가지고 있는 데이터는 MLE(최대 우도 법) 최대우도법은 모수를 추정하는 방법으로, 데이터로부터 모수의 값을 추정할 때 사용하는 방법니..