机器学习
文章平均质量分 84
机器学习知识
不困先生说
这个作者很懒,什么都没留下…
展开
-
如何入门推荐系统
前言推荐系统是一个很工程的领域,相比NLP,CV等理论性较强的AI方向入门难度要低一点。推荐的工作大体可以分为召回和排序,首先从数以万计的items中召回用户可能感兴趣的百万级的items,这里的数量级按照items的数量级来决定,items有可能是音乐(网易云音乐)、电影书籍(豆瓣),商品(淘宝京东)等等;然后从对筛选过一遍的items做排序。当然其实再往细说还有精排粗排等流程,这里作为知识普及就不细说了。召回主要通过多路召回,比如MostPoP(选出平台最受用户喜爱商品top10,推荐给每一个用户)原创 2021-01-14 16:32:25 · 487 阅读 · 0 评论 -
推荐系统入门:详解前深度学习时代常见模型
1. 前深度学习时代1.1 协同过滤《Amazon.com Recommenders Item-to-Item Collaborative Filtering》“协同过滤”就是协同大家的反馈、评价和意见一起对海量的信息进行过滤,从中筛选出目标用户可能感兴趣的信息的推荐过程。下面介绍基于用户的UserCF:生成共现矩阵。假设有m个用户,n个物品,每个用户会对n个物品中的一个或者几个进行评分,未评分的物品分值就用问号表示,则所有m个用户对物品的评分可形成一个m∗nm*nm∗n的评分矩阵,也就是协同原创 2021-01-13 18:38:49 · 512 阅读 · 0 评论 -
协同过滤与矩阵分解
1. 协同过滤“协同过滤”就是协同大家的反馈、评价和意见一起对海量的信息进行过滤,从中筛选出目标用户可能感兴趣的信息的推荐过程。下面介绍基于用户的UserCF:生成共现矩阵。假设有m个用户,n个物品,每个用户会对n个物品中的一个或者几个进行评分,未评分的物品分值就用问号表示,则所有m个用户对物品的评分可形成一个m∗nm*nm∗n的评分矩阵,也就是协同过滤中的共现矩阵。生成共现矩阵后,推荐问题就转换成了预测矩阵中问号的值的过程。通过每个用户对所有物品的评分向量,利用余弦相似度、皮尔逊相关系原创 2020-12-28 21:14:24 · 3421 阅读 · 0 评论 -
FM详解
1. 基本概念常见的线性表达式如下:y=ω0+∑i=1nωixiy=\omega_0 + \sum^{n}_{i=1}\omega_ix_iy=ω0+i=1∑nωixi其中ω0\omega_0ω0为初始权值,或者理解为偏置项,ωi\omega_iωi为每个特征xix_ixi对应的权值。可以看到,这种线性表达式只描述了每个特征与输出的关系。FM的表达式如下,可观察到,只是在线性表达式后面加入了新的交叉项特征及对应的权值。y=ω0+∑i=1nωixi+∑i=1n−1∑j=i+1nωijxi原创 2020-12-16 18:15:25 · 969 阅读 · 0 评论 -
推荐系统FM(因子分解机)详细推导
1. 基本概念常见的线性表达式如下:y=ω0+∑i=1nωixiy=\omega_0 + \sum^{n}_{i=1}\omega_ix_iy=ω0+i=1∑nωixi其中ω0\omega_0ω0为初始权值,或者理解为偏置项,ωi\omega_iωi为每个特征xix_ixi对应的权值。可以看到,这种线性表达式只描述了每个特征与输出的关系。FM的表达式如下,可观察到,只是在线性表达式后面加入了新的交叉项特征及对应的权值。y=ω0+∑i=1nωixi+∑i=1n−1∑j=i+1nωijxi原创 2020-11-03 18:25:49 · 649 阅读 · 0 评论 -
逻辑回归为什么要用sigmoid函数
这个问题我们要从普通线性模型与广义线性模型开始讲起,看官不要着急,慢慢的往下看。普通线性模型与广义线性模型普通线性模型是用模型的预测值去逼近真实标记y:Y=ω1x1+ω2x2+ω3x3+ω4x4+...+ωpxp+bY = \omega_{1}x_1 + \omega_{2}x_2 + \omega_{3}x_3 + \omega_{4}x_4 +... + \omega_{p}x_{p}+bY=ω1x1+ω2x2+ω3x3+ω4x4+...+ωpxp+bY=ωTx+bY = \原创 2020-09-28 15:59:32 · 1342 阅读 · 0 评论 -
pytorch中的kl散度,为什么kl散度是负数?
F.kl_div()或者nn.KLDivLoss()是pytroch中计算kl散度的函数,它的用法有很多需要注意的细节。输入第一个参数传入的是一个对数概率矩阵,第二个参数传入的是概率矩阵。并且因为kl散度具有不对称性,存在一个指导和被指导的关系,因此这连个矩阵输入的顺序需要确定一下。如果现在想用Y指导X,第一个参数要传X,第二个要传Y。就是被指导的放在前面,然后求相应的概率和对数概率就可以了。所以,一随机初始化一个tensor为例,对于第一个输入,我们需要先对这个tensor进行softmax(确保各原创 2020-09-27 13:19:07 · 11768 阅读 · 8 评论 -
如何用裸机从零开始配置深度学习环境
安装显卡驱动没有安装显卡驱动时,nvidia-smi命令失败关闭linux的桌面模式sudo service lightdm stopinit 3打开非图形化界面进行安装到https://www.nvidia.cn/Download/index.aspx?lang=cn下载合适的显卡驱动,我们这下载的是NVIDIA-Linux-x86_64-450.66.run给文件加可执行权限chmod +x NVIDIA-Linux-x86_64-450.66.run安装即可sudo./NVIDIA-Li原创 2020-09-22 17:49:21 · 263 阅读 · 0 评论 -
Aanconda在win和linux下的常用命令
winanaconda创建环境conda create -n env_name python=3.6anaconda删除环境conda remove -n env_name --allanaconda激活环境source activate env_name(conda4的是:conda activate env_name)anaconda退出环境source deactivate(conda4的是:conda deactivate)linuxanaconda创建环境conda cr原创 2020-09-02 21:33:00 · 176 阅读 · 0 评论 -
一分钟分清概率函数,分布函数,概率密度函数
很多初学概率论的同学一定会被这几个概念迷惑,概率函数、分布函数、密度函数,下面就要我们用五分钟的时间来搞定他们!概率函数:用函数的形式来表达概率Pi=P(X=ai)(i=1,2,3...n)P_i=P\left(X=a_i\right) \qquad \left(i=1,2,3...n \right)Pi=P(X=ai)(i=1,2,3...n)概率分布:离散型随机变量的值分布和值的概率...原创 2020-01-20 20:08:41 · 10555 阅读 · 0 评论