想法很美好,现实很骨感,我也不想天天听项目经理指挥来工作,我也想自己接单。
真实情况是,机器学习算法工程师比其他程序员更依托平台资源。
怎么说呢?即使你算法能力没问题,但没有平台资源,你的算法只是demo,有了平台资源,你的算法才能变成产品。
具体点说吧。
比如你接外包,要给一个公司构建一个推荐系统。你用给他弄服务器,然后安装spark,调试,传数据,资源管理等等。每项都很费时间,结果你会发现,你开发周边的时间要比你开发算法的时间多出几十倍。
下面这个图很直观地解释了机器学习项目里每个部分要多少投入资源(精力或者人力)。中间那个黑色的,小到字都看不清了的,就是你开发算法投入的精力。
图源自:《Hidden Technical Debt in Machine Learning Systems》
挺值得一读的论文。
况且算法依赖数据,你在不知道客户数据质量的情况下,贸然接个单来开发可以说是无底洞。专业的公司都需要经历一个数据评估过程才报价的。
如果你要出来自己干,最好有个团队。但现在出来创业的AI团队太看背景了,一个团队十人里五六个常青藤的都未必能拉到投资。
有的做quant的,对数据平台需求就不多,但是对数据本身需求高,对网络延迟要求要够低,还是很难单干。。
我认识的机器学习算法工程师赚外快的出路就只有做AI技术文章,开公众号,建社群,吸引读者,做培训。这是门槛最低的赚外快路子了。但是这么做副业,倒不如多刷题,然后跳槽,来的涨幅更多。