栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

手搓线性回归

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

手搓线性回归

# 损失函数(y-y^hat)**2对标量b和向量W求偏导得它们的梯度 b_gradient (2 / cnt) * ((np.dot(W_current.T, X)[0, 0] b_current) - y) W_gradient (2 / cnt) * ((np.dot(W_current.T, X)[0, 0] b_current)-y) * X # 梯度下降发更新参数 new_W W_current - (learning_rate * W_gradient) new_b b_current - (learning_rate * b_gradient) return new_b, new_W def lr(points, starting_b, starting_W, learning_rate, num_iterations): 线性回归模型 :param points: :param starting_b: 1个标量 :param starting_W: W参数向量 这里shape是(4, 1) :param learning_rate:学习率 :param num_iterations:迭代次数 :return: b starting_b W starting_W # update for several times for i in range(num_iterations): b, W gradient(b, W, np.array(points), learning_rate) print( 第{}次 损失 {} .format(i 1, compute_error(b, W, points))) return b, W
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/267395.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号