https://www.zhihu.com/question/277576767
https://blog.csdn.net/u014568921/article/details/46533343
https://blog.csdn.net/feilong_csdn/article/details/83476277
https://blog.csdn.net/yr20133851/article/details/79722988
https://web.stanford.edu/class/msande311/lecture10.pdf
https://www.cnblogs.com/shixiangwan/p/7532830.html