2017.08.02回顾 centos安装anaconda/xgboost linux操作系统信息 top内存CPU notebook注释 feature多

来源:互联网 发布:我的世界商店js 编辑:程序博客网 时间:2024/06/06 04:30

1、centos下安装anaconda,参考http://devopspy.com/python/anaconda-centos-7/

  • wget https://repo.continuum.io/archive/Anaconda2-4.3.0-Linux-x86_64.sh
  • bash Anaconda2-4.3.0-Linux-x86_64.sh   #这一步,bash本来就是默认解释器,但是直接调用我记得需要加./xxx.sh,好久没用linux有些遗忘,去试了下./xxx.sh需要把脚本改成可执行的权限,但是用bash xxx.sh不用
  • 后面就是一键安装会询问是否改变安装地方,询问是否替代系统自带的python,这个应该是最无脑的安装方法
  • 安装好后,重新开启会话,python和pip都关联到anaconda的了
  • 执行sh脚本的时候遇到一个报错,tar (child) bzip2 cannot exec no such file or directory,原因是系统没有bzip2这个工具对压缩包解压缩,直接yum install bzip2
2、安装好anaconda,xgboost安装就很简单了,应该说linux安装xgboost就很简单,直接用pip install xgboost,我安装的这个xgboost用了一个将sklearn
将废弃的模块,pip安装是从pypi,这个版本应该不是最新的xgboost,最新的xgboost应该已经进行更新
3、linux查看操作系统发行版本信息cat /etc/redhat_release
4、查看内存和CPU使用情况top
5、notebook注释多行,选中拉黑,直接ctrl + /
6、安装好xgboost,写好脚本就准备在linux上开跑,但是发现2G 1核直接终端就死掉了,后来把虚拟机调到了8核 8G,报错memory error,还有一个xgboost
抛出的异常,DMatrix什么什么,那个只是因为内存爆了引起的,把内存加到16G,问题解决,发现内存使用峰值大概在13G,所以的确是之前不够,和朋友交流,朋友
告诉我他之前mac 8G内存但是可以超到50多G,都是虚拟内存,而我这个是服务器虚拟机出来的,应该16G就是指的最大限制了。另外实践中我发现centos系统中也
有进程管理的应用,如果发现内存无法容纳会直接杀死,显示已杀手,触发机制不明确,二的次建少了程序的内存使用,可以跑了,但是又把cpu跑死了
7、解决了硬件的问题,继续尝试zillow,我参照别人的kernel,再次改了一下离群值的点,lb又提高了一些,然后我按照自己的想法,dummy化某些变量,
lb分数再次提高,但是我后来发现原始变量我并没有删除,我去把原始变量删除了,尼玛成绩反而微弱下降,果然不怕冗余啊xgboost这种算法,有些缺失值较少的
连续变量我用中位数去代替,发现效果提升不错,其中一个值用众数替代,但是成绩没有变化,符合预期。所以两个老司机都提到过生成尽可能多的feature,这句话
我觉得真的有道理(基于我这次实践),今日的5次提交机会就用完了,里面有些变量是高度相关的,下一步准备去除试试,但是我认为去除不去除对结果应该没影响,
还有一个实践就是故意复制一列,看看结果(这个kaggle就是多实践),我也去搜寻了多重共线性是否影响GBDT这种算法,答案是不影响,参考https://www.quora.com/Is-multicollinearity-a-problem-with-gradient-boosted-trees
另外一个问题是原本我有一些我希望剔除掉的变量,但是发现剔除后效果下降很严重,所以不能去掉,但是这些变量是类别变量又含有大量缺失,这种变量该如何填补,考虑到基分类器CART树,本身类别变量分化就不合理,如果全部填补成-1,分化肯定在一边,然后和编码小的合成一组,感觉缺失多的编码成-1还比较合理,或者直接创建一个新的bool变量,还可以保留原始变量,填补的变成一个新变量,反正不怕变量多,变量多唯一的不好就是资源消耗大,时间慢,总之一句话feature engineering套路还需要加强。
8、gcc -v可以查看gcc版本,xgboost安装需要

最后再一次强调,节奏不要乱,比赛有压力,但是比赛时间很长,笑到最后的才是赢家,以学习借鉴为主,不要因为lb的上下浮动使自己的心情浮躁,保持一个良好的心情,不要忘了自己最应专注的领域,专注!节奏!不要乱!

阅读全文
0 0
原创粉丝点击