<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
  <title>Linyi's blog</title>
  <link>http://www.linyi.press</link>
  
  <item>
    <title>安装GPU版本的xgboost</title>
    <description>&lt;p&gt;自从python变得越来越普及之后，数据科学也变得更加亲民化，在大型计算上CPU确实不如GPU来的更省时省力。今天分享Xgboost GPU版本在windows 10上的安装&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;下载Xgboost源码&lt;/p&gt;

    &lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;git clone &lt;span class=&quot;nt&quot;&gt;--recursive&lt;/span&gt; git@github.com:dmlc/xgboost.git
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;下载已经编译好的&lt;a href=&quot;http://ssl.picnet.com.au/xgboost/&quot;&gt;xgboost.dll&lt;/a&gt; 并放置于xgboost/python-package/xgboost目录下&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;这一步很关键，打开Anaconda Prompt(Anaconda3)，切换到目录xgboost/python-package，然后执行python setup.py install，等待完成安装&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;通过如下脚本测试是否安装成功&lt;/p&gt;

    &lt;div class=&quot;language-python highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;xgboost&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;as&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;xgb&lt;/span&gt;
&lt;span class=&quot;kn&quot;&gt;from&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;sklearn.datasets&lt;/span&gt; &lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;load_boston&lt;/span&gt;
  
&lt;span class=&quot;n&quot;&gt;boston&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;load_boston&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
  
&lt;span class=&quot;c1&quot;&gt;# XGBoost API example
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;params&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;'tree_method'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;'gpu_hist'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;'max_depth'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;'learning_rate'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;0.1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;dtrain&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;xgb&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;DMatrix&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;boston&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;data&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;boston&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;xgb&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;train&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;params&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;dtrain&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;evals&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;dtrain&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&quot;train&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)])&lt;/span&gt;
  
&lt;span class=&quot;c1&quot;&gt;# sklearn API example
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;gbm&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;xgb&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;XGBRegressor&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;silent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;bp&quot;&gt;False&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;n_estimators&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tree_method&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;'gpu_hist'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;gbm&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;fit&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;boston&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;data&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;boston&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;eval_set&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;boston&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;data&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;boston&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)])&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;如果发现git clone很慢，参考如下设置:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;p&gt;设置代理&lt;/p&gt;

    &lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;git config &lt;span class=&quot;nt&quot;&gt;--global&lt;/span&gt; http.proxy socks5://127.0.0.1:1080
git config &lt;span class=&quot;nt&quot;&gt;--global&lt;/span&gt; https.proxy socks5://127.0.0.1:1080
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;git clone或者git push特别慢的设置，速度成倍上升&lt;/p&gt;

    &lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nb&quot;&gt;sudo &lt;/span&gt;vi /etc/hosts
   
151.101.72.249 http://global-ssl.fastly.Net
192.30.253.112 http://github.com
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
&lt;/ol&gt;

</description>
    <published>2020-03-01T00:00:00+00:00</published>
    <link>http://www.linyi.press/2020/03/Install-XgboostGPU</link>
  </item>
  
  <item>
    <title>汤姆克鲁斯拍过烂片吗</title>
    <description>&lt;!---
scratch

1. 汤姆克鲁斯生平简介, 抛出电影列表接年龄
2. 成功电影特点,适当拿成龙和尼古拉斯凯奇对比
3. 个人特征和修养
4. 来点八卦

---&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/tom-1.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;昨天居然连续看了几场汤姆克鲁斯(Tom Cruise)主演的电影，场场精彩。佩服这位活跃影坛37年一直保持优秀成绩的明星之余，突然心生好奇，汤姆克鲁斯拍过烂片么？&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;汤姆·克鲁斯（Tom Cruise），1962年7月3日出生于美国纽约州，美国电影演员、电影制片人。
1981年，汤姆·克鲁斯进入演艺圈。1983年凭借《乖仔也疯狂》首获金球奖最佳男主角提名。1986年凭借《壮志凌云》成名，并于同年10月16日留名好莱坞星光大道。1988年与达斯汀·霍夫曼合作电影《雨人》。1990年，汤姆·克鲁斯主演电影《生于七月四日》，首次获得奥斯卡金像奖最佳男主角提名。1993年凭借《义海雄风》再获金球奖提名。1994年与布拉德·皮特合作《夜访吸血鬼》。1996年担任《碟中谍》系列电影男主角。1997年凭借《甜心先生》获得第69届奥斯卡金像奖最佳男主角提名。1999年，汤姆·克鲁斯参演影片《木兰花》，获得第72届奥斯卡金像奖最佳男配角提名。2004年凭借《最后的武士》获得第61届金球奖提名。2009年凭借《热带惊雷》获得第66届金球奖最佳男配角提名。2012年主演影片《侠探杰克》。2014年，汤姆·克鲁斯与艾米莉·布朗特合作电影《明日边缘》。2015年7月31日，汤姆·克鲁斯主演的《碟中谍5》北美上映。
2015年，汤姆·克鲁斯收入4000万美元，居福布斯全球演员富豪榜排名第六位。
2016年，汤姆·克鲁斯以5，300万美元（约4.1亿港元）排《福布斯》全球十大最高收入男星第四位。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;一路打拼，步步为营，详细看主要作品完成时间：
&lt;img src=&quot;/srcode/tomcruise/tom-2.jpeg&quot; /&gt;
&lt;img src=&quot;/srcode/tomcruise/tom-3.PNG&quot; /&gt;&lt;/p&gt;

&lt;p&gt;汤哥19岁混迹影视圈，早期可能跑龙套做配角的缘故参与较多作品，21岁更是一年拍摄4部影片，也正是这年凭借《乖仔也疯狂》大获成功后，每年稳定产出1-2部电影，每部都获得不错票房。这里插句题外话，男人的持久性挺重要的，稳定才能持久。插两句吧，大家也许看过95年电影《上帝也疯狂》获得不错口碑，其实这部电影有个早期版本产于1980年在豆瓣评分也是相当的高，那个年代市场普遍喜欢《xx也疯狂》系列取名的电影吧,《乖仔也疯狂》有跟风取名的嫌疑&lt;/p&gt;

&lt;p&gt;电影拍了很多，但侧重点也很明显，汤哥深耕于动作、剧情、惊悚、冒险、爱情题材电影，拿大家耳熟能详的《碟中谍》系列来说，集动作、冒险、剧情于一身，拿我比较喜欢的《大地雄心》来说, 爱情、剧情结合到位。所以，汤哥当然拍过烂片，例如《摇滚年代》我认为并不十分适合他，早起的一些偏龙套片就不用多提了。但他的特点是在逐步磨炼打磨自身的过程中，总能精准的找到适合自身定位却又符合市场口味的电影题材，也许身后有个精干的团队吧（这个改天可以出个专题数研）。
&lt;img src=&quot;/srcode/tomcruise/tom-4.jpeg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;汤姆克鲁斯的成功，有必然有偶然，偶然成分在于精准的切合了市场需求题材，必然则在于先天加天后。他是“明明可以靠脸却偏偏靠才华”的典型之一，每次从电影院出来都能听到”真帅，老了都这么帅，很这么拼“。我们华人中也有个类似演员成龙，从电影院出来能听到的是“真拼，老了还这么拼”，可见汤哥多了一份颜值护体。&lt;/p&gt;

&lt;p&gt;采集数据过程中，发现汤哥2020 - 2022预期档居然是《壮志凌云》《碟中谍7》《碟中谍8》,佩服，他是真喜欢拍电影！&lt;/p&gt;
</description>
    <published>2019-01-20T00:00:00+00:00</published>
    <link>http://www.linyi.press/2019/01/TomCruise</link>
  </item>
  
  <item>
    <title>蓄水池抽样的随机性及代表性检验</title>
    <description>&lt;p&gt;虽说大数据时代，全量的观念逐步深入人心，但抽样的意义同样重要。例如，在简单统计中可以借助大数据平台的处理能力进行全量计算，但深层次的计算有如机器学习、算法研发，抽样的意义就很具备实操效用价值。而抽样的合理性在大数据应用场景下，挑战性来的更加激烈。&lt;/p&gt;

&lt;p&gt;这里测试一种称为蓄水池抽样的技术及其抽样随机性与代表性&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;蓄水池抽样详细介绍可参见Wiki[https://en.wikipedia.org/wiki/Reservoir_sampling]&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;其基本步骤如下：&lt;/p&gt;
&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;(*
  S has items to sample, R will contain the result
 *)

ReservoirSample(S[1..n], R[1..k])

  // fill the reservoir array

  for i = 1 to k

      R[i] := S[i]

  // replace elements with gradually decreasing probability

  for i = k+1 to n

    j := random(1, i)   // important: inclusive range

    if j &amp;lt;= k

        R[j] := S[i]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;假设当前有10000个数据排列的数[1，2，3，…，10000],通过蓄水池抽样算法分别抽取10组1000个数的样本，来看其分布与总体分布之间的差别&lt;/p&gt;
&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;          Total
 Min.   :    1
 1st Qu.: 2501
 Median : 5000
 Mean   : 5000
 3rd Qu.: 7500
 Max.   :10000
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;      res           res.1           res.2          res.3          res.4
 Min.   :   4   Min.   :    1   Min.   :  25   Min.   :  26   Min.   :  12
 1st Qu.:2550   1st Qu.: 2282   1st Qu.:2547   1st Qu.:2532   1st Qu.:2304
 Median :4954   Median : 4736   Median :4872   Median :5113   Median :4971
 Mean   :4991   Mean   : 4839   Mean   :4969   Mean   :5017   Mean   :4911
 3rd Qu.:7532   3rd Qu.: 7290   3rd Qu.:7435   3rd Qu.:7531   3rd Qu.:7467
 Max.   :9995   Max.   :10000   Max.   :9979   Max.   :9995   Max.   :9997
     res.5          res.6          res.7          res.8          res.9
 Min.   :   1   Min.   :   1   Min.   :   4   Min.   :  15   Min.   :   4
 1st Qu.:2434   1st Qu.:2302   1st Qu.:2562   1st Qu.:2432   1st Qu.:2292
 Median :5003   Median :4780   Median :4932   Median :4771   Median :4639
 Mean   :4911   Mean   :4857   Mean   :4955   Mean   :4892   Mean   :4826
 3rd Qu.:7369   3rd Qu.:7417   3rd Qu.:7396   3rd Qu.:7359   3rd Qu.:7338
 Max.   :9995   Max.   :9984   Max.   :9987   Max.   :9998   Max.   :9989
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;可以看到10个抽样分布与总体分布基本还是比较接近的&lt;/p&gt;
</description>
    <published>2018-06-17T00:00:00+00:00</published>
    <link>http://www.linyi.press/2018/06/ReservoirSamplingAlgorithm</link>
  </item>
  
  <item>
    <title>做科学的统计与判断</title>
    <description>&lt;p&gt;人类非常擅长给自己和他人编故事。哪怕是毫无意义的随机现象，也能够编出一个逻辑，头头是道的讲一个听起来很有说服力的理论或者道理出来。好比领导们画饼，区别在于有些饼画完能做出来分掉，大家获益，而另一些则只是画画而已。工作这么多年，我竟然也越发察觉到画饼的必要性，《Lost》曾讲“Hope is a very dangerous thing to lose”大概也这个道理。人类的这种特性听说与天生的“求存”本能是一致的，追溯原因使人更好的适应自然生存。在追因的过程中，难免形成许多主观判断，比如风水学、宗教学、宿命论，我们不好说一定瞎掰胡扯，但以当前有限的认知来看，主观性还是偏大的。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;我认为，所谓科学也只是众多学说中的一派，并不能认为基于它的所有论断就一定正确，但许多地方还是很客观实用并且可取的。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;这里有个故事，二战时期的德国发明了V-1“飞行炸弹，也就是现代导弹的前身，概念图就是下面的样子（图片来自百度百科）。1944年，德国从当时欧洲大陆的德占区往伦敦发射了数千枚这样的飞行导弹，当时可算是震惊世界。英国人也不虚怕，当时的政府对这些导弹的落点和数量还做了非常详细的统计。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/pois_1.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;被轰炸后的英国地图可以参考&lt;a href=&quot;http://www.nationalgeographic.com.cn/photography/galleries/3075.html&quot; title=&quot;二战时伦敦大轰炸全貌再现&quot;&gt;这里&lt;/a&gt;，图中圆圈就是当时被轰炸的点，德国人似乎并没有想让英国全面开花。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/pois_2.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;地图中的轰炸点有没有可能是被精心挑选的，德国人到底有没有“指哪打哪”的技术神力？细思极恐！&lt;/p&gt;

&lt;p&gt;当时的英国有个统计学家Clarke就此还写了一篇论文《An Application of The Poisson Distribution/一个对于泊松分布的应用》。Clarke取样了伦敦南部的一段被轰炸地段，将其如棋盘一样，划分成24X24共576个相同大小的方块，并统计了每个方块内被轰炸的次数。就是下面这个样子：&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/pois_3.PNG&quot; /&gt;&lt;/p&gt;

&lt;p&gt;229处范围没有被轰炸，大部分（211）地方被轰炸一次，少部分甚至被轰炸4次以上。当时Clarke采用了泊松分布拟合这个数据，这个分布只有一个参数，描述固定时间/空间内某个随机独立事件发生的次数的概率，看到实际轰炸数与理论期望轰炸数量几乎一致。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/pois_4.PNG&quot; /&gt;&lt;/p&gt;

&lt;p&gt;这就是说，德国人当时还并没有“指哪打哪”的能力，只是胡乱（随机）轰炸了一通，一年之后的1945年整个二战就结束了。&lt;/p&gt;

&lt;p&gt;这是个用数据解决实际问题很好的案例，很多时候人类本能的判断未必正确，却极易伴随恐慌。应用数据协助判断，可以使人理性很多，做出正确的决策。小到股票交易，大到国家战略，大概不无如此。&lt;/p&gt;

&lt;p&gt;泊松分布在当今各行业的应用也是非常广泛的，例如有零售商就是依靠它来预测每天各类商品销售的数量，并进行积极备货。又比如我的股票系统也有个小模块预测行情反转概率，其中也有用到泊松分布，具备一定效果。&lt;/p&gt;

</description>
    <published>2016-11-15T00:00:00+00:00</published>
    <link>http://www.linyi.press/2016/11/poissonDist</link>
  </item>
  
  <item>
    <title>消费者市场细分还可以这么玩</title>
    <description>&lt;blockquote&gt;
  &lt;p&gt;市场细分（market segmentation）是指营销者通过市场调研，依据消费者的需要和欲望、购买行为和购买习惯等方面的差异，把某一产品的市场整体划分为若干消费者群的市场分类过程。每一个消费者群就是一个细分市场，每一个细分市场都是具有类似需求倾向的消费者构成的群体。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;这个定义来自互联网，准确的说应该叫做消费者细分。细分本质上是个聚类的过程，包括现在所谓大数据领域流行的用户画像，实质上干的是一个事情。玩聚类少不了会用到K-means算法。K-means算法计算量比较大，但原理很简单：&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;给定一群对象（针对细分就是人），先随机分配各类中心点&lt;/li&gt;
  &lt;li&gt;计算每个个体与中心点的距离，将个体分配给距离最近的类中心&lt;/li&gt;
  &lt;li&gt;随后更新中心点重复上述过程，重复过程2直到类中心移动距离满足一定条件，过程结束，分类完成&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;这个过程对于大部分情况是很好用的，这里需要说明的是，由于起始点的随机性，类中心的移动速度通常很慢，k-means往往达不到全局最优，解决的办法可以考虑组合算法，例如可以想办法先找到一个还不错的起始点。但如果还是分不出来怎么办，世界非因我们而生，令人迟迟不能按时回家吃饭的问题比比皆是。&lt;/p&gt;

&lt;p&gt;千言万语不如一张图，我们用2个正态分布数据簇模拟下面左图情况, 红色群体表现稠密，深蓝色群体相对稀疏（“凝聚力不足”），而且真实的深蓝边界已经深入到红色阵地，k-means往往得不到一个非常理想的情况，我们可以看到（下右）边界部分已经有些分不清楚了，这里我用红色标记不能被kmeans正确分类的点。&lt;/p&gt;
&lt;table border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img src=&quot;/upload/pic/gmm_1.png&quot; /&gt;&lt;/td&gt;
&lt;td&gt;&lt;img src=&quot;/upload/pic/gmm_2.png&quot; /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;

&lt;p&gt;回归问题的本源，市场细分的根本需求往往并不只是要能够分出不同类别就完事，因为这样没有操作意义。细分的目的在于区分市场并能够找到特定市场的人群，找到这些的人需要靠特征，特征来自于总体，因此我们需要能够尽量正确判断每个人所属总体，这是很朴素的统计学思想。&lt;/p&gt;

&lt;p&gt;事实上，如果采用GMM（高斯混合模型）方法可以帮助我们比较好的“猜”到每个点的总体特征，这里只需要设法拟合包含2个密度函数的GMM模型（下左可以直观看出），过程就不啰嗦了。可以看到（下右），采用GMM方法可以比较好的帮助区分每个个体所属的真实群体，这里错分个体只剩下2个。&lt;/p&gt;
&lt;table border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img src=&quot;/upload/pic/gmm_4.png&quot; /&gt;&lt;/td&gt;
&lt;td&gt;&lt;img src=&quot;/upload/pic/gmm_3.png&quot; /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;

&lt;p&gt;GMM对付“各部落凝聚力”相差较大的情况还是很不错的选择，理论上GMM可以不必是高斯混合，也可以是其他多种理论分布的混合，最核心的部分在于拟合分布函数的参数。kmeans可看做是GMM的特例，算法表面上看起来风马牛不及，本质是同一个思想。&lt;/p&gt;

&lt;p&gt;GMM更广泛的应用在于视频监控领域，视频图像所包含的目标区域与背景区域在灰度上有一定差异，呈现双/多峰-谷形状。通过建模，针对运动中的物体通常还需要根据数据实时学习并更新模型参数，以便很好的抓取目标监控对象（目标区域），这个过程涉及机器学习范畴。&lt;/p&gt;

&lt;p&gt;模型的美妙之处就在于此。&lt;/p&gt;
</description>
    <published>2016-06-07T00:00:00+00:00</published>
    <link>http://www.linyi.press/2016/06/gmm</link>
  </item>
  
  <item>
    <title>模型是什么</title>
    <description>&lt;blockquote&gt;
  &lt;p&gt;建模对于我们认知世界是件非常有用的辅助手段&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;前段时间有个国内互联网上市公司人事给我电话，问我对他们数据部有没有兴趣，各方面都吹的挺玄乎的，我认为大家不烦聊聊就去了。过去之后大呼后悔浪费时间，这公司看似规模不小，可内部做事流程一团乱，首先是HR连我的简历都没有打印，似乎也没有和面试官通过气，对方好像完全不知道我要过去聊以及聊什么。更可笑的是，对方身为号称大数据事业部负责人居然对建模这事好不关系，也不知道模型为何物，还摆出县官大老爷姿态以为应聘者真在“求”职（这种招数在当代拿来吓唬应届生都未必奏效）。聊了半天让我感觉对牛弹琴，又不好意思掀桌走人，实在心苦。事后想来，这类公司建立所谓大数据业务事业部完全为了配合二级市场炒作，随便糊弄一下，再发几条公告“布局大数据业务”，二级市场自然相关概念鸡飞狗跳。仔细看该公司上市8年，2014年那轮牛市借助相关概念炒作股价轻松过百，现在市价已不足最高点的六分之一。&lt;/p&gt;

&lt;p&gt;在咨询行业服务的客户多了，工作中也会发现，某些客户常会认为模型是一种高深莫测的魔术黑箱，他们不关心模型的架构和设计的合理性，却一心想要得到完美的输出（预测）。遇到这种客户耗时就要长了，这么多年过来慢慢的也磨出点耐心。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;模型是指对于某个实际问题或客观事物、规律进行抽象后的一种形式化表达方式。任何模型都是由三个部分组成的，即目标、变量和关系。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;我很喜欢这个简单定义的，内部沟通和交流的时候也常常会拿出来和同事们讨论。根据我的观察，面对建模，人会分为两派，一种喜欢搞特别高深复杂的模型，不明觉厉，另一种则恰恰相反。我应该属于后者，信奉简单原则，“白猫黑猫抓到老鼠就是好猫”。&lt;/p&gt;

&lt;p&gt;模型本质上是对现实世界问题的一种抽象拟合，既然是拟合不可能100%精确，这里面除了首先是建模是否正确外，还有拟合程度的问题，噪声的影响几乎不可能消除。吴军在其《数学之美》中提到一个西方日历计算由来的故事（P173）：&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;托勒密基于地球为中心的宇宙假说，建立40个大圆套小圆的方程，计算并制定了儒略历，即每年有365天，每4年增加一个闰年多一天。1500年来，人们根据他的计算决定农时。经过1500年，托勒密对于太阳运动的累积误差，多了10天。1582年，教皇格里高利十三世在日历上取消掉10天，然后将每一个世纪最后一年的闰年改成平年，每400年再插回一个闰年，这就是今天用的日历，这个日历几乎没有误差。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;用现今的观点回看，托勒密的模型当然是错误的，地球中心论早已被证谬。可是这里面有个有意思的问题，即便错误的模型依然有可能正确的运行上千年，然后才会产生偏差，这对人类有限的生命来说已经足够。套用凯恩斯经济学观点，&lt;em&gt;“长远来讲我们都会死…”&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;世界本是不可被绝对认知的&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;这是我个人见地，不排除多年之后回首我会否定它。世界本是不可被真正认知的，比如，宇宙中即便有其他生命一定是以水作为纯在基础的吗？变形金刚是否就一定在电影中才会存在？任何定理定律的提出都基于一定的假设，谁能保证这个假设一定是真理，即便物理中重力公式 G = mg ，重力等于质量的定比，一定是这种形式吗？没有半点误差？&lt;/p&gt;

&lt;p&gt;但这种形式是最简单，并且用现代观点论证，产生的误差足够小到不影响实际运用。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;“如无必要，勿增实体” –奥卡姆剃刀定律&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;许多经典理论模型经过多年的修正迭代都会体现出非常简单的形式。不搞学术研究而只做特定领域实际运用，只要大方向正确，模型尽可能简单，没有必要把简单问题过于复杂化。杀鸡焉用牛刀，生活除了建模，还有诗和远方。&lt;/p&gt;

</description>
    <published>2016-05-21T00:00:00+00:00</published>
    <link>http://www.linyi.press/2016/05/modelimportance</link>
  </item>
  
  <item>
    <title>建模赛之手写数字识别</title>
    <description>&lt;blockquote&gt;
  &lt;p&gt;今天大数据的火热程度简直烫手。我始终认为大数据不过是个炒作的伪概念，10多年前刚接触到统计这门专业的时候，大学教授们说的最多的词语还只是“数据仓库”，商业领域干的最多的事情不过是KDD（knowled discovery in database)，啤酒尿不湿的故事已经快被玩坏了，说到底还是数据挖掘的范畴。没有合适的分析方法，数据量再大也只能是负担，数据源充满了垃圾，分析方法再高深，结果依然是垃圾。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;所以东家常洗脑我们说“We don’t talk about big data, we say smart data”，你看德国人一点也不（Lao)傻(shi)，我常常对于语言表达能力可以产生的威力充满了敬畏。&lt;/p&gt;

&lt;p&gt;最近注册了Kaggle账号，试玩了一把&lt;a href=&quot;https://www.kaggle.com/c/digit-recognizer&quot; title=&quot;Digit Recognizer&quot;&gt;Digit Recognizer&lt;/a&gt;的比赛项目。主要有3大感慨：&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;在这个牛人辈出的时代，一定要谦虚&lt;/li&gt;
  &lt;li&gt;黑猫白猫抓到老鼠就是好猫(不管是统计学习方法还是机器学习方法，能解决问题就是好方法）&lt;/li&gt;
  &lt;li&gt;想法始终比方法更重要&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;整个比赛给出两套数据，训练集和测试集，比赛要求通过利用训练集所包含的42,000幅图片来训练模型，并通过模型预测测试集中的28,000幅图片到底是什么数字。&lt;/p&gt;

&lt;p&gt;随机抽了100张图片数据，打印出来大概长成下面的样子（这很像是西欧人的手写体），如果奖金还在又或者还有的话，最完美的解决办法就是把测试集打印出来，找几个兼职人肉识别一下，准确率100%绝对排第一，奖金到手，项目结束。
&lt;img src=&quot;/upload/pic/Viz.png&quot; /&gt;&lt;/p&gt;

&lt;p&gt;每一副图片实质上对应一个矩阵，元素则是255位RGB颜色值代码，既然如此，那么可以采用数理统计的方法来尝试解决。这里本质上是个监督式分类的问题，每幅图片大小相近，书写相对清晰，可以说数据源本身就有比较好的特征，噪声较小，理论上采用比较简单的逻辑模型应该也会得到比较好的结果（没有尝试，有待验证）。&lt;/p&gt;

&lt;p&gt;分别尝试过3个模型原型，坊间传言特征决定了模型的高度，参数只是算法逼近这个高度的手段，对此深有体会。这里不考虑参数调优，按经验建模，给出如下结果：&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;随机森林（RandomForest），构建500棵树，测试准确率94.701%,大概排名1000+,多训练几棵树有可能达到更好效果。&lt;/li&gt;
  &lt;li&gt;Xgboost，训练2000棵树，在已有特征范围内loss function已达到极限，测试集准确率达到97.271%，排名658.&lt;/li&gt;
  &lt;li&gt;SVC，准确率进一步提升97.543%, 目前最好排名424
&lt;img src=&quot;/upload/pic/rank1.PNG&quot; /&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;模型的选择对于准确率的影响并没有想象中那么重要，参数调优有可能进一步提升预测准确率，但只是锦上添花效果是有限的。因特征比较清晰，整个过程并未涉及特征的进一步处理，从第一名准确率100%来看，尚有很大提升空间。特征很重要，以后有时间再看。&lt;/p&gt;

</description>
    <published>2016-04-23T00:00:00+00:00</published>
    <link>http://www.linyi.press/2016/04/kaggledigitrecognition</link>
  </item>
  
  <item>
    <title>关于A股交易的一点个人思考与实践</title>
    <description>&lt;p&gt;时节虽已入冬，但热情却不减夏季，此情此景非A股证券交易莫属。行情从7月演绎至今，仅上证指数就已升水30%有余，最近的一周更是疯狂到极致，似乎有种07年再现的幻觉。回首07，那一年，我们都还懵懂，正被星哥启蒙入市（星哥曾跟我说把财大图书馆2楼的书全看完了，我表示佩服）。往事回首历历在目。&lt;/p&gt;

&lt;p&gt;人常说“年年岁岁花相似，岁岁年年人不同”，指数常变，人性依然。能持续盈利的始终是那几个账户，而还在缴学费的也还是那一片性格。都说投资实在投人，这话不无道理。且看阳光一哥任松泽执掌的“中邮战略新兴产业”于2013年取得第一名收益80%，2014年至今又收益79%，依然位居第一名。&lt;/p&gt;

&lt;p&gt;私募界更是神话遍出，总舵主泽熙每年翻倍的收益不是人人都能享受到的。作为常人，很顺其自然的想法是寻找大哥们的蛛丝马迹，就算吃不到肉，能喝一碗汤也不赖。&lt;/p&gt;

&lt;p&gt;写个爬虫上网，准备开工（以下所有原始数据全部抓取自新浪网、腾讯网以及东方财富网，投资有风险，参考请谨慎）。以2014年为例，中报显示东方锆业等9只票（下图）可见泽熙身影，其中宁波联合及特尔佳更被单基重仓。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/st-1.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;但即便在获得中报的8月立即跟随入仓，可以发现喝汤的机会其实并不多，{8,9,10}三月整体平均收益几乎为零（这里收益计算并未复权，明显明牌珠宝、黔源电力、青松股份分别于7月、5月、9月除权，复权后收益将接近0轴，计算从略，请自行验证，后同不述）&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/st-2.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;由于二季报通常到七八月才公布，而泽熙有可能在4.01 ~ 6.30之间任何时间段进驻，并且利用中小投资者获得中报的时间差提前出逃。事实上，如上所见个股在中报之前{4,5,6,7}大多已有较高的收益表现，或许泽熙借中报利好早已出逃也并不稀奇。可见，一般投资者想要靠追踪泽熙这类私募来获利基本不会有太大胜算，了解泽熙的人或许知道，徐翔大招“一字断头刀“力不虚发，中招者不死也难免残废。&lt;/p&gt;

&lt;p&gt;比之公募，私募通常有更强的嗜血本性，手段凶狠，操作灵活，据说行业内真正优秀的人大多往私募靠拢，这正是私募收益高且难觅踪迹的原因之一。公募管理者由于大多上班撞钟的本质（如果你去查阅公基定期报告，会发现大量公募互相抄袭追随持仓，这恐怕也是大多公募落于庸庸碌碌业绩的根本原因。此不详述,欢迎探讨），公募似乎更希望市场四平八稳，每天最好是”无惊无险，又到三点，下班！”（夸张说法，请勿对号入座）。但即便如此，公募背后仍然有强大的研发团队及信息优势支撑。话分两头说，公募也不乏像任松泽类年轻有为的管理者，包括听说有个我校前辈学长管理的某基金业绩也相当不错。也正因如此，追踪公募可能具备更大的潜在机会价值。再者，从信息不对称的角度看，私人股东同样可能掌握着大量有价信息。理论上讲，所有的不对称有价信息最终都将映射到交易上。&lt;/p&gt;

&lt;p&gt;继续放虫，这次扒三季报。可以看到增持最强烈的前10股中，海亮股份、洪磊股份、上海莱士已经停牌，信息不对称交易已经有所体现。虽然增持最直接原因是中期分红扩股，如果对比户均持股量，就会发现大股东全部都在，而小股东/散户发生了撤离。很明显，这里面是有文章的。有基于此，本人有幸11月23日周末发现了内蒙君正，更凑巧的是该股恰好处在爆发前夜。关于基本面研究，此处略去一万字，该股最有效的刺激因素便是预期收购华泰保险股权，本周五已完成收购，下周是否会继续打板，拭目以待。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/st-3.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;下图重新模拟君正近半年走势，7月初期出现巨量资金流入（下半图），随后一直追随大盘（上半图红线）波动，资金流入不急不躁，且每一次下探到位后出现增量资金托盘，直到上周爆发前夜。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/st-4.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;关于资金流入/流出，此处算法仅关注直接引起股价变动的增量资金，正因如此，参与封住涨停的资金将不被看做流入。从经验上看，这么处理大体上是可以的，但有瑕疵，有待进一步完善。&lt;/p&gt;
</description>
    <published>2015-11-30T00:00:00+00:00</published>
    <link>http://www.linyi.press/2015/11/stocktrading</link>
  </item>
  
  <item>
    <title>从数据角度看金庸武侠世界</title>
    <description>&lt;p&gt;家里吃饭的时候偶尔还会看《95版神雕侠侣》。古天乐、李若彤都是我很欣赏的演员，关于这版连续剧连金庸本人都大为称赞二位演的最接近原著，的确算的上是经典。惭愧的是，关于金庸原著，我本人并没有真正静下心来完整的阅读过。作为一名数据工作者，正好趁着兴趣正浓，尝试从数据角度一观金庸的武侠世界。&lt;/p&gt;

&lt;p&gt;金氏武侠不止于14本，最经典的应该就是下面的几本，被他老人家连接成对“飞雪连天射白鹿，笑书神侠倚碧鸳”。当今的网络时代，可以很方便的抓到电子版的原著，借助特定算法处理便可对原著进行适当的数据化分析。&lt;/p&gt;

&lt;p&gt;金庸生于1924年，从创作年代分布看，他30岁左右开始写经典武侠，花了15年的时间来创作经典。尤其从1959年开始，年产量达到2-3部。金庸那时大概35岁，不知是人到中年偶有危机感（男人这个年龄要小心，据说35岁是普遍个坎，岳飞死的时候就刚好35岁），还是出于大师思如泉涌不写不快，总之这种产出速度还是相当高的。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/jy-1.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;采用中科院分词原创算法（多层隐含马尔科夫模型）对各部作品进行分词，并进一步剔除{“我、你、的、了、是”}等无显著意义代词、助词，形成词向量组（比如“降龙十八掌”将被识别为1个词，而非5个词/字）。&lt;/p&gt;

&lt;p&gt;简单统计各部作品含词量可看到如下分布，基本上金庸对于各部小说的长短把握还是很有分寸的，并没有因为熟练于武侠而将篇幅随意拉长，用“字字珠玑”来形容是不为过的。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/jy-2.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;印象高中时代看《读者》有提到过金庸平时不忙的时候经常会翻看《穴位图》，武功招式、兵器暗器应该也是那个时候想出来的，真是五花八门，闻所未闻。少林的“铁莲子”是金庸提及最多的暗器，《书剑恩仇录》中红花会的三当家赵半山（出自太极门派）就使用这种暗器；其次“般若掌”、“龙抓手”、“韦陀掌”也是提及最多的武功；天下武功出少林，金庸会不会对佛教也有过极深研究，大师信佛吗？（此处缺一个含羞的表情包）&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/jy-3.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;小说人物设计，韦小宝占据了很大篇幅，这个混世魔王恐怕是金庸笔下不太会武功但最厉害的角色。这或许也是金庸对于侠客塑形渐变的一个缩影。从《书剑》中陈家若的反清复明为己任，到《射雕》中郭靖的“侠之大者，为国为民”，算是金庸对于侠客传统定义的一个升级，再到《神雕》中杨过兼具侠邪两性，更多的反应人性变化，到最后《鹿鼎记》中韦小宝的混世魔王形象，已经完全回归到普通人性。或者不同角色差异本是时代固有的烙印，比如同处北宋，先辈乔峰及晚辈郭靖都以忠孝义为先。又或者这就是作者人生观的一个渐变，据说金庸曾有过做外交官的人生理想。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/jy-4.png&quot; /&gt;&lt;/p&gt;

&lt;p&gt;进一步迭代生成词文矩阵，赋以词频做权重，可计算出小说空间距离阵，并对小说进行系统聚类。为探索小说基于人物间的传承关系，此处仅提取关于人物的词文矩阵。《射雕》和《神雕》成为一类，主要讲述东邪西毒南帝北丐郭靖黄蓉杨过小龙女的故事，这几乎就是爷爷爸爸儿子孙子的家事；《雪山飞狐》和《飞狐外传》成为一类，可以说是胡斐本传及胡斐外传；第二梯度，《碧血剑》《鹿鼎记》，袁承志复仇失败后漂泊海外，旧相好阿九公主出家为尼后来做了韦小宝的师傅，两个故事多少有些关联，整个分类基本还算合理。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/jy-5.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;俗话说，千言万语不如一张图。人物之间的关系很难量化，但若以各自小说作为主要节点，可从侧面观察小说之间因人物而产生的联系。由于小说中人物繁多，这里设定阀值剔除了大量无名小卒，图中每个小圆圈代表一个人（避免视觉混乱，这些人名不显示），每个大圈圈则为中间度（ ∑(P(ivj)/P(ij),i≠j,i≠v,j≠v) ）较大的节点，即小说名称及连接小说的关键人物。&lt;/p&gt;

&lt;p&gt;除了“梅剑和”及“莫大”属误判外（《天龙八部》中只有梅剑和菊剑两个人，分词中算法出现误判有待后期有时间再行改进，导致切分成与《碧血剑》中的“梅剑和”同名，同样《倚天》中没有“莫大”那位高手），整个网络关系还是比较清晰的。《连城诀》和《白马啸西风》成为独立子群，和其他各篇几乎没有关系。&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/upload/pic/jy-6.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;金庸的武侠世界应该是这么构建的：&lt;/p&gt;

&lt;p&gt;天龙八部乔帮主三弟虚竹走了XX运得无崖子70多年内功，成了缥缈峰逍遥派接任掌门。逍遥派祖师爷逍遥子，据说聪明绝顶又神秘莫测，网络上还有关于金大爷武侠世界里逍遥子vs扫地僧的讨论。金庸对逍遥子这个名称显然有特别偏好，《鸳鸯刀》中“太岳四侠”之首“病夫模样的中年人，衣衫褴褛，咬着一根旱烟管，双目似睁似闭”的烟霞神龙也叫逍遥子，只不过这个神龙跟逍飘渺就没有半毛钱关系了。”降龙十八掌“据说原来有二十八掌，经由乔峰和虚竹融合擒龙功将威力升级到飞毛腿当量，直接浓缩成了十八掌，只是后人越传越邪门，而且越传越难理解，传到郭靖手里（十八掌还是全的）算是留了个全，后来再传到史火龙那一代的时候，难度基本就超过了现代的高考，只剩下十二掌，再到后来经由谢逊传给张无忌就只剩下三掌了，再后来，就没有后来了。&lt;/p&gt;

&lt;p&gt;《射雕》和《神雕》合并成一部完全是可以的，基本就是讲讲爷爷爸爸儿子孙子的家事。早在东邪西毒南帝北丐各开大招上华山对轰的时候，这几位亦正亦邪，压根无分敌我，只有中神通王重阳开防火墙才能平衡四方。神通仙逝后将《九阴真经》和林朝英的大部分绝学都留在古墓，后来都成了孙子辈杨过和小龙女的私家财产（全真七子是很无辜的，上层的武学没一样在全真教），这是后话。邪毒帝丐的第二代郭靖得到真传，郭伯伯成为一代大侠镇守湖北襄阳，抵御蒙古鞑子。后来遇到义弟杨康的遗腹子杨过，武功没能亲自教成（顺便要提一下大武小武，很可能是金庸写出来衬托杨过的两个笑话，两兄弟从小到大最大的梦想是当郭靖的亲戚，不过最后娶了耶律燕、完颜萍，跟耶律齐做了亲家，算是见解实现了当亲戚的梦想），杨过后来被送到终南山全真教学艺，这绝对要感谢郭伯伯，过儿才有机会遇到女神。&lt;/p&gt;

&lt;p&gt;杨过是我很喜欢的角色，机灵、有悟性、不落俗套、有情有义、拿得起放得下，男神的标签太多了。男神的出生却是个草丝，不过这个世界好像自古如此，牛逼人生不需要解释，杨过当年要是没有练武而是去养猪，绝对也会成为养猪大户的。杨过后来看透世俗参悟生死，带着老女神（那时候小龙女差不多已经40出头了）回古墓养老，生了个女儿在《倚天屠龙记》中专门跑出来灭周芷若，就是那位说出”终南山后活死人墓，神雕侠侣绝迹江湖“的黄衫女子。&lt;/p&gt;

&lt;p&gt;杨过的离去，导致郭襄单相思忧郁了好长时间，直到最后出家创立峨眉派，的确体现出女强人的本色。郭襄的人生中遇到张君宝也是很有意思的一段。当时落魄无依的张君宝遇到郭襄，郭襄很够意思让他去找自己的爹爹郭大侠求个好前程，只是后来阴差阳错君宝想通了，决定不再去找郭大侠，要靠自己逆袭，这才有了后来的武当派，他后来还取了个艺名叫张三丰。再后来就是他有个外孙也是各种走运，学到很多上层武功，外孙名叫《倚天屠龙记》中的张无忌。插一句，张三丰终身保留童子之身的原因是对郭襄暗生情愫，呵呵，金庸大爷，我猜得对吗？&lt;/p&gt;

&lt;p&gt;张三丰的武当教传到冲虚那一辈的时候武功也是好的一塌糊涂，各种笑傲江湖。冲虚在当代已算是十大高手之一（是不是有点武功一代不如一代的感觉，难怪金庸写到后面的韦小宝干脆用“混”走江湖，阿弥陀你的佛）。据说冲虚和当时的少林寺方证大师是”好基友，一辈子“，经常约出来谈心，以至于后来《笑傲江湖》中的令狐冲上少林找茬的时候冲虚有专门出来帮忙干过几架，这应该是尽人皆知的。&lt;/p&gt;

&lt;p&gt;朱元璋被暗示是借助《倚天》中明教势力打败陈友谅，建立了明王朝，只是可惜据说他们朱家基因好像不太好，后代当皇帝的大多不成样。皇位传到崇祯的时候偏偏遇到个陈圆圆，搞得内忧外患，帝位岌岌可危。大将袁崇焕很快被政治玩死，崇祯也就跟着拉稀了，那天闯王李自成刚好进京。袁崇焕的儿子袁承志的出场本是要续承老父遗志，匡扶明室，生平事迹可详见《碧血剑》。他先拜闯王李自成的部下崔秋山那学了几招，后来某天出门看见有坨翔，就义无反顾的跑上去踩了一脚。后来就邪门了，袁崇焕很快接触到金蛇剑法学成一代高手。再后来李自成的军队进京可能是被天上人间搞残的，袁承志见状心灰意冷遂隐居海外（其实是南海外，也就是现在的文莱）。顺便要八卦一句，袁承志和崇祯的女儿阿九公主有过一腿，后来阿九出家为尼，再后来当了韦小宝的师傅，就是那位“断臂神尼”。&lt;/p&gt;

&lt;p&gt;李自成兵败失踪后中国消停了不少，皇太极也差不多得了天下，是为清廷。闯王归去，留下大批宝藏由其麾下胡、苗、范、田四大护卫掌握，江湖传闻护卫内讧，毛人凤一剑刺死了胡一刀，引出一段胡家少爷胡斐报仇寻源的《飞狐》故事。胡斐曾得到过《书剑恩仇录》中红花会三当家赵半山的帮助，后期还遇到过大当家总舵主陈家洛，他还以为陈家洛就是乾隆。不过陈家洛其实是乾隆的同胞兄弟，只是他自己并不知道而已。《书剑恩仇录》书剑应该就是指陈家洛，书生舞剑最终失败，故事有点凄凉。&lt;/p&gt;

&lt;p&gt;李岩是李自成的重要谋士，但最后也是死在李自成手里，据说李自成对李岩怀有内疚，李岩的儿子也未忍心杀闯王。李岩的儿子李西华应该是个有独特见地的人物，气势差了点但武功还可以，《鹿鼎记》中天地会和沐王府对于反清后怎么复明有争议，李西华就提出“推翻清朝，谁功劳大就谁当皇帝”，正所谓皇帝轮流做，明天到你家，只是这种思想太前卫了，一般人接受不了，李西华被排挤。可见，在那种年代武功已经不是那么重要了，像韦小宝那样“混得开”的能力一下就体现出优势来，有道是识时务者为俊杰。&lt;/p&gt;

&lt;p&gt;敬金庸大师！&lt;/p&gt;
</description>
    <published>2015-11-15T00:00:00+00:00</published>
    <link>http://www.linyi.press/2015/11/jinyong</link>
  </item>
  
</channel>
</rss>