• 样本集的简单封装

    D = (numpy.random.randn(N, d), numpy.random.randint(low=0, high=2, size=(N, )))
    # D[0] ⇒ X
    # D[1] ⇒ y

1. One Hot Encoder 编码

  • One Hot Encoder 编码针对的是非数值型(numerical),而是类别型(categorical)特征;
  • One Hot Encoder 有时会带来维度的激增,而维度的激增会使得最终的识别结果存在过拟合的风险;
  • 一个现实的例子即是,比如对商店ID,这一属性,其取值有上千个,对其做One Hot Encoder,显然会带来维度的极大提升,一个解决方案即是:
    • 首先对这些商店进行聚类分析,将几千个商店ID,聚类为几十几百个商店种类;
    • 然后再进行 one hot encoder;

2. 样本间的距离矩阵

  • 样本(XN⋅d" role="presentation">XN⋅dXN⋅d)之间的距离矩阵

    N, d = X.shape
    X_square = np.sum(X*X, axis=1).reshape(N, 1)
    dist_mat = 2*X_square - 2*X.dot(X.T)
pj|i=exp⁡(−‖xi−xj‖2/2σi2)∑k≠iexp⁡(−‖xi−xk‖2/2σi2)" role="presentation">pj|i=exp(−∥xi−xj∥2/2σ2i)∑k≠iexp(−∥xi−xk∥2/2σ2i)pj|i=exp⁡(−‖xi−xj‖2/2σi2)∑k≠iexp⁡(−‖xi−xk‖2/2σi2)
def _joint_distribution_matrix(D, sigma):
P = np.exp(-D*D/2/sigma**2)
P /= np.sum(P, axis=1)
return P

机器学习实战 Tricks的更多相关文章

  1. 机器学习实战笔记(Python实现)-08-线性回归

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  2. 机器学习实战笔记(Python实现)-06-AdaBoost

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  3. 机器学习实战笔记(Python实现)-05-支持向量机(SVM)

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  4. 机器学习实战笔记(Python实现)-04-Logistic回归

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  5. 机器学习实战笔记(Python实现)-03-朴素贝叶斯

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  6. 机器学习实战笔记(Python实现)-01-K近邻算法(KNN)

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  7. 机器学习实战笔记(Python实现)-02-决策树

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  8. 机器学习实战笔记(Python实现)-00-readme

    近期学习机器学习,找到一本不错的教材<机器学习实战>.特此做这份学习笔记,以供日后翻阅. 机器学习算法分为有监督学习和无监督学习.这本书前两部分介绍的是有监督学习,第三部分介绍的是无监督学 ...

  9. 《机器学习实战》 code debug

    摘要:最近在看<机器学习实战>,在code的过程中总是会报一些小错误,所以发下debug过的地方:由于是跳着看的,所以只是其中一部分,希望之后能把这本书我遇见的全部错误都在此更正下. 内容 ...

随机推荐

  1. Linux 如何查看一个进程的堆栈

    有两种方法: 第一种:pstack 进程ID 第二种,使用gdb 然后attach 进程ID,然后再使用命令 thread apply all bt 第三种:strace -f -p pid  该方法 ...

  2. ios开发网络学习五:输出流以及文件上传

    一:输出流 #import "ViewController.h" @interface ViewController ()<NSURLConnectionDataDelega ...

  3. 用SQL找出前N名

    业务系统中常常会有排名的需求,考试和比赛中则更普遍了.Excel 中也有个 Rank 函数供排名之用,数据库中更不例外了. 如果须要找出工资最高的前三个员工工资(及其员工号). 只是."前三 ...

  4. D3D 点列练习

    画四个点在窗体. #pragma once #pragma comment(lib,"d3d9.lib") #pragma comment(lib,"d3dx9.lib& ...

  5. C++ 工具类 —— 词条类(Entry)

    Entry 以键值对(key-value pair)的形式定义. template <typename K, typename V> struct Entry{ K key; V valu ...

  6. 工具类与工具函数 —— NextPrime

    求大于某数的下一个素数: static int NextPrime (int N) { if (N % 2 == 0) ++N; int i; for (; ; N += 2){ for (i = 3 ...

  7. PHP移动互联网开发笔记(6)——文件的上传下载

    一.文件的上传 1.客户端设置: (1).在<form>标签中将enctype和method两个属性指明相应的值. Enctype="multipart/form-data&qu ...

  8. dom对象常用的属性和方法有哪些?

    dom对象常用的属性和方法有哪些? 一.总结 一句话总结: 1.document属性和方法:document的属性有head,body之类,方法有各种获取element的方法 2.element的属性 ...

  9. 使用PowerDesigner15在win7下的系统MySQL p相反roject(一)

    使用PowerDesigner15在win7下的系统MySQL 相反project 1.首先.安装下面的驱动 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv ...

  10. tomcat7,8 centos7 配置apr极好教程

    转自:http://blog.csdn.net/remote_roamer/article/details/51719891 第一次我自己是用的yum安装apr, apr-utils, tomcat- ...