吴恩达2022机器学习专项课程(一) 第二周课程实验:实践线性回归

目标

假设您是一家餐厅连锁店的首席执行官,并正在考虑在不同的城市开设新店。您希望将您的业务扩展到可能为您的餐厅带来更高利润的城市。该连锁店已经在各个城市设有餐厅,您已经获得了这些城市的利润和人口数据。您还拥有关于新餐厅候选城市的数据。对于这些城市,您拥有城市人口数据。您能否使用数据帮助您确定哪些城市可能会为您的业务带来更高的利润?(主要就是自己实现一元线性回归的成本函数,梯度下降)

1.熟悉我们的训练集

  • x表示不同城市人口数量,y表示该城市餐厅的盈利。在这里插入图片描述
  • 查看部分城市人口,6.1101 表示该城市的人口为 61101。在这里插入图片描述
  • 查看部分城市利润,17.592表示盈利17.592万美金,负数表示亏损。在这里插入图片描述
  • 查看训练样本的数量。
    在这里插入图片描述
  • 可视化训练样本数据(人口和利润),更多的属性也可以用散点图可视化。在这里插入图片描述

2.计算成本函数(从START CODE HERE自己编写)

  • err表示线性回归函数计算的预测值减去真实值,差值平方,然后最终结果求和。在这里插入图片描述
  • 验证我们写的函数是否正确。
    在这里插入图片描述

3.计算梯度下降(从START CODE HERE自己编写)

  • 目前接触的都是批量梯度下降,也就是每执行一次梯度下降,都计算所有训练样本,而梯度下降的过程是多次迭代的。
    在这里插入图片描述
  • 执行一次梯度下降的w,b,正确与否只看函数写的对不对,不看最终w,b的结果。
    在这里插入图片描述
  • 不断迭代梯度下降。在这里插入图片描述
  • 设置迭代次数为1500,运行上述函数,得到最优w,b。在这里插入图片描述

4.使用模型预测

  • 为每一行训练样本计算预测值。在这里插入图片描述
  • 通过得到的预测值绘画出蓝色线条,拟合数据。在这里插入图片描述
  • 具体运用,预测35000人口城市的餐厅利润多少,70000人口城市的餐厅利润多少。在这里插入图片描述

总结

通过实现一元线性回归,我们预测了不同人口城市下的餐厅连锁店的利润。在预测类似的问题时,我们采用线性回归模型,先了解训练集,然后通过训练集数据计算成本函数和梯度下降,然后我们为梯度下降设置迭代次数,得到最优的w,b。通过w,b,我们就可以代入线性回归公式预测了。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习算法快速入门

文章目录 0.简介1.常用术语1) 模型2) 数据集3) 样本&特征4) 向量5) 矩阵6)假设函数&损失函数7)拟合&过拟合&欠拟合 2.线性回归3.梯度下降求极值4.Logistic回归算法(分类问题)5.KNN最邻近分类算法6.朴素贝叶斯分类算法7.决策树…

前端开发攻略---在页面上渲染大量元素,使用defer减少白屏等待时间,优化页面响应速度

1、优化前 2、优化后 3、优化思路 1、在元素数量不变的情况下,进行一步一步的渲染,先渲染一些重要的元素或者需要用户第一时间看到的元素。 2、使用Hooks封装优化函数 4、优化代码 拥有大量元素的组件(Item):文件位置&…

随着深度学习的兴起,浅层机器学习没有用武之地了吗?

深度学习的兴起确实在许多领域取得了显著的成功,尤其是那些涉及大量数据和复杂模式的识别任务,如图像识别、语音识别和自然语言处理等。然而,这并不意味着浅层机器学习(如支持向量机、决策树、朴素贝叶斯等)已经失去了…

thinkphp5关联预载入with指定字段属性查询

一、thinkphp5.0 如果要指定属性查询,可以使用: $list User::field(id,name)->with([profile>function($query){$query->field(email,phone);}])->select([1,2,3]); foreach($list as $user){// 获取用户关联的profile模型数据dump($user…

学习经验分享【32】本科/硕士开题报告、中期报告等写作经验分享

本科/硕士阶段首先就是要写开题报告,然后中期报告,这篇博文就是分享一下写报告的经验,避免被老师打回来。本人有丰富的写报告经验,有需要的朋友可添加文末联系方式与我联系。 一、本科开题报告的提纲 课题来源及研究的目的和意义…

16路HDMI+AV流媒体IPTV高清编码器JR-3216HD

产品简介: JR-3216HD 16路高清HDMIAV编码器是专业的高清音视频编码产品,该产品具有支持16路高清HDMI音视频采集功能,16路标清AV视频采集功能,16路3.5MM独立外接音频输入,编码输出双码流H.264格式,音频MP3/…

Oracle和PG数据库临时表的差异,PG数据库如何删除临时表

现实的开发过程中使用 PG 数据库删除临时表发现如下报错,提示表 xxx 不存在: 问题原因: 调用删除语句,但是临时表不存在了。 解决方案: PG下用下面的方式来删除临时表或不进行删除(会话级临时表会自动删除…

Qt for Android 开发环境

在搭建环境时开始感觉还挺顺利的,从 Qt 配置的环境里面看并没有什么问题,可真正编译程序的时候发现全是错误。 最开始的时候安装了 JDK21 最新版本,然后根据 JDK21 安装 ndk, build-tools, Platform-Tools 和 Gradle,但是不管这么…

探索AD域控的安全性:ADAudit Plus的角色

在当今数字化时代,企业对于信息安全的需求越来越迫切。作为企业基础设施中的核心组成部分之一,Active Directory(AD)域控制器的安全性显得尤为重要。为了满足企业对AD安全性管理的需求,ADAudit Plus作为一款强大的解决…

element-ui的按需引入报错解决:MoudleBuildFailed,完整引入和按需引入

官网: Element - The worlds most popular Vue UI framework 1.完整引入 (1)下载: npm i element-ui -S (2)引入: 在 main.js 中写入以下内容: import Vue from vue; impor…

[C++初阶]类和对象(一)

1.面向过程和面向对象的区分 我们之前都是用C语言写的代码,我们知道C语言是一个面向过程的语言,但是现在我们学的时C,我们都知道C是一种面向对象的语言,那么什么叫面向过程?什么叫面向对象呢? 这里我们来举个例子: 比如我们是开饭店的,客人点了一道菜&#xff0c…

RocketMQ 02 功能大纲介绍

RocketMQ 02 主流的MQ有很多,比如ActiveMQ、RabbitMQ、RocketMQ、Kafka、ZeroMQ等。 之前阿里巴巴也是使用ActiveMQ,随着业务发展,ActiveMQ IO 模块出现瓶颈,后来阿里巴巴 通过一系列优化但是还是不能很好的解决,之后…

怎么进入抖音企业号管理页面?抖音企业号后台管理入口

抖音企业号上线于2018年6月,截止2020年,开通抖音企业号的企业数超过500万。抖音企业号,是企业商户在抖音平台上的经营阵地,能够帮助企业面向抖音用户“打品牌,找客户,做推广,带销量”&#xff0…

流媒体服务器的应用场景

流媒体服务器的应用场景 流媒体常用协议 RTSP 不适合手机和浏览器端 RTMP 比较适合手机和浏览器端直播 HLS 延迟比较高,适合点播

【JAVA基础篇教学】第八篇:Java中List详解说明

博主打算从0-1讲解下java基础教学,今天教学第八篇:Java中List详解说明。 在 Java 编程中,List 接口是一个非常常用的集合接口,它代表了一个有序的集合,可以包含重复的元素。List 接口提供了一系列操作方法,…

ClickHouse--16--普通函数

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、日期函数1、时间或日期截取函数(返回非日期)2、时间或日期截取函数(返回日期)3、日期或时间日期生成函数 二、类…

纯css实现左右拖拽改变盒子大小

效果&#xff1a; 代码 <!DOCTYPE html> <html><head><meta http-equiv"Content-Type" content"text/html;charsetutf-8"><title></title><style>body {background-color: black;color: white;}.column {ove…

Python 物联网入门指南(四)

原文&#xff1a;zh.annas-archive.org/md5/4fe4273add75ed738e70f3d05e428b06 译者&#xff1a;飞龙 协议&#xff1a;CC BY-NC-SA 4.0 第九章&#xff1a;构建光学字符识别的神经网络模块 本章介绍以下主题&#xff1a; 使用光学字符识别&#xff08;OCR&#xff09;系统 使…

【项目实战】记录一次PG数据库迁移至GaussDB测试(上)

目录 一、说明 1.1、参考文档 1.2、注意事项 1.3、环境基本情况 二、GaussDB新环境安装 2.1 配置操作环境变量 2.1.1 关闭防火墙 步骤1 执行以下命令&#xff0c;检查防火墙是否关闭。 步骤2 执行以下命令&#xff0c;关闭防火墙并禁止开机启动。 步骤3 修改/etc/sel…