Python 데이터 분석
-
Python 데이터분석 기초 76 - 밀도 기반 클러스터링(DBSCAN)Python 데이터 분석 2022. 11. 28. 10:39
DBSCAN(Density-based spatial clustering of applications with noise) 밀도 기반의 클러스터링은 점이 세밀하게 몰려 있어서 밀도가 높은 부분을 클러스터링 하는 방식이다. 쉽게 설명하면, 어느점을 기준으로 반경 x내에 점이 n개 이상 있으면 하나의 군집으로 인식하는 방식이다. # 밀도 기반 클러스터링 : 데이터가 비선형인 경우 일반적인 계층적/비계층적 클러스터링이 불가. 이를 해결하기 위한 방안. import matplotlib.pylab as plt from matplotlib import style import numpy as np from sklearn.datasets import make_moons from sklearn.cluster import ..
-
iris dataset으로 지도학습(KNN) / 비지도학습(K-Means) 비교Python 데이터 분석 2022. 11. 25. 17:30
iris 데이터로 지도학습(KNN) / 비지도학습(K-Means) 비교했다. # iris dataset으로 지도학습(KNN) / 비지도학습(K-Means) from sklearn.datasets import load_iris iris_dataset = load_iris() print(iris_dataset['data'][:3]) print(iris_dataset['feature_names']) # train / test sprit from sklearn.model_selection import train_test_split # train / test split (7 : 3) x_train, x_test, y_train, y_test = train_test_split(iris_dataset['data'],..
-
Python 데이터분석 기초 75 - K-means Clustering(비계층적 군집분석)Python 데이터 분석 2022. 11. 25. 17:12
비계층적 군집분석 군집의 수를 정한 상태에서 설정된 군집의 중심에서 가장 가까운 개체를 하나씩 포함해 나가는 방법으로 많은 자료를 빠르고 쉽게 분류할 수 있지만 군집의 수를 미리 정해 줘야 하고 군집을 형성하기 위한 초기값에 따라 군집의 결과가 달라진다는 어려움이 있기 때문에 계층적 군집분석을 통해 대략적인 군집의 수를 파악하고 이를 초기 군집 수로 설정한다 K-means Clustering 군집화는 아무런 정보가 없는 상태에서 데이터를 분류하는 방법이다. K-means Clustering 이란 데이터 분류 종류를 K개 라고 했을 때 입력한 데이터 중 임의로 선택된 K 개의 기준과 각 점들의 거리를 오차로 생각하고 각각의 점들은 거리가 가장 가까운 기준에 해당한다고 생각하는 것이다. 그리고 이제 각각 기..
-
Python 데이터분석 기초 74 - Clustering(군집화) - 계층 군집분석 - data(iris)Python 데이터 분석 2022. 11. 25. 16:09
계층적 군집분석 개별 대상 간의 거리에 의하여 가장 가까이 있는 대상들로 부터 시작하여 결합해 감으로써 나무모양의 계층적 구조를 형성해 나가는 방법으로 이 과정에서 군집의 수가 감소한다. 계층적 군집분석은 군집이 형성되는 과정을 정확하게 파악할 수 있다는 장점이 있으나 자료의 크기가 크면 분석하기 어렵다는 단점이 있다. 방법 : 단일결합법, 완전결합법, 평균결합법, 중심결합기준법, Ward법 # iris dataset으로 군집화 import pandas as pd import matplotlib.pyplot as plt plt.rc('font', family = 'malgun gothic') from sklearn.datasets import load_iris from scipy.spatial.dista..
-
Python 데이터분석 기초 73 - Clustering(군집화) - 비계층 군집분석Python 데이터 분석 2022. 11. 25. 16:07
Clustering(군집화) 사전정보(label)가 없는 자료에 대해 컴퓨터 스스로가 패턴을 찾아 여러 개의 군집을 형성함. 비지도학습. 군집화는 아무런 정보가 없는 상태에서 데이터를 분류하는 방법이다. K-means Clustering 이란 데이터 분류 종류를 K개 라고 했을 때 입력한 데이터 중 임의로 선택된 K 개의 기준과 각 점들의 거리를 오차로 생각하고 각각의 점들은 거리가 가장 가까운 기준에 해당한다고 생각하는 것이다. 그리고 이제 각각 기준에 해당하는 점들 모두의 평균을 새로운 기준으로 갱신해 나가게 된다. 이렇게 해서 가장 적절한 중심점들을 찾는 것이다. 이렇게 학습을 반복하면 데이터를 분류할 수 있게 된다. 계층적 군집분석 개별 대상 간의 거리에 의하여 가장 가까이 있는 대상들로 부터 시..
-
MLP(multi-layer perceptron) - 다층 신경망 예제, breast_cancer dataset, 표준화Python 데이터 분석 2022. 11. 25. 14:52
# MLP : breast_cancer dataset from sklearn.datasets import load_breast_cancer cancer = load_breast_cancer() print(cancer.keys()) x = cancer['data'] y = cancer['target'] print(cancer.target_names) # ['malignant' 'benign'] from sklearn.model_selection import train_test_split x_train, x_test, y_train, y_test = train_test_split(x, y, random_state = 1) print(x_train.shape, x_test.shape, y_train.shape..
-
Python 데이터분석 기초 72 - MLP(multi-layer perceptron) - 다층 신경망Python 데이터 분석 2022. 11. 25. 13:07
# MLP(다층 신경망) # 논리회로로 실습 import numpy as np from sklearn.neural_network import MLPClassifier from sklearn.metrics import accuracy_score feature = np.array([[0, 0],[0, 1],[1, 0],[1, 1]]) print(feature) # label = np.array([0, 0, 0, 1]) # and # label = np.array([0, 1, 1, 1]) # or label = np.array([0, 1, 1, 0]) # xor, 세포체(Node)가 하나인 경우는 예측이 잘 안 된다. # model = MLPClassifier(hidden_layer_sizes=30, solv..
-
Python 데이터분석 기초 71 - Perceptron(퍼셉트론, 단층신경망)Python 데이터 분석 2022. 11. 25. 12:42
Perceptron(퍼셉트론, 단층신경망) Perceptron(퍼셉트론, 단층신경망)이 학습할 때 주어진 데이터를 학습하고 에러가 발생한 데이터에 기반하여 Weight(가중치) 값을 기존에서 새로운 W값으로 업데이트 시켜주면서 학습. input의 가중치합에 대해 임계값을 기준으로 두 가지 output 중 한 가지를 출력하는 구조. # Perceptron(퍼셉트론, 단층신경망)이 학습할 때 주어진 데이터를 학습하고 에러가 발생한 데이터에 기반하여 Weight(가중치) 값을 기존에서 # 새로운 W값으로 업데이트 시켜주면서 학습. input의 가중치합에 대해 임계값을 기준으로 두 가지 output 중 한 가지를 출력하는 구조 # 논리회로로 실습 import numpy as np from sklearn.line..