-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlstm.py
317 lines (200 loc) · 32.1 KB
/
lstm.py
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
# 搭建简单的LSTM模型用于生成旅游评论
import numpy
from keras.models import Sequential
from keras.layers import Dense
from keras.layers import Dropout
from keras.layers import LSTM
from keras.callbacks import ModelCheckpoint
from keras.utils import np_utils
import os
# 读取txt文件
srcfolder = '/Users/jianshuo/OneDrive/2020/百姓研究院/自动分段实验/20200625/baixing'
raw_text = ''
for f in os.listdir(srcfolder):
if f.endswith('.txt'):
with open(os.path.join(srcfolder, f)) as f:
raw_text += f.read().lower().replace('\n', '')
raw_text = '''这几天上海的天气出奇的好,天蓝得跟很多年以前似的,云跟假的似的,能见度高到可以看到地平线,太阳刺眼到下山的时候都不太敢直视。自己拍了几张照片纪念一下这漂亮的日子。
我发现一个非常确定的规律,就是每次东南沿海刮台风的时候,上海就出奇的美丽。研究了一下地理,发现这个规律是有道理的。
上海位于北纬31度左右,正好位于西风带的南边边缘的地方。所谓的西风带其实是南风带,就是副热带高气压带向副极地低气压带常年吹的南风,在地球自转的影响下受到向右的力,就跟水池的漩涡一样,向西偏去,所以形成了西风带。整个这个维度的地球表面转一圈都是常年刮西风。
这西风产生的影响很多,但和我自己的生活紧密相关有这么几个:
飞机往东飞会快一些,往西飞会慢一些。上海飞旧金山预计时间是11个半小时,回来就是13个小时。因为飞旧金山的飞机上一直可以看到尾风,就是那著名的西风。
西海岸的城市就是比东海岸的城市幸福。因为西风的缘故,西海岸的城市的风是从海洋上吹来。海洋冬夏温差没有陆地那么大,冬暖夏凉,所以美洲西海岸的城市一个比一个幸福,比如西雅图,旧金山,洛杉矶,圣地亚哥,这些维度都比上海高,甚至温哥华比沈阳的纬度还高,多超过铁岭了,但是依然冬暖夏凉。欧洲大陆的西海岸也是一些舒适的城市的,从北欧的奥斯陆,哥本哈根,到阿姆斯特丹,到法国南部,到整个葡萄牙,里面的整个地中海都很舒服。同样维度的美国东海岸那简直就是冰天雪地,比如纽约,华盛顿啥的。中国只有东海岸,这一票城市一年四季吹的都是西风,唯一的区别是内陆一点的吹的是西伯利亚来的西北风,靠南一点的吹西南风而已。
西风的大量的吹过来的就是内陆的空气,冬季干燥,寒冷,雾霾严重。所以大多数时候上海是灰蒙蒙的。但是台风一来就不一样了。台风强劲的大漩涡让江浙这一带变成了东风。东风来自海上,东海岸一下子变成了西海岸才刮的海风,自然空气也清新了,水分也多了,天也蓝了,云也多了,整个上海漂亮得跟不是上海似的。同时台风一来上海这里就形成了一个低压带,空气是从上往下沉的,地上的雾霾很难升空,云朵也会压的很低很低,就像这几天这样子。
以后上海再这么漂亮的时候,八成会是这么个景象:某地的同胞们正在拼死抵抗台风,云朵一定是低低的,看着云朵,一定是从东方的海边不断的向西方漂移的。
对了,我忽然想起来,火烧赤壁的时候那长江流域常年刮的一定是西风,诸葛亮掐指一算,“万事俱备,只欠东风”,那东风,难道是福建的台风吗?在商店里面买单,旁边的一位50岁左右的顾客问有没有折扣。店员说加入会员就有,只需微信扫码,点关注就算加入会员了。这位年纪不算太大但也不年轻的顾客坚持说,手机这东西我搞不来的,你来帮我操作。店员说我教你。顾客说我学不会的,你帮我干了就行了。如是纠缠了半天。
要说微信他是装了的,应该会最基本的操作。微信扫码这事情还真不是什么高深的学问,看一遍应该谁都学得会。学会了呢,肯定比每次求人来操作省时省力一点。那他为什么就不学呢?一定是什么阻止了他去学习。
其实阻止他的,也在阻止我们每一个人。我把它称作认知的围栏。它是一种对自己是谁的认知,觉得自己是什么,不是什么。在自己认知领域的事情,就会花精力去学习;而觉得自己认知以外的领域,就自动的关闭了学习的能力。这个无形的围栏把自己框得死死的,让自己不越雷池半步。
举几个自己的例子。
做菜这事,就在我的围栏之外。我从小就觉得自己不会做菜。我宁可自告奋勇的洗碗也没有尝试过做菜。越到后来自己做菜的必要性越小,直到退化到会烧开水却不太会煮米饭的地步。和我相反,太太基本上对于带电的插座呀,网线呀也是放在自己的围栏之外的。要说换灯泡这事也不比微信扫码难太多,却难倒无数女人。原因就是潜意识里面男人觉得做饭让自己更像女人而女人觉得自己搞电的东西让自己好像男人,这和自我认知不符。
认路是另一个男女都有认知围栏的领域。很多男人是不理解女人为什么看不懂地图的,我也是不很理解。但反过来,我发现在商场里面迷路这件事情也是女人可以笑话男人的。我去了静安嘉里中心无数次,找一个店还是跟第一次去一样,几乎需要动用“广度优先遍历”算法。
今天因为思考了围栏的事情,稍微花了一点点注意力,放弃了我依赖的男人思维方式(在脑子里面画地图),而是用女人擅长的哪个楼梯下去的哪个店隔壁就是这样的方式去思考一下,总算是永久的记住了店的位置。要说,跨出这一步也是简单得不得了的事情。
我们每个人都有各种各样的围栏,把自己拦住,我不会画画,我不会跳舞,我不会编程,我不会管理,我不会。。。。围栏越多,学习的机会越小。
不是每个人都需要在所有的领域都成为专家,有限的精力不能分散到方方面面,但有的时候,用小得忽略不计的努力就可以进入一个新的世界,我们就应该跨出自己认知的围栏。
至少,跨出一小步。近期丁香园的关于期权的纷争对创业环境产生了不小的负面影响,让创业团队对于期权的担心快赶上食品安全了。连以前多次表示不感兴趣的小排同学都开始到处找期权文件看。所以现在写一篇文章,帮创始人和团队理一理期权的事情,尽一点创业社区里应尽的义务。
本文先按照境外架构来讲,就是期权发放主体在开曼群岛或者BVI的公司,因为法律简单清晰而且现在还是主要的方式。国内的期权晚些再说(都卡在公司和个人你情我愿的约定法律却不允许上面)。
期权怎么设计?
通用的条款是:
发放时规定行权价(grant price)和起始日(commercement date);分4年行权;工作满1年,vest全额的1/4,剩下的每个月可以vest剩余部分的1/36;离职后90天内有权利按行权价向公司支付已经vest的股票价值获得股票,未vest的部分取消。(当然法律文件有严格得多的表述)
我的建议:大家一切按照常用方案设计,没有特殊的原因不要改动。
现行的股票期权制度在硅谷和全球造就了很多伟大的公司,无数的律师,风险投资家,创业者不断改良,通用的条款已经比较成熟,vest时间长短的选择,vest的过程设置,还有很多时间和比例的细节都已经很多次推敲了。最重要的是,这是他们是在经历了无数创业故事愉快或者痛苦的结局以后反推过来设计的,很多的安排并非在刚刚创立公司的时候的创始人可以预料得到的。
人的精力有限,选择不在期权方案上面创新,是有所为,有所不为的体现。要是你亲身经历了太多的创业故事的全过程从中发现了什么原来的设计不合理的地方,那就另当别论了。
期权文件谁来写?
股票期权落实到纸面上需要几份文件。一份是《Share Incentive Plan》,这个就是我们所说的期权文件。百姓网VIE时期的期权计划是36页,320个段落,10万多个字符,在加上一份十几页的常见问题回答,很显然不是专业律师写不来的。我建议大家如果还没有这份东西,一定要找好的律师事务所写一遍。我以前合作过的美国几个大的律师事务所都很不错,比如O'Melveny & Myers (OMM),Latham & Watkins (L&W;),Gunderson Dettmer, Orrick等(他们大多有中国办公室)。他们的几个合伙人做的文件都很棒,毕竟这事情对于他们来说轻车熟路。虽然看起来几万美金的费用对于A轮融资的公司看起来很高,但对于公司的长久发展这是期权领域的法律基石。这个钱不能省。这个钱不能省。这个钱不能省。
有一个靠谱的律师参与,期权设置自然会很干净。基本上之后不再会出现太大的纠纷。以后哪怕一个黑天鹅事件发生了,律师基本上都会在这份文档里面找到相应的条款,我们只要按照这个条款规定的进行就好了。
这份股票计划不需要被授予人签署,只需要董事会通过董事会决议通过。只要通过了,公司就有了董事会(代表股东)的授权,就可以发期权。也就是说,之后再以董事会不同意做挡箭牌说事儿可以省省了。
另外一份是公司和被授予人签的《Share Option Agreement》。这个每个人的文档都不一样。这个就是写明股数,行权价,开始日就好了。基本上就是一页A4纸。双方签字。这个拿好,可以压箱底了。除此以外,大家是有权力去要求拿到一份前面所述的很长很长的员工期权计划的文档的。
期权文件里面有什么?
我开玩笑说,看一个期权文件里面对于期权被授予人死亡的情形的规定的详细程度答题可以看出这个文件的严谨程度。
若是连死亡,离婚,伤残这样的低概率事件都做了规定,就更不要说离职(主动离职,被动离职),公司控制权转移(被收购,破产,上市,重大重组)这样的大概率事件了。
作为经历过创业公司的10年,并且对与法律还有一些兴趣的人来说,这些文档有点像悬疑片一样,从前往后看是看不出什么玄妙的,看了大结局之后往前再看一遍才能理解很多情节设置的必要性。举个例子:签署期权协议的时候需要被授予人的配偶也签署一份同意函,以避免被授予人以另外一半只有权利而没有义务的不合理抗辩。像这样的事情不是过来人是很难想到的。
这些都交给律师起草就好了。这些情形的处理也都是有章可循的。因为没有发生而且大家都认为是小概率,所以事先约定的时候就好像看别人的事情一样,比较容易按照合理的方式约定。
离职呢?
如果是股票期权,离职的时候已经vest的怎么办?离职的时候,只要在规定的时间(一般90天)把已经vest的期权数乘以行权价对应的钱交给公司就可以获得股票。这个不需要签署其他的什么文件的。期权的事情都是在入职的时候谈好的,离职的时候不需要谈期权,照约定进行就好。
离职的时候单方面重新谈期权的事儿就是耍流氓。
离职还要给公司钱?
对。通常离职之后的90天期权被授予人是需要决定对于vest的部分是行权还是不行权。期权是“买”股票的权利,不是“卖”股票的权利。期权协议只保证大家可以一个固定的价格买到公司的股票,不承诺能卖掉或者按什么价格卖掉。这个的确需要纠结一下。基于对于公司的未来的判断,行权价,期权总数量等等可以综合考量。
可以不给钱吗?这个回到了期权设置的基本原则里面,就是公平。期权的授予价格就是公允市场价,既不偏向公司也不偏向员工。从美国的会计准则来说,如果创始人和最初的创始团队把公司第一天的价值认定为零还说得过去的话,在公司的发展过程中,尤其是经历了一轮融资以后还认为公司的公允价是零就不合适了。
37号文?
在中国,的确有一个非常特殊的规定,原来叫做外管局75号文,我真的是一字不差的把这个文的名字背了下来,叫做
《
国家外汇管理局
关于
境内居民
通过境外特殊目的公司融资
及返程投资
外汇管理
有关问题
的通知
》
它的确让人陷入即便成为境外公司股东也无法在外管局登记的窘境,所以我们原来外籍的员工就出现在开曼的股东名录里,而中国籍的员工就因为这个规定的限制就没有办法。这时常用的做法,是在离职的时候公司给员工一个延期授权,把期权从90天延期到10年,并且保证在任何未来的变化使称为真正股东的条件允许的时候立刻变更。这也就是实质上保证了员工的期权的长期拥有。
现在的75号文被37号文替代了,规定了期权被授予人而不仅仅是境外公司的创立人也可以做外汇登记了。实际上法律规定了而实际规定因各地执行不同还不确定,但公司是有义务在中国的现实框架下完成自己的承诺的。在这一点上期权被授予人是可以放心的:公司管理层,董事会是不能通过一个决议或者做一个决定就剥夺这部分权力,或者以外部环境不支持为由减少自己的义务。否则就跟某公司董事会开会通过决议把隔壁老王家的房子认定为自己公司的房子一样不被法律支持。
能随意取消吗?
曾经和帮我们撰写期权文件的律师讨论过,公司可以以员工的过错为由取消员工期权吗?答案是按照我们的期权文件,不能。发的期权就好像工资一样,没有权利随意的宣布,因为员工的过错,前面两年的工资无效,限你三天内退还全部或部分工资。若是真的员工有过错,也要经过法律流程证明需要赔偿,然后走赔偿流程,但发出去的期权就如泼出去的水,不可回收。我其实了解到这一点是很开心的。当公司就算是有收回的心也无收回的法律支撑,这才是真正的保证。我建议创业者都按照这样的条款来规定期权。
当然如果期权文件里面写道:董事会任何时候随时可以没有成本的没有理由的取消任何人的期权,那也就得按这个办,但很少有公司在成立的时候就这么写的。若真是这样想,别折腾期权这事儿就好了。
期权是你的。你可以很强势
对于期权所有者,我还是希望给大家一些信心,不用过于担心中国的法制问题,因为VIE结构的期权都是按照开曼或者BVI的法律框架和诉讼流程,和中国法律无关,所有的股票方面的纷争的保护是很国际化的一件事情。既然签署了协议,就按照协议去办就好了。违反协议的结果可确定性相当大。
在下一轮融资,尤其是IPO的时候,创始人,还有公司需要对新的投资人做大量的保证和陈述(这部分的长度和详细程度不亚于期权文档),那个时候这个对于你所持有的期权的归属的纷争是必须做陈述的,否则就是虚假陈述,这事儿很大。被授予人IPO的时候也是可以按照文件规定主张自己的权益。所以合理的解决期权纠纷的责任和压力全在公司身上。有时候很小的瑕疵就会导致上市前功尽弃,更不用说发了期权不兑现这种算是极为重大的事件了。
期权价格
期权是需要定价的。有两个时候需要期权的价格。一个是授予的时候,一个是回购的时候 (当然美国还有IRS 408a规定的交税的时候)。这个基本上会依据市场公允价格(Fair Market Value,FMV)。授予的时候,就是行权价,一般是在上一次融资的时候的价格上打一个折。打折是为了反映普通股和优先股的权利不同的差价,毕竟优先股在清算的时候是最后拿钱的,这对价值的差异影响还是很大的。这个是董事会定的。折扣越大,对员工越好。但是对于美元架构,低于2折未来上市就会有问题(Cheap Stock Problem),因为2折是公司可以合理的争辩这个的确是普通股的最低公允价,再低就比较难解释了。
可以强行回购吗?
公司回购价格又看是强制回购还是自愿回购。我们历史上做过几次自愿回购,就是不定期的按照一个价格买回股票期权,大家可以选择卖或者不卖。只要是自愿的,价格还好,嫌低就可以不卖再等等。但是强制回购,要看期权文件里面有没有这个条款了。即便是有,对于公允价的设定就变得非常的复杂。要是期权被授予人提出异议,要求第三方出具意见是常用的办法,而非董事会定价。
注意:这个中间有很多财务和审计上的问题,一旦出现过一次普通股回购(哪怕只是一股),这个价格就被认定为普通股的新的市场公允价,公司再也不能按照以前的较低的价格发放期权了,否则将来审计上会有很大的问题(公司需要补足差价)。这也就是回购需要小心处理的原因。
回购按我的理解是公司给员工提供一些些流动性的努力。员工离职,公司强行回购所有股票是不明智的做法。1)价格很难确定。的确不能按照优先股的价格(也就是上一轮估值)定价,但是打多少折太难界定。强行定价有很多的费用和麻烦。2)提前支付现金。对于创业公司,尤其是在寒冬将到的时候消耗现金让一部分人先富起来(而且是不通过不合理手段强迫人家先富)对于公司也是没有好处的。3)就算是这部分股票现在价值100万,将来价值一个亿,那也是人家用汗水作为投资换来的,一旦vest了就是投资者了,不要眼红人家所得。没见过谁觉得投资者赚的钱太多了,股票一涨就要强制回购的。
背后的原则
如上都是些实操层面的讨论。但真正重要的是这背后的恒久的原则。我希望我们在制定规则(就是那些法律文件)和遵循规则的时候,思考制定这些文件的背后的原则。
其一,公平和平衡。
在看了这么多的法律文档和期权设计的原则以后,我最深的感触就是对于公平的追求。很多很好的律师在具体条款的拟定的时候也在尽量的追求公平。这就像两人分蛋糕,一个负责切,一个负责挑一样。创始人在切蛋糕,期权文件怎么写由你说了算,但是期权被授予人是在挑蛋糕的。不能保护人家的期权权利的法律文件,或者不履行法律文件,迟早会被发现的。员工可以不再选你这家公司。
制度设计的根本是平衡 - 通过不断的调整利益双方的平衡,达到最大化的共赢。若是有人对这个方案做了过多的偏向一方的安排,最终对于核心成员的积极性的打击,会导致双输的结果。我看到越是有经验的VC,在A轮的投资条款(Termsheet)越是简单,因为他们知道,这里为投资者(也就是自己)争取越多的权利,在后面的B轮里面,B轮就会继承这些条款,而A轮就变成弱势的优先股,C轮进来B轮和A轮投资者相对弱势。在这个条款上面耍小聪明,最终伤害的是包括自己的整体。
其一,事先约定。
一个团队往前走,什么约定都好过没有约定,怕就怕没有约定。所以期权文件就是对各种事件进行约定。这需要一些专业的帮助,来起草一些自己也想不到的情形。
如上是我按照自己经验的理解。我不是律师也不是审计师出身。若有常识性错误欢迎留言指出以便修正。毕竟这不是件小事儿,不能把大家带沟里去。一次去中欧听融资讲座,嘉宾画了个五边形的分析图,说融资需要综合考虑五个方面,投资人的背景,融资条款,估值,融资额,需要的时间等等。然后告诉你每一项都很重要,需要综合考量。
我最恨综合考量。
有经验的投资人就不一样。他会告诉你,“这个时候,别管估值,别管融资额,保证最快融到钱是你最需要考虑的。” 或者,告诉你完全不同的另外一种策略,“你有足够的时间等下一个条款,估值可以低,先不要着急时间。” 这都是有经验的表现。这种片面的,锋利的,有可能不正确的观点才说明他真的知道在这个具体的时点对于公司最重要的是什么。
很多事情,影响的因素挺多的。但最重要的影响因素,经验丰富的人可以一针见血的指出,关节就在这里。这里是纲,其它是目,纲举目张。不得不说,能分析出来很多种因素,已经算是半个专家了,但知道最重要的那个,才是真专家。
一般的医生,会把所有选项摆在你面前,然后问:你选哪个。无论你选哪个,都会告诉你,这么选的风险是什么,让你更加迷茫。一般的出租车司机,行业顾问,律师,经济学家都是这样。
我最信赖的律师在我最需要的时候告诉我,“兄弟,这个地方有风险,但我们必须吃下,我告诉你为什么。” 这才是我需要的。敢取舍,这才说明他真懂。
不成熟的团队常常会来汇报他们做了什么,而不看结果。我们要的是结果,而不是付出。很多人把做了什么跟产出了什么混淆在一起。不客气的讲,在结果相同的情况下,做的事情越多,花的时间越长,动用的资源越多,越是错误的,是在滥用公司资源。“简单”这个核心价值其实是在问,如果不做这件事,结果会有不同吗?有些事情,值得耗尽全部精力好几年的努力去做,因为做了以后会有不同,还有很多事情,“耗尽精力”仅仅意味着,“耗尽精力”而已。
我们听说过很多为了一个细节花费了无数精力最终成功的故事,乔布斯是最典型的。我们看到这些故事常常用来提醒我们做事情要做到最好,但是很少有人注意到故事的精髓,其实是正确的找到那些真正需要花精力的极少的事情,然后,再把它做到极致。一个反例,在NeXT电脑上乔布斯对于机箱外壳完美的直角的追求,就没有导致NeXT电脑在教育系统的成功。
为什么创业公司在最初几个人的时候战斗力最强?因为限制条件逼迫大家看清楚什么才是重要的。公司越来越大,开始注意PPT的配图了,开始做头脑风暴了,然后拿着头脑风暴的结果不加取舍的就开始执行了,这是公司走向危险的开始,而把公司推向危险的人正是最勤奋的人。
所以项目设置限制条件非常重要。卡死目标,卡死时间,卡死资源,卡死时间的目的不是让团队加班熬夜,而是帮助团队做取舍,抓住每一项任务的精髓,把最不重要的舍弃,不要在不重要的事情上花费时间和精力,尤其不要让不重要的事情导致无休无止的拖延。
把一件简单的事情做复杂不是完美主义,也不是考虑周到,常常是取舍的能力不做,整体的经验不做。把复杂的东西做简单,知道那个关节点,才能举重若轻。
知道取舍,就能举重若轻。
取舍之后,精髓其实很轻。周末和全家去开业已经一段时间的上海迪士尼乐园去玩,要不是信用卡送的门票,我们可能不会那么有创意的在35度的高温里面去迪士尼。在看了两场室内的演出躲过了暴晒的早上以后,我们决定去挑战一下最热门的《飞跃地平线》。
排队时间的指示牌显示的是150分钟的排队时间。我们从1点50分开始排队,在6点40分坐上了椅子,耗时约5个小时。
作为一个爱思考的人,尤其是一个经历了5个小时的无所事事的时间的爱思考的人,我当然需要去问一个问题:迪士尼的排队是必须的吗?为什么需要排队?排队的经济学原理是什么?(认识我的人都是知道我经常在这些无聊的思考上面耗费挺多时间。但是5个小时给了我足够的是靠时间)
我甚至有些赌气的问,“不排这么长的队会死呀?” 先说我的结论:“会死,真的会死。不排长队迪士尼乐园会死的!”
排队的作用
迪士尼的排队和大多数的排队的作用是不一样的。大多数的排队是为了削峰填谷。食堂里的排队最典型。因为需求的波动性,有波峰波谷,而服务提供者为了经济起见,不太会根据波峰设计容量,所以在中午12点来的人最多的时候,就会排队。排队的体验当然不好,但是它有一个好处,它可以让波峰的需求先搁置在那里,然后等1点到两点以后本来需求很低的时段慢慢处理。只要有波峰波谷的地方,排队方式是一种经济的选择。电脑系统一定要人为的设计出来队列让需求和处理解耦合就是这个道理。早高峰电梯的排队,iPhone上市前苹果店门口的排队等等,都是这个原理。
但迪士尼的排队不是这样。在迪士尼,需求其实是只有波峰没有波谷的。只要看一下热门的景点的排队时间,系统显示从10点开始就一直是120分钟以上的。换句话说,需求随着时间是一个不断增加的过程,直到深夜关门。或者说波峰时间太长,波谷太短,排队不能缓解这个从10点到21点的大波峰。
迪士尼的排队的不是临时的
还有一种排队是季节性的,比如春运的火车票窗口前的排队。但迪士尼也不是。我最惊讶的是,迪士尼有在中国几乎最好的排队设施。在《飞跃地平线》的5个小时的排队过程中,我只有开始一小会儿是在室外,之后就进入一个类似广场一样的巨大室内空间。这个空间还有巨大的天幕,上面有繁星和流星的动画。整个设施在最终的观影厅室同时容纳87人的,而它的附属排队厅我简单的算了一下容纳1千人问题不大(按每10分钟离开87人,5个小时的排队极端情况下需要容纳2400人)。而且空调设施,迂回的队列,还有精致的排队栏杆。我意识到,超2小时的排队绝不是一个特殊现象,应该是常态。若排队时间小于两个小时,那巨大的排队厅就白建了。所以期待过几年来迪士尼的人会少一些再来的观众可以死心了。
那问题来了,迪士尼在设计的时候就设计好这永久的,昂贵的排队厅是为了什么呢?
排队经济学
既然迪士尼的排队既不是为了应对一天的峰谷,也不是应对季节性的峰谷,而且看起来是一个设计中的正常现象,那么这里面有什么经济学原理呢?
结论很简单:排队越长,迪士尼的利润就越高。
这个问题可以有好多个角度来看,就像一题多解一样。我们分别看一下:
从单个游客角度
从单个游客角度,一张正常成人票价格500元(499元)。每天开园14个小时(10:00 - 22:00)假设平均一个人游客在乐园里面呆10个小时吧,500元按照时间摊销,每小时50元。
园内的游览,休息,排队等是对于迪士尼来说没有额外的成本的。所以如果我排了5个小时的队,相当于为《飞跃地平线》支付了250元的成本。排队时间越长,我支付的成本越高,利润就越丰厚。当然如果我只是游览或者休息,利润更丰厚。
所以虽然迪士尼是畅玩的,所有设施也是免费的,但是你的总时间就是你的本钱,而每个设施的排队时间就是它的价格。
从整体的角度
上海迪士尼每天入园3万人左右,按照每人10小时入园时间,总共是30万小时的时间。这30万小时的时间是必须被消耗掉的。而园内所有的设施一天提供的游乐的总时间是有限度的。比如《飞跃地平线》每次可以提供87个人,一天能够提供的总时间数就是 87 * 14 = 1218小时,另外的几个最热门项目的吞吐量也不是很大。演出项目消耗会大一些,比如剧场一次容纳1500人,一天就是 1500 * 14 = 2万个小时。消耗这些时间的另外一个大户就是游览项目,景色呀,迷宫呀什么的。除此以外的十几万小时的时间怎么办?只能通过排队来吸收了。若是迪士尼的人流量真的达到预测的1500万/年,就是每天入园达到设计的5万人,那就是50万小时的时间需要消耗,而正儿八经的娱乐项目能消耗的时间有限,增加的又是成倍的排队时间。
当然排队的另外一个好处,就是通过经济杠杆(排队是成本)把游客引导到不需要排队的那些大量的观赏性景点去。
迪士尼不排队会死吗?会死。真的会死。
作为一个造价244亿,每天的运营成本也是天文数字的巨无霸,维持它的正常运行,现在每天1500万的收入或许是必须的。那也就意味着现在的排队水平也是必须的。不用排队就能畅玩迪士尼的梦想从经济学角度的行不通的。
但是从另外一个角度来说,迪士尼最优秀的品质就是专业,从工作人员到舞台剧的表演到各种设施,同比同样品质的娱乐来说,算是给了平民老百姓一个相对廉价享受快乐的方式。
迪士尼的排队就跟宜家的自己组装家具,奥特莱斯的远离市区一样,是内置在这种商业的经济学原理里面的。不排队,就不是迪士尼了。
本站仅
'''
raw_text = raw_text.replace('\n', '')
import jieba
words = jieba.cut(raw_text)
terms = list(words)
print(''.join(terms))
print('.'.join(terms))
# 创建文字和对应数字的字典
words = sorted(list(set(terms)))
print(words)
char_to_int = dict((c, i) for i, c in enumerate(words))
int_to_char = dict((i, c) for i, c in enumerate(words))
# 对加载数据做总结
n_chars = len(terms)
n_vocab = len(words)
print("总的词组数: ", n_chars)
print("总的词组类别: ", n_vocab)
# 解析数据集,转化为输入向量和输出向量
seq_length = 10
dataX = []
dataY = []
for i in range(0, n_chars-seq_length, 1):
seq_in = terms[i:i + seq_length]
seq_out = terms[i + seq_length]
dataX.append([char_to_int[char] for char in seq_in])
dataY.append(char_to_int[seq_out])
n_patterns = len(dataX)
print("Total Patterns: ", n_patterns)
# 将X重新转化为[samples, time steps, features]的形状
X = numpy.reshape(dataX, (n_patterns, seq_length, 1))
# 正则化
X = X/n_vocab
# 对输出变量做one-hot编码
y = np_utils.to_categorical(dataY)
# 定义LSTM模型
model = Sequential()
model.add(LSTM(256, input_shape=(X.shape[1], X.shape[2])))
model.add(Dropout(0.2))
model.add(Dense(y.shape[1], activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam')
print(model.summary())
if False:
# 定义checkpoint
filepath="./weights-improvement-{epoch:02d}-{loss:.4f}.hdf5"
checkpoint = ModelCheckpoint(filepath, monitor='loss', verbose=1, save_best_only=True, mode='min')
callbacks_list = [checkpoint]
# 训练模型,每批训练128个样本,总共训练1000次
epochs = 1000
model.fit(X, y, epochs=epochs, batch_size=128, callbacks=callbacks_list)
import glob
filename = max(glob.glob('*.hdf5'), key=os.path.getctime)
model.load_weights(filename)
# 示例的输入句子
import random
r = random.choice(range(100))
input = [*terms[r+10:r+5+seq_length], *terms[r+15+seq_length: r+15+seq_length+5]]
pattern = [char_to_int[value] for value in input]
print("输入:")
print(''.join([int_to_char[value] for value in pattern]))
print("输出:")
# 生成1000个文字
for i in range(1000):
x = numpy.reshape(pattern, (1, len(pattern), 1))
x = x / float(n_vocab)
prediction = model.predict(x, verbose=0)
index = numpy.argmax(prediction)
result = int_to_char[index]
print(result, end='')
seq_in = [int_to_char[value] for value in pattern]
pattern.append(index)
pattern = pattern[1:len(pattern)]
print("\n生成完毕。")