当前位置: 首页 > news >正文

做阿里云网站空间国内打开google网页的方法

做阿里云网站空间,国内打开google网页的方法,wordpress 3.9 性能,c 网站建设教程视频教程[ pca算法用于原始数据维数较高时对数据进行降维 关于pca算法的学习#xff0c;有一篇分析特别详细的论文http://www.cs.otago.ac.nz/cosc453/student_tutorials/principal_componen基本原理NMF#xff0c;非负矩阵分解#xff0c;它的目标很明确#xff0c;就是将大矩阵分…[ pca算法用于原始数据维数较高时对数据进行降维 关于pca算法的学习有一篇分析特别详细的论文http://www.cs.otago.ac.nz/cosc453/student_tutorials/principal_componen基本原理NMF非负矩阵分解它的目标很明确就是将大矩阵分解成两个小矩阵使得这两个小矩阵相乘后能够还原到大矩阵。而非负表示分解的矩阵都不包含负值。 从应用的角度来说矩阵分解能够用于发现两种实体间的潜在特征一个最常见的应用就是协同过滤中的预测打分值而从协同过滤的这个角度来说非负也很容易理解打分都是正的不会出现负值。在例如Netflix或MovieLens这样的推荐系统中有用户和电影两个集合。给出每个用户对部分电影的打分我们希望预测该用户对其他没看过电影的打分值这样可以根据打分值为其做出推荐。用户和电影的关系可以用一个矩阵来表示每一行表示用户每一列表示电影每个元素的值表示用户对已经看过的电影的打分矩阵看起来如下D1D2D3D4U1 5 3 - 1U2 4 - - 1U3 1 1 - 5U4 1 - - 4U5 - 1 5 4而使用矩阵分解来预测评分的思想来源于我们可以通过矩阵分解来发现一些用户打分的潜在特征。比如两个人都喜欢某一演员那他们就倾向于给TA演的电影打高分或者两个人都喜欢动作片。假如我们能够发现这些特征我们就能够预测特定用户对特定电影的打分。为了发现不同的特征我们假设特征的数量少于用户和电影的数量(要是每个用户都有一个独立特征那代价也太大啦)。数学基础首先我们定义U为用户的集合D为电影的集合R U * D为评分的集合。假设我们需要寻找K个特征则我们的目标是找到两个矩阵P和Q使得它们相乘近似等于R。即这样P的每一行表示用户每一列表示一个特征它们的值表示用户与某一特征的相关性值越大表明特征越明显。同理Q的每一行表示电影每一列表示电影与特征的关联。最后为了预测用户ui对特定电影dj的评分我们可以直接计算ui和dj对应的特征向量的点积即现在我们就来计算P和Q。最简单的方法就是梯度下降该方法先初始化P和Q为特定的值计算它们的乘积与真实矩阵的误差然后通过迭代逐渐减小误差直至收敛。由于误差可大可小这里使用平方根误差(squared error)来计算计算公式如下即循环地计算每一条目的误差最后相加。为了最小化误差我们需要知道怎么改变Pik和Qkj的值(在梯度下降中表现为下降的方向)。我们对这个公式求偏微分即得计算出梯度之后我们逐步更新Pik和Qkj[KNN算法的Python实现] 上面公式中为梯度下降常数通常取一个较小的值(防止无法收敛)如0.0002。 有人可能会问一个问题假如我们计算出P和Q使得P*Q近似等于R那么那些未评分的不全是0了么首先我们并不要求P*Q精确等于R其次我们输入的数据是所有已评分的数据(或它的子集)即训练集而并不包含未评分的数据。因此它能够对未评分的做出不等于0的预测。通过上面的更新规则我们就可以逐步减小误差直至收敛规范化上面的算法只是最简单的一个实现实际使用中可能复杂得多。一个最常见的修改就是引入规范化以防止过度拟合。这通过加入另外一个参数来修改误差公式 参数用来控制用户特征向量与条目特征向量的比例以避免出现特征向量中出现特别大的值。实际应用中通常设置为0~0.02之间的值。因此更新公式变成 一个简单的python实现如下(需要安装numpy)import numpydef matrix_factorisation(R, P, Q, K, steps5000, alpha0.0002, beta0.02):Q Q.Tfor step in range(steps):for i in range(len(R)):for j in range(len(R[i])):if R[i][j] 0:eij R[i][j] - numpy.dot(P[i,:],Q[:,j])for k in range(K):P[i][k] P[i][k] alpha * (2 * eij * Q[k][j] - beta * P[i][k])Q[k][j] Q[k][j] alpha * (2 * eij * P[i][k] - beta * Q[k][j])eR numpy.dot(P,Q)e 0for i in range(len(R)):for j in range(len(R[i])):if R[i][j] 0:e e pow(R[i][j] - numpy.dot(P[i,:],Q[:,j]), 2)for k in range(K):e e (beta/2) * (pow(P[i][k],2) pow(Q[k][j],2))if e 0.001:breakreturn P, Q.T使用示例如下R [[5,3,0,1],[4,0,0,1],[1,1,0,5],[1,0,0,4],[0,1,5,4],]R numpy.array(R)N len(R)M len(R[0])K 2P numpy.random.rand(N,K)Q numpy.random.rand(M,K)nP, nQ matrix_factorisation(R, P, Q, K)nR numpy.dot(nP, nQ.T)print(nR)最后P*Q还原出的矩阵如下D1D2D3D4U1 4.97 2.98 2.18 0.98U2 3.97 2.40 1.97 0.99U3 1.02 0.93 5.32 4.93U4 1.00 0.85 4.59 3.93U5 1.36 1.07 4.89 4.12可以看到还原后的矩阵跟原矩阵很接近并且对原来空缺的值作出了预测。在这个例子中我们可以看到U1和U2口味比较接近他们都喜欢D1和D2。而其他的用户则喜欢D3,D4和D5。[Apriori算法是数据挖掘中频发模式挖掘的鼻祖从60年代就开始流行其算法思想也十分简单朴素首先挖掘出长度为1的频繁模式然后k2将这些频繁模式合并组成长度为k的频
http://www.pierceye.com/news/762696/

相关文章:

  • asp.net网站管理系统域名注册报备
  • 买了个网站后怎么做如何提高 网站的点击量
  • 哪些行业网站推广做的多o2o商城源码
  • 北京seo站内优化电商网站前端页面响应式设计
  • 贵港seo关键词整站优化网站恶意攻击
  • 王磊网络网站建设公关
  • 怎么建网站做推广win网站建设
  • 在线做英语题的网站wordpress被设置不录入
  • 桃花岛网站是什么翻硬币网站怎么做
  • 做海报的网站有哪些内容windows同步wordpress
  • 制作网页的网站费用属于资本性支出吗安徽区块链虚拟币网站开发方案
  • 做网站前产品经理要了解什么搜索引擎优化免费
  • 广州网站建设技术方案营销网站推广策略
  • 郑州网站建设、中国菲律宾铁路项目
  • 潜江网站开发学校网站建设领导小组
  • 桂林临桂区建设局网站厦门 微网站建设公司哪家好
  • 如何用云服务器搭建个人网站有些人做网站不用钱的,对吗?
  • 月嫂网站建设方案建设网站询价对比表模板
  • 医院网站建设 价格低深圳市高端网站建设
  • 太原做学校网站的公司网站免费观看
  • 企业网络营销是什么seo教程百度云
  • wordpress 下载站模板高清免费观看电视网站
  • 网站后期维护怎么做招c1驾驶员300元一天
  • 番禺区移动端网站制作山西省两学一做网站
  • 网上销售 网站建设浙江创都建设有限公司网站
  • 网站商城的公司运营结构html5 app开发工具
  • 酒类网站建设方案案中山网站建设公司排名
  • wordpress怎么做子页面如何刷seo关键词排名
  • 网站怎样做免费优化有效果成都十大好的装修公司
  • 网站外链分析工具新闻发布会主持词