论文阅读计划1

Benchmarking Streaming Computation Engines: Storm, Flink and Spark Streaming[1]

  • 简介:雅虎发布的一份各种流处理引擎的基准测试,包括Storm, Flink, Spark Streaming
  • 动机:贴近生产环境,使用Kafka和Redis进行数据获取和存储,设计并实现了一个真实的流处理基准。
  • 结论:由于只是一篇基准测试报告,其最重要的就是结论。该论文结论如下:Storm, Flink延迟更小,更加接近于真正的“实时”流处理系统。Spark Streaming有更高的吞吐率,同时延迟也最高。Spark Streaming的性能对批处理间隔时间设置(batch duration setting)敏感。

An Enforcement of Real Time Scheduling in Spark Streaming[2]

  • 简介:基于Spark Streaming,提出简单有效的调度策略,动态调整批处理间隔的时间窗减少最坏情况下的事件处理时间。
  • 动机:Spark Streaming并不能保证实时事件处理,特别是在输入的事件数量不稳定时,其事件处理会发生显著延迟。
  • 实时调度执行:思想就是在每次批处理间隔中间,检查事件数量是否到达偏差点,一旦超过,批处理间隔设置为1/2,以立即提交峰值中的事件,进行处理。偏差点定义为$n{avg}*(1+\alpha)$,其中$n{avg}$为批处理间隔中间点的平均事件数量;$\alpha$为偏差系数,由用户自主定义,论文中定义为0.3。详细算法如下:

StyleBank: An Explicit Representation for Neural Image Style Transfer[3]

  • 简介:一种新颖的风格迁移方法,通过添加StyleBank layer将自编码器和风格学习分离开来,自编码器不存储任何风格信息。这带来几点好处:结构清晰,风格迁移网络不是一个黑盒子;如果希望训练新的风格,可以固定自编码器,只训练StyleBank layer即可,增量学习代价变小。

  • 动机:风格转换是将一种风格从一个图像迁移到另一个图像,与纹理合成密切相关。提出的StyleBank,将自编码器和风格编码剥离,使得:为样式提供了显式的表示;基于区域的样式转化,即可以抽取局部样式信息,进行样式转移;支持多个风格迁移共享一个自编码器。

  • 网络体系结构

    图像被编码器$\varepsilon$编码获得feature map,然后与由多个卷积组成的StyleBank layer叉乘,然后经过解码器D解码,获得风格化后的图片。编码器为1个stride-1和2个stride-2的卷积层,对称的,解码器为2个stride-1/2和1个stride-1的卷积层。StyleBank layer由训练得到的n个卷积核组成,称之为“风格银行”。T+1的训练方式,T步训练带StyleBank layer的网络,1步训练不含StyleBank layer的网络,这一步尽可能确保自编码器的输入输出一致,以和保证自编码器没有携带Style信息。

  • 备注:另外这篇文章还介绍了在风格迁移中,对StyleBank layer和自编码器的理解,如较大的卷积核可以学得较大的样式元素,值得一读。

[1]Chintapalli S, Dagit D, Evans B, et al. Benchmarking streaming computation engines: Storm, flink and spark streaming[C]//Parallel and Distributed Processing Symposium Workshops, 2016 IEEE International. IEEE, 2016: 1789-1792.

[2]Liao X, Gao Z, Ji W, et al. An enforcement of real time scheduling in Spark Streaming[C]//Green Computing Conference and Sustainable Computing Conference (IGSC), 2015 Sixth International. IEEE, 2015: 1-6.

[3]Chen D, Yuan L, Liao J, et al. Stylebank: An explicit representation for neural image style transfer[C]//Proc. CVPR. 2017, 1(3): 4.