최신 게시글
-
인과추론에서 머신러닝이 필요한 이유
최근, 인과추론에 Tree 계열이나 Neural Network 모델 같은 복잡한 머신러닝 모델을 활용하고 있습니다 (보통 Tree 모델을 많이 사용). 이렇듯 인과추론에 머신러닝 모델을 활용하는 이유는 뭘까요? 바로, CATE(Conditional Average Treatment Effect)를 계산하기 위함입니다. CATE란 샘플 특성에 따른 Treatment Effect인데요, 현실에선 모든 샘플이 같은 효과를 가지기 보단, 샘플 특성에 따라 효과가 달라지는 경우가 많습니다. 예를들어, A신약은 고연령층 남성에게 더 효과적일 수 있고, 특정 마케팅은 10대 라이트 유저에게 효과적일 수 있습니다. CATE는 ATE에 숨겨진 더 많은 인사이트를 제공하고, 이를 마케팅 등에 유용하게 활용할 수 있습니다. ..
2023.08.23
-
[airflow] 과거 기간 데이터 채우기(catchup, backfill)
에어플로우에서 과거 기간 데이터를 채우는 방법은 총 2가지(catchup, backfill)가 있습니다. 1. catchup dag을 활성화할 때, start_date부터 end_date 까지 모두 실행하는 기능입니다. (end date 미설정시 현재 시간까지의 기간을 실행합니다.) 예를들어, start_date=’2023-07-01’, end_date=’2023-08-03’이라면 23년 7월 1일 부터 8월 3일까지 실행합니다. dag_params에서 설정할 수 있으며, catchup을 키려면 True로 설정하면 됩니다. (보통 job이 한번에 실행되는 것을 막기 위해 False로 설정되어 있습니다.) # catchup 예시 코드 from airflow.models.dag import DAG from ..
2023.08.07
-
A/B Test란?
1. A/B Test란? A/B Test는 특정 처치(treatment)가 효과가 있는지 알아내는 방법입니다. 여기서 treatment는 실험에 따라 새로운 회원가입 방식/프로모션 등이 될 수 있습니다. 이를 위해, 집단을 임의로 두 집단으로 나누고(treatment/control group), 특정 그룹에만 treatment를 적용합니다. 이후 두 집단의 성과를 비교함으로써 treatment의 효과를 측정합니다. 여기서 핵심은 두 집단이 랜덤하게 분배되어야 한다는 것입니다. 즉, 두 그룹은 treatment를 제외한 모든 특성이 동일하여야 합니다. 그렇지 않으면, selection bias로 인하여 treatment의 효과가 잘못 측정될 수 있습니다. 2. 테스트 결과 검증 실험 결과, treatmen..
2023.08.05
인기 게시글
-
[Hive] msck repair table
msck repair table 명령어란? MSCK는 MetaStore Check의 약자입니다. 즉, 말그대로 msck repair table 명령어는 메타스토어를 체크하여 hive table이 바라보는 location에는 존재하지만, 메타스토어에는 없는 파티션을 수동 추가하는 명령어입니다. msck repair table sample_table; hive 2.0에서의 test 확인 결과, interal/external table 모두 동작합니다. 메타스토어에만 존재하고 location에는 존재하지 않는 파티션의 경우 삭제되지 않습니다. (당연히 데이터는 조회되지 않습니다.)
2023.07.25
-
[Hive] Internal Table vs External Table
Hive에는 internal table과 external table 두 가지 유형의 테이블이 있습니다. 파악한 바로는 table drop 시 관련 데이터가 같이 삭제되는지/삭제되지 않는지만 차이가 존재하는데, 혹시 다른 차이점을 아신다면 댓글로 남겨주세요~! 1. Internal or Managed Table (내부 테이블) internal(managed) table은 말 그대로 관련 데이터를 내부에서 관리하는 테이블입니다. 테이블 생성 시 location이 hive.metastore.warehouse.dir 속성이 가리키는 directory가 됩니다. 기본적으로 /user/hive/warehouse/databasename.db/tablename/ location 속성을 통해 테이블의 위치를 변경해줄 수..
2023.07.25
-
인과추론에서 머신러닝이 필요한 이유
최근, 인과추론에 Tree 계열이나 Neural Network 모델 같은 복잡한 머신러닝 모델을 활용하고 있습니다 (보통 Tree 모델을 많이 사용). 이렇듯 인과추론에 머신러닝 모델을 활용하는 이유는 뭘까요? 바로, CATE(Conditional Average Treatment Effect)를 계산하기 위함입니다. CATE란 샘플 특성에 따른 Treatment Effect인데요, 현실에선 모든 샘플이 같은 효과를 가지기 보단, 샘플 특성에 따라 효과가 달라지는 경우가 많습니다. 예를들어, A신약은 고연령층 남성에게 더 효과적일 수 있고, 특정 마케팅은 10대 라이트 유저에게 효과적일 수 있습니다. CATE는 ATE에 숨겨진 더 많은 인사이트를 제공하고, 이를 마케팅 등에 유용하게 활용할 수 있습니다. ..
2023.08.23