0%

EIE: Efficient Inference Engine on Compressed Deep Neural Network

Introduction

  • DRAM access costs more energy than basic operations
  • CNN has a lot of data reuse, which makes DRAM access not very important
  • Deep compression makes the kernel sparse, able to exist on mobile

Contribution

  • accelerator for sparse and weight sharing neural networks
  • accelerator that exploits the dynamic sparsity of activations to save computation
  • a method of both distributed storage and distributed computation to parallelize a sparsified layer across multiple PEs (processing elements)

Motivation

  • FC is used widely, and memory access is usually the bottle-neck ( no reuse of the input matrix)
  • network compression offers a solution of memory bottleneck
  • previous SPMV accelerator can only exploit static weight sparsity.
  • batching of FC is not suitable for latency reason

Model

Variation of CSC

v : value

z : offset of last non-zero value (one column as a vector) or first element

q: pointer to the fist non-zero element of each column

combination between algorithm and hardware

Python function object reference导致的bug

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
imsave('./generated_inputs/' +str(iters) +'_0'+str(i)+ '_two.png', deprocess_image(imgs[0]))

def deprocess_image(x):
tmp = x
tmp = tmp.reshape((100, 100, 3))
# Remove zero-center by mean pixel
tmp[:, :, 0] += 103.939
tmp[:, :, 1] += 116.779
tmp[:, :, 2] += 123.68
# 'BGR'->'RGB'
tmp = tmp[:, :, ::-1]
tmp = np.clip(tmp, 0, 255).astype('uint8')
return tmp
// 如此添加tmp。x的值仍会一直改变。则重复调用deprocess无法得到相同结果。
// 正确做法 使用x.copy()
def deprocess_image(x):
tmp = x.copy()
tmp = tmp.reshape((100, 100, 3))
# Remove zero-center by mean pixel
tmp[:, :, 0] += 103.939
tmp[:, :, 1] += 116.779
tmp[:, :, 2] += 123.68
# 'BGR'->'RGB'
tmp = tmp[:, :, ::-1]
tmp = np.clip(tmp, 0, 255).astype('uint8')
return tmp

前记。名为日记,实为“周记”,领队的七天实在是太过繁忙,因此所有的记载都是在结束后凭着有错乱的记忆临摹而成。记此训练营,希望自己在遥远的未来也能记得这有着年轻气息的七天,和七天中结识到的风华正茂的青年们。

第〇天

从没想过可以入选体验营的我,在接到阿荡电话的时候,第一反应不是激动、开心或者兴奋。而是:我日快是论文DDL了 我实验还没跑完 图表还没做 我根本没想过能通过啊喂 我就是个黄金菜鸡 偶尔看看RNG的比赛的观众啊喂。不过凭着大学四年赶作业的王者水平,我愣是通宵两天做完了大部分实验,没有带上什么负担的踏上了这次旅途。

不过对于这次体验营,我是带着一些目标来的。一方面是想了解现在电竞行业数据分析的现状,毕竟曾经的职业理想也是去NBA做一个数据分析师。另一方面就是这次活动本身能带来的全新的体验,我一直觉得,看电影也好,看小说也罢,对我来说最大的价值就是带着我体验了横向的人生维度,譬如潜伏复仇的基督山伯爵,譬如陷在爱情泥沼的方鸿渐。每一次新的体验就是我人生经验的补充,总会影响到我为人处世的行为和某一刻的某一个重要决定。因此,我其实挺乐于参加这种和我的未来似乎完全不着调的体验。

高铁去的北京。大学四年只因为访问北大来过北京一次,而且是在北大同学“精心”布置下的夏日北京,因此这次可以算是真正的第一次来到北京。一下车,到处都是天子脚下的鲜明特色,严苛的安检、厉声催促的保安、老派朴素有如台北的地铁站和萧瑟的北国寒风,组成了我对这个城市的第一印象。

下了地铁,在路上碰到一位领队和两位女选手,领队全程拿着手持摄像机,是某个媒体的实习生,而两位女选手则是纯粹的学生来参加这次体验营,其中有一个江南大学的小朋友还是打中单位置,我心里估量着这个内向温柔的小朋友,可能再来一百次也不会想到唯一一次看到她流泪是在总决赛吧,而她可能也想不到那个一直拿着摄像头、戴着书生眼镜的领队就是把她打哭的那队的训练营最佳领队。

到了酒店,办理好入住后先去阿荡那登记了一下基本信息,同时简单的打了个招呼。阿荡没有群里那么爱吹逼,“似乎”比较沉稳?在场的还有一位助教,一副儒雅随和的样子,长的还蛮像清华的宿涵,上电梯的时候跟他打了个招呼。后面了解多了才知道,这个助教就是我们队的助教,这些看起来儒雅随和的小孩子们,其实一个个都是国服第一“喷子”,群里吹逼键盘侠,现实SOLO屁不响。也就一个波比教练是真的称得上儒雅随和 温文尔雅。

在酒店休息会就和先到酒店的中野见了面。这两个小朋友可以说是队里最有求胜欲的,刚建群时我颇有点“未战先怯”的意思,先给他们说了一堆,“尽吾志也而不能至者”的鬼话,他们两只有一个回复:我要冠军。也许这就是年轻人吧,在港中文被大神虐了四年的我早就接受了自己可以不是第一名的事实,并且觉得不做那个第一名也挺好的。但既然两个小朋友这么有志气,我自然也得加把力不能辜负了这两个小朋友。我们的打野是重庆人,第一眼看到时就惊了,这不是七酱吗?脸庞、眼神、气质、语气都像极了七酱,之后的故事就叫他七酱吧。而中单来自西安,因为之前参加过LPL的青训选拔营,跟橙子教练还是比较熟识。想拿冠军的中野组合是有底气说这话的,毕竟两个都是峡谷大师,一个是峡谷之巅第一赵信、一个参加过青训营。后面的比赛也证明了我们的中野就是最强中野。

因为有两个小朋友要很晚才到,所以今天的训练赛也约不了,不过今天我们有个必须要讨论好的问题:我们有两个AD,需要有个选手做牺牲换位置到上单。两个AD,一个是“渣男”张佳(其实从七天共处一室看下来,张佳不是渣男,纯粹只是那笑容太过淫荡猥琐因此大家叫他渣男),来自电竞豪门南昌理工,曾经作为领队兼任替补还去全国高校赛总决赛当个混子上单爽了两把。另一个教主在澳门科大打AD,因为手伤的原因曾经放弃过一段时间的英雄联盟。当时张佳是两个位置都能打,而教主真的没玩过上单,再加上张佳本人也愿意去走上,因此第一天我决定安排张佳去上。第一个要说服的是我们的中野,因为打野和张佳认识,知道他的实力,因此更想把C位给张佳。我认为教主曾经的水平也不差,以及张佳两个位置都可以打,为了说服他们,我也泄露了教主的报名资料给他们看,他们最终也同意了这样的阵容分配。后面因为我的泄露教主也有点小情绪,不过好在他是个宽宏大量的人,而我也第一时间跟他道歉,并没有成为什么大的芥蒂。不过万万没想到我的这个决定成为了杀死我们队的众多匕首中的第一支。

第一天没有比赛,因此对这些小朋友的性格了解的不多,只觉得大家都是较好相处的人,仅此而已。真正矛盾的开始是在第二天。

第一天

训练营的第一天。上午有个简单的开幕式,除了橙子教练和心理师的讲话,印象最深的是戴维镛老前辈的发言。在他的讲话中我感受到了一位军人背景的老前辈对于电竞行业的理解和支持,以及对于国家的热爱和忠诚,作为在香港生活了近五年的我,没有接触过电竞的高校联赛,也没有这样的老前辈有这样的肺腑之言,真的是胸中燃起了一股青年的热血。电竞这个新兴行业,应该也很需要这样的老前辈的支持吧。

上午也是平淡无奇,除了要求没收手机时队员有一丝抱怨,一切都好像上课下课一样正常。真正的矛盾、争吵是在下午开始。

第一场。七酱第一赵信前期节奏完美,十分钟3000经济领先,拿下第一条大龙,中期运营混乱,被对方青钢影无限T到女警,被翻盘。

第二场。七酱训练营第一挖掘机前期节奏完美,中单吸血鬼单杀加里奥,20分钟10000经济领先,杀人书15层,拿下第一条大龙,吸血鬼没有沟通自己E闪进场被秒,EZ打团失误,被翻盘。

第三场。七酱皇子前期节奏完美,十分钟4000经济领先,拿下第一条大龙,中期运营混乱,被对方拿下第二条大龙,万幸后期皇子+吸血鬼天然count对方蛇女 轮子妈双C,最后一波团结束比赛。

第四场。七酱第一赵信前期节奏完美,上野杀穿对方上野,渣男厄加特领先jax两件套,但是我们的牛头冰女开不了团,被对方jax单带47分钟结束比赛。

连续四场几乎是镜像的被翻盘,让队友们的“儒雅随和”彻底被揭穿,问题虽然很严重,但是很清晰,集中在了三个点上。1. 中野的矛盾被无限放大,中期两个人都很肥,但是两个人又很有自己想法,而没有一个正确大家都信服的指挥,导致中期无法结束比赛 2.后期AD打团失误严重,导致团战输多赢少。3. 中单辅助对于开团型英雄的熟练度不高,导致开不了好团总是被对方牵制。

那天结束后,虽然是1-3的成绩,但万幸队员们都没自闭,大家自发的聚在一起商量第二天怎么办。其中对于第二点,我提出了可以说是我以及我们上中野的诉求,把AD上单位置互换,因为我们中期结束比赛的能力缺失,我们往往会被拖到后期团,这时候AD的重要性不言而喻。而关于第一点,我们悬而未决,张佳提了很多他在校队时学到的运营思想,但是中单不太接受。第三点,我们其实一直到最后也没解决。毕竟辅助是个大一的小朋友,才刚结束高中六个月,有如此强势的中野大哥,虽然是自己校队的指挥、擅长的就是牛头和洛,但是并发挥不出自己的真实水平。

经过一天的比赛。我对于五个人的性格也有了更深的认识。渣男是个典型的“好队友”型选手,毕竟有丰富的全国高校赛经验,愿意去沟通、说自己想法、承认自己错误、有良好的比赛思路。而七酱是个想要去指挥但是会着急的选手,当有队友不听指挥时,情绪会比较激动,不过好在七酱也是愿意去反省改正自己的选手。而中单则比较爱表现自己有自己的想法,同时也不太愿意承认自己的问题,其实在我看来,成人与否,是在于是否会学着承认克制改正自己的不足,不足可以是游戏上的,譬如打团不行,中期节奏不行,也可以是性格上的,譬如七酱这种“太想赢”的着急。小孩子往往不会去面对自己的弱点,譬如主动道歉,小孩子往往是自暴自弃或者换个说法,逃避这个弱点,当人说我不对的地方,我第一反应就是杠回去。真正的长大成人应该要去面对它甚至解决它,当王子有了能斩断恶龙的勇气和实力时,他变成了真正的勇士。因此中单在我心里一直是个小孩子般。不过,电子竞技不欢迎小孩子。我们的AD,教主游戏上很稳,但确实在打团上和训练营其他AD有差距,不过他是个愿意牺牲自己的人,当我提出他去上时,他没有一点负面情绪便坦然接受了,这样的大无私精神是可敬的。辅助小朋友是个比较内敛但绝对很闷骚的人,可能是辅助这个位置存在感实在不强,他除了不开团的牛头没有什么让我印象深刻的地方,,,哈哈哈。

总之,地狱开局的第一天,分不清是好还是坏,从结果论来说的话,也算得上第二把匕首了吧?不过我和张佳都对第二天充满了信心,我真的很乐观,因为我们不是硬实力问题,恰恰相反,我们的对线实力,前期节奏都远在平均水平之上,只要解决了沟通问题,我相信我们能是冠军。

第二天

第二天的第一场可能是我们最重要的一场了。这场输了,意味着1-4,意味着我们昨晚的讨论没有价值,意味着全盘的崩盘。

张佳转到AD的第一把拿到了霞,比赛一如期望的到了40min的后期,这次站出来拯救世界的是我们的霞,三杀,伤害最高,超神,杀人最多,推塔最多,20杀的张佳拯救了我们队。第二天我们的状态还不错,虽然输了两把但是剩余的四把都赢的比较精彩顺利。打野开始克制他激动的语气,中期的运营在波比教练和助教的复盘下也逐渐有了章法,后期也因为张佳让我们有了保障。另外一个惊喜是,我最担心的教主虽然把把被压100+刀,但是完美抗住了压,没有一把是因为上路崩盘导致游戏结束。

我的领队工作也开始逐渐展开,我开始留意每个队、尤其是强队的BP时刻,每当那个队聚在一起,要么是复盘,要么就是BP,而BP的时候自然就要去偷拍一下阵容,靠着这招,大部分队的英雄池,厌恶英雄我也是摸得比较清楚。

第二天4-2的成绩看来不是很好,但其实输的两个队是我们B组的前三名,也是最终进入决赛的两支队伍。

第三、四天

这两天是比赛进入正轨的最顺利的两天。

不得不说七酱真是个学习能力,调整能力特别强的人,在波比教练给我们复盘了几次,提出了关于运营、兵线的的一些概念后,他完美的应用到了比赛里。这样,一个抗压王上单、一个前期节奏无敌的打野、一个Carry能力爆炸的中单、一个偶尔会崩但是团战很强的中单、一个锤石节奏很好的辅助,我们的阵容最终还是基本成型了(训练营EDG懂我意思吧?)。

之所以要把25,26放到一起,是因为这两天比较像,两天的5-1,都打败过顶级强队,同时输的比赛也是因为一些选手的失误,比如AD上头、辅助蛤蟆熟练度不高,等等。但是我们完全处在了正轨上,排名也是水涨船高,最后一天小组赛前,我们打败并超越了20队,成为了小组第四。

作为领队,我的工作也不仅仅是偷拍BP了,还需要跟其他领队交流英雄池的经验,以及关注排名、晋级情况。不过工作归工作,这几天也因为是领队,认识了许多其他领队朋友,他们温暖、阳光、给人以友好。

最后一天前,我总结了我们的晋级条件。我们的直接对手是20队,最后一天我们需要打10/5/3 3个强队,20队需要打5/9两个强队。而我们需要比他们多输两场,也就是他们就算全胜,我们也得输两场才会淘汰。

这种近似于国足般的理论出线可能,意味着我们大概率要进入淘汰赛了。不过那晚我们也没有膨胀,我们把10/5/3的英雄池,BP、以及我们的失误翻来覆去的讨论。对于第二天,大家都包含希望。

第五天

第一场就是打A组最强的10队,凭着中单的吸血鬼和AD的爆炸输出,我们拿到了意料之外的胜利。这意味着,我们已经半只脚出线了。

下一场是打3队,我们只要打赢就已经锁定出线了。3队是外国队,也可以说是英雄池最明显的队伍,因此我一直觉得很容易赢,因为对方的上中野AD 翻来覆去就只有几个英雄。因为3队和我们是一个助教,而波比教练也对两队很熟,因此波比教练说让两队自己BP,但是BP的时候,没想到20队的助教主动去帮3队BP, 完美套路了我们,而我们因为没有教练ban人的时候没找到凯南,让对方上单拿到了擅长的凯南。最终,鏖战了50分钟,我们输了。

20队最后一天全胜,压力到了我们身上,我们最后一把,也是整个训练营小组赛的最后一把,需要战胜5队。同样的,20队助教的BP完美针对了我们中单的吸血鬼瑞兹,最终拿出了熟练度并不高的杰斯,随着比赛一点点进行,当游戏进入到后期时,其实我清楚我们已经接近出局了,就像RNG S7的最后一场,就算香锅不在那个眼上,阵容的先天后期劣势也导致我们可以说必败无疑了。最终游戏结束了。我们曾经离晋级那么近,然后被淘汰了。

其实比赛结束的时候我内心还没有什么波澜,因为我以为我已经调整好了心情。比赛结束后,大家一言不发,有的收拾外设、有的站起身眺望远方,但当我看到七酱默默的复盘、倒放的时候,忽然间,这种竞技体育带给我的难受,这种上次还是高中篮球赛的难受,又清楚的扎在了我的心里。我一下子眼睛就模糊了,大学四年都没哭的我,一个人默默的去了卫生间调整自己的情绪。我看到七酱那么想赢是真的很自责,如果我看到20队助教帮忙BP的第一时间去请别的助教帮忙BP,我们肯定有时间找到凯南,ban了凯南,他们只会选熟练度很低的上单维克托,我们的AD输出环境也不至于那么糟糕,没准游戏就赢了。自责、难过一下次涌上心头,哎,一个自以为看破成败得失的人儿,能再次感受到这种少年时代的竞争精神,哭一哭也没什么不好或者丢人的。

说起来真是惭愧,一个97年的研一男儿,要被一帮00后的小屁孩安慰。这点上我真不是一个称职领队。

第六、七天

淘汰赛的两天和我们无关了。不过对我来说,颇有点因祸得福的意思,后面仔细想想,因为上单补位和中单英雄池的问题,我们肯定进不了决赛,无非是早自闭或者晚自闭的问题。与其这样,还不如在召唤师峡谷做一个乐观的风男。

最后两天,RNG体验营变成了RNG大型网吧,被淘汰的队伍开始了欢乐SOLO,分奴排位,不得不说,欢愉放纵的时光过的真的是快的多,似乎就是一转眼,我们就到了闭幕式,看到当初第一次见到的妹子被打哭的样子,看到第一次见到的那个拿着摄像机的17队领队拿到了最佳领队的奖项,同时心里也酸了下台上解说的20队领队:以后港中文要是有校级的英雄联盟比赛,真想做个国语流的解说试试。

转眼就是结束,和许多人都约了江湖再见,后会有期。但不知道其中有多少人还能真的再见,但是对我而言,这次的体验是弥足珍贵的,不论是否再见,希望这些少年们,能保持着这样对英雄联盟的热爱,和年少时最简单最自然的快乐。希望当我们十年后,二十年后回忆起这七天,不要如古人那般:欲买桂花同载酒,终不似,少年游。

愿体验营的朋友们,未来精彩,愿RNG,无畏向前。

不同:

Genetic Algorithm

更加偏生物进化实际。MUTATION时是某个基因变异。CROSSOVER同理。。和生物交配有点像。

Differential Evolution

更加数学化。所有element都由数字表示。同时MUTATION不再是随机。而是
$$
V_1’ = V_1 + scale\times(V_2 - V_3)
$$
其中 V1,2,3 都是随机挑选的上一代成分。(mutation变成了由scale subtration 等数学operation组成的新operation)

毫无疑问,电竞相比传统体育更有潜力,但同时也有着许多先天或后天不足的行业。

先天的不足我们无法避免,但也必须认识到不足在哪,这样才能思考如何巧妙的隐藏起这些先天不足。依我拙见,先天不足主要两点,1. 电子竞技以游戏为载体,而游戏具有时效性,同时又与游戏开发商有着直接关系。2. 游戏先天的吸引力导致更易成瘾。虽然传统体育也是从游戏发展而来,但是初期并不是以让人想玩,让人想花钱玩为直接目的,譬如篮球只是某个美国体育老师开发的供学生体育课娱乐的活动。而所有(非情怀向)游戏的最初目的

只有一个:吸引玩家玩。这两点无可避免,但其实说白了并不是电竞的不足,而是电竞的载体-游戏的不足。因此,为了隐藏这个缺陷,必须得有个长久的计划:慢慢使人相信游戏不等于电竞。其实所有的事物都有先天不足,而什么能被人接受只是取决于什么能被人们相信,就像人们相信私有财产神圣不可侵犯,相信贸易一定能带来双方受益,所以资本主义大行其道。幸运的是,我们要做的和后天不足要解决的是有着相同目标的。

后天不足我们可以解决,而其实大部分的缺陷(或者说缺陷的解决方法)都是相辅相成的,因此解决起来并不是需要按点解决。最明显的两个后天问题在于社会认同感的缺失和电竞行业的不专业性。社会认同感是日积月累的结果,长久的网瘾少年的宣传,让人们相信电竞=游戏=玩物丧志,而同时职业选手短暂又不明朗的职业生涯,以及退役后的生存问题也使得许多家长望而却步。要改变这种社会认同感,可以对症下药。譬如能否寻找途径为青训选手保留学籍甚至学训合一拿到高中文凭?譬如能否多在大一大二的年轻人中寻找选手,消除大众对比赛选手=网瘾少年的刻板观念?这些建议其实与第二点息息相关:电竞行业的不专业性。不专业性一定程度是因为资本问题,随着这两年大量的资本融入,似乎这个问题肯定能得到解决。但事在人为,能推动电竞发展的不是冷冰冰的钱,而是前仆后继的电竞行业的从业人员。因此,既然得有人这么做,那为什么我们不做这出头鸟呢?看似资本注入,但其实给外界表现出来的形象仍然是五个网瘾少年打游戏,教练点外卖,其他工作人员微博办公。专业性有选手、俱乐部和联赛层面,选手是否有意识(或者说是否有人教育他)自己是一个公众人物,青年偶像?选手每天的训练是否真的专业(职业篮球选手的一天不会只有打野球和打训练赛)?俱乐部是否有全面的职能配置(比如我感兴趣的数据分析师是做什么的?难道就是一个统计员?有没有运用自己的数学技能作出分析,需不需要每周将分析的结果汇总报告?)?俱乐部是否有严格的规章制度,清晰的合同条款,是否会除了提供电脑外给选手其他帮助(公关?体能?法律?)?联赛是否有明确公开的管理机制,还是说腾讯黑箱投票?这些提到的粗鄙想法只是我的浅陋建议,我相信电竞的未来会更好,也相信RNG的未来更为明朗,祝愿RNG能成为中国电竞产业的“皇马”。

如果想产生一个[0.01,0.02,…,1.00]的list:

1
2
3
4
5
NOTE: FOR python3 only.
np.arange(0.01,1.00,0.01) WRONG!
-> 0.01,0.02,0.03000000001,... Just an example
[i*0.01 for i in range(1,101)] WRONG!
[i/100 for i in range(1,101)] RIGHT!

Some Terms

Ground Truth boxes: The masks labeled in the original data.

Paper writing

  • Historically speaking,…
  • conjecture 推测
  • Qualitative results 一些example
  • elucidate 阐发。make something clear

RCNN

Key contributions

  • proposed the impotance of features.

    Features matter, the first sentence of RCNN paper.

  • Generalize the CNN classification results on ImageNet to object detection

    BY

    bridging the gap beween image classification and object detection.

Modules description

generating category-independent region proposals. Use Selective search ( a traditional machine learning method).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Input: image
Return: a set of proposals

Regions Initializer: R = {r1,r2...}
for each ri, rj in R:
cal similarity of i,j: s(ri,rj)
S = S and s(ri,rj)
while S not empy:
get s_max= s(ri,rj)
rt = ri + rj
remove s(r*,r*) including ri and rj
S = S and St
R = R and rt
return bounding box of each region in R

Feature extraction

Proposal transformation
  • tightest square with context (context for fulfill 227,227)(context:前后关系。此处意为proposal再图像里的左右部分 )
  • tightest square without context
  • Resize and zero padding
Train:
  • Positive data: proposals with IOU > 0.5 and Ground Truth labels
  • Negative data: proposals with IOU < 0.5

A CNN model.

Input: $(227,227,3)$

Output features: $(4096)$

Class-specific linear SVMs (class independently)

For each proposal, SVM generates an expected class and corresponding confidence. Final results only include proposals with IoU (Intersection of union) [Bounding box] overlap with a higher scoring selected region larger than a learned threshold (pretty important according to the paper).

Train:

  • Positive data: Ground Truth labels
  • Negative data: proposals with IOU < 0.3
  • Dropped data: proposals with IOU > 0.3 (Too much positive samples which do not emphasize precise localization)

Visualize method

Features

Use 10M+ images as input, for each feature unit, a output value will be generated. Then rank the 10M+ value and show images with corresponding top 10 values. (Speak for themselves)

1523806612856

[Each row indicates the result of each feature unit]

Ablation(切除)
  • Convolution layer has sufficient representational power of image. (更偏于原图)
  • Fc 更偏于 features. The fine-tuning of fc will benefit more because features of different tasks are different.(But the deep representation format of same image has no much difference)

Bounding box regression

Train
  • Positive data: Region proposal with biggest IOU and IOU > 0.6. ($P_x,P_y,P_w,P_h$)

$f(P_x, P_y, P_w, P_h) = (\hat{G_x}, \hat{G_y}, \hat{G_w}, \hat{G_h})$
and
$(\hat{G_x}, \hat{G_y}, \hat{G_w}, \hat{G_h}) \approx (G_x, G_y, G_w, G_h)$

  1. shift. $\hat G_x = P_w d_x(P) + P_x , \text(1).\hat G_y= P_h d_y(P) + P_y , \text(2)$
  2. scale.$\hat G_w= P_w exp(d_w(P) ), \text(3).\hat G_h= P_h exp(d_h(P) ) , \text(4)$
  3. Four real parameters: $d_x(P), d_y(P), d_w(P), d_h(P) =t_*= (t_x, t_y, t_w, t_h) $

$W_* = argmin_{w_*} \sum_i^N(t_*^i - \hat w_*^T\phi_5(P^i))^2 + \lambda || \hat w_*||^2$

$t$ : real changing needing to do.

$w$: learned changing, which need to be regression.

Fast RCNN

Drawbacks of RCNN

  • multi-stage pipeline trainning
  • training is too expensive
  • slow object detection ( proposal and the convolution forward of each proposal is the major time-consuming part )
    • solved by: SPP nets(spatial pyramid pooling networks)
      1. computes a convolutional feature map for the entire input image instead of each proposals.
      2. classifies each proposal using a feature vector extracted from the shared feature map (by max-pooling to a fixed size output such as $6\times6$)

Contributions

  • Single-stage training
  • No disk storage is required for feature caching

Architectures

img

Two differences:

  • feature maps are calculated using proposals, but entire image.
  • Prediction of class id and bbox regression is implemented using one single network. ( instead of SVM + FC)

ROI pooling layer

Any size($16\times20$ for example ) of ROI’s corresponding feature maps will be transformed into fixed size(7*7 for example).

Using a windows of size($16/7\times20/7$) to do max pooling.

backwards calculation

derivatives are accumulated in the input of the ROI pooling layer if it is selected as MAX feature unit.

Scale invariance: to brute force or finesse?

Brute force: fixed size ( single scale)

finesses multi scale

Multi-task Loss

Overall loss = Loss of classification + bounding box regresssion

Typically, The bounding box loss is different!

$L_{bbr} = $

  • $0.5x^2\ if |x|<1, where\ x =(predicted-label) $
  • $|x|-0.5\ otherwise$

To avoid exploding gradient . (Previous $L_{bbr}’ = 2|x|$)

Mini batch sampling

Mini batch size = 128 = 64 RoIs /image * 2images

RoIs = 25% proposals generated AND IoU>0.5

Non Max SUPPRESSION

一组 iou > IOU_THRESHOLD 的proposals。以 iou排序, 选取最大的那个proposal, 计算其他proposals和他的iou,大于 NMS_THRESHOLD 的 全部删掉 (和最好的那个重复太多),一直重复遍历。

晓霞牺牲了。

读到此时,不禁涕泗横流,忽然明白了不忍卒读的意味。书里面的晓霞是如此的美好,少平每次生活中乌云密闭的时候,她便会如阳光一般驱散所有的阴霾。她体贴他,知道少平不愿意她去看他的破住处,她还关心他,看到了破烂的被褥后自己偷偷给少平换了一床全新的被单,她还深爱着他,不管阶级差距如何、生活差距怎样,都一如既往的、哪怕少平吃醋了小心眼了,也一如既往的热忱的表达自己的爱意。

但是悲剧就是把这样美好的女主角摧毁给你看。

书中的故事太多了,几十万字里饱含了贫苦家庭或一般家庭会面临的种种问题,不管谁都能从书中读到自己。譬如少安三兄妹年轻时候的懂事,我仿佛也看到了小时候那个小心谨慎生活着的懂事的自己。

但是平凡的世界不是童话,再多的故事往往总会有悲伤在其中。润叶和少安青梅竹马,两小无猜,但是少安最终还是屈服于了阶级差距,说到底还是屈服于自己的思想差距。虽然两人都遇到了深爱他们的对象,但是两个人的爱情却也都不完美,忙活了整本书的少安和秀莲,好不容易可以享一点幸福时,秀莲却倒下了。而润叶更是在悲剧发生后,才愿意接受自己的选择。

但是平凡世界中的人们却不会平凡。哪怕路途艰险,少安、少平总会咬牙坚持过去,我想这也是他们人格魅力所在。少平背砖血肉绽开的画面我从初中就难以忘怀,少安欠了一万多的债时差点一蹶不振,但幸运的是有他的秀莲,帮助他度过了难关。

路遥先生觉得少平和晓霞的爱情太过完美,在那个时代不是正常的,只可能是童话故事。但我真的相信,受过足够多书本熏陶的两人,是有足够的勇气和眼界去拥抱爱情的,而且书中的“完美无缺”的田福军,也不是如田福堂一般的”老古董“。

田晓霞,这也许是八十年代那一代青年幻想中的最美好的女生,但不论时光如何变化,社会怎样变迁,她身上的可贵品质:正直、热情、眼界开阔、不嫌贫、执着、对爱情的向往和忠贞,也是我等之辈可以学习的。

河南人

河南人是中国的吉普赛人,全国任何地方都可以看见这些不择生活条件的劳动者。试想,如果出国就象出省一样容易的话,那么全世界也会到处遍布河南人的足迹。他们和吉普赛人不一样。吉普赛人只爱飘泊,不爱劳动。但河南人除过个别不务正业者之外,不论走到哪里,都用自己的劳动技能来换取报酬。

润叶和少安的故事

有一次,同学们在校院里玩“找朋友”的游戏。他不敢到人圈里去,因为他屁股后面的补钉又绽开了,肉都露在了外面。他看别人玩,自己脊背紧贴着教室墙,连动也不就动。有一个男孩子大概早发现他裤子破了,这时就串通几个人一扑上来,把他拉在了人圈里。所有的男娃娃都指着他的屁股蛋“噢”一声喊叫起来,并且起哄唱起了那首农村的儿歌:烂裤裤,没媳妇,尻子里吊个水鸪鸪……女娃娃们都已经到了懂得害羞的年龄,红着脸四散跑了。   他又难受又委屈。下午放学后,也没回家去。他一个人转到金家祖坟后面的一个土圪崂里,睡在地上哭了一鼻子。土圪崂上面就是高高的神仙山。他想起了老人们常说的那个下凡的仙女;也想起了那个痛哭而死的男人——那男人的眼泪就流成了脚下的哭咽河。哭咽河,哭咽河,男人的眼泪流成的河……   他突然听见润叶轻轻地喊他。他慌忙坐起来,臊得满脸通红。润叶站在他旁边,说:“我回家里拿了针线,让我给你把补钉缝一缝……”   “你不会做针钱!”他不愿让润叶缝那块补钉——因为那是个丢人地方。   “我学会做针线了,让我试一下!”润叶说着便蹲在他身边,硬掀转他的身子,便笨拙地给他缝起来了。那时润叶才十岁,说不上会做针线,只是胡串了几针,让原来的补钉能遮住羞丑。她的针不时扎在他的屁股蛋上,疼得他直叫唤。她在后面笑个不停。勉强缝完后,她让他站起来走一走。   他刚站起来走了几步,就听见后面“嘶”的一声——又破了!   润叶捂住嘴,笑得前伏后仰,说:“没顶事!让我再缝!”他赶忙说:“算了!我回去叫我妈缝……”

少安放弃求学

对父亲说:“爸爸,我回来劳动呀。我已经上到了高小,这也不容易了,多少算有了点文化。就是以后在村里劳动,也不睁眼睛受罪了。我回来,咱们两个人劳动,一定要把少平和兰香的书供成。只要他两个有本事,能考到哪里,咱们就把他们供到哪里。哪怕他们出国留洋。咱们也挣命供他们吧!他们念成了,和我念成一样。不过,爸爸,我只是想进一回初中的考场;我要给村里村外的人证明,我不上中学,不是因为我考不上!”

少平的人生感想

他现在认识到,他是一个普普通通的人,应该按照普通人的条件正正常常的生活,而不要做太多的非分之想。当然,普通并不等于庸俗。他也许一辈子就是个普通人,但他要做一个不平庸的人。在许许多多平平常常的事情中,应该表现出不平常的看法和做法来。比如,象顾养民这家伙,挨了别人的打,但不报复打他的人——尽管按常情来说,谁挨了打也不会平平静静,但人家的做法就和一般人不一样。这件事就值得他好好思量思量。这期间,少平获得了一个非常重要的认识:在最平常的事情中都可以显示出一个人人格的伟大来!

知识的力量

顾养民渐渐觉得,孙少平身上有一种说不清楚的吸引力——这在农村来的学生中是很少见的。他后来又慢慢琢磨,才意识到,除过性格以外,最主要的是这人爱看书。知识就是力量——他父亲告诉他说,这句话是著名英国哲学家培根说的。是的,知识这种力量可以改变一个人,甚至可以重新塑造一个人。养民自己出身知识分子家庭,因此很能理解这一点。

懂事的兰香

村里来了工作干部轮上他们管饭,家里总要把少得可怜的白面拿出来一点,给公家人做一顿好吃的。客人不会都吃完,最后总要剩那么一两碗。这样的时候,家里人就找不见兰香,她早已经找借口躲出去了,她知道,剩下的这点好饭,应该让奶奶吃。就是奶奶不吃,也应该让爸爸和哥哥吃——他们出山劳动,活苦重

八十年代人民心中的毛主席

孙兰香站在这悲伤的人群中哭着。她想起奶奶和爸爸常给她说的,是毛主席把他们这样的穷人从旧社会的苦海中救了出来。从她记事开始,要是哪一年有了灾害,他们家都要吃国家的救济粮。奶奶和爸爸说,这都是毛主席老人家给他们的!要是旧社会,遇到年馑,不知要饿死多少人呢!他们全家都深深热爱大救星毛主席。每年过春节,穷得哪怕什么也不买,但总要买一张毛主席像贴在墙壁上。现在,没有了毛主席,以后可怎么办呀?

润叶的屈服

她开始动摇了。她的力量使她无法支撑如此巨大的精神压力。当然,除过客观的压力以外,她主观上的素养本来也不够深厚。是的,她现在还不能从更高意义上来理解自身和社会。尽管她是一个正直善良的人,懂事,甚至也有较鲜明的个性,但并不具有深刻的思想和广阔的眼界。因此,最终她还是不能掌握自己的命运。   于是,她的所有局限性就导致她做出了违背自己心愿的决定:由于对爱情的绝望,加上对二爸的热爱,她最后终于答应了这门亲事……

从古到今,人世间有过多少这样的阴差阳错!这类生活悲剧的演出,不能简单地归结为一个人的命运,而常常是当时社会的各种矛盾所造成的。

NAME: Li Wei

SID: 1155062148

Criteria design

In this section, I will introduce and justify my criteria and state my assumptions I make when designing this kind of criteria. Typically, fuzzy criteria will be highlighted.

  • The stock with highest PE in same type will be excluded. This criteria is inspired by the introduction of PE in the specification:

    PE(Price-Earning Ratio) = Market price / EPS(earning per share). Usually lower is better, but it depends on the PE ratio of the similar stocks. (However, if some types contain only one stock in the database, then this special stock won’t be excluded.)

  • high buying level. High buying level means more stable and has less risk. The following is the corresponding fuzzy membership function.

    Buying level 1 2 3 4 5
    $\mu_{high_buy_lv}$ 0.1 0.3 0.5 0.7 0.9
  • high difference. High difference level means that the stock may have more profit but also more risk. The following is the corresponding fuzzy membership function. However, the difference between ‘too high’ and ‘very high’ is not huge. Therefore the fuzzy memebership function is not linear.

    Difference 0 25 50 75 100 125 150 175 200 225 250
    $\mu_{high_diff}$ 0.0 0.2 0.4 0.6 0.75 0.8 0.85 0.9 0.95 0.98 1.0

Query

This section is to introduce the query we design:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
STOCK_CLASS(NAME) (or ((and (= Type SEMI) (< PE 31))
(and (= Type WWW) (< PE 66.4))
(= Type TECH)
(= Type FOOD)
(= Type GAME)
)
(and
(High_BUY_LV
(1 2 3 4 5)
(0.1 0.3 0.5 0.7 0.9)1)
(High_DIFF_LV
(0 25 50 75 100 125 150 175 200 225 250)
(0.0 0.2 0.4 0.6 0.75 0.8 0.85 0.9 0.95 0.98 1.0)1)
)

Calculation

Non-fuzzy criteria

The stock with highest PE in same type will be excluded.

NAME PRICE ORIGI N TYPE PE PE_LV BUY_LV DIFF DIFF_LV
AAPL 167 US TECH 18 1 4 33 2
TXN 110 US SEMI 31 2 4 47 2
FB 187 US WWW 35 2 5 43 2
MU 44 US SEMI 7 1 5 80 3
BABA 205 CHN WWW 55 4 5 101 4
KM 120 CHN FOOD 39 3 4 220 5
SAMSUNG 2325 KOR SEMI 9.53 1 4 25 1
NINTENDO 440 JPN GAME 50 3 4 200 5
TENCENT 59 CHN WWW 58 4 4 230 5
PYPL 85 US WWW 66.4 5 3 90 4
Fuzzy criteria

high buying level and high difference level.

Name Buying level Difference level Membership(min)
AAPL $\mu_{high_buy_lv}(4) = 0.7$ $\mu_{high_diff}(33)=0.2$ 0.2
FB $\mu_{high_buy_lv}(5) = 0.9$ $\mu_{high_diff}(43)=0.2$ 0.2
MU $\mu_{high_buy_lv}(5) = 0.9$ $\mu_{high_diff}(80)=0.6$ 0.6
BABA $\mu_{high_buy_lv}(5) = 0.9$ $\mu_{high_diff}(101)=0.75$ 0.75
KM $\mu_{high_buy_lv}(4) = 0.7$ $\mu_{high_diff}(220)=0.95$ 0.7
SAMSUNG $\mu_{high_buy_lv}(4) = 0.7$ $\mu_{high_diff}(25)=0.2$ 0.2
MINTENDO $\mu_{high_buy_lv}(4) = 0.7$ $\mu_{high_diff}(200)=0.95$ 0.7
TENCENT $\mu_{high_buy_lv}(4) = 0.7$ $\mu_{high_diff}(230)=0.9$ 0.7

Conclusion

Therefore, the system will select BABA to buy from our calculation.