분류 전체보기(28)
-
텍스트 유사성 분석
다음 두 문장을 비교해보자. "고양이는 쥐를 먹는다." "쥐는 고양이의 밥을 먹는다." 인간은 쉽게 차이를 구별하지만, 컴퓨터가 이해하려면? 정확한 문맥 파악을 하지 않으면 쉽지 않을것이다. 두 개의 문장이 얼마나 유사한지 어떻게 분석할 수 있을까? 바로 텍스트 유사성 분석이다. 텍스트 유사성 분석 온라인 쇼핑 플랫폼에 작성된 질문들을 보면 다음과 같은 질문들을 많이 봤을 것이다. "언제 상품을 받아볼 수 있을까요?" "상품 도착 예정일을 알려주세요." 두 문장은 다른 어휘를 사용했지만, 의미적으로는 매우 유사하다. 텍스트 유사성 분석은 어휘적 유사성과 의미적 유사성을 비교했을때 얼마나 가까운지 확인하기 위해 시행한다. 정확한 문맥 파악을 위해서 문장 임베딩은 이러한 차이에 민감해야 한다. 임베딩이 뭘까..
2023.12.19 -
BeautifulSoup 맛 보기
BeautifulSoup로 웹 스크래핑 단어와 단어의 의미만을 출력해보고 싶다면? 또, 여러 단어들의 의미들도 출력하고 싶다면? BeautifulSoup를 이용하여 웹 스크래핑 하면 쉽게 출력할 수 있다. https://semlog.tistory.com/4 에서 설명한 웹 스크래핑 프로세스를 떠올려보자. URL 분석 HTML 삽입 미리보기할 수 없는 소스 다음 사전에서 'happiness'를 검색했을 때의 URL이다. ? 를 기준으로 searh_do는 Daum's server-side script의 함수 중 하나를 나타내고, q=happiness는 (Web) Query를 의미하고, searh_do 함수의 parameter에 해당한다. 다음과 같이 이해하면 쉬울 듯 하다. def search_do(q) ~..
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