吴恩达机器学习作业(python) 1.1 Programming Exercise 1: Linear Regression

这篇博客介绍了如何使用Python完成吴恩达机器学习课程的一元线性回归作业。通过加载数据,绘制散点图,然后运用梯度下降法求解最优参数,最终实现数据拟合并可视化成本函数的变化。
摘要由CSDN通过智能技术生成

现在开始一个全新的篇章,学习吴恩达机器学习并用python完成其布置的作业。由于本人以后想从事机器学习/深度学习相关方面的工作。吴恩达建议使用Octave/MATLAB来完成作业,但是用什么语言都不影响算法的编写。因此博主尝试使用python完成其全部作业,一点一点记录这个过程
PART1 Linear regression with one variable
In this part of this exercise, you will implement linear regression with one variable to predict profits for a food truck. Suppose you are the CEO of a restaurant franchise and are considering different cities for opening a new outlet. The chain already has trucks in various cities and you have data for profits and populations from the cities.
You would like to use this data to help you select which city to expand to next.The file ex1data1.txt contains the dataset for our linear regression problem. The first column is the population of a city and the second column is the profit of a food truck in that city. A negative value for profit indicates a loss.The ex1.m script has already been set up to load this data for you.
2.1 Plotting the Data
Before starting on any task, it is often useful to understand the data by visualizing it. For this dataset, you can use a scatter plot to visualize the data, since it has only two properties to plot (profit and population). (Many other problems that you will encounter in real life are multi-dimensional and can’t be plotted on a 2-d plot.)
本次作业需要绘图和科学计算 因此使用到了Numpy 和 Matplotlib两个库

import numpy as np
import matplotlib.pyplot as plt

第一步是根据所给出的数据绘图即可,因为是离散数据,绘制散点图即可,代码如下:

data1 = np.loadtxt('ex1data1.txt', delimiter=',')
X = data1[:, 0]
y = data1[:, 1]
# print(X, y)

# 绘图
plt.scatter(x=X, y=y, c='r', marker='x')
plt.xlabel('Population of City in 10,000s')
plt.ylabel('Profit in $10,000s')
plt.show()

绘制结果如图所示
2.2 Gradient Descent
In this part, you will fit the linear regression parameters θ to our dataset using gradient descent.
2.2.1 Update Equations
The objective of linear regression is to minimize the cost function:
在这里插入图片描述
where the hypothesis hθ(x) is given by the linear model
在这里插入图片描述
Recall that the parameters of your model are the θj values. These are the values you will adjust to minimize cost J(θ). One way to do this is to

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值