版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Solo95/article/details/84324468
来自吴恩达 深度学习 第二周作业第一部分
# GRADED FUNCTION: normalizeRows
import numpy as np
def normalizeRows(x):
"""
Implement a function that normalizes each row of the matrix x (to have unit length).
Argument:
x -- A numpy matrix of shape (n, m)
Returns:
x -- The normalized (by row) numpy matrix. You are allowed to modify x.
"""
### START CODE HERE ### (≈ 2 lines of code)
# Compute x_norm as the norm 2 of x. Use np.linalg.norm(..., ord = 2, axis = ..., keepdims = True)
x_norm = np.linalg.norm(x, axis=1, keepdims = True)
x = x / x_norm
return x
其中ord指定范数的阶数。
范数简述
我们知道距离的定义是一个宽泛的概念,只要满足非负、自反、三角不等式就可以称之为距离。
范数是一种强化了的距离概念,它在定义上比距离多了一条数乘的运算法则。有时候为了便于理解,我们可以把范数当作距离来理解。
向量的范数就是向量中每一项求n次方,求和之后再开n次方的根。
表示一种到坐标原点距离的度量。
二阶范数(也称L2范数)是最常见的范数,即欧几里得距离。
上图中 , ,二阶范数,常用与深度学习领域。