吴恩达机器学习-第三课-第二周

news/2024/10/7 16:24:19

吴恩达机器学习

学习视频参考b站:吴恩达机器学习
本文是参照视频学习的随手笔记,便于后续回顾

推荐系统(Recommender System

提出建议

预测电影评分示例
用户给电影打1-5星,没看过不打分
n表示数量,r表示是否打分,y表示分数
image

使用每个特征

电影特征,例如更倾向于爱情电影还是动作电影
wx+b是某个用户对某个电影评分的预测(用户并没给出评分),像是下图的4.95是Alice对Cute puppies of love的预测
image

电影预测代价函数

只对用户给出评分的使用代价函数
m(j)是用户评分电影的数量,不加影响也不大
image
通过代价函数最小化得到参数w,b,就可以进行很好地评分预测了
image

协同过滤算法(Collaborative filtering algorithm

如果没有电影特征值
假设已经拥有了这些参数w,b,通过这些参数来预测x(线性代数)
如果只有一个用户(一维)无法预测特征值(二维)
image

特征值代价函数

image

协同过滤

将上面两个代价函数放在一起
通过用户已给出的评分预测没有给出的电影评分
image

梯度下降

image

二进制标签

1表示喜欢0表示不喜欢
image
一些标签的示例
image

回归解决二进制分类问题

类似逻辑回归
image
代价函数
image

均值归一化(Mean normalization

但对于没有进行预测的用户,如何更好的预测->均值归一化
image
求每个电影的平均评分:总分/评分人数
将每个评分值减去μ,线性函数上加上μ,然后计算参数w,b,这样会使未评分的用户评分初始值赋为平均值
image
如果只有一个或几个人给电影评分(新电影),就推荐给别人这样不好,平均值可能极高或极低

TensorFlow实现(实现协同过滤算法

image
使用一个简单的代价函数作为示例b=0,y=1
TensorFlow的强大功能Auto Diff、Auto Grad(自动获取导数这些东西)
下图实现梯度下降
image
下图实现协同过滤
image
附带过滤算法和成本函数不能很好地适用密集层(dense layer)

寻找相似特征

给定特征x,寻找相似的x值
image
如何对新电影或评价少的电影进行相关操作?(冷启动问题)
使用其他边信息(side information) 进行推测
image

协同过滤与基于内容过滤对比(Collaborative filtering VS Content-based filtering)

协同过滤:
根据相关用户评分进行推测
基于内容过滤:
根据用户的特点进行推荐(也会继续使用r用户是否评分和y评分值)
image
用户特征和电影特征
image
x可能长度不同,但是v必须相同,因为要点积
image
那么如何计算v呢?通过神经网络->下节↓

基于内容过滤的深度学习方法

不同的输入,固定的输出
可以使用sigmoid函数预测点积(用户和电影)是否相关
image
如何训练这么多参数->通过代价函数J
image
通过计算相关v之间的距离来判断是否相似
image

从大型目录中推荐(Recommending from a large catalogue

不可能每次用户使用时都计算百万次来进行相关推荐
image
损失尺度推荐系统(lost scale recommended system)两步实现:
检索(Retrieval)和排名(Ranking)
先通过某些方式检索出一部分数据放入列表,然后通过神经网络给他们排名匹配预测
image
image
检索数量越多系统越慢,选择合适的检索数量
image

推荐系统中的伦理

image
image
image

基于内容过滤的TensorFlow实现

image

选修(也重要)

降低特征数量(Reducing the number of features)

如图X2的变化对汽车测量影响不大,PCA算法就会自动舍弃X2,只取X1
image
如下图舍弃X2轮胎直径,只取X1
image
PCA做的是找到一个或多个新轴,像是下图Z(并不是三维,一个平面),取了一个新的特征Size来衡量length和height
PCA可以把很多特征变为几个特征
image
image
国家特征示例:
image
image

PCA算法

首先特征值归一化
image
PCA步骤:
1.选择一个轴,将数据投影(垂直)到上面
2.选择最好的那个
下图看起来投影后的点距离太远,方差大,不好
image
下图看起来投影后的点距离过近,挤在一起了,方差小,并不好
image
下图这个看起来比较好,PCA会选择这个
image
通过点积求投影
前提:已经选好Z轴(并不一定是最终的)
image
PCA不是线性回归,区别:
线性回归是通过x预测y,代价是y到线的距离
PCA是尽可能平均方差,让更多点到主成分的距离小
image
image
如果只有Z的值,可不可以重建X1和X2?
只能模糊计算,通过点积轴
image

PCA算法代码实现

fit会自动归一化处理
image
一个主成分示例:
image
两个主成分示例:
image
PCA用途:
1.可视化
2.数据压缩
3.加速监督学习模型训练速度
image

Summary

本周主要学了以下内容
1.推荐系统的符号表示(提出建议),特征值使用,
2.用户的代价函数和电影特征的代价函数协同过滤算法、代价函数及梯度下降
3.回归解决二进制分类问题,均值归一化TensorFlow实现协同过滤
4.寻找相似特征,协同过滤与内容过滤的对比,基于内容过滤的深度学习
5.大型目录中的推荐系统,推荐系统中的伦理,基于内容过滤的TensorFlow实现
6.使用PCA降低特征数量及代码实现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/28231.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

https加密机制

参考:https://www.cnblogs.com/sxiszero/p/11133747.html 对称加密:只用一个秘钥的加解密,如果秘钥进行了泄漏,导致数据不安全 非对称加密:非对称加密算法需要一组密钥对,分别是公钥和私钥,这两个密钥是成对出现的。公钥加密的内容需要对应的私钥解密,私钥加密的内容需…

ZCMU-1153

思路一个感觉是规律问题的数学问题 因为输入的是n所以要的出有关n的关系或者关系 有关排序,所以可以从位次入手,设双胞胎前一个位置在ai,后一个在bi. Sum(bi-ai)=(2+3+4+5+6+...+n+1)=(1+2+3+4+5+6+...+n)+n*1=((n+1) * n)/2 + n; Sum(ai+bi)=(1+2+3+4+....+2n)=((1+2n) *…

C++面试总结(一)--c与c++不同

C++面试总结(一)--C与C++不同 c++特点C++在C语言基础上引入了面对对象的机制,同时也兼容C语言。C++有三大特性(1)封装。(2)继承。(3)多态;C++语言编写出的程序结构清晰、易于扩充,程序可读性好。C++生成的代码质量高,效率高,C++更加安全,增加了const常量、引用、…

「实用」让你彻底搞定i++与++i的区别

i++与++i单独用时的效果是一模一样的,但是如果突然要你说他们俩的区别,你又能不能回答上来呢?这篇博文,我们就完全弄懂他们俩兄弟的区别! 基本概念 i++和++i要是单独使用的话效果是一样的,都是i=i+1,实验证明: i++ 代码: #include<bits/stdc++.h> using namespac…

【GD32】---- 移植工程模板

移植GD32E230的官方库文件,并创建一个工程模板1 新建模板文件夹 新建一个名叫03_GD32TemplateProject的文件夹,用于建造工程模板2 移植官方库文件 在模板文件夹里新建5个文件夹,分别存放官方库文件和系统驱动文件01_main 存放main函数02_Startup 存放系统启动文件03_System …

P9527 [JOISC2022] 洒水器 题解

P9527 [JOISC2022] 洒水器 题解。题目传送门 以下设 \(\operatorname{dis}(x,y)\) 表示树上 \(x,y\) 两点间的距离。修改时对 \(u\) 的周围与 \(u\) 距离小于等于 \(d\) 的点的点权乘 \(w\)。暴力不行,于是考虑打标记。 注意到 \(0\le d\le 40\),一个很自然的想法是:设 \(ta…

OpenStack-容器手册(全)

OpenStack 容器手册(全)原文:zh.annas-archive.org/md5/D8A2C6F8428362E7663D33F30363BDEB 译者:飞龙 协议:CC BY-NC-SA 4.0前言 容器是近年来最受关注的技术之一。随着它们改变了我们开发、部署和运行软件应用程序的方式,它们变得越来越受欢迎。OpenStack 因被全球许多组…

MySQL夺命16问,你能坚持到第几问(转)

原文:https://zhuanlan.zhihu.com/p/534415409 1、数据库三大范式是什么?** 第一范式:每个列都不可以再拆分。 第二范式:在第一范式的基础上,非主键列完全依赖于主键,而不能是依赖于主键的一部分。 第三范式:在第二范式的基础上,非主键列只依赖于主键,不依赖于其他非主…