自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

開發(fā)者如何挑選最合適的機器學習框架?

開發(fā) 前端
現(xiàn)在比較流行的機器學習框架有TensorFlow、MXNet、Scikit-learn、Keras和PyTorch,這些通常被數(shù)據(jù)科學家用于訓練各種用例算法,比如預測、圖像識別和推薦。根據(jù)Forrester Research 的AI方向副總裁兼首席分析師Mike Gualtieri的說法,研發(fā)人員在選擇機器學習框架時需要思考什么?

如今,各種各樣的機器學習工具活躍在開源社區(qū),這些工具有助于減輕配置和測試AI相關工作的負載。但是,如何評估并選擇適合自己的工具成為了開發(fā)者必須認真思考的問題,有些人可能希望在訓練新的AI算法時專注于易用性,而其他人可能會優(yōu)先考慮參數(shù)優(yōu)化和生產(chǎn)部署,不同的框架在不同的領域又具備著不同的優(yōu)劣勢,這讓開發(fā)者難以抉擇。

現(xiàn)在比較流行的機器學習框架有TensorFlow、MXNet、Scikit-learn、Keras和PyTorch,這些通常被數(shù)據(jù)科學家用于訓練各種用例算法,比如預測、圖像識別和推薦。因為數(shù)據(jù)科學家往往更喜歡能夠輕松構(gòu)建算法的機器學習框架,但這只是整個人工智能開發(fā)流程中很小的部分,企業(yè)通常會花更多時間在一些輔助工作上,比如準備數(shù)據(jù)、將算法轉(zhuǎn)移到生產(chǎn)環(huán)境、配置機器學習參數(shù)、排除研究環(huán)境和生產(chǎn)環(huán)境模型之間的差異。

選擇機器學習框架之前需要考慮的三個問題!

根據(jù)Forrester Research 的AI方向副總裁兼***分析師Mike Gualtieri的說法,研發(fā)人員在選擇機器學習框架時需要思考如下三個問題:

  1. 該框架用于深度學習還是經(jīng)典的機器學習?
  2. 在開發(fā)AI模型時,***的編程語言是什么?
  3. 開發(fā)過程使用哪些硬件、軟件和云服務進行擴展?

選擇深度學習還是經(jīng)典的機器學習?

深度學習是機器學習中的一個分支,在算法層面,經(jīng)典的機器學習算法未必不能實現(xiàn)深度學習的功能,很多機器學習算法在應用程序中都可以***的完成各項深度學習任務,雖然有些框架在某種程度上支持這兩種算法,但機器學習框架往往表現(xiàn)更好。

從差異性的角度來說,深度學習框架更加偏重神經(jīng)網(wǎng)絡方向,尤以TensorFlow最為知名,其他在深度學習中表現(xiàn)良好的機器學習框架還有MXNet和Caffe,這些框架支持編寫用于圖像標記和高級自然語言處理的算法以及其他應用程序。

深度學習和機器學習框架***的不同在于所處理的數(shù)據(jù)結(jié)構(gòu)有所差異,深度學習框架可以被訓練用于處理結(jié)構(gòu)化數(shù)據(jù),但是機器學習框架不適用于非結(jié)構(gòu)化數(shù)據(jù)。在選擇框架前,你一定要了解企業(yè)的數(shù)據(jù)類型以及要構(gòu)建的應用程序類型。

經(jīng)典的機器學習算法適用于各種優(yōu)化和統(tǒng)計分析,***的機器學習框架是Scikit-learn。Scikit-learn適合在Python中編寫,但Comprehensive R Archive Network(也稱為CRAN)可能更適合在R中編寫應用程序。其他流行的軟件包有Apache Spark MLlib和H2O.ai等,H2O.ai有一套開源機器學習算法并且運行良好。

 

[[237859]]

開發(fā)AI模型,***的編程語言是什么?

就編程語言而言,Python和R是機器學習開發(fā)者普遍的選擇。當然,你可以使用其他語言,比如C、Java和Scala。Gualtieri表示,目前的大多數(shù)機器學習應用都是用Python編寫的,因為R語言是由統(tǒng)計學家設計的,并不是***雅的編程語言。相比較而言,Python是一種更加現(xiàn)代化的編程語言,并且Caffe和TensorFlow也是開發(fā)機器學習模型的Python編碼器的主流選擇。

測試環(huán)境與實際生產(chǎn)環(huán)境的差異

在開發(fā)的早期階段,數(shù)據(jù)科學家可能會針對不同的數(shù)據(jù)集選擇模型或算法,但是,如果你決定對生產(chǎn)環(huán)境中的所有數(shù)據(jù)集運行同一個模型,那么你可以查看一些支持分布式體系結(jié)構(gòu)的框架,比如Apache Spark的MLlib或H20,因為可擴展性是一個很實際且很重要的問題。

在深度學習中有很多類似的場景,比如,AI開發(fā)人員想要對圖像進行標注,他們可以下載TensorFlow并在桌面運行以訓練算法和試驗不同的模型,一旦他們整理出了一個可行的模型,往往會迫不及待得丟到整個生產(chǎn)環(huán)境,但這個模型不一定適合整個生產(chǎn)開發(fā)環(huán)境,因為測試環(huán)境與其有著很大差異,并且也需要考慮硬件條件和云服務支持。

在AI算法的訓練階段,可擴展性是指可以分析的數(shù)據(jù)量以及數(shù)據(jù)分析速度,使用分布式算法和分布式處理可以顯著提高性能。在實際部署階段,可擴展性更多得與可立即***模型的并發(fā)用戶或應用程序的數(shù)量有關。很多AI項目出現(xiàn)問題的原因在于訓練環(huán)境和生產(chǎn)環(huán)境千差萬別,數(shù)據(jù)科學家卻只使用一套工具。

參數(shù)優(yōu)化

選擇機器學習框架的另一個關鍵因素是參數(shù)優(yōu)化,每種算法都采用不同的方法來分析訓練數(shù)據(jù)并將其學習的內(nèi)容應用于新的示例。每個參數(shù)都可以通過旋鈕和刻度盤的不同組合來調(diào)節(jié),通過調(diào)整不同變量的權重和異常值以列舉一些可能的組合。在選擇機器學習框架時,重要的是考慮這些參數(shù)是希望自動調(diào)整還是手動調(diào)整,需要調(diào)整的旋鈕和表盤越多,找到合適的組合就越困難。

機器學習框架是否是解決特定問題的***選擇,這是企業(yè)要考慮的***一個問題,我們可以將機器學習開發(fā)工具分為三類:notebook-based, multi-modal和automated。

  • notebook-based - 使用基于Python的Jupyter等工具,提供對機器學習模型定制的所有方面的復雜控制,機器學習框架使用此概念來減少自定義的繁重工作。
  • multi-modal(多模式)本質(zhì)上是一種將數(shù)據(jù)科學與專用工具(如Salesforce Einstein)相結(jié)合的低質(zhì)量代碼編寫方式,使開發(fā)人員能夠?qū)⒑诵腁I模型擴展到特定用例。
  • Automated(自動化方法)使用工具自動為給定的輸入數(shù)據(jù)集嘗試各種可能的算法,直到確定特定用例的***備選者。這些工具包括Google AutoML,DataRobot和H20.ai等產(chǎn)品。

自動化確實很有吸引力,因為數(shù)據(jù)科學家的技術水平未必很高,尤其是現(xiàn)在社會整體人才稀缺的情況下,并且通過自動化工具的支持,統(tǒng)計學家有時也可以完成一些數(shù)據(jù)科學家的工作,當然,不要期待這些自動化工具完全替代人工。

開源機器學習框架提供了豐富的社區(qū)支持

Teradata營銷副總裁Chad Meley表示,盡管供應商正在努力開發(fā)機器學習工具和框架,但開源框架將繼續(xù)在該領域占據(jù)主導地位,因為這些框架集合了世界各地相關領域?qū)<业闹腔邸?/p>

很多比較大的云供應商也在積極提供自己的框架,比如谷歌、亞馬遜等,根據(jù)企業(yè)IT戰(zhàn)略展示,CIO可能更希望與特定的云供應商保持一致,或者強調(diào)跨多個云和本地部署的可移植性。目前,谷歌支持的TensorFlow框架在市場中擁有***份額,緊隨其后的是Caffe、Keras、MXNet、CNTK和PyTorch。

此外,Spark提供的MLlib也是一個不錯的選擇,它還提供了SQL、圖形處理和流處理等功能。Spark本身易于使用且擁有龐大的用戶群體,這確保了技術的穩(wěn)步提升,并且生命力十分頑強,可以確保在未來的很長一段時間內(nèi)依舊存活。

責任編輯:未麗燕 來源: it168網(wǎng)站
相關推薦

2017-03-20 16:00:20

深度學習GPU

2016-02-29 10:15:16

公有云私有云云平臺

2010-07-08 15:48:34

開源

2017-05-31 09:12:51

機器學習算法數(shù)據(jù)

2017-04-17 13:59:37

機器學習代碼TensorFlow

2019-01-16 18:22:24

機器學習人工智能計算機

2022-07-25 09:46:25

React數(shù)據(jù)庫

2020-05-29 07:00:00

Python機器學習編程語言

2013-03-11 11:20:05

2024-05-23 16:48:42

機器學習算法人工智能

2009-01-12 17:28:10

服務器虛擬化VMware

2020-12-31 09:39:39

應用圖像格式SVGOMG

2018-06-19 10:38:42

數(shù)據(jù)中心遷移時機

2021-11-19 17:22:43

TensorFlow模型機器學習

2012-06-13 01:23:30

開發(fā)者程序員

2015-09-30 09:45:00

機器學習公有云開發(fā)者

2017-10-17 12:49:18

無線AP無線AP

2023-07-04 09:00:00

開發(fā)SPACE框架

2017-05-25 11:14:21

機器學習算法神經(jīng)網(wǎng)絡
點贊
收藏

51CTO技術棧公眾號