谷歌官方解讀:TensorFlow 2.0哪些新特性值得關注?【馬哥教育新聞快報352期】
各位小伙伴下午好,今天是2019年1月17日,這里是馬哥教育新聞快報352期。
本期重點關注: 谷歌官方解讀:TensorFlow 2.0哪些新特性值得關注?
【快報內容】
1. 美國司法部: 谷歌官方解讀:TensorFlow 2.0哪些新特性值得關注?
AI 前線導讀:2018 年 11 月,TensorFlow 在慶祝 3 歲生日時回顧了其多年來增加的功能。 對于即將發布的 TensorFlow 2.0,TensorFlow 團隊感到非常興奮。相比于舊版本,這個被團隊視為另一重要里程碑的版本又新增了哪些功能呢?
TensorFlow 2.0 將專注于簡單性和易用性,具體更新包括:
- 使用 Keras 和 eager execution 輕松建模。
- 在任何平臺生產中部署強大的模型。
- 強大的研究實驗。
- 清理棄用的 API,減少重復,簡化 API。
在過去幾年中,我們為 TensorFlow 添加了許多組件。TensorFlow 2.0 將這些組件打包成一個綜合平臺,支持從訓練到部署的整個機器學習工作流程。
注意:雖然此圖的訓練部分側重于 Python API,但 TensorFlow.js 也支持訓練模型。TensorFlow 2.0 還對其他語言有不同程度的支持,包括 Swift、R 和 Julia。
更簡單地創建模型
在最近的博客文章(https://medium.com/tensorflow/standardizing-on-keras-guidance-on-high-level-apis-in-tensorflow-2-0-bad2b04c819a)中,我們宣布 Keras 是一個用戶友好的機器學習 API 標準,并將成為用于構建和訓練模型最重要的高級 API。Keras API 讓你可以輕松開始使用 TensorFlow。重要的是,Keras 提供了一些模型創建 API(順序、功能和子類),讓用戶可以為項目選擇合適的抽象級別。TensorFlow 的實現增強包括 eager execution、快速迭代和直接調試,以及用于構建可擴展輸入管道的 tf.data。
以下為示例工作流程(在接下來的幾個月中,我們將努力更新鏈接的中指南):
- 使用 tf.data 加載數據;使用由 tf.data 創建的輸入管道讀取訓練數據;使用 tf.feature_column 描述特征特點,例如分段和特征交叉;支持來自內存數據的便捷輸入(例如,NumPy)。
- 使用 tf.keras 或預先做好的評估器構建、訓練和驗證你的模型。 Keras 與 TensorFlow 的其余部分緊密集成,因此可以隨時訪問 TensorFlow 的功能。還可以直接使用一組標準的打包模型(例如,線性或邏輯回歸、梯度提升樹、隨機森林,用 tf.estimator API 實現)。如果你不想從頭開始訓練模型,不久之后你就可以用遷移學習來訓練使用 TensorFlow Hub 模塊的 Keras 或評估器模型。
- 運行 eager execution 和調試,然后使用 tf.function(圖形)。默認情況下,TensorFlow 2.0 以 eager execution 的方式運行,以便于使用和調試。此外,tf.function 注釋將你的 Python 程序完全透明地轉換為 TensorFlow 圖形。此過程保留了 1.x TensorFlow 基于圖形運行的所有優點:在性能優化、遠程運行和輕松序列化、導出和部署的同時,使用簡單的 Python 讓程序表達更加靈活易用。
- 使用分布策略進行分布式訓練。對于大型機器學習訓練任務,分布式策略 API 可以輕松地在不同硬件配置上分發和訓練模型,而無需更改模型定義。由于 TensorFlow 支持各種硬件加速器,如 CPU、GPU 和 TPU,因此你可以將訓練工作負載分配到單節點 / 多加速器以及多節點 / 多加速器配置(包括 TPU Pod)。此 API 支持各種群集配置,還提供在本地或云環境中部署 Kubernetes 群集訓練的模板。導出到 SavedModel。 TensorFlow 將 SavedModel 標準化并作為 TensorFlow Serving、TensorFlow Lite、TensorFlow.js、TensorFlow Hub 等的交換格式。
在任何平臺生產中部署模型
TensorFlow 一直以來都可以直接用于生產。無論是在服務器、邊緣設備還是 Web 上,TensorFlow 都可以讓你輕松地訓練和部署模型,無論使用何種語言或平臺。在 TensorFlow 2.0 中,我們通過標準化交換格式和對齊 API 來提高跨平臺和組件的兼容性和匹配性。
訓練并保存模型后,你可以直接在應用程序中運行,也可以使用以下任意一個部署庫為其提供服務:
- TensorFlow Serving:TensorFlow 庫,可以通過 HTTP / REST 或 gRPC / 協議緩沖區提供模型。
- TensorFlow Lite:TensorFlow 針對移動和嵌入式設備的輕量級解決方案,提供了在 Android、iOS 和嵌入式系統(如 Raspberry Pi 和 Edge TPU)上部署模型的功能。
- TensorFlow.js:讓開發者可以在 JavaScript 環境中部署模型,例如通過 Node.js 在 Web 瀏覽器或服務器端部署模型。TensorFlow.js 還支持使用類似 Keras 的 API 在 JavaScript 中定義模型并直接在 Web 瀏覽器中進行訓練。
TensorFlow 還支持其他語言(其中一些由更廣泛的社區維護),包括 C、Java、Go、C#、Rust、Julia、R 等。
強大的研究實驗
TensorFlow 可以輕松地把新創意轉換為代碼。TensorFlow 2.0 集成了許多功能,可以在不犧牲速度或性能的情況下定義和訓練最先進的模型:
- Keras Functional API 和 Model Subclassing API:允許創建復雜的拓撲,包括使用殘差層、自定義多輸入 / 輸出模型以及命令式寫入的前向傳遞。
- 自定義訓練邏輯:使用 tf.GradientTape 和 tf.custom_gradient 對梯度計算進行細粒度控制。
- 為了更靈活和易于控制,舊版本的 TensorFlow API 可以一直繼續使用,并與更高級別的抽象結合,以實現完全可定制的邏輯。
TensorFlow 2.0 新增了一些功能,讓研究人員和高級用戶可以進行實驗,使用豐富的擴展,如 Ragged Tensors、TensorFlow Probability、Tensor2Tensor 等。
除了這些功能外,TensorFlow 還提供了讓原型設計和調試更簡單的 eager execution,分發策略 API 和 AutoGraph,可以進行大規模訓練并支持 TPU,使 TensorFlow 2.0 成為一個易于使用、可定制、高度可擴展,可以運行并將最先進機器學習研究轉化為實際生產的平臺。
TensorFlow 1.x 和 2.0 之間的差異
自從首次開源以來, TensorFlow 已經有許多版本和 API 迭代。TensorFlow 2.0 可以基于語義版本控制(semantic versioning https://semver.org/)清理和模塊化平臺。
以下是一些較大的變化:
- 刪除隊列運行器以支持 tf.data。
- 刪除圖表集合。
- 變量處理方式的變化 https://github.com/tensorflow/community/pull/11
- 移動和重命名 API 符號 https://github.com/tensorflow/community/pull/16
此外,tf.contrib 將從核心 TensorFlow 存儲庫和構建過程中刪除。TensorFlow 的 contrib 模塊不斷增長,單個存儲庫已經難以維護和支持。較大的項目可以更好地進行單獨維護,而較小的擴展將逐漸轉向核心 TensorFlow 代碼。我們還創建了一個特殊族群(SIG,special interest group)來維護并進一步開發一些更重要的貢獻項目。
如果你有興趣參與,請參與此 RFC:https://github.com/tensorflow/community/pull/37。
兼容性和連續性
為了簡化 TensorFlow 2.0 遷移,我們提供了一個轉換工具,它可以更新 TensorFlow 1.x Python 代碼,以兼容 TensorFlow 2.0 API,或者標記代碼無法自動轉換的情況。
并非所有更改都可以完全自動完成。例如,某些已棄用的 API 沒有替換項。這就是我們引入 tensorflow.compat.v1 兼容性模塊的原因,該模塊保留了對完整 TensorFlow 1.x API(不包括 tf.contrib)的支持。該模塊將在 TensorFlow 2.x 的生命周期內運行,讓使用 TensorFlow 1.x 編寫的代碼繼續運作。
此外,SavedModels 或存儲的 GraphDefs 將向后兼容。使用 1.x 版本保存的 SavedModels 仍可以在 2.x 中加載和執行。但是,2.0 中的變更可能會導致原始檢查點中的變量名稱更改,因此,無法保證 2.0 之前版本的檢查點正常工作。有關詳細信息,請參閱 Effective TensorFlow 2.0 指南 https://github.com/tensorflow/docs/blob/master/site/en/r2/guide/effective_tf2.md。
我們相信,TensorFlow 2.0 將為社區帶來巨大的利益,并投入大量精力讓轉換變得盡可能簡單。但是,我們也認識到,遷移當前的管道需要時間。因此,我們將在最后的 1.x 版本中提供 12 個月的安全補丁,以便現有用戶有充足的時間進行過渡。
TensorFlow 2.0 時間表
TensorFlow 2.0 將于今年年初發布公開預覽版。但為什么要等呢?現在,你已經可以通過使用 tf.keras 和 eager execution,預打包模型和部署庫來開發 TensorFlow 2.0。分發策略 API 目前已部分可用。
我們對 TensorFlow 2.0 以及即將發生的變化感到非常興奮。TensorFlow 已經從一個深度學習軟件庫開發,成長為適用于所有類型機器學習的整個生態系統。TensorFlow 2.0 將變得簡單易用,適用于所有平臺上的所有用戶。
2. 微盟集團上市次日跌近17% 騰訊系次新股多數破發
在新經濟企業估值泡沫破裂和境內外資本市場異常波動的外部環境下,近期港股市場的新經濟股表現低迷。1 月 15 日,在港交所敲響了上市鐘聲的微盟集團,為騰訊系再添新軍,不過昨日微盟集團股價大跌近 17%,難逃近期次新股破發的“魔咒”。
事實上,去年以來在港股上市的次新股多數破發,即使是大名鼎鼎的騰訊系上市公司也紛紛中招,不能幸免。
微盟集團股價跳水
微盟集團一直被外界認為要做中國的 Salesforce,其成立于 2013 年 4 月,目前是中國中小企業云端商業及營銷解決方案提供商,也是騰訊社交網絡服務平臺中小企業精準營銷服務提供商。
知名國際調研機構 Frost & Sullivan 報告顯示,按 2017 年收益及付費商戶數量計,微盟集團是微信上最大的中小企業第三方服務提供商,市場份額 15.3%。作為微信生態最大服務商,微盟不僅業務上與騰訊息息相關,同時騰訊也是股東之一。公開資料顯示,騰訊通過 Tencent Mobility 持有微盟約 3.431%。
對于與騰訊的關系,微盟集團聯合創始人兼高級副總裁游鳳椿在上市儀式后表示,目前與騰訊在社交廣告及第三方開發服務上都有深度合作,預計未來會在小程序及大數據上有更深度的協同。他相信,只要更融入騰訊生態及有更多的協同,未來雙方的合作亦會更穩固。
微盟的基石投資者包括上海雙創基金全資控股的上海文棠、萬達控股的丙晟科技和匯付天下。資料顯示,丙晟科技是由萬達、騰訊、高朋聯合成立的專注于智慧商業的合資公司。游鳳椿表示,與丙晟科技會在智能零售的數字化上有深度合作。
在騰訊以外,微盟此次 IPO 的背后還有一個豪華的股東陣容,如 GIC (新加坡政府主權基金)、凱欣資本、國和投資、SIG 等,較強的股東陣容使微盟集團的發售獲得了投資者的青睞,其中國際發售獲超額認購,占全球發售股份總數約 92.1%。微盟上市第一天股價表現也令人驚喜,與多數新經濟企業上市首日破發相比,微盟上市首日開盤價較發行價大幅上漲,盤中更是一度漲 22.15%,最終收報 2.93 港元,上漲 4.64%。
不過,近來新經濟股寒風凜冽,微盟也難以獨善其身,在昨日午后其股價快速跳水,一度跌幅接近 30%,收盤跌 16.72%,報 2.44 港元,已跌破 2.8 港元發行價,成交額放大至 2.38 億港元。
騰訊系個股多數破發
港交所修訂后的主板《上市規則》在 2018 年 4 月正式生效,為新經濟公司的上市提供了更大的可能性。
事實上,從 2017 年底開始,騰訊系企業就開始密集上市,掀起新經濟公司上市的小高潮。其中,2017 年 9 月至 11 月上市的有眾安在線、易鑫集團和閱文集團,而在 2018 年內地公司赴港上市浪潮中,有 14 家公司閃現騰訊的身影,其中包括映客、小米集團、美團點評、同程藝龍、華興資本、海底撈、夢創天地等。
從股價表現來看,騰訊參股的赴港上市公司多數已經破發,股價“潛水”。其中易鑫集團破發幅度最大,目前收盤價較發行價大跌 75%。眾安在線、閱文集團破發幅度分別為 56% 和 35%。美團點評于 2018 年 9 月上市,是去年港股市場上最為令人矚目的騰訊系公司之一,其發行價為 69 港元,昨日收盤價為 44.6 港元,破發幅度也達到 35%。根據招股書的信息顯示,騰訊是美團的最大股東,總持股比例約 20%,但大部分是B類股,騰訊實際只占據有不到 10% 的投票權。
不過,盡管新經濟股的寒冬仍未過去,但騰訊系公司并未放緩上市的步伐。據市場消息,騰訊參股投資的內地最大在線電影票務服務平臺貓眼娛樂已進行上市聆訊,最快于本月內上市,預計集資 3 億美元至 4 億美元。
根據貓眼娛樂去年 9 月的申請文件顯示,騰訊持股 16.27%,美團點評持股 8.56%。截至 2018 年 6 月底的半年,貓眼娛樂收益 18.95 億元人民幣,按年增長超過一倍;虧損由 1.18 億元擴至 2.31 億元。按非國際財務準則,半年經調整虧損凈額 2070 萬元。
3. 多閃虛晃一槍,抖音暗度陳倉
今日頭條的第一款社交工具“多閃”如期而至。按照之前的造勢,業界普遍都把這款產品提高到與微信正面對抗的地位上,多閃發布之后,業內顯然有著不小的落差。
而在多閃發布的同時,抖音也發布了一個新的版本。在抖音的新版里,將好友和關注單獨分開,并且將相互關注的好友視頻列在第一位,也增加了隨拍的功能,基本上把多閃的大部分功能都平移到抖音里。
一個只有 1 萬名內測名額的社交軟件面世被業內熱議,而日活已經達到 2.5 億的抖音正式進入社交領域卻被嚴重忽略了。事情正在悄悄起著變化。
多閃與抖音,QQ 與微信
頭條發布的這款多閃強調是年輕人的社交軟件,包括制作團隊的年輕化,93 年的產品經理,團隊都是 90 后。在產品上,設置了一些針對年輕人的設計,比如大頭帖,很方便進行斗圖等等。
此前頭條的所有產品,無論是頭條、西瓜視頻、抖音、火山小視頻、 FaceU、輕顏,都帶有明顯的圈層色彩。頭條發布的多閃,顯然沒有逃脫這一規律,也非常合乎邏輯。通過年輕人切入,沒有與微信正面對戰,而是從自己最擅長也是資源最雄厚的年輕人群體著手,對于頭條而言,是成功率最高的一個途徑。
在騰訊的社交產品體系當中,QQ 與微信呈現出一個相互配合、有序承接的關系。QQ 的日活大約是微信的一半,高頻的用戶主要是 95 后、00 后。年輕用戶之所以更多用 QQ,而不是微信,實際上和多閃所闡述的邏輯是一致的。
但年輕人總會長大,如果沒有承接,基于代際的產品不可避免走向衰落。比如曾經的校友錄和人人網。
因為年輕人只是一個短期存在的階段性群體,誰都年輕過。00 社交也好,10 社交也好,年輕時候再熱鬧,終究會沿著大多數人的路徑匯入大河,這條大河在中國移動互聯網上就叫微信。不把這個大河填平,其它無非是作為支流貢獻用戶。
多閃之后必須有承接。
作為國民軟件的抖音
在多閃發布會上,同時公布了抖音的增長情況。月活 5 億,日活 2.5 億,頭條把抖音稱為一款國民軟件,也確實名符其實。
真正全民級的社交產品,必須是無色無味,如同微信 7.0 版本上所寫“因為看見,所以存在”。
多閃,無論是從名字,還是軟件本身,都無法承擔起全民社交軟件這一重任。如同騰訊 QQ 用戶長大之后,會自然延伸到使用微信一樣。頭條接下來,也會有一款直接針對微信的產品出現,用來承接多閃的用戶。
按照今日頭條 CEO 陳林的說法,多閃是一個想法,應當是在春節后會公布另外一個想法。而同樣的,頭條也將會發布針對企業辦公場景的社交工具,實現與騰訊社交產品的全面對標。也就是說,不出意外,除了多閃,頭條應當會再陸續發布兩款社交軟件對標微信和企業微信,完成在社交軟件的全面合圍。而實際上,頭條面向辦公場景的社交工具 Lark 已經可以公開下載,只不過沒有放開使用權限。
率先發布的多閃將承擔起頭條整個社交軟件條件的試水任務,而最重點將會是下一款直接對標微信的產品,也許是傳說中的“飛聊”或者“抖信”。
但更大可能,頭條正面對標微信的產品就是抖音本身。今天的抖音已經達到日活 2.5 億的規模,相對于多閃,顯然更有全民社交軟件的潛質。
目前的多閃仍然處在內測階段,很多人說頭條在此時推多閃,希望以此獲得接下來春節的紅利,但多閃目前還沒有足夠成熟到這一階段。要知道,抖音也是在發布近一年之后才利用春節大爆發。
無論在交互邏輯還是產品成熟度上,對于社交市場而言,在多閃的造勢下,抖音的這個新版顯然被忽略了。
實際上,抖音到很有可能在春節前再推一個新版,開放多閃的視頻紅包功能,增加更多社交的功能,從而利用春節流量正式進入社交領域。
根據《深網》的消息,抖音的母公司字節跳動將投入可觀的預算在春節期間用于拉新,當年微信紅包的案例將成為多閃的重要參考對象,在支付市場發出屬于字節跳動的聲音。實際上,能承擔起這一任務的也只有抖音本身了。
我們會看到多閃春節前虛晃一槍,而抖音在春節暗度陳倉。
4. 董明珠,再干三年
65 歲的董明珠,迎來了她在格力的新一個董事任期,為期三年。
1 月 16 日下午,格力電器召開 2019 年第一次臨時股東大會,此前所提出的包括董事會換屆選舉在內的所有議案均獲通過,董明珠成功當選格力電器第十一屆非獨立董事,其“好閨蜜”劉姝威也高票當選獨立董事。
盡管格力電器尚未宣布新一任的董事長歸屬,但在董明珠成功連任董事后,連任董事長對她來說已成為近乎板上釘釘的事情。
除董明珠外,黃輝、望靖東、張偉、張軍督、郭書戰 6 人當選非獨立董事;劉姝威、邢子文、王曉華 3 人當選為獨立董事。
這份董事會名單與格力電器 1 月 1 日發布的候選名單一模一樣——在候選名單出爐后,格力的股價便一路上漲,從 35.69 元漲到了今天收盤的 39.31 元,漲幅超過 10%。某種程度上來說,這也能代表市場對于董明珠的信心。
6 年分紅 400 億,業績還得接著漲
在股東會正式開始之前,有一個有意思的小插曲。
董明珠步入會場時,現場響起了較為熱烈的掌聲——想必所有中小股東都還記得 2016 年格力臨時股東大會上董明珠的“怒斥”——當時她在會上說,這是第一次進場時股東們沒有鼓掌的股東大會。
在那場股東會上,格力電器收購銀隆新能源的募集資金議案被中小股東投票否決,董明珠在會上生氣地說:“格力沒有虧待你們!我講這個話一點都不過分”、“你看看上市公司有哪幾個這樣給你們分紅的?”
今天,董明珠在演講時自己也拿這件事來開玩笑:“我在網上看到一篇文章,說這次股東大會,大家千萬別忘了鼓掌。”
董明珠的演講中最引人關注的還是那些具體的數字。據其介紹,公司 1991 年至 2018 年累計分紅 455 億元,2012 年至 2018 年累計分紅 400 億;1991 年至 2018 年格力累計實現凈利潤 1284.8 億,但就 2012 年至 2018 年的六年時間內,格力實現了 1094.9 億元。
董明珠在現場說:“十年都在分紅,一年不分紅人家就要罵我。我們未來依然會堅持分紅,但是我們什么時候給股東回報,是根據企業的戰略規劃。”
當然了,董小姐“強制推銷‘的作風依然沒有改變——她希望拿了分紅的股東能夠購買格力手機來支持格力。她說:“我的業績增長,就證明我的手機沒有不成功。我相信格力手機一定會成功。你們拿到我們的分紅,就應該買格力手機支持我們。”
但董明珠給出的業績承諾,卻明顯保守了許多。
她在會上提到,珠海政府對格力電器提出了 2023 年實現 6000 億元的營收目標。以 2018 年 2000 億元營收的基礎來計算,在未來五年的時間里,格力每年的營收增長都要達到 25% 以上才能實現這一目標。
董明珠則在會上明確表示,格力每年 10% 的增長是可以保證的,50% 的增長雖然想做到,但是不能承諾。
董明珠的意思很清楚:我只給確定的承諾,不確定的部分不能輕易說。但若每年只保持 10% 的增長,6000 億元的目標對于格力來說還很遙遠。
行業判斷不明,接班人也找不到
在股東會上,董明珠將格力電器的四大業務劃分為空調、生活電器、高端裝備和通信設備。她強調,空調依然是格力電器的主業,未來格力作為空調行業老大的地位不會變。
現場有股東表示,既然空調是格力的主業,那么由于空調與房地產行業的強關聯關系,房地產行業目前處于周期性的下壓階段,是否會使得空調業務發展遭遇瓶頸?董明珠回復得斬釘截鐵:“我可以告訴你,沒有影響。”她還表示,企業的最大問題是創新,關鍵是能不能做出好的東西來,格力電器的領先技術就是未來的競爭力。
對于技術,需要看看格力的其他業務。
格力的生活電器包括冰箱、洗衣機等;高端裝備包括工業機器人、數控機床等;通信設備則主要指的是格力智能手機、芯片、大數據等。說到芯片,董小姐又有金句:“為什么一說制造芯片,格力的股票就掉,這是因為我們是真干。”
但至少,“一說造芯片股票就掉”的現象顯示出,二級市場對于董明珠的決策判斷還不夠信任,她的成果也并未給股東足夠的信心。
股東會還有一個插曲值得一提。有股東提問格力電器在 2018 年實現了多少凈利潤,董明珠表示,2018 年格力電器的稅后凈利潤在 260 億以上。但在 2018 年度財務報告出來前,董事長提前披露內幕信息,此舉是否涉嫌信披違規,估計又要引來一番熱議。
至于萬眾矚目的問題,董明珠到底要不要退休、格力到底有沒有可以頂上來的接班人?董小姐在股東會現場是這樣說的——
無數人在關心(我什么時候想退休),我現在就想退休,但是企業的發展必須要有延續性。上市公司沒有規定什么時候退休,只要你干的好就可以繼續干,最怕干不好還繼續干。
(關于接班人)我心里是有評估的,誰能對格力電器未來的發展負責,這是要負責任的,這是一個非常嚴肅的話題。這個話題不是我說了算,而是要他干了才能算。我們盡量給平臺,給機會,創造機會。
此前,虎嗅文章《董明珠沒有接班人》便已提出,格力目前在董明珠之外,難以找出一個領軍人物。新的接班人究竟是什么樣的?我們距離這個問題的答案還有至少三年的時間。
格力的下一個三年,仍舊屬于董明珠。
【今日學習必備】
【Linux面試真題】- 郵件轉發代理也稱郵件轉發服務器,它可以使用SMTP協議,也可以使用什么協議?
A、 FTP
B、 TCP
C、 UUCP
D 、 POP
正確選項為:C
【Python面試真題】- Django重定向你是如何實現的?用的什么狀態碼?
使用HttpResponseRedirect
redirect和reverse
狀態碼:302,301
>【就業喜訊】
【學員喜訊-764期】- 從傳統行業成功轉行學習Linux網絡班收獲18W年薪 !多努力就有多幸運!
【今日直播】
1、60分鐘掌握動態站點部署,搭建Wordpress!(10:30-11:30)
2、系統開發能力對一個好的程序員的重要性! (15:00-16:00)
【近期開班】
Linux面授班:2019年3月4日(北京)
Linux網絡班:2019年1月19日(網絡)
Python面授班:2019年3月18日(北京)
Python網絡班:2018年12月29日(網絡)