您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>數(shù)值算法/人工智能>

實例分析關(guān)于百合網(wǎng)的混合云、大數(shù)據(jù)與機器學習實踐

大小:0.5 MB 人氣: 2017-10-10 需要積分:1
技術(shù)驅(qū)動越來越成為企業(yè)打造核心競爭力的標準戰(zhàn)略。日前,百合網(wǎng)CTO楊溢欣接受《騰訊云會客廳》及CSDN記者采訪,介紹了百合網(wǎng)在云計算、大數(shù)據(jù)、機器學習方面的技術(shù)實踐和心得,以及未來的一些規(guī)劃。
  目標與挑戰(zhàn)
  百合網(wǎng)是一家實名認證的婚戀網(wǎng)站,創(chuàng)立至今十年,目前注冊用戶9500萬。擔任百合網(wǎng)CTO的楊溢欣,負責百合網(wǎng)的線上技術(shù),以及部分項目的產(chǎn)品、運營等工作,下轄團隊成員100多人,包括客戶端、服務(wù)端的研發(fā)工程師,算法研究員,測試、運維團隊,產(chǎn)品、運營團隊等。
  目前,百合網(wǎng)在探索如何將品牌擴展到整個婚戀生態(tài)圈,除了婚紗照、婚禮、情感咨詢、婚介等,甚至還有金融、理財、婚禮成本相關(guān)的規(guī)劃。
  業(yè)務(wù)的快速擴張也意味著技術(shù)部門的新挑戰(zhàn)。楊溢欣認為,對于百合網(wǎng),基于良好的技術(shù)視野設(shè)計架構(gòu)、采用敏捷開發(fā)控制進度、優(yōu)化團隊間溝通等方面都很重要?;?a target='_blank' class='arckwlink_none'>公司億級的用戶群和婚戀產(chǎn)業(yè)鏈領(lǐng)導(dǎo)者的定位,百合網(wǎng)技術(shù)部門強調(diào)數(shù)據(jù)驅(qū)動,要求團隊勇于創(chuàng)新:
  用快速、敏捷的方式完成產(chǎn)品需求,并注意各種技術(shù)積累,以讓各功能、算法和模塊在不同的項目里可以復(fù)用,提升開發(fā)效率;通過技術(shù)驅(qū)動的方式,嘗試在婚戀、情感這種領(lǐng)域,用互聯(lián)網(wǎng)、機器學習、多媒體的技術(shù)去創(chuàng)新。
  目標的實現(xiàn)并不容易。具體而言,挑戰(zhàn)主要來自以下幾個方面:
  用戶量大、活躍度高引起的各種服務(wù)器的性能和穩(wěn)定性問題,尤其是雙11、情人節(jié)這樣的時間節(jié)點;作為嚴肅交友應(yīng)用,用戶畫像、匹配度和雙向選擇相關(guān)的算法問題;產(chǎn)品需求的快速迭代問題。
  問題的最終解決,也意味著云計算和大數(shù)據(jù)技術(shù)從開始探索到成熟應(yīng)用。楊溢欣將百合網(wǎng)解決問題的技術(shù)架構(gòu)分三個階段:
  業(yè)務(wù)決定技術(shù)的架構(gòu),業(yè)務(wù)變更頻繁,技術(shù)與業(yè)務(wù)的耦合度很高,但是很少的人就可以維護一個大型業(yè)務(wù);
  分層分平臺的架構(gòu),將共性功能抽象成組件,多個組件組成平臺,與業(yè)務(wù)層分離,這樣前端業(yè)務(wù)開發(fā)更靈活,后端管理也集中,可以做到服務(wù)治理,業(yè)務(wù)負載隨時可擴容;
  大數(shù)據(jù)及虛擬化的架構(gòu),數(shù)據(jù)體量促使架構(gòu)必須升級,基于大數(shù)據(jù)的計算融匯到各個業(yè)務(wù)中,系統(tǒng)部署的復(fù)雜度增大,所以采用虛擬化技術(shù),實現(xiàn)程序構(gòu)建,打包,發(fā)布,部署,容錯自動化,基礎(chǔ)層引入云,實現(xiàn)彈性部署。
  百合網(wǎng)混合云實踐
  在楊溢欣看來,云計算在最近兩三年已經(jīng)進入成熟期,現(xiàn)在的云計算可以成為開展新業(yè)務(wù)的很好的技術(shù)平臺,成為百合網(wǎng)婚戀生態(tài)圈的一個基石。
  百合網(wǎng)各種業(yè)務(wù)的發(fā)展非??欤瑢焖俨渴?、對可擴展性的要求非常高。云計算支持極快地完成從開發(fā)到部署的工作,能聚焦到真正的算法、架構(gòu)上,不用太操心底層的東西。
  云計算提供一種很靈活地分配資源的方式,特別是新的業(yè)務(wù)開始的時候,可以先分配一些比較小的資源,隨著業(yè)務(wù)的擴張,可以迅速擴展到很大的服務(wù)容量,既可以優(yōu)化成本結(jié)構(gòu),又無需擔心突發(fā)的高并發(fā)流量導(dǎo)致業(yè)務(wù)中斷。
  云計算可以說是成長型公司業(yè)務(wù)發(fā)展的一個基石,會為運維和各種算法、技術(shù)上的實現(xiàn)提供很扎實的基礎(chǔ),在未來的三到五年之內(nèi),絕大部分的互聯(lián)網(wǎng)應(yīng)用且使用云計算。
  技術(shù)選型
  實踐階段,綜合考慮技術(shù)穩(wěn)定性、服務(wù)品質(zhì)、成本、主機以外的附加服務(wù)等因素,百合網(wǎng)調(diào)研測試過國內(nèi)外所有主流的云計算技術(shù),最終認為騰訊云能提供穩(wěn)定的技術(shù)、高質(zhì)量的服務(wù),綜合水平位于行業(yè)的頂級位置。另一方面,百合網(wǎng)經(jīng)營多年,已經(jīng)有大量的服務(wù)器、存儲資源以及數(shù)據(jù),所以需要對混合云部署和應(yīng)用的支持。
  騰訊云發(fā)布的“黑石”產(chǎn)品非常適合已有大量托管服務(wù)器、又希望擁抱云計算的公司。此外騰訊還開放了內(nèi)部使用的一些技術(shù)和基礎(chǔ)設(shè)施,以及一些SaaS服務(wù)。由于騰訊和百合都是社交類應(yīng)用,面對類似的技術(shù)問題,我們的技術(shù)和基礎(chǔ)設(shè)施復(fù)用很方便,比如IM消息、安全、反垃圾、多媒體、CDN等方面都有合作。
  在楊溢欣看來,騰訊云的一個特色是社交出身,百合也是做社交出身的,所以雙方應(yīng)用的底層有一部分技術(shù)是相通的。以CDN為例,騰訊有大量看圖片跟視頻的需求,百合也是一樣,騰訊在全國布了大量的節(jié)點,終端節(jié)點離用戶是很近,將節(jié)點以及積累的圖片/視頻加速技術(shù)開放出來成為CDN服務(wù),既可以節(jié)約成本,也可以為用戶提供更好的網(wǎng)絡(luò)。
  上云挑戰(zhàn)與解決
  當然,由于具體業(yè)務(wù)的差異性,上云的挑戰(zhàn)不可避免,這就需要云服務(wù)團隊專業(yè)的技術(shù)支持。楊溢欣介紹了兩個例子。
  在最早討論云服務(wù)遷移方案時,百合網(wǎng)發(fā)現(xiàn)考慮到已有服務(wù)器和托管機房,引入云服務(wù)時在網(wǎng)絡(luò)架構(gòu)上有很大的挑戰(zhàn)——可能導(dǎo)致增加大量成本、或者導(dǎo)致網(wǎng)絡(luò)品質(zhì)下降,并增加單點故障率。百合網(wǎng)要求整個遷移過程穩(wěn)定、可逆,保證現(xiàn)場出問題可以回滾。后來雙方的架構(gòu)師開了一天會,做頭腦風暴,并在深夜確定了一套穩(wěn)健而高效的方案,其中的部分需求也融入到了騰訊云后來的產(chǎn)品里。
  百合網(wǎng)使用了騰訊云的CDN服務(wù),以讓全國各地都能有最快的網(wǎng)絡(luò)連接速度。而同時,百合使用了WebP壓縮編碼,其效率比傳統(tǒng)的JPEG高30%。但WebP格式比較新,騰訊云一開始并不支持。雙方又一次技術(shù)合作,騰訊云在很短的時間內(nèi)完成了相關(guān)的開發(fā)、支持和部署。解決這些挑戰(zhàn),不僅提升了百合的服務(wù)質(zhì)量和開發(fā)效率,也通過騰訊云的技術(shù)演進,對所有的互聯(lián)網(wǎng)公司提供了潛在的便利。
  上云經(jīng)驗
  從與騰訊云的合作結(jié)果,百合網(wǎng)認為,騰訊云是一家獨特的云計算技術(shù)提供商,有獨特的一套技術(shù)體系,特別是社交相關(guān)的技術(shù),能夠為創(chuàng)業(yè)的公司會做各種各樣的功能,同時也具有專業(yè)的團隊和服務(wù)。
  對于企業(yè)如何選擇云計算技術(shù),楊溢欣認為,最好的辦法是參考各種互聯(lián)網(wǎng)公司公開的架構(gòu),仔細思考這些架構(gòu)設(shè)計的原理。因為云計算的架構(gòu)跟傳統(tǒng)的架構(gòu)是不太一樣的,一般傳統(tǒng)的書或者是講座會稍微偏落后一些,一定要看一下最新的公司,特別是創(chuàng)業(yè)公司,因為創(chuàng)業(yè)公司是最早擁抱云計算的公司,在一、兩年之內(nèi)快速地起來,他們的架構(gòu)實現(xiàn)對創(chuàng)業(yè)公司很有幫助的。
  而對于云計算技能的提升以及云計算問題的解決,楊溢欣表示,可以去參加云計算服務(wù)商的開發(fā)者大會,會有很多過來人分享在云計算使用過程的架構(gòu),以及實施中遇到的很多問題,這對于技術(shù)選型和問題解決來說都會有啟發(fā)。
  大數(shù)據(jù)與人工智能實踐
  大數(shù)據(jù)對于百合網(wǎng)的作用,楊溢欣用iOS之于蘋果的重要性來類比。百合網(wǎng)提出的心靈匹配算法(可以看到兩個人心靈的契合程度),不僅僅是一個心理學模型,更是一個算法模型。然而,婚戀不同于電商,要求你情我愿,雙向匹配的實現(xiàn)難度更高。
  匹配模型與實現(xiàn)
  “心靈匹配算法”是基于百合網(wǎng)與北師大心理學院、中科院心理所、北京大學人格與社會心理學研究所多年的研究成果,集合機器智能學習理論,基于中國用戶的心理特征、興趣愛好以及海量行為數(shù)據(jù),采用聚類算法結(jié)合協(xié)同過濾算法搭建的心靈匹配智能推薦引擎。
  楊溢欣認為,婚戀匹配的難度是電商推薦難度的平方:如果電商基于user、item推薦成功的概率是P,則雙向匹配成功的概率則是P*P。此外,電商推薦的item是嚴重冷熱不均的,而百合需要保證item的被推薦次數(shù)處于冷熱合理的區(qū)間。
  對百合網(wǎng)來說,對用戶匹配的難度和技術(shù)含量相當高。所以我們采用了一些很大量的大數(shù)據(jù)的數(shù)據(jù)挖掘和機器學習的手段,比如說我們的用戶屬性,直接提供的用戶屬性共有160多項,加上用戶行為分析得出來的數(shù)據(jù),可能是1000項左右的數(shù),每個用戶有這樣的屬性,包括有大量的用戶行為。我們嘗試這些用戶行為和屬性,為用戶尋找到最匹配的另一半。
  百合網(wǎng)的算法需要考慮基本的用戶畫像、單向推薦模型(即經(jīng)典的user/item推薦,基于用戶屬性和用戶行為),用戶的活躍、溝通方式模型(基于用戶行為),雙方成功建立聯(lián)系的模型(基于行為與一部分屬性),以及用戶對收發(fā)信的偏好模型等等因素。其中一部分環(huán)節(jié)可以參考標準、流行的模型,比如“單向推薦”模型結(jié)合了協(xié)同過濾、決策樹等。有一部分技術(shù)是獨特的,百合網(wǎng)正在申請專利。
  談及數(shù)據(jù)的預(yù)處理的挑戰(zhàn)和處理,楊溢欣介紹:一來百合一直在做新功能和產(chǎn)品體驗的改進,導(dǎo)致不同時期,用戶的特征和行為會有天然的區(qū)別;二來百合有將近一億用戶,用戶的性別、年齡段、職業(yè)和受教育程度等都決定了有不同的用戶訴求和使用習慣。所以在處理的時候要采用一些分類器和離群點檢測的方法,結(jié)合信息熵,針對性的調(diào)整數(shù)據(jù)、采樣方式和模型。
  深度學習應(yīng)用
  在深度學習方面,百合網(wǎng)也嘗試了一些應(yīng)用,目前主要是在圖像領(lǐng)域,人臉識別、匹配等等,這是DL非常擅長的領(lǐng)域,他認為這些對婚戀應(yīng)用來講也很重要。百合網(wǎng)嘗試了人臉識別和人臉打分,供擇偶參考,同時還有美顏的嘗試(取代PS),不過需要保證讓網(wǎng)友可控,并保證不會太失真。
  另外,百合網(wǎng)也正在設(shè)計將深度學習應(yīng)用于自然語言文本方面的一些工作。楊溢欣介紹,婚戀匹配方面,深度學習處于原理論證階段,因為涉及到的特征比較具體,并且需要考慮社會學、心理學和產(chǎn)品體驗的一些問題。
  大數(shù)據(jù)架構(gòu)
  大數(shù)據(jù)架構(gòu),百合網(wǎng)基于開源的Hadoop體系,包括HDFS、YARN、MapReduce、HBase、Hive、Pig等,實時處理的部分用Spark,這和流行的框架基本一致。
  事實上,百合網(wǎng)使用的大部分基礎(chǔ)設(shè)施都來自開源項目,也都是業(yè)界流行的,從LVS、HAProxy、MongoDB、Redis、Kafka、ZooKeeper、Spark、Mahout到Hadoop的一套東西,等等。正在引入Docker,最近還關(guān)注在深度學習中使用Google新開源的TensorFlow。
  此外,百合網(wǎng)也在探索公有云上的大數(shù)據(jù)。楊溢欣認為,公有云上的大數(shù)據(jù)分析系統(tǒng)是非常有前途的,因為理論上講它可以讓計算和負載均勻很多,并采用專用硬件,形成較大的成本優(yōu)勢,還能通過彈性服務(wù)提供更快的速度和擴展性。
  不過云上的大數(shù)據(jù)系統(tǒng)需要更加成熟——百合網(wǎng)在試用中發(fā)現(xiàn)包括AWS的EMR在內(nèi),穩(wěn)定性、特別是使用較長時間之后的性能都有進步空間。
  未來:支持婚戀VR的探索
  2016年初,百合網(wǎng)還投資了一家叫做蘭亭數(shù)字的VR公司,希望讓VR技術(shù)在婚戀行業(yè)之中得到應(yīng)用。百合網(wǎng)認為,VR技術(shù)在婚戀體驗上有更深一層的效果,例如婚禮全景記錄,會很好的一個效果。這同樣對基礎(chǔ)IT提出更多的需求。
  百合網(wǎng)現(xiàn)在的發(fā)展目標是做好婚戀全產(chǎn)業(yè)鏈,從戀愛到婚姻,有非常多的線上線下用戶需求,需要圍繞大數(shù)據(jù),提供敏捷、高彈性的技術(shù)架構(gòu)。既有性能、數(shù)據(jù)量、計算量方面的要求,又需要保證研發(fā)速度。既需要控制成本,又需要高可擴展性。這其實是云計算比較擅長的事情。
  楊溢欣表示,百合網(wǎng)對云計算有比較高的期望。套用“面向方面”的概念,希望一些公用的、可伸縮的應(yīng)用層功能可以通過SaaS等方式更多的提供出來,百合愿意與騰訊共同開發(fā)。這樣可以讓互聯(lián)網(wǎng)應(yīng)用開發(fā)專注于其獨特的技術(shù)部分,敏捷、快速、穩(wěn)定、高效,提高整個行業(yè)的生產(chǎn)效率。
?

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?