0%

今天,西安下雪了,2020年的第一场雪,比往年来的早些。依稀记得,2010年刚来西安上学时,第一场雪是12月24日,由于是在平安夜,所以还能记得,一晃都十年了。。。。。。

在CUDA编程过程中,最易出错的部分就是内存的相关操作。时常出现的问题是:程序能够运行,但是其中的Kernel函数未能成功运行。这使得排错相对传统的C语言编程复杂。好在我们依旧可以使用最传统的方法:使用printf函数打印输出进行排查Bug。但是,printf函数在CUDA编程过程中,存在局限性。具体地说,运行在CPU上的代码和运行在GPU上的代码是异步的,运行在GPU核函数中的每个线程也是异步的。这使得printf函数的显示上比较复杂,不是那么直观。

阅读全文 »

现在终于可以着手写大论文了,但是学校官网上的LaTeX模板主要是针对windows系统上的,实验室师兄师姐也没有MacOS系统的LaTeX版本。一想到我本科毕设的时候就是自己按照毕设手册的格式自己制作的LaTeX模板(详情见我之前的相关文章),我准备自己制作模板。转念一想,我是否可以根据官网中的LaTeX模板进行修改,这样可以节省好多时间。其中官网的latex模板可以在研究生院网站上进行下载,见下载地址:https://gr.xidian.edu.cn/xwsy/zlxz.htm 。现在想想,为啥当初为啥完全是自己根据本科毕设格式自己弄的LaTeX模板?可能一方面是因为github上西电本科毕设LaTeX模板好像都是2017年以后的,二是没有找到西电官方的本科LaTeX模板。

本文主要介绍在MacOS系统下使用的硕士或者博士论文的LaTeX模板,Windows系统下的LaTeX应该可以直接使用上述官网的模板。

阅读全文 »

Routine

目前,作为一个科研工作者,我主要的工作流程是在网页中查找文献、使用PDF阅读器阅读文献、以及使用Vim写论文。这一工作流程主要涉及了软件的开启,浏览器的操作(前进、后退、关闭),本地文件的查找与打开。作为一个使用过windows,Linux, macOS系统的我来说,我是极为推崇使用macOS来进行科研工作的(主要为文献阅读,论文编辑,Matlab等常用软件编程)。在apple的所有系列产品中,通过我的使用体验,apple的笔记本是最具有工作效率的。下面我来介绍macOS下科研工作常用到的、能提升工作效率的一些软件操作。

阅读全文 »

疫情在家期间,也在新电脑上准备用vim写科研论文。但是之前配置好的.vimrc文件中的配置在实验室的电脑上,我自己又懒得再配置一遍,于是作罢,选择了sublime来进行科研写作,顺便写了一篇《使用Sublime Text3撰写科研论文》。现在已经在实验室了,于是乎我将我的vim配置文件介绍介绍,放在网上,以防万一。同时,也给有需要的人借鉴参考。虽然去年在文章《使用Vim撰写科研论文》介绍了如何利用vim编写论文,只是介绍了与LaTex相关的插件。这里,我们将介绍一般性的编辑工作所需要的配置。


阅读全文 »

最近开始将CSDN的博客转到个人博客上,主要是采用Markdown将以前的文章保存下来,然后将其用hexo部署到github。在这里,我介绍一下使用Markdown写博客时一些技巧,格式,以及如何用部署到网站上。

阅读全文 »

在去年写的一篇文章《Win10 + VS2017 + CUDA10.1 + CPLEX12.9 配置》中,我们已经介绍了如何安装CUDA和使用VS作为编程环境。一晃半年过去了,现在准备用GPU做点东西,投个会议。由于新换了电脑,我又重新安装了运行环境,结果遇到了如下语法问题:

阅读全文 »

三个臭皮匠,顶个诸葛亮。

集成学习 (Ensemble learning) 通过构建并结合多个学习器来完成学习任务,即先产生一组个体学习器,再通过某种策略将它们结合起来完成学习任务。

个体学习器通常为一个现有的学习算法从训练数据产生,例如决策树,神经网络等。结合策略:在回归问题中,一般采用 (加权) 平均法,在分类问题中,一般采用 (加权) 投票法。当训练数据很多时,一种更为强大的结合策略为学习法,即通过另一个学习器来进行结合,典型代表为Stacking.

根据个体学习器的生成方式不同,目前的集成学习方法大致分为两大类:序列化方法并行化方法。在序列化方法中,个体学习器之间存在强依赖关系,需要串行生成,其代表为Boosting;在并行化方法中,个体学习器间不存在强依赖关系,可同时生成,其代表为Bagging和随机森林 (Random Forest)。

阅读全文 »