2013-04-18 71 views
0

這可能不是問題類型,但只是想聽聽其他人不得不說的關於在大型企業環境中實現機器學習算法需要考慮的因素。機器學習概述

我的目標之一是研究可根據我公司的特定需求量身定製的行業機器學習解決方案。作爲我的團隊中唯一擁有數學背景的人員,以及之前完成了機器學習算法背景閱讀的人員,我負責解釋/比較業界的機器學習解決方案。從我搜索到的搜索結果來看,似乎是這樣的:

a。機器學習和預測分析並不完全相同,所以當一家公司提供預測分析軟件與機器學習軟件時,它們有什麼不同? (例如IBM Predictive Analytics vs. Skytree Server)

b。很多流行的術語經常被糾纏在一起,特別是在大數據,Hadoop,機器學習等方面。誰能澄清這些術語之間的區別?從我瞭解到,我覺得概念分離是這樣:

  • 機器學習算法
  • 軟件實現
  • 基礎設施上運行大型數據集軟件(Hadoop的)

Ç 。在實施解決方案時,大多數公司是否會聘請解決方案公司的顧問來幫助實施這些算法,或者大多數算法是預先構建的,並且任何數據分析師都可以使用它們?或者,我們是否需要一個數據科學家團隊,即使使用該軟件來運行算法並理解輸出?

我知道這是一個相當冗長的問題,但任何信息都會有幫助。作爲唯一一個遠程知道這些東西的人是很困難的,所以我很想聽聽更有經驗的技術人員說些什麼。

回答

1

如果不知道您擁有多少數據以及貴公司的需求,很難回答您的問題。這將幫助您縮小哪些類型的解決方案可以滿足您的需求。其中,可能會有開源解決方案(可能是Mahout),可視化解決方案以及各種解決方案來幫助您管理數據。

1

關於大數據/ Hadoop/ML: 大數據是定義您需要處理的數據的本質的術語。大多數情況下,您可以通過稱爲3Vs - Volume,Variety和Velocity的東西來定義大數據與「普通」大數據。 定義「大數據所需數據量」的閾值沒有科學定義,而更多地是基於可行性考慮:如果您認爲數據量在維護常規數據庫(MySql等)方面造成很大開銷,那麼你可能會考慮大數據解決方案。 Hadoop只是最常用的處理大數據的工具。

機器學習是從統計學和計算機科學演變而來的數據科學的子領域。這個想法是讓機器在沒有明確編程的情況下學習。簡而言之,學習方法的目標是推廣過去的數據,以預測新的數據。 大數據和機器學習是一起提及的,因爲需要數據才能學習的ML技術的本質。行業中存在大數據的趨勢,大數據的性質要求ML算法需要大量數據以便學習(非結構化稀疏數據)。

大多數公司聘請數據科學家來處理這個任務,因爲它需要大量常規數據分析師沒有的統計學,計算機科學,算法等方面的知識。 大部分數據科學家的工作並不是「運行現成的算法」,並且在開始思考算法之前,還有大量的準備和靜態分析數據。 您不需要預先聘請一個團隊,但它的功能可以根據需要逐漸增加。

1

關於你的問題的第三部分:

總有一款適合學習一些新的強大的一個最初的學習曲線。這同樣適用於使用機器學習的數據建模。如果受限於預算等限制條件,則需要您花一些時間來學習算法功能的基礎知識,然後再實施。但是,如果您受到時間的限制,您可能需要聘請一組數據科學家/機器學習工程師。然而,從長遠來看,如果你開始瞭解一些機器學習,那麼它總會有所幫助,這樣你就可以與你的團隊輕鬆協作。

0

回答您問題中的C部分,機器學習已針對有監督和無監督方法預先構建了算法。要爲組織提供解決方案,首先必須瞭解客戶的需求,並在選擇算法之前首先選擇監督學習或無監督學習。如果需要進行有監督學習,那麼首先我們必須做特徵工程,它是監督式學習中非常重要的一部分,這些特徵工程從主題中找出了標識它們的屬性。然後再根據問題選擇分類算法或預測算法。爲此,我們有很多算法,但是選擇最好的算法,完全取決於您的硬件容量和數據處理能力算法。我們有比較的圖表。

當我們想要識別數據中的異常或我們想要聚類具有相似屬性的數據時,無監督學習是最好的。

希望這會幫助你理解你的問題的第三部分。