学习笔记-Numpy-常用

Q: 来一个从0到100,间隔是5.3的数组:

np.arange(0., 100., 5.3)
#array([ 0. ,  5.3, 10.6, 15.9, 21.2, 26.5, 31.8, 37.1, 42.4, 47.7, 53. ,58.3, 63.6, 68.9, 74.2, 79.5, 84.8, 90.1, 95.4])

Q: 来5个全部都是1的数组:

np.full(5, 1.0)
#array([1., 1., 1., 1., 1.])

Q: 来5个全部都是0的数组:

np.zeros(5)
#array([0., 0., 0., 0., 0.])

Q: 数组变matrix怎么搞?

np.arange(0, 10, 1).reshape(2, 5)
#array([[0, 1, 2, 3, 4],
#       [5, 6, 7, 8, 9]])

Q: randn咋用?

np.random.randn(5, 2)
#array([[ 0.8644362 , -0.74216502],
#       [ 2.26975462, -1.45436567],
#       [ 0.04575852, -0.18718385],
#       [ 1.53277921,  1.46935877],
#       [ 0.15494743,  0.37816252]])

Q: matrix 运算

x = np.arange(0, 6, 1).reshape(2, 3)
y = np.arange(1, 7, 1).reshape(3, 2)

np.dot(x, y)
'''array([[13, 16],
       [40, 52]])
'''
np.dot(y, x)
'''array([[ 6,  9, 12],
       [12, 19, 26],
       [18, 29, 40]])
'''

Q: gradient descent 运算写法:

theta = np.random.randn(2)

x = np.arange(1.0, 10.0, 0.2)
x0 = np.full(len(x), 1.0)
# combine
input_data = np.column_stack([x0, x])
'''
[[1.  0. ]
 [1.  0.2]
 [1.  0.4]
 [1.  0.6]
 [1.  0.8]]
'''
target_data = 2 * x + 5 + np.random.randn(m)
alpha = 0.001
sum_m = np.zeros(2)
count = 0
while count < 10000:
	count += 1
	for i in range(len(x)):
		aL_atheta = (np.dot(theta, input_data[i]) - target_data[i]) * input_data[i]
		#遍历后,把每个row加起来,最后就是一个1x2vector。分别是[theta0, theta1]
		sum_m += aL_atheta
	# alpha => learning rate.更新theta的值
	theta = theta - alpha*sum_m
Python学习笔记》是由皮大庆编写的一本关于Python语言学习的教材。在这本书中,作者详细介绍了Python语言的基础知识、语法规则以及常用的编程技巧。 首先,作者简要介绍了Python语言的特点和优势。他提到,Python是一种易于学习和使用的编程语言,受到了广大程序员的喜爱。Python具有简洁、清晰的语法结构,使得代码可读性极高,同时也提供了丰富的库和模块,能够快速实现各种功能。 接着,作者详细讲解了Python的基本语法。他从变量、数据类型、运算符等基础知识开始,逐步介绍了条件语句、循环控制、函数、模块等高级概念。同时,作者通过大量的示例代码和实践案例,帮助读者加深对Python编程的理解和应用。 在书中,作者还特别强调了编写规范和良好的编程习惯。他从命名规范、注释风格、代码缩进等方面指导读者如何写出清晰、可读性强的Python代码。作者认为,良好的编程习惯对于提高代码质量和提高工作效率非常重要。 此外,作者还介绍了Python常用库和模块。他提到了一些常用的库,如Numpy、Pandas、Matplotlib等。这些库在数据处理、科学计算、可视化等领域有广泛的应用,帮助读者更好地解决实际问题。 总的来说,《Python学习笔记》是一本非常实用和全面的Python学习教材。通过学习这本书,读者可以系统地学习和掌握Python编程的基础知识和高级应用技巧,为以后的编程学习和工作打下坚实的基础。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值