java編程 剛上大一,報(bào)的計(jì)科,學(xué)了一年的c和JAVA,都說計(jì)算機(jī)和數(shù)學(xué)關(guān)系緊密,可為啥沒有感覺到?感到迷茫?
剛上大一,報(bào)的計(jì)科,學(xué)了一年的c和JAVA,都說計(jì)算機(jī)和數(shù)學(xué)關(guān)系緊密,可為啥沒有感覺到?感到迷茫?呵呵,你才剛上大一,剛剛學(xué)了一點(diǎn)語言。甚至不是初學(xué)者。關(guān)于計(jì)算機(jī),你學(xué)到的最后一件事就是毫不夸張地學(xué)習(xí)
剛上大一,報(bào)的計(jì)科,學(xué)了一年的c和JAVA,都說計(jì)算機(jī)和數(shù)學(xué)關(guān)系緊密,可為啥沒有感覺到?感到迷茫?
呵呵,你才剛上大一,剛剛學(xué)了一點(diǎn)語言。甚至不是初學(xué)者。關(guān)于計(jì)算機(jī),你學(xué)到的最后一件事就是毫不夸張地學(xué)習(xí)數(shù)學(xué)。光靠學(xué)幾門語言你什么都做不了。特別是在編程實(shí)現(xiàn)某些函數(shù)時(shí),如果數(shù)學(xué)學(xué)得不好,就不能設(shè)計(jì)出合適的算法。數(shù)學(xué)建模非常重要。我勸你不要想當(dāng)然。讓我們來看看傅立葉變換,這是最常見的一個(gè)高數(shù)字。利用傅立葉變換設(shè)計(jì)低通濾波器是圖像處理中最常用的基本功能之一。
同樣,機(jī)器語言本身是一個(gè)二進(jìn)制矩陣。圖像的本質(zhì)也是由像素組成的矩陣。然后你就會(huì)知道線性代數(shù)的重要性。然后對(duì)各種圖像、信號(hào)進(jìn)行放大和縮小,需要用到各種插值,那么你會(huì)后悔離散數(shù)學(xué)沒學(xué)過。當(dāng)你學(xué)習(xí)信息論和通信原理時(shí),你會(huì)后悔沒有理解復(fù)變函數(shù)和概率。。。。。
即使是大二專業(yè)基礎(chǔ)課使用的數(shù)據(jù)結(jié)構(gòu),堆棧、列、排序、二叉樹、哈希圖、遞歸等。。。。都是數(shù)學(xué)模型。。。
如果你真的想學(xué)好編程,你必須徹底地學(xué)習(xí)數(shù)學(xué)。至于編程語言,這完全是語法結(jié)構(gòu)的問題。是一樣的。編程側(cè)重于算法。至于用什么語言,是膚淺和膚淺的。就像寫一本書,一部經(jīng)典,把它翻譯成任何語言。如廁讀物,如果你用八種語言寫的話,也是如廁讀物。
程序員必須掌握哪些算法?
這取決于你想成為程序員的哪個(gè)方面。
程序員有后端、前端、移動(dòng)端、大數(shù)據(jù)、人工智能等,如果只是前端和移動(dòng)端,掌握基本的排序、紅黑樹、哈希等就差不多了。不需要更高級(jí)的,更重要的是系統(tǒng)API提供了很多算法方法。寫作并不一定比系統(tǒng)的寫作更好。如果你只是想成為一個(gè)普通的程序員,不想朝著高級(jí)和體系結(jié)構(gòu)的方向發(fā)展,你會(huì)發(fā)現(xiàn)如果你不接觸算法,那就沒關(guān)系了。但是,當(dāng)水流向上流動(dòng)時(shí),仍然需要該算法。特別是對(duì)于大數(shù)據(jù)和人工智能,算法是必要的,算法就是數(shù)學(xué)。
對(duì)于人工智能來說,線性代數(shù)、概率論等都是非常重要的,不僅算法可以解釋它們。還有信息論,它計(jì)算信息傳遞的熵。個(gè)人推薦,可以看到國(guó)外的程序設(shè)計(jì)大賽,有很多測(cè)試算法,平時(shí)在開發(fā)中,更多的考慮如何減少信息傳輸,提高代碼效率,這也是一種算法。
我們必須理解和掌握:1。樹,2。散列,3。正規(guī)化,4。圖算法,5。字符串匹配,6。但是我們需要掌握更多的經(jīng)典數(shù)學(xué)算法,這是基礎(chǔ)。算法離不開數(shù)學(xué),算法打得好,一般數(shù)學(xué)都好。通常,建議多讀一些關(guān)于線性代數(shù)、高等數(shù)學(xué)和算法的書,這些書對(duì)計(jì)算機(jī)有幫助。我們來看看國(guó)外節(jié)目競(jìng)賽的題目。其他人編寫的程序?qū)?duì)算法有較大的啟發(fā)。但作為程序員,算法只是其中的一部分,更重要的是如何快速迭代,降低開發(fā)成本,如何適應(yīng)業(yè)務(wù)。
人工智能在圍棋上真的沒有弱點(diǎn)嗎?
AI在圍棋中不能沒有缺點(diǎn),但優(yōu)缺點(diǎn)都是相對(duì)的。如果你比我強(qiáng)大,我就有你的缺點(diǎn)。下棋之后,你到處都能發(fā)現(xiàn)我的缺點(diǎn)。但如果我比你強(qiáng)大,你就看不到我在棋盤上的缺點(diǎn)。因此,有一個(gè)好的對(duì)手,遇到一個(gè)好的人才,是人生的一種樂趣。否則,雙方就不在同一個(gè)維度上,他們之間的對(duì)話就不能激起火花,沒有樂趣。
人工智能來自人類的創(chuàng)造。只要是人類創(chuàng)造的,就一定有弱點(diǎn)。目前,人工智能最強(qiáng)的alphago并沒有表現(xiàn)出任何明顯的弱點(diǎn)。其頭像大師alphago在互聯(lián)網(wǎng)上獲得的60連勝棋局內(nèi)容是可怕的,其明顯的弱點(diǎn)一刻也找不到。這是同樣的問題。因?yàn)槿祟悓<覐膩頉]有贏過,他們沒有辦法知道自己的弱點(diǎn)在哪里。只有贏得比賽,他們才能發(fā)現(xiàn)自己的弱點(diǎn)。
以我和師父下的象棋為例。如果序曲不在右上角,我的處境會(huì)很好,但有了勺子,結(jié)局就定了。對(duì)于alphago級(jí)別的AI來說,只要有明顯的錯(cuò)誤,就沒有回頭的機(jī)會(huì)。科杰當(dāng)然不能這么做。
Alphago暫時(shí)找不到任何缺點(diǎn),這并不意味著其他AI也沒有缺點(diǎn)。除了其獨(dú)特的技能,還有很多其他人工智能的漏洞。覺一最近在網(wǎng)上和職業(yè)棋手比賽,已經(jīng)輸了6場(chǎng)。它似乎對(duì)人類專家的大規(guī)模孤立局面沒有足夠的控制。例如,它殺死了黨一飛、黃云松、范寅和邱軍,然后把自己的龍送進(jìn)來。對(duì)于大規(guī)模殺戮,絕一的控制不能說是超級(jí)一流。它輸?shù)舻牧鶊?chǎng)比賽完全一樣。如果殺戮太復(fù)雜,電腦的反應(yīng)就是有缺陷的。在這方面,人類棋手只需要掃描一下就可以看到大致的畫面,而電腦卻沒有這樣的眼睛,它只能將情況分成幾部分進(jìn)行計(jì)算,這就影響了它對(duì)大規(guī)模殺戮的判斷。