我知道很多教程里都說要學數學、概率論、很多演算法,等等。

但是,最終沒有完成一個真正的「機器學習」,實現一個程序給它數據和知識它可以自己吸收轉化為自己的知識,最終實現跟人的交互。

這才是真正的「機器學習」。

現在問題來了,怎麼寫程序?


謝邀。

基本上這麼想的只有兩種,一是對問題領域一知半解,缺少完整的背景知識和工程經驗,以為想到就能做到,既缺少理論上的依據、更缺少工程方法。第二種呢就是真的對問題領域有深刻的認識,提出了一個當前架構之外的解決思路。

題主啥也沒說,雖然第一種人居多,但也不能就此說題主也是第一種情況。而一般來說,由於第二種思路和公認的領域解決方法截然不同,所以呢,不管是第一種還是第二種,題主都只能自己干,拿出結果來,而不是啥也沒有的在這裡光說不練。

如果題主覺得自己一說別人就會了,那顯然沒什麼價值,如果覺得自己做不出來,那這種光靠想的東西太多了,更沒有價值。

所以,題主應該好好琢磨自己的思路,然後自己設法實現之


我想到一個絕妙的演算法來實現這個程序,可惜這裡太小了,寫不下。


這個回答,大部分是腦補(小部分是懟)。

題主如果覺得可以這個想法,需要先解釋一下人是咋學東西的,細化到在用1+1=2推導到1+1+1=3的過程當中,人腦的狀態是怎麼變的,神經細胞經過了怎樣的電流傳遞最後得到了這個結論。我認為(猜想?)題主所謂「真正的機器學習」就是對人腦的完全模擬,究神經細胞的本質是電信號的傳遞,然而傳遞到什麼程度開始產生信息仍然不知道······更不用說題主所謂的「知識」還包括語義和本體論(本科的畢業論文(雖然寫的自己都覺得渣)),「數據」還包括數據的本意(1米7和1米8,如果表示海平面的高低,可取值範圍比表示身高的時候可取值範圍大多了,那機器怎麼理解身高和海平面的定義並舉一反三?),牽扯的學科太多了(計算機科學先不提,信息學,哲學,腦科學這三個就逃不掉)······

個人(CS學歷不高,僅會皮毛)認為各類演算法是讓機器用盡量複雜的模擬盡量多地使預測結果去貼近現實情況,說的好聽點是優化後的回歸和擬合,說得難聽點就是猜,目前的演算法無非就是讓猜更加地有效率而已(然而做到這一步的人類已經挺了不起了)······


某種程度上是,電影做引子,帶著演算法走,基本來說,開發可以自己學習的機器,我感覺要從生物界開始思考,做到,生物機器共存,生物依賴基因,統一思考。


這,你真的想多了,你強行把人的模式加給了機器,機器就是機器,只有機器的邏輯


怎麼寫一個能真正產生隨機輸出的程序是第一步吧。


謝邀!

從目前學習到的知識體系中,機器學習通常被分成四類:監督學習、無監督學習、強化學習和遷移學習。其中比較常用的是監督學習和強化學習,這兩種方法是兩種不同的思路。

監督學習需要從業務上標註好類別的訓練樣本,然後根據標準進行分類並盡量縮小與標準樣本之間的差異;

強化學習主要是需要確定好判斷行為好壞的獎勵機制。舉個例子來說,之前有一個讓系統自己學習打遊戲的測試,不用輸入任何規則,讓機器自己去不斷嘗試遊戲的玩兒法,但是需要給定判定標準,即輸入反饋機制,它需要知道失敗是不好的,獲得的分數越高越好,那麼系統就會不斷嘗試並調整自身行為,盡量避免失敗並且盡量獲得更好的分數。

個人覺得題主所說的方向更傾向於強化學習的方向,可以結合實際的應用實例進行研究和測試。常用的強化學習演算法有Q-Learning、時間差學習Temporal difference learning等,常見的應用場景就是動態系統和機器人控制。具體程序怎麼寫,還得根據實際的業務進行分析,並選擇比較適合的演算法單獨或者組合應用。

僅供參考


(-ι_-)……emmm,人學習是怎麼個學習法呢?大概就是從出生開始吸收知識,聽說讀寫一直到死……機器學習也是這樣的,通過數據支撐,分析各種數據,然後找到一些規律,然後變得看起來更加智能,所以……個人覺得重點不在如何編程∠( ? 」∠)_


推薦閱讀:
相关文章