吴恩达-机器学习作业-ex1 线性回归(中文译本与解析)

发布时间:2023-08-24 10:30

吴恩达-机器学习作业-中文译本与解析

前言

本文章主要用python语言完成斯坦福大学吴恩达机器学习的课程作业。课程作业原先使用的是 Octave 和 MATLAB。不过以目前发展趋势来看,无论是对 Machine Learning 的学习还是对未来工程项目的开发 Python 都更为合适。

作业

第一章 ex1-线性回归

1 输入一行代码,返回一个5×5的的单位矩阵

import numpy as np
print(np.eye(5))#或print(np.identity(5)) 不同之处在于后者只能创建方阵

2 单变量线性回归

题目: 假设你是一家连锁餐厅的首席执行官,正在考虑在不同的城市开设一家新餐厅。该连锁店已经在多个城市拥有卡车,你可以得到城市的利润和人口数据。
您希望使用这些数据来帮助您选择要扩展到哪个城市。文件ex1data1.txt包含我们的线性回归问题的数据集。第一列是一个城市的人口,第二列是一个城市的流动餐车的利润。利润为负数表示亏损。

2.1 读取 ex1data1.txt 中数据,并根据数据画出散点图。散点图x轴命名为(‘Population of City in 10,000s’),y轴命名为(‘Profit in $10,000s’);

import numpy as np
import matplotlib.pyplot as plt
local_data=np.loadtxt("ex1data1.txt",delimiter=",")
X=local_data[:,0]
y=local_data[:,1]#X是一个城市的人口,y是一个城市的流动餐车的利润。
plt.plot(X,y,"o")
plt.xlabel("'Population of City in 10,000s'")
plt.ylabel("Profit in $10,000s")
plt.show()

结果如图:
吴恩达-机器学习作业-ex1 线性回归(中文译本与解析)_第1张图片
扩充:

  • np.load和np.save是读写磁盘数组数据的两个主要函数
  • loadtxt函数格式:numpy.loadtxt(fname, dtype=, comments=’#’, delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0) 其中skiprows是指跳过前“···”行;comment的是指, 如果行的开头为“···”就会跳过该行;delimiter为文件分隔符;

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号