1. 程式人生 > >前端後端大資料資料分析等工程師 - 怎麼轉演算法?

前端後端大資料資料分析等工程師 - 怎麼轉演算法?

HI大家好
今天給大家帶來一個分享
工程師怎樣轉演算法
這裡的工程師指的是什麼?
包括我們的前端開發
後端開發
Java開發
業務開發
大資料分析
甚至一些非計算機出身的
比如說學醫的學商的等等
這種問題
經常會在知乎或者是微信群看到
大家都有這個疑問
就是自己不是演算法
怎樣轉成一個演算法
對於這個問題我有發言權
因為我自己轉了兩次
我自己最開始
是一個業務系統的Java的開發
做的就是一些增刪改查的一些事情
後來我發現大資料這個領域有意思
於是自己學了Hive/Spark轉了大資料的開發
再後來我又發現
大家都在搞人工智慧搞演算法
於是我不斷學習和努力
現在也轉成了一個推薦系統的演算法的開發

接下來我就給大家分享三條我的經驗和感受
第一條要想轉演算法
最佳的方法就是內部轉
大家想一下
如果你跳槽轉演算法的話
它至少有兩個要求
第一要求你之前有豐富的演算法的實戰經驗
這個我們肯定沒有
因為我們現在就要轉演算法
怎麼可能有實戰經驗!
第二個如果你實戰經驗不足的話
他就會要求你學校非常好
或者說要求你精深的演算法發過論文
能夠把一個複雜演算法通過手推來實現
這個要求對於我們工程出身的人來說
更是不可能的事情
也就是說如果你想實現跳槽轉演算法的話
真的是太難了
但是內部轉的話可能性非常的大
我可以說任何業務
包含一些非網際網路的業務它都需要演算法
很多情況下
往往是你用了演算法
跟不用演算法有很大的區別
但是覺得好不好是另外一回事
比如說你的業務
如果涉及到購買的話
那麼怎麼提升購買轉化率
這就是演算法能夠解決的事情
如果你發現當前的業務系統需要演算法
或者說你自己可以發現並提出這個需求
都可以在當前的工作崗位上積累演算法的經驗
實現無痛的轉型
這是我第一個建議內部轉
第二個建議
如果你想轉演算法
一定得提前開始佈局和學習
這裡我分享兩句話
很多時候
往往不是你需要某個技能比如說演算法
給你機會你再去學
而往往是你提前學會了這個東西
而你們的業務需要技能的時候
周圍的人中只有你一個人會
那麼就你上
比如說我自己
我最開始對機器學習產生了興趣
但是我們團隊是不需要這種能力的
可以說前期一點用都沒有
但是後來我們的業務發展需要的這種技術
而團隊裡面只有我一個人會
於是我就上了
結果推薦演算法
也變成了我自己當前最主要做的事情
這是我的第二個建議
一定得提前佈局和學習
這樣你才有轉的可能
第三個怎樣學習演算法
這裡我送給大家三句話
首先不要先去學習高數或者線性代數這種數學
因為學著學著太枯燥
你就放棄了
第二句話
即使你只看機器學習實戰的書
初期你可以忽略了它的公式推導
因為這個公式推導真的太麻煩
你理解不了你還是會放棄
你要做的其實應該先成為一個調參俠
什麼意思就是你的學習路線
你既然要轉演算法
那麼你應該
直接從一個機器學習框架入手
比如說spark sklearn tensorflow
或者說keras pytorch等等
你自己選一個你感興趣的框架
精通他的工程實現
不要管這個演算法怎麼實現的
你能呼叫這是第一步
成為一個調參俠
這個時候你的首要目標是能夠落地出結果
而不是懂這個演算法本身
甚至直到現在
對於我自己的業務
以及我知道對於很多業務來說
你成為一個調參俠
足夠了你積累的就是實戰的專案經驗
以後再做深挖精通沒有問題
有它為基礎就變得更加容易!
其實對你的領導來說
他只需要你這個演算法落地的結果
它可不管什麼演算法的細節
這更加說明要轉演算法
你的第一步一定是成為一個調參俠

關注我檢視更多
工程怎樣轉演算法的經驗分