자연어 처리4 - LTSM, LTSM+CNN, Attention 비교
·
카테고리 없음
세 가지 신경망 모델(LSTM, LSTM-CNN, LSTM-Attention)의 시각화 결과에 대한 해석 각 모델의 학습 과정에서 생성된 손실(loss) 그래프를 분석하여 모델의 성능과 특성을 비교해 보겠습니다. 1. LSTM 모델 (로이터 뉴스 다중 분류) LSTM 모델은 로이터 뉴스 데이터셋을 46개 카테고리로 분류하는 작업을 수행합니다. 그래프 해석: • 학습 손실(파란색)은 에폭이 증가함에 따라 지속적으로 감소하는 경향을 보입니다. • 검증 손실(빨간색)은 초기에 감소하다가 특정 지점 이후에는 증가하거나 정체되는 경향이 있습니다. • 학습 손실과 검증 손실 간의 격차가 점차 벌어지는 것은 과적합(overfitting)의 징후입니다. • 조기 중단(early stopping)이..
자연어 처리4 - Attention
·
카테고리 없음
1. Attention을 사용한 신경망앞에서 진행한 LSTM+CNN 신경망과 이번에는 Attention 신경망의 차이에 대해서 한번 살펴보겠습니다.참고로 LSTM+CNN 신경망과 Attention 신경망에 대해서 chatGPT의 설명도 첨부하겠습니다.더보기LSTM+CNN 조합과 **Attention 신경망(특히 Transformer)**은 시계열, 자연어 처리(NLP), 음성 인식 등 다양한 분야에서 강력한 성능을 보입니다.하지만 기본 개념, 구조, 역할, 성능 면에서 차이가 큽니다.✅ 1. LSTM + CNN 조합: 구조와 역할 요약구성 요소 역할CNN지역(Local) 패턴 감지 (ex. 단어 조합, 이미지 조각)LSTM시계열 순서/문맥 파악 (ex. 문장의 흐름, 시간의 흐름)🔁 흐름:입력 → CN..
자연어 처리3 - LSTM+CNN
·
AI 공부
1. CNN(합성곱 신경망)과 LSTM(장단기 메모리)을 결합한 하이브리드 모델from tensorflow.keras.models import Sequentialfrom tensorflow.keras.layers import Dense, Dropout, Activation, Embedding, LSTM, Conv1D, MaxPooling1Dfrom tensorflow.keras.datasets import imdbfrom tensorflow.keras.preprocessing import sequencefrom tensorflow.keras.callbacks import EarlyStoppingimport numpy as npimport matplotlib.pyplot as plt# 데이터를 불러와 학습..
자연어 처리2 - LSTM
·
AI 공부
자연어 처리에서 사용하는 모델인 LSTM, CNN 에 대해서 tensorflow 를 통해 알아보겠습니다.먼저 chatGPT에게 물어본 LSTM과 CNN에 대한 설명입니다. LSTM, CNN에 대해서 설명해줘, 그리고 LSTM과 CNN 조합이 어떤면에서 좋은지 알려줘더보기LSTM과 CNN은 서로 다른 강점을 가진 딥러닝 모델이며, 둘을 조합하면 시계열 데이터나 자연어 처리 등에서 뛰어난 성능을 낼 수 있습니다.아래에서 각각의 모델을 설명한 뒤, 조합의 이점을 구체적인 예와 함께 설명드릴게요.✅ 1. LSTM (Long Short-Term Memory)📌 목적: 시간 순서에 따른 데이터 패턴을 학습하는 RNN 구조LSTM은 전통적인 순환신경망(RNN)의 문제점인 장기 기억 소실(gradient vanis..
자연어 처리1 - Tokenizer
·
AI 공부
자연어 처리의 시작은 텍스트의 토큰화 입니다. 텍스트를 토큰화 하는 과정과 패딩과 임베딩에 대해서도 알아보겠습니다. 1. 텍스트의 토큰화import osos.environ['TF_ENABLE_ONEDNN_OPTS'] = '0'from tensorflow.keras.preprocessing.text import Tokenizerfrom tensorflow.keras.preprocessing.sequence import pad_sequencesfrom tensorflow.keras.models import Sequential, Modelfrom tensorflow.keras.layers import Embeddingimport numpy as np# 전처리할 텍스트를 정합니다.text = '오늘은 자연어 처..
CNN(컨볼루션 신경망) 딥러닝 모델 2
·
AI 공부
앞에서는 relu와 softmax 활성함수를 통해서 간단한 다층 퍼셉트론 모델을 구축했다면 CNN(컨볼루션 신경망) 딥러닝 모델 1오늘은 컨볼루션 신경망에 대해서 공부하였습니다. CNN(Convolutional Neural Network, 합성곱 신경망)은 이미지나 영상처럼 공간 구조를 가진 데이터를 처리하는데 매우 강력한 딥러닝 모델입니다.아래crebiz-community.tistory.com 이번에는 CNN 모델을 사용한 딥러닝 코드를 보겠습니다. 이 이미지는 합성곱 신경망(CNN, Convolutional Neural Network)의 구조와 작동 원리를 보여주고 있습니다. 한국어로 설명하겠습니다: 이미지 구성 요소: 1. 왼쪽: 28x28 픽셀 크기의 MNIST 데이터셋 이미지 (숫자 '4'를 ..
CNN(컨볼루션 신경망) 딥러닝 모델 1
·
AI 공부
오늘은 컨볼루션 신경망에 대해서 공부하였습니다. CNN(Convolutional Neural Network, 합성곱 신경망)은 이미지나 영상처럼 공간 구조를 가진 데이터를 처리하는데 매우 강력한 딥러닝 모델입니다.아래는 chatGPT를 통한 CNN 에 대한 간략한 설명입니다.더보기딥러닝의 대표적인 구조 중 하나이며, 주로 이미지 인식, 객체 탐지, 얼굴 인식, 자율주행 등에 사용됩니다.✅ CNN의 핵심 개념CNN은 전통적인 완전연결신경망(Dense layer)과 달리, 이미지의 위치나 패턴 구조를 잘 파악할 수 있게 설계된 구조입니다. 기본적으로 다음 3가지 계층이 핵심입니다:1. 🧱 합성곱 계층(Convolutional Layer)이미지에 **필터(커널)**를 슬라이딩하면서 겹쳐 연산을 수행각 필터는..
RabbitMQ와 WebSocket 를 이용해서 STT 대화 화면 만들기
·
Back-end
Web 챗팅과 같은 실시간 대화하는 화면을 Claude 3.7 Sonnet 으로 생성해 보았다.Windsurf 툴을 이용해서 spring-boot 프로젝트를 생성하다보니, eclipse 에서 오류가 좀 발생해서프로젝트 생성은 eclipse 를 통해 spring-boot 프로젝트를 생성하고생성된 java 파일을 코딩하면서 만들었다. 만들어진 화면은 이렇게 생겼다.  테스트 결과는 이렇게 나온다. SttController  Publishing message to RabbitMQ: SttMessage(text=MQ로 전송 테스트, speaker=사용자, timestamp=null)SttMessageProducer Sending message to RabbitMQ: SttMessage(text=MQ로 전..