이번 포스팅에는 직접 Decision Tree가 어떤 방식으로 분기하는지 그림으로만 보는 것이 아닌, 손으로 계산하여 정말 똑같은지 확인해보고자 한다. 만약, Decision Tree에 대해 잘 모르겠다면.. 정보를 찾아보고 오길 권한다. 밑에 링크를 참고해도 좋고... https://sims-solve.tistory.com/88 [ML] 의사결정트리(decision tree) 정리 의사결정트리는 Forest 계열에 가장 base로 사용되는 모델이다. RandomForest , Extra Tree, 일부 Boosting계열 모델에서 n개의 decision tree가 사용되므로 의사결정 트리를 상세하고 정확하게 공부하고 넘어가 sims-solve.tistory.com 해당 포스팅은 손으로 직접 트리를 구해..
의사결정트리는 Forest 계열에 가장 base로 사용되는 모델이다. RandomForest , Extra Tree, 일부 Boosting계열 모델에서 n개의 decision tree가 사용되므로 의사결정 트리를 상세하고 정확하게 공부하고 넘어가고자 글을 작성한다. 이름에서도 알 수 있듯 tree모양을 띄는 알고리즘이다. 자료구조에서 Tree구조를 안다면 보다 도움이 될것이다. 이러한 구조를 Tree구조라고 한다. 하나의 root node로부터 자식노드로 점점 깊이 뻗어나가는 모습을 볼 수 있다. Tree 구조의 자식node로 분기를 하여 탐색에 용이하도록 해주는 장점이 있다. 왜 트리인고 하니.. 그래프를 뒤집어보면 위로 뻗어있는 나무와 비슷하다. 뿌리로부터 가지가 뻗어나가는 모습... Decision..
현재 video data를 가지고 분류하는 테스크 대회를 진행하고 있다. 이미지 증량은 경험이 있지만, video의 증량은 경험이 전무하기에 조금 애 먹었다. 하지만, video는 연속적인 이미지의 집합이므로, 결국 이미지 증량과 거의 동일하다. def get_frames(path): cap = cv2.VideoCapture(path) frames = int(cap.get(cv2.CAP_PROP_FRAME_COUNT)) imgs = [] for fidx in range(frames): _, img = cap.read() img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) imgs.append(img) ret = {f"image{i}":imgs[i] for i in range(1,..
이 사진을 가지고 python에서 albumentations을 사용하여 이미지를 바꿔보겠다. Normalize - 0 ~ 255사이인 pixel값을 "(img - mean * max_pixel_value) / (std * max_pixel_value)"의 공식을 이용하여 숫자를 작게 만든다. 장점 - 입력 값의 범위를 줄여, 학습에 빨리 수렴되도록 하고, 큰 입력값을 가진 특정 pixel의 특정 weight값이 커지는걸 방지 ColorJitter class albumentations.augmentations.transforms.ColorJitter (brightness=0.2, contrast=0.2, saturation=0.2, hue=0.2, always_apply=False, p=0.5) - 최대값..
.imshow()를 수행하려고 하면 자꾸 커널이 죽는 현상이 발생하고, Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized. 이와같은 메시지를 확인 할 수 있었다. 이미 libiomp5md.dll이 이미 초기화 되어있어서 나는 오류인거같다. 해결책은 간단하다. import os os.environ['KMP_DUPLICATE_LIB_OK']='True' 위와같은 코드를 사용해주면 잘 작동되는 것을 확인할 수 있다. 위 코드는 중복을 허용하여 오류를 해결하는 것이다.
RuntimeError: Input type (torch.cuda.FloatTensor) and weight type (torch.FloatTensor) should be the same 와 같은 오류가 계속뜬다.. pix2pix 예제를 해보고 있는데 위와 같은 오류가 계속뜬다.. 분명 같은 공간?(cpu or gpu)에 올라가 있지 않아서 그런거 같은데.. 분명 모델, 데이터는 to(device)로 같은 공간에 할당되어 있다.. 그럼 왜 안될까...??? 한참을 살펴보다 보니 전체 모델을 to(device) 한다고 해서 반드시 device로 할당되는건 아닌것 같았다. 이런식으로 모델과, 모든 데이터를 같은 공간에 할당시켜줬지만 해결이 안됐다. 그래서 하나씩 디버깅을 해보기 시작했다. 문제는 모델 내부에..
torchtext의 버전이 바뀌면서.. 1년이 지난 지금.. '실전! 파이토치 딥러닝 프로젝트' 책의 모든 자연어 프로젝트가 모두 실행되지 않는다.. 물론 torchtext=0.5.0으로 다운그레이드하여 사용하면 되지만.. 비전이 올라갔는데 그럴순 없었다.. 죽은 코드를 한번 살려보기위해 torchtext를 정리해보고자 한다. * build_vocab_from_iterator > vocab을 만들어주는 함수 iterator(iterable) – 들어가야 하는 형식 min_freq(int) – 최소 빈도수 지정(최소 빈도수를 넘지 못하는 단어는 vocab에 넣지 않음) specials(str) – 스페셜 심볼. ,,와 같은 토큰들을 넣을 수 있음 special_first(bool)– 스페셜 심볼을 voca..
Cifa10 예제를 하고 있었는데 gpu를 사용하면 cpu보다 시간이 더 오래 걸리는 현상을 발견했다. 이유를 먼저 말하자면, 모델의 파라미터가 너무적기 때문이다. 모델의 파라미터 수가 너무 적으면 연산이 그만큼 적어지고, GPU를 사용하나 CPU를 사용하나 큰 차이가 없게된다. 또, 데이터를 to(device)로 gpu로 보내기때문에 그만큼 +@ 시간이 추가 되어 GPU의 시간이 더 오래 걸릴 수도 있다.. 그러니 혹시 gpu의 속도와 cpu의 속도가 비슷하다고 느껴진다면.. 모델의 복잡도를 한번 살펴보길 바란다.
- Total
- Today
- Yesterday
- 깃
- 오류
- GIT
- 딥러닝
- 뜯어보기
- github
- boosting
- 입출력
- GPU
- 파이썬
- 계산
- docker
- 초보자
- Flask
- 삭제
- gbm
- Tree
- 설치
- 도커
- torch
- python
- GNN
- CNN
- java
- DeepLearning
- 이미지
- 입력
- 자바
- 정리
- DT
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |