人工智慧,我來了

weixin_33724059發表於2018-05-10
910914-75e7ce523b716992.png
人工智慧

最近幾年,人工智慧成為了非常熱鬧的技術,不管是什麼人,什麼事都能和人工智慧扯上關係。

人工智慧,機器學習,括深度學習等有一大堆新名詞,它們之間有什麼關係呢?

簡單來說,人工智慧包括機器學習,機器學習又包括深度學習。

人工智慧主要應用在 4 個方面:自然語言處理(文字),語音識別(聲音),計算機視覺(影象),推薦系統(資料分析)。

網上關於機器學習入門有很多人總結了非常完善的學習路徑。有很多經典的入門書籍,經典演算法實現。其中要入門人工智慧,主要是要用到機器學習。

關於機器學習要不要學習數學,是不是調個引數就好了。

贊同的和不贊同的有嚴重的分歧。

贊同學習的認為數學是機器學習的基礎,沒有學好數學,怎麼可能學好機器學習。

可能要表達的意思是,你學不好數學,可以成為初級機器學習工程師,肯定到不了高階的演算法工程師。

不贊同的也是大有人在,數學學不好不影響入門,千萬不要被公式原理嚇跑了。

這就像如果你是一個程式設計師,需要理解計算機原理嗎?需要理解 Bus 匯流排,需要理解任務排程嗎?

我想如果不是專門寫作業系統相關的工作,做網站和或者做移動應用的花時間也解這些是閒得〇疼吧。

只要能呼叫 API,把專案做出來能執行就可以了。

我也覺得想入門的話還是不要花太多時間去研究數學,數學原理很多,要花太多的時間,很容易打擊人的信心。

數學就像程式設計師裡面的作業系統,你不會寫沒有關係,只要你會用就行了。有理解底層,會調 API 照樣可以做出成果來。

其實學習程式設計的時候就有一個原理:不要想著把所有的原理都弄懂,不懂的先跳過,按照文件先把程式跑起來是最重要的。

程式語言入門非常簡單:就是輸出 hello world 。這裡有一個程式語言的 hello world 命令:http://helloworldcollection.de/

c 語言來說:

#include <stdio.h>

int main(void)
{
   printf("Hello, world!\n");
   return 0;
}

你只需要在編輯器裡面輸入這些語言點執行就可以了,只要能看到輸出 hello world ,你就成功了。

你不需要管 c 語言是怎麼編譯執行的,.c -> .o -> a.out。你也不需要知道為什麼要寫 main 這一行,前面的 include 是幹什麼的,怎麼還要 return 0

所有的這些,你入門的時候不需要知道,你只要知道它是這麼寫的就對了。等入門後再對深入理解這些規則的來歷。

在專案開發時也是如此,先出一個能執行的系統就行,管它有多少功能沒有實現,有多少地方需要優化,只要你先出一個成品,就比競爭對手領先。

而想把專案一次做到完美程度,各種情況都考慮到,基本上是不可能的。

我的想法就是先能用,能產生實際產出,才會有繼續下去的信心,而不是再重新學幾年的異常難懂的演算法。

人都是有惰性的,沒有正向激勵,很容易放棄,一上來就要學一大堆數學 :線性代數,概率統計,微積分。再去看到一大堆的推導公式,沒有大毅力,沒有幾個能堅持下來的。

明天開始實現人工智慧裡面的 hello world

簡寶玉寫作群日更打卡第20天

相關文章