機器學習入門階段程序員易犯的5個錯誤

本文由 伯樂在線 - toolate 翻譯自 machine learning mastery。歡迎加入 技術翻譯小組。轉載請參見文章末尾處的要求。

怎樣進入機器學習領域沒有定式。我們的學習方式都有些許不同,學習的目標也因人而異。

但一個共同的目標就是要能盡快上手。如果這也是你的目標,那么這篇文章為你列舉了程序員們在通往機器學習高手道路上常見的五種錯誤。

?

1.將機器學習看得高不可攀

機器學習不過是另一堆技術的集合,你可以用它來解決復雜問題。這是一個飛速發展的領域,因此,機器學習的學術交流一般出現在學術期刊及研究生的課本里,讓它看起來高不可攀又難于理解。

要想高效掌握機器學習,我們需要轉變觀念,從技術轉到方法,由精確變為“足夠好”,這也同樣適用于程序員感興趣的其它復雜技術。

2.編寫機器學習程序代碼

由編碼開始入門機器學習會很困難,因為你需要解決的問題從一個變成兩個:了解一項技術以便你實現它以及對于給定問題如何應用該項技術。一次解決一個問題,并利用機器學習、統計分析環境以及算法庫來學習如何將一項技術應用于某一問題,這樣就會容易很多。這能讓你對于若干算法進行相對快速的抽查和調整,而無需花上大量時間閱讀研究論文中含糊的算法描述再將其編碼。

實現一個算法可以作為一個單獨的項目晚些再完成,比如作為一個練習或是等到原型系統需要投入運行時。一時只學一事,我建議從有GUI的機器學習框架開始入門,不論你是不是程序員。

3.手動搞定工作

實用機器學習包括問題定義、數據準備、結果表達等步驟,它們與算法的測試和調整都能夠并應該實現自動化。

在現代軟件開發的編譯、測試和部署中,自動化操作占有重要地位。對數據準備、算法測試調試、結果的表達編寫自動腳本可以在準確性和改進速度方面獲得巨大的優勢。在專業軟件開發課程中學習的知識要牢記于心并不斷應用。

可能很多學習機器學習的程序員看的書、上的課對于這一領域的應用本質關注不多,導致很多人入門階段沒有使用自動化手段。實際上,將自動化技術應用到實用機器學習的方方面面會是程序員的巨大機遇。

4.對常見問題重復求解

你正要實現的算法,或是與你正在求解的問題相似的問題,可能早有千百人解決了,就利用他們的經驗吧。

解決機器學習問題的知識非常多,當然它們可能都在書本或學術出版物中,但你可以訪問它們。做好你的功課,在谷歌谷歌圖書谷歌學術上搜索,還可以去機器學習的網絡社區。

如果你正要實現一個算法:

  • 必須實現它嗎?可不可以在某個庫或工具中找到開源的實現復用呢?
  • 你的實現必須從頭做起嗎?可不可以對現有的開源實現進行代碼審查,從中學習或是移植呢?
  • 你必須對標準算法描述編碼嗎?在其它書論文或是帖子中沒有別的算法描述可供代碼審查及借鑒呢?

如果你正要求解某個問題:

  • 你必須測試針對這個問題的所有算法嗎?這一問題或是同一大類相似問題有沒有研究成果顯示一些算法或算法類表現良好可供利用?
  • 你必須自己搜集數據嗎?有沒有公開的數據集或是API你可以直接使用或是作為你問題的替代,以快速弄清哪種方法可以有良好表現?
  • 你必須優化算法的參數嗎?在對算法的研究和論文中有沒有可用的啟發式方法來配置算法呢?

如果你在編程函數庫或是特定某一數據結構方面遇到問題,你會選擇什么策略,在機器學習領域就用相同的策略吧。參與網絡社區并尋求可供利用的資源,可以加速你的學習和項目開發進程。入門階段可以考慮論壇和問答網站,之后可以與學者和專家聯系。

5.忽視數學

起步階段你并不需要數學理論,但是數學在機器學習中地位重要。因為它能提供最有效、最清晰的方法描述問題及系統的行為。

忽略算法中的數學方法會導致諸多問題,如對某一方法理解有限或是對算法編碼時受到限制。舉個例子,很多機器學習算法的核心優化是增量式的演進。如果你能明白優化的本質(凸函數),你就能利用這些知識來使用高效的優化算法。

將算法的數學方法內化于心過程緩慢,但你的功力卻也隨之提升。特別是如果你要從零開始實現高級算法,包括算法的內部優化,多多花時間從數學角度來理解算法吧。

總結

你從本帖學到了程序員在機器學習的入門階段容易犯的5個錯誤。5個教訓是:

  • 別把機器學習看得高不可攀
  • 別寫機器學習的代碼
  • 別手動搞定一切
  • 別對常見問題重復求解
  • 別忽視數學

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/447909.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/447909.shtml
英文地址,請注明出處:http://en.pswp.cn/news/447909.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

解決: Vue 項目本地運行 run 與服務器上 build 樣式不一致,build 后樣式不生效

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 PS:本人遇到這個問題是用文中最后一句話解決:" 在組件的樣式中記得添加 scoped "。 在Vue項目開發過程…

【付出總有回報】廣州廣汕公路科目三路考通過!小結供大家參考

首先,我的路考小結只供大家參考,大家覺得能用就當提個醒,不能用就權當頂貼積分捧人場啦哈哈祝各位都能順利過關!考前心里和技術準備:我是13年6月底才考完科目二“五項必考”。7月8日才考完長途,可這時候我的…

解決:vue 用 axios 發送請求,每次都會發送兩次請求

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 我的解決方法是后端加一個過濾器: package gentle.filter;import javax.servlet.*; import javax.servlet.annotation.WebF…

廣州科目三考試 不得不看的十條提醒(圖)

導讀: 考試科目三時考試常會有點小緊張。經常會有考生因為緊張犯了些小錯誤而被pass掉。如何來應對呢?首先是放松心態,這點其實大家都明白,只是做不到。有人一到考試的時候就緊張,完全思維混亂,動作僵硬。建…

HDU 6706 huntian oy

題意 求以下式子的值&#xff0c;T組數據各個字母滿足1 ≤ n , a , b ≤109 &#xff0c;a,b互質 思路&#xff1a; 卡常毒瘤題&#xff0c;出題人時限卡的非常緊&#xff0c;考場上推出來又T又WA 1 #include<bits/stdc.h>2 using namespace std;3 typedef long long ll;…

linux 查看空間(內存、磁盤、文件目錄、分區)的幾個命令

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1. free free命令用于顯示內存狀態。 free指令會顯示內存的使用情況&#xff0c;包括實體內存&#xff0c;虛擬的交換文件內存&#x…

Ubuntu安裝LNMP

安裝Nginx使用 apt-get install nginx 就能自動安裝 Nginx。 為了確保獲得最新的Nginx&#xff0c;可以先使用 apt-get update 命令更新源列表。 安裝好之后&#xff0c;使用 dpkg -S nginx 命令來搜索 nginx相關文件。 可以從命令顯示結果看出 Nginx默認的安裝位置是/etc/ngin…

廣州學車科目三路考操作步驟要領

廣州學車&#xff0c;科目三路考操作步驟是關鍵&#xff0c;許多朋友明明會開車&#xff0c;卻因為一些步驟上的小疏忽而不得到不補考&#xff0c;今天總結出這個廣州學車科目三路考操作步驟要領&#xff0c;希望對大家有幫助&#xff1a; 廣州學車&#xff0c;科目三路考操作步…

如何和何時使用 CSS 的權重設置 !important (建議:永不使用!)

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 特別聲明&#xff1a;此篇文章由David根據Louis Lazaris的英文文章原名《!important CSS Declarations: How and When to Use Them》進行…

獨立組件開發打包

組件單獨打包 先在src下面新建hymenucsg.js文件 然后在build下的webpack.base.conf.dist.js里面 設置入口文件hymenucsg: ./src/hymenucsg.js,//csg 最后運行打包命令&#xff1a;npm run dist:dev 之后會在dist下面生成組件的js和css文件 使用&#xff1a; html中引入js和css …

廣州科目三電子考需注意哪些問題?

廣州駕考科目三從4月1日起開始試行電子評判與人工評判相結合的新制度&#xff0c;即電子路考&#xff0c;多數學員對新制度表示不適應&#xff0c;那么&#xff0c;科目三電子路考需要注意哪些問題? 從4月1日開始&#xff0c;科目三考試將試行計算機輔助與人工評判相結合的制度…

解決 VUE: 本地運行和服務器上運行樣式不一致,run、build 運行時樣式有出入

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1. 我的情況&#xff1a; 我遇到 2 種情況&#xff0c;一個是表格的分頁樣式有變化。另一個是導航菜單樣式有變化。 2. 解決&#xff…

Ubuntu鏈接服務器

本篇文章介紹&#xff0c;如何在Ubuntu系統下連接遠程Ubuntu系統并傳輸文件。 一. 連接遠程Ubuntu服務器。 1. 打開命令行&#xff0c;輸入 : sudo apt-get update &#xff0c; 對系統進行更新。 2. 安裝 OpenSSH Server&#xff0c;輸入 &#xff1a; sudo apt-get install …

開發中的“軟”與“硬”:高畫質移動游戲開發之道

摘要&#xff1a;游戲的效果不僅與游戲引擎的渲染相關&#xff0c;與硬件優化也有千絲萬縷的聯系。一款基于芯片優化的移動游戲界面&#xff0c;甚至可以堪比視頻游戲的視覺效果。高通半導體事業部資深經理劉曉光從軟硬件兩個層面分享了移動游戲開發之道。 在今年的Unity亞洲開…

解決 VUE: [Vue warn]: Do not use built-in or reserved HTML elements as component id: xx

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1. 新增一個組件&#xff0c;運行無問題&#xff0c;但F12報錯&#xff1a; vue.esm.js?efeb:591 [Vue warn]: Do not use built-in o…

Linux系統重置和修改root密碼

Linux系統經常會出現忘記root密碼的情況&#xff0c;寫下此隨筆&#xff0c;以便記憶和學習。 一、重置root密碼的步驟如下&#xff1a; 1.如果系統是開機狀態&#xff0c;重啟一下。進到下面這個界面按字母“e”鍵。 2.找到 linux16這一行&#xff0c;將下圖紅框中的內容修改為…

KETTLE 使用教程

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 Kettle的建立數據庫連接、使用kettle進行簡單的全量對比插入更新&#xff1a;kettle會自動對比用戶設置的對比字段&#xff0c;若目標表…

為什么你應該參與到開源項目中

試圖描述開源并不是一件容易的事——很多圖書作家&#xff0c;社區領袖和主持人對于開源社區的工作原理以及它是否對新人程序員有幫助持不同意見試圖描述開源并不是一件容易的事——很多圖書作家&#xff0c;社區領袖和主持人對于開源社區的工作原理以及它是否對新人程序員有幫…

根據庫位獲取倉庫id

通過location獲取warehouse location.get_warehouse() 轉載于:https://www.cnblogs.com/brucexl/p/11425603.html

AI:初學者如何從零學習人工智能?看完你就懂了

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 此文是想要進入人工智能這個領域、但不知道從哪里開始的初學者最佳的學習資源列表。 一、機器學習 有關機器學習領域的最佳介紹&#…