목록Python (135)
꿈 많은 사람의 이야기
포스팅 개요 이번 포스팅은 session based 추천 시스템(Recommender system)에 관해서 간단한 리뷰와 삽질 후기입니다. 최근 회사에서 sequential data에 대해서 recommender system을 진행하게 되었었는데요. 그때 여러 방면으로 조사하던 중 Session based recommendation 방법을 알게 되었습니다. 그리고 대표 논문 중 하나인 Session based recommendation with rnn 논문을 알게 되었고 이 논문에서 받은 아이디어를 기반으로 1주일 동안 개인적으로 시도해 보았던 것(결론은 삽질 ㅠ)들을 글로 정리해보고자 합니다. 논문과 해당 논문의 코드는 아래 URL에 있습니다. 논문 : https://arxiv.org/abs/1511..
포스팅 개요 이번 포스팅은 파이썬(Python) 라이브러리 소개를 하는 글입니다. 파이썬에서 프로그래밍을 하다보면 터미널 화면에 로그를 찍거나, 텍스트를 출력하거나 하는 등의 작업을 빈번하게 수행합니다. 그러나, 일반적인 텍스트는 가독성이 좋지 않다는 단점이 있습니다. 이번 포스팅에서 소개해드릴 Python의 Rich library는 이러한 터미널 환경에서 텍스트 출력을 이쁘게(rich 하게) 꾸밀 수 있는 라이브러리 입니다. 굉장히 흥미롭고 재밌는 라이브러리이기에 소개하고자 합니다. 이번 포스팅은 아래 Rich 라이브러리 github에서 제공해주는 튜토리얼을 기반으로 진행해 보았습니다. https://github.com/willmcgugan/rich willmcgugan/rich Rich is a Py..
포스팅 목적 이번 포스팅은 Python 형태소 분석기 중 하나인 Mecab(은전한닢)에서 나오는 에러를 해결하는 방법에 대해 정리합니다. 해당 에러는 Mecab에서 사용자 사전(user dictionary)를 추가할 때 ./tools/add-userdic.sh을 실행 했을 때 나는 오류입니다. 포스팅 본문 Python으로 텍스트 데이터 특히, 자연어 처리를 할 때 형태소 분석기를 많이 사용합니다. 그리고 다양한 형태소 분석기 중 인기 있는 형태소 분석기 Mecab(은전한닢 이라고도 불리웁니다.)이 있습니다. Mecab은 속도도 빠르고, 다른 konlpy 형태소 분석기보다 정확하여 많이 사용합니다. 또한, 사용자 단어(user dictionary)를 쉽게 추가할 수 있기 때문에 매우 유용합니다. Mecab..
포스팅 개요 이번 포스팅은 시계열 데이터 분석(Time series data)에서 활용되는 공적분 분석(cointegration analysis)에 대해서 정리하는 포스팅입니다. 간단한 이론적 설명과 더불어 파이썬(Python)에서 이를 어떻게 활용할 수 있는지 예시로 알아봅니다. 본 포스팅 작성 시 참고 했던 자료들은 아래와 같습니다. https://datascienceschool.net/view-notebook/d5478c5ed2044cb9b88fa2ef015eb3a4/ https://www.statsmodels.org/stable/generated/statsmodels.tsa.stattools.coint.html https://namu.wiki/w/%EA%B3%B5%EC%A0%81%EB%B6%84 ..
포스팅 개요 이번 포스팅은 쿠버네티스(kubernetes)를 활용하는 방법인 예시(example)를 보여주는 글입니다. 특히, 쿠버네티스(kubernetes)를 활용하여 Python Django를 deploy(배포)하는 example입니다. 본 글은 아래와 같은 글들을 참고하여 작성하였습니다. 쿠버네티스에 대해서 굉장히 자세히 설명된 포스팅 https://subicura.com/2019/05/19/kubernetes-basic-1.html 쿠버네티스 시작하기 - Kubernetes란 무엇인가? 쿠버네티스는 컨테이너를 쉽고 빠르게 배포/확장하고 관리를 자동화해주는 오픈소스 플랫폼입니다. 1주일에 수십억 개의 컨테이너를 생성하는 구글이 내부 배포시스템으로 사용하던 borg를 기반으로 2014년 프로젝트를 시..
포스팅 개요 이번 포스팅은 딥러닝(Deep Learning)을 활용해 추천 시스템(Recommender system)을 구현하는 포스팅입니다. 그 중 개인화 된 추천 시스템(personalized recommendation system)을 한 번 만들어보겠습니다. 파이썬(Python)을 활용했으며 라이브러리는 케라스(Keras)를 사용했습니다. 고급진 기술보다 기초적인 수준에 가까운 글이니 참고 부탁드리겠습니다. 이번 추천 시스템의 목적은 뉴스 추천 시스템입니다. ==참고 사항== 본 글에 나오는 Dataset은 제가 임의로 만든 Dataset입니다. 그래서 현실적인 면에서 조금 동떨어질 수 있습니다. 부디 참고 부탁드리며 Insight만 얻어 가시길 바랍니다. 또한, 본 포스팅 글은 지난 번에 작성한 ..
포스팅 개요 이번 포스팅은 AWS Chalice에 대해서 알아보려고합니다. AWS Chalice는 파이썬(Python) 기반의 serverless microframework로 알려져 있는데요~ serverless? 이게 뭘까요? 이 서버리스(serverless)가 무엇인지도 알아봅니다. 그리고 AWS lambda를 쉽게 사용할 수 있게 지원해주므로 AWS lambda에 대해서도 알아볼거에요. 나아가, AWS Chalice 설치하는 방법, 어떻게 사용하는지도 간단하게 작성하려고 합니다. 해당 포스팅은 아래 글들을 참조하였습니다. 핵심 내용을 정말 잘 설명해준 블로그 : https://jangseongwoo.github.io/lambda/chalice_tutorial/ https://github.com/aw..
포스팅 개요 이번 포스팅은 test code coverage에 대해서 알아봅니다. 그냥 코드 커버리지(code coverage)라고도 불리우는 방법입니다. 그리고 파이썬(Python)에서 test code coverage를 하는 방법에 대해서도 함께 알아봅니다. test code 작성은 이전 포스팅(https://lsjsj92.tistory.com/572)내용을 기반으로 진행됩니다. 포스팅 본문 코드 커버리지(code coverage)란 무엇일까요? code coverage는 소프트웨어 프로그램에서 테스트 케이스가 얼마나 충족되었나? 정도로 생각할 수 있습니다. 즉, 코드에서 테스트가 얼마나 충족이 되었나? 입니다. 흔히, test code를 작성하게 되면 coverage도 같이 측정하게 되는데요. 이때..
포스팅 개요 이번 포스팅은 데이터와 머신러닝 모델(Machine Learning model)의 버전을 관리할 수 있는 Data Version Control(DVC)에 대해 작성합니다. Machine Learning 프로젝트(혹은 Deep Learning)을 하다보면 ML 모델의 버전 관리, 데이터 버전 관리에 대해서 생각을 하게 되는데요. 그것을 지원해주는 것이 Data Version Control(DVC) 입니다. 저도 회사 선배님께 DVC 키워드를 얼마전 듣게 되었고 바로 간단하게 학습을 해보았습니다. 이번 포스팅에서 사용하려는 DVC는 https://dvc.org/ 입니다. 이 DVC는 open source이고 github에도 자료가 있습니다.참고한 자료는 아래와 같습니다. https://dvc.o..
포스팅 개요 이번 포스팅은 Python에서 Test Case를 작성하고 나아가 TDD(Test Driven Development)에 활용할 수 있는 unittest를 학습해봅니다. 본 글은 아래 참조 리스트를 참고하였습니다. https://docs.python.org/ko/3/library/unittest.html 포스팅 본문 요즘, 개발 관련 스터디나 모임을 가게 되면 많이 듣는 단어가 TDD입니다. TDD란 무엇일까요? TDD란? TDD는 Test Driven Development의 약자로 테스트 주도 개발이라는 뜻을 가지고 있습니다. TDD는 소프트웨어를 개발하는 방법론 중 하나입니다. 개발자들이 작성하는 코드가, 혹은 우리가 코드를 리팩토링(refactoring)을 하게 될 때 제대로 동작하는지 ..