GLCC/Amazon Deep Java Library项目经历

本人有幸参加了GLCC开源夏令营,并得到了参与由Amazon公开的Deep Java Library开源项目的机会,本人负责的Project是DJL-Zero,该项目旨在帮助没有机器学习或者深度学习相关经验的Java开发者们能够很方便地训练出自己的深度学习模型。在该文中以周为单位总结归纳自己项目中学习到的相关知识。

第一周(或者说正式工作的第一周)

作为深度学习的newbee,第一周(之前也有2周熟悉了)的主要任务就是熟悉DJL环境,并且对ImageClassification Class进行修改——目前ImageClassification中的train方法对于每个输入的dataset样例,train方法都会训练一个ResNet作为模型输出,而导师认为对于那些Small and fast的情况,可以训练一个MobileNet。然后问题主要就是:DJL的ModelZoo当中并没有MobileNet。因此我实现了一个MobileNetV1,然后成功提交PR合入了代码仓库。PR地址:Add MobileNetV1 into modelZoo and add corresponding test class MobileNetV1Test by warthecatalyst · Pull Request #1817 · deepjavalibrary/djl (github.com)

遇到的一些挑战

  • 首先最大的挑战就是作为深度学习几乎0基础的学生(至少没有过代码经验),从0开始在DJL框架里面搭建一个MobileNet也算是第一个挑战
  • 第二个问题就是跟自己平时写的trash项目不一样,代码中需要遵守的规范非常多。我搭建完之后花了一个下午的时间修改代码以及JavaDoc和注释等内容,项目中的命名规范、各种类成员变量和方法等等都需要遵守一定的规范。比如PR1815也是我的,因为代码没有通过测试因此没有被合入。
  • 第三个问题就是不太会用git,这里推荐一个学习git branching的神器:Learn Git Branching

猜你喜欢

转载自juejin.im/post/7123926780645212191