본문 바로가기

필기 노트30

[자연어 처리 입문] 언어 모델 (Language Model) 을 읽고 간단하게 정리한 내용이다. 이번 글에서는 통계적 언어 모델(SLM)을 다뤄본다. 추가적으로 automated evaluation metric 중 하나인 perplexity에 대해서도 알아본다. # 언어 모델 (Language Model) Language model (LM) 은 단어 시퀸스에 확률을 할당하는 문제이다. 단어에 확률을 할당해서 가장 자연스러운 단어 시퀸스를 찾아내는 것을 목표로 한다. 시퀸스를 구성하는 이전 단어들이 주어지면, 그 단어들을 기반으로 다음 단어를 예측하게 된다. LM 을 적용할 수 있는 분야들로는 기계번역(machine translation, MT), 오타 교정, 음성 인식 등이 있다. LM은 크게 통계를 이용하는 방법과 인공 신경망을 이용하는 방법으로 구분할 수 있다.. 2020. 12. 29.
[자연어 처리 입문] 데이터 전처리 (text preprocessing) 을 읽고 간단하게 정리한 내용이다. 개념 정리할 겸 써본다. # 데이터 전처리 데이터 (텍스트)를 사용하고자 하는 용도에 맞게 토큰과, 정제, 정규화를 수행해야 한다. # Tokenization : corpus를 token 단위로 나누는 작업 크게 단어 토큰화와 문장 토큰화로 구분할 수 있다. 단어 토큰화(word tokenization)는 말 그대로 토큰의 기준을 단어로 정하는 경우이다. 이 경우 특별히 고려해야 하는 점은 단순히 마침표나 특수문자를 그냥 제외해서는 안된다는 것이다. 예를 들어, Ph.D., m.p.h. 등의 줄임말들은 마침표까지 하나의 토큰으로 분류해야 하는 경우가 있다. 추가적으로 단어들은 품사에 따라서 의미가 달라지기도 한다. 단어들의 품사를 찾아내는 과정을 POS(Part of .. 2020. 12. 28.
[통계학 기초] 확률분포(probability distribution) 확률분포(probability distribution) 확률분포에 대해서 이야기하기 전에, 확률변수에 대해서 먼저 이야기해보겠습니다. 확률변수(random variable, r.v)는 표본공간(S)의 각 단위 사건에 실수값을 부여하는 함수를 의미합니다. 확률변수는 크게 이산확률변수와 연속확률변수로 구분합니다. 첫 번째로, 이산확률변수는 확률변수 X가 취할 수 있는 값이 유한(finite) 한 경우 자연수와 일대일 대응이 되는 무한개인 경우 두 가지 경우를 의미합니다. 확률변수 x와 확률분포 f(x)는 다음과 같이 정의합니다. $$ x = x_{1}, x_{2}, ..., x_{n} $$ $$ f(x_{i}) = P(X = x_{i}) (i = 1, 2, ..., n) $$ 두 번째로, 연속확률변수(con.. 2020. 7. 17.
[통계학 기초] 확률(Probability) 확률(probability) 미래에 발생할 수 있는 사건은 크게 두 가지로 나눠집니다. 완전하게 예측이 가능한 사건 불확실성(uncertainty)을 가진 사건 우리는 두 번째 사건인, 불확실성을 가진 사건에 대해서 객관적 자료를 근거로 확률을 제기하기 위해 통계학을 사용합니다. 확률에 대해서 구체적으로 이야기해보기 전에, 몇 가지 용어들을 정의해보겠습니다. 실험(experiment) : 질행하기 전에는 결과를 알 수 없는 행위 ex) 주사위 던지기 표본공간(sample space) : 실험을 했을 때 나타날 수 있는 모든 결과의 집합(S) ex) 주사위를 던졌을 때 나올 수 있는 결과 S = (1, 2, 3, 4, 5, 6) 단위(단순) 사건(simple event) : 표본공간의 원소 중 하나 $ e.. 2020. 7. 16.
[통계학 기초] 자료(data)의 종류, 중심과 퍼짐, 상관관계 자료의 종류 양적 자료(numerical data) 양적 자료를 자료 자체가 숫자와 1:1로 대응하는 자료를 의미합니다. 1. 연속형 자료(continuous data) 연속형 자료는 일정 구간의 실수 값을 모두 취할 수 있는 경우를 의미합니다. 2. 이산현 자료(discrete data) 이산형 자료는 정수값을 취하는 자료를 의미합니다. 질적 자료(qualitative data) 질적 자료는 자료가 숫자의 개념이 아닌, 단순히 구분하기 위해서 사용하는 자료를 의미합니다. 1. 명목형 자료(nomial data) 명목형 자료는 단순히 데이터의 구분을 위해 데이터와 숫자를 대응한 것을 의미합니다. 성별을 예로 들어보면, 남자를 1 여자를 0으로 대응시키면, 0과 1은 명목형 자료라고 할 수 있습니다. 2... 2020. 7. 15.
[딥러닝 기초] 총 정리 : 신경망, 경사하강법, 오차역전법 (수정 중) 안녕하세요 :) 이번 게시물에서는 여태까지 배운 내용들을 총 정리해보겠습니다. 아직 이전 게시물을 다 읽어보지 못하신 분들을 한번 쭉~ 읽어보시는걸 추천드립니다! 이번 게시물에서는 신경망의 구조 경사하강법(gradient descent) 오차역전법(back propagation) 합성곱 신경망(convolution neural network) 에 대해서 다뤄보겠습니다. 1. 신경망(neural network) 뉴런 (neuron) 딥러닝 신경망은 우리 몸에 있는 뉴런을 기반으로 만들어졌습니다. 그렇기에 뉴런의 동작 방식을 먼저 알아보겠습니다. 뉴런의 가장 큰 특징은 입력값의 크기가 임계값보다 크거나 같아아지 반응을 한다는 것입니다. 입력값 ≥ 임계값 : 뉴런이 반응함 입력값 < 임계값 : 뉴런이 반응하지.. 2020. 7. 15.
[통계학 기초] 모집단과 표본 우리가 흔히 말하는 빅데이터(big data)는 3V라는 특징을 가지고 있습니다. Velocity : 빠른 속도로 데이터가 증가합니다. Volume : 대용량의 데이터로 구성됩니다. Variety : 여러 형태의 데이터로 구성됩니다. 이러한 데이터는 인공지능(Artificial Intelligence, AI)에서도 중요한 역할을 하고 있습니다. 인공지능에서 입력은 반드시 데이터(자료)의 형태를 갖습니다. 인공지능을 이용한 핵심 기술은 크게 2가지로 볼 수 있는데, 음성인식(voice recognition)과 형상인식(pattern recognition) 입니다. 자율주행 자동차를 두 가지 기술을 모두 사용하는 미래 기술의 대표적인 예시로 들 수 있습니다. 자율주행 자동차에서 사용되는 인공지능에 제공되는 .. 2020. 7. 14.
[딥러닝 기초] 합성곱 신경망(CNN) - 2 안녕하세요 :) 오늘은 저번 게시물에서 마저 다루지 못한 합성곱 신경망에 대해서 더 다뤄보겠습니다. 이전 게시물을 아직 보지 못하셨으면 여기를 클릭해주세요! 이번 게시물에서는 이전에 다룬 유닛의 오차를 합성곱 신경망에서 어떻게 사용할 것인지에 대해서 알아보겠습니다. 합성곱 신경망 합성곱 신경망에서 유닛의 오차(δ) 합성곱 신경망에서는 두 가지 종류의 유닛의 오차가 존재합니다. 합성곱층의 유닛의 오차 출력층의 유닛의 오차 합성곱층과 출력층에 대해서 서로 다른 방법으로 유닛의 오차를 사용하게 됩니다. 1. 출력층 유닛 출력층 유닛의 기울기 성분 유닛의 오차를 이용해서 출력층 유닛의 기울기 성분을 표현해보겠습니다. 출력층을 간략하게 그려보면 다음과 같습니다. 유닛의 오차(δ)를 이용해서 출력층 유닛의 기울기 .. 2020. 7. 13.
[딥러닝 기초] 합성곱 신경망(CNN) - 1 안녕하세요 :) 오늘은 신경망의 여러가지 종류 중 합성곱 신경망(Convolutional Neural Network, CNN)에 대해서 이야기해보겠습니다. 합성곱 신경망(CNN) 합성곱 신경망은 기존에 배운 신경망과는 다르게 은닉층이 여러개의 합성곱(convolution)층과 풀링(pooling)층으로 이루어져 있습니다. 합성곱층에서는 이미지 데이터에 비교하는 패턴과 일치하는 부분이 얼마나 포함되어 있는지 확인합니다. 원하는 패턴이 많이 포함되어 있으면 정보를 적극적으로 다음 층으로 전달합니다. 전달하는 정보는 합성곱층의 유닛에 기록합니다. 풀링층에서는 합성곱층의 활동 정보를 묶어서 정리합니다. 기존의 신경망과 다른 합성곱 신경망의 장점은 다음과 같습니다. 복잡한 패턴인식 문제도 간결한 신경망으로 해결할.. 2020. 7. 11.