Learning Journey(11)
-
Darknight 리뷰 Exploration & Visualization
가장 많이 등장하는 단어 추출해보기 앞서 배웠던 Tokenization과 Stopwords 제거를 이용하여 NLTK 라이브러리를 사용하여 영화 Dark Knight 리뷰에서 많이 등장하는 명사를 추출해보자! 1) Stopwords 준비 import nltk from nltk.corpus import stopwords from collections import Counter # 중복된 데이터가 저장된 배열에서 각 원소가 몇 번씩 나오는지 알기 위해 Counter import stop_words = stopwords.words("english") # NLTK에서 제공하는 기본 영어 불용어 사전 추가 stop_words.append(',') stop_words.append('.') stop_words.appe..
2023.12.29 -
Preprocessing Text Data
코퍼스(Corpus) "코퍼스"는 언어 모델(LM)이나 자연어 처리(NLP) 시스템을 훈련시키기 위한 텍스트 데이터의 집합이다. 이 데이터는 다양한 주제와 형식의 텍스트로 구성될 수 있으며, 언어 모델이 언어 패턴, 의미, 문법 등을 이해하고 학습하는 데 사용된다. 예를 들어, 트위터 코퍼스는 트위터에서 수집한 트윗들의 집합으로, 실시간 발생하는 트윗(텍스트 데이터)이 쌓이고 다음과 같은 특징들을 갖는다. 1. 전 세계의 다양한 언어와 스타일 : 전 세계에서 사용되므로 다양한 언어로 작성된 트윗들이 포함 2. 해시태그 및 멘션 : 주제에 대한 해시태그(#)와 다른 사용자 멘션(@) 3. 이모티콘 및 감정 표현 : 사용자들이 감정을 나타내거나 특정 상호아에 대한 반응 전달을 위해 사용 4. 실시간 이벤트 ..
2023.12.27 -
텍스트 유사성 분석
다음 두 문장을 비교해보자. "고양이는 쥐를 먹는다." "쥐는 고양이의 밥을 먹는다." 인간은 쉽게 차이를 구별하지만, 컴퓨터가 이해하려면? 정확한 문맥 파악을 하지 않으면 쉽지 않을것이다. 두 개의 문장이 얼마나 유사한지 어떻게 분석할 수 있을까? 바로 텍스트 유사성 분석이다. 텍스트 유사성 분석 온라인 쇼핑 플랫폼에 작성된 질문들을 보면 다음과 같은 질문들을 많이 봤을 것이다. "언제 상품을 받아볼 수 있을까요?" "상품 도착 예정일을 알려주세요." 두 문장은 다른 어휘를 사용했지만, 의미적으로는 매우 유사하다. 텍스트 유사성 분석은 어휘적 유사성과 의미적 유사성을 비교했을때 얼마나 가까운지 확인하기 위해 시행한다. 정확한 문맥 파악을 위해서 문장 임베딩은 이러한 차이에 민감해야 한다. 임베딩이 뭘까..
2023.12.19 -
개발자 도구 & Web Scraping 프로세스
개발자 도구 네이버에 데이터분석을 검색 후 뉴스 기사를 들어간 후 페이지의 아무 부분에 커서를 대고 마우스 오른쪽 클릭을 하면 페이지 소스 보기 항목이 나온다. 항목을 누르면 다음과 같은 HTML 코드가 쭉 작성된 페이지가 새로 나타난다. 앞서 배운것처럼 태그 안에 태그가 있고, 그 안에는 css나 JS와 관련된 여러 태그들로 구성되어 있는 것을 볼 수 있다. 잘 들여다보면 페이지의 박스와 관련된 div안에 div가 들어가 있는 식으로 여러 개의 div가 중첩되어 있는 것을 볼 수 있다. 만약 본문에 해당하는 태그를 찾으려면? 소스 페이지에서 본문에 해당하는 태그를 직접 찾으려면 매우 번거롭고, 오래 걸릴 것이다. 이때 우리를 도와줄 도구가 오늘 배울 개발자 도구 이다. 뉴스 기사 페이지에서 Ctrl +..
2023.12.19 -
Web Scarping & HTML 기초
Web Scraping vs Web Craling 우리는 원하는 정보를 얻기 위해 다양한 플랫폼을 이용하고 있다. 네이버와 같은 검색 포털부터, 야놀자와 같은 숙박업소 정보 플랫폼 등 카테고리 별로 떠오르는 플랫폼만 해도 수십 가지이다. 이처럼 수많은 플랫폼 사이에서 우리는 '우리가 찾는 데이터를 얼마나 많이 보유하고, 알맞게 보여주는지'에 따라 플랫폼을 선택한다. 플랫폼들은 수많은 데이터 속에서 웹 크롤링(Web Crawling) 과 웹 스크래핑(Scraping) 기술을 활용하여 고객에게 서비스를 제공한다. 두 기술의 차이가 뭘까? 웹 크롤링(Web Crawling) 웹 크롤링이란 웹 상의 정보들을 탐색하고 수집하는 작업이다. 인터넷에 존재하는 방대한 양의 정보를 사람이 일일이 파악하는 것은 불가능하므..
2023.12.19