'뉴진스' 네이버 뉴스 기사 크롤링
·
Portfolio/kakao X goorm 군 장병 AI·SW 교육
오늘은 지난번에 배운 .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에 구조화 된 형태로 저장하였다. (필요한 정보 추출을 위해) 네이버뉴스 제목 크롤링 '뉴진스' 검색 후..
쇼생크 탈출과 갓파더 리뷰 텍스트 유사도 비교
·
Portfolio/kakao X goorm 군 장병 AI·SW 교육
앞서 배운 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 = ' '..
나는 나랑 닮은 사람이 좋아.
·
Portfolio/kakao X goorm 군 장병 AI·SW 교육
A씨: 나는 나랑 비슷한 사람을 만나고 싶어요. 좋아하는 음식이나, 취미를 공유할 수 있는 그런 사람.. 💬 : 좋아하는 걸 말해볼래요? A씨: "운동 너무 좋아해요" A씨에게 추천해줄 상대 리스트를 살펴보고, 가장 어울리는 사람을 찾아보자. 이름 운동에 대한 본인의 생각 B씨 "운동 별로에요" C씨 "운동 싫어요" D씨 "운동 좋아해요" 각각의 생각을 나타낸 텍스트만 보고 누가 가장 A씨랑 잘 어울릴지 어떻게 알 수 있을까? A씨의 생각과 추천 상대들의 생각을 나타낸 텍스트 유사성을 측정해보면 누가 가장 적합한 상대일 지 고를 수 있을 것이다. 그렇다면, 텍스트 유사성을 측정하는 방법 중 자주 쓰이는 코사인 유사도를 통해 상대를 알아보도록 하자. 코사인 유사도 지난 수업에서 배운 TF-IDF나 BOW(..
Darknight 리뷰 Exploration & Visualization
·
Portfolio/kakao X goorm 군 장병 AI·SW 교육
가장 많이 등장하는 단어 추출해보기 앞서 배웠던 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..
Preprocessing Text Data
·
Portfolio/kakao X goorm 군 장병 AI·SW 교육
코퍼스(Corpus) "코퍼스"는 언어 모델(LM)이나 자연어 처리(NLP) 시스템을 훈련시키기 위한 텍스트 데이터의 집합이다. 이 데이터는 다양한 주제와 형식의 텍스트로 구성될 수 있으며, 언어 모델이 언어 패턴, 의미, 문법 등을 이해하고 학습하는 데 사용된다. 예를 들어, 트위터 코퍼스는 트위터에서 수집한 트윗들의 집합으로, 실시간 발생하는 트윗(텍스트 데이터)이 쌓이고 다음과 같은 특징들을 갖는다. 1. 전 세계의 다양한 언어와 스타일 : 전 세계에서 사용되므로 다양한 언어로 작성된 트윗들이 포함 2. 해시태그 및 멘션 : 주제에 대한 해시태그(#)와 다른 사용자 멘션(@) 3. 이모티콘 및 감정 표현 : 사용자들이 감정을 나타내거나 특정 상호아에 대한 반응 전달을 위해 사용 4. 실시간 이벤트 ..
텍스트 유사성 분석
·
Portfolio/kakao X goorm 군 장병 AI·SW 교육
다음 두 문장을 비교해보자. "고양이는 쥐를 먹는다." "쥐는 고양이의 밥을 먹는다." 인간은 쉽게 차이를 구별하지만, 컴퓨터가 이해하려면? 정확한 문맥 파악을 하지 않으면 쉽지 않을것이다. 두 개의 문장이 얼마나 유사한지 어떻게 분석할 수 있을까? 바로 텍스트 유사성 분석이다. 텍스트 유사성 분석 온라인 쇼핑 플랫폼에 작성된 질문들을 보면 다음과 같은 질문들을 많이 봤을 것이다. "언제 상품을 받아볼 수 있을까요?" "상품 도착 예정일을 알려주세요." 두 문장은 다른 어휘를 사용했지만, 의미적으로는 매우 유사하다. 텍스트 유사성 분석은 어휘적 유사성과 의미적 유사성을 비교했을때 얼마나 가까운지 확인하기 위해 시행한다. 정확한 문맥 파악을 위해서 문장 임베딩은 이러한 차이에 민감해야 한다. 임베딩이 뭘까..
개발자 도구 & Web Scraping 프로세스
·
Portfolio/kakao X goorm 군 장병 AI·SW 교육
개발자 도구 네이버에 데이터분석을 검색 후 뉴스 기사를 들어간 후 페이지의 아무 부분에 커서를 대고 마우스 오른쪽 클릭을 하면 페이지 소스 보기 항목이 나온다. 항목을 누르면 다음과 같은 HTML 코드가 쭉 작성된 페이지가 새로 나타난다. 앞서 배운것처럼 태그 안에 태그가 있고, 그 안에는 css나 JS와 관련된 여러 태그들로 구성되어 있는 것을 볼 수 있다. 잘 들여다보면 페이지의 박스와 관련된 div안에 div가 들어가 있는 식으로 여러 개의 div가 중첩되어 있는 것을 볼 수 있다. 만약 본문에 해당하는 태그를 찾으려면? 소스 페이지에서 본문에 해당하는 태그를 직접 찾으려면 매우 번거롭고, 오래 걸릴 것이다. 이때 우리를 도와줄 도구가 오늘 배울 개발자 도구 이다. 뉴스 기사 페이지에서 Ctrl +..
Web Scarping & HTML 기초
·
Portfolio/kakao X goorm 군 장병 AI·SW 교육
Web Scraping vs Web Craling 우리는 원하는 정보를 얻기 위해 다양한 플랫폼을 이용하고 있다. 네이버와 같은 검색 포털부터, 야놀자와 같은 숙박업소 정보 플랫폼 등 카테고리 별로 떠오르는 플랫폼만 해도 수십 가지이다. 이처럼 수많은 플랫폼 사이에서 우리는 '우리가 찾는 데이터를 얼마나 많이 보유하고, 알맞게 보여주는지'에 따라 플랫폼을 선택한다. 플랫폼들은 수많은 데이터 속에서 웹 크롤링(Web Crawling) 과 웹 스크래핑(Scraping) 기술을 활용하여 고객에게 서비스를 제공한다. 두 기술의 차이가 뭘까? 웹 크롤링(Web Crawling) 웹 크롤링이란 웹 상의 정보들을 탐색하고 수집하는 작업이다. 인터넷에 존재하는 방대한 양의 정보를 사람이 일일이 파악하는 것은 불가능하므..
semlng
'Portfolio/kakao X goorm 군 장병 AI·SW 교육' 카테고리의 글 목록