推薦系統開發用什麼語言?注意什麼?

時光不迴向店鋪—美食


Python推薦算法開發,java 基於springboot 開發後臺數據接口,vue開發前端界面


SNAP視頻


經過20多年的發展,item-based已經成為推薦系統的標配,而推薦系統已經成為互聯網產品的標配。很多產品甚至在第一版就要被投資人或者創始人要求必須“個性化”,可見,推薦系統已經飛入尋常百姓家,作為推薦系統工程師的成長也要比從前更容易,要知道我剛工作時,即使跟同為研發工程師的其他人如PHP工程師(絕無黑的意思,是真的)說“我是做推薦的”,他們也一臉茫然,不知道“推薦”為什麼是一個工程師崗位。

如今縱然“大數據”, “AI”,這些詞每天360度無死角轟炸我們,讓我們很容易浮躁異常焦慮不堪,但不得不承認,這是作為推薦系統工程師的一個好時代。

推薦系統工程師和正常碼農們相比,無需把PM們扔過來的需求給像素級實現,從而堆碼成山;

和機器學習研究員相比,又無需沉迷數學推導,憋出一個漂亮自洽的模型,一統學術界的爭論;

和數據分析師相比,也不需繪製漂亮的圖表,做出酷炫的PPT能給CEO彙報,走上人生巔峰。

掌握核心原理的技能

數學:微積分,統計學,線性代數

周邊學科:信息論基礎

推薦算法: CF,LR,SVM,FM,FTRL,GBDT,RF,SVD,RBM,RNN,LSTM,RL

數據挖掘:分類,聚類,迴歸,降維,特徵選擇,模型評價

實現系統檢驗想法的技能

操作系統: Linux

編程語言: Python/R, Java/C++/C,sql,shell

RPC框架: thrift, Dubbo,gRPC

web服務: tornado, django, flask

數據存儲: redis, hbase, cassandra, mongodb, mysql, hdfs,hive, kafka, elasticsearch

機器學習/深度學習: Spark MLib,GraphLab/GraphCHI,Angel,MXNet,TensorFlow,Caffe, Xgboost,VW,libxxx

文本處理: Word2vec,Fasttext,Gensim,NLTK

矩陣分解: Spark ALS,GraphCHI,implicit,qmf,libfm

相似計算: kgraph, annoy,nmslib, GraphCHI, columnSimilarities(spark.RowMatrix)

實時計算: Spark Streaming, Storm,Samza

為效果負責的技能

熟悉常見離線效果指標:準確率,召回率,AUC,基尼係數

能夠定義產品效果指標:點擊率,留存率,轉換率,觀看完整率

會做對比試驗並分析實驗結果:指標數據可視化

知道常見推薦產品的區別: Feed流推薦,相關推薦,TopN推薦,個性化推送

其他軟技能

英文閱讀;讀頂級會議的論文、一流公司和行業前輩的經典論文和技術博客,在Quora和Stack Overflow上和人交流探討;

代碼閱讀;能閱讀開源代碼,從中學習優秀項目對經典算法的實現;

溝通表達;能夠和其他崗位的人員溝通交流,講明白所負責模塊的原理和方法,能聽懂非技術人員的要求和思維,能分別真需求和偽需求並且能達成一致。


莫非8125


我的方案是thinkphp,前端vuejs,後端用nodejs或者swoole

理由如下

人生苦短,我用php,php就不多說了

vuejs和nodejs都是js,一脈相承,學習簡單

swoole是類php語言,和php結合使用的


老歐日常


使用JS+CSS+HTML5語言。 小程序是基於微信平臺的輕量級應用,它的開發是應用微信提供的小程序前端規範,結合企業自己開發的應用後端來製作的。 小程序開發使用的語言本質上就是JS+CSS+HTML5,不過不能直接用HTML標籤,微信提供一個組件庫,沒有DOM和其他瀏覽器上的API;網絡、Canvas等也重新包裝過。 對於微信小程序而言,前端程序是唯一差異於網站建設技術的,因此,只要使用JS+CSS+HTML5讓前端程序過得了關,能夠寫前端的接口,那麼使用PHP,又或者java,以及asp.net的程序語言都是完全支持的。一般對於企業而言,都是採用php程序開發微信小程序;技術要求高一點的可以採用java程序開發。


0孤月痕0


我來回答這個問題,不少語言可以做。

java語言做推薦系統是比較好的,做好推薦系統要熟悉算法演練機器學習,分佈式技術希望能幫到你。


D調多E點


java和php語言,一個是面向後端,一個面向前端。


一根蔥


答案很簡單。

服務器用go,前端vue。


分享到:


相關文章: