NLP(5)
-
'뉴진스' 네이버 뉴스 기사 크롤링
오늘은 지난번에 배운 .find() 함수를 활용하여 킹짱 '뉴진스' 네이버 뉴스 크롤링을 해볼 예정이다. 뉴스 검색 결과에서 네이버뉴스 추려내기 네이버에 '뉴진스'를 검색하고 주소창을 확인하면 다음과 같은 url을 확인할 수 있다. 이를 가져와 코드로 작성하고, query = '뉴진스' url = "https://search.naver.com/search.naver?where=news&query=" + query web = requests.get(url).content source = BeautifulSoup(web, 'html.parser') 웹 페이지의 HTML 내용을 가져와서 파싱하여 source에 구조화 된 형태로 저장하였다. (필요한 정보 추출을 위해) 네이버뉴스 제목 크롤링 '뉴진스' 검색 후..
2024.01.02 -
쇼생크 탈출과 갓파더 리뷰 텍스트 유사도 비교
앞서 배운 TF-IDF 개념과 코사인 유사도 개념을 가지고 명작 쇼생크 탈출과 갓파더 리뷰 텍스트간 유사도를 계산해보자 TF-IDF & 코사인 유사도를 이용하여 텍스트 간 유사도 계산하기 1) 유사도 분석에 필요한 패키지 불러오기 from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.metrics.pairwise import cosine_similarity 2) 영화 리뷰 파일 불러오기 # 쇼생크 탈출 리뷰 텍스트 불러오기 file open('shawshank.txt', 'r', encoding='utf-8') lines = file.readlines() # 영화 리뷰 파일의 모든 라인을 읽어와 리스트로 저장 doc1 = ' '..
2024.01.01 -
나는 나랑 닮은 사람이 좋아.
A씨: 나는 나랑 비슷한 사람을 만나고 싶어요. 좋아하는 음식이나, 취미를 공유할 수 있는 그런 사람.. 💬 : 좋아하는 걸 말해볼래요? A씨: "운동 너무 좋아해요" A씨에게 추천해줄 상대 리스트를 살펴보고, 가장 어울리는 사람을 찾아보자. 이름 운동에 대한 본인의 생각 B씨 "운동 별로에요" C씨 "운동 싫어요" D씨 "운동 좋아해요" 각각의 생각을 나타낸 텍스트만 보고 누가 가장 A씨랑 잘 어울릴지 어떻게 알 수 있을까? A씨의 생각과 추천 상대들의 생각을 나타낸 텍스트 유사성을 측정해보면 누가 가장 적합한 상대일 지 고를 수 있을 것이다. 그렇다면, 텍스트 유사성을 측정하는 방법 중 자주 쓰이는 코사인 유사도를 통해 상대를 알아보도록 하자. 코사인 유사도 지난 수업에서 배운 TF-IDF나 BOW(..
2023.12.29 -
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