20170202 Coursera Stanford-MachineLearning/Week9
来源:互联网 发布:java mongodb orm框架 编辑:程序博客网 时间:2024/05/16 11:28
Week9:Anomaly detection/Recommender Systems 异常检测/推荐系统
Anomaly detection 异常检测
训练样本在中心的概率最大所以test如果在中心表明正常
Gaussian Distribution 高斯分布(正态分布)
设有m个训练集n个特征向量
开发和评价一个异常检测算法
因为数据是倾斜的(y=0正常样本的数目远大于y=1不正常样本),所以要用其他方法去检验算法的好坏
由于异常样本本来就是少量的
所以在训练集中只有正常样本,但在CVset和Testset里面有异常样本(少量)和正常样本
Anomaly Detection vs. Supervised Learning
使用异常检测的原因一般有
- 异常样本(y=1)特别少但是正常样本(y=0)特别多
- 异常样本的种类特别多,未来的异常可能与我们已见过的完全不同
使用监督学习的原因:正负样本的数量都特别多,算法可以判断样本的类别
特征向量的选择
让特征向量的数据看起来更像高斯分布
我们希望
但有时候
Multivariate Gaussian Distribution 多元高斯分布
用一个
协方差矩阵非对角线元素非0时表明向量之间有线性关系
多元高斯分布模型与原来的模型的关系:
Original model的等高线是沿轴线方向的,即其协方差矩阵的非对角线上元素均为0,如下图
即原来的模型是多元高斯分布模型的一个特例
多元高斯分布模型可以自动捉到特征向量之间的线性关系,但在n的值特别大的时候计算效率比较低,而且要求 样本数m > 特征向量数n(
注意
原来的模型在样本数m小的时候也可以运行
Recommender Systems 推荐系统
Content-Based Recommender Systems 基于内容的推荐系统
根据内容确定特征向量权值并根据用户对这些特征的喜好程度进行加权然后预测
例子和算法见https://www.coursera.org/learn/machine-learning/lecture/uG59z/content-based-recommendations
(其实没有什么新内容)
Collaborative Filtering 协同过滤
这个算法能够自行学习所要使用的特征,其实就是根据用户的喜好和评分反推特征向量的值
协同过滤优化目标
协同过滤算法实现
低秩矩阵分解
链接:矩阵低秩分解理论
低秩矩阵是指一个高阶矩阵的秩很小,也就是可以用较少的基底数量逼近原来的矩阵
5部和i电影最相似的电影, find the 5 movies j with the smallest
||x(i)−x(j)||
先对矩阵中的评分进行均值归一化,有时候会取得更好的预测结果
- 20170202 Coursera Stanford-MachineLearning/Week9
- 20161129 Coursera Stanford-MachineLearning/Week6
- 20170123 Coursera Stanford-MachineLearning/Week7
- 20170129 Coursera Stanford-MachineLearning/Week8
- 20161124 Coursera Stanford-MachineLearning/Week1-3
- 20161202 Coursera Stanford-MachineLearning/Week10-11
- 20170125 Coursera Stanford-MachineLearning/Week4-5
- Coursera机器学习 week9 assignment
- Coursera机器学习 Week9 笔记
- Coursera-MachineLearning Note-Week 5
- Stanford 机器学习笔记 Week9 Anomaly Detection
- Stanford 机器学习笔记 Week9 Recommender Systems
- Coursera ML笔记 -----week9-1 异常检测
- Coursera ML笔记 -----week9-2 推荐系统
- 【学习笔记】【Coursera】【MachineLearning】Neural Networks
- WEEK9
- 【学习笔记】【Coursera】【MachineLearning】Large scale machine learning
- MachineLearning
- java多线程基础篇(部分转载)
- 监督学习的结构与各种损失函数
- js事件对象获取兼容写法
- c++单向链表-数据结构
- iOS 分享数据到其它app(open in other app)
- 20170202 Coursera Stanford-MachineLearning/Week9
- eclipse中项目运行时报错之 Compilation error解决方法
- VTK修炼之道46:图形基本操作进阶_三角网格体积、表面积、测地距离、包围盒
- Unity游戏开发之“屏幕截图
- 应用background-position实现css视差效果
- C++数组,字符串,string,结构,共用体,枚举,指针,静态动态内存,vector及array类简介
- JAVA中的四种Reference
- android开源项目view篇
- Android开发:该视频无法播放