国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ML規模復雜的相關基礎架構

Tensorflowers ? 來源:TensorFlow ? 作者:TensorFlow ? 2021-10-21 14:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Waze 是世界上最大的基于社區的交通和導航應用。該應用借助實時數據來幫助用戶避開路上的障礙,享受無憂旅途。除了移動導航功能,Waze 還提供網絡平臺、拼車、合作服務、廣告投放等功能。如此廣泛的服務組合帶來了多種技術挑戰和豐富案例。

Waze 的 ML 應用

Waze 依賴許多 ML 解決方案,其中包括:

預測 ETA

匹配乘客和司機(拼車)

推送適當的廣告

但是,要把這些事情做好并達到“生產級別”并不是那么容易。這類項目通常需要復雜的相關基礎架構,以便將其投入生產,因此需要多位工程師(數據科學家、軟件工程師和軟件可靠性工程師)一起投入大量時間。如果將大規模數據、低延遲(實際上為實時)推理、多樣性案例和大量地理空間數據等 Waze 的特殊要求結合在一起,則難度更甚。

復雜的相關基礎架構

https://papers.nips.cc/paper/5656-hidden-technical-debt-in-machine-learning-systems.pdf

上述理由很好地解釋了,為什么不經周密安排就開始在 Waze 中實施 ML 會造成混亂局面。對我們來說,這表現為:

使用多個 ML 框架——你能想到的都有(sklearn、XGBoost、TensorFlow、fbprophet、Java PMML、人工設定的框架等等)

ML 和運算脫節——模型和特征工程被工程師嵌入 (Java) 后端服務器,監控和驗證能力有限

培訓、驗證和部署使用半手動操作

從想法到投入生產的開發周期異常漫長

總的來說,數據科學家最終把大量的時間耗費在運算和監控上,而不能專注于實際的建模和數據處理。

業務發展到一定程度時,我們決定整改這混亂的局面,在自動化和流程方面投資,以便能夠更快地擴大業務規模。我們決定采用全周期數據科學理念,重點投資能夠大幅提高速度和質量的方法。這意味著,在我們想要建立的這個新方法中,只需一個數據科學家就能完成從研究到生產級服務的產品周期。

在新方法中,數據科學家可以直接為生產做出貢獻,發揮自己最大優勢。他們可專注于建模和數據處理,獲得許多基礎架構和開箱即用的運算。雖然上述愿景還沒有完全實現,但我們覺得本文所闡述的內容對實現最終目的來說至關重要。

Waze 的 ML 堆棧

為將上述理念轉化為技術規范,我們決心創建一個簡單、穩定、自動化和統一的方法來構建 Waze 的 ML 流水線。

深入研究技術要求后,我們得出了以下評判標準:

簡單——易于理解、使用和操作

可托管——沒有服務器,沒有硬件,只有代碼

可自定義——免費獲得簡單的東西,但也有足夠的靈活性,可以為 5% 需要跳出局限的東西而激發奇思妙想

可擴容——自動可擴容的數據處理、訓練、推理

利用 Python——我們需要一些已經可以投入生產的工具,可以兼容當今大多數工具和代碼,并且適合一般的數據科學家。現在除了 Python,幾乎沒有其他選擇

基于上述原因,我們選擇 TFX 及其內置組件來提供這些功能,大部分是開箱即用的。

TFX

https://tensorflow.google.cn/tfx

值得一提的是,Waze 是在 Google Cloud Platform (GCP) 上運行其技術棧。

GCP 恰好可提供一套名為 Vertex AI 的工具。Waze 就是在此 ML 基礎架構平臺上構建的。雖然我們使用了 Vertex AI 托管式服務的許多組件,但我們將在本文中重點介紹 Vertex Pipelines,這是 ML 流水線的一個框架,能夠幫助我們封裝 TFX(或任何流水線)的復雜性和設置。

Vertex Pipelines

https://cloud.google.com/vertex-ai/docs/pipelines

連同我們的數據技術棧,Waze 的整體 ML 架構(均符合可托管、可擴容,且利用 Python 等標準)如下:

細心的讀者會在這里注意到所謂的警告:我們所有流程都通過 TensorFlow 進行。

TFX 指的是 TensorFlow(盡管這種說法已經不再完全準確了,但我們假設它是這個意思)。

已經不再完全準確了

https://github.com/tensorflow/tfx/blob/master/tfx/examples/penguin/experimental/penguin_utils_sklearn.py

當你處理許多不同的案例時,這些警告一開始可能看起來會有點嚇人。

幸運的是,TF 生態系統很豐富,而且 Waze 的優點是有規模足夠大的數據,神經網絡會收斂。

自從開始這項工作以來,我們還沒有發現在哪個案例中, TF 不能像其他框架那樣更好地或充分地解決問題(在這里不討論微觀的百分點,不進行 Kaggle 比賽,而是想得到一些能夠投入生產的東西)。

Waze TFX

您可能認為選擇 TFX 和 Vertex 流水線已解決我們所有的問題,但這并不完全正確。

為了讓這項工作真正變得簡單,我們不得不寫一些“膠水代碼”(整合上述架構圖中的各種產品),并提取足夠的細節,以便普通的數據科學家能夠有效和快速地使用這些東西。

這能帶來以下好處:

可以淘汰樣板文件

可隱藏所有通用的 TFX 組件,這讓數據科學家可以只專注于特征工程和建模,并免費獲得整個流水線

可生成基于 BigQuery 的訓練/評估分塊

可提供預先實現的可選通用特征轉換(例如,擴容、歸一化、插補)

可提供預先實現的 Keras 模型(例如 DNN/RNN 模型。其類似 TF Estimator,但在具有 TFX 特征的 Keras 中)

效用函數(例如,TF 列的準備)

tf.transform 特征工程代碼的單元測試框架

使用安裝了所有 TFX 軟件包的云運行實例,從 Airflow 中協調和調度流水線運行(無需在 Airflow Composer 上安裝)

我們已經將其全部放入一個易于使用的 Python 軟件包中,稱為 “wze-data-tfx”。

在上文中,我們為數據科學家提供了一個超級詳細的演示、使用指南和代碼模板,所以常見的 DS 工作流是:創建分支,改變配置,稍微調整一下代碼,部署。

作為參考,這里提供了一個簡單的 waze-data-tfx 流水線:

1.配置

_DATASET_NAME = 'tfx_examples'
_TABLE_NAME = 'simple_template_data'

_LABEL_KEY = 'label'
_CATEGORICAL_INT_FEATURES = {
  "categorical_calculated": 2,
}
_DENSE_FLOAT_FEATURE_KEYS = ["numeric_feature1", "numeric_feature2"]
_BUCKET_FEATURES = {
  "numeric_feature1": 5,
}
_VOCAB_FEATURES = {
  "categorical_feature": {
      'top_k': 5,
      'num_oov_buckets': 3
  }
}

_TRAIN_BATCH_SIZE = 128
_EVAL_BATCH_SIZE = 128
_NUM_EPOCHS = 250

_TRAINING_ARGS = {
  'dnn_hidden_units': [6, 3],
  'optimizer': tf.keras.optimizers.Adam,
  'optimizer_kwargs': {
      'learning_rate': 0.01
  },
  'layer_activation': None,
  'metrics': ["Accuracy"]
}

_EVAL_METRIC_SPEC = create_metric_spec([
  mse_metric(upper_bound=25, absolute_change=1),
  accuracy_metric()
])

2.特征工程

def preprocessing_fn(inputs):
  """tf.transform's callback function for preprocessing inputs.

  Args:
      inputs: map from feature keys to raw not-yet-transformedfeatures.

  Returns:
      Map from string feature key to transformed feature operations.
  """
  outputs = features_transform(
      inputs=inputs,
      label_key=_LABEL_KEY,
      dense_features=_DENSE_FLOAT_FEATURE_KEYS,
      vocab_features=_VOCAB_FEATURES,
      bucket_features=_BUCKET_FEATURES,
  )
  return outputs

3.建模

def _build_keras_model(**training_args):
   """Build a keras model.

   Args:
       hidden_units: [int], the layer sizes of the DNN (input layer first).
       learning_rate: [float], learning rate of the Adam optimizer.

   Returns:
       A keras model
   """
   feature_columns = 
       prepare_feature_columns(
           dense_features=_DENSE_FLOAT_FEATURE_KEYS,
           vocab_features=_VOCAB_FEATURES,
           bucket_features=_BUCKET_FEATURES,
       )

   return _dnn_regressor(deep_columns=list(feature_columns.values()),
                         dnn_hidden_units=training_args.get(
                             "dnn_hidden_units"),
                         dense_features=_DENSE_FLOAT_FEATURE_KEYS,
                         vocab_features=_VOCAB_FEATURES,
                         bucket_features=_BUCKET_FEATURES,
                         )

4.協調

pipeline_run = WazeTFXPipelineOperator(
   dag=dag,
   task_id='pipeline_run',
   model_name='basic_pipeline_template',
   package=tfx_pipeline_basic,
   pipeline_project_id=EnvConfig.get_value('gcp-project-infra'),
   table_project_id=EnvConfig.get_value('gcp-project-infra'),
   project_utils_filename='utils.py',
   gcp_conn_id=gcp_conn_id,
   enable_pusher=True,
)

很簡單,對不對?

配置文件提交到代碼庫后,系統就會對其進行部署并設置持續訓練以及一個完整的流水線,包括所有 TFX 和 Vertex AI 方法,如數據驗證、部署到 Dataflow 的轉換、監控等。

總結

當我們的一位數據科學家休完長假回來,不得不使用這個新的框架來處理一個案例時,我們知道本項研究取得了不錯的結果。據她所說,她能夠在幾個小時內啟動一個可投入生產的完整流水線,而在她休假之前,她需要花幾周的時間才能做到這一點。

展望未來,我們計劃在 waze-data-tfx 中融入更多內容。我們認為,擁有此通用基礎架構的一個關鍵優勢是:添加一個特征后,所有人都可以“免費”使用該特征。例如,我們計劃在流水線中添加額外的組件,如 Infra Validator 和 Fairness Indicators。當這些組件得到支持后,每個新的或現有的 ML 流水線將以開箱即用的方式添加這些組件,無需額外的代碼。

我們正在計劃有關部署的其他改進工作。希望在保證部署質量的同時,盡可能地實現自動化。

我們目前正在探索的一種方式是使用 Canary 部署。數據科學家只需要配置一個評估指標,框架(使用 Vertex Prediction 數據流量分塊功能和其他持續評估方法)將在生產環境中測試新模型,并根據評估指標逐步部署或回滾。


責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 模型
    +關注

    關注

    1

    文章

    3752

    瀏覽量

    52111
  • 代碼
    +關注

    關注

    30

    文章

    4968

    瀏覽量

    73970

原文標題:了解 Waze 如何利用 TFX 擴大可以投入生產的 ML 規模

文章出處:【微信號:tensorflowers,微信公眾號:Tensorflowers】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    BGSA403ML10:低電阻天線調諧開關的卓越之選

    BGSA403ML10:低電阻天線調諧開關的卓越之選 在電子工程師的日常工作中,天線調諧開關的選擇至關重要,它直接影響著整個射頻系統的性能。今天,我們就來深入了解一款優秀的低電阻天線調諧開關
    的頭像 發表于 12-21 11:25 ?725次閱讀

    你相信光嗎?| Samtec助力AI/ML系統拓撲中的光連接

    。 AI/ML硬件領域的這些創新,催生了一項日益迫切的需求:擴展GPU及其他AI加速器的規模,以應對最新、最大型的大語言模型。而實現GPU的大規模互聯,離不開光連接技術,這正是Samtec的用武之地。 ? ? ?? FireBl
    的頭像 發表于 11-13 15:03 ?1914次閱讀
    你相信光嗎?| Samtec助力AI/<b class='flag-5'>ML</b>系統拓撲中的光連接

    TensorRT-LLM的大規模專家并行架構設計

    之前文章已介紹引入大規模 EP 的初衷,本篇將繼續深入介紹 TensorRT-LLM 的大規模專家并行架構設計與創新實現。
    的頭像 發表于 09-23 14:42 ?1107次閱讀
    TensorRT-LLM的大<b class='flag-5'>規模</b>專家并行<b class='flag-5'>架構</b>設計

    AT_DEVICE支持ML307嗎?

    這個到底支不支持ML305 ML307,圖形界面有 ,但是保存配置后并沒有這個文件,如果沒有就在介紹上刪掉吧,浪費一天時間加這個東西
    發表于 09-11 07:42

    4G網絡AT模塊:ml307A 總是連接失敗,為什么?

    使用 AT client 連接 ml307A 4G網絡,在多個地方使用網絡,然后就經常出現連接失敗或關閉失敗: [E/at.skt.ml307] ml307 device(ml
    發表于 09-11 07:05

    【下載】5G/6G 公開資料整理|AI/ML、NTN、ISAC 等方向(持續更新)

    /切片/節能等)- NTN(非地面網絡,含衛星直連、LEO/MEO/地面融合)- ISAC(感知與通信一體化,JCAS/聯合定位)- RAN 架構與關鍵技術(架構演進、功耗優化、超大規模
    發表于 09-08 16:07

    規模專家并行模型在TensorRT-LLM的設計

    DeepSeek-V3 / R1 等模型采用大規模細粒度混合專家模型 (MoE) 架構,大幅提升了開源模型的質量。Llama 4 和 Qwen3 等新發布的開源模型的設計原則也采用了類似的大規模細粒度 MoE
    的頭像 發表于 09-06 15:21 ?1232次閱讀
    大<b class='flag-5'>規模</b>專家并行模型在TensorRT-LLM的設計

    聚徽廠家視角——X86 架構 vs. ARM 架構:工控一體機的算力、功耗與成本差異解析

    ,有助于企業精準選型,實現工業生產效益最大化。 算力比拼:復雜運算與高效并行的較量 X86 架構復雜指令集下的計算強者 X86 架構憑借復雜
    的頭像 發表于 06-07 14:56 ?991次閱讀

    面向半定制AI基礎架構的NVIDIA NVLink Fusion技術

    為了高效應對 AI 工作負載,數據中心正在被重構。這是一項非常復雜的工作,因此,NVIDIA 目前正在交付以 NVIDIA 機架級架構為單位的 AI 工廠。為了讓 AI 工廠發揮最佳性能,許多加速器需要以更大的帶寬和更低的延遲在機架規模
    的頭像 發表于 06-06 14:59 ?1354次閱讀
    面向半定制AI基礎<b class='flag-5'>架構</b>的NVIDIA NVLink Fusion技術

    知識分享 | 評估模型架構——如何實現?

    確保良好的模型架構對于開發安全和可靠的軟件非常重要。本文為您介紹MES Model Examiner? (MXAM)如何優化模型架構,簡化復雜度管理步驟,并最終提升軟件質量。
    的頭像 發表于 06-05 11:46 ?656次閱讀
    知識分享 | 評估模型<b class='flag-5'>架構</b>——如何實現?

    構建大規模Simulink模型的標準化最佳實踐

    隨著系統規模復雜性的增長,工程團隊面臨著一系列在小規模上不存在的全新挑戰。
    的頭像 發表于 04-24 13:03 ?1059次閱讀
    構建大<b class='flag-5'>規模</b>Simulink模型的標準化最佳實踐

    AI原生架構升級:RAKsmart服務器在超大規模模型訓練中的算力突破

    近年來,隨著千億級參數模型的崛起,AI訓練對算力的需求呈現指數級增長。傳統服務器架構在應對分布式訓練、高并發計算和顯存優化等場景時逐漸顯露瓶頸。而RAKsmart為超大規模模型訓練提供了全新的算力解決方案。
    的頭像 發表于 04-24 09:27 ?791次閱讀

    EM儲能網關 ZWS智慧儲能云應用(11) — 一級架構 主從架構

    ZWS智慧儲能云針對儲能場景下不同的架構體系進行了兼容,可以適配用戶面臨的復雜現場環境,滿足更深層次的管理和維護需求。簡介儲能系統包含PCS、BMS、EMS等多個組件,不同儲能架構管理和決策方式也有
    的頭像 發表于 04-17 13:00 ?770次閱讀
    EM儲能網關 ZWS智慧儲能云應用(11) — 一級<b class='flag-5'>架構</b> 主從<b class='flag-5'>架構</b>

    關于ML4842輸出PWM波形失真問題?

    如示波器波形所示,ML4842芯片11腳PWM輸出波形失真是什么原因造成,原理圖上的PWM輸出管已經拆除,實際原理圖與圖上原理圖有區別,ML4842電壓VCC獨立供電
    發表于 04-09 14:52

    Raspberry Pi Pico 2 上實現:實時機器學習(ML)音頻噪音抑制功能

    Arm公司的首席軟件工程師SandeepMistry為我們展示了一種全新的巧妙方法:在RaspberryPiPico2上如何將音頻噪音抑制應用于麥克風輸入。機器學習(ML)技術徹底改變了許多軟件應用
    的頭像 發表于 03-25 09:46 ?1225次閱讀
    Raspberry Pi Pico 2 上實現:實時機器學習(<b class='flag-5'>ML</b>)音頻噪音抑制功能