분석 Python(344)
-
Python) 고객 생애 가치(CLV) 예측하기
고객 생애 가치를 예측할 때는 기존 회귀 모델 방식보다는 다른 특정 가정을 사용하고 있는 모델을 사용해야 한다. lifetimes이라는 패키지를 사용하는 예시를 해보고자 한다. 고객 생애 가치(CLV)는 고객이 인수부터 비즈니스와의 관계가 종료될 때까지 지출할 총금액입니다. 참고 부탁드립니다. 2022.03.17 - [분석 Python/구현 및 자료] - Python) 고객 생애 가치(CLV)에 대해서 알아보기 예측(Prediction)과 Calculation(계산)에 차이는 무엇일까요? CLV를 계산할 때, 오로지 현재 상황을 조사하고 분석만 할 수 있습니다. 그래서 우리는 고객에 새로운 상품을 살 때나 특정한 한계에 도달했을 때 추측할 수가 없습니다. 예측을 통해 우리는 기계 학습을 프로세스에 추가하..
2022.03.17 -
Python) 고객 생애 가치(CLV)에 대해서 알아보기
도입부 CLV 또는 LTV로 부르는 ‘고객 생애 가치’는 고객이 비즈니스에 기여한 금전적 가치를 가리키는데, 회사가 얼마나 수익성이 있을지 또는 신규 고객을 확보하기 위해 얼마나 많은 비용을 지출할 수 있는지를 이해하는 데 중요한 지표입니다. 고객생애가치(Customer Lifetime Value (CLV))는 고객이 인수부터 비즈니스와의 관계가 종료될 때까지 지출할 총 금액입니다. 즉 개별 고객이 창출하는 비즈니스 가치를 말해줍니다. 고객 관계(Customer Relationships)가 수익성이 있는지 판별하고자 CLV를 사용합니다. 제품, 마케팅, 광고, 영업 팀은 CLV를 기준으로 수익성을 유지하면서 고객 확보, 참여, 유지에 얼마의 비용을 투여할 것인지 결정합니다. CLV를 계산하려면 몇 가지를..
2022.03.17 -
Python) pydantic 알아보기
개인적으로는 dataclass가 namedtuple를 쓰다가 불편해서 사용하고 있었는데, 이 dataclass에서는 데이터 검증 부분이 없다고 한다. 그래서 우연히 pydantic을 알게 돼서 pydantic에 대해 정리해보고자 한다. Python Type Hint를 사용한 데이터 유효성 검사 및 설정 관리에 대해서 설명하고자 합니다. 여기서는 pydantic이라는 패키지를 사용해봅니다. pydantic은 validation library가 아닌 parsing 라이브러리리입니다. 유효성 검사는 제공된 유형 및 제약 조건을 준수하는 모델을 구축하는 목적을 위한 수단입니다. 즉, pydantic은 입력 데이터가 아닌 출력 모델의 유형과 제약 조건을 보장합니다. 우선 데이터 검증이 뭔지부터 살펴봅니다. Wha..
2022.03.14 -
Pytorch 1.11 이후) functorch 알아보기
22년 3월 14일 기준 현재까지는 Beta 버전입니다. Google JAX에서 크게 영감을 받은 functorch는 구성 가능한 함수 변환을 PyTorch에 추가하는 라이브러리입니다. PyTorch 모듈 및 PyTorch autograd와 함께 작동하는 구성 가능한 vmap(벡터화) 및 autodiff 변환을 우수한 eager-mode 성능으로 제공하는 것을 목표로 합니다. 구성 가능한 함수 변환은 오늘날 PyTorch에서 수행하기 어려운 여러 사용 사례에 도움이 될 수 있습니다. computing per-sample-gradients (or other per-sample quantities) running ensembles of models on a single machine efficiently b..
2022.03.14 -
Pytorch 1.11 이후) torchdata 알아보기
3월 14일 버전에서는 현재 Beta Stage이고 Stable하지 않다고 합니다. 개인적으로 tensorflow에서는 dataset이라는 기능을 통해 큰 데이터를 다 불러오지 않고, 부분적으로 불러오게 하는 기능이 있는데, torch 이전까지 버전에서는 그런 기능들을 제공하지 않아 아쉬웠는데, 이렇게 반가운 기능이 나와 공유합니다. What are DataPipes? 초기에 우리는 재사용 가능한 로딩 도구를 나타내는 PyTorch DataSet 사이의 광범위한 혼란을 관찰했다고 합니다. DataPipe는 단순히 합성된 사용을 위해 PyTorch DataSet의 이름을 바꾸고 용도를 변경하는 것입니다. DataPipe는 Python 데이터 구조에 대한 일부 액세스 함수, IterDataPipes의 경..
2022.03.14 -
Python) Google Calendar API 사용 방법
Python에서 Google Calendar API를 사용하여 내 계정의 이벤트를 가져오는 것을 해보고자 한다. 일단 구글 캘린더 API를 사용하기 위해서는 Open API를 인증받아야 한다. 일단 다른 글들을 따라가면서 순서대로 캡처한 것을 보여주면서 진행하려고 한다. 그래서 뭔가 중간 중간에 보안적인 문제가 있을 수 있으니 주의하시길 바란다. API 인증 받기 1. 로그인 및 프로젝트 생성 https://console.cloud.google.com/?pli=1 Google Cloud Platform 하나의 계정으로 모든 Google 서비스를 Google Cloud Platform을 사용하려면 로그인하세요. accounts.google.com 위의 URL로 들어가서 구글 로그인을 하고 하나의 프로젝트를..
2022.02.12 -
Python) 기념일 관리하기 및 구글 캘린더에 등록할 템플릿 만드는 코드
아래 github를 참고해주세요! 계속 진행중입니다. https://github.com/sungreong/PyKorAnniversary GitHub - sungreong/PyKorAnniversary: 파이썬을 활용하여 한국 기념일 관리하기 파이썬을 활용하여 한국 기념일 관리하기. Contribute to sungreong/PyKorAnniversary development by creating an account on GitHub. github.com
2022.02.12 -
Python) Permutation Importance 다양하게 표현하는 방법
해당 파일에 함수를 정리하였습니다. In [26]: from IPython.core.display import display, HTML display(HTML("")) /tmp/ipykernel_3209568/3510566465.py:1: DeprecationWarning: Importing display from IPython.core.display is deprecated since IPython 7.14, please import from IPython display from IPython.core.display import display, HTML 참고¶ 해당 코드를 기반으로 정리한 코드입니다. https://github.com/cerlymarco/MEDIUM_NoteBook/blob/master..
2022.01.31 -
Python) Sphinx를 사용하여 문서화하기 + Github Pages + Gitlab
목차 Introduction Python에서 문서화를 해볼 때 시도 해본 것을 간단하게 정리해보고자 합니다. 실험했던 코드나 문서화한 파일을 공유합니다. 해당파일을 참고해서 작성해주시길 바랍니다. 여기서는 github과 gitlab에 페이지를 올리는 방법에 대해서 소개한다. 간단한 예제들도 올렸으니, 궁금하신 분들은 확인하시면 될 것 같다. Github https://github.com/sungreong/sphinx-test GitHub - sungreong/sphinx-test: sphinx 테스트 해보기 sphinx 테스트 해보기. Contribute to sungreong/sphinx-test development by creating an account on GitHub. github.com ht..
2022.01.26 -
Python) featuretools를 사용한 자동 변수 생성
목차 featuretools 버전 1.4.0을 기준으로 작성합니다. 예제 코드에서도 현재 1.4.0을 반영하지 않은 예제만 있다 보니, 그대로 실행하는 데 어려움이 있었고, 간단하게 변수 생성을 해보면서 정리를 해보고자 함. home-credit-risk data(https://www.kaggle.com/c/home-credit-default-risk/data) 패키지 설치 pip install featuretools==1.4.0 Featuretools Featuretools는 자동화된 기능 엔지니어링을 수행하기 위한 오픈 소스 라이브러리 Feature 생성 프로세스를 빠르게 진행하여 기계 학습 모델 구축의 다른 측면에 더 많은 시간을 집중할 수 있도록 설계된 훌륭한 도구입니다. 즉, 데이터를 "머신 러..
2022.01.22 -
tensorflow, keras) 정형 데이터를 이용하여 모델 만들기
목차 umap에서 ParametricUMAP 을 사용하기 위해서는 keras 모델을 만들어야 하는데, 정형데이터를 임베딩해서 적용해보고 싶어서, 테스트를 하는 도중에 나온 결과물을 정리한다. 결론적으로 현재(22/01/08)는 umap에서 dict 데이터 타입을 지원하지 않고, 오로지 array 형태로만 가능하기 때문에, 사용할수가 없었다. 데이터를 one-hot으로 해서 하는 방법이 있겠지만, 차원 축소를 할 때 임베딩도 차원 축소할 때 학습시키고자 했기 때문에 좀 더 라이브러리가 개선되면 그때 다시 시도해봐야겠다. 아니면 일부 코드를 뜯어내서 수정하거나... 이러한 예시는 tensorflow에서 더 잘되어 있긴 하지만, 간단하게 구현해놔서 정리만 해둔다. 라이브러리 호출 import pandas as..
2022.01.08 -
Python) most frequent speed test
파이썬에서 최빈값을 계산하기 위해서 여러가지 테스트를 수행해봤다. 목차 functions import numpy as np import collections from scipy.stats import mode import concurrent.futures from joblib import Parallel, delayed def numpy_most_frequent(x) : values, counts = np.unique(x, return_counts=True) ind = np.argmax(counts) return values[ind] def counter_most_frequent(x) : return collections.Counter(x).most_common()[0][0] def stats_most_..
2021.12.24