• 线性回归

多变量的假设 h 表示为:

ℎ?(?)=?0+?1?1+?2?2+...+????

这个公式中有n+1个参数和n个变量,为了使得公式能够简化一些,引入?0=1,则公式转化为:ℎ?(?)=?0?0+?1?1+?2?2+...+????
此时模型中的参数是一个n+1维的向量,任何一个训练实例也都是n+1维的向量,特征矩阵X的维度是 m*(n+1)。 因此公式可以简化为:ℎ?(?)=???,其中T代表矩阵转置。

def linear_regression(X_data, y_data, alpha, epoch, optimizer=tf.train.GradientDescentOptimizer):# 这个函数是旧金山的一个大神Lucas Shen写的# placeholder for graph inputX = tf.placeholder(tf.float32, shape=X_data.shape)#占位符y = tf.placeholder(tf.float32, shape=y_data.shape)# construct the graphwith tf.variable_scope('linear-regression'):W = tf.get_variable("weights",(X_data.shape[1], 1),initializer=tf.constant_initializer())  # n*1y_pred = tf.matmul(X, W)  # m*n @ n*1 -> m*1loss = 1 / (2 * len(X_data)) * tf.matmul((y_pred - y), (y_pred - y), transpose_a=True)  # (m*1).T @ m*1 = 1*1opt = optimizer(learning_rate=alpha)opt_operation = opt.minimize(loss)# run the sessionwith tf.Session() as sess:sess.run(tf.global_variables_initializer())loss_data = []for i in range(epoch):_, loss_val, W_val = sess.run([opt_operation, loss, W], feed_dict={X: X_data, y: y_data})loss_data.append(loss_val[0, 0])  # because every loss_val is 1*1 ndarrayif len(loss_data) > 1 and np.abs(loss_data[-1] - loss_data[-2]) < 10 ** -9:  # early break when it's converged# print('Converged at epoch {}'.format(i))break# clear the graphtf.reset_default_graph()return {'loss': loss_data, 'parameters': W_val}  # just want to return in row vector format
复制代码

吴恩达机器学习作业(1)相关推荐

  1. 吴恩达机器学习作业ex2-python实现

    系列文章目录 吴恩达机器学习作业ex1-python实现 吴恩达机器学习作业ex2-python实现 吴恩达机器学习作业ex3-python实现 作业说明及数据集 链接:https://pan.bai ...

  2. k均值算法python实现(吴恩达机器学习作业)

    k均值算法python实现(吴恩达机器学习作业) 题目要求 数据集 读取mat文件 K-means 实现 结果 问题 题目要求 采用K均值算法对样本进行聚类. 编写K均值算法源代码,对ex7data2 ...

  3. 第一章-机器学习简介 深度之眼_吴恩达机器学习作业训练营

    目录 专栏简介: 一,机器学习简介 1.1 机器学习定义 1.1 机器学习的重要性 1.2 应用领域 二.监督学习 三.无监督学习 四.总结 专栏简介: 本栏主要内容为吴恩达机器学习公开课的学习笔记, ...

  4. 吴恩达机器学习作业7 - K-means和PCA主成分分析(Python实现)

    吴恩达机器学习作业7 - K-means和PCA主成分分析(Python实现) Introduction 在本实验中,将实现K-means聚类算法,并将其应用于图像压缩.在第二部分实验中,将使用主成分 ...

  5. 吴恩达机器学习作业Python实现(八):异常检测和推荐系统

    吴恩达机器学习系列作业目录 1 Anomaly detection 这部分,您将实现一个异常检测算法来检测服务器计算机中的异常行为.他的特征是测量每个服务器的响应速度(mb/s)和延迟(ms).当你的 ...

  6. 吴恩达机器学习作业Python实现(七):K-means和PCA主成分分析

    吴恩达机器学习系列作业目录 1 K-means Clustering 在这个练习中,您将实现K-means算法并将其用于图像压缩.通过减少图像中出现的颜色的数量,只剩下那些在图像中最常见的颜色. 1. ...

  7. 吴恩达机器学习作业Python实现(六):SVM支持向量机

    吴恩达机器学习系列作业目录 1 Support Vector Machines 1.1 Example Dataset 1 %matplotlib inline import numpy as np ...

  8. 吴恩达机器学习作业Python实现(五):偏差和方差

    吴恩达机器学习系列作业目录 在本练习中,您将实现正则化的线性回归和多项式回归,并使用它来研究具有不同偏差-方差属性的模型 1 Regularized Linear Regression 正则线性回归 ...

  9. 吴恩达机器学习作业Python实现(四):神经网络(反向传播)

    吴恩达机器学习系列作业目录 1 Neural Networks 神经网络 在这个练习中,你将实现反向传播算法来学习神经网络的参数.依旧是上次预测手写数数字的例子. 1.1 Visualizing th ...

  10. 吴恩达机器学习作业Python实现(三):多类分类和前馈神经网络

    吴恩达机器学习系列作业目录 1 多类分类(多个logistic回归) 我们将扩展我们在练习2中写的logistic回归的实现,并将其应用于一对多的分类(不止两个类别). import numpy as ...

最新文章

  1. K8S调度之pod亲和性
  2. PHP框架 one 1.6.0 发布
  3. oracle12c完全卸载工具_oracle完全卸载方法
  4. wdcp mysql密码_WDCP提示无法连接mysql及创建站点提示mysql密码不正确
  5. 「LibreOJ Round #11」Misaka Network 与测试 (网络流跑二分图匹配)
  6. GIS集成技术之二:数据集成
  7. Spring整合SequoiaDB SQL
  8. UVA 10004 Bicoloring
  9. jQuery在asp.net中实现图片自动滚动
  10. 狭义相对论的一点点理解
  11. 摩尔斯电码之Python实现
  12. 用计算机收传真,使用计算机发送和接收传真.doc
  13. 即将首发 | 业界首个零售数字化创新白皮书,解锁全链路数字化致胜秘籍
  14. 调整计算机繁体,电脑输入法是繁体怎么办?电脑输入法变成繁体的解决办法
  15. ffmpeg视频裁剪,切割,crop裁剪相关
  16. 未来必将是AI的天下
  17. 解决火狐浏览器提示连接不安全或证书错误的问题
  18. C. Chocolate Bunny(思维)
  19. .net mapi_使用C#.NET通过MAPI访问收件箱
  20. word文档怎么翻译成中文?不妨试试这几个方法

热门文章

  1. python isinstance()方法的使用
  2. eclipse导入Javaweb文件出错解决
  3. HashMap 的数据结构
  4. Linux/UNIX系统编程手册(英文版)pdf
  5. 解决:Unable to execute dex: GC overhead limit exceeded
  6. 2016年10月20日 .NET Core 1.0.2 更新
  7. [Project Euler]Problem 1:Multiples of 3 and 5
  8. GCC O1 O2 O3
  9. 数据库操作导入导出以及加快查询速度
  10. UWP xaml 圆形头像