版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
深度學(xué)習(xí)進(jìn)階筆記之十|那些TensorFlow上好玩的黑科技
引言
TensorFlow是Google基于DistBelief進(jìn)行研發(fā)的第二代人工智能學(xué)習(xí)系統(tǒng),被廣泛用于
語音識別或圖像識別等多項(xiàng)機(jī)器深度學(xué)習(xí)領(lǐng)域。其命名來源于本身的運(yùn)行原理。Tensor(張
量)意味著N維數(shù)組,F(xiàn)low(流)意味著基于數(shù)據(jù)流圖的計算,TensorFlow代表著張量
從圖象的一端流動到另一端計算過程,是將復(fù)雜的數(shù)據(jù)結(jié)構(gòu)傳輸至人工智能神經(jīng)網(wǎng)中進(jìn)行分
析和處理的過程。
TensorFlow完全開源,任何人都可以使用。可在小到一部智能手機(jī)、大到數(shù)千臺數(shù)據(jù)中心
服務(wù)器的各種設(shè)備上運(yùn)行。
『機(jī)器學(xué)習(xí)進(jìn)階筆記』系列將深入解析TensorFlow系統(tǒng)的技術(shù)實(shí)踐,從零開始,由淺入深,
與大家一起走上機(jī)器學(xué)習(xí)的進(jìn)階之路。
本文屬于介紹性文章,其中會介紹許多TensorFlow的新feature和summit上介紹的一些
有意思的案例,文章比較長,可能會花費(fèi)30分鐘到一個小時
Google于2017年2月16日(北京時間)凌晨2點(diǎn)在美國加利福尼亞州山景城舉辦了首
屆TensorFlow開發(fā)者峰會。Google現(xiàn)場宣布全球先進(jìn)的深度學(xué)習(xí)開源框架TensorFlow
正式對外發(fā)布V1.0版本,并保證Google的本次發(fā)布版本的API接口滿足生產(chǎn)環(huán)境穩(wěn)定性
要求。
TensorFlow在2015年年底一出現(xiàn)就受到了極大的關(guān)注,經(jīng)過一年多的發(fā)展,已經(jīng)成為
了在機(jī)器學(xué)習(xí)、深度學(xué)習(xí)項(xiàng)目中非常受歡迎的框架之一。自發(fā)布以來,TensorFlow不斷在
完善并增加新功能,直到在這次大會上發(fā)布了穩(wěn)定版本的這次是谷歌
TensorFlowV1.0o
第一次舉辦的TensorFlow開發(fā)者和爰好者大會,我們從主題演講、有趣應(yīng)用、技術(shù)生態(tài)、
移動端和嵌入式應(yīng)用多方面總結(jié)這次大會上的內(nèi)容,希望能對TensorFlow開發(fā)者有所幫
助。
TensorFlow:為大眾準(zhǔn)備的機(jī)器學(xué)習(xí)框架
TensorFlow在過去獲得成績主要有以下幾點(diǎn):
TensorFlow被應(yīng)用在Google很多的應(yīng)用包括:Gmail,GooglePlay
Recommendation,Search,Translate,Map等等;
在醫(yī)療方面,TensorFlow被科學(xué)家用來搭建根據(jù)視網(wǎng)膜來預(yù)防糖尿病致盲(后面也
提至IJStanford的PHD使用TensorFlow來預(yù)測皮膚癌,相關(guān)工作上了Nature封面);
通過在音樂、繪畫這塊的領(lǐng)域使用TensorFlow構(gòu)建深度學(xué)習(xí)模型來幫助人類更好地
理解藝術(shù);
使用TensorFlow框架和高科技設(shè)備,構(gòu)建自動化的海洋生物檢測系統(tǒng),用來幫助科
學(xué)家了解海洋生物的情況;
TensorFlow在移動客戶端發(fā)力,有多款在移動設(shè)備上使用TensorFlow做翻譯、風(fēng)
格化等工作;
TensorFlow在移動設(shè)備CPU(高通820)上,能夠達(dá)到更高的性能和更低的功耗;
TensorFlowecosystem結(jié)合其他開源項(xiàng)目能夠快速地搭建高性能的生產(chǎn)環(huán)境;
TensorBoardEmbeddedvector可視化工作
能夠幫助PHD/科研工作者快速開展project研究工作。
Google第一代分布式機(jī)器學(xué)習(xí)框架DistBelief不再滿足Google內(nèi)部的需求,Google的
小伙伴們在DistBelief基礎(chǔ)上做了重新設(shè)計,引入各種計算設(shè)備的支持包括
CPU/GPU/TPU,以及能夠很好地運(yùn)行在移動端,如安卓設(shè)備、ios、樹莓派等等,支持多
種不同的語言因?yàn)楦鞣Nhigh-level的api訓(xùn)練僅支持Pythoninference支持包括C++,
Go,Java等等),另外包括像TensorBoard這類很棒的工具,能夠有效地提高深度學(xué)習(xí)
研究工作者的效率。
TensorFlow在Google內(nèi)部項(xiàng)目應(yīng)用的增長也十分迅速在Google多個產(chǎn)品都有應(yīng)用如:
Gmail,GooglePlayRecommendation,Search,Translate,Map等等;有彳各近
100多project和paper使用TensorFlow做相關(guān)工作
#ofGoogledirectoriescontainingmodeldescriptionfiles
Productionuseinmanyareas:
Search
M
MGmail
O
PTranslate
M
PMaps
UAndrotd
2
OPhotos
5o.Speech
n
bYouTube
.
3Play
_manyothers...
Researchusefor
100sofprojectsandpapers
TensorFlow在過去14個月的開源的時間內(nèi)也獲得了很多的成績,包括475+非Google
的Contributors,14000+次commit,超過5500標(biāo)題中出現(xiàn)過TensorFlow的github
project以及在StackOverflow上有包括5000+個已被回答的問題,平均每周80+的
issue提交。
過去1年,TensorFlow從剛開始的0.5,差不多一個半月一個版本:
Progresssincelaunch
v0.5v0.7V09v0.11
InitialTensorFlowiOS;MacGPUHDFS;CUDA8,
ReleaseServingCuDNN5
Nov'15DecHSFeb'16Apc'16Jun*16Aug*16Oct16Nov,16
V06V08VOWv0.12
FasteronGPUs;DistributedStenWmdows7,10.
Python3.3>T<ntorFlowandServer2016;
TensocBoard
Embedding
Visualizef
https〃athub(
TensorFlow1.0的發(fā)布
TensorFlowl.O也發(fā)布了,雖然改了好多api,但是也提供了tf_upgrade.py來對你的代碼
進(jìn)行更新。TensorFlow1.0在分布式訓(xùn)練inception-v3模型上,64張GPU可以達(dá)到58X
的加速比,更靈活的高層抽象接口,以及更穩(wěn)定的APL
NewHighLevelAPI
對于新的抽象接口,TensorFlow相對于其他DeepLearningFrameWork做的比較好,
layers能讓人很容易build一個model,基于layer之上的包括TF.Learn里面仿照
scikit-learn風(fēng)格的各種estimator設(shè)計以及之后將融入TensorFlow官方支持的Keras,
能夠讓小伙伴用幾行配置模型結(jié)構(gòu)、運(yùn)行方式、模型輸出等等;在這層之上就有canned
Estimator,所謂的modelinbox,比如Ir,kmeans這類。
Modelsinabox
一Trainandevaluate
-----------------models
Buildmodels
Layers
BroadMLSupport
在TensorFlow中有一些高興的機(jī)器學(xué)習(xí)的算法實(shí)現(xiàn),如LR,SVM、RandomForest,
在TF.Learn中有很多常用的機(jī)器學(xué)習(xí)算法的實(shí)現(xiàn),用戶可以很快的使用,而且API風(fēng)格和
scikit-learn很類似,而且在后續(xù)的video提到會有分布式的支持。
XLA:AnExperimentalTensorFlowCompiler
TensorFlowXLA能夠快速地將TensorFlow轉(zhuǎn)成比較底層的實(shí)現(xiàn)(依賴device),這里
后面有個talk,詳細(xì)講述了XLA。
XLA:AnExperimentalTensorFlowCompiler
TFgraphs90
V*WvwvvU(%rdx)tXrax
AAA/WVAA3
PMVvvUwvJvaovaps(%rax)tXXHBO
0x90000007wilpsXianO,XXMS.Xxaa*
v?ovapsiKflae.(Vdi)
廣泛的合作
IncludedinIBM'sPowerAI
Supportmovidusmyriad2accelerator
Qualcomm,sHexagonDSP(8倍加速,這里還請了Qualcomm的產(chǎn)品負(fù)責(zé)人來
站臺)
TensorFlowInDepth
TensorFlow在research和production上有很好的優(yōu)勢,如下圖:
Performancematters
Research
?Iteratequickly
?Trainmodelsfaster
?Runmoreexperimentsinparallel
Production
?Serverfarmsandembedded
?CPUs,GPUs,TPUs,andmore
?Low-latencyserving
在模型訓(xùn)練上,1機(jī)8卡的性能無論是在一些標(biāo)準(zhǔn)的基準(zhǔn)測試或者是真實(shí)數(shù)據(jù)上都有比較好
的加速比:
TensorFlowPerformance++
Inception-v3Training-SyntheticData
DGX-1:7.37xspeedupat8GPUsK80:7.5xspeedupat8GPUs
*nc?pllofw3IrMrangonP1Q0GPU*inc?<MorMr3IrwwiQonKMGPU*
當(dāng)然在多機(jī)分布式訓(xùn)練上,能夠達(dá)到64張GPU上58倍的加速比:
TensorFlowPerformance++
Inception-v3DistributedTraining-SyntheticData
58xspeedupat64GPUs(8Servers/8GPUseach)
TensorFlow被一些頂尖的學(xué)術(shù)研究項(xiàng)目使用:
NeuralMachineTranslation
NeuralArchitectureSearch
ShowandTell
當(dāng)然TensorFlow在生產(chǎn)上也被廣泛應(yīng)用:
ServemodelsinproductionwithTensorFlowServing
ContinuousTraningPipelineServing
如MobileGoogleTranslate,Gmail等等也被國內(nèi)外很多大廠使用做為模型訓(xùn)練的工具。
合airbnb?ATOUS
OCFtMCCABWCtARMCEVA
CISTQDeepMind9Dropboxebay
?(intel)
GocgleIBMPowerSystems▼JD.COM京東
Movidius^
QUALCO/WVK口i
o
這些都是JeffDean在Keynote的內(nèi)容講到的內(nèi)容內(nèi)容有點(diǎn)多而且個人感覺這群google
的小伙伴的ppt做的有點(diǎn)任性,不過誰叫他們牛逼呢,接下來幾個talk比較有技術(shù)含量,
相信各位會更加有興趣。
有趣的應(yīng)用案例
皮膚癌圖像分類
皮膚癌在全世界范圍內(nèi)影響深遠(yuǎn),患病人數(shù)眾多,嚴(yán)重威脅身體機(jī)能。所幸醫(yī)療機(jī)構(gòu)統(tǒng)計皮
膚癌在早期的治愈率是98%,更值得慶幸的是在這樣一個時代,智能終端能夠在早期及時
發(fā)現(xiàn),及早預(yù)防(到2020,預(yù)計全球有61億臺智能手機(jī))。
Goodnews
?Survivalrateformelanomais98%ifdetectedearly
?By2020,therewillbe6.1billionsmartphonesincirculation
globally
這位小哥做的工作是啥呢,他拿到了一批皮膚癌的數(shù)據(jù),然后使用一個pretrained的
inception-v3對數(shù)據(jù)來做finetuning,在手機(jī)上做inference:
TransferLearning
Withlnception-V3
生成結(jié)果:
Results
Metenoma:130IrrtMes
&
占
Sensitrvrty
使用Tensorflow在手機(jī)上很容易搭建,完成一個app用來做早起皮膚癌的檢測:
相關(guān)成果發(fā)表在Nature,而且在Nature的封面,這是一個特別成功地通過計算機(jī)視覺及
深度學(xué)習(xí)相關(guān)的技術(shù),利用廉價的移動設(shè)備,能夠很有效地檢測是否有皮膚癌,大大節(jié)省了
醫(yī)療檢測的成本,相信在未來會有更多相關(guān)的技術(shù)出現(xiàn)。
利用AI預(yù)測糖尿病,預(yù)防失明
這個talk講的前面也提到的通過視網(wǎng)膜圖像預(yù)測糖尿病,預(yù)防失明:
HowDRisDiagnosed:RetinalFunduslinages
x
Hemorrhages
HealthyDiseased
NoDRMildDRModerateDRSevereDRProhferatDR
Evenwhenavailable,ophthalmologistsareinconsistent
通過視網(wǎng)膜圖片預(yù)測糖尿病是一個困難的問題,即使是專業(yè)的醫(yī)生,也很難去判斷,但是深
度學(xué)習(xí)卻可以幫助我們:
Adaptdeepneuralnetworktoreadfundusimages
通過收集適量的醫(yī)療數(shù)據(jù),構(gòu)建一個26layers的深度卷積網(wǎng)絡(luò),我們可以讓網(wǎng)絡(luò)自動學(xué)習(xí)
這些圖像中的feature,來獲得較高的分類準(zhǔn)確率,而這個是人眼很難解決的。這里有一
個demo的演示:
ARDA:AutomatedRetinalDiseaseAssessment
..一,CNOOfCMAfif
/
模型的評估比專業(yè)醫(yī)生對比,F(xiàn)-score為0.95,比專業(yè)醫(yī)生的中位數(shù)0.91還高,這個太厲
害了,相信不久會看到深度學(xué)習(xí)在醫(yī)療,尤其是這種病癥圖像分析上有很多驚人的成果。
MM*I.1"IMMWanCWIMMKAlTXCAMOCUWIT*
DevelopmentandValidationofaDeepLearningAlgorithm
forDetectionofDiabeticRetinopathyF-score
inRetinalFundusPhotographs
0.950.91
ns9.963images
AUC991%r968.9931AlgorithmOphthalmologist
(median)
*ThestudybyGulshanand
colleaguestrulyrepresentsthe
bravenewworldinmedicine.*
"Googlejustpublishedthispaper
inJAMA(impactfactor37)(...)It
actuallylivesuptothehype."
02040eo80100
1-Speafbcity.%
Wide&DeepInGooglePlay
這項(xiàng)技術(shù)有段時間特別火,被用來做推薦相關(guān)的應(yīng)用,首先解釋下Memorization和
Generalization:
Wide&Deep
memorizationgeneralization
relevancediversity
模型的基本結(jié)構(gòu)如下:
整個推薦會同時考慮到商品的相關(guān)性以及一些推理關(guān)系,例如老鷹會飛、麻雀會飛這類邏輯
屬于而說帶翅膀的動物會飛這屬于
Memorization,Genralizationo
在具體的應(yīng)用場景,如GooglePlay的App推薦:
P(lnstall)
WideLinearGeneralizationcanbeachievedbyadding
Modelslessspecificfeatureslikeappcategory.
Thecrossbelowcanapplytoalltravelapps.
notjustPricelineorKayak
IHAVH
GeneralCrossedFeature
ANOCnstaM.cKeQory^trtvel
這里構(gòu)建一個如下圖的網(wǎng)絡(luò)來進(jìn)行訓(xùn)練(jointtraining):
P(lnstall)
DeepNeuralDeepmodelscangeneralizepredictionto
<userfimpression>thatneverorrarely
Networksco-occurredviadenseembeddings
Hiddenlayerscanlearncomplex,but
Hiddenlessinterpretablefeatureinteractions
Layers
Dense
Embeddings
DIUserFeatureImpressionFeature
I—Imstilled和hpncKne
為啥要jointtraining,而不是直接用deep和wide的來做ensemble呢?這里做這個給
出一個解釋,因?yàn)閣ide和deep會相互影響,結(jié)果精確度會高,并且model會比較小:
ExperimentResults
Table1:Offline&onlinemetricsofdifferentmodels.
OnlineAcquisitionGainisrelativetothecontrol.
ModelOfflineAUCOnlineAcquisitionGain
Wide(control)0.7260%
Deep0.722+2.9%
Wide&Deep0.728+3.9%
而上面提到的Wide&DeepLearningModel在Tensorflow下僅僅只需要10行代碼來
實(shí)現(xiàn)(突然想起了那個100美元畫一條線的故事):
TrainWide&Deepmodelsin10linesofcode
?Definewidenodelfeaturesandcrosses.
query=sparse.column.with.hash.txicket(,'query'?,num.buckets)
MM
dodd=sparse_column_with_bash-bucket(doc1drnumwbuckets)
query_x_docid=crossed.column([query,docid),nu?_buckets)
tridc.cols=[query.x,docid,..?]
nDefinedeepmodelfeaturesandenbeddings.
query_emb-enbedding.coluan(query,d*i?iens1on=32)
docid.emb=embedding.coluan(doc,1d,dimensions32)
dcep.cols=[query.emb,docid.eab,...]
9Definemodelstructureandstarttraining.querydoctd^ery.x.doctd
mONNL-inearComb-inedClassIfier(
w'ide.cols,d??p_co\s9dnn.hidden-unitssCSOO,2H8,160))
m.f1t(train_data,labels,...)
Magenta:音樂和藝術(shù)生成
這個項(xiàng)目講的是利用深度學(xué)習(xí)來做一些藝術(shù)相關(guān)的工作,項(xiàng)目地
址:tensorflow-magenta有一些很好玩的東西,如風(fēng)格化,生成藝術(shù)家風(fēng)格的音樂,利用
深度學(xué)習(xí)模型模擬人類對藝術(shù)的想象力,創(chuàng)造出屬于DeepLearning的藝術(shù)風(fēng)格。想要詳
細(xì)了解的可以看看這里的介紹welcome-to-magenta還有前面提到的github上project。
DeepMind團(tuán)隊(duì)所做的一些開發(fā)工作
DeepMind在被Google收購之后,也選擇TensorFlow作為其深度學(xué)習(xí)相關(guān)研究的平臺,
然后做了很多很有意思的東西:
DataCenterCooling
這是Google在全世界各地若干個數(shù)據(jù)中心之一:
Google的小伙伴利用強(qiáng)化學(xué)習(xí),是的!你沒有聽錯,應(yīng)用在AlphaGo上的一種技術(shù)來做
數(shù)據(jù)中心冷卻設(shè)備的自動控制,并且效果十分顯著:
Gorila
Gorial是DeepMind下的一個強(qiáng)化學(xué)習(xí)的框架,基于TensorFlow的高級API實(shí)現(xiàn),很穩(wěn)
定,只需要更改其中極少部分代碼就可以完成新的實(shí)驗(yàn),支持分布式訓(xùn)練,十分高效,并
且訓(xùn)練好的模型可以通過TensorFlowServing快速地部署到生產(chǎn)環(huán)境。
AlphaGo
這個相信不說,大家都知道的,第一次在圍棋上打敗人類,然后升級版的Master連續(xù)60
盤不敗,原理不說了,網(wǎng)絡(luò)上很多分析文章,貼兩張圖聊表敬意:
o-eud-e/CPJessavEOO.PU-EIdsp/Ksdllu
OD£d<?
?oex£1OQfstousaae^ui*CO0B&
?1ESJ?kE8o*isEJi8c?£X
Qasz8?sc?0OGwOCOPM^AJedns&B
二
BU'E一B
(俎)?
下7>
用
乞SvaSv
—、£?,
困
的
汨
密
時
密
S?3/
l
困
國f
ii-acestM<w<9
??
uo-len-B后
WaveNet:語音音頻合成
這里DeepMind的小哥演示了WaveNet的一些demo,具體的可以參見這里來了解。貼
一些效果對比:
XLA以及Keras與TensorFlow的融合
XLA與TensorFlow的結(jié)合
TensorFlow的各方面的優(yōu)勢都很突出,除了在速度這塊有些不足,如果,TensorFlow能
在速度上做進(jìn)一步優(yōu)化,會怎么樣呢?
Howdowe
keepthestrengths,
butadd
morespeed?!
PhotobyLwpKommunAAddhttp*//gooQI/NOQ68
是的,Google的開發(fā)者也意識到這個問題,于是有了這個XLA,XLA的優(yōu)勢:
提高執(zhí)行速度,編譯子圖會減少生命周期較短的op的時間,來至少TensorFlow執(zhí)
行是的時間;融合pipelined的op來減少內(nèi)存的開銷;
通過分析和調(diào)節(jié)內(nèi)存需求,來減少很多中間結(jié)果的緩存
減少定制化op的依賴,通過提供自動化融合底層ops的性能來達(dá)到原先需要手工去
融合定制化op的性能
減少移動設(shè)備的內(nèi)存占用,使用AOT編譯子圖來減少tensorflow執(zhí)行時間,能夠
共享object/headerfilepair給其他應(yīng)用,能夠在MobileInference上減少幾個數(shù)量級的
內(nèi)存占用
提高了程序的可移植性,能夠在不改變大部分tensorflow源碼的前提下,很容易地
更改以適應(yīng)新的硬件設(shè)備,
XLA主要包括兩種使用方式:JIT(Justintime)能夠自動將Graph中的部分子圖通過XLA
融合某些操作來減少內(nèi)存需求提高執(zhí)行速度;AOT(Ahead0ftime)可以提前將Gr叩h轉(zhuǎn)換
為可以執(zhí)行的源碼,減少生成的可執(zhí)行文件的大小,減少運(yùn)行的時間消耗,一個很明顯的
應(yīng)用場景是模型在移動設(shè)備上的Inference優(yōu)化。
因?yàn)閄LA原理涉及到編譯器,這塊不是我擅長的地方,所以這里就這樣過了,如果有興趣
的小伙伴可以關(guān)注下xladocs還有此次TensorFlowDevSummit上XLA的talkXLA:
TensorFlow,Compiled!再貼幾張XLA的一些評測性能:
JITmodelbenchmarksGPU
■XIAapwMl
■XLAatov4Mm
JITmicro-benchmarksGPU
JITmodelbenchmarksCPU
Keras與TensorFlow的集成
Keras是一個可以在很多平臺上應(yīng)用的深度學(xué)習(xí)框架/AnAPISpecifyforbuildingdeep
已經(jīng)會在官方支
learningmodelsacrossmanyplatforms"oTensorFlowTensorFlow
持,1.1會在tf.contrib,1..2會tf.keras,而且會支持TensorFlowServing,是不是很心動。
Keras的作者在TensorFlowDevSummit上講了以下內(nèi)容:
所以之后Keras的用戶可以更快的在TensorFlow的框架下做出相應(yīng)地模型,能更方便地進(jìn)
行分布式訓(xùn)練,使用的進(jìn)行超參,還有更更重要的這
GoogleCloudML,:TF-Servingo
些feature現(xiàn)在好像還沒有支持,不過應(yīng)該很快了,大家可以期待下。這里,Francois
Chollet使用Keras構(gòu)造了一個Video-QA的model,這個模型在Keras的官方文檔也有
描述,具體可以去那邊看看,大概是這樣一個場景:
ToyvideoQAproblem
>Whatisthewomandoing?
>packing
>Whatisthecoiorofhershirt?
>black
這樣一個場景,利用原生的python構(gòu)造太難了,但是用Keras,只需要考慮設(shè)計你的模型,
如何來完成類似的功能,完全不用擔(dān)心coding的實(shí)現(xiàn),如圖是一個類似問題的一個簡單地
模型設(shè)計:
Roadmap
1.01.11.2
.—■.
cor?layersLayerslayers
EstimttorEftirrwUx
CannedEstimators
contribEstvnatorCannedEstimatorsMoreCannedEstimators
CannedEstwnaKxs
而在Keras中如何實(shí)現(xiàn)呢
video=tf.keras.layers.Input(shape=(None,150,150,3))
cnn=tf.keras.applications.InceptionV3(weights='imagenet',include_top=False,
pool='avg)
cnn.trainable=False
encoded_frames=tf.keras.layers.TimeDistributed(cnn)(video)
encoded_vid=tf.layers.LSTM(256)(encode_frames)
question=tf.keras.layers.Input(shape=(100),dtype='int32')
x=tf.keras.layers.Embedding(10000,256,mask_zero=True)(question)
encoded_q=tf.keras.layers.LSTM(128)(x)
x=tf.keras.layers.concat([encoded_vid,encoded_q])
x=tf.keras.layers.Dense(128,activation=tf.nn.relu)(x)
outputs=tf.keras.layers.Dense(1000)(x)
model=tf.keras.models.Mode([video,question],outputs)
pile(optimizer=tf.AdamOptimizer(),
loss=tf.softmax_crossentropy_with_logits)
這里代碼是無法在現(xiàn)在的tensorflow版本上跑的,如果想了解下keras上構(gòu)建上述模型的
簡便性,可以看看這里.Keras在構(gòu)造深度模型的方便是大家眾所周知的,值得期待之后
Keras在TensorFlow的更新:
Whatishappening
K^fascompatibAitymoduteintroducsdinTdnsorFtow.ker<1%|
?CoreTensorFlowlayersandKeraslayersarethesameoblectt
?KorasModelavailableincocoTensorFlow
?DeepintegrationwithTensorFlowfeatures(e.g.Experiment)
TensorFlowHigh-LevelAPIs:ModelsinaBox
TensorFlow在靈活性、可擴(kuò)展性、可維護(hù)性上做的很好,但是現(xiàn)在在高級叩i、模塊式算
法這塊原先都還不足,但是GoogleBrain的工程師在這個talk上介紹了一些High-level
API的相關(guān)工作。
layers:封裝了一些層的操作簡化用原生TensorFlow源碼比如new一個variable
來做weight等等;
EstimatororKeras:封裝了一些更高層的操作包括,train和evaluate操作,用戶
可以通過幾行代碼來快速構(gòu)建訓(xùn)練和評估過程;
CannedEstimators:更高級API,所謂的Modelsinabox
x-tf.Uy?rs.conv2d(x,kern?l..siz<?(5,5],...)
s
ma>poo<2x2??tf.layers.?aB_pool1ng2d(x,k?rnel_$-fze[2l2],...)
x?tf.layer*.convld(xtkemel.rlfS】,...?
x■tf.lay?rs.Ms_pool1ng2d(xtkern?l_s1z?>[2.2),???)
M?tf.layer*.dense(x,.nn.rwlu)
K?If.layers.dropov:(x,0.5)
dense0?nex)x■tf.layers.donse(x)
構(gòu)造左圖中所示的深度網(wǎng)絡(luò)只需要如圖右中的七行代碼同樣,構(gòu)建訓(xùn)練、評估、預(yù)測也很
快可以通過api調(diào)用完成:
結(jié)果是ModelinaBox
area=real_valued_column("square_foot")
rooms=real_valued_column(nnum_rooms'')
zip_code=sparse_column_with_integerized_feature("zip_code",100000)
regressor=LinearRegressor(feature_columns=[area,room,zip_code])
classifier.fit(train_input_fn)
classifier.evaluate(eval_input_fn)
一些其他技術(shù)以及生態(tài)
MLToolkit
TensorFlow可能剛開始被人知曉,就是因?yàn)榇蠹叶加X得他是一個深度學(xué)習(xí)的框架,其實(shí)不
是,現(xiàn)在TensorFlow上還有很多機(jī)器學(xué)習(xí)的算法集成:
MLToolkit
?Linear/Logisticregression
?KMeansClustering
?GaussianMixtureModel
?WALSMatrixFactorization
?SupportVectorMachine
?StochasticDualCoordinateAscent
?RandomForest
?DNN,RNN,LSTM,Wide&Deep,...
而且算法API的開發(fā)都是仿照scikit-learn的風(fēng)格,有Python下做機(jī)器學(xué)習(xí)的小伙伴,可
以很快的適應(yīng)。這里值得提出的,有趣TensorFlow對機(jī)器學(xué)習(xí)和深度學(xué)習(xí)模型的支持,
小伙伴們可以特別容易地結(jié)合傳統(tǒng)的機(jī)器學(xué)習(xí)方法和深度學(xué)習(xí)模型來一起訓(xùn)練:
分布式TensorFlow
TensorFlow在分布式性能上,前面也提到了,在1.0版本上有了很大的提升可以做到64
塊GPU上達(dá)到58倍的加速,這里先基本介紹下數(shù)據(jù)并行和模型并行:
Modelparallelism
TrainingdeepLSTMmodelswith8GPUsperworker
ParameterS?rvtf
?并行每一介worker上有完整的模型,部分?jǐn)?shù)據(jù),參數(shù)的更新傳給ParamsServer;
?模型并行每一worker上有部分的網(wǎng)珞模型;
怎么在TensorFlow寫分布式代碼,這里我就不說了,很簡單地配置,這里我講下,可能大
部分像我這樣的小伙伴之前不太了解的一些彩蛋在TensorFlow中做分布式訓(xùn)練的一些技
巧,有過分布式train的經(jīng)驗(yàn)應(yīng)該會很感激這些黑科技:-Round-Robinvariables-
Loadbalancingandp
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人貸款合同資產(chǎn)保全與處置規(guī)定4篇
- 2025年度代理開票業(yè)務(wù)風(fēng)險管理合作協(xié)議4篇
- 二零二四年度豬肉產(chǎn)品溯源體系建設(shè)合同3篇
- 二零二五年度房地產(chǎn)投資融資顧問服務(wù)協(xié)議
- 2025年中國光電式感煙探測器市場調(diào)查研究報告
- 尿急神經(jīng)損傷康復(fù)效果分析-深度研究
- 城市更新中的文化空間策略-深度研究
- 2025至2031年中國有機(jī)玻璃膠行業(yè)投資前景及策略咨詢研究報告
- 人工智能與統(tǒng)計-深度研究
- 2025年度油氣田廢棄井修復(fù)打井合同范本4篇
- 2024年09月2024興業(yè)銀行總行崗測評筆試歷年參考題庫附帶答案詳解
- 山東省煙臺市招遠(yuǎn)市2024-2025學(xué)年九年級上學(xué)期期末考試英語(筆試)試題(含答案)
- 駱駝祥子讀書筆記一至二十四章
- 2025年方大萍安鋼鐵招聘筆試參考題庫含答案解析
- 2024年醫(yī)師定期考核臨床類考試題庫及答案(共500題)
- 2025年電力工程施工企業(yè)發(fā)展戰(zhàn)略和經(jīng)營計劃
- 2022年公務(wù)員多省聯(lián)考《申論》真題(安徽C卷)及答案解析
- 大型活動保安培訓(xùn)
- 2024年大學(xué)本科課程教育心理學(xué)教案(全冊完整版)
- 信息系統(tǒng)運(yùn)維服務(wù)類合同6篇
- 江蘇省七市2025屆高三最后一卷物理試卷含解析
評論
0/150
提交評論