文档章节

2017年2月16日 Principal Component Analysis

airxiechao
 airxiechao
发布于 2017/03/20 08:28
字数 133
阅读 2
收藏 0

Principal Component Analysis approaches dimensionality reduction by selecting top k eigenvectors

from __future__ import division
import numpy as np
import pandas as pd
from sklearn.datasets import load_iris
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
import matplotlib.pyplot as plt 
%matplotlib inline

data = load_iris()
X = data.data
X = StandardScaler().fit_transform(X)
y = data.target

def visulize(X):
    for i in range(data.target_names.shape[0]):
        Xi = X[np.where(y == i)]
        plt.scatter(Xi[:,0], Xi[:,1])
        
class myPCA():
    
    def fit_transform(self, X, n_components):
        cov_mat = np.cov(X, rowvar=False)
        eig_vals, eig_vecs = np.linalg.eig(cov_mat)
        eig_pairs = [ (np.abs(eig_vals[i]), eig_vecs[:,i]) for i in range(len(eig_vals))]
        eig_pairs.sort(key=lambda x: x[0], reverse=True)
        matrix_w = np.array([ pair[1] for pair in eig_pairs[:n_components] ])
        return X.dot(matrix_w.T)


mypca = myPCA()
visulize(mypca.fit_transform(X,2))

© 著作权归作者所有

airxiechao
粉丝 4
博文 42
码字总数 9717
作品 1
成都
程序员
私信 提问
spring boot示例项目添加activemq消费者收不到消息

// 启动类 @SpringBootApplication @EnableJms public class Application { @Bean public Queue queue() { return new ActiveMQQueue("sample.queue"); } public static void main(String[]......

miss_all
2017/01/17
1K
2
三种方法实现PCA算法(Python)

  主成分分析,即Principal Component Analysis(PCA),是多元统计中的重要内容,也广泛应用于机器学习和其它领域。它的主要作用是对高维数据进行降维。PCA把原先的n个特征用数目更少的k...

jclian91
2017/12/12
0
0
Ubuntu 17.04(Zesty Zapus)路线图公布

Canonical近日公布了Ubuntu 17.04(Zesty Zapus)操作系统的发布路线图,该版本于今年10月24日上线启动,toolchain已经上传且首个daily ISO镜像已经生成。面向各个flavors的Alpha 1版本计划将...

linuxCool
2016/12/07
19
0
铁路交通系统安全堪忧:丹麦国家铁路运营商DSB和RENA售票网站接连受创

你可曾想过,如果黑客入侵了交通系统,成功地将列车、交通信号、可变信息牌统统变成他们的玩具,那将会带来怎样严重的后果?然而,这种担心并非空穴来风! 网络安全专家称,交通运输系统是网...

技术小能手
2018/05/18
0
0
基于帕累托最优的多目标SNP选择

引用 LaTex @article{GUMUS201323, title = “Multi objective SNP selection using pareto optimality”, journal = “Computational Biology and Chemistry”, volume = “43”, pages = “......

u010203404
2018/05/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

3_数组

3_数组

行者终成事
今天
7
0
经典系统设计面试题解析:如何设计TinyURL(二)

原文链接:https://www.educative.io/courses/grokking-the-system-design-interview/m2ygV4E81AR 编者注:本文以一道经典的系统设计面试题:《如何设计TinyURL》的参考答案和解析为例,帮助...

APEMESH
今天
7
0
使用logstash同步MySQL数据到ES

概述   在生成业务常有将MySQL数据同步到ES的需求,如果需要很高的定制化,往往需要开发同步程序用于处理数据。但没有特殊业务需求,官方提供的logstash就很有优势了。   在使用logstas...

zxiaofan666
今天
10
0
X-MSG-IM-分布式信令跟踪能力

经过一周多的鏖战, X-MSG-IM的分布式信令跟踪能力已基本具备, 特点是: 实时. 只有要RX/TX就会实时产生信令跟踪事件, 先入kafka, 再入influxdb待查. 同时提供实时sub/pub接口. 完备. 可以完整...

dev5
今天
7
0
OpenJDK之CyclicBarrier

OpenJDK8,本人看的是openJDK。以前就看过,只是经常忘记,所以记录下 图1 CyclicBarrier是Doug Lea在JDK1.5中引入的,作用就不详细描述了,主要有如下俩个方法使用: await()方法,如果当前线...

克虏伯
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部