N-gram model과 등장 배경 (1) 본문
< 큰 흐름 >
* rule based NLP의 경우 실제 사용한 예를 분석 -> 규칙을 만들어 적용 -> 일반화 하기가 어렵다
-> 그래서 확률값을 기준으로 language model 을 구하기 시작했다
* machine readable 한 file 인 corpora : large databases of texts ( corpus 의 복수형 명사 )
> 실제 사용된 문장들의 모음
> raw texts , 이제는 인터넷 상에서 방대한 양의 뉴스 기사 등등 구할 수 있다.
> 외국은 google, 우리나라는 naver 등에서 엄청난 양의 corpus를 가지고 있는 것이다.
* balanced corpus : 다양한 장르의 문장들을 특정 비율로 모아서 구축한 corpus
ex : brown corpus , U.S , 1963-64 : 1M words 당시 표준 영어를 연구하기 위한 언어학 연구의 일환이였음
지금은 100만 단어는 별로.. 기본적으로 10억 100억 개.. 사용한다
-> 일일이 규칙을 만드는 것 보다는, 정답을 tagging 하는 것이 쉽다 !!
* tagged corpus : raw corpus를 가공한 형태로
> p.o.s tagged
> tree tagged ( penn treebank ) -> 일일이 정답을 parse 하여 tree 형태로 만든 것
> semantic code tagged
> discourse structure tagged corpus
> parallel corpus for MT ( machine training ) -> 한 - 영 번역 문장을 allign 한 것
* Statistical Machine Learning for NLP
> corpus ( tagged or untagged ) 를 이용하여 특정유형 (N-gram)이 나타나는 빈도를 측정하여 NLP에 적용
> 이러한 방식이 DL을 적용하는데 굉장히 큰 도움이 된다
** conditional probabilty 를 전제
** Language Models
정제된 문법을 기준으로 하면 ( formal grammers : regular - type 3, context free - type 2 ) 는 a hard binary model 이다.
결과는 문장이 맞거나 틀리거나
그러나 nlp 에서 probabilistic model 은 맞고 틀리고가 아니라 확률적으로 계산해야 한다.
결과는 ~~% 맞았다. ( 점수 )
-> 확률은 과학적인 방법으로 점수를 매기는 방법이다
-> 모든 문장의 확률 값은 1이 된다.
그렇다면 language를 어떻게 하면 확률로 표현할 수 있을까?
** Use of language models
> speech recognition 음성인식
> OCR & Handwriting recognition 문자 인식
> Machine translation 기계 번역
> Generation 언어 생성
> Context sensitive spelling correction 맥락 기반 철자 교정
> 문장 예측 ( 완성 ) : please turn off your cell____. -> 이런걸로도 학습 많이 함 ( DNM )
> 텍스트 입력 예측 시스템 : guesses what you are typing and gives choices on how to complete it
'딥러닝 > 자연어처리' 카테고리의 다른 글
문법과 파싱 (0) | 2022.03.26 |
---|---|
Grammars and Parsing (0) | 2022.03.23 |
ML/DL NLP에서의 접근 방법 (0) | 2022.03.02 |
언어의 모호성과 해결 방법, NLP 기술의 발전사 (0) | 2022.03.02 |
Linguistic Rules와 자연언어처리의 어려움 (0) | 2022.03.02 |