Tabular(9)
-
Tabular) 좋은 피처 만드는 전처리 방법 정리해보기 (preprocessing)
정형 데이터를 딥러닝에 사용할 때 임베딩하는 방법에 대해서 정리해보고자 한다. 흔히 아는 머신러닝과 딥러닝의 차이를 이런 식으로 표현한다. (물론 딥러닝은 머신러닝의 부분집합이긴 해서 이렇게 구분하는 게 맞지는 않기는 한 것 같다) 여기서 말하는 머신 러닝은 흔히 이야기하는 tree 계열 알고리즘이나 회귀분석 같은 통계 기반의 방법론들을 생각해 주면 될 것 같다. 정형데이터 AI 모델 개발 방식 말하고자 하는 것은 흔히 딥러닝을 써서 얻을 수 있는 기대효과는 알아서 데이터에 대한 정보를 추출(feature extraction)할 수 있다는 믿음하에 딥러닝 방법론을 많이 사용하게 된다. 정형데이터 AI 모델 개발 방식 트렌드 크게 현재 데이터로 많이 사용하는 것이 tabular, image, text, g..
2023.10.04 -
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 -
Why You Should Always Use Feature Embeddings With Structured Datasets - 리뷰
정형 데이터에서 뉴럴 네트워크를 훈련시킬 때, 피처 임베딩은 중요한 것 중에 하나다. 이 기술은 NLP이외에는 좀 처럼 가르쳐 주지 않는다. 결과적으로 구조화 된 데이터 세트에서는 거의 완전히 무시됩니다. 그러나 이 단계를 스킵하는 것은 모델 정확성을 떨어트립니다. 이로 인해 XGBoost와 같은 그래디언트 강화 방법이 구조화 된 데이터 세트 문제에 대해 항상 우월하다는 잘못된 이해가 생겼습니다. 향상된 신경망을 임베딩하는 것은 종종 그래디언트 부스트 방법을 능가 할뿐만 아니라 이러한 임베딩이 추출 될 때 두 모델링 방법 모두 주요 개선 사항을 볼 수 있습니다. 이 기사는 다음 질문에 답할 것입니다. What are feature embeddings? How are they used with struct..
2021.02.28 -
GANs for tabular data - 리뷰
기존에 있었던 논문을 정리한 미디엄 글이다. 2개 정도 소개하는 글이다. 사실 다 한 번씩 본 것이지만, 정리하는 차원에서 다시 보기로 했다. 사실 관심 있는 사람도 만나서 반갑기도 하다. 관련 추가글 CTGAN 리뷰 글 TGAN 리뷰 글 TGAN: Synthesizing Tabular Data using Generative Adversarial Networks arXiv:1811.11264v1 TGAN 저자는 GAN으로 생성할 때 이러한 문제점들이 있다고 한다. the various data types (int, decimals, categories, time, text) different shapes of distribution ( multi-modal, long tail, Non-Gaussian…)..
2020.03.29 -
텐서플로우 버전 1에서 LIME 과 SHAP 을 사용하여 모델 해석하기 (정형 데이터)
딥러닝 모델들이 black-box 형태의 모델이기 때문에 해석을 하는 데 있어서 사람들의 많은 요구사항들이 있다. 그중에서 유명한 것은 eli5, shap, lime, skater와 같은 알고리즘들을 사용하고, 만약 이러한 알고리즘을 적용하기 어렵다면, surrogate model을 통해 해당 모델에 대한 설명 가능한 모델을 새로 만들어서 모델을 해석하는 방법도 있다. 아래 블로그는 XAI에 대해서 정리한 글이라서 참고하시면 될 것 같다. 해당 글에서는 ELI5 /Skater / SHAP에 대한 설명을 해주고 있다. 대한 예제는 해당 블로그에도 있으니 참고하길 바란다. 여기선 skater라는 것을 보게 됐는데, 이것도 적용을 해봐야겠다. https://towardsdatascience.com/explai..
2020.02.25 -
[ TGAN ] Modeling Tabular data using Conditional GAN - Review (2)
https://data-newbie.tistory.com/249 Modeling Tabular data using Conditional GAN - Review(1) 여러 가지 GAN을 패키지화해서 내놓고 있다. 벌써 이렇게 정형화된 툴이 나올 수 있는 건지 의구심이 들긴 하지만 그래도 패키지화 했다는 게 충격이고 유용한 것 같다. torch로 구현이 되어있는데, 역시 새로운.. data-newbie.tistory.com 1편은 위 ↑↑↑↑↑ 4. TGAN Model preprocessing 방법과 TGAN을 소개 4.1 Reversible Data Transformations mixed type에 대처하기 위해서, 변수별로 다른 전처리를 진행한다. (Figure 1) C_1 같은 경우에는 -> Cat_1..
2019.08.25 -
[ TGAN ] Modeling Tabular data using Conditional GAN - Review (1)
여러 가지 GAN을 패키지화해서 내놓고 있다. 벌써 이렇게 정형화된 툴이 나올 수 있는 건지 의구심이 들긴 하지만 그래도 패키지화 했다는 게 충격이고 유용한 것 같다. torch로 구현이 되어있는데, 역시 새로운 기술에 대해서는 torch로 많이 하시는 것 같으니 torch를 시작해야하나싶다 ㅠ 여기서는 보통 Missing value를 처리를 하고 GAN 모델에 태우는 것 같다. 역시 하면서도 어려웠던 것은 기존 Missing 에 대한 처리와 Categorical 변수 그리고 얼마 없는 Category 까지도 생성할 수 있는 디테일이 떨어진다. 이런 부분에 대해서 중간 정도까지 읽어봤는데 ,어느 정도 저자들의 생각이 들어있어서 좋은 것 같다. https://github.com/DAI-Lab/TGAN ht..
2019.08.25 -
Data Synthesis based on Generative Adversarial Networks [2018] 논문 리뷰 - 2
이전에 1편은 여기에 있습니다! https://data-newbie.tistory.com/103?category=686943 Data Synthesis based on Generative Adversarial Networks [2018] 논문 리뷰 - 1 이 논문을 보는 이유 저번에 리뷰를 했던 https://data-newbie.tistory.com/98?category=686943 GAN 논문에서 해당 논문이 Table 데이터에 CNN 적용했다는 글을 보고 읽기 시작했다. 일반적으로 Table 같은 정형. data-newbie.tistory.com 저번 시간을 아주 간단하게 요약하면 다음과 같습니다. tabular data에 CNN을 적용할 수 있는 구조로 형태를 바꿉니다. Generator , Di..
2019.05.16 -
NN에서 Categorical Variables에 대해서는 어떻게 해야할까?
현재 Neural Network는 주로 이미지나 비디어 같이 Unconstructed Data에 대해서 Convolution을 사용해서 feature의 Parameter 개수를 축약하면서 Wide한 구조로 만들 수 데이터에 대한 Representation을 layer에서 잘 해줘서 된다고 생각한다. 하지만 현재 나는 주로 그런 Unconstructed Data 보다는 주로 tabular data에 대해서 많이 다루고 있다. 일단 Neural Network는 깡패이기 때문에 왠만하면 다른 알고리즘과 비슷한 성능이 잘 나온다. 하지만 비슷한 성능은 나오지만, 설명력이 좋지 못하니 굳이 tree-based 알고리즘과의 차이를 크게 내지 못하니, 굳이 사용해나 되기도 싶다. 최근에 보니 그래서 tree 기반과 ..
2019.05.06