商务网站设计学校招生网络营销方案

张小明 2026/1/19 20:50:00
商务网站设计,学校招生网络营销方案,北湖区网站建设哪家好,展示型的网站用4. 实例从上述求解过程可以看到#xff0c;梯度下降法其实比之前文章中介绍的Gauss-Newton方法要简单很多#xff0c;那么这里还是给出一个只使用Eigen实现梯度下降法求解非线性最小二乘问题的例子。例子中模型函数为f(x;θ)aebx#xff1a;#include Eigen/Dense#in…4. 实例从上述求解过程可以看到梯度下降法其实比之前文章中介绍的Gauss-Newton方法要简单很多那么这里还是给出一个只使用Eigen实现梯度下降法求解非线性最小二乘问题的例子。例子中模型函数为f(x;θ)aebx#include Eigen/Dense#include cmath#include iostream#include random#include vectorusing namespace std;using namespace Eigen;// 模型函数: y a * exp(b * x)double model(double x, const Vector2d theta) {double a theta(0);double b theta(1);return a * exp(b * x);}// 计算残差: r_i y_i - f(x_i; a, b)VectorXd computeResiduals(const vectordouble x_data,const vectordouble y_data, const Vector2d theta) {int N x_data.size();VectorXd r(N);for (int i 0; i N; i) {r(i) y_data[i] - model(x_data[i], theta);}return r;}// 计算 Jacobian 矩阵 (N x 2): ∂r_i/∂a, ∂r_i/∂bMatrixXd computeJacobian(const vectordouble x_data, const Vector2d theta) {int N x_data.size();MatrixXd J(N, 2);double a theta(0);double b theta(1);for (int i 0; i N; i) {double x x_data[i];double exp_bx exp(b * x); // exp(b*x)J(i, 0) -exp_bx; // ∂r/∂a -exp(b*x)J(i, 1) -a * exp_bx * x; // ∂r/∂b -a * exp(b*x) * x}return J;}int main() {// // 1. 真实参数// Vector2d true_params;true_params 2.0, -0.3; // a2.0, b-0.3 → y 2 * exp(-0.3 * x)cout 真实参数: a true_params(0) , b true_params(1) endl;// // 2. 生成带噪声的数据// int N 20;vectordouble x_data(N), y_data(N);random_device rd;mt19937 gen(rd());normal_distributiondouble noise(0.0, 0.05); // 小噪声for (int i 0; i N; i) {x_data[i] -2.0 i * 0.4; // x 从 -2 到 6double y_true model(x_data[i], true_params);y_data[i] y_true noise(gen);}// // 3. 初始化参数// Vector2d theta;theta 1.0, 0.0; // 初始猜测: a1.0, b0.0cout 初始猜测: a theta(0) , b theta(1) endl;// // 4. 梯度下降法// int max_iter 500;double alpha 5e-3; // 学习率double tol 1e-6;cout \n开始梯度下降...\n;cout 迭代\t残差平方和\t\t参数 a\t\t参数 b\n;cout ----\t----------\t\t------\t\t------\n;for (int iter 0; iter max_iter; iter) {// 计算残差VectorXd r computeResiduals(x_data, y_data, theta);double cost r.squaredNorm();// 计算梯度MatrixXd J computeJacobian(x_data, theta);Vector2d gradient 2.0 * J.transpose() * r;// 打印当前状态每10次if (iter % 10 0) {cout iter \t cost \t\t theta(0) \t\t theta(1) endl;}// 终止条件if (gradient.norm() tol) {cout 收敛梯度范数: gradient.norm() endl;break;}// 更新参数theta - alpha * gradient;}// // 5. 输出结果// cout \n--- 拟合完成 --- endl;cout 估计参数: a theta(0) , b theta(1) endl;cout 真实参数: a true_params(0) , b true_params(1) endl;return 0;}运行结果如下真实参数: a 2, b -0.3初始猜测: a 1, b 0开始梯度下降...迭代 残差平方和 参数 a 参数 b---- ---------- ------ ------0 22.7591 1 010 1.11435 1.72284 -0.34520 0.100641 1.93634 -0.30177830 0.0326195 1.99193 -0.29449340 0.0286004 2.00545 -0.29288250 0.0283681 2.0087 -0.29250360 0.0283548 2.00948 -0.29241370 0.028354 2.00967 -0.29239180 0.0283539 2.00971 -0.29238690 0.0283539 2.00972 -0.292385100 0.0283539 2.00972 -0.292384110 0.0283539 2.00973 -0.292384120 0.0283539 2.00973 -0.292384收敛梯度范数: 9.36104e-07--- 拟合完成 ---估计参数: a 2.00973, b -0.292384真实参数: a 2, b -0.3求解的关键还是在于计算雅可比矩阵对于问题模型函数f(x;θ)aebx来说雅可比矩阵应该是J(θ)⎡⎢⎢⎢⎢⎢⎢⎢⎢⎣∂(y1−aebx1)∂a∂(y1−aebx1)∂b∂(y2−aebx2)∂a∂(y2−aebx2)∂b⋮⋮∂(ym−aebxm)∂a∂(ym−aebxm)∂b⎤⎥⎥⎥⎥⎥⎥⎥⎥⎦−⎡⎢⎢⎢⎢⎢⎣ebx1aebx1x1ebx2aebx2x2⋮⋮ebxmaebxmxm⎤⎥⎥⎥⎥⎥⎦对比代码中的实现// 计算 Jacobian 矩阵 (N x 2): ∂r_i/∂a, ∂r_i/∂bMatrixXd computeJacobian(const vectordouble x_data, const Vector2d theta) {int N x_data.size();MatrixXd J(N, 2);double a theta(0);double b theta(1);for (int i 0; i N; i) {double x x_data[i];double exp_bx exp(b * x); // exp(b*x)J(i, 0) -exp_bx; // ∂r/∂a -exp(b*x)J(i, 1) -a * exp_bx * x; // ∂r/∂b -a * exp(b*x) * x}return J;}另外除了迭代过程中的初始条件和迭代停止条件控制步长的学习率也需要注意。设置的学习率过小迭代次数就会很长导致收敛很慢而设置的学习率过大就容易
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

茶叶淘宝店网站建设ppt网站建设销售主管岗位职责

在 Django 中创建用户有多种方式,具体取决于你是想通过 管理后台、命令行 还是 代码(视图/API) 来实现。 以下是三种最常用的方法:1. 使用命令行创建管理员 (Superuser) 如果你是刚开始开发项目,需要进入 Django Admin…

张小明 2026/1/17 21:37:10 网站建设

网站建设技术教程视频深圳网站建设怎样快速

博主介绍 💗博主介绍:✌全栈领域优质创作者,专注于Java、小程序、Python技术领域和计算机毕业项目实战✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 2025-2026年最新1000个热门Java毕业设计选题…

张小明 2026/1/17 21:37:11 网站建设

手机app手机网站开发可不可以免费创建网站

第一章:智谱开源Open-AutoGLM模型概述智谱AI推出的Open-AutoGLM是一个面向自动化图学习任务的开源大语言模型,专为处理复杂图结构数据而设计。该模型融合了图神经网络(GNN)与大规模语言理解能力,能够在无需人工干预的情…

张小明 2026/1/17 21:37:11 网站建设

如何建三网合一网站网页源代码解密

AutoGPT 镜像下载与快速启动:从克隆到运行的完整实践指南 在生成式 AI 浪潮席卷各行各业的今天,一个更智能、更自主的代理时代正在悄然来临。传统聊天机器人依赖用户“问一句答一句”,而像 AutoGPT 这样的新一代 AI 智能体,则具备…

张小明 2026/1/17 21:37:14 网站建设

ui网站界面建立网站需要哪几个

Applite终极指南:告别复杂命令的Mac软件管理完整解决方案 【免费下载链接】Applite User-friendly GUI macOS application for Homebrew Casks 项目地址: https://gitcode.com/gh_mirrors/ap/Applite 还在为繁琐的终端命令而烦恼吗?Applite为您带…

张小明 2026/1/17 21:37:15 网站建设

推荐网站建设服务话术正规代运营公司

经济不断波动的同时,消费者购买行为也在经历着前所未有的变化,而酒精饮料的市场也不再是以往的那一成不变的局面了。近期Inmar Intelligence发布的《2025年成人饮料的营销未来报告》不仅对市场的深度挑战了我们的思路,也通过一个令人感慨的酒…

张小明 2026/1/17 21:37:16 网站建设