import matplotlib.pyplot as plt
import  numpy as np
import tensorflow as tfsess=tf.Session()
x_vals=np.linspace(0,10,100)
y_vals=x_vals+np.random.normal(0,1,100)#装换成矩阵 reshape成 (None,1)
x_vals_column=np.transpose(np.matrix(x_vals))#用来合并 100个元素 (100,2)*(2,1)=(100,1) ==> 若为一个元素  (1,2)*(2,1)=(1,1) 符合运算形式 [2,1]*[[1],[2]]=[4] 即为 kx+b=y  =>(x,1)*(k,b)=y==>A*x=b
ones_column=np.transpose(np.matrix(np.repeat(1,100)))
#tuple 参数
A=np.column_stack((x_vals_column,ones_column))
b=np.transpose(np.matrix(y_vals))
#reshape
A_tensor=tf.constant(A)
b_tensor=tf.constant(b)
#(2,2) 简化运算 *转置矩阵 降维
#A*x=b ==> A^T*A*x=A^t*b  ==> tA_A * x = A^T*b
tA_A=tf.matmul(tf.transpose(A_tensor),A_tensor)#A*x=b  =>  cholseky() 分解矩阵  tA_A=LL'  ==>    LL'* x=A^T*b
L=tf.cholesky(tA_A)
#得到A^t*b
tA_b=tf.matmul(tf.transpose(A_tensor),b_tensor)
# L'* x
solve1=tf.matrix_solve(L,tA_b)
#x
solve2=tf.matrix_solve(tf.transpose(L),solve1)
solution_eval=sess.run(solve2)
#获取最终结果
slope=solution_eval[0][0]
y_intercept=solution_eval[1][0]
print(str(slope))
print(str(y_intercept))
best_fit=[]
for i in x_vals:best_fit.append(slope*i+y_intercept)
plt.plot(x_vals,y_vals,'o')
plt.plot(x_vals,best_fit,'r-')
plt.show()

转载于:https://www.cnblogs.com/x0216u/p/9167279.html

TensorFlow(二) 用TensorFlow为线性回归算法实现矩阵分解相关推荐

  1. matlab中服从高斯分布的矩阵_推荐基础算法之矩阵分解PMF

    推荐基础算法之矩阵分解PMF 大多数存在的协同过滤算法不能处理以下两种情况: 1. 不能处理大规模数据 2.不能处理评分非常少的用户数据 概率矩阵分解模型可以解决大规模.稀疏且不平衡的数据.这篇文章主 ...

  2. 两个卡方分布之和_推荐基础算法之矩阵分解PFM

    推荐基础算法之矩阵分解PFM PFM被称为概率因子模型(Probabilistic Factor Model)或泊松因子模型(Poission factor model).PFM本质上和概率矩阵分解( ...

  3. 推荐算法之--矩阵分解(Matrix Factorization)

    文章目录 推荐算法之--矩阵分解(Matrix Factorization) 1. 共现矩阵 2. 矩阵分解(MF) 3. SVD实现矩阵分解(MF) 4. 梯度下降 实现 矩阵分解(MF) 4.1 ...

  4. 【译文】构建一个图书推荐系统 – 基础知识、knn算法和矩阵分解

    作者 Susan Li 译者 钱亦欣 几乎每个人都有过过在某些网站被个性化推销商品的经历,亚马逊会告诉你购买这本书的读者还购买了-,Udemy则会显示浏览了这些课程的学生也浏览了-.Netfilix于 ...

  5. 机器学习中的常见问题——K-Means算法与矩阵分解的等价

    一.K-Means算法的基本原理 K-Means算法是较为经典的聚类算法,假设训练数据集XXX为:{x1,x2,⋯,xn}" role="presentation" st ...

  6. 【Python学习系列二十三】Scikit_Learn库降维方法(矩阵分解)-PCAFA

    1主成分分析PCA 1.1 精确PCA和似然估计 PCA基于最大方差的正交变量分解多维数据集.在scikit-learn库中,PCA的实现是先通过fit方法计算n维的特征值和特征向量,然后通过tran ...

  7. mf模型 svd++_算法小板报(六)——初探MF(矩阵分解)和FM模型

    一.简介 矩阵分解(Matrix Factorization,MF)是推荐系统中非常经典的一个算法,虽然现今工业界直接使用的较少,但其背后蕴含的编码降维思想,得以广泛应用于推荐领域之中.本文则主要来梳 ...

  8. ciaodvd数据集的简单介绍_基于注意力机制的规范化矩阵分解推荐算法

    随着互联网技术的发展以及智能手机的普及, 信息超载问题也亟待解决.推荐系统[作为解决信息超载问题的有效工具, 已被成功应用于各个领域, 包括电子商务.电影.音乐和基于位置的服务等[.推荐系统通过分析用 ...

  9. 基于矩阵分解的协同过滤算法

    基于矩阵分解的协同过滤算法 基于矩阵分解的CF算法实现(一):LFM LFM原理解析 损失函数 随机梯度下降法优化 基于矩阵分解的CF算法实现(二):BiasSvd BiasSvd 损失函数 随机梯度 ...

  10. 推荐算法矩阵分解实战——keras算法练习

    当今这个信息爆炸的社会,每个人都会面对无数的商品,无数的选择.而推荐算法的目的帮助大家解决选择困难症的问题,在大千世界中推荐专属于你的商品. 推荐系统算法简介 这里简单介绍下推荐系统中最为主要的协同过 ...

最新文章

  1. 命令行客户端MySQL基本命令的使用(登录、登出、数据库操作的SQL语句、表结构的SQL语句、表数据操作的SQL语句)
  2. 【原译】在amazon kindle上安装Metasploit
  3. ubuntu 9.10 输入法问题解决方法
  4. 锂电系统上位—数据中心更高效率运营
  5. qt 制作记事本_23.QT记事本
  6. 坑 之 Tensor XXX must be from the same graph as Tensor XXX
  7. C# 对象名无效 问题
  8. 资深工程师为何否定这种单例模式
  9. App的selenium,Appium爬App!
  10. mysql主从备份及原理分析
  11. 小菜鸟一步步打造图书馆外挂之十三:用户编辑界面的实现
  12. 嵌入式系统——系统安全之常见病毒漏洞刷题整理
  13. wordpress如何获得当前用户的头像
  14. 滴滴拉屎v1.20 一款非常好用的找厕所工具
  15. RSS是什么,RSS怎么玩,RSS原理是什么
  16. cad制图与计算机方面的联系,计算机与CAD制图理论知识.doc
  17. c语言美元转换人民币的程序,【其它】编程题: 1.编写一个人民币和美元的双向汇率转换程序,实现美元和人民币转换,汇率:1美元=6.92人民币...
  18. javascript复习资料第一部分
  19. Jenkins自动构建(CI/DI)项目(一)
  20. arduino nano 蓝牙_基于Arduino的摩尔斯电码练习及无线收发报训练器

热门文章

  1. 超强阵容实操教学, 0 基础 Flink 训练营免费抢报啦!
  2. 基于 Flink 构建 CEP 引擎的挑战和实践
  3. android AChartEnginee讲解之源码框架解读
  4. 手把手图文教你从Eclipse项目迁移Android Studio
  5. python基础知识——模块
  6. 语法高亮_Qt官方示例语法高亮器
  7. pcl中ransac提取直线_SIFT关键点提取
  8. 2021东营高考成绩查询,2021东营市地区高考成绩排名查询,东营市高考各高中成绩喜报榜单...
  9. hdmi接口有什么用_科普一下:电脑显示器用什么接口好,主流接口有哪些?
  10. python人工智能文字识别_Python人工智能之图片识别,Python3一行代码实现图片文字识别...