写在前面: nlp卡在cnn有一个星期了,遇到种种困难无法决定使用哪门语言来写:
1、scala:
优点:在spark环境下,scala是主流、速度最快、代码最简洁的语言,word2vec就是用的它。
缺点:用scala写神经网络没有现成的方法!(word2vec在spark-mllib库中有现成的直接用)
让新手纯手写感觉天方夜谭!
网上资料巨少!好不容易搜到一个现成代码,还是15年的,还是差不多一二百行(说好的简洁呢。。)
2、 python:
优点:python是写神经网络的主流语言,使用python写的word2vec+cnn网上代码资源丰富。
对新手友好。
缺点:spark对python的兼容效果不够令人满意,运行可能出各种奇怪报错!
python比scala慢10倍!
前面的word2vec已使用scala实现了,要完全放弃吗,不放弃的话如何衔接。。
3、java:
优点:与scala高度兼容,是不是能放在scala中使用?
缺点:代码巨巨巨巨巨长。。
运行效率不高,有点夕阳代码的感觉。。
实在是没找到一种十全十美的方法,本着python是神经网络的主流代码+对新手友好,于是转向python。
<