분류 전체보기(849)
-
[ Python ] numpy를 사용하지 않고 argmax나 argmin을 할 수 있을까?
해당 작업은 어디 글을 보다가 궁금하게 되서 진행을 하게되었다 만약 우리가 numpy가 없다면.......... argmin, argmax는 어떻게 해야 할까?! 항상 보면 가장 작은 값 가장 큰 값을 뽑기 위해서 list를 numpy로 바꾸고 하긴 했었다. 그러면 이제 numpy를 안쓰고 해보자. argmax 경우 output = [0.1,0.25, 0.3 ,0.2 ,0.1,0.05] f = lambda i: output[i] max(range(len(output)), key=f) argmin 경우 min(range(len(output)), key=f) 그렇다면 만약 최대 2개를 찾고 싶으면? 해봤는데 코드가 좀 복잡해져서 Numpy의 소중함을 알게 됬다.... output = [0.1,0.25, 0...
2019.05.12 -
R 패키지 설치시, 중복 설치 방지
패키지를 설치하다보면, 중복되게 머가 설치된지 몰라서 중복되게 설치하는 경우가 있다. 오늘 우연히 좋은 코드를 알게되서 공유하려고 한다. required_CRAN
2019.05.12 -
Data Synthesis based on Generative Adversarial Networks [2018] 논문 리뷰 - 1
이 논문을 보는 이유 저번에 리뷰를 했던 https://data-newbie.tistory.com/98?category=686943 GAN 논문에서 해당 논문이 Table 데이터에 CNN 적용했다는 글을 보고 읽기 시작했다. 일반적으로 Table 같은 정형 데이터에 CNN은 적용하는 사례는 거의 못 봤지만 개인적으로 적용하면 어떻게 될까 항상 궁금했다. 여담이지만, 실제로 먼가 같은 인풋에 여러 개의 Layer를 입힌 다음에 concat을 해서 convolution1d를 해봤는데, 결과는 공유를 못 할 정도로 엉망이었다. 또 저자를 확인해보니 한국분들이 많으셔서, 굉장히 반가웠다.(나만..) 개요 이 논문은 다른 사람들에게 데이터를 공유 시 프라이버시에 대한 걱정이 중요해서 이것을 어떻게 해결할지에 대한..
2019.05.12 -
[ Python ] 이미지를 gif로 바꾸는 방법
Python 안에서 사진을 gif로 만들고 싶을 때가 있다. 나도 그 부분에 대해서 하고 싶었지만 알지 못했는데, 오늘 다른 코드를 보다가 방법을 알게되서 공유하려고 한다. os.system('convert -delay 15 -loop 0 {0}/posterior_predictive_map_frame*png {0}/posterior_predictive.gif' .format(logdir)) 이런식으로 특정 dir에서 원하는 것만 posterior_predictive_map_frame*png 같이 조건을 줘서 만들어줄 수 있다. Loop에 간단하게 쓸 수 있는 구조라서 좋은 것 같다. 이만!
2019.05.11 -
Anomaly Detection Using VAE
일단 neural network 기반으로 하는 것이 아닌 일반적인(?) ML로 Anomaly Detection을 해주는 패키지부터 소개해드리겠습니다. 종류는 엄청나게 많습니다. https://pyod.readthedocs.io/en/latest/ Welcome to PyOD documentation! — pyod 0.7.0 documentation [AJHuszarPvdH12]JHM Janssens, Ferenc Huszár, EO Postma, and HJ van den Herik. Stochastic outlier selection. Technical Report, Technical report TiCC TR 2012-001, Tilburg University, Tilburg Center for Co..
2019.05.11 -
Original GAN 리뷰
GAN을 발표할 일이 있어서, 내 생각을 정리하기도 하면서, 공유를 하고 싶어서 글을 남깁니다. GAN을 맨 처음 배울 때 자주 적합는 분류표다. 크게 Explicit density 와 Implicit density 2가지로 나눌 수가 있다. Explicit density 는 P_model(x)를 확실히 정의 할 수 있고 계산할 수 있는(tractable) 이든지 approximate처럼 근사하는 VAE 같은 것으로 나눌 수 있다. Implicit density 는 P_model(x)를 명시적으로 정의하지 않고 확률 분포를 알기 위해 sample을 뽑는 방법을 말한다. 이 개념에 대해서 항상 헷갈리는데 좋은 답변을 찾아서 공유하고자 한다. (유재준 님 블로그) GAN이 Sampler라는 얘기를 이해하시면..
2019.05.11 -
Synthesizing Tabular Data using Generative Adversarial Networks(1811 -논문 리뷰 )
제가 요즘 관심 있는 것은 생성 모델 중에 GAN이라는 알고리즘입니다. 저는 특히 Tabular Data를 GAN을 활용해, 생성하는 것에 관심이 있어서 해당 논문에 대해서 디테일하게 설명하지는 못하지만, 직관적으로 제가 이해한 만큼만 작성해보려고 합니다. Paper : https://arxiv.org/abs/1811.11264 Code : https://github.com/DAI-Lab/TGAN 이 논문을 제가 선택한 이유는 다음과 같습니다. Discre 변수와 Continuous 변수를 동시에 생성 가능하다고 합니다( medgan 논문은 안됩니다) 대부분의 discrete data를 생성하는 GAN 논문에서는 RL 방법이나 Round로 처리하는데, 해당 논문은 softmax를 이용하여서 처리합니다. ..
2019.05.09 -
Multiprocessing pandas package 2개 소개
일단 이전에 내가 하고 싶었던 replace에 대해서 둘다 적용이 되지는 않는 것 같다. ㅠㅠㅠ https://data-newbie.tistory.com/95 multiprocessing으로 pandas replace 하면 더 빠를까? 피드백을 좋아합니다! 머신러닝을 할 때 category 형식은 숫자 형식으로 바꿔줘야 한다. 이럴 때 가장 쉬운 방법은 cat.codes를 사용하면 빠르게 바꿀 수 있다. category["nameDest"].cat.codes 하지만 가끔 이렇.. data-newbie.tistory.com 구조를 잘 못 짠걸수도 있지만 현재 상황은 그렇다. 둘다 progress bar 지원해줌 두 패키지를 소개 하려고 한다. pandas_multiprocess URL pip install..
2019.05.08 -
Overfit? or dissimilar train and test? (medium 번역 및 생각)
https://towardsdatascience.com/how-dis-similar-are-my-train-and-test-data-56af3923de9b How (dis)similar are my train and test data? Understanding a scenario where your machine learning model can fail towardsdatascience.com 해당 내용이 굉장히 흥미로워서 공유를 하면서 나도 연습을 해보려고 작성했다. 흥미로운 이유는 만약 train으로 함수를 추정하고 test로 평가했을 때 성능이 안좋은 이유는 우리는 보통 overfitting이 발생했다고 한다. 하지만 이 글에서는 그 문제일수도 있지만, 새로운 문제를 제기한다. 실제 train 분..
2019.05.08 -
multiprocessing으로 pandas replace 하면 더 빠를까?
피드백을 좋아합니다! 머신러닝을 할 때 category 형식은 숫자 형식으로 바꿔줘야 한다. 이럴 때 가장 쉬운 방법은 cat.codes를 사용하면 빠르게 바꿀 수 있다. category["nameDest"].cat.codes 하지만 가끔 이렇게 바꾼 코드를 다시 바꿔서 사용해야 할 때가 있다. 저런 식으로 5개짜리 category랑 2722362 같이 엄청나게 많은 숫자가 나오는 것을 알 수 있다. 실제로 여러가지 multiprocessing으로도 테스트를 해보고 그냥 해본 것도 해보니 결론적으로 그냥 한 개씩 하는 것이 내가 했을 때는 빨랐다... 왜 그럴까?.... ㅠㅠㅠ 암튼 다음과 같이 결과물을 공유하려 한다. 버전 1 partition을 나눠서 했을 경우 column 별로 multiproces..
2019.05.08 -
Ridge, Lasso, ElasticNet / train, test, coef 값 내뱉는 multiprocessing 함수 만들기
피드백은 항상 좋아합니다. https://github.com/sungreong/TIL/blob/master/Machine_Learning/Ridge%20%26%20Lasso%20%26%20Elastic%20Multiprocessing.ipynb 숙제로 제출해야 하는 게 있어서 만들어 봤습니다. 기본적으로 loop로 해야 하는 구조여서 적어도 모델 만들어지는 것은 multiprocessing으로 하려고 했는데 오히려 느리게 됐다는... 3가지 버전을 보여주려고 합니다. 1. Loop , 2, 잘못된 버전 3. 잘된 버전 import numpy as np import matplotlib.pyplot as plt from sklearn.linear_model import LinearRegression, Rid..
2019.05.06 -
Feature engineering ( 글 리뷰 및 내 생각 )
좋은 글인 것 같아서 구글 번역 및 저의 생각을 적을 수 있으면 적을까 합니다. (영문 글을 보시는 게 더 나을지도 몰라요ㅎㅎ) Feature Engineering이란 머신러닝 문제에 대해서 타겟에 대해서 최고로 잘 표현할 수 있게 가공되지 않은 데이터를 가공하는 것을 의미한다. 나는 데이터 분석에 앞에서 가장 중요한 작업이라고 생각한다. 일반적인 생각해 볼 수 있는것은 필요 없는 것을 빼거나 scale을 잘 조정을 한다던지, 결측치 제거, 미싱처리 같은 것이 있다고 한다. 적다 보니 preprocessing하고 비슷한 것 같기도 하고.... 모델 성능을 높이기 위해서 데이터 과학자들이 할 수 있는 방법 중의 하나라고 한다. 1. You can isolate and highlight key informa..
2019.05.06