2018-12-28

2018总结

时间真是快。每次年终总结的时候都要例行的感慨下时间。今年又是变化的一年,相比2017,变化的更多、经历也更丰富了。

看看2017的总结,2018也是丰收的一年。今年立下的flag,竟然都完成了。《展望2018》

这一年,我在两个地方实习。虽然实习过程中,有焦虑、有不高兴,但现在回过头去总结这两段实习经历,整体是积极的,各有收获。

在BMW,我享受轻松氛围的工作环境,也享受和其他实习生一起学习准备面试的过程。这段时光,工作上的事很自由,大部分都是自己安排。在BMW和其他实习生一起讨论问题,一起学习C++、算法,聊见闻,是我最开心的时候。也正是在BMW,我的基本功得到了很大提升。为我之后Intel实习,提供足够的技术支持。

在Intel大部分时间都是有任务的。这段实习经历,我认为学到的东西并不是很多。基本都在输出技术,自身能力没有质的提升。但量上的堆积,还是让我也多少也有点收获。在Intel实习期间,每天6点起床,一定会是我日后美好的回忆。。。

这一年我还定了工作,签了三方。工作的岗位,待遇都很满意。想起来也很有意思,一心想去大厂。笔试无数,连面试机会都没有。反而是初创团队,一路过关斩将。

总结起来,三件大事BMW实习、Intel实习和签三方。

重要的是,认识了好多小伙伴。但每次跟他们在一起,总是忍不住的自卑。因为跟他们比起来,我太弱了。我也常告诉自己要自信,可是自信要慢慢建立。把自己再练强点,我就更自信了。加油2019!加油!

2018-11-20

/bin/bash^M: bad interpreter: No such file or directory



Unix uses different line feeds and carriage returns so can't read the file you created on Windows. Hence it is seeing ^M as an illegal character.

In windows, using Notepad+ change to UNIX format.



参考资料: -bash: ./my_script: /bin/bash^M: bad interpreter: No such file or directory [duplicate]


 

2018-11-17

如何修改Docker里的源

In order to apt install, I need to change sources in /etc/apt/sources.list file.


However we don't have any editor, we can only using bash command echo to insert the source address to the file. The command is as following:


PS: source address in here and here




[code]
echo "deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse" > /etc/apt/sources.list
echo "deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse" >> /etc/apt/sources.list
echo "deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse" >> /etc/apt/sources.list
echo "deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse" >> /etc/apt/sources.list
[/code]



then update:

apt-get update -y && apt-get -y upgrade

2018-11-15

Mujoco-py安装Debug

最近在学习强化学习,发现安装mujoco-py还是有些坑的。在此把遇到的问题整理出来:

首先需要在.bashrc里写入环境变量:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/xx/.mujoco/mjpro150/bin



问题一:

error: [Errno 2] No such file or directory: 'patchelf'

解决方法:

sudo apt install patchelf

问题二:

fatal error: GL/osmesa.h: No such file or directory

解决方法:

sudo apt-get install libosmesa6-dev

2018-11-14

使用word写博客

这篇文章是使用word写的。测试是否好用。

测试图片:(看来只能文字,可以更新)



2018-11-13

没有得看紫竹张先生了




最近这两周网信办再整治自媒体。把我每天早上上班路上必看的紫竹给封了。也许导火索是最后一篇揭露彩票贪腐的文章。



甚至被人民日报点名了。真是搞笑,只允许自己报道,不许别人发文。

2018-10-07

我的秋招

8月9月都没有发表文章。打断了两年的坚持。一部分原因是因为这两个月在准备面试,白天实习,晚上不是在线笔试就是看书准备面试。另一部分原因还是因为懒。。。。

这两个月感觉很忙,变化好多。也因为准备面试技术也成长了好多,我觉得现在的我,和两个月前的我完全不是一个级别。

8月先是拒了Intel的实习,后悔了。又投了其他部门的实习岗,然后又面试通过。最后选择去Intel实习。可偏偏在我决定要离开BMW的时候,又分配了个SLAM的任务,和小伙伴做的挺开心的。现在我在Intel实习了,每天坐7点班车,跨过整个上海。还是挺崩溃的。。。。我为什么要这么折腾???。。。

找工作,所有的提前批我连面试机会都没有,大概是一开始我的简历做的太差了。后来的线上笔试,题目都好难,感觉也无望。听着身边的的人说"我有个同学(师兄...)拿到了XX公司的Offer,年薪XX万",怎么感觉别人的校招都这么容易,而我的校招却被面试官压的毫无脾气。

中秋节前一周,也就是9月倒数第二周,我收到了XX公司的面试。是个初创公司,面试并不难,一路面下来,国庆前一天终于收到Offer。我以为薪资顶多16 ~ 18X15左右,没想到居然是20X15。HR告诉我的那一瞬间,我真的快呼吸不出来。没想到我也能拿到这个数。。。

我现在不想在实习了也不想继续找工作了,就想放松下,去旅个游。然后去这家公司实习一段时间,等毕业入职。可惜Intel实在不好意思刚去就离职,只好硬着头皮做到元旦吧。

今天是国庆最后一天,学校的中期答辩马上就要开始了。刚回上海,很快就又要回学校了。真是麻烦,蛋疼的学院,也不提前通知到底是什么时候中期答辩,搞得我只好先回上海。

先这样吧,随便写一点,其实最近内心还有很多波澜,只是不知道要怎么写。睡觉!下次写~

2018-07-19

Ubuntu /BOOT 清理



ubuntu用着用着不知不觉/boot空间已占满。

清理不过两句话,如下:

sudo apt install byobu

sudo purge-old-kernels



也可以:sudo apt autoremove --purge

参考资料

2018-06-10

git设置shadowsocks代理

只需两行代码:

git config --global http.proxy 'socks5://127.0.0.1:1080'
git config --global https.proxy 'socks5://127.0.0.1:1080'

2018-06-03

Dockerfile替换软件源

Dockerfile里面,修改apt-get源,加快环境搭建速度:

在Dockerfile同级目录中准备一个相应版本的sources.list
ADD sources.list /etc/apt/

2018-05-14

解决 VS 错误 C2679 二进制“

错误 C2679 二进制“<<”: 没有找到接受“const std::string”类型的右操作数的运算符(或没有可接受的转换)



解决办法:

#include <string>

 

2018-04-28

win10更新错误0x80070bc2



解决办法:在管理员权限下的CMD下输入:

SC config wuauserv start= auto
SC config bits start= auto
SC config cryptsvc start= auto
SC config trustedinstaller start= auto



参考资料:https://answers.microsoft.com/en-us/windows/forum/windows_10-update/error-0x80070bc2-when-windows-10-update-trying-to/ba4053f2-acec-43db-9305-bca3cc2b8b0c

2018-04-14

解决Cannot remove : Input/output error



参考资料:https://unix.stackexchange.com/questions/39905/input-output-error-when-accessing-a-directory

问题细节:双系统,win10+ubuntu,不可删除的文件在win10下的ntfs文件系统。

解决方法:问题出在NTFS文件系统出现BUG。只需在win10下修复磁盘。修复后就可以删除。

2018-03-26

git:server-certificate-verification-failed解決办法

为GIT添加代理后,出现server-certificate-verification-failed,解决办法如下:

export GIT_SSL_NO_VERIFY=1

或者:

git config --global http.sslverify false

2018-03-24

ubuntu如何安装Xfce

使用apt-get 安装即可:

sudo apt-get install xfce4



下次登录时,选择Xfce即可。

2018-03-08

展望2018

上一篇2017总结,不知不觉流水账写了一大堆。这一篇,趁着今天回家的空隙,赶紧写下这篇规划。否则可能会被无限期拖延~

本周一辞职,交接了工作,今天刚回到家。星期六马上就要去上海开始下一家实习了。这次做的是自动驾驶方向的工作。两次实习经历都是在风口的行业,上一个是深度学习,这次是自动驾驶。

可以预见,下去的3个月会很忙。首先马上要开题了,再来是这次换公司实习,课余学习的时间少了。Uda的SDC term3时间又很紧张,imooc的数据结构实战也得看,还想再深入学习c++。

今年上半年最主要的工作就是好好实习!

列个清单,今年要完成的学习任务:

  1. Udacity SDC term-3

  2. imooc 数据结构实战

  3. 《人类简史》看完,争取再看一本书。

  4. 深入学习C++


支线任务:

  1. 写一个python采集程序,替我发表文章。已经写了一个小demo,《CSS网格入门》就是程序发布的,但是还是又很多需要改进的地方。

2018-03-01

2017总结

2月马上就要结束了,这份本来应该在1月写的文章被屡次延后。就是这么懒。不过也正应为延后了这么久,这篇才能完整的总结2017这不平凡的一整年。

2017大事件:

  1. 大年初一:在网上不知道怎么逛到了Udacity,于是脑袋一热报了深度学习纳米学位课(DLND),3800¥。第一次接触深度学习。这一年开始不平凡了。

  2. 开学:找了个队友参加了全国研究生电子竞赛。起初的想法是不浪费那3800,又要跟自己的专业相结合。于是项目方向为深度学习+FPGA

  3. 6月:项目提交后,比赛告一段落。于是开始想着实习。这期间发现了实习僧这个网站,尝试了几个机会。其中一个就是中科院。一开始就被这一个名字震住了,很不错的感觉。于是为了增加成功率,我投了FPGA的实习岗。那时候并没有坚定的转行想法。没想到居然拿到了面试机会,没想到面试居然这么水,没想到就这么过了。

  4. 6月中:出发,目标深圳SIAT。第一次离家,心里有兴奋也有恐惧。刚来的头三个月,始终处于巨大的矛盾之中。并非因为生活,而是我在这里没事做。

  5. 6月底:在工位的某一个夜晚,那时候我没认识几个人。我看着Udacity的付款页面,陷入犹豫中。DLND已经毕业了。Udacity为毕业生提供免筛选的机会,可直接入学AI或者自动驾驶课程。我看了两门课程的大纲。由于我不喜欢NLP,所以我最后选择了自动驾驶(SDC)的课程。到底报不报???我担心的主要有三个方面:一是担心没时间;二是一共三个学期,每学期5800;三是以后我要做什么,学SDC会不会白学了?最后我还是狠心的付了款。当时并没有一个很强的原因让我下定决心,一切只因为我狠心付了款,我想不了那么多了。



    1. 7~9月:这段时间我处在巨大的矛盾之中——走与不走?起初让我来是做FPGA开发的,可是由于没有好的FPGA,没有好的项目,于是最后我居然又回到了深度学习。现在想来2017,好运气也是不停的伴随着我。但是这里的效率实在是太低了。采购的电脑迟迟不来,电脑不能自己配,GPU要另外采购,采购的电脑的电源功率又不够,老板又完全不懂,科研水平很低,总之是个大坑。这段时间,我总是在思考着继续呆在这里还有意义吗?走有一万个理由,可不走就只有一个:“中科院”这个名字对于我来说太响亮了。绝对是我下一个简历的最大亮点。最终我还是坚持了下来~幸好坚持了下来。但这段时间也并非完全黑暗,正好有时间学习SDC第一学期,认识了好多师兄、朋友。这些师兄,朋友也是我2017最大的收获之一,我的朋友圈第一次这么广,他们来自天南地北,他们来自好学校~

    2. 8月:参赛项目获得了国家三等奖,我们去惠州参加的3天的颁奖典礼。这三天的经历很难忘,又认识了一个好朋友。如果说2017最难忘的3天,那就是去惠州的这三天了。

    3. 8月:面试了Uda的助教,成为一名助教。前三个月带冲刺班,每月工资1500;后三个月带通关班,每月工资1000。一直到这个月停止。一共收入7500。把DLND的学费赚回来了~哈哈~

    4. 9月17号:我再次犹豫在一个付款页面。这是英语六级的网络全程班。我身上的事已经够多了,我担心我没时间复习。最后还是报名了,也因为花了钱,所以认真复习了,虽然过程觉得很累,但现在看来根本就不算什么。庆祝这次六级终于过了。



  6. 10月~12月:顺风顺水的“科研”:设备终于来了以后,我很快开始了我的实验。从月初开始,到月底我就已经基本做好了。用GAN进行CT图像处理。往后的几个月则是在这基础之上,翻看论文,不停的改进。但始终就是没有CNN的效果好。

  7. 12月~放假:放弃论文一作,不写了。挂个二作就好了。这段时间开始轻松了。没有那么多任务了。这期间接触了币圈,于是用院里的电脑挖矿,一共赚了1000块左右。开始了解数字货币,开始了解区块链。


不知不觉已经写了这么多了,可还有很多事件没有罗列。剩下的小事以后估计顶多也就在脑海里回忆回忆了,不会写出来了,毕竟自己是辣么的懒。2018要多写写一些简单的日记,也好以后怀念。

对于2018的规划,放到下一篇文章吧~

2018-02-21

CSS网格入门


介绍


CSS Grid是浏览器本身支持的新布局系统。与例如Bootstrap的网格系统相比,CSS网格不需要包含任何外部库,并且通过将CSS规则添加到父元素(网格容器)和子元素(网格物品)来应用。

CSS网格是一种二维网格布局系统,可以与列和行一起工作。与Flexboxes(主要是一维)相比,CSS Grid布局系统使您能够构建更复杂的布局。但是,可以将两者结合使用:Flexbox和CSS中的网格布局。

与引导式网格布局系统相比,仅在CSS中定义布局结构要简单得多。您不需要在您的标记代码中包含布局定义。这使得标记代码更容易阅读,并且您可以根据需要快速调整布局,而无需重新排列标记代码。

本教程将为您提供CSS网格布局系统的一般介绍。作为先决条件,您应该对HTML和CSS有基本的了解。

术语


在深入研究CSS网格布局系统的细节之前,让我们定义一些重要的术语。在下面你可以看到一个CSS网格的原理图概述:


网格容器


网格容器是网格布局系统的父元素。display: grid为了激活CSS网格布局模式,需要将CSS规则应用于此容器。

网格线


网格线是定义网格结构并将网格划分为单元格的线。网格中的行可以是垂直的(将网格分为列)或水平的(将网格划分为行)。

每个网格线都有一个唯一编号,从网格左侧的1开始/网格顶部。此行编号用于定义网格区域。稍后你会看到一个实际的例子。

2018-02-11

什么是“主体间”

“主体间”事物的存在,靠的是许多个人主观意识之间的连接网络。就算有某个人改变了想法,甚至过世,对这项事物的影响并不大。但如果是这个网络里面的大多数都死亡或是改变了想法,这种“主体间”的事物就会发生改变或是消失。之所以会有事物存在于主体之间,其目的并不是想存心骗人,也不是只想打哈哈敷衍。虽然它们不像放射线会直接造成实质影响,但对世界的影响仍然不容小觑。历史上有许多最重要的驱动因素,都是这种存在于主体之间的概念想法:法律、金钱、神、国家。

摘自:《人类简史:从动物到上帝》 — 〔以〕尤瓦尔·赫拉利
在豆瓣阅读书店查看:https://read.douban.com/ebook/10570957/
本作品由中信出版社授权豆瓣阅读全球范围内电子版制作与发行。
© 版权所有,侵权必究。

一切都只存在于想像的故事中。例如不管是贝壳还是美元,它们的价值都只存在于我们共同的想象之中。光是它们的化学结构、颜色或是形状,并无法带来那些价值。也就是说,金钱并不是物质上的现实,而只是心理上的想象。

2018-02-08

CMake Error at cuda_compile_generated_gpu_mat.cu.o.cmake:206 (message)

linux下安装OpenCV的时候出现了如下错误:

CMake Error at cuda_compile_generated_gpu_mat.cu.o.cmake:206 (message)



解决办法:

可以暂时不用CUDA 重新运行:cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_CUDA=OFF <opencv源代码路径>

然后就可以重新make了。

2018-02-06

Linux搭建OpenCV环境


  1. sudo apt-get install build-essential

  2. sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

  3. sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

  4. git clone https://github.com/opencv/opencv.git

  5. 使用CMake编译OpenCV源代码:

    1. 创建一个临时文件夹,用来存放生成的makefiles。Create a temporary directory, which we denote as <cmake_binary_dir>, where you want to put the generated Makefiles, project files as well the object files and output binaries.

    2. 进入这个临时文件夹:cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local <opencv源代码路径>



  6. 在这个临时文件夹下运行make -j8 # -j8 runs 8 jobs in parallel. Change 8 to number of hardware threads available.

  7. 运行:sudo make install


参考资料:

  1. https://docs.opencv.org/3.0-beta/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation

  2. https://docs.opencv.org/3.4.0/d7/d9f/tutorial_linux_install.html

2018-01-29

Linux挖以太坊

克隆https://github.com/ethereum-mining/ethminer 源代码

mkdir build; cd build

如果使用CUDA:cmake .. -DETHASHCUDA=ON -DETHASHCL=OFF

如果使用OpenCL则直接运行cmake ..即可



cmake --build .

sudo make install



ethminer –S guangdong-pool.ethfans.org:3333 –SP 1 –O **.eth01

  1. 加入火星ETH矿池:https://eth.ethfans.org/#/ guangdong-pool.ethfans.org:3333

  2. **为钱包地址,可到https://www.zb.com/生成


 

2018-01-27

Jupyter notebook 宽屏显示

只需运行:

from IPython.core.display import display, HTML
display(HTML("<style>.container { width:100% !important; }</style>"))

参考资料: [1]

2018-01-24

百度云:Hands-On Machine Learning with Scikit-Learn and TensorFlow



 

百度云下载:Hands-On Machine Learning with Scikit-Learn and TensorFlow

github: https://github.com/ageron/handson-ml

链接:https://pan.baidu.com/s/1nw8rd5R 密码:4qvt

2018-01-20

Linux安装ASTRA:fatal error: mex.h: no such file or directory

先下载源代码:http://www.astra-toolbox.com/docs/install.html#linux-from-source

进入源代码目录:make 出现 fatal error: mex.h: no such file or directory 错误提示:



查找原因,发现是matlab版本与官网教程版本不同。于是修改配置即可:



我都matlab是2014a,把R2012a改成R2014a就可以了。

装完后,设置matlab path
Add $HOME/astra/matlab and its subdirectories (tools, mex) to your matlab path



紧接着测试,出现新问题:invalid MEX-file



查阅官方文档,发现有如下说明:
NB: Each matlab version only supports a specific range of g++ versions. Despite this, if you have a newer g++ and if you get errors related to missing GLIBCXX_3.4.xx symbols, it is often possible to work around this requirement by deleting the version of libstdc++ supplied by matlab in MATLAB_PATH/bin/glnx86 or MATLAB_PATH/bin/glnxa64 (at your own risk), or setting LD_PRELOAD=/usr/lib64/libstdc++.so.6 (or similar) when starting matlab.

这段话应该是针对matlab 2012a的 在2014a中MATLAB_PATH/bin/glnxa64不存在这个文件。但是可以确定是由于gcc版本问题,而导致的动态链接库出错。所以只要找到matlab里的libstdc++ 这个文件删除了就可以了。
用find MATLAB_PATH –name “libstdc++.so*”查找



删除MATLAB_PATH/sys/os/glnxa64 里的这两个libstdc++ 文件即可。

2018-01-17

在python=3的环境下用conda 如何安装PIL

在conda python 3 环境下安装PIL 出现环境不匹配问题。



解决办法:conda install pillow

2018-01-13

解决Aclocal command not found

安装ASTRA时出现了Aclocal command not found的错误



解决办法:sudo apt install automake

紧接着出现:configure.ac:42:error: possibly undefined macro: AC_PROG_LIBTOOL



解决办法:sudo apt install libtool

参考资料:[1]

 

2018-01-10

百度云分享:敦刻尔克



感想:嗯~怎么说呢,像我这穷学生,《敦刻尔克》可以不用去电影院看~在家看看就好了。

链接:https://pan.baidu.com/s/1htWh41Y 密码:bxwp

2018-01-06

Matlab invalid MEX-file failed to map segment

Matlab:invalid MEX-file failed to map segment



参考资料:地址

真大神!把/etc/fstab里users参数删除即可!



果真这个方法很符合我的情况:只要把users删除即可。

2018-01-02

Pickle:EOFError: Ran out of input



这天用pickle的时候出现这个问题,一查发现原来是读取了空的文件的缘故。



可以看到train_y文件是0 bytes。

Ubuntu SSR setting

使用electron-ssr客户端 https://github.com/shadowsocksrr/electron-ssr 设置proxy