当前位置: 首页 > news >正文

2016年做网站能赚钱网站制作公司有哪些

2016年做网站能赚钱,网站制作公司有哪些,哈尔滨网站建设的公司哪家好,网络营销的三大核心机器学习#xff1a;基于梯度下降算法的线性拟合实现和原理解析 线性拟合梯度下降算法步骤算法实现数据可视化#xff08;动态展示#xff09;应用示例 当我们需要寻找数据中的趋势、模式或关系时#xff0c;线性拟合和梯度下降是两个强大的工具。这两个概念在统计学、机器… 机器学习基于梯度下降算法的线性拟合实现和原理解析 线性拟合梯度下降算法步骤算法实现数据可视化动态展示应用示例 当我们需要寻找数据中的趋势、模式或关系时线性拟合和梯度下降是两个强大的工具。这两个概念在统计学、机器学习和数据科学领域都起着关键作用。本篇博客将介绍线性拟合和梯度下降的基本原理以及它们在实际问题中的应用。 线性拟合 线性拟合是一种用于找到数据集中线性关系的方法。它的基本原理是我们可以使用线性方程来描述两个或多个变量之间的关系。这个方程通常采用以下形式 y m x b ymxb ymxb 在这个方程中 y y y 是因变量 x x x 是自变量 m m m 是斜率 b b b 是截距。线性拟合的目标是找到最佳的斜率和截距以使线性方程最好地拟合数据。 为了找到最佳拟合线我们通常使用最小二乘法。这意味着我们将所有数据点到拟合线的距离的平方相加然后寻找最小化这个总和的斜率和截距。这可以用数学优化方法来实现其中一个常用的方法就是梯度下降。 梯度下降 梯度下降是一种迭代优化算法用于寻找函数的最小值。在线性拟合中我们的目标是最小化误差函数即数据点到拟合线的距离的平方和。这个误差函数通常表示为 J ( m , b ) J(m, b) J(m,b)其中 m m m 是斜率 b b b 是截距。我们的任务是找到 m m m 和 b b b 的值使 J ( m , b ) J(m, b) J(m,b) 最小化。 梯度下降的基本思想是从一个随机初始点开始然后根据误差函数的梯度方向逐步调整参数直到找到局部最小值。梯度下降的迭代规则如下 在这里 α \alpha α 是学习率它决定了每次迭代中参数更新的步长。较大的学习率可能导致快速收敛但可能会错过最小值而较小的学习率可能需要更多的迭代。 算法步骤 线性回归中的梯度下降是一种优化算法用于寻找最佳拟合线性模型的参数以最小化预测值与实际观测值之间的均方误差Mean Squared ErrorMSE。梯度下降的原理可以概括为以下几个步骤 初始化参数 首先为线性回归模型的参数权重和偏置项选择初始值。通常可以随机初始化这些参数。 计算损失函数 使用当前的参数值计算出模型的预测值并计算预测值与实际观测值之间的差异即损失函数。在线性回归中常用的损失函数是均方误差MSE它表示为 其中 m m m 是样本数量 y ( i ) y^{(i)} y(i) 是第 i i i 个观测值 y ^ ( i ) \hat{y}^{(i)} y^​(i) 是模型的预测值。 计算梯度 梯度是损失函数关于参数的偏导数表示了损失函数在参数空间中的变化方向。梯度下降算法通过计算损失函数关于参数的梯度来确定参数更新的方向。对于线性回归模型梯度可以表示为 其中 J ( θ ) J(\theta) J(θ) 是损失函数 θ \theta θ 是参数向量 X X X 是特征矩阵 y y y 是目标向量。 参数更新 使用梯度信息按照下面的规则来更新参数 θ θ − α ∇ J ( θ ) θθ−α∇J(θ) θθ−α∇J(θ) 其中 α \alpha α 是学习率它控制着每次参数更新的步长。学习率越小参数更新越小但收敛可能会更稳定。学习率越大参数更新越快但可能会导致不稳定的收敛或发散。 重复迭代 重复执行步骤2至步骤4直到满足停止条件例如达到最大迭代次数或损失函数收敛到一个足够小的值。在每次迭代中参数都会根据梯度信息进行更新逐渐优化以减小损失函数。 梯度下降的目标是找到损失函数的最小值这将使线性回归模型的预测值与实际观测值之间的误差最小化。通过不断调整参数梯度下降可以使模型逐渐收敛到最佳参数值从而得到最佳拟合线性模型。 算法实现 import numpy as np import matplotlib.pyplot as plt # 设置字体为支持汉字的字体例如宋体 plt.rcParams[font.sans-serif] [SimSun] # 创建示例数据 X np.array([1, 2, 3, 4, 5]) y np.array([2, 4, 5, 4, 5])# 添加偏置项截距项到特征矩阵 # 添加了偏置项截距项到特征矩阵 X。这是通过在 X 前面添加一列全为1的列来实现的。这是线性回归模型中的常见步骤。 X_b np.c_[np.ones((len(X), 1)), X.reshape(-1, 1)]# 使用正规方程计算最佳参数 theta_best np.linalg.inv(X_b.T.dot(X_b)).dot(X_b.T).dot(y)# 使用梯度下降计算最佳参数 def gradient_descent(X_b, y, theta, learning_rate, num_epochs):m len(y)losses []for epoch in range(num_epochs):# 计算当前参数下的预测值。predictions X_b.dot(theta)error predictions - y# 计算均方误差MSE作为损失函数衡量预测值和实际值之间的差异。loss np.mean(error**2)# 计算损失函数的梯度用于更新参数。# X_b.T 表示矩阵 X_b 的转置。在线性代数中矩阵的转置是指将矩阵的行和列交换即将矩阵的列向量变成行向量反之亦然。gradient 2 * X_b.T.dot(error) / mtheta - learning_rate * gradientlosses.append(loss)return theta, lossestheta np.random.randn(2) learning_rate 0.01 num_epochs 1000 theta, losses gradient_descent(X_b, y, theta, learning_rate, num_epochs)# 可视化数据和拟合结果 plt.scatter(X, y, label数据点) plt.plot(X, X_b.dot(theta_best), label正规方程拟合, colorgreen) plt.plot(X, X_b.dot(theta), label梯度下降拟合, colorred) plt.xlabel(特征值) plt.ylabel(目标值) plt.legend() plt.show() 数据可视化动态展示 import numpy as np import matplotlib.pyplot as plt from matplotlib.animation import FuncAnimation# 创建一些示例数据 np.random.seed(0) X 2 * np.random.rand(100, 1) y 4 3 * X np.random.rand(100, 1)# 初始化线性模型参数 theta np.random.randn(2, 1)def gradient_descent(X, y, theta, learning_rate, num_iterations):m len(y)history []for iteration in range(num_iterations):gradients -2/m * X.T.dot(y - X.dot(theta))theta - learning_rate * gradientshistory.append(theta.copy())return historylearning_rate 0.1 num_iterations 50# 添加偏置项 X_b np.c_[np.ones((100, 1)), X]# 执行梯度下降算法并获取参数历史 parameter_history gradient_descent(X_b, y, theta, learning_rate, num_iterations)# 创建动态可视化 fig, ax plt.subplots() line, ax.plot([], [], lw2)def animate(i):y_pred X_b.dot(parameter_history[i])line.set_data(X, y_pred)return line,ani FuncAnimation(fig, animate, framesnum_iterations, interval200) plt.scatter(X, y) plt.xlabel(X) plt.ylabel(y) plt.title(Linear Regression with Gradient Descent)plt.show()应用示例 线性拟合和梯度下降在各种领域都有广泛的应用。以下是一些示例 股市预测通过线性拟合历史股票价格数据可以尝试预测未来股价的趋势。 房价预测使用线性拟合来估算房屋价格与特征如面积、位置等之间的关系帮助买家和卖家做出决策。 机器学习模型训练梯度下降是训练线性回归、逻辑回归和神经网络等机器学习模型的关键步骤。 自然语言处理在自然语言处理中线性拟合可以用于情感分析和文本分类任务。 总之线性拟合和梯度下降是数据科学和机器学习领域的基本工具它们帮助我们理解数据中的关系并训练模型以做出预测和决策。这两个概念的理解对于处理各种数据分析和机器学习问题都至关重要。希望本博客能够帮助你更好地理解它们的基本原理和应用。
http://www.hkea.cn/news/14403516/

相关文章:

  • 公司网站建设内容上市设计网站
  • wdcp备份的数据库网站文件在哪里外贸人常去的网站
  • 潍坊建设局网站wordpress 弹窗插件
  • 河北综合网站建设系列安徽专业做网站的大公司
  • 官方查企业信息的网站p2p理财网站建设
  • 网站注册商是什么微信朋友圈营销文案
  • 建设网站项目概述seo推广技术
  • 国内html5视频网站建设网站建设如何上传文件
  • 专门做护肤品网站网推渠道平台
  • 网站开发建设账务处理程序中山精品网站建设公司
  • 最好网站制作工具免费的网页域名
  • 请人代做谷歌外贸网站目前主流网站开发所用软件
  • 个人网站建设小江芜湖市建设工程质监站网站
  • 团购网站前景263企业邮箱报价
  • 新闻发布网站建设实训米枫网站怎么做分页
  • 做战袍网站app开发哪家好
  • 自己如何建设个网站首页wordpress安装分享插件
  • 电脑端网站和手机网站区别湖北联诺建设网站
  • 企业文化建设网站绥化供求世界在线看报
  • 做网站品牌公司搜索引擎营销的步骤
  • 南通通明建设监理有限公司网站前端开发能干到多少岁
  • 网站域名查询我要在附近找工作
  • 以下属于网站的管理 更新 维护仿站插件 wordpress
  • 网站制作加教程视频成都信用
  • 企业速成网站高端建筑企业简介
  • 建设信用卡网站微信不能分享wordpress
  • 网站主机免费申请wordpress linux密码
  • 无锡建设网站找哪家做网站三剑客
  • 建筑网站夜里几点维护html5做网站系统
  • 安徽省建设安全监督站的网站企业信息化建设如何帮助客户理解网站流量