목록Data Science (38)
zimslog

1. 파이토치 개요 파이토치(PyTorch)는 2017년 초에 공개된 딥러닝 프레임워크이다.초기에는 파이썬 넘파이(Numpy) 같은 과학 연산용 라이브러리로 공개되었지만, 점점 딥러닝 프레임워크로 발전하게 된 케이스다. 파이토치(PyTorch)는 간결하고 쉬운 구현성과 GPU를 사용한 빠른 연산 처리로 유명해졌고, 아래와 같은 주요 특징을 가지고 있다. GPU(Graphics Processing Unit) 딥러닝에서 기울기를 계산할 때 CPU 대신 GPU를 사용하면 훨씬 빠른 속도로 미분 연산을 처리할 수 있다. CUDA, cuDNN이라는 API를 통해서 GPU에서 사용하는 병렬 처리 알고리즘을 연산에 사용한다.텐서(Tensor)텐서(Tensor)는 파이토치의 데이터 형태로 매우 중요한 핵심 개념이다. ..

2024.04.02 - [Data Science/Deep Learning] - [ML/DL] DNN, Deep Neural Network (심층신경망) (2) - 차원의 저주 (Curse of dimensionality) [ML/DL] DNN, Deep Neural Network (심층신경망) (2) - 차원의 저주 (Curse of dimensionality)DNN, Deep Neural Network (심층신경망) (2) - 차원의 저주 (Curse of dimensionality) 2024.04.02 - [Deep Learning] - [DL] DNN, Deep Neural Network (심층신경망) (1) - 기울기 소실 (Vanishing gradient) [DL] DNN, Deep Neu..

2024.04.02 - [Deep Learning] - [DL] DNN, Deep Neural Network (심층신경망) (1) - 기울기 소실 (Vanishing gradient) [DL] DNN, Deep Neural Network (심층신경망) (1) - 기울기 소실 (Vanishing gradient)DNN, Deep Neural Network (심층신경망) (1) - 기울기 소실 (Vanishing gradient) 1. DNN 이전 포스팅에서 다층 퍼셉트론(MLP) 구조에 대해 알아봤어요. MLP 구조는 크게 입력층(input layer), 은닉층(hidden layer), 출력층(meowstudylog.tistory.com 이전 포스팅에서는 DNN의 초기 문제점 중 하나인 기울기 소실 (V..

2024.04.01 - [Deep Learning] - [DL] MLP, Multi-Layer Perceptron (다층 퍼셉트론) [DL] MLP, Multi-Layer Perceptron (다층 퍼셉트론)MLP, Multi-Layer Perceptron (다층 퍼셉트론) 1. Perceptron Perceptron 이론은 신경세포(neuron)을 본 따서 만들어진 인공신경망의 기본적인 구조단위에요. 뉴런의 수상돌기처럼 퍼셉트론의 입력노드(input node)meowstudylog.tistory.com 이전 포스팅에서 다층 퍼셉트론(MLP) 구조에 대해 알아보았다. 이번 포스팅에서는 심층신경망(DNN)에 대한 개념과 DNN의 문제점 중 하나인 기울기 소실(Vanishing gradient) 문제와 해결..

1. PerceptronPerceptron 이론은 신경세포(neuron)을 본 따서 만들어진 인공신경망의 기본적인 구조단위이다. 뉴런의 수상돌기처럼 퍼셉트론의 입력노드(input node)가 외부 정보를 받아들이고,시냅스가 신호를 증폭하듯이 가중치(weight)를 곱해서 받아들이는 최종 정보의 양을 결정한다.이 과정에서 편향(bias)를 주기 위해 일정 상수 값을 더할 수도 있다. 그 후, 신경세포 활성화를 결정하는 역치처럼 활성화 함수(activation function)을 통해서 다음 퍼셉트론으로 전달할 정보를 결정하게 된다. Perceptron이론은 간단한 선형 분류는 가능하지만 복잡한 분류 문제는 해결하지 못한다는 아주 큰 한계점을 가진다.수학적으로 AND, OR같은 논리는 구현가능하지만, X..

1. SMOTE(synthetic minority oversampling technique)란?데이터 불균형을 해결하기 위해 소수 범주의 개체 수를 늘리는 오버샘플링(Oversamping)기법 중 하나이다.기존 Oversampling기법과는 달리 데이터를 랜덤복원추출로 생성하지 않고, KNN기반으로 소수 범주의 데이터들을 적절하게 조합하여 새로운 데이터를 만들어 낸다. 2. SMOTE 절차소수 범주(minority class)의 데이터 하나를 선택한다.소수 범주 중에서 해당 데이터와 가까운 k개를 선택한다.관측치들 간의 거리를 계산한다.랜덤하게 선택된 0~1 사이의 값을 곱한다.직선 위에 새로운 데이터를 생성한다. 3. SMOTE 한계점 - 실제 소수 범주의 특성을 온전하게 반영하지 않을 수 있다..

이번 포스팅에서는 R에서 K-Means Clustering을 수행하는 방법에 대해 알아보겠다. K-Means Clustering에 대한 개념 설명은 아래 게시글을 참고하면 된다.2024.02.26 - [Machine Learning/Clustering] - [머신러닝] K-Means Clustering [머신러닝] K-Means ClusteringK-Means Clustering 1) K-Means 알고리즘이란? 비지도학습에 속하는 머신러닝 기법으로 데이터를 유사한 특성을 가진 K개의 군집(Cluster)으로 묶는 알고리즘이다. K개의 점과의 거리를 기반으로 구현된다meowstudylog.tistory.com K-Means Clustering은 아래 절차대로 수행하면 된다.데이터 분할 및 전처리군집 수..
1. K-Means 알고리즘이란?비지도학습에 속하는 머신러닝 기법으로 데이터를 유사한 특성을 가진 K개의 군집(Cluster)으로 묶는 알고리즘이다. K개의 점과의 거리를 기반으로 구현된다는 면에서 K-NN 알고리즘과 유사하지만,K-NN은 지도학습 방법으로 Classification 알고리즘이고,K-Means는 비지도학습 방법으로 Clustering 알고리즘이다. 비지도학습인 Clustering은 정답이 되는 변수가 없기 때문에 분류와 달리 모델 예측 성능을 평가하기 보다이런 식으로 군집화 될 수 있구나 정도만을 파악할 수 있다. 2. K-Means 알고리즘 절차 1. 군집 개수 (K) 설정 > 2. 초기 중심점 설정 > 3. 데이터를 군집에 할당 > (4. 중심점 재설정 > 5. 군집에 재할당) 중..
1. 불균형 데이터란?우리가 관심있어하는 종속변수가 범주형 데이터일 때, 범주 항목의 비율이 불균형한 데이터를 말한다.관심있는 비정상 관측치가 정상 관측치보다 적은 경우가 실무에서는 굉장히 많다.임상 데이터에서 특정 질병의 정상 / 비정상 환자제조업에서 제품의 양품 / 불량품통신업에서 유지 / 이탈 고객금융업에서 정상 / 비정상 거래많은 비율을 차지하는 범주를 '다수 범주 (majority class)', 적은 비율을 차지하는 범주를 '소수 범주 (minority class)' 라고 한다. 2. 불균형 데이터 문제점불균형 데이터로 훈련한 모델은 소수 범주를 제대로 분류하지 못할 가능성이 크다.이런 경우 애초에 정상 데이터가 많으니까 모두 정상으로 분류하더라도 높은 정확도를 가지게 된다. (비정상은 하..
1. 선형 혼합효과 모형(LMM) 이란? 데이터가 군집(cluster)로 모일 수 있는 경우 혹은 한 명의 실험 대상자로부터 반복하여 실험 결과를 얻는 경우에 사용할 수 있는 선형 모형이다. 동일한 군집의 데이터나 한명의 대상으로부터 반복측정된 데이터는 서로 독립이 아니게 되므로 개체 내 상관을 고려하여 분석이 필요하다. Linear Mixed Model은 고정효과(Fixed Effect)와 랜덤효과(Random Effect)로 이루어진다.(일반적으로 알고 있는 Linear Model 은 고정효과(Fixed Effect)로만 이루어진 모형이다) 2. LMM 가정설명변수와 반응변수는 선형 관계잔차의 등분산성잔차의 독립성잔차의 정규성 3. 고정효과 vs. 랜덤효과 고정효과 (fixed effects)요인..