인기글
-
기타
non manifold? manifold? 가 무엇인가
www.sculpteo.com/en/3d-learning-hub/create-3d-file/fix-non-manifold-geometry/ How to fix non-manifold geometry issues on 3D models Are you having some non-manifold geometry issues with your 3D model? Here are our tips to fix it and to prevent this from happening! www.sculpteo.com non-manifold geometry란 무엇인가? 2D로 펼쳐질 수없는 3D 형태 (펼쳐질 수 있단 건, 모든 normal vector가 한 방향을 가리킨 다는 의미) 3d printing에 왜 manifol..
-
AI 도입, AI 개발 상담
데이터 가공에 대한 비용산정방식 및 구성요소
데이터 바우처 지원시 견적 받기전 확인하면 좋은 비용산정방식 가이드 '클라우드 워커', '클라우드 알바'라는 용어를 최근 들어보셨나요? AI 학습에 사용될 데이터들을 분류하고 라벨링 혹은 태깅 작업을 하는 사람들을 클라우드 워커라고 칭합니다. 최근 AI 기술의 발전과 수요 증가로 이 클라우드 워커에 대한 수요가 늘어나고 있습니다. 출처 : 잡코리아 이러한 데이터 가공 작업을 의뢰하고 진행하는데 얼마의 비용이 드는지 또 어떻게 그 비용을 산정하는지 알아보겠습니다. ■ 대상 ➪AI 학습용 데이터에 관심 있는 지자체, 학계 등 공공 영역과 AI 시장 진입을 원하는 기업 ■ 목적 ➪ 데이터 구축 과정에 필요한 작업내용과 소요 예산을 사전에 점검 ➪ 적정 비용으로 사업을 추진할 수 있도록 방향성을 제공 ■ 분석 ..
-
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..
-
논문 읽기
i.i.d. random variables가 뭐지? 독립 항등 분포 (iid, independent and identically distributed)
It means "Independent and identically distributed". 독립항등분포 확률변수가 여러 개 있을 때 (X1 , X2 , ... , Xn) 이들이 상호독립적이며, 모두 동일한 확률분포 f(x)를 가진다면 iid이다. namu.wiki/w/%EB%8F%85%EB%A6%BD%ED%95%AD%EB%93%B1%EB%B6%84%ED%8F%AC 독립항등분포 - 나무위키 independent and identically distributed (iid) 확률변수가 여러 개 있을 때 (X1 , X2 , ... , Xn) 이들이 상호독립적이며, 모두 동일한 확률분포 f(x)를 가진다면 iid이다. 만일 오차항(error term)의 공분산 행렬을 안� namu.wiki www.ktword...
-
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
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이라고 가정합시다. ..