上一篇文章还是我在国内准备托福时候写的,现在转眼间两年过去了,在美国的学业即将结束。昨天刚考完了最后一门考试,明天完成最后一次作业,也就跟雪城大学说拜拜了。
在美国的生活确实很安逸,安逸到感觉自己逐渐失去斗志。本来来美国以为是学习新技术,结果发现教学水平其实不过如此,课业基本靠自己吃老本+自学能轻松应付。其实,只有英语是最大的问题,结果两年后感觉英语依旧是最大的问题….
最近终于决心「又」把博客捡起来了。更新一下 Hexo,发现之前用的七牛图床全挂了,导致博客很难看。这里推荐 V2EX 的图床。随后看情况把之前的博文修复一下。
珍惜 2018 为数不多的日子。共勉。
]]>我在写markdown 时会将引用的图片上传到CDN服务器,然而上传步骤略微繁琐而且容易打断写作的思路。
将系统剪贴板中的图片直接利用 CDN 服务商提供的 API 上传到服务器,并返回图片在 CDN Server 上的链接。
PS: 这里选择的 CDN 服务商是 QiNiu
macOS 的系统截屏快捷键是 Ctrl+Command+Option+4
。
截取图片后运行程序直接回上传到设置好的 CDN 服务器并返回短链接。如下图例:
IERA 是我在支付宝实习时写的一个与ODPS交互的半自动化的用于数据分析的可视化工具。
基于Python2.7+PyQt4 开发的,后端使用 Odpscmd 与ODPS交互。
之所以这么做是因为两点:
这也正是坑不断的原因。
如果你看到了IERA,恰好你看到了这个网页,又恰好你想完善IERA。我有以下两点建议&请求:
我估计现在厂内应该出现有 IERA 类似功能的项目了。因为我离职前,正有开发的同事跟我咨询这一套流程。
IERA 作为一个我们组内用的小程序,我觉得从我离开博山组,他的生命周期就到头了。但它的功能已经很健全了(排除一些 BUG 的话),不吹不黑,确实提高了我们分析数据的效率。
在我离开前的日子,情报中心的同学用 IERA 进行分析数据,就已经超过我对它预期了。也可见厂内的完善数据分析工具的工作,任重而道远。
非常感谢博山给我的包容和支持,感谢同事们给我的鼓励和帮助!
现在回想开发 IERA 时,自己有太多的不足,感觉对不起博山对自己的信任,只能给当时的自己打 7 分。如果还能下次跟着博山继续干,我要让自己努力做到 10 分!
]]>多个弱分类器通过一定的方式组合成一个强分类器。
每个弱分类器的训练数据是什么样的呢?
每个分类器不可能全部都用完整的训练数据(这样的话每个弱分类器都是相同的了)。如果按照分类器的数量等分训练数据,每个弱分类器训练一部分数据,万一数据有杂讯,最终结果就容易受影响。比较好的解决方法是引入 Bootstrap .
从N条样本数据中,等比例有放回的抽取N次数据组成新的数据集。
对于K个弱分类器,每个分类器使用 Bootstrap 出的训练数据,然后做相同权值投票。
Boosting是一种思想,得到不同的样本子集,通过不同的样本子集可以得到不同的弱分类器。按照一定的方法对多个弱分类器进行加权融合,最后结果是弱分类器加权投票的结果。
每条训练数据都有一个权值。使用训练数据训练得弱分类器gi(),更新每条数据的权值(增大分类错误的数据的权值,减小分类正确的权值),计算gi()分类器的权值(与分类正确的数据的权值和有关)。再用更新后的训练数据权值训练得弱分类器gi+1(),以此类推。预测结果是多个弱分类器加权投票的结果。
]]>解释:
代码:
1 | 5)) # 对range(5)各项进行str操作 map(str, range( |
解释:
1 | reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) # calculates ((((1+2)+3)+4)+5) |
解释:
代码:
1 | lambda x : x%2,range(10)) #lambda 函数返回奇数,返回列表 filter( |
有多少笔资料(N),就有多少个中心。
物理意义:权重和每个点与中心的距离相关。
方法:假设每个点的权重都一样,那么对于一个新的点,所有点进行加权投票。每一张票的加权值 = exp(每个点到新点的距离)
对于一个新的点,选择最近的K个点,进行加权投票。
RBF Network Learning 这节课中间用了好多课件讲:Full RBF Network的Ein=0,可能会过拟合。所以我们要来找一些合适中心(而不是把所有N个点都当成中心)
方法: 。。。
我们利用 K-Means 选取一些合适的“中心”,然后用这些点做 RBF NNet 的特征转换。
敏感:K的值和初始点位置。
ID501068B5-Z9N86gQ2
]]>网络结构
具体问题具体分析
例如:数字图像处理中得Convolutional NNet(卷积神经网络)是把相邻的像素相关联,距离远的则无关联。
高模型复杂度
Regularization(正则化)
难以得到最优解
计算复杂度大
GPU计算
最关键的点:Regularization和Initialization。
把权重(weights)看做特征转换。那么一个好的权重(good-weights)就意味着能提取输入向量的关键特征。那么样的话,我们甚至可以通过关键特征重新拼凑出最初的输入向量。而我们正是需要这样的 good-weights !
考虑只有一层隐层的神经网络,且输入和输出层都是 $d$ 维,隐层是 $ \tilde{d} $。如下图
$w_{ij}^{(1)}$: encoding weights. $w_{ij}^{(1)}$:decoding weights. 目标函数 $ g(\mathbf{x}) \approx \mathbf{x}$
我们称这样的神经网络是 Information-Preserving Neural Network
性质:
前面说过,权重初始化影响着最终解陷入局部最优解,可以通过 Pre-Trainning 减少这种影响。
结合 Autoencoder 的思想:好的权重意味着提取关键特征,并可以进行复原。
对于一个多层的神经网络,我们由低到高依次对每层进行 autoencoder 的训练。如图:
随着神经元的增多,神经网络的模型复杂度也随之增加。因此在模型中加入 Regularization(正则化)是必不可少的。
问题:一般的学习问题中,nosing对训练的正确性影响很大。
思想:学习得到一个新的分类器,用于“辨别”是否包含杂讯的数据(并转化)。
方法:对正常的数据 $\mathbf{x}$,人工加上noise产生 $\mathbf{\tilde{x}}$ 。学习数据 $ (\mathbf{\tilde{X}}, Y=\mathbf{X}) $ 。这样就可以得到一个新的分类器,这个分类器可以用于将包含杂讯的$\mathbf{\tilde{x}}$ 转化为“正确的”$\mathbf{x}$。
]]>先说对数学建模这个比赛吧。
我上面这么说并不是想抨击数学建模比赛,而是觉得自己完全不适合这个比赛:一是自己太菜,没办法创造吸引人的解法(我觉得这是一个比赛能让你真正快乐的根本);二是对主观性的比赛不太感冒。
正如这次比赛自己也是打了酱油一样:用matplotlib花了几张图,用LaTeX排了一下版。
在这里十分感谢@栾思焘的邀请,让我抱了一下大腿。其实最应该感谢@栾思焘的不是带我做比赛,而是能和@LYX在一起比赛。
这篇文章的中心应该是@LYX。
至少从现在看来,前景看来似乎并不是明朗的。
比完赛一起去吃饭看电影,我突然有种想吻她的冲动,结果在昏暗的放映厅还是被她躲过去了。当时似乎太困了,想不到怎么去面对下面尴尬的状况。不过两个人似乎都心照不宣的没有提刚才的事情。
从电影院出来之后,我是打算去超市买盒巧克力送她啦。(反正当时情况比较特殊,我只能带着她去超市)然后把她骗到超市,要买巧克力。她拉着我怎么也不要T_T。僵持了了好久,最终还是拗不过她,买了两小盒m&m出来了。两个人一人一盒,我拿的是蓝色的。
说实话我当时挺伤心的,因为我想起一些以前的事情。以前李悦也是对我送的东西百般推脱,后来才知道她是觉得两个人本来就不合适,又何必接受别人的礼物。想到这里,我不禁悲伤起来。
从超市出来之后,我表现得比较失落,她问我是不是觉得她没有我想象中的那么可爱了。我说:“不是。”确实不是,我反而觉得她越发可爱了。我想告诉她,我此时多么想拥抱她。可惜我没说,也没有去做。我承认我是不敢,因为我怕伤害,我怕一时的冲动会失去她。
身边有很多恋爱案例,奈何依旧改变不了自己“羞怯”的性格。现在想想这并非坏事。大概每个人对“拥有”的定义不同,而我知道自己需要的一个长期而稳定的关系。而一时的“欢愉”(假设我真的趁机抱了她,吻了她)并不能带来什么帮助。
我以为自己经历过一次恋爱后会变得成熟。但事实还是打破了我的认识,我见到她时依旧会不知所措,依旧会像小孩子一样吃醋。听到她不自觉的卖萌时,心都快要融化掉。或许,我就是那种喜欢把自己的幼稚面展现给恋人的人。
可以称作是“恋人”吗?我又在自作多情了。我承认自己对她一次次的婉拒有一些懊恼。但毕竟大家还不是很熟,不是吗?我们相识于2014.12.5,距今为止不过两个月有余。我相信她是在用时间来检验冲动,如若真是如此,我自然欣然接受。
我有时会感到迷茫,进而难免急功近利。这样确实是不好的。确实留给自己一些时间,好好反省自己,了解对方。
在知乎上看到一篇文章,讲究顺势而生。有人会说逆势而改变历史,但这不过是一句马后炮。大多逆势者亡矣。我说不上来什么叫做“势”,我只能告诉自己:看不懂的不能称为势,令自己迷惑的不能称为势,感受不到的不能称为势。顺从命运更不能称为顺势。
顺势而为,听起来更像一个哲学性的方法。那篇文章讲:两个人没有确定恋人关系更不要在乎什么“情人节”,而是应珍惜在一起的每一天,每天过的就像情人节一样。此为顺势。
长这么大了,也应该明白,属于你自己的东西,努力后会有好结果的。
]]>在代码中输入的空格和回车,在排版时的表现。
有时候我们需要在排版时控制空格的数量、长度:
…
介绍不同扩展名的文件
.tex
LaTeX或TeX源文件.sty
LaTeX宏包文件。可使用\usepackage加载到你的LaTeX文件中.dtx
文档化TeX文件。LaTeX宏包发布的主要格式。通过处理一个.dtx文件就可以得到该LaTeX宏包中所包括的宏代码文档。.ins
为相应的.dtx文件的安装文件。如果你在网上下载一个LaTeX宏包,你通常会发现有一个 .dtx 和一个 .ins 文件。使用LaTeX对 .ins 文件进行处理,可以从 .dtx 文件中提取宏包。当编译LaTeX源文件后,会得到以下文件:
.dvi
与设备无关文件。这是LaTeX编译运行的主要结果。你可以使用DVI预览器预览其内容,或者使用像 dvips 这样的应用程序输出到打印机。.log
上次编译运行的日志文件。.toc
储存了所有章节标题。该文件将在下次编译运行时读入并生成目录。.aux
另一种用来向下次编译运行传递信息的辅助文件。除了其他信息外, .aux 文件通常包含交叉引用信息。.idx
如果你的文件包含有索引,LaTeX使用此文件储存所有的索引词条。此文件需要使用 makeinde
处理。.lof
类似 .toc 文件,可生成图形目录。.lot
类似 .toc 文件,可生成表格目录。作为一个Emacser肯定是用Emacs写markdown的。
我觉得称得上“优雅”需要两点:
既然想优雅的写markdown,我们就需要下面两个插件:
这是Emacs的关于markdown的插件,可以通过elpa直接安装。
现已发现的优点:
让我们先看一下Pandoc的wiki:
Pandoc是由John MacFarlane开发的标记语言转换工具,可实现不同标记语言间的格式转换,堪称该领域中的“瑞士军刀”。Pandoc使用Haskell语言编写,以命令行形式实现与用户的交互,可支持多种操作系统;Pandoc采用GNU GPL授权协议发布,属于自由软件。
所以我们使用Pandoc的目的是:直接预览一个markdown文件
对于Mac,现在可以直接通过Homebrew安装Pandoc
$ brew install pandoc
Emacs的mardown-mode自带预览快捷键:C-c C-c p
。既然我们使用pandoc来预览,就需要修改一下快捷键对应的执行命令:
Emacs菜单栏”option” -> “Customize Emacs” -> “Specific Option” -> 输入 mardown-command
然后再文本框里输入预览快捷键C-c C-c p
对应执行的命令(默认是markdown
):
pandoc -f markdown -t html -s –mathjax –highlight-style pygments
为什么命令长这个样子?
-f mardown -t html
表示把一个mardown文件输出为一个html文件,效果就是在默认浏览器打开一个网页进行预览markdown文件的内容--mathjax
支持LaTeX数学公式--highlight-stype pygments
使用pygments支持语法高亮打开Emacs编辑一个markdown文件,按C-c C-c p
直接在浏览器中预览markdown文件。
终于可以优雅的写markdown文件了。还要再学一下markdown-mode的配置和Pandoc的参数,这样用起来会更顺手。我会把一些使用心得更新在这里。
]]>“论如何在Godaddy注册一个域名”
详见DNSPod官方帮助页面:Godaddy注册商域名修改DNS地址
首先找到GitHub的两个IP地址:192.30.252.153
、 192.30.252.154
然后在DNSPod设置域名。
在博客源文件./source
下创建一个文件名是CNAME
的文本文件,该文件内容只有一行,就是你注册的域名。
例如:
noclyt.com
然后把Hexo发布到Github。
因为服务器同步需要一会,所以访问出现Github的404页面是正常的。大约等十分钟即可。
]]>1 | $ hexo new "My New Post" |
More info: Writing
1 | $ hexo server |
More info: Server
1 | $ hexo generate |
1 | $ hexo deploy |
More info: Deployment
]]>