国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

沒人告訴你的大規模部署AI高效流程!

開發 開發工具 人工智能
本文介紹了規模化部署 AI 模型的流程,包括如何部署這些方法、這些方法的缺點以及如何在低級別優化 TensorFlow 模型。

現在有許多關于 AI 的教程。比如如何進行目標檢測、圖像分類、NLP 以及構建聊天機器人等,不勝枚舉。

但當我查找如何正確擴展 AI 的內容時,卻發現少得可憐。更令人驚訝的是,現有的極少數資源在反復強調相同的幾點:

  • 用像 TensorFlow 這樣的可擴展框架構建模型。
  • 將其打包到客戶端(TF.js、TF Lite、TF-slim 等)或部署為基于容器的微服務。

我對第二點更感興趣,因為我已經開發好了一個模型,但令我驚訝的是,沒有任何關于如何實現第二點的細節,而關于每個解決方案缺點的信息則更少。研究了幾天并在 Crane.ai 上擴展 AI 之后,我整理了一些關于如何部署這些方法、這些方法的缺點以及如何在低級別優化 TensorFlow 模型的內容。

[[254822]]

將模型打包到客戶端——這種方法太糟了!

最常用的方法之一是用像 TensorFlow.js、TF Lite 或 TensorFlow Slim 這樣的工具將 AI 打包到你所選擇的客戶端中。我不會詳細介紹這些框架如何運行,但我會重點說明它們的缺點。

  • 計算能力。部署這些模型的問題在于它們需要大量的內存(我指的是移動應用程序或瀏覽器的限制,即 > 1-2GB RAM)。許多手機都沒有這樣的計算能力,而桌面瀏覽器又會延遲 UI 線程,同時也降低了用戶的計算機速度,要打開瀏覽器,還要打開風扇等等。
  • 推斷時間。當你在計算能力未知的設備上運行模型時,推斷時間一般也是未知的;這些設備不是 GPU 驅動的高 RAM、高 CPU 機器,它們只是在普通計算機上運行的手機、瀏覽器和桌面應用程序。較大模型的推斷時間可以輕松超過一分鐘時間,而從用戶體驗的角度來看,這并不可行。

  • 大文件。不幸的是大多數模型都存儲在相當大的文件中(我指的是數十、數百 MB)。因此,加載這些文件速度很慢,需要的內存量比較大,也大幅增加了應用程序包的大小。
  • 不安全。除非你用的是開源模型,否則你要相對保密你的 AI 模型和預訓練檢查點。然而,當你將模型打包進應用程序時,不僅你的推斷代碼容易被反編譯,而且在應用程序包里的預訓練檢查點也很容易被竊取。
  • 難以更新。如果想要更新你的模型,在客戶端中你有兩個選擇。要么通過集中管理器(即 Play Store、App Store 等)發布更新,這會導致頻繁的大型更新(對用戶而言這是很煩人的,而且用戶可以根據設置打斷這個過程,或者壓根就不開啟更新)。或者應用程序本身可以獲取新模型的檢查點和元數據。后者聽起來要好得多,但是這意味著你可能要在用戶連接不穩定的情況下下載 100MB 以上的文件,這可能需要一段時間,所以你的應用程序至少要在后臺開到下載過程完成,而且會產生很高的互聯網輸出成本(這取決于你的云計算)。
  • 缺乏可訓練性。針對新用戶的數據訓練的模型提供了一定程度的個性化,同時提高了準確率,并建立了核心的高信號數據集。不幸的是大部分設備缺乏訓練模型的計算能力,即便它們的計算能力夠了,也無法將訓練效果傳遞到服務器或其他運行該應用程序的設備。

[[254823]]

這些缺點使得在客戶端上部署和維護大型神經網絡幾乎不可能,所以我們從擴展模型的備選項中排除這一項。

部署為云端點

大規模部署AI高效流程

圖源:https://xkcd.com/908/

云是可以大規模部署模型的強大工具。你可以根據需要定制環境、容器化應用程序、立即水平擴展應用程序,同時提供足以和大公司媲美的 SLA 和運行時間。

對大部分 TensorFlow 模型來說,部署流程是相同的:

  • 將圖像固化為 Protobuf 二進制文件
  • 調整推斷代碼,使它可以處理固化的圖
  • 容器化應用程序
  • 在最上面加上 API 層

第一部分相對簡單。「固化」圖要用所有命名節點、權重、架構和檢查點元數據創建一個 protobuf 二進制文件。這一步可以用多種工具實現,最常用的是 TF 自己的工具,它可以固化任何給定輸出節點名字的圖。

更多該技術相關信息以及實現參閱: https://www.tensorflow.org/guide/extend/model_files#freezing。

[[254824]]

調整推斷代碼也不難。在大多數情況下,feed_dict 是不變的,主要區別在于添加了加載模型的代碼,也許還有輸出節點的規范。

容器化也很簡單——只要在 Dockerfile 中設置環境即可。而當我們開始添加 API 層時,事情就會變得混亂。通常用這兩種方法:

部署可以運行推斷腳本的擴展容器。這些容器根據輸入運行腳本,腳本啟動一個會話并執行推斷,再通過管道返回輸出結果。這是很有問題的:對大多數云供應商而言添加一個可以操縱容器和管道進出的 API 層并不容易(例如,AWS 有 API 網關,但它并不像你期望的那么方便),而且這種方法是你可以采用的效率最低的方法。這里的問題是你在啟動容器、分配硬件、啟動會話以及推斷時損失的寶貴時間。如果你讓 stdin 開著并保持管道輸出,那么你的腳本就會加速但是會失去可擴展性(現在你已經連接到容器的 STDIN,而它無法接受多個請求)。

部署運行 API 層的擴展容器。盡管在架構上相似,但由于以下幾個原因,這種方法效率更高。將 API 層內置在容器中,可以緩解之前提出的大多數問題。雖然這需要更多資源,但它已經用了最少資源而且沒有垂直擴展;它允許每個容器保持運行狀態,而且由于這種情況下 API 是分散的,因此可以將特定的 stdin/stout 連接到主要的請求路由器上。這意味著省去了啟動時間,可以在服務多個請求的同時維持速度并保證水平擴展。可以用負載平衡器集中容器,并用 Kubernetes 保證近乎 100% 的運行時間并管理集群。這種方式簡單且有效。

[[254825]]

部署集群!

通過容器集群分散 API 的主要缺點在于計算成本會相對較快地累積起來。不幸的是這在 AI 中是不可避免的,但有一些方法可以緩解這一問題。

  • 重復使用會話。集群會根據負載成比例地增長和收縮,因此你的目標是最小化執行推斷的時間,使容器可以釋放出來處理另外的請求。實現這一想法的方法是初始化 tf.Session 和 tf.Graph 后就將它們存儲起來并將它們作為全局變量傳遞,以達到重復使用 tf.Session 和 tf.Graph 的目的。對 TF 來說,這一舉措可以減少啟動會話和構建圖的時間,從而大大提高推斷任務的速度。即便是單個容器,這個方法也是有效的,而且這一技術被廣泛用于資源再分配最小化和效率最大化。
  • 緩存輸入,如果可能的話還要緩存輸出。在 AI 中,動態規劃范式在 AI 中是最重要的。通過緩存輸入,你可以節省預處理輸入或從遠程獲得輸入的時間;通過緩存輸出,你可以節省運行推斷的時間。這在 Python 中很容易實現,但你要視自己的情況而定。通常,你的模型會隨著時間的推移變得更好,但這會很大程度上影響你的輸出緩存機制。我自己的系統用的是我所謂的「80-20」規則。當模型準確率低于 80% 時,我不會緩存任何輸出;一旦準確率到了 80%,就開始緩存并設置為在準確率到一定值(而不是某個時間點)的時候停止緩存。這樣,隨著模型變得越來越準確,輸出也會發生變化,但是在「80-20」緩存中,性能和速度之間存在的權衡更少。

[[254826]]

使用任務隊列。一般需要運行或大或小的推斷任務(在我們的例子中是較大和較小、復雜和簡單的圖像)。對 UX 來說,使用堆隊列(heap queue)可能更好,它會優先處理小一些的任務,所以要運行簡單步驟的用戶只要等這一步結束就行了,而不必等另一個用戶的更大推斷任務先完成。(也許你會想我在這里為什么不用水平擴展,你可以這么做但是會增加計算成本)。

在帶有任務隊列的專用 GPU 上訓練模型。訓練是一項長期、困難的任務,它需要大量可用的資源,而且模型在訓練過程中無法使用。如果你要將每個交互返回到模型中進行訓練,請考慮在單獨的服務器或 GPU 上運行。一旦訓練結束,你就可以將模型(在 AWS 中,你可以將模型 repo 集中在 S3 中)部署到容器中了。

結論

[[254827]]

深思熟慮后,我們提出了一個大規模部署 AI 的高效工作流程:

  • 固化圖并將推斷封裝在 API 下
  • 重復使用會話和圖,緩存輸入和輸出
  • 用 Docker 容器化應用程序(包括 API 層)
  • 將大規模應用程序與 Kubernetes 一起部署在你選擇的云上
  • 將訓練從推斷中分離出來
  • 建立任務隊列,將較小的任務確立為優先級

使用這些技術,你就可以在成本最小、速度和效率最大的情況下大規模部署 AI。

原文鏈接:https://towardsdatascience.com/scaling-ai-2be294368504

【本文是51CTO專欄機構“機器之心”的原創譯文,微信公眾號“機器之心( id: almosthuman2014)”】

戳這里,看該作者更多好文

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2017-04-26 13:30:24

爬蟲數據采集數據存儲

2013-05-14 13:30:08

部署SaaS云計算

2021-01-11 08:34:16

緩存穿透QPS

2025-05-14 00:00:01

2013-05-22 09:40:57

大規模部署SaaSSaaS

2013-05-16 10:02:43

SaaS云計算部署

2023-10-26 01:26:04

Vaex數據數據集

2017-08-21 07:50:18

EasyStackOpenStack部署

2023-01-03 16:54:27

字節跳動深度學習

2025-10-14 08:27:27

2024-09-20 17:41:07

2025-03-28 08:14:18

2024-10-16 08:00:00

2015-08-26 14:07:02

創業關于創業

2016-04-15 00:43:13

2023-10-07 08:30:07

B+樹數據庫管理系統

2009-10-17 12:27:12

2014-08-13 16:41:13

瞻博網絡OpenContraiSDN

2023-05-09 18:45:28

監控監視工具

2020-09-11 16:17:02

產品定價AI人工智能
點贊
收藏

51CTO技術棧公眾號

亚洲狼人综合| 午夜精品福利一区二区| 爱爱免费视频网站| 麻豆精品国产91久久久久久| 美女精品久久久| 免费在线观看av片| 日本一区二区成人| 伊人狠狠色丁香综合尤物| 国产国产精品| 欧美交受高潮1| 亚洲电影观看| 欧美日韩成人高清| 一级网站免费观看| 成+人+亚洲+综合天堂| 欧洲精品码一区二区三区免费看| 91日韩视频| 久久久爽爽爽美女图片| 国产在线|日韩| 日韩经典中文字幕| 麻豆免费在线视频| 在线亚洲一区观看| 在线免费观看av网站| 亚洲欧美综合色| 欧美牲交a欧美牲交aⅴ免费下载| 国产乱理伦片在线观看夜一区| 91亚洲午夜在线| 猛男gaygay欧美视频| 精品成人一区二区| 亚洲娇小娇小娇小| 国产手机视频一区二区| 国产成人在线播放| 日本a一级在线免费播放| 毛片av中文字幕一区二区| 亚洲综合清纯丝袜自拍| 国产精品四虎| 国产日韩av一区| 奇米影音第四色| 国内自拍视频一区二区三区| 欧美高清激情视频| 99热99精品| 国产色产综合色产在线视频| 日韩欧美亚洲v片| 九七影院97影院理论片久久| 国产日产亚洲精品系列| 青青精品视频播放| 亚洲永久激情精品| 成人av电影在线观看| 欧美一级电影网站| 欧美一性一乱一交一视频| 奇米影视亚洲色图| 日本精品在线播放| 国产精品免费视频观看| 成人黄色激情网| 午夜a成v人精品| 最近最新中文字幕在线| 久久国产精品99久久久久久丝袜| 欧美片第1页| 精品久久久香蕉免费精品视频| 春日野结衣av| 亚洲自拍偷拍网址| 欧美人xxx| 日韩精品日韩在线观看| 欧美一级大片在线观看| 日本丰满大乳奶| 国产精品自拍网站| av久久久久久| 91首页免费视频| 3d黄动漫网站| 日韩欧美999| aa在线视频| 亚洲精品视频免费在线观看| 精品久久99| 69久久夜色精品国产69| 日韩成人综合| 亚洲制服丝袜一区| 欧美精品久久99久久在免费线| 欧美日韩中文在线视频| 国产亚洲1区2区3区| 中文字字幕在线中文乱码电影| 五月天精品一区二区三区| 免费日本一区二区三区视频| 亚洲第一视频网站| 懂色av色香蕉一区二区蜜桃| 国产99在线|中文| 亚洲精品系列| 奇米精品一区二区三区| 亚洲午夜久久久久久久久电影院 | 国产精品影视天天线| 黄色片网址在线观看| 91精品视频网| 成人高清视频在线观看| 成人午夜小视频| 亚洲欧美日韩精品在线| 日韩精品欧美大片| 草草在线视频| 能在线看的av| 91久久国产精品91久久性色| 色偷偷噜噜噜亚洲男人的天堂| 亚洲一区欧美激情| 欧美性大战久久久久xxx| 色综合久久久久综合| aiss精品大尺度系列| 国产精品无圣光一区二区| 欧美jizzhd欧美| 欧美有码在线观看视频| 成人免费毛片aaaaa**| 欧美人体大胆444www| 久久99国产精品久久久久久久久| 99热这里只有精品8| 亚洲精品自拍网| 6080成人| 欧美性猛交xxxx| 2023国产精华国产精品| 亚洲熟妇无码一区二区三区导航| 91精品国产综合久久婷婷香蕉| 爽爽淫人综合网网站| yes4444视频在线观看| 久久精品aaaaaa毛片| 久久97超碰国产精品超碰| 日韩精品视频在线观看视频| 日韩视频在线你懂得| 国产精品白丝jk黑袜喷水| 国产亚洲成人一区| 亚洲自啪免费| 高清国产在线一区| 久久精品人人做人人爽97| 538在线观看| 国产主播喷水一区二区| 99re亚洲国产精品| 黑人玩欧美人三根一起进| 成人黄色在线播放| 欧美日韩高清| 成人性生活视频| 久久精品国产综合精品| 精品少妇一区二区三区在线播放| 国产欧美一区二区精品性色超碰| 国产亚洲观看| 成人免费在线电影| 久久久999免费视频| 蜜桃视频在线观看播放| 51精品国产人成在线观看| 国产日本欧洲亚洲| 奇米777日韩| 日韩女优中文字幕| 欧美午夜寂寞影院| 久久香蕉国产| 日本1区2区3区中文字幕| 久久久精品免费| 国产一区二区三区在线观看精品| 女女色综合影院| 99porn视频在线| 午夜伊人狠狠久久| 波多野结衣在线观看一区二区三区 | 91久久精品美女| 亚洲女厕所小便bbb| 97视频一区| 日韩在线视频在线观看| 亚洲午夜精品久久久久久久久久久久| 日本sm残虐另类| 变态调教一区二区三区| 一本一道久久久a久久久精品91| 欧美一区二区三区小说| 国产精品入口| 丰乳肥臀在线| 警花观音坐莲激情销魂小说| 精品夜色国产国偷在线| 美腿丝袜一区二区三区| 春色校园综合激情亚洲| a级黄色片网站| 中文字幕av一区中文字幕天堂 | 精品视频久久久久久| 蜜桃视频一区二区| 一区二区三区电影大全| 欧美黑人在线观看| 夜夜嗨av一区二区三区四区 | 日本熟妇人妻中出| 国产高清亚洲| 国产精品久久久久久久乖乖| 色妞久久福利网| 99re在线视频这里只有精品| 色国产精品一区在线观看| 久久精品人人做人人综合| 日韩在线观看| 97视频在线免费播放| 色午夜这里只有精品| 99久久精品一区二区| aaa国产精品视频| 日本桃色视频| 亚洲精品欧美日韩专区| 欧美一级淫片007| 国产99久久久精品| 日韩欧美影院| 69xxxx欧美| 免费人成在线观看视频播放| 81精品国产乱码久久久久久| 午夜不卡av在线| 日韩av中文在线观看| 日本在线视频一区二区三区| 一级二级在线观看| 在线观看一区二区三区三州|