在Python中将参数初始化为零

Avo*_*ano 1 python numpy

我试图实现参数初始化并得到错误消息:

import numpy as np

def initialize_with_zeros(dim):
    w = np.zeros(dim, 1)
    b = 0
    return w, b

dim = 2
initialize_with_zeros(dim)
Run Code Online (Sandbox Code Playgroud)

这是错误:

()中的TypeError Traceback(最近一次调用)5 6 dim = 2 ----> 7 initialize_with_zeros(dim)

in initialize_with_zeros(dim)1 def initialize_with_zeros(dim):----> 2 w = np.zeros(dim,1)3 b = 0 4 return w,b 5

TypeError:数据类型未被理解

She*_*ore 5

np.zeros仅将形状作为元组或单个整数(在1-d数组的情况下).如果您只需要一维数组,则传递一个参数.如果你需要一个二维数组,则传递为元组(dim,1).因此,根据您的需要,使用

w = np.zeros(dim)
Run Code Online (Sandbox Code Playgroud)

这会给你一个零的一维数组

或使用

w = np.zeros((dim, 1))
Run Code Online (Sandbox Code Playgroud)

这将为您提供一个dim包含行数和1列的二维数组.

来自官方文档

numpy.zeros(shape,dtype = float,order ='C')

参数:
shape:int或int的元组新数组的形状,例如(2,3)或2.