从4月底开始断断续续看了很多深度学习相关的东西,从架构到论文再到训练细节,但是因为自己没上手开始做东西,一直处在看了就忘的状态。最近开始做东西,才感觉自己正式开始逐渐入门了。
所以这里就记录下自己的学习历程,保存一下以后可能用得到的学习资料。
首先,在不确定自己要做什么的时候,开始做才是最重要的。我跟了挺多教程的,最后感觉Kaggle真的很适合作为入门练习。我的第一个练习是跟着机器之心的教程来的,做航拍仙人掌的识别。分类任务相对简单,而用pytorch的抽象库fastai就更加简化了这一任务(所以强烈推荐入门的新手从Pytorch的fastai和Tenseflow的Keras开始,其中据说fastai又要比Keras简单很多)。Kaggle的Playground任务里有很多人分享了自己的Kernal(就是类似Jupyter Notebook,可以直接看别人的代码和文字说明),在学习中出问题的时候就可以参考别人的(比如机器之心教程里
train_img = train_img.transform(transformations, size=128)
这句就写错了,但别人的kernal里有正确的,可以对比学习。)。我自己做的时候就遇到了正确率一直50%,后来发现测试集没读取上的问题(可以参考fastai文档学习,我最后是用的分解的api读取的测试集,因为实在搞不懂ImageDataBunch是否有设置add_test()函数的地方)。
仙人掌弄完就进了人脸识别血缘的坑,从参考的kernal看目前大部分人使用的都是基于Keras的FaceVGG,所以借机学一波Keras。以下放一些我觉得不错的干货: