앎을 경계하기

python 43

Content-based Filtering 이해하기

참고도서 : python을 이용한 개인화 추천 시스템 - 임일 Content-base Filtering (CB; 내용 기반 필터링) CB는 제품의 내용을 분석해서 추천하는 기술. 특히나 텍스트 정보가 많은 책, 뉴스에 많이 사용되는 추천 방법이다. CB 절차 아이템 간 유사도 구하기 추천 대상자(user)가 선호하는 아이템 선정 선호 아이템과 유사도가 가장 높은 N개 아이템 찾기 N개 아이템을 추천 이 절차에서 발생하는 이슈 유사도 함수 정하기 유사도 함수는 여러가지가 있다. N을 몇으로 설정할 것인지 N이 많을수록 추천 성능이 올라가겠지만, 몇 개가 최적인지 알 수 없다. N개 아이템 각각 유사도 높은 아이템들이 있을텐데, 이것들을 어떻게 조합할 것인지 영화 데이터를 통해 CB 추천 시스템을 만들어보자..

추천시스템 2023.01.17

FLASK 4 - 웹 크롤링 구글검색결과 웹 페이지에 표시하기

웹 크롤링을 하기 전, 필요한 라이브러리에 대해 설명한다.requests파이썬에서 HTTP 요청을 보내는 모듈이다.BeautifulSoupHTML과 XML 문서를 파싱하기 위해 사용하는 파이썬 패키지페이지에 대한 구문 분석 트리를 제공한다. 위 두 가지 라이브러리를 사용하여 구글 검색 결과를 가져와보자.google_keyword.pyimport requests from bs4 import BeautifulSoup def get_search_count(keyword): url = "https://www.google.com/search?q={}".format(keyword) headers = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWeb..

Programming/Python 2020.12.21

FLASK 2 - static 폴더 생성, 서버에서 데이터 전송

보통 html 문서 작성을 할 때 css, javascript 파일도 함께 작성하는 것이 흔하다.위 파일들을 정적파일을 모아두는 폴더인 static에 저장해보자.CSS 스타일 적용을 위한 html 코드H1태그의 색상을 분홍색으로 지정하는 css 코드h1{ color : pink; }실행하면 다음과 같이 H1태그를 사용한 부분이 분홍색으로 표시된다.이번에는 서버에서 클라이언트 쪽으로 데이터를 전송해보자.app.py에서 render_template() 에 인수를 넣어 데이터를 전송할 수 있다.def index(): return render_template('index.html', user="양갱", data={'interest':'CV,deeplearning','MBTI':'ESTJ' ,'blog':'whe..

Programming/Python 2020.12.14

FLASK 1 - Flask 가상환경 생성, 패키지 설치 및 app.py

환경Windonws 10가상환경 생성 및 필요 패키지 설치conda create -n flask생성된 가상환경을 활성화한다.conda activate flaskpip3을 사용하여 가상환경 내에 필요한 패키지를 설치한다.pip3 install flaskapp.py 작성하기Flask에서 app.py는 서버가 가동될 파이썬 파일을 말한다.작성을 위해 visual studio code를 실행하고 프로젝트 폴더 아래에 app.py 파일을 생성한다. from flask import Flask, render_template app = Flask(__name__) @app.route('/') def index(): return render_template('index.html') if __name__=="__main_..

Programming/Python 2020.12.14

Python N-gram 생성

출처 : https://dojang.io/mod/page/view.php?id=2332 파이썬 코딩 도장: 28.2 N-gram 만들기 N-gram은 문자열에서 N개의 연속된 요소를 추출하는 방법입니다. 만약 'Hello'라는 문자열을 문자(글자) 단위 2-gram으로 추출하면 다음과 같이 됩니다. 즉, 문자열의 처음부터 문자열 끝까지 한 글자씩 이동하면서 2글자를 추출합니다. 3-gram은 3글자, 4-gram은 4글자를 추출하겠죠? 28.2.1 반복문으로 N-gram 출력하기 이제 반복문으로 문자 단위 2-gram을 출력해보겠습니다. 2_gram_character.py text = dojang.io N-gram : 문자열에서 N개 요소를 연속으로 추출한다. 1. 반복문 사용하기 #반복문을 사용한 2-..

Programming/Python 2020.01.02

Python Palindrome(회문) 판별

출처 : https://dojang.io/mod/page/view.php?id=2331 파이썬 코딩 도장: 28.1 회문 판별하기 Unit 28. 회문 판별과 N-gram 만들기 이번에는 문자열을 응용해서 회문을 판별하는 방법과 N-gram을 만드는 방법을 알아보겠습니다. 회문은 유전자 염기서열 분석에서 많이 쓰고, N-gram은 빅 데이터 분석, 검색 엔진에서 많이 쓰입니다. 특히 구글은 책들을 스캔해서 N-gram viewer를 만들었는데 사람들의 언어 패턴을 시대별로 분석하기도 했습니다. 28.1 회문 판별하기 회문(palindrome)은 순서를 거꾸로 읽어도 제대로 읽은 것과 dojang.io Palindrome : 회문, 단어나 문장이 그 순서를 뒤집은 경우와 같은 것을 말한다. example ..

Programming/Python 2020.01.02