PCAUMAP: 차원 삭감 방법을 간소화하고 PCA와 UMAP를 연결하는 분석
11660 단어 차원 삭감Python기계.scikit-learnPCA
이번에 우리는 이 두 데이터를 연결하여 데이터 구조를 보기 위한 도구인 PCAUMAP을 만들었다.다음 코드는 Google Colaboratory의 동작을 전제로 합니다.
설치하다.
github 창고에서 PCAUMAP을 설치합니다.코드는 https://github.com/maskot1977/PCAUMAP.git에서 볼 수 있습니다.!pip install git+https://github.com/maskot1977/PCAUMAP.git
Collecting git+https://github.com/maskot1977/PCAUMAP.git
Cloning https://github.com/maskot1977/PCAUMAP.git to /tmp/pip-req-build-y2pfqm58
Running command git clone -q https://github.com/maskot1977/PCAUMAP.git /tmp/pip-req-build-y2pfqm58
Building wheels for collected packages: pcaumap
Building wheel for pcaumap (setup.py) ... [?25l[?25hdone
Created wheel for pcaumap: filename=pcaumap-0.1.0-cp37-none-any.whl size=4069 sha256=105a1af1e8b544dd1bcc83563ee0e333d9a1f48b873c6891075cac9ac45b215e
Stored in directory: /tmp/pip-ephem-wheel-cache-539fnps9/wheels/38/75/23/32a1f509a49530de49787801ee6e723d02375f371a299eaf76
Successfully built pcaumap
Installing collected packages: pcaumap
Successfully installed pcaumap-0.1.0
UMAP 설치."umap-learn"을 사용하지 말고 "umap-learn"을 사용하십시오.!pip install umap-learn
Requirement already satisfied: umap-learn in /usr/local/lib/python3.7/dist-packages (0.5.1)
Requirement already satisfied: scipy>=1.0 in /usr/local/lib/python3.7/dist-packages (from umap-learn) (1.4.1)
Requirement already satisfied: scikit-learn>=0.22 in /usr/local/lib/python3.7/dist-packages (from umap-learn) (0.22.2.post1)
Requirement already satisfied: pynndescent>=0.5 in /usr/local/lib/python3.7/dist-packages (from umap-learn) (0.5.2)
Requirement already satisfied: numba>=0.49 in /usr/local/lib/python3.7/dist-packages (from umap-learn) (0.51.2)
Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.7/dist-packages (from umap-learn) (1.19.5)
Requirement already satisfied: joblib>=0.11 in /usr/local/lib/python3.7/dist-packages (from scikit-learn>=0.22->umap-learn) (1.0.1)
Requirement already satisfied: llvmlite>=0.30 in /usr/local/lib/python3.7/dist-packages (from pynndescent>=0.5->umap-learn) (0.34.0)
Requirement already satisfied: setuptools in /usr/local/lib/python3.7/dist-packages (from numba>=0.49->umap-learn) (54.1.2)
기본 작업(분류용 데이터)
다음 코드는 PCA입니다. 기본입니다.
!pip install git+https://github.com/maskot1977/PCAUMAP.git
Collecting git+https://github.com/maskot1977/PCAUMAP.git
Cloning https://github.com/maskot1977/PCAUMAP.git to /tmp/pip-req-build-y2pfqm58
Running command git clone -q https://github.com/maskot1977/PCAUMAP.git /tmp/pip-req-build-y2pfqm58
Building wheels for collected packages: pcaumap
Building wheel for pcaumap (setup.py) ... [?25l[?25hdone
Created wheel for pcaumap: filename=pcaumap-0.1.0-cp37-none-any.whl size=4069 sha256=105a1af1e8b544dd1bcc83563ee0e333d9a1f48b873c6891075cac9ac45b215e
Stored in directory: /tmp/pip-ephem-wheel-cache-539fnps9/wheels/38/75/23/32a1f509a49530de49787801ee6e723d02375f371a299eaf76
Successfully built pcaumap
Installing collected packages: pcaumap
Successfully installed pcaumap-0.1.0
!pip install umap-learn
Requirement already satisfied: umap-learn in /usr/local/lib/python3.7/dist-packages (0.5.1)
Requirement already satisfied: scipy>=1.0 in /usr/local/lib/python3.7/dist-packages (from umap-learn) (1.4.1)
Requirement already satisfied: scikit-learn>=0.22 in /usr/local/lib/python3.7/dist-packages (from umap-learn) (0.22.2.post1)
Requirement already satisfied: pynndescent>=0.5 in /usr/local/lib/python3.7/dist-packages (from umap-learn) (0.5.2)
Requirement already satisfied: numba>=0.49 in /usr/local/lib/python3.7/dist-packages (from umap-learn) (0.51.2)
Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.7/dist-packages (from umap-learn) (1.19.5)
Requirement already satisfied: joblib>=0.11 in /usr/local/lib/python3.7/dist-packages (from scikit-learn>=0.22->umap-learn) (1.0.1)
Requirement already satisfied: llvmlite>=0.30 in /usr/local/lib/python3.7/dist-packages (from pynndescent>=0.5->umap-learn) (0.34.0)
Requirement already satisfied: setuptools in /usr/local/lib/python3.7/dist-packages (from numba>=0.49->umap-learn) (54.1.2)
다음 코드는 PCA입니다. 기본입니다.
from pcaumap import PCAUmap
import sklearn.datasets
dataset = sklearn.datasets.load_breast_cancer()
pcau = PCAUmap()
pcau.fit(dataset.data)
pcau.pca_summary(c=dataset.target)
다음은 PCA 결과를 표시하는 UMAP 코드입니다.
import matplotlib.pyplot as plt
plt.figure(figsize=(6, 6))
plt.scatter(pcau.embedding[:, 0], pcau.embedding[:, 1], alpha=0.5, c=dataset.target)
plt.grid()
plt.show()
아래 코드와 같이 scikit-learn의 분류 모델을 적용하면 분류 결과의 경관을 볼 수 있습니다.이 예는 파라미터가 전혀 조화롭지 않은 무작위 숲을 사용했지만 필요에 따라 고릴라로 조정된 임의의 모형을 사용할 수 있다.
from sklearn.ensemble import RandomForestClassifier
model = RandomForestClassifier()
model.fit(dataset.data, dataset.target)
pcau.map_predicted_values(model)
기본 작업(회귀용 데이터)
회귀용 데이터와 scikit-learn의 회귀 모델을 응용하면 아래와 같이 대체적으로 같은 코드로 회귀 결과의 경관을 조망할 수 있다.from pcaumap import PCAUmap
import sklearn.datasets
dataset = sklearn.datasets.load_diabetes()
pcau = PCAUmap()
pcau.fit(dataset.data)
pcau.pca_summary(c=dataset.target)
import matplotlib.pyplot as plt
plt.figure(figsize=(6, 6))
plt.scatter(pcau.embedding[:, 0], pcau.embedding[:, 1], alpha=0.5, c=dataset.target)
plt.grid()
plt.show()
from sklearn.ensemble import RandomForestRegressor
model = RandomForestRegressor()
model.fit(dataset.data, dataset.target)
pcau.map_predicted_values(model)
상세 설정
PCAUMAP에 대한 간단한 설명입니다.더 자세한 설정은 github 창고https://github.com/maskot1977/PCAUMAP.git의 코드를 참조하십시오.
Reference
이 문제에 관하여(PCAUMAP: 차원 삭감 방법을 간소화하고 PCA와 UMAP를 연결하는 분석), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/maskot1977/items/a47fb07fa6a22d52599b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
from pcaumap import PCAUmap
import sklearn.datasets
dataset = sklearn.datasets.load_diabetes()
pcau = PCAUmap()
pcau.fit(dataset.data)
pcau.pca_summary(c=dataset.target)
import matplotlib.pyplot as plt
plt.figure(figsize=(6, 6))
plt.scatter(pcau.embedding[:, 0], pcau.embedding[:, 1], alpha=0.5, c=dataset.target)
plt.grid()
plt.show()
from sklearn.ensemble import RandomForestRegressor
model = RandomForestRegressor()
model.fit(dataset.data, dataset.target)
pcau.map_predicted_values(model)
PCAUMAP에 대한 간단한 설명입니다.더 자세한 설정은 github 창고https://github.com/maskot1977/PCAUMAP.git의 코드를 참조하십시오.
Reference
이 문제에 관하여(PCAUMAP: 차원 삭감 방법을 간소화하고 PCA와 UMAP를 연결하는 분석), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/maskot1977/items/a47fb07fa6a22d52599b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)