인기글
-
machine learning
rdkit 설치하기
rdkit 공식 문서를 보면 pip 도 안되고 conda로 해라고 한다. 그런데 conda로도 안돼서 여러 삽질을 거치다 다음과 같은 해결법을 알게됐다. !pip install python-rdkit 위 명령어면 한 방에 해결된다. # General Imports import os import pandas as pd import numpy as np pd.options.display.max_columns=300 import warnings warnings.filterwarnings("ignore") from rdkit import Chem from rdkit.Chem import Draw, Descriptors from rdkit import DataStructs from rdkit.Chem import..
-
후기
[치닝 디핑 후기] 차칸철봉 조립부터 턱걸이(풀업) 테스트까지 (차칸철봉 후기)
조립 설명서를 보고 차근차근 조립했다. 구매 계기 코로나 때문에 헬스장에 못 간지 너무 오래됐다. 재택근무라 집안에 박혀 있어서 운동량도 상당히 줄었고. 주 4회는 헬스&요가를 했었던 한달 전과 비교하면 요즘 몸이 너무 찌뿌둥하고 더 피곤하다. 헬스장에서 내가 주로 하던 운동은 턱걸이 & 푸시업. 두 가지만이라도 할 수 있으면 좋을 텐데, 주변에 매달릴 철봉이 없다. 철봉이 필요하다! 인터넷 검색 결과 적당한 가격대에 리뷰가 좋은 차칸철봉?을 골랐다. 주문하니 배송까지 3일 정도 걸린 것 같다. 조립 과정 조립을 시작하기까지 상당한 시간이 필요했다. 그 이유는... 바쁨이라고 쓰고 게으름이라고 읽겠다. 도착한 지 일주일이나 지나서야 조립하기 시작한 나... 처음에 상당히 당황했다. '뭔데 3박스까지 온걸..
-
linux
[리눅스] 파일명, 파일 확장자 일괄 변경
for f in *.예전확장자; do mv -- "$f" "${f%.예전확장자}.새확장자"; done zetawiki.com/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4_%ED%8C%8C%EC%9D%BC_%ED%99%95%EC%9E%A5%EC%9E%90_%EC%9D%BC%EA%B4%84%EB%B3%80%EA%B2%BD 리눅스 파일 확장자 일괄변경 - 제타위키 다음 문자열 포함... zetawiki.com
-
논문 읽기
논문에 등장하는 revisit 뜻?
재방문하다가 아니라, 재고하다는, 좀 회의적인 의미로 해석하는 게 옳을 듯하다. In particular, we redesign the generator normalization, revisit progressive growing, and regularize the generator to encourage good conditioning in the mapping from latent codes to images. In addition to improving image quality, this path length regularizer yields the additional benefit that the generator becomes significantly easier to invert. progre..
-
deep learning
[pytorch] RuntimeError: 0D or 1D target tensor expected, multi-target not supported 에러
nn.CrossEntropyLoss() 혹은 F.cross_entropy 를 사용했을 때 나타나는 에러일 것이다. nn.CrossEntropyLoss()(pred, target) 이렇게 계산이 되는데 가령 pred의 shape의 [ B, C]라면 C는 클래스 갯수 B는 배치 사이즈 target의 shape은 [B] 가 되어야 하는데 [B, 1]이렇게 돼서 문제가 발생하는 거다. 그래서 문제를 해결하려면 target의 shape를 축소해주자. nn.CrossEntropyLoss()(pred, target.squeeze(dim=-1)) https://pytorch.org/docs/stable/generated/torch.nn.CrossEntropyLoss.html CrossEntropyLoss — PyTor..
-
deep learning
[논문 읽기] ConvLSTM 이해하기
시계열에 좋은 LSTM! 이미지에 좋은 Conv! 이 둘을 짬뽕시킨 Convolutional LSTM을 알아보자. LSTM에 대한 사전지식이 필요하다. https://limitsinx.tistory.com/62 [코드로 이해하는 딥러닝 2-11] - RNN(Recurrent Neural Network)/LSTM(Long-Short-Term-Memory) [코드로 이해하는 딥러닝 0] - 글연재에 앞서 https://limitsinx.tistory.com/27 [코드로 이해하는 딥러닝 1] - Tensorflow 시작 https://limitsinx.tistory.com/28 [코드로 이해하는 딥러닝 2] - Tensorflow 변.. limitsinx.tistory.com $i_t$는 입력 게이트, $f..
머신러닝
-
machine learning
rdkit 설치하기
rdkit 공식 문서를 보면 pip 도 안되고 conda로 해라고 한다. 그런데 conda로도 안돼서 여러 삽질을 거치다 다음과 같은 해결법을 알게됐다. !pip install python-rdkit 위 명령어면 한 방에 해결된다. # General Imports import os import pandas as pd import numpy as np pd.options.display.max_columns=300 import warnings warnings.filterwarnings("ignore") from rdkit import Chem from rdkit.Chem import Draw, Descriptors from rdkit import DataStructs from rdkit.Chem import..
-
machine learning
[pandas] pandas dataframe 이용해서 그룹별로 train/val 나누기
가끔 dataframe 자체로 train_test_split을 해야 할 때가 있다. 그럴 땐 어떻게 해야하나... 특히 그룹별로 특정 샘플이 valset에 균등하게 포함되도록 하려면...? 간단한 방법 groupby후 sampling을 한다. validation을 0.2만큼 하고 싶으면 frac=0.2로 준다. 그렇게 나타난 valDataset의 index를 drop 해주면 된다. 이것보다 어려운 방법은 drop의 반대 방법으로 있는 부분만 iloc으로 남기는 것이다. 이상 끝
-
machine learning
dtreeviz IndexError, decision tree visualization
random forest 모델 혹은 decision tree 모델을 이용했을 경우 모델이 어떻게 작동하는지 설명을 요구할 때가 있다. RandomForestRegressor를 이용해서 회귀분석을 진행했다. 그런데 RandomForestRegressor같은 경우 여러 Decision tree의 앙상블 모델로 tree를 한 번에 시각화하기가 어렵다. 그래서 tree중 하나를 선택해서 시각화한다. 그러다 좋은 라이브러리를 발견했다. dtreeviz 이런식으로 쓰면되는 간단하고 편리한 라이브러리다! model = Pipeline([('scaler',MinMaxScaler()), ('DecisionTreeRegressor', DecisionTreeRegressor(criterion='mae', max_depth=..
-
machine learning
epoch, iter ?
epoch, iter (한 번의 epoch는 인공 신경망에서 전체 데이터 셋에 대해 forward pass/backward pass 과정을 거친 것을 말함. 즉, 전체 데이터 셋에 대해 한 번 학습을 완료한 상태) [출처] 머신 러닝 - epoch, batch size, iteration의 의미|작성자 예비개발자 메모리의 한계와 속도 저하 때문에 대부분의 경우에는 한 번의 epoch에서 모든 데이터를 한꺼번에 집어넣을 수는 없습니다. 그래서 데이터를 나누어서 주게 되는데 이때 몇 번 나누어서 주는가를 iteration, 각 iteration마다 주는 데이터 사이즈를 batch size라고 합니다. 전체 2000 개의 데이터가 있고, epochs = 20, batch_size = 500이라고 가정합시다. ..