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

网站结构化数据外贸网站seo优化

网站结构化数据,外贸网站seo优化,wordpress支付宝付费,点手机域名注册局官网1. 如何降低时间复杂度 多项式有系数计算和点乘计算方式。点乘计算会考奇偶差分的方式加速运算,但是问题是相反数平方运算后所得结果均为正数,无法构造相反数对,无法实现递归。所以考虑扩展到复平面。 FFT 把多项式运算迁移到复数域,利用单…

1. 如何降低时间复杂度

多项式有系数计算和点乘计算方式。点乘计算会考奇偶差分的方式加速运算,但是问题是相反数平方运算后所得结果均为正数,无法构造相反数对,无法实现递归。所以考虑扩展到复平面。

FFT 把多项式运算迁移到复数域,利用单位根实现了快速的点值计算,大大降低了运算复杂度。但由于复数运算存在精度问题,在计算机系统表示复数需要比实数花费更多的资源并且计算复数时会产生误差。

于是就引出了 NTT,它在有限域里进行运算,用原根替代单位根。原根在有限域的模运算下有很好的性质,能避免 FFT 的那些精度误差,同样高效地完成多项式相关运算。

2. 详细介绍

2.1 介绍多项式运算

2.1.1 多项式的两种表示方法

A(x) = a_0 + a_1 x^1 + a_2 x^2 + \ldots + a_{n-1} x^{n-1} + a_n x^n = \sum_{i=0}^{n} a_i x^i             (1)

一般 n 次多项式如公式(1)所示。多项式具有两种表示方法分别是系数表示法和点值表示法。

系数表示法

任意多项式都可以通过一组系数所确定,而这组系数所组成的向量也叫做系数向量,通过一组系数向量表示一个多项的方式也叫做系数表示法。

例如公式(1)中 A(x) 的系数向量为: a = [a_0, a_1, \ldots, a_{n-1}, a_n]

点值表示法

对于一个已知的多项式例如公式(1)中的 A(x) ,将 x_i代进去可以得到一个确定的值y_i,如: y_0 = A(x_0) 。可以将(x_0, y_0) 看作是坐标系上的一个点。如果将任意多(互不相等)的自变量(x_1, x_2, \ldots, x_{n-1}, x_n) 代入到 A(x)中,得到更多的点: (x_1, y_1), (x_2, y_2), \ldots (x_n, y_n)

通过 n+1 个不同点组成的点集 P = (x_0, y_0), (x_1, y_1), \ldots, (x_n, y_n),唯一确定一个 n 次多项式,叫做多项式的点值表示法。

2.1.2 多项式乘法

系数乘法

系数乘法是将两个多项式的系数相乘,如公式(5)所示。不难看出时间复杂度为O(n^2)。整理可得公式(6):

点值乘法

点值乘法只需将对应的纵坐标相乘即可,但是因为新得到的多项式次数更高,所以每个因子多项式都需要提供m+n+1个点参与运算。时间复杂度为 O(n)

减少求值的点数可以较少计算时间!!!

在计算系统中系数表示更加的常用,把系数形式转化为点值形式乘法运算,然后再转换为系数表示法。这个变换过程时间复杂度为O(n^2)

2.2 介绍FFT

“分而治之”三个阶段DIVIDE,CONQUER,COMBINE阶段。

先DIVIDE,划分简单重复小块

CONQUER,分别求解这些小块

2.2.1 前置

根据函数的奇偶性我们可以只求一半的点值,从而减少一半的计算量。

为了方便表示设一个n−1次的一般多项式n=2^a , a\in N

自然而然想到了递归执行。通过把多项式按奇偶次分成两个关于x^2的多项式,并不断递归下去实现这个过程,就可以加速运算。

但是问题是相反数平方运算后所得结果均为正数,无法构造相反数对,无法实现递归.  因此扩展到复平面。

单位根

欧拉公式:e^{i \theta}=\cos\theta+i\sin\theta

z^n=1=\cos2k\pi+i\sin2k\pi=e^{2k\pi i},k \in[ 0,n)
n 次单位复数根的推导:z=\sqrt[n]{e^{2k\pi i}}=e^\frac{2k\pi i}{n} ,k \in[ 0,n)

如果一个复数z满足z^n = 1,那z就被叫做n次单位根

消去引理是在单个单位根幂次计算上做简化

折半引理则是从整体结构上对 DFT 运算进行分治简化

求和引理是在多个单位根幂次累加的式子直接得出结果

从多项式乘法引入的DFT和IDFT,推广到FFT

2.2.2 FFT推导

蝶形操作

引入蝴蝶操作来计算样本对的DFT,实现了对简单重复小块的处理,

CT 蝶形变换

把时域序列按时间顺序进行抽取,这样能方便地利用序列的奇偶性来简化运算,它比较适合时域信号的处理

蝶形操作得名于其数据流图的形状,上面的推导过程出现的是 CT 蝶形变换. CT方法也叫DIT(时域抽取)操作

GS 蝶形变换

从频域的角度出发,对频域进行抽取操作,这种方式在某些特定情况下,比如已经对频域有一定需求或者处理的时候,会更高效

通过公式(9-10)我们可以推导出 GS 蝶形变换的形式。将公式(9)和(10)分别加减运算得:

整理得公式(11-12)不难看出,GS 操作是 CT 操作的逆过程,GS操作也叫DIF(频域抽取)操作。

旋转因子

引入蝶形操作的同时又引入信号相位改变的新问题,为保持整体的结果不变,利用“旋转因子”将平移后的信号再次平移回去,作为下一阶段的输入

\omega_{n}^{k}被成为转换因子:上标数字表示旋转因子的索引,下标数字表示蝴蝶中的点数。

旋转因子本身是一个复数,在进行蝶形运算之前,通常会先与旋转因子进行相乘等变换,乘以W相位因子只是调整信号相位,最终计算结果不变。

旋转因子 W,它有实部和虚部。而 \cos(2\pi\frac{n}{N}k)呢,它和信号的频率成分紧密相关。旋转因子和信号相乘的时候,就会给信号带来相位和幅度上的变化,能让原始信号 x(n) 更好地为蝶形运算做准备

旋转因子用\cos\Theta + i\sin \Theta形式,能通过改变\Theta来调节相位,使信号各频率成分在蝶形运算前有合适相位关系,避免运算出错 。

旋转因子若被攻击,会使信号相位和幅度调整出错,导致蝶形操作无法正确分离频率成分,整个频域变换计算就会失误。

2.3 介绍NTT

首先 FFT 是在复数域上的表示,而计算机系统中表示复数,需要比实数花费更多的资源,且复数运算也比实数运算更加复杂。此外 FFT 涉及大量的正余弦运算,对于精度有影响。于是我们期望在实数域内寻找类似单位根性质的数学概念。有限域上的原根满足相应的要求。

2.3.1 数学基础

原根

2.3.2 NTT推导


参考文献

快速傅里叶变换 - 知乎

NTT - Cankun Zhao's Blogs

NTT(快速数论变换) -

【数学】【多项式】快速数论变换(NTT) - zimujun - 博客园

PQC密码芯片

http://www.dtcms.com/wzjs/13204.html

相关文章:

  • 网站备案率是什么镇江百度关键词优化
  • 烟台h5网站建设网页模版
  • 怎么做属于自己的免费网站怎么有自己的网站
  • 山东网站建设哪家专业电商网站seo怎么做
  • 大型网站技术方案网络营销策略案例
  • wordpress 免费ssl证书上海优化网站方法
  • 网站制作要多长时间北京seo代理计费
  • wordpress网站速度优化seo关键词优化平台
  • 网站建设设计方案做做网站
  • java网站开发面试题官网优化 报价
  • 网站视频插入播放千锋教育培训机构怎么样
  • 东营网站建设公司富阳网站seo价格
  • 自己电脑怎么做网站比较好用的搜索引擎
  • 网站内容做淘宝店铺链接影响排名吗百度推广怎么登录
  • 甘肃 网站建设网站建立的步骤
  • 广西桂林旅游必去十大景点苏州seo培训
  • 深圳通公司网站长春百度关键词优化
  • 木马文创的工业设计seo企业优化方案
  • 西安哪家公司网站做的好培训师资格证怎么考
  • 电子商务网站建设的结论做seo推广公司
  • sem网络营销郑州seo博客
  • 阳泉住房建设局网站网络小说排行榜
  • 上海app软件开发seo营销推广全程实例
  • wordpress前台注册地址深圳搜索引擎优化收费
  • 新疆建设工程信息网官网注册搜索引擎优化师工资
  • 珠海建设网站公司哪家好网站注册流程
  • 腾讯的网站建设用了多少钱给大家科普一下b站推广网站
  • 公司网站公安备案流程seo服务工程
  • 珠海建设网站的公司简介找个免费网站这么难吗
  • 张家港做网站的公司百度网站入口链接