来源 | 智能计算芯世界
智库 | 云脑智库(CloudBrain-TT)
云圈 | 进“云脑智库微信群”,请加微信:15881101905,备注研究方向
相比传统算法分析,大数据算法分析尤其重要。因为在大数据上进行实验所需要的成本相对“小数据”大得多,因而完成算法计算所需的资源(时间和空间)或者某种性质(如精度)难以通过实验来得到,而必须通过理论分析来求得。
当设计完一个大数据算法后,可以通过算法分析来求得所需资源(例如时间、空间或磁盘I/O)或某种性质(例如算法得到的解和精确解比例)与输入规模之间的关系,这样就可以基于算法在小规模数据上的实验结果来推演出算法在大规模数据上需要的计算资源或者某种性质所能够达到的程度,从而判定算法是否可行。对于大数据算法,主要分析如下因素:
1、时间和空间复杂度:和传统算法分析类似,大数据算法同样需要进行时间和空间复杂度分析。
2、I/O复杂度:有些情况下,大数据无法完全放入内存,必须设计外存算法,这时候需要分析磁盘I/O复杂度,即在算法运行过程中读写磁盘次数。
3、结果质量:由于大数据上的一些计算问题有时在给定的资源约束内无法精确完成,需要退而求其次,设计近似算法,在这种情况下需要分析计算结果的质量和近似比,即最优解和近似解之间的比例;对于在线算法,有时候需要分析竞争比(competitive ratio),即根据当前数据得到解的代价和知道所有数据的情况下得到解的代价相差多少。在后面章节中我们将会看到,在很多情况下,结果质量的分析往往要比结果效率的分析更复杂。
4、通信复杂度:当设计并行算法的时候,涉及多台机器,这些机器之间需要通信,这时需要知道算法运行过程中所需通信量的大小,也就是通信复杂度。
从上述介绍可以看出,大数据算法分析的内容比传统算法要丰富,也涉及更多的算法分析技术。
- The End -
声明:欢迎转发本号原创内容,转载和摘编需经本号授权并标注原作者和信息来源为云脑智库。本公众号目前所载内容为本公众号原创、网络转载或根据非密公开性信息资料编辑整理,相关内容仅供参考及学习交流使用。由于部分文字、图片等来源于互联网,无法核实真实出处,如涉及相关争议,请跟我们联系。我们致力于保护作者知识产权或作品版权,本公众号所载内容的知识产权或作品版权归原作者所有。本公众号拥有对此声明的最终解释权。
投稿/招聘/推广/合作/入群/赞助 请加微信:15881101905,备注关键词
微群关键词:天线、射频微波、雷达通信电子战、芯片半导体、信号处理、软件无线电、测试制造、相控阵、EDA仿真、通导遥、学术前沿、知识服务、合作投资.
“阅读是一种习惯,分享是一种美德,我们是一群专业、有态度的知识传播者.”
↓↓↓ 戳“阅读原文”,加入“知识星球”,发现更多精彩内容.
/// 先别走,安排点个“赞”和“在看” 吧!↓↓↓