北京2019年4月17日 /美通社/ -- 基于其特性帶來(lái)的種種優(yōu)勢(shì),Python在近年來(lái)的各大編程語(yǔ)言排行榜上也是“一路飚紅”,并成為越來(lái)越多開(kāi)發(fā)者計(jì)劃學(xué)習(xí)的編程語(yǔ)言。如今,大家最迫切關(guān)心的是,該如何利用Python構(gòu)建相應(yīng)的技術(shù)體系以匹配到自己的實(shí)際業(yè)務(wù)中去?
4月13日,由中國(guó)IT技術(shù)社區(qū)CSDN舉辦的“2019 Python開(kāi)發(fā)者日”在北京聯(lián)合大學(xué)隆重開(kāi)啟。本次活動(dòng)邀請(qǐng)10余位身處一線(xiàn)的Python技術(shù)專(zhuān)家,聚焦Web開(kāi)發(fā)、數(shù)據(jù)分析、人工智能等技術(shù)模塊,全方位探討他們對(duì)真實(shí)生產(chǎn)環(huán)境中使用Python應(yīng)對(duì)IT挑戰(zhàn)的真知灼見(jiàn),并與在座的數(shù)百位學(xué)生、開(kāi)發(fā)者等業(yè)內(nèi)同行進(jìn)行了深入交流。接下來(lái)的第二天,大會(huì)還針對(duì)不同層次的開(kāi)發(fā)者,安排了深度培訓(xùn)實(shí)操環(huán)節(jié),為開(kāi)發(fā)者們帶來(lái)更多深度實(shí)戰(zhàn)的機(jī)會(huì)。
CSDN 總編輯谷磊在活動(dòng)中致辭并表示:“CSDN是中國(guó)專(zhuān)業(yè)的IT技術(shù)社區(qū),有2700萬(wàn)注冊(cè)會(huì)員,我們每年會(huì)做一個(gè)大型調(diào)查問(wèn)卷,今年調(diào)查結(jié)果顯示:近六成開(kāi)發(fā)者最近想學(xué)習(xí)的語(yǔ)言是Python。CSDN社區(qū)上有很多Python學(xué)習(xí)資源,很多用戶(hù)反饋,學(xué)了這些資源以后更想看到的大型科技互聯(lián)網(wǎng)公司是怎樣應(yīng)用Python做實(shí)踐應(yīng)用案例的。這是我們做Python開(kāi)發(fā)者日活動(dòng)的初衷。”
下面我們就來(lái)一起回顧下這10位身處一線(xiàn)的技術(shù)專(zhuān)家在活動(dòng)首日所做的精彩分享。
阿里巴巴技術(shù)專(zhuān)家 楊群:基于Python特性帶來(lái)的好處,數(shù)據(jù)分析是第一位的
首先楊群從“為什么大家都說(shuō)Python慢”問(wèn)題開(kāi)始講起,從GIL對(duì)性能影響、解釋器及Python語(yǔ)言本身特征等方面解釋。
隨后,他從服務(wù)選型、性能瓶頸分析等問(wèn)題方面,給出了一些優(yōu)化方法,如通過(guò)數(shù)據(jù)進(jìn)行優(yōu)化、IO密集型與CPU密集型的緩存方法、緩存的開(kāi)發(fā)函數(shù)、懶加載等方法與技巧。
最后,楊群總結(jié)了三大關(guān)鍵問(wèn)題:
首先,基于Python特性帶來(lái)的好處,數(shù)據(jù)分析是第一位的;
其次,需要合理的測(cè)試環(huán)境,不要因?yàn)樾阅苷{(diào)優(yōu)而影響服務(wù)穩(wěn)定性或者出現(xiàn)故障;
第三要有的放矢,有時(shí)服務(wù)拆分或微服務(wù)化是有用的方法,對(duì)架構(gòu)有好處。
博世(中國(guó))投資有限公司大數(shù)據(jù)分析師 王紅星:在實(shí)際業(yè)務(wù)中要看具體的業(yè)務(wù)需求再定模型
王紅星分享了《數(shù)據(jù)分析及大數(shù)據(jù)在制造業(yè)的應(yīng)用》的主題演講。
他重點(diǎn)講到了數(shù)據(jù)分析的基本概念、工具及技術(shù),以及應(yīng)用案例方面的實(shí)際案例,特別是在制造業(yè)環(huán)境中的一些啟發(fā)。
什么是數(shù)據(jù)分析呢?數(shù)據(jù)分析有時(shí)也叫“預(yù)測(cè)型數(shù)據(jù)分析”、“大數(shù)據(jù)分析”,有時(shí)說(shuō)深度學(xué)習(xí)。從廣義角度來(lái)講,是指通過(guò)分析數(shù)據(jù)以達(dá)到輔助決策或知識(shí)抽取的目的;從狹義角度來(lái)講,區(qū)別之前在工業(yè)或者企業(yè)里的可視化,所謂的高級(jí)分析都稱(chēng)之為“數(shù)據(jù)分析”,包括數(shù)據(jù)挖掘、可視化分析、文本分析等。
那么如何做數(shù)據(jù)分析呢?王紅星主要談到兩種手段:一是統(tǒng)計(jì)學(xué),二是機(jī)器學(xué)習(xí)。他表示,機(jī)器學(xué)習(xí)是一種自動(dòng)化分析模型的數(shù)據(jù)分析方法。利用算法在數(shù)據(jù)中迭代的學(xué)習(xí),允許計(jì)算機(jī)在不顯式編程的情況下找到隱藏在數(shù)據(jù)中的模式。當(dāng)然,在實(shí)際業(yè)務(wù)中要看具體的業(yè)務(wù)需求再定模型,模型訓(xùn)練主要有三種方式:Pipline, Cross Validation, Grid Search。
王紅星總結(jié)了工業(yè)大數(shù)據(jù)的主要應(yīng)用場(chǎng)景,包括:工業(yè)物聯(lián)網(wǎng)生產(chǎn)線(xiàn)、生產(chǎn)質(zhì)量與控制、計(jì)劃與排程、供應(yīng)鏈優(yōu)化、產(chǎn)品的需求預(yù)測(cè)、故障預(yù)測(cè)、供應(yīng)鏈的綠色發(fā)展等。最后,他分享了大唐集團(tuán)項(xiàng)目中數(shù)據(jù)分析是如何進(jìn)行實(shí)際應(yīng)用的。
TrueMetrics合伙人 宋天龍:降低門(mén)檻,AutoML是機(jī)器學(xué)習(xí)的未來(lái)
宋天龍以《Python在Google BigQuery Machine Learning 中的應(yīng)用》為題做了演講。
宋天龍表示,在數(shù)據(jù)前端實(shí)現(xiàn)廣告投放,需要采用數(shù)據(jù)庫(kù)里的數(shù)據(jù),通過(guò)算法和模型,把預(yù)算好的標(biāo)簽或者關(guān)鍵指標(biāo)回傳給業(yè)務(wù)系統(tǒng),然后去做自動(dòng)化投放或者定向投放。而Python在這個(gè)過(guò)程中,會(huì)連接各個(gè)不同業(yè)務(wù)系統(tǒng)的端口,包括實(shí)施庫(kù)內(nèi)機(jī)器學(xué)習(xí)的過(guò)程,包括調(diào)參、調(diào)用和分配。
為什么要在數(shù)據(jù)庫(kù)內(nèi)做機(jī)器學(xué)習(xí)?首先是為了降低成本,只需要會(huì)SQL的數(shù)據(jù)分析師,不需要數(shù)據(jù)科學(xué)家,其次是簡(jiǎn)單高效,Analytics 360 (& Firebase) 結(jié)構(gòu)化數(shù)據(jù)就在BigQuery里,不需要數(shù)據(jù)導(dǎo)入,能快速建模、評(píng)估和應(yīng)用。
隨后,他講述了BigQuery ML的應(yīng)用架構(gòu)和具體工作流程,使用BigQuery ML首先需要獲取原始數(shù)據(jù),之后做數(shù)據(jù)清洗和特征工程、模型訓(xùn)練和調(diào)優(yōu)、模型部署和應(yīng)用,結(jié)果以表的形式進(jìn)行保存。
最后宋天龍指出,AutoML是做機(jī)器學(xué)習(xí)的未來(lái),目的是為了降低大多數(shù)人入門(mén)的門(mén)檻,降低門(mén)檻后可以讓機(jī)器學(xué)習(xí)帶動(dòng)用戶(hù)驅(qū)動(dòng),百度、谷歌、阿里巴巴等都有這樣的框架給開(kāi)發(fā)者使用。
平安科技聯(lián)邦學(xué)習(xí)團(tuán)隊(duì)資深算法研究員 王威以《基于MXNet的圖像檢測(cè)開(kāi)發(fā)案例》做了演講。
他首先講述了業(yè)務(wù)背景,存量文檔電子化、快速理賠、智能錄入、文字翻譯等方面都會(huì)用到圖像中文字位置的檢測(cè)以及文字內(nèi)容的識(shí)別。業(yè)務(wù)的基本流程分為通用模型和專(zhuān)用模型。并不是對(duì)于所有的圖片都使用通用模型,專(zhuān)用模型的精度會(huì)更高,不過(guò)它的開(kāi)發(fā)復(fù)雜程度也更大。
隨后他從專(zhuān)用模型角度講述了基于特定種類(lèi)的票據(jù)位置檢測(cè)的開(kāi)發(fā)實(shí)例,選取的框架是MXNET中的Gluon,因?yàn)樗慕涌诤?jiǎn)單易上手,與計(jì)算機(jī)視覺(jué)配套的GluonCV庫(kù)包含常用的檢測(cè)網(wǎng)絡(luò),而且文檔詳細(xì),方便對(duì)照相似案例實(shí)現(xiàn)定制化目標(biāo)。
如果開(kāi)發(fā)者想用Gluon自己實(shí)現(xiàn)檢測(cè)目標(biāo),他還強(qiáng)調(diào)要注意損失函數(shù)的權(quán)重、學(xué)習(xí)率、多卡訓(xùn)練、狀態(tài)監(jiān)控、模型保存、停止訓(xùn)練和數(shù)據(jù)清洗等方面的問(wèn)題。
張佳圓的演講主題是《從零到一實(shí)現(xiàn)一個(gè) Web Framework》。
簡(jiǎn)單來(lái)講,Web框架能夠讓你更方便地編寫(xiě)Web應(yīng)用。張佳圓隨后介紹了Web框架及其核心基礎(chǔ)WSGI。Web框架會(huì)提供的一些功能,比如把Request & Response對(duì)象給封裝起來(lái)。它還提供路由管理,模板引擎功能以及對(duì)象關(guān)系映射等功能。隨后張佳圓在現(xiàn)場(chǎng)編寫(xiě)代碼,實(shí)打?qū)嵮菔玖艘粋€(gè)從零到一編寫(xiě)一個(gè)Web框架。
阿里巴巴技術(shù)專(zhuān)家 秦續(xù)業(yè):Numpy已經(jīng)變成了一個(gè)生態(tài),很多Python數(shù)據(jù)包都依賴(lài)于Numpy
秦續(xù)業(yè)帶來(lái)了以《用Mars并行和分布式執(zhí)行Numpy》為題的演講。
秦續(xù)業(yè)首先介紹了Numpy的核心的概念ndarray,它非常強(qiáng)大,能表達(dá)多維數(shù)據(jù),而真實(shí)數(shù)據(jù)不是只有一維和二維這么簡(jiǎn)單。ndarray主要有以下三大特點(diǎn):對(duì)整組數(shù)據(jù)快速運(yùn)算的標(biāo)準(zhǔn)數(shù)學(xué)函數(shù)(無(wú)需編寫(xiě)循環(huán));讀寫(xiě)磁盤(pán)數(shù)據(jù)的工具和操作內(nèi)存映射文件的工具;提供線(xiàn)性代數(shù)、隨機(jī)數(shù)生成和傅里葉變換函數(shù)等高級(jí)方法。
他表示,Numpy已經(jīng)變成了一個(gè)生態(tài),很多Python數(shù)據(jù)包都依賴(lài)于Numpy。Numpy已經(jīng)變成一種事實(shí)標(biāo)準(zhǔn)、一種協(xié)議,并且是生態(tài)里最基礎(chǔ)的一環(huán)。
最后秦續(xù)業(yè)從阿里巴巴的Mars項(xiàng)目出發(fā)介紹了并行和分布式執(zhí)行Numpy的實(shí)例。
天云融創(chuàng)數(shù)據(jù)科技(北京)有限公司高級(jí)工程師 譚可華:Java調(diào)Python的方式已經(jīng)過(guò)去了,現(xiàn)在是Python調(diào)Java的時(shí)代
譚可華發(fā)表了《Spark with Python應(yīng)用》的主題演講。
譚可華首先展示了當(dāng)前社區(qū)編程語(yǔ)言的排名情況,毫無(wú)疑問(wèn),Python已經(jīng)成為主流語(yǔ)言,并呈上升趨勢(shì);盡管相對(duì)來(lái)講,Java語(yǔ)言使用的開(kāi)發(fā)者是最多的。但現(xiàn)在有關(guān)Python的框架、工具越來(lái)越豐富,Java調(diào)用Python的方式已經(jīng)過(guò)去了,現(xiàn)在是Python調(diào)Java的方式。例如,Python的數(shù)據(jù)處理實(shí)用工具numpy/scipy/matplotlib、Pandas庫(kù)、微軟的NLTK等。
而調(diào)用Python函數(shù),Spark框架有天然的優(yōu)勢(shì)。Spark使用py4j來(lái)實(shí)現(xiàn)Python與Java的互操作,從而實(shí)現(xiàn)使用Python編寫(xiě)Spark程序。Spark也同樣提供了pyspark,一個(gè)Spark的python shell,可以以交互式的方式使用Python編寫(xiě)Spark程序。
隨后,譚可華總結(jié)了PySpark的運(yùn)行原理,使用的優(yōu)缺點(diǎn)等問(wèn)題。
Pyspark中dataframe的優(yōu)勢(shì)主要在于支持多種數(shù)據(jù)格式和數(shù)據(jù)源、能夠從單臺(tái)筆記本電腦上的千字節(jié)數(shù)據(jù)擴(kuò)展到大型群集上的PB級(jí)數(shù)據(jù)等。同樣,Pandas與Pyspark中dataframe是有區(qū)別的。
IBM高級(jí)項(xiàng)目經(jīng)理 魏貞原:數(shù)據(jù)科學(xué)家平均實(shí)踐經(jīng)驗(yàn)超過(guò)8年,Python和R為主要使用語(yǔ)言
魏貞原分享了《Python在金融領(lǐng)域的應(yīng)用 -- 信用評(píng)分卡》的主題演講。他首先談到了2020年技術(shù)發(fā)展趨勢(shì),以及在這個(gè)時(shí)代下數(shù)據(jù)科學(xué)家的典型特征和必備技能。
首先,數(shù)據(jù)科學(xué)家要有數(shù)學(xué)、統(tǒng)計(jì)學(xué)的相關(guān)知識(shí);編程管理經(jīng)驗(yàn);行業(yè)知識(shí)和技能;在這個(gè)基礎(chǔ)之上,才可以把真正的客戶(hù)需求反饋到系統(tǒng)中去。從特征上來(lái)看,目前大部分?jǐn)?shù)據(jù)科學(xué)家都是男性,他們基本會(huì)雙語(yǔ)交流,多數(shù)為2到3年的該崗位經(jīng)驗(yàn),平均實(shí)踐經(jīng)驗(yàn)是8年以上,主要使用的語(yǔ)言是Python和R。
隨后,他主要以業(yè)務(wù)實(shí)際案例的角度分享了Python機(jī)器學(xué)習(xí)在信用評(píng)分卡場(chǎng)景上的應(yīng)用,并從項(xiàng)目流程的六個(gè)階段:數(shù)據(jù)獲取、數(shù)據(jù)預(yù)處理、探索性分析、變量選擇、評(píng)分系統(tǒng)、信用評(píng)分、模型評(píng)估、模型開(kāi)發(fā)進(jìn)行了詳細(xì)介紹。他指出,每個(gè)企業(yè)針對(duì)的業(yè)務(wù)方向是不一樣的,所以需要的數(shù)據(jù)源也是不一樣的。
英偉達(dá)資深深度學(xué)習(xí)架構(gòu)工程師 張校捷:學(xué)術(shù)界對(duì)PyTorch框架的研究很多,對(duì)初學(xué)者非常友好
張校捷分享了《PyTorch自然語(yǔ)言處理實(shí)戰(zhàn)》的主題演講。
Pytorch是基于動(dòng)態(tài)圖的深度學(xué)習(xí)框架,相比于靜態(tài)圖的深度學(xué)習(xí)框架的特點(diǎn)是比較靈活,利用PyTorch構(gòu)建自然語(yǔ)言處理模型的主要步驟包括:獲取文本語(yǔ)料庫(kù)(通過(guò)爬蟲(chóng)等方法收集訓(xùn)練數(shù)據(jù));文本數(shù)據(jù)的清洗(刪除無(wú)用數(shù)據(jù),冗余數(shù)據(jù)和亂碼等等);文本預(yù)處理(正則化,分詞,去停詞);構(gòu)建詞庫(kù)(給單詞賦予序號(hào));文本轉(zhuǎn)化成對(duì)應(yīng)序號(hào),輸入自然語(yǔ)言處理模型進(jìn)行訓(xùn)練;模型的驗(yàn)證,部署等后續(xù)步驟。
現(xiàn)場(chǎng),他利用PyTorch構(gòu)建一個(gè)基于注意力機(jī)制的seq2seq模型,對(duì)自然語(yǔ)言處理的數(shù)據(jù)預(yù)處理,深度學(xué)習(xí)模型的搭建以及部署進(jìn)行了介紹。在他看來(lái),通過(guò)PyTorch使用GPU對(duì)模型進(jìn)行訓(xùn)練是非常方便的。
他指出,相對(duì)來(lái)說(shuō),在工業(yè)界TensorFlow的應(yīng)用范圍更廣泛,但實(shí)際上目前學(xué)術(shù)界對(duì)PyTorch框架的研究很多,這個(gè)框架用起來(lái)比較舒服,對(duì)于初學(xué)者是非常友好的,也希望借此機(jī)會(huì)能夠讓更多的人了解到PyTorch 2.0公布后的新特性。
即酷科技(北京)有限公司高級(jí)工程師 楊鈞凱:Python非常適于解決任務(wù)導(dǎo)向的問(wèn)題
楊鈞凱帶來(lái)了《Python代碼智能推薦和語(yǔ)義搜索的應(yīng)用》的主題演講。
楊鈞凱介紹了團(tuán)隊(duì)用Python代碼智能推薦和語(yǔ)義搜索的原因、方式以及個(gè)人的案例分享。他表示,近些年尤其是在數(shù)據(jù)處理和科學(xué)計(jì)算方面,Python 有獨(dú)特的優(yōu)勢(shì)。Python的特點(diǎn)在于非常適于解決任務(wù)導(dǎo)向的問(wèn)題,具體這么來(lái)理解:首先是設(shè)計(jì),理解需求是什么,然后根據(jù)已有的經(jīng)驗(yàn)和知識(shí)選擇解決方案;其次是實(shí)現(xiàn),很多情況下并不需要構(gòu)建底層完整的東西,可以利用原有庫(kù)和工具做想做的事情,把這些庫(kù)研究清楚,利用這些工具把問(wèn)題解決掉。
精彩技術(shù)分享繼續(xù)
CSDN將于2019年5月25-27日在杭州國(guó)際博覽中心主辦CTA核心技術(shù)與應(yīng)用峰會(huì),屆時(shí)將邀請(qǐng)來(lái)自學(xué)界與產(chǎn)業(yè)界機(jī)器學(xué)習(xí)、知識(shí)圖譜兩大技術(shù)領(lǐng)域的專(zhuān)家,共同探討落地應(yīng)用成果與未來(lái)研究趨勢(shì)。此次活動(dòng)還得到了杭州工信部人才交流中心的支持,敬請(qǐng)期待。