theory/NLP 6

[머신러닝 기초] 학습 유형

- 지도학습(Supervised Learning): 문제(feature)와 답(target, label)을 주면서 보정해 나감 분류: 양성/음성 등 단일값 예측 회귀: 연속값 예측 추천 시스템: A를 하면? -> B를 추천 시각, 음성 감지, 인지 - 비지도학습(Un-Supervised Learning): 답(target, label)이 없음 군집화: 비슷한 데이터 모으기 차원 축소: feature 줄이기, 함축 의미 찾기 토픽 모델링, 문서 군집화 - 강화학습(Reinforcement Learning):시행착오(Trial and Error)를 통해 학습, 보상 개념 존재 출처: [개정판] 파이썬 머신러닝 완벽 가이드 - 인프런

theory/NLP 2023.05.07

[머신러닝 기초] entropy, binary cross entropy, KL divergence

entropy 머신러닝 초기학습 진행 후, 성능을 높이려면 사람이 레이블링한 데이터를 추가해서 재학습을 시켜야 하는데 이는 (1) 비용이 크고 (2) train data 다시 넣을 시 중첩 데이터가 있어 비효율적이다. 이때 해결책으로 엔트로피를 사용하여 불확실한 값들을 필터링 할 수 있다. 엔트로피란, 정보를 표현하는데 필요한 '최소 정보량' / 정보의 만국 공통어 개념으로 여기서 '최소 정보량'이란, 0과 1의 bits 단위로, bits값이 최소값일 때 효율적으로 데이터를 저장하는 lower bound가 된다. 보통 가우시안 + continuous 에서 엔트로피가 최악이 되며, dicision tree에서도 앞에서부터 필터링하는데에 필요한 중요 요소 중 하나이다. binary cross entropy ..

theory/NLP 2022.09.26

BERT

BERT 정의: 문맥을 양방향으로 이해해서 숫자로 바꿔주는 딥러닝 모델 기존 모델과의 비교 ELMo: 정방향, 역방향으로 학습하여 hidden state들의 linear 결합을 통해 최종 token 도출 GPT: decoder를 사용하여 후반부 단어들 masking 시켜놓고 다음 단어를 예측하는 방식으로 학습 BERT: encoder를 사용하여 방향성 없이 한꺼번에 모두 처리, masked 단어를 예측하는 방식으로 학습 SQuAD, NER, MNLI 같은 layer 1개만 BERT 위에 쌓음으로써 기존 모델들을 앞지를 수 있는 우수한 성능을 보인다. 모델 아키텍쳐 transformer의 encoder 블록만 사용 Sentence: 일련의 연속적인 text, 완벽한 문장이 아니어도 됨 (rather tha..

theory/NLP 2022.02.04

Transformer

배경 seq2seq를 처리하기 위해 기존 모델들은 recurrent model로 long-term dependency에 취약했다. 긴 문장에 어떤 정보와 다른 정보 사이의 거리가 멀때 해당 정보를 이용하지 못하는 문제가 발생했다. transformer는 recurrence를 사용하지 않고 attention mechanism만 사용해 input과 output의 dependency를 포착한다. recurrence : neural network에서 다음 step으로 넘어갈 때 출력 결과가 이전 계산 결과에 영향을 받는(=되풀이) 특징 recurrence와 convolution을 제거하고 attention을 사용하여 병렬처리를 가능케 하였다. Encoder (좌측) N개의 동일한 layer로 구성되어 있으며, ..

theory/NLP 2022.02.04

퍼셉트론(perceptron)

- 퍼셉트론(perceptron) 알고리즘은 딥러닝의 기초가 된다. - 다수의 신호를 받아 가중치와 편향 파라미터를 사용하여 계산한 뒤 임계값과 비교하여 하나의 신호로 출력한다. - 단층 퍼셉트론은 직선형 영역만 표현할 수 있고, 다층 퍼셉트론은 비선형 영역도 표현할 수 있다. - AND, OR 게이트 등의 논리 회로를 표현할 수 있고, 다층 퍼셉트론을 사용하면 XOR 게이트를 표현할 수 있다. - 다층 퍼셉트론은 이론상 컴퓨터를 표현할 수 있다. * 편향(bias) : 하나의 뉴런으로 입력된 모든 값을 다 더한 다음(= 가중합), 이 값에 더해주는 상수(=성향이라고 이해하면 된다)로, 최종적으로 출려되는 값을 조절하는 역할 참고: https://jh2021.tistory.com/3

theory/NLP 2022.01.17

sparql이란?

SPARQL(SPARQL Protocol and RDF Query Language): W3C 표준언어로 DB에서 RDF를 쿼리하는데 사용된다. 반환값은 기본적으로 triple 형태 1. SELECT: 흔한 RDB의 select문과 동일하다. 원하는 데이터를 조회하는데 쓰인다. 변수 앞에 $ 또는 ?를 붙이는데 주로 ?를 사용한다. - WHERE: RDB의 from과 동일한 역할이다. DB에서는 from절이 원하는 DB table에서 조건에 맞는 값을 찾는데 사용되지만, SPARQL에서는 정보가 모두 triple 패턴으로 구성되어있어 where절을 사용한다. 이때 WHERE에서는 { }를 사용하여 그 안에 triple 패턴을 정의하고 있다는 것을 기억해야 한다. 그리고 하나의 triple 패턴이 끝날 때에..

theory/NLP 2021.03.22