老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

如何使用TensorFlow服務和Flask部署Keras模型-創新互聯

如何使用TensorFlow服務和Flask部署Keras模型,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

西疇網站建設公司創新互聯,西疇網站設計制作,有大型網站制作公司豐富經驗。已為西疇上1000家提供企業網站建設服務。企業網站搭建\成都外貿網站建設要多少錢,請找那個售后服務好的西疇做網站的公司定做!

部署Keras模型通常需要抽象出你的機器學習模型,并將其與易于使用的API端點一起部署或集成。例如,我們可以提供一個URL端點,任何人都可以使用它來發出POST請求,他們會得到模型推斷的JSON響應,而不必擔心其技術性細節。

我們將創建一個TensorFlow服務器來部署我們在Keras內置的InceptionV3圖像分類卷積神經網絡(CNN)。 然后,我們將創建一個簡單的Flask服務器,該服務器將接受POST請求并執行Tensorflow服務器所需的一些圖像預處理,并返回JSON響應。

什么是TensorFlow服務?

TensorFlow服務是你訓練應用機器學習模型的方式。

如何使用TensorFlow服務和Flask部署Keras模型

了解TensorFlow服務(https://www.youtube.com/watch?v=q_IkJcPyNl0)

TensorFlow服務使得投入生產的過程模型更容易、更快速。它允許你安全地部署新模型并運行實驗,同時保持相同的服務器體系結構和API。開箱即用,它提供了與TensorFlow的集成,而且它可以擴展為其他類型的模型。

安裝TensorFlow服務

先決條件:請創建一個python虛擬環境,并在其中安裝帶有TensorFlow后端的Keras。在這里閱讀更多(https://keras.io/#installation)

注意:所有命令都在Ubuntu 18.04.1 LTS的python虛擬環境中執行。

現在,在同一虛擬環境中運行以下命令(使用sudo獲取root權限):

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

你可以使用以下命令升級到tensorflow-model-server的較新版本:

如何使用TensorFlow服務和Flask部署Keras模型

我們將要構建的目錄概述

在開始之前了解目錄結構將有助于我們清楚地了解每個步驟的位置。

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

你可以從我的GitHub存儲庫中獲取所有這些文件:https://github.com/himanshurawlani/keras-and-tensorflow-serving

導出用于Tensorflow服務的Keras模型

在本教程中,我們將使用download_inceptionv3_model.py在Keras中下載并保存具有Imagenet權重的InceptionV3 CNN。你可以下載keras.applications庫中提供的任何其他模型,或者如果你在Keras中構建了自己的模型,則可以跳過此步驟。

如何使用TensorFlow服務和Flask部署Keras模型

執行上面的腳本后,你應該得到以下輸出:

如何使用TensorFlow服務和Flask部署Keras模型

現在我們以Keras格式保存了我們的InceptionV3 CNN(inception.h6)。我們希望以TensorFlow服務器可以處理的格式導出我們的模型。我們通過執行export_saved_model.py腳本來完成此操作。

TensorFlow提供了SavedModel格式作為導出模型的通用格式。在后臺中,我們的Keras模型完全按照TensorFlow對象進行指定,因此我們可以使用Tensorflow方法將其導出。TensorFlow提供了一個便利的函數tf.saved_model.simple_save(),這適用于大多數用例。

如何使用TensorFlow服務和Flask部署Keras模型

輸出:

如何使用TensorFlow服務和Flask部署Keras模型

我們收到此警告是因為我們已經下載了預先訓練過的模型。我們可以使用這個模型進行推理,但如果我們想進一步訓練它,我們需要在加載后運行compile()函數。現在可以安全地忽略此警告。執行此腳本后,以下文件保存在my_image_classifier目錄中:

如何使用TensorFlow服務和Flask部署Keras模型

假設我們將來想要更新我們的模型(可能是因為我們收集了更多的訓練數據并在更新的數據集上訓練了模型),我們可以這樣做:

1. 在新的keras模型上運行相同的腳本

2. 在export_saved_model.py中將export_path ='../my_image_classifier/1'更新為export_path ='../ my_image_classifier/2'

TensorFlow服務將在my_image_classifier目錄中自動檢測模型的新版本,并在服務器中更新它。

啟動TensorFlow服務器

要在本地計算機上啟動TensorFlow服務器,請運行以下命令:

如何使用TensorFlow服務和Flask部署Keras模型

·--model_base_path:這必須是一個絕對路徑,否則你會得到一個錯誤提示:

如何使用TensorFlow服務和Flask部署Keras模型

·--rest_api_port:Tensorflow服務將在端口8500上啟動gRPC ModelServer,并且REST API將在端口9000上可用。

·--model_name:這將是你將用于發送POST請求的服務服務器的名稱。你可以在此處輸入任何名稱。

測試我們的TensorFlow服務器

如何使用TensorFlow服務和Flask部署Keras模型

從原始數據到生產模型(來源https://twitter.com/tensorflow/status/832008382408126464)

serving_sample_request.py腳本向TensorFlow服務服務器發出POST請求。輸入圖像通過命令行參數傳遞。

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

輸出:

如何使用TensorFlow服務和Flask部署Keras模型

與后續調用相比,TensorFlow服務服務器需要稍多的時間來響應第一個請求。

為什么我們需要Flask服務器?

我們可以看到,我們在serving_sample_request.py(前端調用者)中執行了一些圖像預處理步驟。以下是在TensorFlow服務器上創建Flask服務器的原因:

·當我們向前端團隊提供API端點時,我們需要確保不會因預處理技術問題而造成阻礙。

·我們可能并不總是擁有Python后端服務器(例如Node.js服務器),因此使用numpy和keras庫進行預處理可能會很麻煩。

·如果我們計劃提供多個模型,那么我們將不得不創建多個TensorFlow服務服務器,并且必須在我們的前端代碼中添加新的URL。但是我們的Flask服務器會保持域URL相同,我們只需要添加一個新路由(一個函數)。

·可以在Flask應用程序中執行基于訂閱的訪問、異常處理和其他任務。

我們要做的是消除TensorFlow服務器和我們的前端之間的緊密耦合。

如何使用TensorFlow服務和Flask部署Keras模型

多個TensorFlow服務服務器隱藏在Flask服務器后面

在本教程中,我們將在與TensorFlow服務相同的機器和相同的虛擬環境中創建Flask服務器,并使用已安裝的庫。理想情況下,兩者都應該在不同的機器上運行,因為太多的請求會導致Flask服務器因為執行圖像預處理而變慢。此外,如果請求數量非常高,單個Flask服務器可能還不夠。如果我們有多個前端呼叫者,我們可能還需要一個排隊系統。盡管如此,我們可以使用這種方法來制定令人滿意的概念證明。

創建Flask服務器

先決條件:從此處在python虛擬環境中安裝Flask。

我們只需要一個app.py文件來創建我們的Flask服務器。

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

轉到保存app.py文件的目錄,然后使用以下命令啟動Flask服務器:

如何使用TensorFlow服務和Flask部署Keras模型

·FLASK_ENV =development:這啟用了調試模式,它基本上為你提供了完整的錯誤日志。不要在生產環境中使用它。

·flask run命令自動執行當前目錄中的app.py文件。

·--host = 0.0.0.0:這使你可以從任何其他計算機向Flask服務器發出請求。要從其他計算機發出請求,你必須指定運行Flask服務器的計算機的IP地址來代替localhost。

輸出:

如何使用TensorFlow服務和Flask部署Keras模型

使用上一個命令啟動TensorFlow服務服務器:

如何使用TensorFlow服務和Flask部署Keras模型

這是一個腳本(auto_cmd.py),用于自動啟動和停止兩個服務器(TensorFlow Serving和Flask)。你也可以為兩個以上的服務器修改此腳本。

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

請記住更改auto_cmd.py第10行的路徑,使其指向app.py的目錄。你可能還需要更改第6行,以使其指向虛擬環境的bin。然后,你可以通過在終端中執行以下命令從任何目錄執行上述腳本:

如何使用TensorFlow服務和Flask部署Keras模型

測試我們的Flask服務器和TensorFlow服務器

我們使用flask_sample_request.py腳本發出示例請求。該腳本基本上模仿了來自前端的請求:

1. 我們獲取輸入圖像,將其編碼為base64格式,并使用POST請求將其發送到Flask服務器。

2. Flask服務器解碼此base64格式并為我們的TensorFlow服務器預處理它。

3. 然后,Flask服務器向我們的TensorFlow服務器發出POST請求并解碼響應。

4. 解碼后的響應被格式化并發送回前端。

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

輸出:

如何使用TensorFlow服務和Flask部署Keras模型

如何使用TensorFlow服務和Flask部署Keras模型

我們的flask服務器目前只有一條路由用于我們的單個Tensorflow服務器。我們可以通過在不同或相同的機器上創建多個Tensorflow服務器來提供多種模型。為此,我們只需要在app.py文件中添加更多路由(函數),并在其中執行所需的模型特定預處理。我們可以將這些路線提供給我們的前端團隊,讓他們根據需要調用模型。

處理跨源HTTP請求

考慮這樣一個場景,我們使用Angular發出POST請求,我們的Flask服務器接收OPTIONS標頭,而不是POST。

·當Web應用程序在請求具有與其自己的源不同的源(域,協議和端口)的資源時,會發出跨源HTTP請求。

·CORS(跨源資源共享)是一種機制,它使用其他HTTP標頭告訴瀏覽器讓在一個源(域)上運行的Web應用程序有權從不同來源的服務器訪問所選資源。在此處閱讀有關CORS的更多信息(https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS)

因此,Angular不會從Flask服務器返回任何響應。要解決這個問題,我們必須在app.py中啟用Flask-CORS。

TensorFlow服務使機器學習集成到網站和其他應用程序中變得非常容易。由于keras(https://github.com/keras-team/keras-applications)提供了大量預構建模型,因此利用最少的機器學習和深度學習算法知識來開發超級有用的應用程序是可能的。

關于如何使用TensorFlow服務和Flask部署Keras模型問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注創新互聯-成都網站建設公司行業資訊頻道了解更多相關知識。


網站題目:如何使用TensorFlow服務和Flask部署Keras模型-創新互聯
URL地址:http://www.xueling.net.cn/article/dschgo.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 国产一区二区三区亚洲 | 日本久久一区二区 | 学生妹人人摸碰 | 又爽又黄又无遮挡的激情视频免费 | 精品无码三级在线观看视频 | 国产欧美日韩另类在线专区 | 国产vps毛片| 国产精品久久久久久无 | 娇小小小泬ⅩXXX深喉 | 狠狠狠狠狠狠狠干 | 我被黑人一夜P了10次 | 欧美黄色看 | 深夜影院a | 亚洲国产va精品久久久不卡综合 | 99久久精品免费播放 | 一区福利视频 | 精品国产乱码久久久久乱码 | 国产精品乱码一区二三区 | 亚洲4区| 热久久中文字幕 | 99久热国产精品视频尤物 | 日本狂喷奶水在线播放212 | 中日韩av在线播放 | 久久久精品人妻久久影视 | 欧美亚洲国语精品一区二区 | 国产毛片久久久久久 | 国产亚洲欧美日韩精品一区二区三区 | 国产一区二区三区在线看 | 一级特黄大片在线观看 | 亚洲国产乱人在线观看 | 68精品国产免费久久久久久婷婷 | 国产猛烈高潮尖叫视频免费 | 粉嫩av一区二区在线播 | 中国老女人一级毛片视频 | 妇女bbbb插插插视频 | JIZZJIZZ国产 | 色婷婷精品大在线视频 | BBWBBWBBW少妇毛茸茸 | www.色涩涩.com | 色狠狠av五综合久久久 | 欧美精品网站 |