一。 原型

sigmoid 函数原型:

在 [-5, 5] 上的曲线是这个样子的:

二。X轴变形

如果我们希望加速更快一点,那么就需要对原型中的指数 -X 的系数进行改变。原型可以认为是 -(1 * X),如果我们需要把图形Y不变,X压缩为原来的 1 /5,那么只需要指数改为 -(5 * X),这样图形就更加陡峭。此处指数部分变形为 -aX。原始图形是 [-5, 5] 这个区间,一共是10个数字,压缩后的整个区间为 [- t / 2, t / 2],那么 a = 10 / t。

我们注意到,原型中X轴的坐标是 从负数到正数,那么我们需要的图形X坐标是从 0 开始的,所以需要对压缩后的图形进行平移,平移的 X 行程为 t / 2。所以指数变形为 - (10 / t) * (X - t / 2), 展开为 -( 5 * 2 / t ) * X + 5 的 -ax + b 的形式,其中 a = 5 * 2 / t, b = 5。因为原始图形对应的区间是 [-5, 5],如果我们设 F = 5,那么在区间 [- F, F ] 上的 s 曲线进行 x 方向的压缩平移后 指数部分变为 -( F * 2 / t ) * X + F .

整体的公式为 y = 1 / ( 1 + e ^ ( - ( F * 2 / t ) * X + F ) )

y = \frac{1}{1 + e ^ {- (F * \frac{2}{t}) * x + F}}

三。Y轴变形

原始图形的 Y 轴区间是 [0, 1],实际使用中我们需要在 Y 轴进行拉伸,所以需要增加系数 Ymax - 0,我们有时候还需要图形Y轴不从0开始,需要一个最小的 Y 轴偏移 Ymin,所以 Y轴拉伸的系数变为 Ymax - Ymin。

整体公式变为 y = (ymax - ymin)( 1 / ( 1 + e ^ ( - ( F * 2 / t ) * X + F ) ) ) + ymin

y = (y_{max} - y_{min}) * \frac{1}{1 + e ^ {- (F * \frac{2}{t}) * x + F}} + y_{min}

注: 使用 在线公式 https://latex.vimsky.com/

s曲线的更多相关文章

  1. caffe的python接口学习(7):绘制loss和accuracy曲线

    使用python接口来运行caffe程序,主要的原因是python非常容易可视化.所以不推荐大家在命令行下面运行python程序.如果非要在命令行下面运行,还不如直接用 c++算了. 推荐使用jupy ...

  2. ROC曲线、PR曲线

    在论文的结果分析中,ROC和PR曲线是经常用到的两个有力的展示图. 1.ROC曲线 ROC曲线(receiver operating characteristic)是一种对于灵敏度进行描述的功能图像. ...

  3. canvas贝塞尔曲线

    贝塞尔曲线 Bézier curve(贝塞尔曲线)是应用于二维图形应用程序的数学曲线. 曲线定义:起始点.终止点.控制点.通过调整控制点,贝塞尔曲线的形状会发生变化. 1962年,法国数学家Pierr ...

  4. UIBezierPath-完善曲线

    override func draw(_ rect: CGRect) { let path = UIBezierPath() // 起点 path.move(to: CGPoint(x: , y: ) ...

  5. 贝塞尔曲线(UIBezierPath)属性、方法汇总

    UIBezierPath主要用来绘制矢量图形,它是基于Core Graphics对CGPathRef数据类型和path绘图属性的一个封装,所以是需要图形上下文的(CGContextRef),所以一般U ...

  6. 基于jquery实现图片拖动和曲线拖放

    功能:图片的拖动.曲线的拖放和绘制 一. 准备工作 1. 点击此下载相关的文档 二. 在浏览器中运行 dragDrop.html 文件,即可看到效果 三. 效果图

  7. 深度掌握SVG路径path的贝塞尔曲线指令

    一.数字.公式.函数.变量,哦,NO! 又又一次说起贝塞尔曲线(英语:Bézier curve,维基百科详尽中文释义戳这里),我最近在尝试实现复杂的矢量图形动画,发现对贝塞尔曲线的理解馒头那么厚,是完 ...

  8. 贝塞尔曲线(cubic bezier)

    对于css3的Transitions,网上很多介绍,相信大家都比较了解,这里用最简单的方式介绍下: transition语法:transition:<transition-property> ...

  9. 精确率与召回率,RoC曲线与PR曲线

    在机器学习的算法评估中,尤其是分类算法评估中,我们经常听到精确率(precision)与召回率(recall),RoC曲线与PR曲线这些概念,那这些概念到底有什么用处呢? 首先,我们需要搞清楚几个拗口 ...

  10. iOS开发之画图板(贝塞尔曲线)

    贝塞尔曲线,听着挺牛气一词,不过下面我们在做画图板的时候就用到贝塞尔绘直线,没用到绘制曲线的功能.如果会点PS的小伙伴会对贝塞尔曲线有更直观的理解.这篇博文的重点不在于如何用使用贝塞尔曲线,而是利用贝 ...

随机推荐

  1. Ajax请求回调地狱及解决方案(promise、async和await)

    谈及回调地狱发生得情况和解决办法,就必须追溯到原生ajax请求. 先列出服务器提供的数据接口: // 服务器端接口 app.get('/data1', (req, res) => { res.s ...

  2. 二、spring集成ibatis进行数据源事务管理拦截器环境配置

    1.dataSource-applicationContext.xml文件配置理解:(spring1.2.8+ibatis1.5.3)1.1)配置数据源 DriverManagerDataSource ...

  3. Vue二次精度随笔(2)

    1.vue中数组更新是否会引起视图刷新的研究 (1)vue中修改数组可以引起视图刷新的方法 (2)不会引起数组刷新的方法,需要手动进行赋值 (3)有些数组的变化是不能够引起视图的刷新的,一个是修改数组 ...

  4. flutter JSON序列化出现冲突

    [SEVERE] Conflicting outputs were detected and the build is unable to prompt for permission to remov ...

  5. matplotlib画图的时候显示不出中文和负号的解决办法

    import matplotlib.pyplot as pltfrom pylab import * plt.rcParams['font.sans-serif'] = ['SimHei'] #显示中 ...

  6. 「SP1043」GSS1 - Can you answer these queries I

    传送门 Luogu 解题思路 这题就是 GSS3 的一个退化版,不带修改操作的区间最大子段和,没什么好讲的. 细节注意事项 咕咕咕 参考代码 #include <algorithm> #i ...

  7. 「LuoguP3979」遥远的国度

    传送门 Luogu 解题思路 带换根操作的树剖. 换根只会影响更新或查询子树信息的操作. 我们始终保持初始的根不变,然后只要分类讨论一下: 假设当前被查询的节点是 \(u\) 如果 \(u\) 就是根 ...

  8. Core data 如何查看ObjectId

    ObjectId是Core Data 为每一个数据对象提供的唯一ID标识,获取ObjectID.并打印的方法如下: 步骤: 1. 获取ManagedObject 2. ManagedObject -& ...

  9. Java并发编程之并发简介

    操作系统中同时执行多个程序原因: 1.资源利用率:系统资源及硬件资源.当一个程序再等待另一个程序时,可以运行另一个程序,可提高资源利用率. 2.公平性:多个程序对计算机上的资源理论上具有同等的使用权. ...

  10. Python测试进阶——(2)配置PyCharm远程调试环境

    新建一个Python项目 配置Deployment,用于本地文件和远程文件的同步,在pycharm的菜单栏依次找到:Tools > Deployment > Configuration 点 ...