본문 바로가기

딥러닝

[에어] 'KcELECTRA' 로 악성댓글 분류 모델 만들기 (파이썬/Colab) 에어 프로젝트 #7 KcELECTRA 로 악성댓글 분류 모델 만들기 인터넷에 게시된 댓글을 읽다보면 우리는 수많은 악플을 마주하게 된다. 따라서 많은 기업들은 이를 자동으로 처리하기 위한 여러가지 방법들을 도입해 최대한 욕설이나 혐오표현들을 포함한 악성댓글이 게시되지 않도록 하고 있다. 예를 들어, 필터링을 거쳐 다른 언어로 바꾸거나, 욕설에 대해 ****와 같은 마스킹 처리를 하는 등 다양한 노력을 기울이고 있다. 하지만, 비속어를 사용하지 않고도 특정 성별, 인종을 비하하는 혐오표현을 사용하거나 강한 비난표현을 통해 상대를 모욕하는 등 방법은 다양하다. 때로는 욕설이 아님에도 필터링에 의해 욕설로 인식하는 문제가 발생하기도 한다. 그렇다면 어떤 방식으로 효율적이고 정확하게 악성댓글을 탐지할 수 있을까.. 더보기
AAE (Adversarial AE) 【8】최근 AutoEncoder 응용 모델 이해하고 사용하기 / AAE AAE (Adversarial AE) 이번에는 AAE(Adversarial AE)를 배워보자. AAE는 VAE와 GAN을 합친 모델이다. GAN은 다음시간에 배울 내용이며 GAN을 보고 오시면 이해가 쉽다. AAE는 GAN에 구조를 띄고 있고 제너레이터(generator)를 VAE로 바꾼 모델이다 try: %tensorflow_version 2.x" except Exception: pass import tensorflow as tf from tensorflow.keras import layers,models,datasets,losses import numpy as np import matplotlib.pyplot as plt 모델을 .. 더보기
CVAE (Convolution VAE) 【8】최근 AutoEncoder 응용 모델 이해하고 사용하기 / CVAE CVAE (Convolution VAE) Convolution VAE를 해보자 기존에 사용했더 VAE는 순환 신경망를 사용하였지만 이번 모델은 CNN으로 바꾼 모델이다. 패키지들은 VAE와 동일하게 때문에 생략을 한다. (x_train, _), (x_test,_) = datasets.mnist.load_data() x_train = x_train.astype('float32') / 255. x_train = x_train.reshape(-1,28,28,1) x_test = x_test.astype('float32') / 255. x_test = x_test.reshape(-1,28,28,1) CNN을 사용하기 때문에 차원은 2차원이.. 더보기
Convolutional AE 【8】최근 AutoEncoder 응용 모델 이해하고 사용하기 / Convolutional AE Convolutional AE 이번에는 CNN과 AE과 결합된 모델인 CAE를 실습해보자 이미지에서 강점을 보인 CNN이기 때문에 성능은 좋아졌다. 바로 CAE로 생성된 mnist 이미지부터 보겠습니다. 위에 있는 이미지는 원본이미지고 아래는 CAE로 나온 예측 이미지다. 손실이 거의 발생하지 않은 상태의 이미지인 것을 확인 할 수가 있다. 높은 성능을 보이기에 책에는 따로 실습을 담지 않았지만 실습파일에는 있으니 시간이 있다면 실습을 하는걸 추천한다. 실습은 노이즈가 섞인 이미지 데이터를 CAE로 학습하는 것을 할 것이다. try: %tensorflow_version 2.x" except Exception: .. 더보기
Deep AE를 이용한 가짜 이미지 생성 【7】AutoEncoder 기본 다지기 / 이미지 생성 실습으로 익히는 AE 이번에는 Deep AE를 배워보자 기존에 AE에서 순환신경망을 여러 개 쌓아 깊게 변형된 모델이다 기존코드에서 사용했던 모듈들을 그대로 사용하기에 전처리까지는 생략을 한다(이전 글 참고). Hidden_input1 = 512 Hidden_input2 = 256 Hidden_input3 = 128 Hidden_input4 = 64 Hidden_input5 = 32 input_layer = layers.Input(shape=(784,)) Encoding = layers.Dense(Hidden_input1)(input_layer) Encoding = layers.Dense(Hidden_input2)(Encoding) Encoding .. 더보기
Show, Attend and Tell (Encoder, Decoder, Attention) 【5】RNN 기본 다지기 / Show, Attend and Tell Show, Attend and Tell (Encoder, Decoder, Attention) 이번에 소개할 이미지 캡셔닝 논문은 2016년에 발표된 [Show, Attend and Tell: Neural Image Caption Generation with Visual Attention] 이다.이 논문은 6.2장에서 언급한 show and tell의 후속작으로 이전 논문에 Attention 매커니즘을 추가하였다. 이전 논문처럼 인코더 부분은 CNN으로 디코더 부분은 RNN(LSTM)으로 같으나 문장을 만드는 디코더 파트에 attention을 적용하였다. 그 결과 이미지 설명문의 매 단어를 생성할때 모델 스스로 이미지의 어디를 볼지 학습한.. 더보기
Show and Tell (이미지 캡셔닝) 【6】 최근 RNN 응용 모델 이해하고 사용하기 / Show and Tell Show and Tell (이미지 캡셔닝) 작성자 홍다혜 ghdek11@gmail.com / 이원재 wonway333@gmail.com 더보기
GRU - 리셋 게이트 /업데이트 게이트 / 입력정보 처리 / 출력 값 계산 출처 【6】최근 RNN 응용 모델 이해하고 사용하기 / GRU GRU - 리셋 게이트 /업데이트 게이트 / 입력정보 처리 / 출력 값 계산 출처 작성자 홍다혜 ghdek11@gmail.com / 이원재 wonway333@gmail.com 더보기
LSTM을 이용한 자연어처리 (실습) 【5】RNN 기본 다지기 / 실습으로 익히는 순환신경망 LSTM을 이용한 자연어처리 (실습) 이번에는 RNN의 강점이라고 할 수 있는 자연어처리를 해보자 모델에 사용 할 데이터셋은 IMDB 데이터다. IMDB 사이트에 등록된 리뷰를 긍정인지 부정인지를 분류하는 문제다. from tensorflow.keras import models,layers,datasets from tensorflow.keras.preprocessing.sequence import pad_sequences 텐서플로우 2.0 생략하고 자연어처리 실습에 사용될 패키지들이다. (x_train,y_train),(x_test,y_test) = datasets.imdb.load_data(num_words=10000) IMDB 데이터셋을 호출하는.. 더보기
LSTM을 이용한 시계열 데이터 분석(실습) 【5】RNN 기본 다지기 / 실습으로 익히는 순환신경망 LSTM을 이용한 시계열 데이터 분석 (실습) 이전에 실습했던 내용은 SimpleRNN을 사용했고 이번에는 LSTM을 이용한 시계열 데이터 처리를 배워보자 데이터셋은 SimpleRNN 실습 때 사용했던 것을 재사용한다. data = np.sin( np.pi * np.arange(0, 100)* 2.025 ) + np.random.random(100) x = np.array([data[i+j] for i in range(len(data)-10) for j in range(10)]) x_train = x[:700].reshape(-1,10,1) x_test = x[700:].reshape(-1,10,1) y = np.array([data[i+10] fo.. 더보기