FAST 20阿里的一个关于in-memory kv store的工作,优化基于hash的in-memory key-value store的热点访问问题。
Linux的一个核心就是内存的分配管理,在现代的linux中,综合了不同的算法来针对不同的对象(如不同大小)来进行分配内存。其中针对小对象使用了slab算法。 对于这个算法,网上大多数博客都针对Linux内核实现和工程化进行了些阐述,本文只针对94年发表的原始版算法进行一些剖析。 (因为看Fatcache顺路看的,后来才发现没啥关联……
Problems 上文讲到的WiscKey提出的Key Value Seperation的思路在许多现代DB中都得到了比较好的应用,TiDB, PebblesDB等等。WiscKey仍然存在一些问题,比如虽然消除了compaction时的写放大,但引入了:
Problem 续前文提出的问题,传统的HHD和SSD具有非常大的物理区别,HDD需要磁头的多次运动才能完成随机I/O操作,而SSD拥有较好的并行性,同时有擦写寿命问题。WiscKey就是针对SSD场景的一个优化方法。
Problem 写密集负载的键值存储已经成为一个非常重要与实际的需求,传统的硬盘组织文件数据结构B+ Tree在这个场景下存在很多问题。其中对性能最大的影响就是因为新数据插入树后,节点进行分裂,逻辑上连续的数据在物理块区上不连续,从而造成了大量的随机I/O操作,又由于硬盘的物理特性(尤其是HDD的磁头运动,需要寻柱面、寻磁道等耗时的物理运动操作),随机I/O的速度差距相对顺序慢很多(over 100x on HDD)。
KD-Tree KD-Tree is a classic method to index high-dimetional data (below 30, or the number of data is bigger than $2^k$).
介绍 在上篇的两个顶会的虚拟试衣的文章都是来自于大山中学的工作,在这个系列后,他们又做了一个可变pose任务的,结合了对抗训练的工作,暂时按下不表。回顾一下,VITON和CP-VTON两个模型都在变形衣服的Stage 1上花了比较多的功夫。一个用了Non-param TPS,一个用GMM网络来做变换,同时都需要对图像进行human parse和pose estimate步骤,开销较大。尤其是CP-VTON,在笔者的实验中,由于LIP数据集本身不够干净,GMM的训练效果就不是很理想,对于遮挡等情况非常不鲁棒。
介绍 本文主要讲在2D虚拟试衣这个任务上两个效果比较好的工作。主要是两篇文章,一篇是VITON: An Image-based Virtual Try-on Network发于CVPR 2018,另一篇是Toward Characteristic-Preserving Image-based Virtual Try-On Networks发于ECCV 2018。
Intro 这篇文章主要讲的是如何用GAN来做图片的组合生成。本文主要介绍的是ST-GAN: Spatial Transformer Generative Adversarial Networks。
Intro For preparing for the next coming exam, Machine Learning in 2019 Spring, I wrote this article down to mark and share some insights about basic mahcine learning methods, including KNN, Perceptron, Naive Bayes(MLE, MAP), Logistic Regression, Linear Regression, SVM.