精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

入門Python,掌握數據分析常用工具

電子工程師 ? 來源:lq ? 2019-05-05 16:07 ? 次閱讀

研究生三年,作為一名非計算機專業的學生,能夠從一名純小白(Python不會,機器學習沒聽說過)到最后校招拿到幾個不錯的offer,個人感覺可以給自己打個及格分吧。寫本文的目的,一是對自己研究生階段所學習的知識做一個總結,二是希望對那些剛接觸機器學習,準備往這個方向發展的同學們提供一些可借鑒的經驗。

1、入門Python,掌握數據分析常用工具

第一次接觸Python是在2016年4月,本科階段的工作差不多完成,就開始聯系研究生階段的導師,希望能夠跟他做一些項目。他給我安排的第一個工作便是使用Python爬取空氣質量數據,并告訴我可以使用scrapy這個庫。我與Python的邂逅,便從這個爬蟲開始了。

由于上來就寫的是爬蟲,所以關于Python的基礎我也沒有系統的學習,不過還是推薦給大家廖雪峰老師的免費教程:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000

如果想要深入了解一些Python的知識,推薦大家學習《流暢的Python》一書,封面如下。這本書我看了前面的九章,講的十分不錯,加深了自己對于Python里面內存管理、常用函數、類等的認識。

除了Python的基礎知識,想要往數據分析、機器學習方向發展的話,還需要掌握一些常用的庫,包括Pandas、Numpy、Matplotlib、Sklearn等等。

關于前三個,推薦的書是《利用Python進行數據分析》:

關于Sklearn的使用,包括調用常見的機器學習算法、使用網格搜索尋找最優的參數,可以參考的一本書是《Python機器學習及實踐 從零開始通往Kaggle競賽之路》

如果上面的書你都看完了,我覺得算是入門Python數據分析了。

2、初識機器學習,反復讀反復看

第一次聽說機器學習這個名詞,大概是在2016年8月份,是我現在的舍友向我提到的,當時并沒有太在意,直到研究生階段開始,才慢慢有所接觸。當時身邊的人的普遍反應是,這家伙大家都在學,特別能掙錢。也許當時自己也是想著能多掙錢,才會開始入門機器學習的吧。不過現在,已經開始慢慢把機器學習當做一種興趣,一種愛好去看待了。

想必大家都知道,入門機器學習,不得不看的三本書是吳軍老師的《數學之美》、李航博士的《統計學習方法》和周志華老師的《機器學習》,也就是所謂的西瓜書。

但是有時候,有些算法比如SVM,說實話兩本書講的都不是最好的,還是得結合網上比較流行的帖子進行學習,整理了幾個我看過的一些比較好的帖子,分享給大家:

SVM:http://blog.pluskid.org/?page_id=683Word2Vec:https://blog.csdn.net/itplus/article/details/37969519EM算法:https://blog.csdn.net/randy_01/article/details/88407432

其他的算法,大家結合兩本書進行學習就可以了。值得一提的是,Xgboost和LightGBM是在面試階段比較常考的兩個機器學習方法,但是在上面的幾本書中都沒有涉及,我之前整理了一個簡單的帖子,希望對大家有所幫助(最后的參考資料里面會有)。

除了書籍資料外,視頻資料推薦的主要是吳恩達老師和李宏毅老師的機器學習入門課,地址如下:

吳恩達機器學習:https://www.bilibili.com/video/av50747658?from=search&seid=9310704140991725193李宏毅機器學習:https://www.bilibili.com/video/av35932863?from=search&seid=16150707490146939986

如果你是剛入門機器學習的話,我的建議就是反復看,反復讀,直到你能不依靠書本將模型的原理解釋清楚為止。

3、面試不斷碰壁,Leetcode得刷,得多刷

理想很豐滿,現實很殘酷,在自己剛學了點機器學習知識的時候,就出去面試闖蕩,結果卻是不斷的碰壁,機器學習理論和經驗少是一方面,數據結構題也是一問三不知,能想到的,只有時間或者空間復雜度最差的那種解法。所以我說啊,Leetcode不僅得刷,還得多刷。

不過咱也沒必要著急,你得有一個計劃,比如每天做三道五道,日積月累才行。盡管我現在在面試的過程中還是有一些問題寫不出來,但大部分情況下,還是能夠得到一個比較優的解。

關于刷leetcode這事,你可以往兩個方向上走。一是按照從easy到medium到hard的方向。二是按照分類走,比如先刷樹相關的,再刷數組相關的,依次類推。我自己是用的第一種方式啦,不過從校招面試的經驗看,面試官關注的題主要集中在數組、鏈表、二叉樹和動態規劃上面,可以先把這幾部分的弄明白。

在語言選擇上,建議還是不要用Python吧,Python的小trick還是有點多的,就比如字符串表達式的值,我們用eval函數就可以得到,但是在真正面試的時候,這樣是絕對不行的,所以建議還是Java或者C++吧。畢竟這兩門語言,你總要掌握一門的。

除了在Leetcode上面刷題外,有兩本書可以給大家參考,一是《劍指offer》,二是《程序員代碼面試指南:IT名企算法與數據結構題目最優解》,封面如下:

4、相遇深度學習,論文積累是關鍵

關于深度學習,也是研一下才開始慢慢學習的,當時主要接觸的是CNN、LSTM這些個算法,對于一些比較深入的如GAN、Seq2Seq、Transformer之類的,還沒有接觸。真正帶我相遇深度學習的,可以說是李宏毅老師的深度學習課:https://www.bilibili.com/video/av9770302?from=search&seid=6099263941108862254

當然,吳恩達老師的課也十分精彩:https://mooc.study.163.com/university/deeplearning_ai#/c

除此之外,不得不提的一本書是我們所謂的深度學習圣經,不過說實話,我覺得這本書雖然寫得好,但還是有一定閱讀難度的:

個人感覺,深度學習這東西,重在不斷積累和反思吧,多讀論文,多寫代碼。論文的話大家平常可以多關注PaperWeekly這個公眾號,代碼的話我建議如果論文給出了參考代碼,大家可以嘗試著去敲一敲,不僅加深自己對于論文思路的認識,還可以提升自己的動手實踐能力。

5、推薦與計算廣告,廣度優先VS深度優先

在整個研究生階段,我其實并沒有形成一個主要的研究方向,大家可能看我平時的公眾號推薦系統相關的東西比較多,但我并不是研究這個的,主要還是自己對這個東西比較感興趣,所以看的多了些。推薦系統的兩本入門書籍是《推薦系統實踐》和《推薦系統與深度學習》:

深度學習領域還是挺多的,如推薦系統和計算廣告、CV、NLP等等,這就引出了廣度優先VS深度優先的問題。個人感覺還是深度優先為主吧,確定好自己的一個研究方向,然后在這個領域進行深挖。不過同時,也要兼顧廣度,深度學習的東西都是相通的,比如Transformer最開始主要應用于文本領域,GAN主要應用于圖像領域,這兩種方法現在也都開始在推薦系統中使用。

最近自己要開始研究計算廣告方面的知識了,因為自己入職之后可能從事這一方面的工作,那還是給大家推薦兩本書吧,一本是大家所熟知的《計算廣告》,另一本是黃皮書《互聯網廣告的市場設計》,想要入門這個方向的同學,建議先看黃皮書,再看《計算廣告》一書。

6、Hive和Spark,數據處理的標配

Hive和Spark大家還是要學一下的,使用Hive來存儲數據,使用spark sql和Hive sql來處理數據,感覺是互聯網里面的主流方式。關于hive,掌握一些常用的函數的使用方法,如concat_ws,row_number,case..when,if,get_json_object等等,對于spark sql,掌握其運行的基本原理,以及一些常見問題的處理方法。首先,學會如何處理數據傾斜,有時候因為一個數據傾斜問題,一整天都浪費在調試一個spark代碼中了,其次,學習如何盡量減少spark任務的空間占用,同時加速spark任務運行速度,spark作業在線上調用時,會占用公共資源,你的任務占用的資源越多,別人占用的資源就越少,同時,如果你的任務運行的快,也可以給別人的任務更多的空間。spark可以通過很多語言來實現,不過我建議還是學習一下scala吧,畢竟可以和java無縫銜接。除了spark和hive,掌握一定的excel知識也是必要的。

那么這里有兩本書推薦給大家,《Hive編程指南》和《Spark內核機制解析及性能調優》:

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 機器學習
    +關注

    關注

    66

    文章

    8377

    瀏覽量

    132406
  • 數據分析
    +關注

    關注

    2

    文章

    1427

    瀏覽量

    34012
  • python
    +關注

    關注

    56

    文章

    4782

    瀏覽量

    84452

原文標題:經驗分享 | 我是如何從小白到收獲幾個不錯的offer!

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    LabVIEW 常用工具包集錦

    `LabVIEW 常用工具包集錦 ,或許正是你想要的。。。`
    發表于 12-11 12:20

    python數據分析的類庫

    相關的庫一定要熟悉,那么常用Python數據分析庫有哪些呢?1.NumPyNumPy是Python科學計算的基礎包,它提供:1).快速高效的多維數組對象ndarray;2).直接對數
    發表于 05-10 15:18

    怎么有效學習Python數據分析

    Python在人工智能、機器學習領域受到火熱追捧,很大程度上在于它擁有非常龐大的第三方庫,以及強大的通用編程性能。因此,快速掌握Python進行數據分析,就是學習
    發表于 06-28 15:18

    成為Python數據分析師,需要掌握哪些技能

    有很多封裝好的工具庫和命令,我要做的是用哪些數學方法解決一個問題,并構建出來。要想快速入門Python數據分析,就要使用好Python相關的
    發表于 06-23 12:16

    成為Python數據分析師,需要掌握哪些技能

    有很多封裝好的工具庫和命令,我要做的是用哪些數學方法解決一個問題,并構建出來。要想快速入門Python數據分析,就要使用好Python相關的
    發表于 06-30 11:42

    Fibocom 常用工具分享

    Fibocom 常用工具分享串口調試器SSCOM,鏈接如下*附件:串口調試器SSCOM.rarUSB轉TTL串口監測工具-CH340驅動,鏈接如下*附件:CH340驅動(USB串口驅動)_XP_WIN7共用.rarUSB轉TTL串口監測
    發表于 12-01 15:32

    單片機常用工具

    單片機常用工具
    發表于 10-13 06:16

    電工常用工具的使用技巧

    電工常用工具的使用技巧 扳手的使用  活絡扳手又叫活扳手,是一種旋緊或擰松有角螺絲釘或螺母的工具。電工常用的有200、250、300mm三種,使
    發表于 11-20 15:46 ?1955次閱讀

    MATLAB 常用工具

    電子發燒友網站提供《MATLAB 常用工具箱.rar》資料免費下載
    發表于 01-06 10:45 ?14次下載

    常用工具軟件

    電子發燒友網站提供《常用工具軟件.rar》資料免費下載
    發表于 10-14 10:59 ?11次下載

    Java常用工具

    Java常用工具類。
    發表于 11-06 11:21 ?1次下載

    Linux(ubuntu)常用工具

    本文檔內容介紹了基于Linux(ubuntu)常用工具,供參考
    發表于 04-17 16:15 ?23次下載

    電工常用工具儀表的使用

    電工常用工具儀表的使用說明。
    發表于 03-18 11:48 ?22次下載

    修理電機常用工具和設備

    修理電機常用工具和設備有哪些?下面就跟小編一起來看看吧!
    的頭像 發表于 07-20 09:50 ?7089次閱讀

    OpenHarmony常用工具匯總

    OpenHarmony 開發過程中我們一定會面對各種開發問題,比如如何看 log,如何看系統狀態,如何調試,等等。本章內容就是總結一些常用工具
    的頭像 發表于 01-04 12:02 ?1319次閱讀