본문 바로가기

study26

Mecab 사용자 사전 추가하기 mecab에서는 사용자가 사전을 구축할 수 있도록 지원한다. 따라서 자연어 처리시 분석 품질을 높일 수 있다. 한국어 임베딩에서 제공하는 코드를 통해 진행해보았다. 추가로 konlpy를 윈도우 환경에서 실행시키다보면 환경 세팅이 까다롭다. 따라서 도커(docker)를 활용하여 리눅스 환경에서 설치해보았다. 1. Docker 컨테이너 빌드 우선 Docker 설치 후 한국어 임베딩 깃허브 사이트에서 제공하는 Dockerfile로부터 도커이미지 생성 및 컨테이너를 띄운다. 노트북이라 CPU 파일로 빌드했으며 아래 코드는 터미널에서 작성했다. git clone https://github.com/ratsgo/embedding.git cd embedding docker build -t ratsgo/embedding.. 2021. 2. 10.
슬랙봇(Slack bot) 만들기 회사를 다니면서 헬스케어 산업에 대한 관심이 많아졌다. 따라서 슬랙을 활용하여 관련 뉴스를 받아보는 뉴스봇을 개발해보았다. 1. 개요 : Webhook을 통해 특정 사이트의 특정 키워드를 포함하는 뉴스기사를 슬랙 App을 통해 전달 2. 사이트 : Platum - 스타트업 전문 미디어 3. 키워드 : 헬스, 케어, 금융, 핀테크 - 관심사 키워드 1. 패키지 설치 # 패키지 설치 import time import requests import datetime import json from bs4 import BeautifulSoup 2. 코드 최근 1주일 동안 위의 키워드를 포함하는 뉴스 기사를 크롤링해보기로 했다. keyword_list = keyword_list # 키워드 설정 n = n # 키워드당 .. 2020. 12. 31.
추천 시스템에 대하여 추천 시스템을 공부해보았다. 요즘 많이 주목받고 있는 분야이기도하고 그 전부터 궁금했다. 크게 협업 필터링과 콘텐츠기반 필터링으로 나뉜다. 간단히 정리해보자. 1. 추천 시스템의 정의 추천 시스템(recommender system)이란 사용자(user)가 선호하는 상품(item)을 예측하는 시스템이다. 기본 원리는 "과거는 곧 미래다."이다. 즉, 추천을 위해 필요한 데이터는 유저들의 행위에 대한 기록이다. 2. 추천 시스템의 분류 전체추천 : 불특정 다수에게 추천하는 형태(검색 엔진의 메인화면의 게시물) 그룹추천 : 사용자들을 특정 그룹으로 나누어 각 그룹에 특화된 컨텐츠를 추천하는 형태 개인추천 : 개인의 과거 이력을 바탕으로 그에 맞는 아이템을 추천하는 형태(일반적으로 CF 알고리즘을 사용) 연관아.. 2020. 6. 23.
Mapbox를 활용한 지역별 코로나 감염자 시각화 공간정보 시각화 라이브러리 중에 가장 직관적이며 시각적으로 매력적이다. 정리가 잘 되어 있는 블로그가 있어 참고했다. 파이썬에서 사용가능한 라이브러리도 있고 마침 구별 경계 json파일이 있어 코로나 이슈에 맞게 활용해보았다. (내가 가진 geojson 파일은 행정동이라 블로그에서 사용한 데이터를 활용했다.) 1. 데이터 수집 2. 데이터 가공 3. 시각화 1. 데이터 수집 import urllib.request url = "http://www.seoul.go.kr/coronaV/coronaStatus.do#status_page_top" page = urllib.request.urlopen(url) page = page.read() BeautifulSoup을 활용하여 데이터를 가져온다. from bs4 .. 2020. 5. 16.
[Python 문법] 정규 표현식 데이터 전처리 과정에서 꼭 사용하게 되는 정규 표현식이지만 그 때마다 부족함을 느껴 한번 정리해보고자 한다. 0. 정규표현식(Regular Expressions) 특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 형식 언어이다. 주로 Programming Language나 Text Editor 등 에서 문자열의 검색과 치환을 위한 용도로 쓰인다. 1. re 모듈 - 정규표현식을 활용하기 위한 모듈 import re 로 불러 온 뒤 str = re.compile('정규표현식') 로 컴파일한다. 컴파일한 객체 p를 메서드를 활용하여 가공한다. 2. 메서드 - 문자열 검색 # 패턴이 다음과 같을 때 각각 메서드가 어떻게 기능하는지 알아보자 p = re.compile('[a-z]+') match : 문자열.. 2020. 5. 14.
Interactive Widget 활용한 시각화 Data 출처 JTBC 유투브 채널 / 2020.05.10 16:52:08 / 88개의 영상정보(최신순) 1. Data load 데이터 수집 및 전처리 과정은 생략한다. 데이터는 아래 깃허브 주소를 참고하면 된다. jtbc = pd.read_csv("C:/Users/kjh96/Github/crawling_JTBC.csv", encoding="CP949", header=None) 2. 시각화 위젯을 사용하기 위한 패키지를 불러온다. import ipywidgets as widgets from ipywidgets import interact, interact_manual import numpy as np import pandas as pd import scipy # import plotly.plotly as.. 2020. 5. 13.