1.深度学习线性模型实战

首先我们需要采样自真实模型的多组数据,对于已知真实模型的玩具样例,我们直接从指定的1.477,b=0.089的真实模型中直接采样:
y=1.477*x+0.089

1.采样数据

为了能够很好地模拟真实样本的观测误差,我们给模型添加误差自变量c,他采样自均值为0,方差为0.01的高斯分布: y=1.477x+0.089+c,c~N(0,0.01)
通过随机采样n=1000次,我们将获得n个样本的训练数据集:

data=[]#保存样本集的列表
for i in range(100):#循环采样100个点
    x=np.random.uniform(-10.,10.)#随机采样输入x
    #采样高斯噪声
    eps=np.random.normal(0.,0.1)
    #得到模型的输出
    y=1.477*x+0.089+eps
    data.append([x,y])#保存样本点
data=np.array(data)#转换为2Dnumpy数组

循环进行100次采样,每次从区间[-10,10]的均匀分布U(0,1)中随机采样一个数据x,同时从均值为0,方差为0.01的高斯分布N(0,0.01)中随机采样噪声c,根据真实模型生成y的数据,并保存为Numpy数组。

2.计算误差

循环计算在每个点(x,y)处的预测值与真实值之间的差集平方并累加,从而获得训练集上的均方差损失值。

def mse(b,w,points):
    #根据当前的w,b参数计算均方差损失
    totalError=0
    for i in range(0,len(points)):#循环迭代所有点
        x=points[i,0]#获得i号点的输入x
        y=points[i,1]#获得i号点的输出y
        #计算差的平方,并累加
        totalError+=(y-(w*x+b))**2
    
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值