Loading...
2024. 1. 12. 00:05

딥러닝 시대의 train, validation, test set에 대한 고찰(70:30으로 나눠야하는가? train과 test가 서로 다른 분포? validation vs test는 무슨 차이인가?)

1. train set, validation set, test set 가지고 있는 모든 학습 데이터(training data)에서 전통적으로, 그 일부를 training set으로 사용하고 일부를 hold out cross validation set(development set)으로 쓰고 그 나머지는 test set으로 쓴다. training set에서 어떤 모델의 training algorithm을 수행하고, validation set은 후보로 고른 모델들의 성능을 평가하는데 사용한다. 위 과정을 충분히 반복하고 나서, 최종적으로 고른 모델이 얼마나 잘 편향없이 추론하는지(unbiased estimate) 평가하기 위해 test set을 이용하여 평가를 한다. 2. 70:30으로 데이터를 나누는 것이 ..

2022. 9. 16. 01:37

비전공자도 이해할 수 있는 AI지식 2 -딥러닝의 등장-

1. 딥러닝은 왜 갑자기 잘 동작하는가? 딥러닝이 갑자기 잘 동작하게 된 이유중 하나로 알고리즘의 발전을 들 수 있다. 과거 인공 신경망 시절 해결할 수 없는 문제도 많았고 제대로 학습할 수 있는 방법도 알지 못했다. 그러나 끝까지 연구를 이어온 일부 연구자 덕분에 제대로 학습할 수 있는 방법을 찾아냈다. 딥러닝은 머신러닝의 일종으로 머신러닝과 비슷한 방식으로 작동한다. "데이터와 정답을 입력하면 스스로 규칙을 찾아낸다" 그러나 딥러닝은 기존의 머신러닝에 비해 훨씬 더 크고 풍부한 역량을 지닌 모델이다. 훨씬 더 많은 데이터를 학습할 수 있고, 훨씬 더 풍부한 규칙을 찾아낼 수 있다. 이러한 딥러닝의 특징이 돋보이는 분야가 바로 기계번역이다. 요즘 기계번역은 전문 번역가가 직접 작업한 듯 자연스러운 번역..

2022. 4. 15. 01:56

teacher forcing 기법

decoder의 예측 수행은 이전 예측 단어를 다음 예측을 위한 input으로 넣어준다. 문제가 무엇이냐? 예측이라는 것이 항상 정확할까? 특히 학습 초반에는 예측이 정확할 경우가 거의 없다. 그러면서 정확히 예측하지 못한 단어가 다음 단어 예측을 위한 input으로 들어가면서 이런 오류가 누적된다는 것. 그래서 보통 학습이 더디다. 이런 결과를 피하고싶어서 이전 단어 예측값과는 무관하게 decoder의 다음 단어 예측을 위한 input으로 무조건 정답을 넣어주는 것을 teacher forcing 기법이라고 한다. 첫 단어의 정답은 the인데 예측결과 a가 나왔다. 이것을 넣지 않고 그냥 무조건 the를 넣어주는 것이다. 위와 같은 방법은 당연하겠지만 학습속도를 올릴수 있다. 정답으로 예측하니까 당연하지..