본문 바로가기

전체 글192

08. RNN 기초 1. 순환 신경망(Recurrent Neural Network) 시계열 또는 자연어와 같은 Sequence 데이터를 모델링하는데 강력한 신경망, 시계열 데이터나 시퀀스 데이터를 잘 처리예) 주식 가격, 텍스트 데이터, 오디오 데이터Sequence: 단어의 문장, 연결되어 있는 정보1. RNN 동작 방식은닉층의 노드에서 활성화 함수를 통해 나온 결과값을 다시 출력층 방향으로 보내면서 은닉층 노드의 다음 계산의 입력으로 보내는 특징셀(cell): 은닉층에서 활성화 함수를 통해 결과를 내보내는 역할을 하는 노드, 이전의 값을 기억하려고 하는 일종의 메모리 역할을 수행은닉 상태( hidden state): 셀이 출력층 방향 또는 다음 시점인 t+1의 자신에게 보내는 값  rnn = torch.nn.RNN(inp.. 2024. 6. 27.
07. 워드 임베딩 시각화 1. 네이버 영화 리뷰 데이터 셋 총 20만개의 리뷰로 구성된 데이터로, 영화 리뷰를 긍/부정으로 분류하기 위해 만들어진 데이터셋리뷰가 긍정인 경우1, 부정인 경우 0으로 표시한 레이블로 구성되어 있음   ◼  데이터 준비설치               !sudo apt-get install -y fonts-nanum        !sudo fc-cache -fv        !rm ~/.cache/matplotlib -rf  import               import urllib.request        import pandas as pd   git-hub에 올라가 있는 파일 가져오기               urllib.request.urlretrieve('https://raw.githubus.. 2024. 6. 27.
06. 자연어처리 - 워드 임베딩 1. 워드 임배딩(Word Embedding)단어를 컴퓨터가 이해하고, 효율적으로 처리할 수 있도록 단어를 백터화하는 기술단어를 밀집 백터의 형태로 표현하는 방법워드 임배딩 과정을 통해 나온 결과를 임배딩 백터워드 임배딩을 거쳐 잘 표현된 단어 백터들은 계산이 가능하여, 모델에 입력으로 사용할 수 있음  1. 희소 표현(Sparse Representation)원 핫 인코딩을 통해서 나온 백터들은 표현하고자 하는 단어의 인덱스의 값만 1이고, 나머지 인덱스에는 전부 0으로 표현되는 백터 표현 방법원-핫 인코딩에 의해 만들어지는 백터를 '희소 백터'하고 함 2. 희소 백터의 문제점희소 백터의 특징은 단어의 개수가 늘어나면 백터의 차원이 한없이 커진다는 것원-핫 백터는 백터 표현 방식이 단순하여, 단순히 단어.. 2024. 6. 25.
05. 자연어처리 - 임베딩 실습 1. 유사도 측정 실습   ◼ 데이터             sen_1 = '오늘 점심에 배가 너무 고파서 밥을 너무 많이 먹었다'      sen_2 = '오늘 점심에 배가 고파서 밥을 많이 먹었다'      sen_3 = '오늘 배가 너무 고파서 점심에 밥을 너무 많이 먹었다'      sen_4 = '오늘 점심에 배가 고파서 지하철을 많이 먹었다'      sen_5 = '어제 저녁에 밥을 너무 많이 먹었더니 배가 부르다'      sen_6 = '이따가 오후 6시에 출발하는 비행기가 3시간 연착 되었다고 하네요'      training_documents = [sen_1, sen_2, sen_3, sen_4, sen_5, sen_6]      for text in training_documents:.. 2024. 6. 25.
04. 자연어처리 - 임베딩 1. 자연어의 특성 자연어를 기계가 처리하도록 하기 위해서 먼저 자연어를 기계가 이해할 수 있는 언어로 바꾸는 방법을 알아야 함토큰화 작업의 결과인 단어 사전을 기계가 이해할 수 있는 언어로 표현하는 과정이고, 단어 사전 내 단어 하나를 어떻게 표현할까의 문제로 볼 수 있음  1. 단어의 유사성과 모호성단어의 의미는 유사성과 모호성을 가지고 있는데 단어는 겉으로 보이는 형태인 표제어안에 여러가지 의미를 담고 있음 사람은 주변 정보에 따라 숨겨진 의미를 파악하고 이해할 수 있으나, 기계는 학습의 부재 또는 잘못된 데이터로 의미를 파악하지 못하는 경우가 있음 한 가지 형태의 단어에 여러 의미가 포함되어 생기는 중의성 문제는 자연어 처리에서 매우 중요동형어: 형태는 같으나 뜻이 서로 다른 단어 _예) 배다의어.. 2024. 6. 25.
03. 자연어처리 - 전처리 실습 1. 자연어 전처리   ◼ 뉴스 기사 크롤링 라이브러리 설치            # 웹 스크래핑을 통해 뉴스 기사를 수집하고 분석하는데 사용되는 라이브러리      !pip install newspaper3k   ◼ 지원 언어 확인                import newspaper        newspaper.languages()Your available languages are: input code full name   vi   Vietnamese   it   Italian   de   German   sr   Serbian   zh   Chinese   fa   Persian   be   Belarusian   sv   Swedish   el   Greek   da   Danish   no .. 2024. 6. 24.
02. 자연어처리 - 진행순서 1. 문제 정의 문제의 대한 솔루션이 있어야 하고, 명확하고 구체적일수록 알맞는 자연어처리 기술을 찾을 수 있음     2. 데이터 수집 및 분석다양한 학습데이터를 수집하기 위해 공개된 데이터셋, 유료 데이터셋 또는 웹 크로링을 사용하여 수집 사이트: https://paperswithcode.com/datasets?mod=texts&task=question-answering  Papers with Code - Machine Learning Datasets282 datasets • 132562 papers with code.paperswithcode.com웹크로링을 통해 데이터를 수집 했다면 EDA(탑색적 데이터 분석) 및 분석을 통해 데이터를 철저하게 검증해야함레이블이 필요하다면 수집한 데이터에 레이블을.. 2024. 6. 24.
01. 자연어처리 - 개요 1. 자연어(Natural Language Processing, NLP)프로그래밍 언어와 같이 인공적으로 만든 기계언어와 대비되는 단어로, 우리가 일상에서 주로 사용하는 언어 1. 자연어 처리컴퓨터가 한국어나 영어와 같은 인간의 자연어를 읽고 이해할 수 있도록 돕는 인공지능의 한 분야자연어에서 의미 있는 정보를 추출하여 활용기계가 자연어의 의미를 이해하게 함기계가 사람의 언어로 소통할 수 있게 함2. 자연어처리의 활용문서 분류, 스팸 처리와 같은 분류 문제부터 검색어 추천과 같은 추천기능, 음성인식, 질의 응답, 번영 등의 다양한 분야에서 사용되고 있음반복 업무 자동화검색 효율 향상 및 검색 엔진 최적화대규모 문석 분석 및 정리소셜 미디어 분석3. 용어 정리자연어 이해(Natural Language Un.. 2024. 6. 24.
10. 포켓몬 분류 1. 포켓몬 분류  * Train: https://www.kaggle.com/datasets/thedagger/pokemon-generation-one * Validation: https://www.kaggle.com/hlrhegemony/pokemon-image-dataset kaggle.comkaggle.com  ◼ Kaggle API를 사용하여 Pokemon 데이터셋을 다운로드하고 압축을 해제       import os      os.environ['KAGGLE_USERNAME'] = 'sarahlee721'      os.environ['KAGGLE_KEY'] = 'b5dc455974daae96540089d7bcdf062a'      !kaggle datasets download -d theda.. 2024. 6. 21.