일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 좌표거리
- geopandas
- 알고리즘
- 그리드분할
- 귀여운고래
- graph
- GCN
- docker
- Set
- pyvista
- 패치분할
- GIS
- osmnx
- 컨테이너
- MESH
- 지하철역좌표
- 폴더조사
- 3d데이터
- 이미지빌드
- 3d
- 도커
- STL
- python최단거리
- GNN
- geojson
- 데이터입수
- Python
- 동명이인찾기
- 도커 레이어
- 파이썬
- Today
- Total
목록Data Science (29)
이것저것 기록
사용하는 라이브러리, 데이터셋 로드, 클래스로 모델 설계 등 앞의 포스팅과 겹치는 부분이 많기 때문에 바로 구현 코드로 넘어가는걸로~~ 1. 클래스로 CNN 구현 import torch import torch.nn as nn import torchvision.datasets import torchvision.transforms as transforms import torch.nn.init device = 'cuda' if torch.cuda.is_available() else 'cpu' torch.manual_seed(105) if device == 'cuda': torch.cuda.manual_seed_all(123) print('{} is using for calculation...'.format(d..
다중클래스분류 (Multi-Class Classification)은 소프트맥스회귀를 통해 클래스를 분류한다. 다중클래스분류는 세 개 이상의 답 중 하나를 고르는 문제인데, 그 중 가장 유명하고 전형적인 다중클래스분류는 붓꽃 품종 구분이다. 위 표는 꽃받침길이, 꽃받침넓이, 꽃잎길이, 꽃잎넓이 라는 4개의 특성(Feature)으로부터 setosa, versicolor, virginica라는 3개의 붓꽃 품종(Class) 중 어떤 품종인지 예측하는 문제에 쓰이는 데이터들이다. 1. 소프트맥스회귀 분석을 한다는 것은 소프트맥스회귀는 선택지의 개수만큼의 차원을 가지는 벡터(붓꽃 문제는 3)를 만들고 해당 원소의 합이 1이되도록 원소들의 값을 변환시키는 것이다. x1, x2, x3, x4라는 4개의 Feature..
로지스틱회귀는 회귀를 사용하여 데이터가 어떤 범주 (class)에 속할 확률을 0에서 1사이의 값으로 예측하고, 그 확률에 따라 가능성이 더 높은 범주 (class)에 속하는 것으로 분류 (classification)해주는 지도학습 알고리즘이다. 로지스틱회귀에선 확률값이 0과 1사이의 값을 가져야하는데, 선형회귀의 회귀식인 y = ax + b에서는 -무한대 ~ +무한대의 값을 가지게 된다. 그래서 이 값을 0~1사이의 값으로 변환해주는 장치가 필요한데, 그게 바로 시그모이드 함수이다. 시그모이드 함수를 활용하여 얻은 로지스틱회귀의 회귀식은 다음과 같다. 로지스틱 회귀의 로스함수는 다음과 같다. 1. 로지스틱회귀 분석을 한다는 것은 로지스틱회귀는 두 개의 카테고리 (binary)로 분류되는 범주형 데이터를..
선형회귀는 지도학습 중 예측 문제에 사용하는 알고리즘 중 하나다. 기존 데이터를 기반으로 생성된 모델 (회귀 모델)을 이용하여 새로운 데이터가 들어왔을 때 어떤 값이 될 지 예측하는 문제이다. 선형회귀 분석은 주어진 데이터를 대표하는 하나의 '직선'을 찾는 것이다. 이 직선을 '회귀선'이라고 부르고 이 선을 함수로 표현한 것이 '회귀식'이다. 단순선형회귀 분석은 중학교 때 배웠던 1차함수의 그래프 모양이다. y= ax+b라는 회귀식이 있을 때 x의 개수가 1개이므로 단순선형회귀 분석이 되는 거고, input으로 사용될 설명 변수는 1개가 된다는 말이다. 1. 선형회귀 분석을 한다는 것은 y = ax + b라는 식에서 a와 b를 구하는 과정을 뜻한다. 머신러닝의 관점에서 a는 weight값이 되고, b는 ..
PyTorch의 Dataset과 DataLoader를 이용하면 학습을 위한 방대한 데이터를 미니배치 단위로 처리할 수 있고, 데이터를 무작위로 섞음으로써 학습의 효율성을 향상시킬 수 있다. 또한 데이터를 여러개의 GPU를 사용해 병렬처리로 학습할 수도 있다. 코드가 매우 간단해지고, 사용법만 익히면 학습을 편하게 도와주는 편리한 함수다. 사실 데이터셋의 크기가 그렇게 크지 않으면 굳이 사용하지 않아도 되지만, 데이터셋의 크기가 매우 큰 경우엔 모든 데이터를 한 번에 넣어서 처리하는 방식을 적용하기엔 무리가 있다. 그래서 Batch 라는 개념으로 (묶음) 한 번에 한 묶음씩 처리하는 방식을 사용하게 된다. 정리하면, 전체 데이터셋을 batch로 묶어서 iteration의 수 만큼 실행하는 것이다. 이것을 ..