如何判断一段数据趋势,上升或 下降

如何判断一段数据趋势,上升或 下降

最近工作有这样一个需求:给定十几个时序序列,判断出这个序列的趋势(上升、下降或平稳)。最开始肯定是想到,直接线性拟合斜率大小来判断呗,但是业务部门的同事说他们不止看整体斜率还看局部特征什么的总之很感性。

于是我把每个点当一个维度直接跑分类模型(lr,多层感知机,svm,rf,gbdt,xgboost),结果还不错上升和下降的查准查全率都到80%(总共样本也就五六十个。。。)。

为了提高查准率查全率,又和业务部门同事沟通了一下,他们主要综合整体以及最后几个点的趋势来判断,所以处理整体斜率,还将最后几个点的拟合斜率作为特证,这样再去分类,果然查准率或查全率得到了提高。这充分说明了传统机器学习特征提取的重要性。。。逃

  1. 通常是求导,就是看前后2个数的差值。但为了避免毛刺,估计要滤波。这就得具体问题具体分析了,麻烦
  2. 看连续的差值是不是都是正或者负不就行了么
  3. 然后把 连续的差值 累加起来,看结果是正 还是 负。正就是 上升 负 就是下降。  这样怎么样?
  4. 先滤波,再比较。
  5. 二阶差分之后看正负值可以得到拐点,也就是趋势的拐点
  6. RC低通滤波 Y(n)=kY(n-1)+(1-k)X(n)
  7. 一阶差分 ΔY(n)=Y(n+1)-Y(n)
  8. 二阶差分 Δ(ΔY(n))=Y(n+2)-2Y(n+1)+Y(n)
  9. 不是取一个窗口,前1/3求平均,后1/3求平均,然后比大小判断趋势么

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119538.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 网约技师APP详细设计说明书「建议收藏」

    网约技师APP详细设计说明书「建议收藏」目录1引言31.1编写目的31.2背景31.3定义31.4参考资料42程序系统的结构43登录程序Login()设计说明53.1程序描述53.2功能63.3性能63.4输人项63.5输出项73.6算法73.7流程逻辑73.8接口83.9存储分配83.10注释设计

    2022年6月4日
  • 12、动态链接库,dll

    12、动态链接库,dll

    2021年8月9日
  • 对象转map(object转map)

    对象转map(object转map)importjava.lang.reflect.Field;importjava.util.LinkedHashMap;importjava.util.Map;publicclassObjectToMap{//对象转MappublicstaticMap<String,Object>getObjectToMap(Objectobj)t…

    2022年5月16日
  • java集合介绍_arraylist原理

    java集合介绍_arraylist原理概述ArrayList是List接口下一个基于可扩展数组的实现类,它和它的兄弟类Vector有着一样的继承关系,也都能随机访问,但是不同的是不能保证线程安全。这是关于java集合类源

    2022年8月16日
  • Data Mining资源大全

    Data Mining资源大全

    2021年5月3日
  • 4.2.1越狱

    4.2.1越狱
    这是我见过的最简单的越狱方法了!操作成功,绝对简单可用·
     
     
    越狱并非高不可攀,也并非可怕至极,只要不慌张、耐心,一步步来,就没有问题。
    一、升级到4.2.1系统。
          先在威锋网里下载ipad4.2.1固件http://bbs.weiphone.com/read-htm-tid-862081.html,记住下载后的存放位置,然后把ipad连接到电脑,打开itunes,按住shift键点更新,选择刚下载的固件,把系统升级到4.

    2022年6月6日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号