BP神经网络初始权值选择

一直以来尝试着用BP网络解决一些简单的问题的时候出现着各种各样的问题,效果很不理想:用BP网做双螺旋问题,结果正确率不到70%、但是做XOR问题却能很好地解决。和BOSS研究了半天终于明白了长期以来困扰我们的这些奇怪的事情的原因是我们没有对网络进行正确的归一化以及权值初始化

由于网络通畅使用的是sigmod函数,不管哪种形式值域都是很有限的一小段,所以要想做到很好的逼近效果就需要做归一化。也就是吧输出变换到0-1之间。而输入的每个维度通常是变换到-1到1之间。

而初始权值通常使用的是nguyen-widrow算法进行初始化。这个算法的思想比较简单,就是计算每个sigmod函数能覆盖的区间,然后加上随机化出来的。具体的可以看他们的原始的论文:《Improving the Learning Speed in 2-Layered LSTM Network by Estimating the Configuration of Hidden Units and Optimizing Weights Initialization》。在特殊情况下也有用纯粹的随机的权值啦。

以上都是针对BP网络的,至于其他的网络形式可能不太相同但是都差不多吧

ubuntu桌面无限循环登陆

前两天windows系统坏掉了本来打算彻底移居ubuntu。装N卡官方驱动把ubuntu桌面玩坏就不说了了,在安装了某个天杀的的虚拟机之后ubuntu喜闻乐见的循环登陆了……WTF,默默还是滚回windows了

先说一下症状:进入ubuntu的图形登陆界面输入正确的密码,屏幕闪一下,然后重新回到登陆界面。按下ctrl+alt+f1后可以在控制台登陆ubuntu

查看了.xsession-error文件,一大片的错误……总之胡乱的Google一通,发现基本有一下的几种原因:

* 权限不足(我就是这种情况,把把x服务需要的那些都允许root用户能直接访问)
* x服务配置错误
* 服务启动错误

嘛。用N卡的默默滚回windows了

Mediawiki清除全部缓存

(果然百度是不收录https的站点呢,我的wiki百度完全不收录呢QAQ

最近建立了minecraft中文开发wiki虽然没有被百度收录,我倒是练习了不少mediawiki的使用,在使用mediawiki的时候如果你开启了缓存,如果你修改了一个模板页面,引用了模板的页面的内容不会立刻改变。为了更新页面的内容,你不得不手动清除缓存。

清除缓存的最简单的方法就是添加purge参数,但是这样一次只能清除一个页面

google一下发现还专门有清除缓存的插件……果然这是个棘手的问题呢。后来我竟然在百度中找到了一个暴力的解决方案:直接清空缓存的数据库!!!亲测有效,简单暴力

现代浏览器js跨域

js跨域一直是一个让人头疼的问题不过现代浏览器有一种针对API的解决方案就是Access-Control-Allow-Headers。

你可以通过Access-Control-Allow-Headers来控制允许哪些域的js来访问此资源。不过这中方法只是一个折中的方案,如果说使用起来还不如普通的跨域好用。并且ie11以下浏览器并不支持。

不过对于那些开放的API最好还是加上这个头。

nginx可以通过下面的一行来加上这个头,不过域名最好还是限定一下。
add_header Access-Control-Allow-Origin *;

Event与Message的区别

以前在开发的时候一直在混用这两个单词,完全没有咬文嚼字的区分它们,直到今天被某文档打脸之后……现在就写一下event和message的区别

百度了一下,上面的主流的说法是:
Message的来源是外界输入产生的,而Event的来源不仅包含Message,也包含通过变换Message得到的。除此之外,event通常在进程或者线程的同步中使用,而message通常在gui窗口中使用。(大概只限于native windows开发吧)

而Google了一下,得到的结果大概还是有一定的差别的。
根据StackOverflow的说法来讲,(在android开发中),Message是在相互独立的进程中沟通使用的。而更为主要的是一个是通过消息队列实现的,另一个是通过延时发送实现的
根据康奈尔大学的文档来讲:(在JChannel中),event是在栈内的通信,而Message是跨栈的通信

于是瞬间我凌乱了……好吧,大概这个的区别不是很大,在不同开发中还是要查文档(吐血

Minecraft中文开发wiki上线

经过一阵强烈的脑洞,于是前一段时间搭建了一个Minecraft中文开发wiki。后来在Seaform的赞助下搬迁到独立的域名。由DarkYoooooo绘制了wiki的logo。

出于安全因素的考虑,wiki全面启动了https,结果遇到了脑残百度不识别https的情况(没办法,只能放弃百度了)。这么多天Google还没有正式收录也是弄得我很闹心。

总之,不管怎样,多谢大家。欢迎大家来wiki并且贡献自己的知识。

https://mcdev-wiki.org/