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

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

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

3天內不再提示

如何在Hadoop上運行這些深度學習工作

電子工程師 ? 來源:lq ? 2019-01-15 16:29 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Hadoop是用于大型企業數據集的分布式處理的最流行的開源框架,它在本地和云端環境中都有很多重要用途。

深度學習對于語音識別,圖像分類,AI聊天機器人,機器翻譯等領域的企業任務非常有用,僅舉幾例。為了訓練深度學習/機器學習模型,可以利用TensorFlow / MXNet / Pytorch / Caffe / XGBoost等框架。有時需要將這些框架進行組合使用以用于解決不同的問題。

為了使分布式深度學習/機器學習應用程序易于啟動,管理和監控,Hadoop社區啟動了Submarine項目以及其他改進,例如一流的GPU 支持,Docker容器支持,容器DNS支持,調度改進等。

這些改進使得在Apache Hadoop YARN上運行的分布式深度學習/機器學習應用程序就像在本地運行一樣簡單,這可以讓機器學習工程師專注于算法,而不是擔心底層基礎架構。通過升級到最新的Hadoop,用戶現在可以在同一群集上運行其他ETL / streaming 作業來運行深度學習工作負載。這樣可以輕松訪問同一群集上的數據,從而實現更好的資源利用率。

典型的深度學習工作流程:數據從各個終端(或其他來源)匯聚到數據湖中。數據科學家可以使用筆記本進行數據探索,創建 pipelines 來進行特征提取/分割訓練/測試數據集。 并開展深度學習和訓練工作。 這些過程可以重復進行。因此,在同一個集群上運行深度學習作業可以顯著提高數據/計算資源共享的效率。

讓我們仔細看看Submarine項目(它是Apache Hadoop項目的一部分),請看下如何在Hadoop上運行這些深度學習工作。

為什么叫Submarine 這個名字?

因為潛艇是唯一可以將人類帶到更深處的裝置設備。B-)

圖片由NOAA辦公室提供,海洋勘探與研究,墨西哥灣2018年。

SUBMARINE 概覽

Submarine項目有兩個部分:Submarine計算引擎和一套集成 Submarine的生態系統軟件和工具。

Submarine計算引擎通過命令行向YARN提交定制的深度學習應用程序(如 Tensorflow,Pytorch 等)。這些應用程序與YARN上的其他應用程序并行運行,例如Apache Spark,Hadoop Map / Reduce 等。

最重要的是我們的有一套集成Submarine的生態系統軟件和工具,目前包括:

Submarine-Zeppelin integration:允許數據科學家在 Zeppelin 的notebook中編寫算法和調參進行可視化輸出,并直接從notebook提交和管理機器學習的訓練工作。

Submarine-Azkaban integration:允許數據科學家從Zeppelin 的notebook中直接向Azkaban提交一組具有依賴關系的任務,組成工作流進行周期性調度。

Submarine-installer:在你的服務器環境中安裝Submarine和 YARN,輕松解決Docker、Parallel network和nvidia驅動的安裝部署難題,以便你更輕松地嘗試強大的工具集。

圖表說明了 Submarine 的整體構成,底部顯示了 Submarine 計算引擎,它只是 YARN 的一個應用程序。 在計算引擎之上,它集成到其他生態系統,如筆記本電腦(Zeppelin / Jupyter)和 Azkaban。

SUBMARINE 能夠做什么?

通過使用 Submarine 計算引擎,用戶只需提交一個簡單的 CLI 命令即可運行單/分布式深度學習訓練工作,并從YARN UI 中獲取完整的運行情況。所有其他復雜性,如運行分布式等,都會由 YARN 負責。我們來看幾個例子:

就像 HELLO WORLD 一樣輕松啟動分布式深度學習訓練

以下命令啟動深度學習訓練工作讀取 HDFS上 的 cifar10 數據。

這項工作是使用用戶指定的 Docker 鏡像,與YARN 上運行的其他作業共享計算資源(如CPU / GPU /內存)。

yarn jar hadoop-yarn-applications-submarine-.jar job run -name tf-job-001–docker_image -input_path hdfs://default/dataset/cifar-10-data -checkpoint_path hdfs://default/tmp/cifar-10-jobdir -num_workers2-worker_resources memory=8G,vcores=2,gpu=2-worker_launch_cmd “cmdforworker …” -num_ps2-ps_resources memory=4G,vcores=2-ps_launch_cmd “cmdforps”

通過 TENSORBOARD 訪問你所有的訓練歷史任務

以下命令啟動深度學習訓練工作讀取 HDFS 上的 cifar10 數據。

yarn jar hadoop-yarn-applications-submarine-.jar job run –name tensorboard-service-001 –docker_image–tensorboard

在 YARN UI 上,用戶只需單擊即可訪問 tensorboard:

在同一 Tensorboard 上查看訓練狀態和歷史記錄。

云端數據科學家 NOTEBOOK

想在 GPU 機器上用筆記本編寫算法嗎?使用 Submarine,你可以從 YARN 資源池獲取云端 notebook。

通過運行以下命令,你可以獲得一個notebook,其中包括 8GB 內存,2 個 vcores 和 4 個來自 YARN 的 GPU。

yarn jar hadoop-yarn-applications-submarine-.jar job run –name zeppelin-note—book-001–docker_image –num_workers1–worker_resources memory=8G,vcores=2,gpu=4–worker_launch_cmd “/zeppelin/bin/zeppelin.sh” –quicklink Zeppelin_Notebook=http://master-0:8080

然后在 YARN UI上,你只需單擊一下即可訪問筆記本。

SUBMARINE 生態

Hadoop Submarine 項目的目標是提供深度學習場景中的數據(數據采集,數據處理,數據清理),算法(交互式,可視化編程和調優),資源調度,算法模型發布和作業調度的全流程服務支持。

通過與 Zeppelin 結合,很明顯可以解決數據和算法問題。Hadoop Submarine 還將解決 Azkaban 的作業調度問題。 三件套工具集:Zeppelin + Hadoop Submarine + Azkaban 為你提供一個零軟件成本的、開放所有源碼的隨時可用的深度學習開發平臺。

SUBMARINE 集成 ZEPPELIN

zeppelin 是一個基于 notebook 交互式的數據分析系統。你可以使用 SQL,Scala,Python 等來制作數據驅動的交互式協作文檔。

在完成機器學習之前,你可以使用 Zeppelin 中的 20 多種解釋器(例如 Spark,Hive,Cassandra,Elasticsearch,Kylin,HBase 等)在 Hadoop 中的數據中收集數據,清理數據,特征提取等。模特訓練,完成數據預處理過程。

我們提供 Submarine 解釋器,以支持機器學習工程師從 Zeppelin 筆記本中進行算法開發,并直接向 YARN 提交訓練任務并從 Zeppelin 中獲得結果。

使用 ZEPPELIN SUBMARINE 解釋器

你可以在 zeppelin 中創建 submarine 解釋器。

在 notebook 的第一行種輸入 %submarine.python REPL(Read-Eval-Print Loop,簡稱REPL)名稱,你就可以開始編寫 tensorflow 的 python 算法,你可以在一個 Notebook 中至上而下分段落的編寫一個或多個算法模塊,分塊編寫算法結合可視化輸出將會幫助你更容易驗證代碼的正確性。

The zeppelin submarine 解釋器會自動將分塊編寫的算法模塊進行合并提交到 submarine 計算引擎中執行。

通過點擊 Notebook 中的 YARN LOG 超鏈接,你將會打開 YARN 的管理頁面查看執行的任務。

在 YARN 管理頁面中,你可以打開自己的任務鏈接,查看任務的 docker 容器使用情況以及所有執行日志。

有了這個強大的工具,數據科學家不需要了解 YARN 的復雜性或如何使用 Submarine 計算引擎。提交 Submarine 訓練工作與在筆記本中運行 Python 腳本完全相同。最重要的是,用戶無需更改其已有算法程序即可轉換為 Submarine 作業運行。

SUBMARINE 集成 AZKABAN

Azkaban 是一種易于使用的工作流程安排服務,通過 Azkaban 安排 Zeppelin 編寫的 Hadoop Submarine Notebook 來安排指定 Notebook 設置某些段落之間的工作流程。

你可以在 Zeppelin 中使用 Azkaban 的作業文件格式,編寫具有執行依賴性的多個筆記本執行任務。

Azkaban 能夠調度這些通過 zeppelin 編輯好的具有依賴關系的 notebook。

一旦執行了帶有 Azkaban 腳本的 notebook,它將被編譯為 Azkaban 支持的工作流并提交給 Azkaban 以執行。

HADOOP SUBMARINE 安裝程序

由于分布式深度學習框架需要在多個 Docker 容器中運行,并且需要能夠協調容器中運行的各種服務,因此需要為分布式機器學習完成模型訓練和模型發布服務。這其中將涉及到多個系統工程問題,如 DNS,Docker,GPU,網絡,顯卡驅動,操作系統內核修改等,正確部署這些運行環境是一件非常困難和耗時的事情。

我們為你提供了 submarine installer ,用于運行時環境的安裝, submarine installer 是一個完全由 Shell 腳本編寫,提供了簡單易用的菜單化操作方式,你只需要在一臺可以聯網的服務器上運行,就可以輕松便捷的安裝好運行環境。

安裝過程中你如果遇見問題,還可以通過我們提供的安裝手冊進行解決。

項目狀態

Alpha 版本的解決方案已經合并到 Haodop 主干分支。 3.2.0版本的一部分仍處于活動開發/測試階段。Umbrella JIRA: YARN-8135.

Submarine 能夠運行在 Apache Hadoop 3.1+.x release 版本上,實際上你只需要安裝 Apache Hadoop 3.1 的 YARN 就可以使用完整的 Submarine 的功能和服務,經過我們的實際使用, Apache Hadoop 3.1 的 YARN 可以完全無誤的支持 Hadoop 2.7 + 以上的 HDFS 系統。

案例 – 網易

網易杭研大數據團隊是 Submarine 項目的主要貢獻者之一,主要希望通過 Submarine 來解決機器學習開發和運維過程中遇到的以下問題:

現有計算集群的狀態:

網易通過互聯網提供在線游戲/電商/音樂/新聞等服務。

YARN 集群中運行有 ~ 4k 服務器節點

每天 100k 計算任務

單獨部署的 Kubernetes 集群(配備GPU)用于機器學習工作負載

每天 1000+ 計算學習任務

所有的 HDFS 數據都是通過 Spark、Hive、impala 等計算引擎進行處理

存在的問題:

用戶體驗不佳

沒有集成的操作平臺,全部通過手動編寫算法,提交作業和檢查運行結果,效率低,容易出錯。

利用率低

無法重用現有的YARN群集資源。

無法集成現有的大數據處理系統(例如:spark,hive等)

維護成本高(需要管理分離的集群)

需要同時運維 Hadoop 和 Kubernetes 兩套操作環境,增加維護成本和學習成本。

網易內部 Submarine 部署情況

積極與 Submarine 社區合作開發,已經驗證 20 個 GPU 節點集群上的 Submarine 的可靠性。

計劃將來將所有深度學習工作轉移到Submarine上

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

    關注

    0

    文章

    141

    瀏覽量

    15526
  • 數據集
    +關注

    關注

    4

    文章

    1236

    瀏覽量

    26188
  • 深度學習
    +關注

    關注

    73

    文章

    5598

    瀏覽量

    124392

原文標題:{Submarine} 在 Apache Hadoop 中運行深度學習框架

文章出處:【微信號:BigDataDigest,微信公眾號:大數據文摘】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    何在OpenCV中使用基于深度學習的邊緣檢測?

    在這篇文章中,我們將學習何在OpenCV中使用基于深度學習的邊緣檢測,它比目前流行的canny邊緣檢測器更精確。
    的頭像 發表于 05-19 09:52 ?2895次閱讀
    如<b class='flag-5'>何在</b>OpenCV中使用基于<b class='flag-5'>深度</b><b class='flag-5'>學習</b>的邊緣檢測?

    從零開始學習hadoop?hadoop快速入門

    倉庫三、Mapreduce學習1. Mapreduce四個階段介紹2. Job、Task介紹3. 默認工作機制4. 創建MR應用開發,獲取年度的最高氣溫5. 在Windows運行MR
    發表于 03-13 15:21

    hadoop工作流程

    Hadoop主要是分布式計算和存儲的框架,其工作過程主要依賴于HDFS分布式存儲系統和Mapreduce分布式計算框架,以下是其工作過程:階段 1用戶/應用程序可以通過指定以下項目來向Hado
    發表于 05-11 16:02

    學習hadoop需要什么基礎

    發現真正的問題所在。接觸過hadoop的人都知道,單獨搭建hadoo里每個組建都需要運行環境、修改配置文件、測試等過程。如果僅僅是安裝一下運行環境就行了,那你就大錯特錯了,幾乎每個組件都是坑,
    發表于 09-13 13:37

    Hadoop基礎入門之發行版本的選擇

    等待后,等到的結果可能是安裝失敗······Hadoop運行環境的搭建就是初學者要解決的一個大問題,運行環境搭建不成功,也就無從著手學習了。各種發行版本的
    發表于 11-28 13:25

    hadoop和spark的區別

    學習hadoop已經有很長一段時間了,好像是二三月份的時候朋友給了一個國產Hadoop發行版下載地址,因為還是在學習階段就下載了一個三節點的學習
    發表于 11-30 15:51

    大數據hadoop入門之hadoop家族產品詳解

    )。Flume設計的目的是便捷地從日志文件系統直接把數據導入到Hadoop數據集合(HDFS)中。以上這些數據轉移工具都極大地方便了使用的人,提高了工作效率,把精力專注在業務分析
    發表于 12-26 15:02

    hadoop最新發行穩定版:DKHadoop版本選擇詳解

    Hadoop對于從事互聯網工作的朋友來說已經非常熟悉了,相信在我們身邊有很多人正在轉行從事hadoop開發的工作,理所當然也會有很多hadoop
    發表于 12-28 16:08

    深度學習模型是如何創建的?

    到準備模型,然后再在邊緣的嵌入式系統運行。訓練深度學習模型是過程的工作量和時間密集型部分,其中通過提供需要時間和
    發表于 10-27 06:34

    什么是深度學習?使用FPGA進行深度學習的好處?

    ) 來解決更復雜的問題,深度神經網絡是一種將這些問題多層連接起來的更深層網絡。這稱為深度學習。目前,深度
    發表于 02-17 16:56

    何在嵌入式設備運行高性能Java

    何在嵌入式設備運行高性能Java
    發表于 03-28 09:43 ?16次下載

    怎么樣才能快速搭建Hadoop運行環境

    存儲,MapReduce 為海量的數據提供了計算。這篇文章主要就是介紹一下如何搭建一個 Hadoop 運行環境。
    發表于 04-02 08:00 ?12次下載
    怎么樣才能快速搭建<b class='flag-5'>Hadoop</b><b class='flag-5'>運行</b>環境

    何在xWR1xxx芯片運行mmw demo

    何在xWR1xxx芯片運行mmw demo
    發表于 11-01 08:27 ?0次下載
    如<b class='flag-5'>何在</b>xWR1xxx芯片<b class='flag-5'>上</b><b class='flag-5'>運行</b>mmw demo

    何在深度學習結構中使用紋理特征

    篇文章中,我們將討論紋理分析在圖像分類中的重要性,以及如何在深度學習中使用紋理分析。我們還將討論一些常用的紋理提取技術,這些技術用于預先訓練的模型,以更有效地解決分類任
    的頭像 發表于 10-10 09:15 ?1834次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>深度</b><b class='flag-5'>學習</b>結構中使用紋理特征

    何在DGX Spark運行NVIDIA Omniverse

    首先感謝 Vigor 同學第一時間的分享,以下是具體如何在 DGX Spark 運行 Omniverse 的方法。
    的頭像 發表于 12-17 10:13 ?612次閱讀
    如<b class='flag-5'>何在</b>DGX Spark<b class='flag-5'>上</b><b class='flag-5'>運行</b>NVIDIA Omniverse