版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第1章緒論問題:雖然大語言模型可以根據(jù)我的提問進行回答,被認為是人工智能,那么空調(diào)也能根據(jù)室內(nèi)溫度進行自動調(diào)控溫度,不也是人工智能嗎?人工智能是不是一定會按照人類思考的方式來進行思考?人工智能雖然聽起來很前沿,但是你知道這個概念有多大歲數(shù)了呢?人工智能究竟有哪些技術?1.1.人工智能的概念ArtificialIntelligence1.1.1.智能狹義的智能可以理解為人類所具有的智能,是指具備學習、理解、推理、適應和解決問題等認知能力的能力,它涉及對信息的處理、對環(huán)境的適應和對目標的實現(xiàn)從表現(xiàn)來看,智能往往體現(xiàn)在人類的認知能力上,包括知識的獲取和應用、推理和解決問題、學習和記憶、語言和溝通、創(chuàng)造力和創(chuàng)新等廣義的智能是包括人類在內(nèi)的很多系統(tǒng)通過獲取和加工信息而獲得的一種能力,據(jù)此可以實現(xiàn)從簡單到復雜的演化智能不僅體現(xiàn)在從環(huán)境中接受感知,而且還要表現(xiàn)為執(zhí)行行動并適應環(huán)境冰箱是不是人工智能?現(xiàn)階段人工智能研究應用所處的位置如何看待智能中的感性成分?人類智能并非始終理性人工智能的理性目標也具有有限性在理性智能所不能到達的區(qū)域,感性成分發(fā)揮不可替代的作用感性本身往往并不具有理性推導和規(guī)則計算的特點,感性更多要結(jié)合文化、情感等更多的成分智能是否意味著有意識?1.1.2.人工智能從定義來看,1956年計算機科學家約翰·麥卡錫首次提出了“人工智能”的概念當時主要是指在處理任務時具有人類智力特點的機器,它們具有組織和理解語言、識別物體和聲音、學習和解決問題等能力約翰·麥卡錫被尊稱為“人工智能之父”在1956年達特茅斯會議上提出了“人工智能”這個概念著名人工智能編程語言LISP的發(fā)明人在人工智能領域的貢獻而在1971年獲得圖靈獎名稱具有多種指代性表示一門學科知識,即制造智能機器的科學與工程,今天的人工智能學科主要是計算機科學的一個分支表示一種技術,即實現(xiàn)人工智能的相關技術、算法和方法等表示一種智能體,即一個可以觀察周遭環(huán)境并作出行動以達致目標的系統(tǒng),是可以模仿人類思維相關認知功能的機器或計算機簡單理解由人類創(chuàng)造的類人智能關鍵特點人工,即強調(diào)該方法或系統(tǒng)是由人類設計、為人類所創(chuàng)造智能,即模擬、實現(xiàn)和超越人類智能的水平準確定義在理論層面,研究開發(fā)用于模擬、延伸和擴展人的智能的理論、方法、技術及應用系統(tǒng)在應用層面,關注如何讓計算機去完成以往需要人的智力才能勝任的工作硅基芯片人工智能的研究離不開計算載體,現(xiàn)階段主要的方式依然采取依賴于硅基芯片的計算方式生物芯片在一塊玻璃片、硅片、尼龍膜等材料上放上生物樣品,通過生物芯片上布列的一個個生物探針分子實現(xiàn)數(shù)據(jù)的存儲、計算和采集,并由計算機給出分析數(shù)據(jù)結(jié)果人工智能未必意味著該技術一定要和人類一樣來進行思考汽車的行駛原理和效果已遠遠脫離了傳統(tǒng)動物奔跑等的基本移動模式對比人類智能與人工智能——產(chǎn)生起源人類智能是一種生物進化的產(chǎn)物,基于大腦神經(jīng)元之間的復雜連接和交互人工智能它依賴計算機程序、算法和大量數(shù)據(jù)來模擬智能行為對比人類智能與人工智能——工作方式人類智能依托于人類的大腦,其具有大約1000億個神經(jīng)元人工智能的結(jié)構(gòu)和功能則是通過計算機硬件和軟件來實現(xiàn)硬件以二進制數(shù)據(jù)的方式編碼存儲在硬盤或硅基芯片上軟件通過諸如神經(jīng)網(wǎng)絡技術來模擬人類大腦神經(jīng)元的連接方式對比人類智能與人工智能——外在表現(xiàn)人類智能具有更強的適應性和創(chuàng)造性,并能產(chǎn)生新的想法和解決方法,還具有情感、道德和倫理等方面的智能表現(xiàn)現(xiàn)階段的人工智能則更多的表現(xiàn)出一種在特定任務上具有類人智能的能力,如語音識別、圖像識別、自然語言處理等,缺乏一般性和靈活性對比人類智能與人工智能——效果與效率目前人工智能的技術應用在某些特定領域,如棋藝、圖像識別、多語言翻譯等,確實已經(jīng)超越了人類智能水平現(xiàn)階段的人工智能還不能達到可以完全取代人類智能的水平從效率來看,人類大腦在能量消耗方面更為高效對比人類智能與人工智能——自我意識人類具有自我意識和自我認知的能力,可以意識到自己的存在和感受,理解自己的行為和思維過程,并對自己的行為和思維進行反思和調(diào)整現(xiàn)階段人工智能還無法像人類一樣具有意識和自我認知的能力如何測度人工智能?——圖靈測試1950年圖靈提出了基于“模仿游戲”的圖靈測試(Turing
Test)方法只要用于測試的機器表現(xiàn)出與人類相同的思維和行動效果,人們無法區(qū)分這些是人類所為還是機器所為,那么就可以據(jù)此斷定機器具有智能通過圖靈測試,就能夠區(qū)分機器思考能力是否與人類相同在測試中,由測試者寫下自己的問題,隨后將問題以純文本的形式(如計算機屏幕和鍵盤)發(fā)送給另一個房間中的一個人與一臺機器。測試者根據(jù)他們的回答來判斷哪一個是真人,哪一個是機器。所有參與測試的人或機器都會被分開通常測試時長通常為5分鐘,如果機器能回答由人類測試者提出的一系列問題,且其超過30%的回答讓測試者誤認為是人類所答,則機器通過測試完全圖靈測試需要與真實世界中存在的對象和人進行交互具身圖靈測試強調(diào)機器系統(tǒng)與世界環(huán)境的具身交互研究測試內(nèi)容具體包括控制身體和操縱物體與世界互動、應對未知情況的行為靈活性、具有經(jīng)濟可行的能源效率等具身圖靈測試如果機器的行為與活著的同類無法區(qū)分,則通過測試比如人工海貍在大壩建設中的物種特異性行為測試1.1.3人工智能主要技術理論方法基于規(guī)則學習的方法(結(jié)構(gòu))問題求解的搜索方法基于知識的推理和規(guī)劃方法(即邏輯和知識表示)知識和推理中的不確定性(即概率推理、概率編程和多智能體決策)基于機器學習的方法(功能)概率方法深度學習強化學習應用領域自然語言處理計算機視覺機器人相關哲學、倫理、安全和管理等社會科學問題結(jié)合基礎設施和行業(yè)應用1.2人工智能的發(fā)展1.2.1基本情況人工智能第一次出現(xiàn)在人類語言中可以追溯到1889年肌肉機器機器智能大腦智能智能機器肉體智能(EmbodiedIntelligence)無肉體智能?(DisembodiedIntelligence)二十世紀五十年代才開始得到廣泛的關注達特茅斯研討會的申請書會議原址:達特茅斯樓會議內(nèi)容會議主題認為理論上人類學習的每個方面或智能的任何特征都可以被精確的描述提出了七個擬攻克的領域,即自動(可編程)計算機、編程語言、神經(jīng)網(wǎng)絡、計算復雜性、自我學習和提高(機器學習)、抽象、隨機性和創(chuàng)造性預言與人類具有同等智能水平的機器將在不超過一代人的時間中出現(xiàn)確定了人工智能這門學科和人工智能概念早期所提出的人工智能實現(xiàn)方法多以規(guī)則和推理等類人的思維方式來構(gòu)建,由于缺乏對求解問題復雜性的深刻認識,這些方法通常也只適合處理具有特定規(guī)模的任務,這些方法無一例外都在二十世紀七十年代遇到了嚴重的發(fā)展阻力直至二十世紀九十年代以后,隨著機器學習方法的廣泛應用,尤其是2010年以后大數(shù)據(jù)的產(chǎn)生,以大數(shù)據(jù)驅(qū)動的機器學習方法開始在人工智能研究和應用領域發(fā)揮出越來越明顯的作用和價值NP完全性NP完全性(NP-Completeness)描述了問題的固有復雜度比如一座山峰可能沒有明確的路線,或者路線可能非常復雜和難以找到,需要在各種可能的路線中嘗試,甚至可能需要嘗試所有的路線,才能確定哪一條可以通往山頂(非確定時間內(nèi)可解),即使找到正確的路線,也可能需要花費巨大的時間和努力才能到達山頂(計算復雜度很高)NP完全性并不意味著一個問題無法解決,而是指目前還沒有找到一種高效的解決方法1.2.2發(fā)展三階段第一代人工智能——規(guī)則學習方式第二代人工智能——傳統(tǒng)機器學習方式第三代人工智能——神經(jīng)網(wǎng)絡學習方式第一代人工智能——規(guī)則學習方式符合直覺的人工智能實現(xiàn)方式通過認知建模方法實現(xiàn)類人思考只要有足夠精確的心智理論,就有可能把這個理論表達為計算機程序,進而實現(xiàn)人工智能早期的嘗試亞里士多德提出的三段論就是一種法則化的思維方法十九世紀形成邏輯學,通過建立精確符號系統(tǒng)來描述世間萬物及之間的關系,并提供了推導和演算的嚴密規(guī)則十四世紀的拉蒙·魯爾設計了一種推理系統(tǒng)GreatArt,它是一個可以旋轉(zhuǎn)成不同排列組合的紙盤機械系統(tǒng)十七世紀《利維坦》認為心臟就是發(fā)條,神經(jīng)就是游絲,關節(jié)就是齒輪,而推理就是一種數(shù)值計算相關邏輯學研究也構(gòu)成了人工智能研究領域的邏輯主義近代的嘗試1955年,艾倫·紐厄爾等人開發(fā)了“邏輯理論家”程序能夠證明《數(shù)學原理》中前52個定理中的38個赫伯特·蓋倫特設計的幾何定理證明程序能夠證明許多數(shù)學專業(yè)學生都認為較難的定理利用LISP語言編寫的MYCIN系統(tǒng)可以診斷血液感染,大約有450條規(guī)則,盡管如此,開處方的正確率達到了69%,其表現(xiàn)已經(jīng)優(yōu)于一些初級醫(yī)生,雖然低于80%這個專業(yè)從事細菌感染的醫(yī)師正確率例子——質(zhì)譜儀信息推斷分子結(jié)構(gòu)如果M是整個分子的質(zhì)量,且在x1和x2處有兩個峰,并且(a)x1+x2=M+28(b)x1?28是一個高峰(c)x2?28是一個高峰(d)x1和x2中至少有一處是高峰則該分子含有酮基取得的成果——搜索式推理為了實現(xiàn)一個目標,可以一步步地前進,就像在迷宮中尋找出路。如果遇到死胡同則進行回溯,并繼續(xù)尋找新的出路但是這種迷宮存在的線路總數(shù)會隨著迷宮的規(guī)模變大而產(chǎn)生指數(shù)爆炸般的增長,因此也可以使用一些啟發(fā)式算法去除一些不必要的尋找以提高性能STRIPS由斯坦福大學于1970年開發(fā)名稱是斯坦福研究所問題解決者(StanfordResearchProblemSolver)的首字母縮寫定義了目標導向型行動計劃(GOAP),可以讓AI自己去找到解決問題的方法STRIPS四個主要成分Agent代理:主體,AI就是控制Agent來執(zhí)行各種行為Action:動作,比如拿東西、丟東西、吃飯、伐木等,每個動作需要有執(zhí)行的先決條件、執(zhí)行后的效果和執(zhí)行需要的代價如吃飯行為執(zhí)行的先決條件是餓了和有食物,執(zhí)行后的效果是解決饑餓IGoap:提供給Agent目標和反饋是否成功失敗等Planer:決策出最優(yōu)的路線供Agent使用,從目標開始往前查找Action,如果Action的效果能夠完成至少一個目標,則保存Action的效果,然后將Action的前置條件寫入到目標,繼續(xù)往前查找取得的成果——自然語言處理采取規(guī)范化的表達方式來進行類似于計算機編程語言采取諸如語義網(wǎng)絡、明確人類語言語法規(guī)則等方法來構(gòu)建自然語言處理應用系統(tǒng)二十世紀六十年代世界上第一個聊天機器人Eliza主要問題——數(shù)理邏輯具有局限性雖然機械設備能夠模擬數(shù)學推理過程,但是并非所有的數(shù)學推理都可以形式化1931年,哥德爾的不完全性定理證明存在著演繹的限制,即使在一些強形式化理論中,也必然存在一些沒有證明的真實陳述沒有一個數(shù)理邏輯體系能夠證明自身的一致性,因此數(shù)學公理的真理性必須在這些體系之外得到證明主要問題——世界認知邏輯具有不確定性規(guī)則學習方法還需要假定關于世界的認知邏輯具有確定性,而實際上這很難實現(xiàn)對于政治、經(jīng)濟等復雜事件,卻始終無法存在一種唯一并且普適的規(guī)則,甚至哪種規(guī)則更為合理都會存在爭議主要問題——計算能力有限很多人工智能應用非常重要的常識與推理都需要大量對世界的認識信息和計算能力,而這樣一個巨大的知識數(shù)據(jù)庫當時無法實現(xiàn)二十世紀七十年代,人們發(fā)現(xiàn)當時的人工智能技術只能解決它們嘗試解決的問題中最為簡單的一部分應用實踐也證明,哪怕一個僅容納一個普通人所有常識的知識數(shù)據(jù)庫也無法制造出來人工智能發(fā)展遭受比較大的挫折莫拉維克悖論(Moravec'sParadox)要實現(xiàn)人類高階智慧能力只需要非常少的計算能力,但是要想實現(xiàn)一些諸如無意識技能和簡單的直覺行為卻需要極大的運算能力現(xiàn)實的選擇依據(jù)一組從專門知識中推演出的邏輯規(guī)則并在某一特定領域回答或解決問題的專家系統(tǒng)一度取得了不錯的效果蘋果公司在2011年開發(fā)的Siri語音助手就需要人工干預來擴展其知識庫和功能積木世界(BlocksWorld)MITAILab(麻省理工人工智能實驗室)在二十世紀六十年代研發(fā)的一個視覺處理項目,通過將真實世界進行視覺簡化,將所有物體的形狀都分解為由若干類似于積木的矩形單元來組成對于諸如“找到一個大的黃色積木并將其放在紅色積木上面”這樣簡單的動作要求,卻需要大量復雜的規(guī)則才能描述清楚也正是該項目使得人們最終意識到單純依靠規(guī)則學習方法來實現(xiàn)對復雜現(xiàn)實世界的推理學習并不可行第二代人工智能——傳統(tǒng)機器學習方式強調(diào)借助大量數(shù)據(jù)樣本,讓程序自己學習并獲得智能思維能力這種學習過程與包括概率論在內(nèi)的數(shù)學緊密相關數(shù)學方法與人工智能的關系算法(Algorithm)”這個詞語最早就來自于九世紀的數(shù)學家穆罕默德·本·穆薩·阿爾·花剌子模(MuhammadibnMusaal-Khwarizmi)概率數(shù)學方法提供了一種有效的解決方案,允許在掌握不確定信息情況下進行嚴格的推理,甚至可以構(gòu)建全面的理性思維模型基于概率論的貝葉斯法則已稱為現(xiàn)代人工智能方法的基礎算法概率怎么用在人工智能技術上?woshizhonggguoren我是中國人(0.0001)
仁(0.0000001)
……(0.000000001)更多數(shù)學方法決策論結(jié)合了概率論和效用理論,為在不確定性下做出個體決策提供了計算方法每個主體都無須關注其他獨立主體的行為,但是每一個主體行為都可以給其他參與者效用帶來積極或者消極的作用博弈論強調(diào)理性智能體的個體理性會產(chǎn)生集體非理性,個體有時采用隨機策略反而最優(yōu)運籌學主要關注當行為的收益不是立即產(chǎn)生而是在幾個連續(xù)的行為后產(chǎn)生時,此時應該如何做出理性決策特點使得人工智能可以與其他學科展開更高層次的合作使得相關研究結(jié)果更易于評估和證明主要問題受限于有限的計算能力和訓練數(shù)據(jù)資源,當時的大部分機器學習方法都建立在小型規(guī)模數(shù)據(jù)的訓練基礎之上往往只能局限于與那些被處理數(shù)據(jù)接近的應用領域,缺乏對大規(guī)模數(shù)據(jù)應用場景的普適性和高效計算能力有效性與可解釋性在二十世紀八十年代使用隱馬爾可夫模型進行語音識別取得了非常不錯的效果,但是這肯定不是人類使用和理解語言的方式機器學習三種主要方法無監(jiān)督學習監(jiān)督學習強化學習無監(jiān)督學習直接原始數(shù)據(jù)中進行學習典型方法就是聚類給定一組水果,通過將每個水果顏色、味道、形狀等特征使用一個向量來表示,再根據(jù)這些特征向量之間的相似度進行聚類監(jiān)督學習從已經(jīng)帶有標注信息的數(shù)據(jù)中進行學習,因此方法可以學習到數(shù)據(jù)特征與這些已標注信息之間的對應關系比如分類給定一組動物,標注好每種動物所屬的類別(如魚、狗、鳥等)通過學習,機器找到圖片特征與已知類別的關系具體學習過程絕非人類的語義理解過程強化學習通過智能體的設計來自主探索環(huán)境狀態(tài),采取行為作用于環(huán)境并從環(huán)境中獲得回報,據(jù)此不斷調(diào)整智能體的執(zhí)行邏輯和優(yōu)化執(zhí)行效果強調(diào)學習是一個動態(tài)過程,沒有明確的學習目標,對結(jié)果也沒有精確的衡量標準強化學習在棋類游戲中的成功應用在1956年,亞瑟·薩繆爾就使用了該方法研究西洋跳棋對弈程序,特點在于可以自我學習,甚至比其創(chuàng)造者玩得更好2017年10月,DeepMind推出了基于強化學習技術的AlphaGoZero程序,它能夠在無師自通的情況下實現(xiàn)自我博弈,最終以100:0的成績戰(zhàn)勝了前任AlphaGo第三代人工智能——神經(jīng)網(wǎng)絡學習方式從二十世紀八十年代神經(jīng)網(wǎng)絡方法再次得到關注開始發(fā)展至今到二十一世紀后,以大數(shù)據(jù)驅(qū)動的深度學習方法最終產(chǎn)生了人工智能研究的突破性發(fā)展神經(jīng)網(wǎng)絡利用類似于人類大腦神經(jīng)元的計算模式來構(gòu)建人工智能早在1943年,神經(jīng)學家麥卡洛克等首次提出神經(jīng)元性質(zhì)的數(shù)學表達形式,以試圖了解大腦計算的運行方式后期產(chǎn)生的神經(jīng)科學也主要針對大腦等神經(jīng)系統(tǒng)進行研究超級計算機個人計算機人類大腦計算單元106GPU+CPU1015個晶體管8個CPU內(nèi)核1010個晶體管1011個神經(jīng)元存儲單元1016字節(jié)(10PB)RAM1017字節(jié)(100PB)磁盤1010字節(jié)(10GB)RAM1012字節(jié)(1TB)磁盤1011個神經(jīng)元1014個突觸周期時間10-9秒10-9秒10-3秒運算/秒1018101010172019年典型計算機配置和人類大腦性能對比大腦的神經(jīng)網(wǎng)絡結(jié)構(gòu)大腦中不同神經(jīng)元之間通過軸突相互連接信號就通過復雜的電化學反應從一個神經(jīng)元通過軸突傳遞到其他神經(jīng)元通過這些信號,大腦可以實現(xiàn)短期的活動控制,也可以通過改變神經(jīng)元的連通性實現(xiàn)長期記憶效應神經(jīng)網(wǎng)絡方法人工模擬大腦神經(jīng)元計算的方法通過人工神經(jīng)元和彼此之間的連接設計來實現(xiàn)數(shù)值計算學者證明任何可計算的函數(shù)可以通過一些神經(jīng)元互相連接的網(wǎng)絡來計算所有的邏輯運算(AND、OR、NOT等)也都可以通過網(wǎng)絡結(jié)構(gòu)來實現(xiàn)適當定義的網(wǎng)絡還可以進行自我學習通過修改神經(jīng)元之間連接強度來表達規(guī)則更新較早的形式感知器只有一個輸入層、一個神經(jīng)元和一個輸出美國軍方利用感知器技術完成了對坦克圖片的識別復雜神經(jīng)網(wǎng)絡BP神經(jīng)網(wǎng)絡玻爾茲曼機誤差反向傳播深度神經(jīng)網(wǎng)絡(深度學習)大數(shù)據(jù)支撐2011年IBM的Watson系統(tǒng)在《危險邊緣》戰(zhàn)勝人類冠軍小樣本學習也稱為低樣本學習強調(diào)從有限數(shù)量的數(shù)據(jù)集進行快速訓練的能力,從而實現(xiàn)時間成本和計算成本更小的學習能力人類的學習行為更類似于小樣本學習相關研究尚未取得突破性的進展深度學習方法一種神經(jīng)網(wǎng)絡方法,即深度神經(jīng)網(wǎng)絡具有多層處理單元的深層神經(jīng)網(wǎng)絡方法深度學習與傳統(tǒng)機器學習的區(qū)別深度學習的發(fā)展2006年深度學習的基本理論框架得到驗證2010年在語音識別和自然語言處理等領域取得突破2012年ImageNet圖像分類競賽中獲得冠軍識別率超過第二名10個百分點深度學習的數(shù)據(jù)要求在20世紀八九十年代,典型的人工智能程序神經(jīng)元個數(shù)一般只有幾十個,相應的模型參數(shù)也就幾百個諸如GPT4這樣的現(xiàn)代大模型,都是以萬億為模型參數(shù)單位互聯(lián)網(wǎng)產(chǎn)生的大數(shù)據(jù)提供了相當規(guī)模的數(shù)據(jù)資源,根據(jù)IDC的預測,2024年全球數(shù)據(jù)量有160ZB,而到2028年會增加到310ZB深度學習的算力要求從提高時鐘頻率開始演變?yōu)樵黾佑嬎愫藬?shù),有益于并行計算,可以加速與大腦并行特性類似的深度學習計算過程CPU(中央處理器)、GPU(圖形處理器)、TPU(張量處理器)、WSE(晶圓級引擎)、ASIC(專用集成電路)、FPGA(現(xiàn)場可編程門陣列)等計算芯片也提供了強大的算力支持芯片制程從28nm到14nm,再到7nm,再到5nm乃至更小2012年英偉達推出了CUDA編程模型2014年需要一天時間的機器學習訓練在2018年只需兩分鐘即可完成人工智能、機器學習和深度學習的關系深度學習的局限性傳統(tǒng)機器學習發(fā)展歷史久,很多算法相當成熟對計算條件要求不高,完全適用于很多應用場合支持向量機決策樹隨機森林深度學習的局限性所需的訓練成本、調(diào)參復雜度等問題仍然存在目前深度學習屬于人工智能主流方法不論在計算效果還是計算性能方面,都取得了非常驚人的發(fā)展最先進的深度學習方法已經(jīng)能夠達到甚至超過人類平均水平強化學習也是現(xiàn)代人工智能重要方法1.3人工智能應用領域自然語言處理計算機視覺機器人1.3.1自然語言處理讓計算機能夠閱讀、理解和提取包括各種人類語言在內(nèi)的自然語言文本或語音,實現(xiàn)人與計算機之間更為自然的交流效果讓人去適應計算機計算機編程語言讓計算機去適應人自然語言處理涉及的技術文本分析文本挖掘語義分析語音識別人機問答......人類語言的復雜性人類語言數(shù)量多,約六千種,各種語言的語法規(guī)則也大相徑庭德語可以不使用空格來連接多個詞語法語動詞變位會受到語式、時態(tài)和人稱不同而產(chǎn)生超過二十多種的變化阿拉伯文字從右向左閱讀,但是遇到阿拉伯數(shù)字時還需從左向右進行人類語言中存在語義模糊現(xiàn)象Timeflieslikeanarrow,fruitflieslikeabanana我知道你不知道我知道你不知道我知道你不知道上下文(Context)當前語句所處的語言環(huán)境準確的語義理解需要對其上下文進行全面的分析例子:小明幫助了小亮,因此我表揚了他第二句話中的“他”應該指“小明”規(guī)則方法的失敗1954年美國喬治敦大學和IBM公司合作實現(xiàn)將超過60句的俄語自動翻譯成英語,該系統(tǒng)僅包含6個語法規(guī)則和250個詞隨著詞語數(shù)量的增加,這些方法很快就產(chǎn)生了規(guī)則數(shù)量爆炸性增長的問題,因此無一例外都宣告失敗深度學習方法的勝利使用深度學習方法的人工智能技術實現(xiàn)了類似于人類自然對話的人機交互效果比如ChatGPT等大語言模型完全可以勝任一些常見的客服對話仍然存在的問題任何系統(tǒng)都不可能無限并且始終及時地獲取人類語言新詞數(shù)據(jù)并進行統(tǒng)計學習由于大模型的訓練數(shù)據(jù)通常只包含文本和對應的標簽,而不包含顯式的知識或邏輯規(guī)則,因此它們可能難以進行復雜的知識推理和邏輯推理人類語言中存在的某些復雜語言現(xiàn)象,如隱喻、雙關語、詩歌等,模型可能難以準確理解和生成在情感分析方面,如何深入理解文本中的情感細微差別和生成具有特定情感的文本方面,仍然還有距離主要應用機器翻譯情感分析問答系統(tǒng)文本摘要命名實體識別語音識別這種自動翻譯的錯誤是如何產(chǎn)生的?很多機器翻譯系統(tǒng)將這句英文翻譯到俄語好后再翻譯回英語時,卻變成Thespiritiswillingbutthefleshisweak意思是指“心有余而力不足”TheVoltkaisstrongbutthemeatisrotten意思是指“伏特加酒很濃但肉卻腐爛了”1.3.2.計算機視覺研究如何通過計算機及相關設備來模擬生物視覺功能視覺很重要人類的眼睛獲取了約占70%的外界輸入信息大腦中20%-30%的皮層區(qū)域用于處理視覺信息常見的計算機視覺功能分類功能含義舉例分割在圖像視頻中分離出各類特定物體并描述相關特征自動駕駛中分離道路交通特征分類根據(jù)定義的類別用于確定圖像視頻中內(nèi)容并進行分類是貓還是狗?檢測檢測目標物是否存在以及空間位置等,通常會在相關區(qū)域周圍設置矩形邊界框包圍住目標對象物體跟蹤(車輛軌跡)、光學字符識別(車牌識別)AlphaGo是否是計算機視覺?并非所有處理原始對象為圖像的研究技術都是計算機視覺該技術的輸入只是棋子的位置信息,甚至在對弈期間也是人類扮演了AlphaGo棋手來進行真實的對弈如果AlphaGo可以直接完成和人類選手的真實對弈,直接看棋局,那樣的技術可以認為具有了計算機視覺處理能力存在的困難數(shù)據(jù)存在著較大噪聲、模糊損壞、遮擋等問題視角和尺度變化也會導致物體在圖像中的形態(tài)和大小發(fā)生變化。圖像和視頻的數(shù)據(jù)量非常龐大,實時響應和處理難度大也要結(jié)合上下文才能準確理解其含義在商場中的模糊人影可能為顧客在原始森林中則更可能是動物的身影如何識別出瞳孔和周圍的紋理?圖像特征的抽象能力——都是河馬?主要應用自動駕駛工業(yè)制造醫(yī)療診斷安防監(jiān)控游戲和娛樂1.3.3機器人能夠半自主或全自主工作的智能機器,可以通過編程和自動控制來執(zhí)行各項任務等功能更為綜合性的技術領域機械手和步行機構(gòu)機器視覺觸覺聽覺機器人語言和智能控制軟件不同系統(tǒng)之間交互和組合控制機器人發(fā)展與勞動解放有著密切的淵源Robot最早出現(xiàn)在1920年的捷克劇作家卡雷爾·恰佩克(Karel?apek)的科幻劇《羅西姆的萬能機器人》中,意思是“強制勞動者”1954年,由美國發(fā)明家喬治·德沃爾(GeorgeDevol)設計的第一臺機器人也是一個可編程機械臂,被稱為“遙控操作器”,他們都與生產(chǎn)勞動緊密相關發(fā)展特點未必有人形的外觀現(xiàn)階段機器人相關技術和應用發(fā)展仍然處于發(fā)展早期目前主要機器人應用集中于農(nóng)業(yè)工業(yè)等生產(chǎn)制造領域與我們生活緊密相關的領域,機器人的身影還不多見生成式人工智能可以讓機器人和人類交流更為方便人形機器人機器人會不會讓更多的人失業(yè)?有人擔心智能機器人的出現(xiàn)會導致更多的人失業(yè)也有人認為最終人類工作還是能發(fā)生轉(zhuǎn)移,更多的人開始從事更有創(chuàng)造性和價值的工作主要應用——生物機器人(Plasmobot)利用單細胞打造而成,能夠完成普通仿真機器人所不能完成的任務,生物機器人被設計成通過光和電磁刺激來激發(fā)化學反應,其最終目標是使其具備組裝微機器組件的能力2020年就有學者從非洲爪蛙胚胎中提取出的干細胞,制造了首批名為Xenobots的“活體機器人”,可用于帶走海洋中的微塑料或攻擊癌細胞2023年研發(fā)的“微型人體細胞機器人”則由人體細胞構(gòu)成,直徑約在30到500微米,未來能夠幫助治愈人體受損的組織利用人工智能方法自動設計候選生命主要應用——人型機器人(HumanoidRobot)模仿人類外觀和行為的機器人2001年美國麻省理工學院研發(fā)了號稱世界上第一個有類似人類感情的機器人“Nexi”2013年由美國波士頓動力公司開發(fā)的Atlas雙足人形機器人第2章數(shù)據(jù)與算法算法+數(shù)據(jù)結(jié)構(gòu)=程序問題:什么是數(shù)據(jù)?數(shù)據(jù)就是整數(shù)嗎?
大數(shù)據(jù)的特點是什么?為什么叫大數(shù)據(jù)?
數(shù)據(jù)的價值究竟在什么地方?以前也有很多數(shù)據(jù),為什么不談大數(shù)據(jù)?程序是什么?人工智能是程序嗎?計算思維對于指導我們的學習和工作有什么重要的作用?2.1數(shù)據(jù)與數(shù)據(jù)素養(yǎng)2.1.1基本概念數(shù)據(jù)信息、知識和智慧大數(shù)據(jù)(1)數(shù)據(jù)狹義來看,整數(shù)、浮點數(shù)、文本等都是數(shù)據(jù)廣義來看,數(shù)據(jù)是指事實或觀察的結(jié)果,是對客觀事物的邏輯歸納,是用于表示客觀事物的未經(jīng)加工的原始素材以具有一定含義的、可識別的、抽象的符號來表示1,2,3...汽車,Cat...數(shù)據(jù)依賴于存儲介質(zhì)有哪些存儲介質(zhì)?二進制存儲主要原因在于這些計算機存儲設備上的存儲單元通常有兩種不同類型的存儲狀態(tài),而二進制則只使用0和1表示各種數(shù)值磁盤表面覆蓋一層磁性材料方向可以是“向下”或“向上”,利用這兩個方向在邏輯上可以表示0和1光盤表面被激光燒刻成一系列等距的微小凹坑和未被燒刻而呈現(xiàn)原先的平坦軌道狀態(tài)分別表示0和1閃存閃存中每個存儲單元累積了一定的電荷時表示為1,反之則表示為0數(shù)據(jù)的劃分數(shù)據(jù)取值的存儲計算類型整型、浮點型、布爾型和字符型數(shù)據(jù)取值的特點連續(xù)型數(shù)據(jù)和離散型數(shù)據(jù)是否具有和考慮次序定序數(shù)據(jù)和不定序數(shù)據(jù)數(shù)據(jù)之間間隔的計量單位分為定距數(shù)據(jù)和不定距數(shù)據(jù)整型正整數(shù)、零、負整數(shù)的集合不僅計算相對簡單,而且也適合計算機處理可以通過轉(zhuǎn)換為整數(shù)以方便和加快計算速度浮點型也稱為小數(shù)在實際計算中,浮點類型往往不可避免的存在著精度丟失可能性
布爾型真假邏輯型取值分別為“真(True)”和“假”(False)喬治·布爾字符型也稱為文本類型通常可以表示諸如中文、英文等常見自然語言內(nèi)容01和1一樣嗎?字符型的表示真實存儲的字符型數(shù)值只是每個字符對應的整數(shù)編碼比如“OK”,存儲到計算機存儲設備上可能是這樣一個二進制序列“0100111101001011”常見的字母編碼方案有ASCII、UTF-8等,其中后者還支持漢字字符的表達計算機對字符的讀取按照整數(shù)來讀取,就直接讀取對應的整數(shù)按照字符串來讀取,就進一步轉(zhuǎn)換數(shù)據(jù)的劃分數(shù)據(jù)取值的存儲計算類型整型、浮點型、布爾型和字符型數(shù)據(jù)取值的特點連續(xù)型數(shù)據(jù)和離散型數(shù)據(jù)是否具有和考慮次序定序數(shù)據(jù)和不定序數(shù)據(jù)數(shù)據(jù)之間間隔的計量單位分為定距數(shù)據(jù)和不定距數(shù)據(jù)連續(xù)型數(shù)據(jù)數(shù)據(jù)取值可以在一個區(qū)間內(nèi)取任何值也稱為區(qū)間數(shù)據(jù)、浮點型數(shù)據(jù)等整數(shù)就是一種離散型數(shù)據(jù),也被稱為計數(shù)型數(shù)據(jù)離散型數(shù)據(jù)分類型數(shù)據(jù)只能從特定的數(shù)值集合中來取每個數(shù)值通常代表一個類別也被稱為枚舉數(shù)據(jù)、列舉數(shù)據(jù)、因子數(shù)據(jù)、標稱數(shù)據(jù)、多分支數(shù)據(jù)等二元數(shù)據(jù)數(shù)據(jù)數(shù)值只能從兩個數(shù)值中任取其一也被稱為二分數(shù)據(jù)、邏輯型數(shù)據(jù)、指示器數(shù)據(jù)、布爾型數(shù)據(jù)等離散型即使采用數(shù)值來表達,不同的數(shù)值并不能體現(xiàn)一種大小的差異,而只能體現(xiàn)類別彼此的不同數(shù)據(jù)的劃分數(shù)據(jù)取值的存儲計算類型整型、浮點型、布爾型和字符型數(shù)據(jù)取值的特點連續(xù)型數(shù)據(jù)和離散型數(shù)據(jù)是否具有和考慮次序定序數(shù)據(jù)和不定序數(shù)據(jù)數(shù)據(jù)之間間隔的計量單位分為定距數(shù)據(jù)和不定距數(shù)據(jù)定序數(shù)據(jù)通常用于分類中位數(shù)、四分位數(shù)、等級相關系數(shù)不定序數(shù)據(jù)主要應用于集合等數(shù)值計算只強調(diào)數(shù)值元素本身,彼此之間的位序沒有意義數(shù)據(jù)的劃分數(shù)據(jù)取值的存儲計算類型整型、浮點型、布爾型和字符型數(shù)據(jù)取值的特點連續(xù)型數(shù)據(jù)和離散型數(shù)據(jù)是否具有和考慮次序定序數(shù)據(jù)和不定序數(shù)據(jù)數(shù)據(jù)之間間隔的計量單位分為定距數(shù)據(jù)和不定距數(shù)據(jù)定距數(shù)據(jù)不僅能體現(xiàn)定序數(shù)據(jù)的特點,而且還能準確計算不同數(shù)據(jù)之間的差距比如學生的分數(shù)都按照1分為單位劃分為101個等級(0分到100分)不定距數(shù)據(jù)數(shù)據(jù)間隔并不一致比如將小于60分記為不及格、60分以上記為及格數(shù)據(jù)的功能特點數(shù)據(jù)類型所有的數(shù)據(jù)都要有一個數(shù)據(jù)類型需要轉(zhuǎn)換為一致的類型才能計算數(shù)據(jù)運算不同類型的數(shù)據(jù)運算方法并不完全一致甚至需要專門進行定義整數(shù)的運算加減乘除等算術運算二進制也遵守不同的進制十進制十六進制889910A11B12C13D14E15F16101711十進制二進制0011210311410051016110711181000這些數(shù)值等于幾?十六進制FFA1二進制1111000布爾型數(shù)據(jù)的邏輯運算“并且(AND)”、“或者(OR)”和“非(NOT)”等這個判斷結(jié)果是真是假?
1大于0并且1大于2字符型數(shù)據(jù)的運算人為的設計計算意義兩個字符串相加表示連接兩個字符串形成一個新的字符串字符串和一個整數(shù)相乘表示將這個字符串重復整數(shù)指定的次數(shù)拼接成新的字符串(2)信息、知識和智慧信息人類社會傳播的一切內(nèi)容,通過獲得、識別各種信息來區(qū)別不同事物,得以認識和改造世界信息是位于數(shù)據(jù)概念之上的概念更多體現(xiàn)功效性
知識人類對物質(zhì)世界以及精神世界探索的結(jié)果總和知識的獲得往往需要從信息中進行提取、發(fā)現(xiàn)和總結(jié)知識也具有影響行動的特點知識往往還體現(xiàn)出較高的文化結(jié)合、驗證正確等特點DIKW層次結(jié)構(gòu)模型DIKW層次結(jié)構(gòu)模型的擴展DIKIWDIKUW...情報特殊的信息通常面向安全和競爭領域強調(diào)信息的對抗性、競爭性、及時性和對決策工作的支持能力常見基本概念及其關系如何理解它們之間的關系?信息化數(shù)據(jù)化數(shù)字化數(shù)智(3)大數(shù)據(jù)一種數(shù)據(jù)的特殊形態(tài)數(shù)據(jù)量非常龐大的數(shù)據(jù)人們無法利用主流信息技術在合理時間內(nèi)
實現(xiàn)有效的處理、分析和應用“5V”特點Volume(大量)Velocity(高速)Variety(多樣)Value(低價值密度)Veracity(真實性)思考:如何知道目前全球數(shù)據(jù)的總量?全球每天產(chǎn)生的數(shù)據(jù)量已經(jīng)達到2.5個億TB全球數(shù)據(jù)量約為幾百ZB數(shù)據(jù)量的表達表達信息系統(tǒng)中數(shù)據(jù)量的最小基本單位是位(bit)除了1字節(jié)是由8位組成外,其他的單位都是按照進率1024(2的十次方)來計算1KB=1024字節(jié)1MB=1024KB大數(shù)據(jù)的出現(xiàn)數(shù)據(jù)庫管理系統(tǒng)(OLTP)數(shù)據(jù)倉庫(OLAP)互聯(lián)網(wǎng)半結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)XML、NoSQL大數(shù)據(jù)特點維克托·邁爾·舍恩伯格在《大數(shù)據(jù)時代:生活、工作與思維的大變革》中將大數(shù)據(jù)特點歸結(jié)為三點這些大數(shù)據(jù)處理特性對傳統(tǒng)信息分析方法提出了新的要求更關注相關性而不是因果性更關注數(shù)據(jù)的紛繁復雜,而不是數(shù)據(jù)的精準全部數(shù)據(jù),而不是抽樣數(shù)據(jù)關注相關性而不是因果性包括機器學習在內(nèi)的很多計算機方法都缺乏有效的可解釋性如果利用好相關性,也足以滿足各類常見大數(shù)據(jù)分析任務的要求因果性和相關性吸煙人群肺癌比例較高這說明兩者存在相關性是否就能認為存在因果性?假如有這樣一種基因,它同時導致兩件事情,一是使人喜歡吸煙,二是使這個人更容易得肺癌。這種假設能解釋上述統(tǒng)計結(jié)果,而在這種假設中,這個基因和肺癌就是因果關系,而吸煙和肺癌則僅僅是相關關系相關性分析的意義美國芝加哥大學的信息科學榮譽教授Swanson在二十世紀八十年代進行過一項利用醫(yī)學文獻進行醫(yī)學知識發(fā)現(xiàn)的有效方法在這個假說提出大約兩年后,臨床實驗證實Swanson用他的方法提出了周期性偏頭痛與鎂缺乏之間的聯(lián)系,后來這種關系也被臨床證實大數(shù)據(jù)方法更關注數(shù)據(jù)的紛繁復雜而不是數(shù)據(jù)的精準通過損失一定的準確性來換取整體結(jié)果的及時性,效率優(yōu)先并且大概率保證完成目標思考:為什么推薦系統(tǒng)推薦的商品好像我并不喜歡?大數(shù)據(jù)方法更關于全部數(shù)據(jù)而不是抽樣數(shù)據(jù)傳統(tǒng)數(shù)據(jù)分析方法采用抽樣數(shù)據(jù)來估算整體情況大數(shù)據(jù)方法則強調(diào)對全體數(shù)據(jù)的利用現(xiàn)代人工智能就是建立在大數(shù)據(jù)基礎之上數(shù)據(jù)密集型科學范式并非意味著大數(shù)據(jù)萬能大數(shù)據(jù)處理需要獨特的方法設計必須要研究新的方法和技術大數(shù)據(jù)存儲GFS(GoogleFileSystem)TFS(TaobaoFileSystem)TFS(TencentFileSystem)這些文件系統(tǒng)功能比較近似,主要適合的應用場景文件比較小并發(fā)量高訪問隨機性強讀操作遠大于寫操作較低的存儲成本...思考:為什么叫“大數(shù)據(jù)”?2.1.2.數(shù)據(jù)素養(yǎng)統(tǒng)計素養(yǎng)和信息素養(yǎng)的延伸和擴展要求個體形成數(shù)據(jù)意識和數(shù)據(jù)敏感性能夠有效且恰當?shù)孬@取、分析、處理、利用和展現(xiàn)數(shù)據(jù)對數(shù)據(jù)具有批判性思維的能力(1)數(shù)據(jù)意識需要兩種重要的輔助技能支撐數(shù)據(jù)獲取能力數(shù)據(jù)評估能力評估下自己如何評價高校和企業(yè)的科研能力?如何獲取長江十年禁漁的相關政府新聞報道?如何對比了解康奈爾大學和曼徹斯特大學的受關注程度?如何知道我國各地區(qū)的鋼鐵行業(yè)發(fā)展情況?(2)數(shù)據(jù)能力處理數(shù)據(jù)、分析數(shù)據(jù)和對數(shù)據(jù)進行可視化的能力評估下自己從網(wǎng)頁上抓取的數(shù)據(jù)如何變成Excel文檔方便處理?如何評價兩組數(shù)據(jù)是否存在相關性?如何了解某位學者的研究興趣趨勢變化?(3)數(shù)據(jù)倫理收集、處理、存儲、共享和銷毀數(shù)據(jù)時應遵循的道德原則和標準關注如何平衡個人隱私、社會利益和數(shù)據(jù)利用之間的關系評估下自己電商平臺獲取的用戶訪問數(shù)據(jù)所有權屬于平臺還是用戶?如果有一個需要保存機密文件的U盤,請問該使用什么方法只能讓自己訪問?因為招聘網(wǎng)站推薦算法使用的數(shù)據(jù)往往都是年輕人數(shù)據(jù),因此對于中年人推薦往往失靈,你怎么看待這種算法歧視?(4)其他方面對數(shù)據(jù)具有批判性思維的能力數(shù)據(jù)綜合應用能力2.2.算法與計算思維2.2.1.基本概念算法程序設計語言(1)算法解題方案的準確而完整的描述通常需要能夠?qū)σ欢ㄒ?guī)范的輸入數(shù)據(jù)進行處理,并在有限時間內(nèi)獲得所要求的數(shù)據(jù)輸出或者操作算法在執(zhí)行過程中,會受到一些外在因素的影響而產(chǎn)生靈活的變化性算法名稱的來歷“算法”在中國古代文獻中稱為“術”,中文表述最早出自《周髀算經(jīng)》英文名稱“Algorithm”則來自于九世紀波斯數(shù)學家穆罕默德·本·穆薩·阿爾·花剌子模(MuhammadibnMusaal-Khwarizmi)歐幾里得算法(輾轉(zhuǎn)相除法,可以求最大公約數(shù))被人們認為是歷史上的第一個算法第一個編寫的程序是英國著名詩人喬治·戈登·拜倫的女兒奧古斯塔·愛達·拜倫于1842年為巴貝奇分析機編寫求解伯努利方程的程序,因此她被大多數(shù)人認為是世界上第一位程序員算法基本要素對數(shù)據(jù)進行運算和操作算術運算:適用于數(shù)值型數(shù)據(jù)的加減乘除等運算;邏輯運算:適用于布爾型數(shù)據(jù)的并且、或者、非等運算;關系運算:可以產(chǎn)生布爾型結(jié)果的大于、小于、等于、不等于等運算;數(shù)據(jù)傳輸:輸入、輸出、賦值等運算。算法的控制結(jié)構(gòu)順序語句分支語句循環(huán)語句三種基本的控制結(jié)構(gòu)對應的流程圖算法的特點有窮性明確性輸入輸出可行性算法的評價算法的正確性時間復雜度和空間復雜度可讀性和魯棒性算法的種類按照求解問題的不同排序、搜索、匹配、調(diào)度、覆蓋、圖相關按照算法設計策略貪心算法、分治法、動態(tài)規(guī)劃法、啟發(fā)式搜索、智能仿生等在實際應用中,很多算法都兼具多種不同標準的復合型類別特點排序可用分治法圖相關算法可用貪心算法、分治法、動態(tài)規(guī)劃法遞推法使用若干步可重復的運算來分解復雜問題廣泛應用于序列計算通過計算前面的一些項來得出序列中指定項的值,并以此為基礎,使用相同的運算規(guī)律并重復運算,直至得到運算結(jié)果并結(jié)束斐波那契數(shù)列迭代法也稱為輾轉(zhuǎn)法不斷用變量的舊值遞推新值的過程分為精確迭代和近似迭代和遞推法不同在于迭代法的迭代次數(shù)通常未知分治法把一個復雜的問題分成若干個相同或相似的子問題,再把子問題分成更小的子問題,直到最后子問題可以簡單的直接求解動態(tài)規(guī)劃法通過把原問題分解為相對簡單的子問題的方式來求解,常常適用于有重疊子問題和最優(yōu)子結(jié)構(gòu)性質(zhì)的問題這些子問題非常相似,為此動態(tài)規(guī)
劃法試圖僅僅解決每個子問題一次,從而減少計算量一旦某個給定子問題的解已經(jīng)算出,
則將其記憶化存儲,以便下次需要同一個子問題解之時直接查表貪心算法也稱為貪婪算法在每一步選擇中都采取在當前狀態(tài)下最優(yōu)(即最有利)的選擇,從而希望導致最終結(jié)果最優(yōu)的算法局部最優(yōu)并非全局最優(yōu)!窮舉法也稱為暴力破解法對于要解決的問題,列舉出所有可能的情況,逐個判斷有哪些是符合問題所要求的條件,從而得到問題的解是否所有的算法都可以通過計算機來實現(xiàn)?圖靈機只要能夠進行足夠時間的運行,該機器就能模擬人類所能進行的任何計算過程給定任何算法,都可以構(gòu)建一個能夠模擬該算法邏輯的圖靈機實現(xiàn)末位為1的二進制數(shù)加一烏爾班·米勒在1993年就按照圖靈機的思想創(chuàng)造了一門極簡的計算機編程語言Brainfuck語言只有八種指令符號編譯器也只有區(qū)區(qū)200多個字節(jié)實現(xiàn)兩個一位數(shù)的加法,>++++++[<-------->-],[<+>-]<.,.(2)程序設計語言也稱為計算機編程語言用于書寫計算機程序的標準化形式語言可以讓程序員準確的用來向計算機發(fā)出操作指令利用計算機實現(xiàn)算法的基礎工具和表達方式tiobe編程語言排行榜為什么叫計算機語言?很多計算機語言C底層設計、控制硬件Java信息系統(tǒng)開發(fā)、APP制作Python主要面向數(shù)據(jù)分析計算程序設計語言的種類數(shù)據(jù)運算控制傳輸程序設計語言發(fā)展人工智能編程生成式人工智能編程工具通過交互式問答和功能提示文本等方式讓機器生成相關的代碼程序設計語言種類結(jié)構(gòu)化程序設計語言面向?qū)ο蟪绦蛟O計語言結(jié)構(gòu)化程序設計語言以模塊功能和處理過程設計為主功能模塊是組成程序的基本單元代表語言:C、FORTRAN、PASCAL、BASIC整體結(jié)構(gòu)非常零散,復雜場景下無法有效擴展應對面向?qū)ο蟪绦蛟O計語言核心就是類的設計將具有共同特征的對象歸納成類,組織類之間的等級關系按照類構(gòu)造一個或者多個對象,對象間通過消息傳遞相互通信,來模擬現(xiàn)實世界中不同實體間的聯(lián)系,并通過調(diào)用對象的功能實現(xiàn)交互完成所需的應用邏輯代表語言:C++、C#、Java和Python如何區(qū)別?一個學校學生管理系統(tǒng)中,主要有學生和教師兩個客體學生有學號、姓名、所在班級等屬性,以及上課、考試、做實驗等行為教師有工號、姓名、所在系等屬性,以及教課、指導學生等行為設計方法對比示意圖2.2.2
計算思維美國卡內(nèi)基·梅隆大學計算機科學系周以真教授在2006年提出運用計算機科學的基礎概念進行問題求解、系統(tǒng)設計以及理解人類行為強調(diào)解決問題的形式能有效地被信息處理各個步驟的執(zhí)行來完成意識+能力特點以計算為核心將問題的理解使用數(shù)學方式得以描述形成可以計算的操作邏輯特點人機分工第3章搜索方法問題:AlphaGo是怎么思考下棋的?地圖導航是如何進行的?投資組合如何確保最大收益?3.1.基本概念形成通往目標狀態(tài)動作序列的計算過程得到實現(xiàn)目標的明確動作序列(路徑、解)一個圍棋棋手需要在已知的棋盤狀態(tài)下該如何落子一家制造型企業(yè)需要知道該通過哪些步驟及其如何組織這些步驟來完成產(chǎn)值過千萬的年度生產(chǎn)目標注意的問題考慮最優(yōu)解所有解中路徑代價最小的解在無解時,次優(yōu)解也可以一旦尋找到最優(yōu)解并執(zhí)行可以解決問題也會因為環(huán)境的變化和其他因素的臨時影響為什么叫搜索?可能的動作序列數(shù)量極為龐大,能在這么多可能的動作序列中快速找到這些有限的有效序列,搜索是一種非常形象的命名19目圍棋棋盤共有19×19=361個落子交叉點,每個交叉點都有三種可能的狀態(tài),因此整個棋盤狀態(tài)組合數(shù)就是1.7×10172曾經(jīng)有觀點認為,圍棋具有高度的復雜性和深厚的文化秉性,在這一領域的人工智能不可能戰(zhàn)勝人類應用很廣二十世紀五六十年代就開始應用于軍事領域GPS更為廣泛的棋類游戲復原魔方深藍程序AlphaGo生活應用自動駕駛導航機器人行動規(guī)劃3.2.簡單狀態(tài)下的搜索只需從單一角度來觀察問題,問題往往具有環(huán)境狀態(tài)的完全可觀測性(環(huán)境信息充分)、確定性(環(huán)境不會因為我們的行動而發(fā)生改變)等特點路線導航規(guī)劃不去考慮諸如天氣變化和交通擁堵等未知因素的影響等井字棋(Tic-Tac-Toe)為例后續(xù)井字棋的幾種對弈狀態(tài)樹狀結(jié)構(gòu)準確名稱應該是倒置的樹狀結(jié)構(gòu)表達由多個動作組成的序列組合狀態(tài)常見名稱:最上層的節(jié)點稱之為根節(jié)點下層的節(jié)點稱為子節(jié)點最下層不再有任何下層節(jié)點的節(jié)點稱之為葉節(jié)點從根節(jié)點往下的路徑可能有很多種,但是從葉節(jié)點回溯到根節(jié)點卻只有一條路徑假設這個井字棋變成一個10×10網(wǎng)格,每個棋子能夠移動到8個相鄰方格中的任何一個如果沒有障礙,棋子可以在9步或更少的移動內(nèi)到達100個方格中的任何一個長度為9的路徑的數(shù)量是89,超過了1億條平均有超過100萬條長度為9的冗余路徑會到達同一個單元格如果合理的引導算法運行,比如消除冗余路徑,搜索完成速度至少可以提升約100萬倍3.2.1
無信息搜索除了能夠判斷是否達到目標狀態(tài)外,沒有任何其他輔助信息比如井字棋游戲沒有測度是否已經(jīng)存在2個連續(xù)的棋子方法廣度優(yōu)先搜索深度優(yōu)先搜索廣度優(yōu)先搜索基本方法:先擴展根節(jié)點擴展根節(jié)點的所有子節(jié)點擴展子節(jié)點的子節(jié)點同一層的節(jié)點會比下一層的節(jié)點更先全部遍歷完畢深度優(yōu)先搜索先直接到達搜索樹的最深層如果這里的節(jié)點不存在子節(jié)點,搜索將回退到下一個仍存在子節(jié)點并且尚未遍歷的上層最深節(jié)點比較深度優(yōu)先方法無需記憶同一層中尚未向下遍歷的其他節(jié)點,因此計算存儲開銷較少對于結(jié)合其他策略的啟發(fā)式方法,廣度優(yōu)先方法可以更快確定更有可能成功的范圍加快執(zhí)行效率的策略不同動作序列可能會產(chǎn)生相同的狀態(tài)再次進入這個節(jié)點狀態(tài)時,就無需再次計算下層節(jié)點不同的動作序列可能具有不同的代價采用最小代價的優(yōu)先搜索是一種更為合理的選擇雙向搜索基本思想:bd/2+bd/2>bd3.2.2有信息搜索也稱為啟發(fā)式搜索信息是指關于目標位置的特定線索不斷的判斷當前狀態(tài)和最終目標狀態(tài)的差距有信息要比無信息更好嗎?對于對于隨機產(chǎn)生的1到100的整數(shù)在每輪猜數(shù)過程中增加大小提示,平均猜測只有4次貪心最佳優(yōu)先搜索以距離目的地直線距離作為輔助信息全局意義上也常常不能找到最優(yōu)的結(jié)果以當前點到下一個點的距離作為信息同樣也存在全局未必最優(yōu)的可能A*算法綜合考慮從初始狀態(tài)到當前狀態(tài)的路徑代價相關的計算量仍然很大需要在準確性和快速之間取得一種平衡搜索方法的發(fā)展廣度優(yōu)先搜索方法于二十世紀五十年代末期被提出最早用于解決迷宮等問題深度優(yōu)先搜索方法于二十世紀七十年代被提出最早用于解決圖遍歷問題有信息的啟發(fā)式搜索于二十世紀五十年代末期被提出最早應用于解決九宮格游戲問題九十年代基于經(jīng)典的A*算法提出了D*算法解決火星探測器的尋路問題DARPA自動駕駛挑戰(zhàn)賽3.3.局部搜索無需關注步驟的動作序列,無需記錄歷史全部有效動作路徑只需關注當前狀態(tài)到相鄰狀態(tài)局部信息即可進行下一步動作判斷比如:企業(yè)需要知道是否存在一種生產(chǎn)條件的狀態(tài)組合可以實現(xiàn)預期的收益是否能擺出使八個皇后都不能互相攻擊的狀態(tài)假設無法整體看到山,如何找到最高峰?四皇后問題把四個皇后放在互相不攻擊的四行四列棋局中可以利用互相攻擊的皇后對數(shù)量作為評價距離目標的數(shù)值由于同列皇后一定會互相攻擊,因此假設每次都只在一列中上下移動該列的皇后爬山法也被稱為貪心局部搜索選擇最優(yōu)的鄰居狀態(tài),而不事先考慮再下一步如何走在求解問題時取得快速進展通過觀察移動后互相攻擊的皇后對數(shù)量來決定如何移動棋子爬山法如果存在局部最大值則無法獲得最優(yōu)解模擬退火算法將爬山法和隨機移動結(jié)合起來這里的隨機移動不是最佳移動,也很可能是朝著里目標狀態(tài)越遠的方向適當移動模擬退火名稱的來歷退火是一種通過將金屬或玻璃加熱到高溫再逐漸冷卻的方法,可以使材料成分結(jié)構(gòu)重組達到低能量結(jié)晶態(tài)從而更加堅固加熱會導致材料變得更加脆軟,因此可以理解為背離目標狀態(tài)這種背離卻是為了更好的達到目標狀態(tài)遺傳算法將當前的狀態(tài)看成是已有的基因通過類似于生物進化過程中的基因變異和重組等方式形成下一步動作的步驟執(zhí)行策略結(jié)合四皇后問題的遺傳算法實例在遺傳算法中,早期的狀態(tài)種群往往呈現(xiàn)多樣化隨著多輪選擇后,種群多樣性減少,相應的變化也隨之變小如果存在更易于達到目標狀態(tài)的區(qū)域組合,這種進化中的重組操作將會不斷將其篩選出來諸如“2”和“4”、“1”和“3”等有效鄰接組合關于進化進化論最早是由十九世紀的查爾斯·達爾文提出,認為生物可以進行變異,并沒有解釋生物體特征如何遺傳和改變格雷戈爾·孟德爾使用豌豆進行實驗發(fā)現(xiàn)了現(xiàn)代遺傳學基本規(guī)律中的分離規(guī)律及自由組合規(guī)律詹姆斯·沃森發(fā)現(xiàn)DNA分子結(jié)構(gòu)及AGTC(腺嘌呤、鳥嘌呤、胸腺嘧啶、胞嘧啶)序列,并解釋了這些生物基因遺傳和變異的規(guī)律遺傳算法模擬了生物進化的現(xiàn)象但是實際生物進化的機制遠比遺傳算法要復雜基因突變包括DNA的逆轉(zhuǎn)、復制和大段移動有些生物會從一個生物體中借用DNA再將其自身插入另一個生物體一些基因會在基因組中把自己復制成千上萬次3.3.2其他策略一個隨機生成的八皇后問題,會有86%的概率會被卡住,只能解決14%的問題爬山法求解速度很快,成功找到解時平均步數(shù)為4,被卡住時平均步數(shù)為3如果被卡住,如何繼續(xù)尋找全局最大值?橫向移動允許在當前狀態(tài)左右進行移動反復逐個再次觀察假設是即使這里沒有最高峰但最高峰更有可能在附近的地方需要限制連續(xù)橫向移動的次數(shù)以確保不至于陷入死循環(huán)在隨機八皇后問題中,成功求解的概率可以從14%提高到94%,但是每個成功方法卻需要運行增加到約21步如果被卡住,如何繼續(xù)尋找全局最大值?隨機重啟爬山法從隨機生成的初始狀態(tài)開始,執(zhí)行一系列爬山搜索,一旦搜索達到一個局部最大值,或者執(zhí)行了設定好的搜索次數(shù)后,就再次從隨機生成的初始狀態(tài)重新開始,直到找到全局最大值的目標為止即使有300萬個皇后,這種方法也能在很短的時間內(nèi)找到答案如果被卡住,如何繼續(xù)尋找全局最大值?局部束搜索并行隨機重啟爬山法,即同時運行多個隨機重啟爬山法這些方法彼此通信,互相告知對方的狀態(tài)良好程度,并優(yōu)先繼續(xù)最有可能到達目標狀態(tài)的搜索過程啟發(fā)式函數(shù)為了測度距離目標的遠近,就需要選擇和設計一種測度的標準良好的啟發(fā)式函數(shù)更有助于搜索目標的實現(xiàn)不同的啟發(fā)式函數(shù)選擇存在著計算性能和效果的差異一般使用返回較高數(shù)值的啟發(fā)式函數(shù)效果都會更好九宮格游戲九宮格游戲的啟發(fā)式函數(shù)錯位方塊的數(shù)量所有方塊移動到其目標位置距離的總和移動距離只能是曼哈頓距離不考慮移動過程中其他已有方塊的影響啟發(fā)式函數(shù)計算的困難地圖導航任意兩個地點之間的最優(yōu)距離作為啟發(fā)式函數(shù)但是相關預計算和結(jié)果存儲都非常龐大解決方法:可以選擇數(shù)量有限(10個或20個)地標點只預計算任意地點與這些地標點的最優(yōu)距
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 供貨協(xié)議屬合同
- 零售業(yè)財務評估師全攻略及常見問題解析
- 作業(yè)許可管理員面試題集
- 聯(lián)想集團研發(fā)工程師面試題及答案詳解
- 健康管理師面試題及答案解析
- 城市管理督查專員的面試題及答案解析
- 2025年健身產(chǎn)業(yè)綜合體建設項目可行性研究報告
- 2025年智慧城市數(shù)據(jù)管理系統(tǒng)集成可行性研究報告
- 2025年大健康產(chǎn)業(yè)發(fā)展論壇可行性研究報告
- 2025年農(nóng)作物精準灌溉技術推廣項目可行性研究報告
- 業(yè)主授權租戶安裝充電樁委托書
- 化工建設綜合項目審批作業(yè)流程圖
- 親子鑒定的報告單圖片
- 遼寧軌道交通職業(yè)學院單招《職業(yè)技能測試》參考試題庫(含答案)
- 馬工程《經(jīng)濟法學》教學
- 新概念二單詞表新版,Excel 版
- 2023年陜西西安經(jīng)濟技術開發(fā)區(qū)招聘120人(共500題含答案解析)筆試必備資料歷年高頻考點試題摘選
- 第八講 發(fā)展全過程人民民主PPT習概論2023優(yōu)化版教學課件
- 篇12pmc窗口功能指令舉例講解
- GB/T 7332-2011電子設備用固定電容器第2部分:分規(guī)范金屬化聚乙烯對苯二甲酸酯膜介質(zhì)直流固定電容器
- GB/T 38658-20203.6 kV~40.5 kV交流金屬封閉開關設備和控制設備型式試驗有效性的延伸導則
評論
0/150
提交評論