본문 바로가기

220121금 - 종속변수 변환에 따른 오차 차이 관찰#1 house price 데이터를 RL로 예측하는 분석을 해보고 있는데. 전처리를 참조하는 데이터와 비슷하게 했음에도 불구하고 오차 차이가 0.6정도가 난다. 왜죠?? 처음에는 내 나름대로 전처리를 했으나 나중에는 하나하나 내가 다르게 했던 것들을 비교하며 바꾸었다. get_dummies()를 사용한 원핫인코딩 부분에서 0.1정도 줄이고는 도저히 안 줄여서 정말 한줄한줄 비교했는데...결정적으로 오차의 차이가 확 준건 종속변수인 SalePrice 변환때문이었다. log1p와 boxcox1p 의 오차율 차이의 원인? 처음에 SalePrice를 boxcox1p를 사용해서 변환했다. 그리고 그 밑은 log1p를 사용해 바꾼 것. skew 정도가 바뀌어서 평균이 오른쪽으로 이동했는데 큰 차이점은 값의 범위이다.lo..
GPU 하이재킹 #1 - 딥러닝 관련 패키지 설치시 특히 주의할 것 내가 당한 GPU 하이재킹 기록이다. 평소처럼 pip 로 딥려닝 관련 패키지를 설치하고 코딩을 하고 있었다. 보통 커맨드 창을 띄워놓고 gpu 사용량을 계속 모니터링하는데 어느 순간부터 이상한 위치에서 GPU를 절반이나 차지하고 있다. 처음에는 주피터에서 계속 여러 작업을 하고 놔두니 내 프로그램의 뭔가이겠구나 싶었는데, 커널을 다 내리고, 주피터 랩 자체를 셧다운했는데도 계속 남아있는 것이었다. 이상해서 프로세스 돌아가는 디렉토리로 가보니..웬걸;; 나도 모르는 T-Rex 채굴 프로그램이 돌고있네? -_-; 이더스캔 들어가니까 아주 그냥 많이 해드셨네. 도둑노무시키 지갑내역: https://etherscan.io/address 아니 이런게 대체 언제 깔린거지??? 싶어서 기억을 더듬어보았는데, pip로..
TF2 GPU 메모리 할당 수거 방법 ? TF2가 메모리 할당을 키우는 건 있어도 의도적으로 해제하는 공식적(?) 방법은 현재로서는 없는 것 같기도..;; 메모리를 다 잡고 있으니까 너무 불편한데. 계속 커널 내렸다 올렸다 해야 하고.. 참조: https://github.com/tensorflow/tensorflow/issues/36465 How can I clear GPU memory in tensorflow 2? · Issue #36465 · tensorflow/tensorflow System information Custom code; nothing exotic though. Ubuntu 18.04 installed from source (with pip) tensorflow version v2.1.0-rc2-17-ge5bf8de 3.6 ..
gensim 에러 2 - word2vec Index out of bounds with version 4.x gensim은 참 좋은 패키지이다. 주요 워드임베딩 기능을 편하게 사용할 수 있으니... word2vec 객체에서 pre-trained 임베딩 벡터를 가져오는데 몇 가지 문제가 생겨서 기록한다. 찾아보니 버전이 3.x 에서 4.x로 업그레이드 되면서 생긴 것들이었다. 현재 4.1.2를 사용하고 있음. # ! pip list | grep gensim # gensim 4.1.2 # 1. AttributeError: 'Word2Vec' object has no attribute 'intersect_word2vec_format' intersect_word2vec_format 함수가 Word2Vec 객체의 wv 안으로 들어갔다. # # 3.x 버전? w2v_model.intersect_word2vec_format..
gensim 에러 1 - could not convert string to float gensim을 쓰다가 에러가 나서 기록해본다. 흔히 나는 에러는 아닐 것 같다. (아닌가? 예상 외로 사람들이 꽤 찾아본다.) 한글 전처리에서 스페이스 ' ' 로 이어진 두 단어를 한 단어로 처리해서 word2vec 넣고 모델을 저장했다. (ex. 먹고 싶다, 안 되다, 자지 않다 )그런데 저장한 모델을 로드하는데 계속 에러가 남. # model.wv.save_word2vec_format('./word2vec/kor_w2v_minioven') KeyedVectors.load_word2vec_format('./word2vec/kor_w2v_minioven') # ValueError: could not convert string to float: '되다' 에러 전체 로그: -------------------..
Attention(180418-) 정리:어텐션 메커니즘은 사람이 어떤 사물에 집중하는 것을 모티브로 해서 만들어졌다RNN 구조의 문제점을 개선 인풋을 인코딩하여 그 정보들을 마지막 hidden state 벡터에 모두 압축하고, 이 벡터와 디코더를 이용해 데이터를 만들어 낼 때 과연 hiden state vector가 모든 정보를 잘 담아내고 있을까? 그렇지 않다. 긴 문장을 처리할 때 문제가 생김. 역전파로 저 앞의 단어에 대한 관계를 업데이트하려고 할 때 많은 스텝을 거슬러 올라가면서 반영이 잘 안 될 수도 있다. LSTM이 이론적으로 그 문제를 해결했지만 실제로는 그렇지는 않다.이 문제는 인풋을 어떻게 넣느냐에 따라 결과값이 좋아지거나 나빠지는 것에서 확인할 수 있다. (반대로 넣는다던지, 반복해서 여러번 넣는다던지..)어텐션 구조의..