在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > DeepDetect――機(jī)器學(xué)習(xí)框架的API統(tǒng)一

            DeepDetect――機(jī)器學(xué)習(xí)框架的API統(tǒng)一

            作者: 時間:2016-10-15 來源:網(wǎng)絡(luò) 收藏

            ,一個專為深度學(xué)習(xí)的開源API和服務(wù)。 的API 簡單直觀、易用、通用和易擴(kuò)展。

            本文引用地址:http://www.biyoush.com/article/201610/307675.htm

            在其他貢獻(xiàn)者的幫助下,他集成了 Caffe , XGBoost 和 Tensorflow (很快將完成),并且未對原服務(wù)或者API修改。

            XGBoost梯度提升法樹是深度模型常用的算法。Tensorflow支持分布式訓(xùn)練模型和數(shù)據(jù),并且能很好的支持LSTM和RNNs神經(jīng)網(wǎng)絡(luò)算法。Caffe擅長處理圖像和文本數(shù)據(jù)。讓你在這些深度學(xué)習(xí)框架間自由轉(zhuǎn)換。

            下面將介紹實(shí)現(xiàn)通用深度學(xué)習(xí)API的主要原則。同時也期待大家貢獻(xiàn)出一些想法和評價(jià)來提高DeepDetect。

            創(chuàng)業(yè)公司期待構(gòu)建一個可認(rèn)證的深度學(xué)習(xí)的SaaS API,可擴(kuò)展,并能快速市場化、產(chǎn)品化;

            企業(yè)期待與已有系統(tǒng)可以無縫銜接,剛開始數(shù)據(jù)流比較慢,后續(xù)模型需要隨著數(shù)據(jù)的增加而進(jìn)行優(yōu)化。并且對應(yīng)的技術(shù)可以復(fù)制到其他項(xiàng)目中或者部門。

            符合上述兩個要求的開源項(xiàng)目有搜索引擎 Elasticsearch ,可擴(kuò)展搜索引擎,清晰的REST風(fēng)格API和完全JSON化的輸入/輸出數(shù)據(jù)結(jié)構(gòu)。

            那深度學(xué)習(xí)API集成服務(wù)該怎樣實(shí)現(xiàn)呢?下面給出幾點(diǎn):

            無需重寫:深度學(xué)習(xí)()就像密碼學(xué),只需生成一次。無需重寫對存在多種深度學(xué)習(xí)庫是非要重要的;

            無縫轉(zhuǎn)換:開發(fā)和產(chǎn)品發(fā)布具有相同的環(huán)境會加快測試和發(fā)布周期,避免出現(xiàn)bug;

            簡化命令行:簡單、人性化的輸入/輸出格式,比如JSON格式。簡單即是王道;

            產(chǎn)品化:專業(yè)的服務(wù)生命周期更期待在數(shù)據(jù)預(yù)測,而不是訓(xùn)練模型。

            如果有一種通用服務(wù)能融合以上的點(diǎn),簡單且強(qiáng)悍的API,它將會同時滿足開發(fā)人員和企業(yè)訴求,并且在開發(fā)和產(chǎn)品之間無縫切換。它將會采用JSON數(shù)據(jù)格式,用單一框架和其他深度學(xué)習(xí)和機(jī)器學(xué)習(xí)開發(fā)庫,并隱藏各代碼間的內(nèi)部復(fù)雜性。

            DeepDetect機(jī)器學(xué)習(xí)API核心部分是資源和數(shù)據(jù)輸入/輸出格式。資源過去是指服務(wù)器資源,而不是指機(jī)器學(xué)習(xí)服務(wù)。此種設(shè)計(jì)的原因是GPU和內(nèi)存在POST機(jī)器學(xué)習(xí)服務(wù)作業(yè)時是緊缺資源。讓他們看看有哪些核心資源:

            服務(wù)器信息:通過GET目錄/info獲取服務(wù)器信息;

            機(jī)器學(xué)習(xí)服務(wù)管理:通過PUT(創(chuàng)建一個機(jī)器學(xué)習(xí)服務(wù))、GET(獲得一個機(jī)器學(xué)習(xí)服務(wù)狀態(tài))和POST(更新一個機(jī)器學(xué)習(xí)服務(wù))目錄/services進(jìn)行機(jī)器學(xué)習(xí)服務(wù)的管理;

            模型訓(xùn)練:通過POST(創(chuàng)建一個新的訓(xùn)練作業(yè))、GET(獲取一個訓(xùn)練作業(yè)的狀態(tài))和DELETE(取消一個訓(xùn)練作業(yè))目錄/train進(jìn)行模型訓(xùn)練;

            數(shù)據(jù)預(yù)測:通過POST(發(fā)送數(shù)據(jù)到服務(wù))目錄/predict進(jìn)行數(shù)據(jù)預(yù)測。

            所以服務(wù)包括機(jī)器學(xué)習(xí)服務(wù)、模型訓(xùn)練和數(shù)據(jù)預(yù)測,這些服務(wù)資源是統(tǒng)計(jì)模型上兩種主要操作。在這個階段監(jiān)督學(xué)習(xí)服務(wù)和無監(jiān)督學(xué)習(xí)服務(wù)沒什么區(qū)別。

            機(jī)器學(xué)習(xí)的主要參數(shù)是輸入或預(yù)處理、統(tǒng)計(jì)學(xué)習(xí)和最終輸出,映入腦海里的是:input,mllib和output三種。mllib指定支持的機(jī)器學(xué)習(xí)庫,input和output不寫自明。下面是一個例子,創(chuàng)建一個圖像分類的服務(wù):

            PUT /services/imageserv

            {

            “description”: “image classification service”,

            “mllib”: “caffe”,

            “model”: {

            “repository”: “/path/to/models/imgnet”,

            “templates”: “../templates/caffe/”

            },

            “parameters”: {

            “input”: {

            “connector”: “image”

            },

            “mllib”: {

            “nclasses”: 1000,

            “template”: “googlenet”

            },

            “output”: {

            }

            },

            “type”: “supervised”

            }

            參數(shù)一般包括input,mllib和output,監(jiān)督學(xué)習(xí)服務(wù)和無監(jiān)督學(xué)習(xí)服務(wù)通過調(diào)整輸出connector設(shè)置。input connector處理輸入格式,支持CSV、libsvm和text等格式,包括圖像和特征。mllib部件指定的是服務(wù)創(chuàng)建、訓(xùn)練和預(yù)測模型的機(jī)器學(xué)習(xí)庫,非常方便的引用各機(jī)器學(xué)習(xí)庫的參數(shù),并且保留了參數(shù)標(biāo)志。

            下面給出一個CSV格式的input connector例子:

            “input”: {

            “id”: “Id”,

            “label”: “Cover”,

            “separator”: “,”,

            “shuffle”: true,

            “test_split”: 0.1

            }

            下面是一個典型訓(xùn)練模型的output connector:

            “output”: {

            “measure”: [

            “acc”,

            “mcll”,

            “f1”

            ]

            }

            接下來給出一個復(fù)雜點(diǎn)的輸出,Mustache格式的輸出模版(標(biāo)準(zhǔn)化的JSON格式可以轉(zhuǎn)化成任意其他的格式):

            {

            “network”: {

            “http_method”: “POST”,

            “url”: “http://localhost:9200/images/img

            },

            “template”: “{ {{#body}}{{#predictions}} ”uri”:”{{uri}}”,

            ”categories”: [ {{#classes}} { ”category”:”{{cat}}”,”score”:

            {{prob}} } {{^last}},{{/last}}{{/classes}} ] {{/predictions}}

            {{/body}} }”

            }

            上述模版可以使監(jiān)督學(xué)習(xí)分類結(jié)果直接輸入Elasticsearch并生成索引,詳情見http://www.deepdetect.com/tutorials/es-image-classifier 。注意到network對象,其POST到輸出服務(wù)器,這個對象也可以用在input connector連接遠(yuǎn)程輸入源。

            上面的模版是一個典型的DeepDetect服務(wù)器監(jiān)督分類JSON輸出:

            “body”: {

            “predictions”: {

            “classes”: [

            {

            “cat”: “n03868863 oxygen mask”,

            “prob”: 0.24278657138347626

            },

            ],

            “loss”: 0.0,

            “uri”: “http://i.ytimg.com/vi/0vxOhd4qlnA/maxresdefault.jpg”

            }

            上述的例子在集成到已存項(xiàng)目管道是不需要“膠水”代碼,這很好的滿足了許多企業(yè)的需求。

            下面快速瀏覽下mllib組件,包括Caffe和XGBoost:

            // Caffe

            “mllib”:{

            gpu:true,

            net:{

            batch_size:128

            },

            solver: {

            test_interval:1000,

            iterations:16000,

            base_lr:0.01,

            solver_type:SGD

            }

            }

            // XGBoost

            mllib: {

            iterations: 100,

            objective: multi:softprob

            }

            對于Caffe的例子,服務(wù)器使用了GPU,其他參數(shù)包括solver和learning rate等。對于XGBoost例子,參數(shù)iterations和objective被設(shè)置。

            接下來重要的部分是數(shù)據(jù)預(yù)測,觀察機(jī)器學(xué)習(xí)服務(wù)生命周期重要的是基于數(shù)據(jù)進(jìn)行預(yù)測:

            curl -X POST 'http://localhost:8080/predict' -d

            '{service:covert,parameters:{input:

            {id:Id,”separator”:,}},data:[test.csv]}'

            這里mllib部分省略掉了,有時在深度網(wǎng)絡(luò)中抽取特征時mllib是有用的。在非監(jiān)督學(xué)習(xí)中是相似的,輸出是一個張量,而不是一個類或者回歸對象:

            mllib:{extract_layer:pool5/7x7_s1}

            最后總結(jié),這歌機(jī)器學(xué)習(xí)API的核心點(diǎn):

            可讀性:所有的數(shù)據(jù)結(jié)構(gòu)是簡單、人性化的;

            通用性:監(jiān)督學(xué)習(xí)服務(wù)和無監(jiān)督學(xué)習(xí)服務(wù)的通用API;

            REST風(fēng)格和可編程的API:這個API通過網(wǎng)絡(luò)獲取,但保留C++原有標(biāo)志;

            “虛構(gòu)”性;能夠很容易的學(xué)習(xí)增加的特征和資源,比如,為多個預(yù)測實(shí)現(xiàn)服務(wù)鏈。



            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉