OI退役记,第四部分,2017省选季(下)

APIO2018T1 New Home 题解 吕欣 题目大意 在一个数轴上: 给定 N 个商店,每个商店有一个开业时间、关门时间、坐标和销售物品的种类 同时有 M 个询问,每个询问给你一个时间 t[i] 和地点 d[i],试求在 t[i] 时刻,一个住在 d[i] 的人,为了买某种商品最远需要跑多长距离。 立即下载

星空璀璨的夜晚,调色板上绘出蓝与灰。
你用深邃的双眼望向夏日的天空,
山坡上的阴影衬托出水仙花的轮廓,
捕捉微风和冬日的寒冷,雪地上斑驳的色彩。
直到现在我才明白,你想对我说些什么,
你为理智所付出的代价,你如何从中解脱。
其他人却不予理会,他们也不知道如何面对——
也许现在他们会知道。
  ——《Vincent》,美国民歌手唐·麦克林

  
  第四天的考试中我得了第二个零分。当天的平均分在30左右。讲课的茹逸中同学痛心疾首,一道题一道题地问:“这题有xx分的暴力为什么不写呢同学们???”用我回来后写的集训总结里的一句话来描述,“他很伤心,我们也很伤心。”连续两次爆零总归不是什么脸上有光的事,因此我暗想第六天(这次集训是隔天考一次)一定得考好一点。
  
  第五天的早晨彭天翼如约前来。他竟然还记得之前在八十中回答过几次问题的前排学生,这让我着实有点意外。更意外的是我们很快就发现他用的是和上次一模一样的PPT。于是他下发了一份集训队作业给我们这些去过八十中并且记忆力不错的人。原本我以为集训队作业是一种要在特定OJ上限时提交的特难题目,结果到那时我才发现原来所谓集训队作业就是从外国OJ上搬来的题;我打算花几个月的时间把这个作业写完,于是就试着从开头写起,结果第一题是道超大模拟,这个计划就此搁浅,以后我也再没去做过什么集训队作业。
  
  当天中午我吃完饭回到机房时发现czqqqaq和dcy11011正站在窗边嚼什么东西。我以为是口香糖之类,直到czqqqaq递给我一颗纺锤形的棕色硬皮果实。我突然想起来他给我的是什么东西——湖南人是吃槟榔的。于是我欣然接过,把它放进嘴里咀嚼。槟榔嚼起来起初没什么味道,我以为它也就仅限于此;结果不到二十秒,整个喉头的肌肉都绷紧起来,脖子感觉像是被人扼住。我连忙冲到阳台上去呼吸空气,dcy11011和czqqqaq看到我这副样子都笑起来,原来他们刚刚吃的时候都着了这一道。难以呼吸的感受过了五分钟才慢慢消散,我一边咳嗽一边想着怎么会有人喜欢吃这种东西?但湖南人的确喜欢吃槟榔,大街小巷都有卖。之后我们再没有人买过槟榔。
  
  第六天的考试如期而至。我大概考了一百二十分——在机房里处于中等水平。彭天翼让我上台去讲第二题的做法,发现没有过的原因是因为某个地方没有写二分(写了二分的人都卡过去了)。正当我在想自己当时为何不加个lower_bound上去时,一位小朋友上台讲了自己复杂度少乘了一个O(n)的高级做法,彭天翼大为称赞并称这是复杂度正确的做法。然后这位朋友就下台走进了和我们一起来的高新校区同学当中。我猜想他和cjr一样初三,下课之后一问才知道:高新校区的yyf同学今年初二,已获NOIP2016一等奖。他是个很机灵的小子,后来我们真正混熟是在CTSC的时候了。
  
  当天下午下着绵绵细雨,放学的时候我一个人从后门溜了出去。从这里一直到师范大学的最南端有三公里的路,后半段是整个在岳麓山景区里的。不管怎么说,既来之则安之,况且我一向有徒步游览的习惯。我没有撑伞,道路两旁有树荫足可挡雨。不过前半段路还颇费了我一番周折——路上正在施工,手机导航完全没用,我只能摸索着找路。来回走了三次我才找到一条若有若无的小道:在两栋宿舍楼之间,有条宽不过一米的石板巷,那里竟是唯一能过人的通道。小巷的那一头,道路一下子宽敞起来。横贯东西的柏油路旁一排排地栽着柳树,随风漂浮的柳条背后是细雨中的岳麓山。再往里走,前来游览的车辆多了起来。雨越来越大,我放弃了进山的打算,进了路旁一家快餐店躲雨。落地窗外的草地上有不少兰草,流线型的叶子被雨点打得不住摇晃。路上来往车辆的灯光穿过水雾,又一层层消散。不远处的岳麓山上绿意葱茏。山上密匝匝交相掩映的树叶,山下树篱间数不清的白色和黄色的花瓣,都被雨水淋的湿透了。我走不了,一直这样坐到太阳落山。现在想来,有一句诗正好形容当时的场景:

  山色空濛雨亦奇。

  晚上回到宾馆,老师竟还没来得及查房。cdsf开门的时候问了句:“你去哪里了?”我用手用力揩干头发上的水,回答他:“到岳麓山下找东西吃。”
  
  第七天来上课的是吕欣,俗称吕老板。这也是我们第一次见到他。他讲数论反演,那三份PPT一年以后我们还拿出来揣摩学习。说实话,在我见过的OIER当中最佩服的是他。为什么这么说?吕欣出自甘肃兰州西北师大附中。能在一个没有OI学习资源,没有学校推广,没有学长教导的境地之下打进集训队,这样的人实在是少——整个甘肃只有他一个。一年之后他来七中讲课,我问及他停课的状况,他告诉我:“除了考NOI前一个月,其余时间都没有停过。”如果把我放到他的客观条件下,我想我也就拿到一个一等奖完事了。我爸对他的评价是:“能像他一样从小地方打出来的人一般都是高手。”
  
  后来数论反演成了我唯一拿得出手的OI知识储备。只可惜正式考试中一次也没碰到过。我应该把时间更多地花在DP或者数据结构上。
  
  吕欣上课的两天雨小了许多,只在入夜时分下一点,天亮之后就停了。下午下课之后我们往往走上两公里,到湘江边上骑自行车去。当时共享单车刚刚兴起,要找一辆空闲的OFO颇为不易(初代摩拜太沉,骑起来很累),不过沿着江边走上几百米,总是有那么一两辆的。江心除了橘子洲,还有几座荒无人烟的小岛,上面长满了芦苇丛,有白色的水鸟栖息。江里有游船,开过的地方留下一串交叉的水波,近处的鸟儿展开翅膀飞远了。江边的自行车道延伸有五公里多,骑一圈再回到原地用不了半个小时。红楼宾馆的餐厅里有一幅“湘江风貌”的挂画,依我见和真实情景实在差不了太多。
  
  最后两天上课的原定是杜瑜皓——当时我还不知道有杜教筛这么个东西,只知道他很强——但不知为何他没有来,因此彭天翼临危受命,又给我们讲了两天课,这次用的是崭新的讲义。第十天,蔺老让我们所有人加上高新来的同学下课后到之前和司机他们聚餐的饭店去吃晚餐。说实话我们和高新的同学混得不算很熟,但毕竟都是七中学生,因此这顿晚餐气氛也挺轻松。蔺老建议我们晚上到橘子洲去散步,dcy11011大为支持。有这样好的事,为何要拒绝呢?于是成都七中林荫——高新联合纵队总计十余人就在西沉的夕阳之下奔赴湘江北去橘子洲头。
  
  过江大桥上人流如织。其时已经入夜,江对面高楼的夜灯亮了起来。光幕一片片地在江面上闪耀,最抢眼的是一块长方形的蓝光,从一整面玻璃墙上的LED灯里发出来的。晚风一阵阵地顺着江水吹拂,走近橘子洲时天已全黑,我唱起《Faded》来,因为我想到电音正配合当下的场景。说实话,橘子洲上并无什么特别有趣的东西,我们在草坪上转了转,时间已经八点过,在老师要求下我们搭地铁回去了——后来dcy11011说如果肯多走一会,走到岛的另一边有雕像的地方风景会更好。回宾馆的路上下了一点小雨,雨点很冷,沁在头皮上使人打寒颤。
  
  第十一天早上,最后一场雨给我们送别。雨季之中的长沙终于被我们抛在了身后。回来的那天成都天晴——更可能是阴天,但是没有下雨,所以被记成了晴天。


  回来之后我们再一次地正式停课,这次时间不长,到省选完就停止。新OJ已经配置完毕,系统用的是UOJ的开源代码,硬件换成了32核的至强,跑起来飞快。省选前的测试里我还是取得了不错的成绩,在高一同学中也算不落人后。过了几天就是四月份,我们被装上车送到电子科大附中去参加省选前的最后几场考试。那几场考试并不重要,我们也不怎么在意,因为前面横着一个巨大的关口:高二的同学只要翻过去,就可免去退役的命运;并且对于不少人而言,只要上了省队线就可满足THU的一本,自此就不用担心没书读了。我们这几个高一的普通选手也想提前一年试试水,看看自己能得多少分。
  
  省选前的最后三天有所谓讲座——虽然讲的东西压根不会考。高二的同学都没有听,我则在下面研究一些高级算法:SAM和FFT。这是我的第二个奇特成就:在学会AC自动机之前学会后缀自动机。虽然这两个东西的板子是大概背下来了,但后来看去还不如不背:其一是压根不理解更不熟练,其二是压根不会灵活应用。并且这在省选第二天还给我带来了负面收益,细节待会再写。
  
  实际上省选对我来说的确没什么重要意义,因此第一天上考场时我是一点不紧张,怀揣的想法是能得一分是一分。进考场看题,第一题应该不难。想了十几分钟,的确只要把所有节点遍历一遍结果就出来了。又花了五分钟证了一下正确性,感觉没有什么问题,就写了然后过了大样例。我想到既然我都能很快想出做法,那这题应该是今天的送分题,也就是说我有保底分了。然后我就去看T2和T3——结果T2的题意到考试终场我都没读懂。T3是道计算几何,不过有30分的暴力。于是我就又花了两个多小时慢悠悠的写完T3,想了好几个特殊情况再把它们一一判掉,直到我再也造不出能把自己卡掉的数据为止,考试时间还有一个小时。我想T2就算有暴力也很难写,于是打开国际象棋,同电脑一直下到考试终场,结果赢少输多。
  
  出考场见到cdsf。他告诉我说T1是个线段树?我再想了想自己的做法,觉得应该实在没有问题,就把它给cdsf讲了讲,他觉得正确性应该有保证。后来我们又看到yfzcsc和wxh,结果他们都写的是线段树——于是我把证明又再过了一遍,觉得实在找不出什么漏洞,就暂且不去想这件事了。和其他同学交流了一下,130分大概算一个不高不低的标准分,我想这也在我的期望之内了,至少今天的结果还算不错。
  
  第一天的成绩出的非常晚。我骑着自行车在电子科大里转了一圈又一圈,每次成绩都没出来。高二的同学们大部分围坐在草地上谈天说地,高一的同学在附近闲逛。张老说今天有计算几何题,多测几次也算正常。结果一直到快五点,成绩才出来。我果然是130分,幸好T1没有挂。但cdsf却只得了20:他的T1和T3都是零分,申诉之后发现T1编译错误,T3没有特判竖直线和水平线的斜率。高一的其他同学大多都是一百多分。高二同学的成绩我没有细看。后来cdsf一直在想自己为何会编译错误,我建议他以后不要想的太复杂。有趣的是,一年之后的省选中,他做到了这一点,我却没有。
  
  当天晚上我,cdsf和nzj一起吃晚饭。nzj翻出目前的全省排名来,我们看了一看,本校的几个高二同学都在比较前面的位置,司机的排名最高。有一位前二十的初三同学引起了我们很大的注意,他是从成都外国语学校来的Joker,不久之后即考入成都七中,后来同我们混的很熟。我想了一想,觉得明天拿个一百多分,省选总分就有两百五十分以上,也算是不亏。吃完饭,买好明天的早点,我就回房间去了。
  
  第二天。我看到第一题,想的是既然昨天有一道简单题,今天就不可能再有了,于是只草草看了看题意,想了个25分暴力,就去看后面的题了。第二题大概是个大规模RMQ——但当时我还没学会好好读题目里的空间限制,于是写完之后只过了样例就去看T3。T3是道回文字符串题,我当时喜出望外,以为可以用SAM解决,于是大干了三个小时,结果一分没有得。这时离考试结束只有不到45分钟了,我匆忙打完了T1的暴力,想着加起来有个70分就能上200,于是又下了十几分钟的国际象棋直到考试终场。
  
  出去之后看到zht111,hhhwsqhhh一干人,他们告诉我说T1是简单的DP,我马上体会到了昨天cdsf的感受。想了想,发现的确是如此。后来总结的误区是不应该在T3这种题上花费太多的时间。当天中午我是怎么过的忘记了,只知道过的不大好。下午的成绩出的比昨天快,三点过就有了——我只得了25分。T2不知为何爆了零。我安慰自己说这是临场经验不足所致。走出电子科大的科技楼大门,看到杨景钦带着高二的女选手Flaze走了过来。我问他T3怎么做,他翻来覆去地讲了一大堆,最后我也没怎么听懂。然后他补了一句话:“这次ns的人很有嫌疑。”我问他是怎么一回事,他让我自己去看成绩。
  
  果不其然。今天的第三题,除了司机和f321dd拿了30分以外,其余非ns选手尽皆是0分,而ns选手中有50的,70的,100分的。再看昨天的T3,ns的满分选手明显比其他学校更多。我们还知道竟有ns选手考前就在QQ群里问了D2T3的做法的。后来有人向CCF举报,调查的结果是不了了之。正当我细看省选成绩表的时候,省队名单张贴出来了。司机位列成都七中第一,其次是高二的四位同学,但今年我们没有进A队的。yfzcsc,wxh,高二的zms和lxl都在省队线上,被三分之一的限制卡掉了。而拿到D类的也只有wxh和lxl,zms不幸退了役。高二的13人现在只剩下5个,那是我们第一次体会到何谓一考定乾坤。
  
  我第一次省选的经历就是这样。凭良心说,我并不反对三分之一名额限制,毕竟弱校选手也得有去NOI的机会,CCF办信息学竞赛也有为国着想的一层在里面。但省选赛制自有它的残酷性:分数就是分数,排名就是排名。不论编译错误,输出格式不对甚或是文件名出问题,简而言之就是你写挂了,然后你就要让位,完蛋,回去学高考。硬币的另一面呢?省选之后有夏令营在,不行还有NOI。一本约这样大的优惠只可能在竞赛中获得,整个高三你都不必像坐在旁边的同学一样拼死拼活,尤其当你生在某些全国出名的高考难省的时候。好刀都是双面开刃的,想要得好处就不能不冒风险。当时我并没有想到一年之后我会以一种毫无尊严的形式退役,不过现在我也并不后悔。
  
  省选的过去让我的注意力转移到了另一项事物上:CTSC和APIO的报名。众所周知,这两项赛事的最大优点就是给外行介绍起来特别有气势:一个“全国精英赛”,一个“亚太地区信息学竞赛”,足以让不明就里的人肃然起敬。但这两项赛事的报名是按照NOIP成绩优先的,所以当时我担心的就是能不能报上名。过了几天,我爸打来电话,告诉我的确报上了名,但和我原先想的却大相径庭,让我不得不采取一些特殊手段。

2013ZJSX1浙江省选oi初测成绩、数据 立即下载

相关推荐

2012ZJSX1浙江省选oi成绩、试题及测试数据

2012ZJSX1浙江省选oi成绩、试题及测试数据

OI退役记,第六部分,暑假生活

  高一剩下的时间里,我白天在教室里兢兢业业地为了期末考试着重复习化学和数学(数学是基础学科,而教我们化学的廖老师以凶悍著称),晚上在机房里写bzoj上面的题。这样一直到了六月底,第一页的题被我基本写完了,几个麻烦的专题例如概率dp和数论也有了一点基本的掌握,一切看上去都迈入了正轨。期末考试分三天考完,而考前的最后一个晚自习我就把教室里的书全部搬进了机房,因为此后至少有半年不用再回教室去上课了。第...

Tangenter的博客 4528

湖南OI 2018 省选试题

2018年 湖南省省选试题 第一天 采用PDF的形式,没有数据。

神仙打架!清华公布2020特奖候选人名单,有人三篇顶会一作,还有人...

作者 |陈大鑫清华一年一度的神仙打架又要开始了!清华本科生特等奖学金是授予清华在校学生的最高荣誉。目前2020年清华本科生特奖答辩入围名单已经出炉,一共有15人入围,每位都是各个院系最...

深度学习技术前沿 1086

光模块数字诊断监控(DDM)功能

DDM(Digital Diagnostic Monitoring)数字诊断监控,由行业组织SFF Committee制定,遵循SFF-8472多源协议定义的标准参数而工作,规范了光模块和网络设备的软硬件所需遵循的标准数值或范围,确保了网络设备供应商和光模块供应商之间所提供产品的互操作性不同。:通过监测激光器的偏置电流来预测激光器的劣化,从而确保在故障发生之前将业务切换到备用链路上或替换有可能故障的光模块,因此起到了预测光模块寿命的作用。光模块DDM信息可以通过SNMP读取光模块的接收光功率和发射光功率。.

光模块的博客 2300

AI赋能传染病建模:从数据到动力学模型的本地实践指南

这次我们来看一个将 AI 与传染病动力学建模结合的前沿方向。想象一下,你手头有一份流感爆发的病例数据,传统的建模方法可能需要复杂的微分方程和大量的手动调参,而 AI 模型能否直接从数据中“学习”出传播规律,甚至自动跑通整个建模流程?这正是当前研究的热点。根据《Nature》的最新综述,人工智能正在重塑传染病流行病学建模,从参数推断、趋势预测到多源数据融合,AI 技术为解决传统建模中的计算瓶颈和数据难题提供了全新路径。 对于开发者、数据科学家或公共卫生领域的研究者而言,最关心的是:这套方法能不能在本地跑起来?

weixin_29051811的博客 298

树链剖分HLD解决子树问题

树链剖分HLD可以将非线性的树结构转换为由若干条树链构成的数组,并对数组采用线段树等手段,在一个令人比较满意的时间复杂度内完成树上路径操作,包括路径查询和路径修改。实际上,树链剖分也可以完成子树相关的操作,而且只需稍许改进即可。 考虑这样一个树以及剖分出的树链数组,可以非常明显的看到,任意节点及其子树在数组中均是连续的,而且一定以该节点开头。例如CC子树为CHLNGIMCHLNGIM,BB子树为B

RBS的专栏 1300

KEIL5编译报错L6200E:__stdout重定义问题分析与解决

本文深入分析KEIL5编译报错L6200E中__stdout重定义问题的根源,指出因未完整定义__stderr导致与标准库stdio_streams.o冲突。提供完整重定义标准流、启用MicroLIB库等解决方案,帮助开发者彻底解决Symbol multiply defined错误,提升嵌入式开发效率。

uran的专栏 954

2016NOI冬令营day1

感冒了!!!: ( 上午听 picks 讲多项式导论(所有内容均不考)只听懂了那个O(n1.585)的多项式乘法算法 : ( 安装好了弹幕!太厉害了(有电脑的都在刷弹幕) : ( 中午吃的不错 : )睡了半小时午觉居然睡着了:| 下午听 茹逸中 讲形式语言与自动机(所有内容均不考)。一开始感觉能听懂,挺有兴趣的,听了一大半之后开始讲一些神乎其神的东西了,同时我头又很痛,又想睡觉,所以根本...

weixin_30580341的博客 157

TK抓包协议分析:So层逆向

第三个参数是一个回调函数,这里他的返回值1表示成功,0表示失败,那我们手动把他Hook为0,让他不支持quic协议,实现降级。等,我们是为了解决抓包问题,那很有可能是在net目录下(network),那来搜索一下。开了抓包以后APP直接是网络无连接了,并且抓到的请求也是不正常的,下面我们就开始定位。看了半天感觉也没啥有用的东西,那下面我们整理一下已经有信息,来猜测一下,后续怎么进行。那可以猜测,我们真正需要Hook的那个函数也有可能是这样加载的,可以字符串搜索一下。

2503_90751938的博客 3417

YOLOv8改进 | Conv篇 | 利用YOLO-MS的MSBlock轻量化网络结构(既轻量又长点)

本文给大家带来的改进机制是利用YOLO-MS提出的一种针对于实时目标检测的MSBlock模块,我们将其用于C2f中组合出一种新的结构,来替换我们网络中的模块可以达到一种轻量化的作用,我将其用于我的数据集上实验,包括多个类别的数据集,其在轻量网络结构的同时,却能够提高一定的mAP精度,所以这是一种十分高效的模块,该网络结构非常适合那些模型精度已经无法提到,想要从轻量化模型的角度入手的读者使用。欢迎大家订阅本专栏,本专栏每周更新3-5篇最新机制,更有包含我所有改进的文件和交流群提供给大家。

Snu77的博客 6094

WC2016总结

第一次去WC就爆零滚粗了,我还是太弱了。 DAY1 休整的一天。 DAY2 第一节课Picks告诉我们小学微积分,初中高等代数是预备知识。 于是这课没法好好听了,只听懂了第一页的Karatsuba. 下午茹逸中讲自动机看起来就和我都听懂了似的,然而我先提升一下代码能力再增加广度比较好吧。 晚上yc5_yc发明了睡袋套被子的数据结构来克服阴冷潮湿的宿舍。 隔壁

hld67890的专栏 706

PS射击游戏射线检测优化:原理、工程与全链路高性能实现

射线池:减少GC,提升批量检测效率。分层检测:先粗后细,远距离射击高效判定。批量检测:并行处理,适合大量射线场景。空间结构:进一步加速大场景检测。下面继续深入射线检测优化,补充更多实用细节和进阶技巧,包括空间分区加速、射线检测多线程/异步化、射线合并与分帧、射线池通用模板、常见性能陷阱与调优建议等。对于极端性能需求,可自定义轻量级物理系统,仅检测关键对象(如玩家、子弹),跳过复杂物理引擎。结合AABB、OBB、球体等简单碰撞体,射线-包围体检测极快。空间分区+分层检测是大场景射线优化核心。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 434

OI退役记,第三部分,2017省选季(上)

我曾走遍世界, 人们见我无处不在…   ——苦役犯伏脱冷口中所哼之歌,巴尔扎克《人间喜剧》      新年的第一个节目是期末考试。我们这些被从机房赶回教室的人毫不意外地考得不怎么样,这也在我们的意料之内,所以也没有后悔或者伤心之类的想法。考完当天下午,我们就把书包从教室里拿走,打算常驻在机房里了。高二的同学们绝大多数都去了冬令营,因此这下404归我们使用,可以宽宽绰绰地一人...

Tangenter的博客 4246

【思考模型框架】前景理论(Prospect Theory),认为人们并不是完全理性的决策者,而是根据一些心理上的偏差来评估选项的价值

前景理论,是一种行为经济学理论。前景理论,描述了人们在不确定条件下如何作出决策。前景理论,认为人们并不是完全理性的决策者,而是根据一些心理上的偏差来评估选项的价值。

奶爸的编程之路,也就一周冷个三天 1642

056:vue+openlayers 风场快速移动效果(图文代码)

本示例的目的是介绍演示如何在vue+openlayers中使用wind插件来实现风场快速移动的效果。

大剑师兰特的GIS世界 1581

JLOI2017——相逢是问候,离别是祝愿

又是一年春花烂漫省选季,成绩公布,又有六省AB类省队尘埃落定 不过逼话还是少说,我也说不出来什么逼话,老老实实写写流水账吧

neither_nor 3582

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

OI教练模拟器:信息学竞赛教练的决策生存指南

决策模拟是近年策略游戏中的热门类型,其核心原理在于通过有限资源与不确定性之间的动态博弈,考验玩家的统筹与预判能力。此类游戏的价值不仅在于娱乐,更在于将现实中的复杂管理问题抽象为可重复的决策模型。在教育、团队管理乃至项目推进等场景中,玩家需要持续观察成员状态、分配训练资源、应对突发事件,而这些操作本质上与信息学竞赛教练的日常工作高度相似。今天要聊的《OI教练模拟器》,正是这样一款以信息学竞赛为背景的文字养成游戏。玩家将扮演一名临时接手的竞赛教练,在有限精力、队员天赋与隐藏状态之间做出权衡,体验从日常训练到省选

weixin_31240035的博客 271

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

THUWC2017 瞎搞记

DAY-1 上午去WC的社会实践搞搞搞 晚上和昌老师,jkxing还有fzw一起坐着大巴去学车 报了一会道进了宿舍 卧槽这个宿舍怎么这么高级! 门是刷卡的! 各种开关是触控的! 每个屋配淋浴间和厕所阳台,两个手盆! 有插座和台灯桌子! 有wifi!虽然连不上-_- 比之前住过的宿舍都不知高到哪里去了 认识了一下同寝的四位神犇,全是四川的,象征性地问了一下名字,反正记不住-_-

neither_nor 2783

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

OI 退役记

现在是2017年12月9日下午3点14分,我干着一个小时前干着的事!!! 因为刚刚浏览器崩溃了!!! 我又没备份!!! 好气呀!!!!!!!!!     闲着无聊的我决定记录下我的oi生涯,一个蒟蒻的学习之旅 一切的开始 大约是在15年11月左右,我被莫名其妙认识的隔壁班同学王叫去机房,参加信息学竞赛? 于是我怀着忐忑的心走向了电教艺术楼,踏上了oi之路。 一进机房就看到了一群...

一个新时代的好少年的博客 961

OI小记

明天要回家了,今天突然非常感慨,随便写点什么吧 感觉想说的话很多,却又不知道从何说起…….小学我不知道能不能讲自己的 OI 事业是从小学开始的 QwQ 小学五年级的时候因为一些原因,受了很严重的伤,不得已要在家里修养两年,刚好那时候爸妈 get 了一台他们用不着的三星的笔记本……大概是 2000 多元的上网本吧,在家里闲着没事干的时候,偶尔翻到一本书说“学习并精通C++也能成为一个优秀的黑客”…

visit_world的博客 3450

OI知识点总结(提高/省选-)

各种总结

玫葵之蝶 2702

2024【NOI 省队 ABCDE 类名额】解读

跟其他四科奥赛不同,信息学竞赛自身特点决定了低年级同学的学习效果未必比高中生差,近年来初中生在 NOI 比赛上的表现非常亮眼,也反映了信息学竞赛低龄化的整体趋势。类名额也是另一类夏令营名额,没有明确的选拔规则,可自行申请,数量根据承办单位场地等情况来定。类名额最后一名的成绩,即是该省的省选分数线,如果初中生成绩高于此线,就能够申请作为。类名额,也称为重大贡献奖励参赛名额,由具有重大贡献的学校直接推荐,数量非常少。类名额是激励名额,各省数量不一,确定规则比较复杂,主要依据的是。类高中选手,也有实力强劲的。

zaiyang遇见 6971

OI退役记,第九部分,过去和现在

您要去斯卡布罗的集市吗? 欧芹,鼠尾草,迷迭香和百里香。 代我向那里的一个人问好, 如果他曾经是我的爱人。 让他为我做一件麻布衬衫; 欧芹,鼠尾草,迷迭香和百里香。 不要有针眼或缝线的痕迹, 那他才是我真正的爱人。 让他为我找一亩空旷田地; 欧芹,鼠尾草,迷迭香和百里香。 在涌动的大海和荒芜的沙滩之间, 那他才是我真正的爱人。...

Tangenter的博客 4063

OI退役记,第八部分,冬天

  NOIP让机房的格局发生了极大的改变。czqqqaq,nzj和最后一个妹子zzj被”YES”送退役了,clh和cby也没有再停课了,整个自习室一下就空出来了不少座位。我们学校内的排名,第一是司机的560分,同时也是四川省的第一名;第二是考了515分的zht111;wxh和yfzcsc以500分的成绩并列第三;第五名是来自信息学大班的ZSY同学,考了495分,我们的机房从此开始招待他...

Tangenter的博客 2999

OI省选算法汇总

 简单列了一点 1.1 基本数据结构 1. 数组 2. 链表,双向链表 3. 队列,单调队列,双端队列 4. 栈,单调栈 1.2 中级数据结构 1. 堆 2. 并查集与带权并查集 3. hash 表     自然溢出     双hash 1.3 高级数据结构 1. 树状数组 2. 线段树,线段树合并 3. 平衡树     Treap 随机平衡二叉树    

Byte97 1009
上一篇: OI退役记,第三部分,2017省选季(上)
下一篇: OI退役记,第五部分,CTSC&APIO2017
徐西岭official
博客等级 码龄9年 168粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值