初學python和機器學習,想知道怎樣才能達到自己獨立編寫程序的能力?


先把Python練好,第一遍過完教程之後,可以從生活中拿一些小需求來練手,找一些別人的代碼看看,嘗試重寫一遍。知乎上相關的問題可以關注一下:

Python 有哪些一千行左右的經典練手項目? - 編程

你是如何自學 Python 的? - 調查類問題

Python 的練手項目有哪些值得推薦? - 編程

在學Python期間,可以看看機器學習或數據挖掘的書,比如:

在數據分析、挖掘方面,有哪些好書值得推薦? - 書籍推薦

如何系統地學習數據挖掘? - 數據挖掘

然後慢慢試著實現一些演算法,參加阿里的天池比賽或kaggle練練手,就算入門了吧,再想辦法找個相關的工作,慢慢的就能進入大道了


有部分從事機器學習,科學計算的研究生,編程不大會,直接上python 第三方庫,硬寫代碼,會碰到很多困難,建議補補基礎知識。

自己能不能寫代碼解決問題,是衡量有沒有學會編程的方法。

建議不能只學語法,需要學習計算思維,編程思路,解決問題的方法。

請看黃哥本人寫的文章

如何捅破python編程的那層紙

article/pythonstudy.md at master · pythonpeixun/article · GitHub

剪刀石頭布小習題三種語言python2、php、go代碼

article/jdstb.md at master · pythonpeixun/article · GitHub

一段小代碼說明@property裝飾器的用法

一段小代碼說明@property裝飾器的用法

如何捅破python編程的那層紙之二

如何捅破python編程的那層紙之二

如何捅破python編程的那層紙之三

如何捅破python編程的那層紙之三

黃哥python遠程視頻培訓班

article/index.md at master · pythonpeixun/article · GitHub

黃哥python培訓試看視頻播放地址

article/python_shiping.md at master · pythonpeixun/article · GitHub


用python寫一寫機器學習實戰裡面的代碼,了解一些簡單的聚類分類演算法原理,能寫kmeans,樸素貝葉斯啥的就行了,因為這些都有第三方庫,如果不做數據量太大的話直接用sklearn這個庫,特別方便。如果數據量大的話要分散式的話我只用mapreduce寫過不分散式也有很多現成的庫,所以機器學習演算法這方面主要是要懂原理,知道每個演算法怎麼去應用。

分類的演算法那麼多,遇到具體數據集應該用那種就需要理解每種演算法的原理和聯繫,比如遇到非正態分布的數據分類時用LDA不可以,遇到離散數據分類時可能用決策樹,這些都不是絕對的,哪個好用哪個。機器學習演算法那麼多,想了解所有的太困難,每個大類了解一些基礎的baseline,用到哪塊再具體研究。比如推薦系統這方面,基礎的算了解之後,做比賽發現仍然不能出好的效果,因為數據預處理是很重要的,無論在比賽還是在項目中,而數據預處理就要用到很多很多機器學習演算法。

至於工作裡面,不是很了解,但是經過實習3個月了解到的就是,機器學慣用的不多,多的是找規則,篩選數據,無窮無盡。。。


推薦給你一本書《集體智慧編程》。

裡面所有的例子都是用python寫的,由淺入深,不要看一遍就過,把所有的代碼敲一遍,你會從中學到很多東西。

相對於python,這本書給我的感覺更像是你需要的那種思想,利用編程解決問題的那種思想。

最後說一句,在你成長的過程中或許會受到質疑,不要去理會,做自己想做的事,你的成功就是消滅質疑最有力的武器。

加油


不是打擊你自信心

在中國,想做機器學習這一行的,基本都要研究生

而且你都工作了,只能社招,阿里大數據競賽可能你就參加不了

面試時候,面試官問你個快速排序,二叉樹什麼的,估計你就寫不出來

面試官再問你,操作系統啊,計算機網路啊,海量數據啊等等知識,你覺得你該怎麼應對呢

既然是機器學習,起碼面試時候會來幾個推導一下機器學習數學過程吧,然後再扯一點統計學概率論什麼的,再問幾個C++或者Java知識也不為過吧,然後再聊聊現在很熱的Hadoop/Spark/Storm等等

如果你想去小公司做數據挖掘機器學習當我沒說(但是小公司去做機器學習基本直接從大公司挖人過來的),想去中等或者大公司的話,我覺得除非你在KDD或者Kaggle上做出很好的成績了,否則,還是準備考研把,或者就平時想想就算了吧(畢竟全中國在做和數據挖掘相關崗位的人也不多,崗位需求也不大)

最後建議,真的很喜歡Python和機器學習的話,去做個數據運營挺不錯的


你的水平連Python的門都沒入,建議不要想著寫程序,機器學習,先把Py語法弄懂,一些OOP語言的特性熟練以後再去做打算。


你剛把列表字典看完,路還遠著呢,可以看看慕課網教程,每個知識點都有習題


感覺好像是沒有任何基礎,都不知道該從哪裡說起了。

你可以用sklearn,先在小規模數據上應用機器學習演算法試試。

或者你可以看看《機器學習實戰》和《集體編程智慧》


推薦閱讀:

學習TensorFlow,Python 需要掌握到什麼程度才可以?
如何入門Keras?
scala和groovy的優勢有哪些?
python網路爬蟲(沒有使用scrapy)中如何克服封ip問題?
怎樣自學Python?

TAG:Python | 機器學習 |