# biLSTM

5개의 포스트

기록5. 영상의 댓글/ 하이라이트 타임라인을 요약해보자 (감성분석)

영상을 올리고 해당 영상의 민심(?), 반응이 어떤지 확인할 수 있는 comment 분석기 기능을 추가해봤습니다. 데이터 학습에 필요한 데이터를 모아봤습니다. >* 한국어 단발성 대화 한국어 악성댓글 데이터 욕설이 들어갔거나, 강한 혐오표현, 비난 욕설 감지 데이터셋 단순 욕설, 인종 차별적인 말, 정치적 갈등을 조장하는 말, 성적·성차별적인 말, 타인을 비하하는 말, 그 외에 불쾌감을 주거나 욕설로 판단되는 말 youtube comment 수집하여 일부 라벨링 >### 전처리, tokenizer 모델 일부 인터넷 용어들 사전을 따로 만들어주기위해 커스텀하기 쉬운 ckonlpy로 선정 ckonlpy >### 학습모델 LSTM, LSTM+A

2023년 8월 2일
·
0개의 댓글
·

밑바닥부터 시작하는 딥러닝 2 - 8장

8장 어텐션 어텐션의 구조(p.335) seq2seq의 문제점으로 Encoder의 출력이 '고정 길이 벡터'라는 점이 있다. -> 입력 문장이 아무리 짧던 길던 고정 길이로 변환되니 중요한 정보가 흩어지거나 소실될 수 있다. Encoder 개선 마지막 LSTM 계층의 Encoder 출력(단일 벡터)만 Decoder에 전달했던 방식을 입력 문장의 길이에 따라 바꿔준다.(복수 벡터) -> 시각별 LSTM(단어들)의 벡터를 모두 이용. Decoder 개선 1 위 Encoder 개선과 마찬가지로 Decoder의 모든 시각의 LSTM 계층이 Encoder 출력, 은닉 상태,를 받도록 개선한다. 입력과 출력의 여러 단어 중 어떤 단어끼리 서로 관련되어 있는가? 라는 대응관계를 seq2seq에 학습시키는 기술이 어텐션이다. -> 단어들끼리의 대응관계를 얼라인먼트(alignment)라고 한다. 원

2022년 10월 1일
·
0개의 댓글
·
post-thumbnail

[NLP] BERT에 CRF, BiLSTM, BiGRU 결합하는 방법

requirements Python 3.8.3 transformers 4.16.2 torchcrf 0.0.1 KoBert + CRF KoElectra + CRF **BiLSTM이나 BiGRU를 사용할때는 packpaddedsequence와 padpackedsequence 함수를 사용한다. 나는 이부분에서 에러가 발생했다. 여기서 주의해야할 몇가지가 있다. packpaddedsequence(Tensor, Tensor, batchfirst=True, enforcesorted=False)이 들어가야 하므로 기존의 소스코드인 seqlength가 아니라 seqlength.cpu()로 변경해야한다. 그리고 padpackedsequence에서는 코드에 없었던 totallength=maxlen으로 지정해줘야한다. 필자의 경우 max_len이 256이라서 256라고 적었다. KoBERT

2022년 2월 14일
·
0개의 댓글
·
post-thumbnail

Named Entity Recognition with BiLSTM + CNN

이번 글에서는 여기서 사용한 데이터셋과 전처리를 이용하여 다른 모델을 만들어 볼 것이다. 이전에서는 BiLSTM을 이용했지만 이번에는 BiLSTM과 CNN을 동시에 이용하여 만들어보자. 이번 내용에서는 단어(Word)와 글자(Character)의 차이를 헷갈리지 않도록 조심하자. 여기서이미 1D CNN을 이용한 텍스트 분류를 진행했던 적이 있다. 이 내용을 잠시 가져와보면 이런 느낌이었다. 이번에는 단어 대신에

2021년 9월 1일
·
0개의 댓글
·
post-thumbnail

Deep contextualized word representations

논문 https://arxiv.org/pdf/1802.05365.pdf Github https://github.com/HIT-SCIR/ELMoForManyLangs ​ ​ 등장 배경 "너에게 사과를 한다.", "사과 먹을래?" 에서 "사과"라는 단어는 같지만, 다른 의미를 가집니다. 기존의 Word2Vec나, Glove등의 모델은 "사과"는 같은 임베딩 값을 가집니다. 단어가 어떻게 사용되느냐에 따라 다르게 의미를 임베딩 하는 방법이 바로 ELMo가 사용한 방법인 Contextualized Word Embedding입니다. 즉, ELMo는 동음이의어에 대해 서로 다른 벡터로 임베딩 할 수 있게 문맥을 고려하여 임베딩합니다. 모델 구조 ELMo는 다층 구조인 양방향 LSTM를 이용합니다. [![](https://images.velog.io/images/jaeyun95/post/dbb9f750-db71-41e9-974f-b01d1ac96ecc/image.pn

2021년 4월 13일
·
0개의 댓글
·