TikTok背后的人工智能是如何運作的,解構tik tok商業模式TikTok背后的人工智能是如何運作的TikTok是一款視頻分享應用程序,可以讓用戶創建和分享短視頻。它以“只為你”的個性化推薦給用戶留下深刻印象。它非常容易上癮,在Z世代中很受歡迎,而人工智能技術是其背后采用的主要技術。TikTok架構TikTok推薦......
TikTok是一款視頻分享應用程序,可以讓用戶創建和分享短視頻。它以“只為你”的個性化推薦給用戶留下深刻印象。它非常容易上癮,在Z世代中很受歡迎,而人工智能技術是其背后采用的主要技術。
TikTok架構
TikTok推薦系統的架構包括三個組成部分:大數據框架、機器學習、微服務架構。
(1)大數據框架是推薦系統的起點。它提供實時數據流處理、數據計算和數據存儲。
(2)機器學習是推薦系統的大腦。一系列機器學習和深度學習算法和技術被應用于構建模型,并生成適合個人偏好的建議。
(3)微服務架構是讓整個系統快速高效服務的底層基礎設施。
大數據框架
沒有數據,就沒有智慧。TikTok的大多數數據來自用戶的智能手機。這包括操作系統和安裝的應用程序等。更重要的是,TikTok特別關注用戶的活動日志,例如觀看時間、滑動、點贊、分享和評論。
日志數據通過Flume和scribe進行收集和匯總,它們通過管道傳輸到Kafka隊列中。然后Apache Storm與Apache Hadoop生態系統中的其他組件實時處理數據流。
Apache Hadoop生態系統是一個用于數據處理和存儲的分布式系統。這包括第一代分布式數據處理系統MapReduce,它與批處理并行處理數據。YARN是一個用于作業調度和集群資源管理的框架;HDFS是一個分布式文件系統;HBase是一個可擴展的分布式數據庫,支持大型表格的結構化數據存儲。Hive是提供數據匯總和查詢的數據倉庫基礎設施。Zookeeper是一個高性能的協調服務。
隨著數據量的快速增長,實時數據處理框架應運而生。ApacheSpark是第三代框架,有助于對大數據工作負載進行近乎實時的分布式處理。Spark通過在內存中處理來增強MapReduce的性能。在過去的幾年里,TikTok應用了第四代框架Flink。它旨在本地進行實時流處理。
數據庫系統包括MySQL、MongoDB等。
機器學習
這就是TikTok如何獲得家喻戶曉的超個性化、令人上癮的算法的核心。在大量數據集涌入之后,接下來是內容分析、用戶分析和場景分析。TensorFlow等神經網絡深度學習框架用于執行計算機視覺和自然語言處理。計算機視覺將用照片和視頻破譯圖像。自然語言處理包括分類、標簽和評估。
使用經典的機器學習算法,包括邏輯回歸、卷積神經網絡、遞歸神經網絡和梯度提升決策樹。應用了常見的推薦方法,例如基于內容的過濾、協同過濾和更高級的矩陣分解。
TikTok用來解讀人們思想的秘密武器是:
(1)算法實驗平臺:工程師對邏輯回歸、卷積神經網絡等多種機器學習算法的混合進行實驗,然后運行測試(A/B測試)并進行調整。
(2)廣泛的分類和標簽:模型基于用戶的參與度,例如觀看時間、滑動以及常用的點贊或分享(人們所做的作為通常是潛意識的反映)。用戶特征、向量和類別的數量超過了世界上大多數推薦系統都要多,而且它們還在不斷增加。
(3)用戶反饋引擎:在多次迭代檢索用戶反饋后更新模型。體驗管理平臺是建立在這個引擎之上的,并最終改善了這些缺陷和建議。
為了解決推薦中的冷啟動問題,使用了召回策略。就是從數以千萬計的視頻中挑選出數千名候選人,這些視頻已經被證明是受歡迎的和高質量的視頻。
與此同時,一些人工智能工作已經轉移到客戶端,以獲得超快的響應。這包括在設備上進行實時培訓、建模和推理。客戶端使用了TensorFlow Lite或ByteNN等機器學習框架。
微服務架構
TikTok采用了云原生基礎設施。用戶分析、預測、冷啟動、召回和用戶反饋引擎等推薦組件用作API。這些服務托管在Amazon AWS和Microsoft Azure等云平臺中。作為系統的結果,視頻策展將通過云端推快遞給用戶。
TikTok采用基于Kubernetes的容器化技術。Kubernetes被稱為容器編排器,它是自動化應用程序生命周期的工具集。Kubeflow致力于在Kubernetes上部署機器學習工作流。
作為云原生堆棧的一部分,服務網格是另一種處理服務到服務通信的工具。它控制應用程序的不同部分如何相互共享數據。它在平臺層而不是應用程序層插入功能或服務。
由于對高并發性的要求,這些服務是用Go語言和gRPC構建的。在TikTok中,Go由于其良好的內置網絡和并發支持而成為服務開發中的主導語言。gRPC是一個遠程過程控制框架,用于高效地構建和連接服務。
Tiktok的成功在于它會更加努力地提供最佳的用戶體驗。他們構建內部工具以最大限度地提高低級別(系統級別)的性能。例如,ByteMesh是Service Mesh的改進版本,KiteX是一個高性能的Golang gRPC框架,Sonic是一個增強的Golang JSON庫。其他內部工具或系統包括參數服務器、ByteNN和abase等。
正如TikTok機器學習負責人所說,有時底層的基礎設施比其上面的(機器學習)算法更重要。
特別聲明:以上文章內容僅代表作者本人觀點,不代表ESG跨境電商觀點或立場。如有關于作品內容、版權或其它問題請于作品發表后的30日內與ESG跨境電商聯系。
平臺顧問
微信掃一掃
馬上聯系在線顧問
小程序
ESG跨境小程序
手機入駐更便捷
返回頂部