码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 数据插值——对不同量级的数据进行归一化


    在某些情况下,归一化可以改善插值结果,但在其他情况下它可能会影响解的精确度。是否使用归一化需要根据插值数据的性质做出判断。

    优势:归一化数据在自变量具有不同单位和迥异的规模时可能会改善插值结果。在这种情况下,缩放输入以使其具有类似的量级可以改善插值的数值形态。

    注意:如果各自变量具有相同的单位,则在归一化数据时应小心,即使各变量的规模不同也是如此。对于相同单位的数据,归一化会因添加方向偏差而影响基本三角剖分并最终降低插值的准确度,从而使解失真。例如,如果 x 和 y 都表示位置并且都以“米”为单位,则进行归一化是错误的。此时不建议对 x 和 y 进行不一致的缩放,因为正东 10 米和正北 10 米在空间距离上是相同的。

    创建一些样本数据,其中y 中的值比 x 中的值大若干个数量级。假设 x 和 y 具有不同单位。

    x = rand(1,1000)/100;

    y = 2.*(rand(1,1000)-0.5).*90;

    z = x.^2;

    使用以上样本数据构建一个网格数据,基于网格上的样本数据进行插值并绘制结果。

    x1 = linspace(min(x),max(x),25);

    y1= linspace(min(y),max(y),25);

    [X, Y] = meshgrid(x1,y1);

    Z = griddata(x,y,z,X,Y);

    plot3(x,y,z,'co')

    hold on

    mesh(X,Y,Z)

    griddata生成的结果不是很平滑,似乎存在含噪数据。这是由于自变量具有不同尺度导致的,因为一个变量的大小细微变化会导致另一个变量的大小发生巨大变化。

    由于x 和 y 具有不同单位,对它们进行归一化使其具有类似的量级,应该有助于产生更好的结果。对样本点进行归一化,并使用 griddata 重新生成插值。

    % 归一化数据

    x = mapminmax(x);

    y = mapminmax(y);

    %产生网格数据

    x1 = linspace(min(x),max(x),25);

    y1 = linspace(min(y),max(y),25);

    [X,Y] = meshgrid(x1,y1);

    % 数据插值

    Z= griddata(x,y,z,X,Y);

    plot3(x,y,z,'co')

    hold on

    mesh(X,Y,Z)

    在这种情况下,对样本点进行归一化会使griddata 计算出更平滑的解。

    这说明了在数据量级相差较大的情况下,直接进行插值不是一个十分明智的选择,而要尽量对数据进行处理,这是个重要技巧。

    往期文章

    matlab绘图|坐标轴axis的一些常用设置

    matlab绘图|渐变色填充

  • 相关阅读:
    不用定时器,实现鼠标长悬浮和鼠标长按监听
    六、Kafka-Eagle监控
    C#:实现鸡尾酒定向冒泡排序算法(附完整源码)
    组函数会忽略null值
    软考高级系统架构设计师系列之:详细快速掌握软考高级架构设计师考试全部知识点和典型例题上篇
    cobol-简介
    MySQL:关于group by的一个小坑,以及sql_mode=only_full_group_by问题
    qt写代码判断一个数字是否可以被7整除
    echarts自定义图例富文本使用
    C++ Reference: Standard C++ Library reference: C Library: cwchar: wcstod
  • 原文地址:https://blog.csdn.net/m0_57569438/article/details/126040856
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号