第4章 程序設(shè)計(jì)基礎(chǔ)_第1頁
第4章 程序設(shè)計(jì)基礎(chǔ)_第2頁
第4章 程序設(shè)計(jì)基礎(chǔ)_第3頁
第4章 程序設(shè)計(jì)基礎(chǔ)_第4頁
第4章 程序設(shè)計(jì)基礎(chǔ)_第5頁
已閱讀5頁,還剩95頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

程序設(shè)計(jì)基礎(chǔ)“程序設(shè)計(jì)基礎(chǔ)”站:???①你知道寫程序之前要先設(shè)計(jì)“算法”嗎?②你了解“算法”的概念嗎?③從“算法”到“程序”還有多遠(yuǎn)?④你覺得人工智能會(huì)替代人類嗎?⑤你想不想了解一下“全球最強(qiáng)大腦”——“12306”?第4章

程序設(shè)計(jì)基礎(chǔ)2Basis

ofProgramDesign過去的這半年,是重慶有史以來最艱難的半年引例Example如何在摩托車的背簍里面裝入價(jià)值最高多的東西?——背包問題把物資送到多個(gè)滅火點(diǎn)怎么走路徑最短?——旅行商問題設(shè)置核酸檢測點(diǎn)的位置如何選擇,可以使得該檢測點(diǎn)覆蓋區(qū)域內(nèi)的大部分居民更方便到檢測點(diǎn)?——覆蓋算法各個(gè)檢測點(diǎn)的器材損耗表發(fā)給你了,如何最快的完成從大到小的排序,完成器材補(bǔ)給?——快速排序算法引例Example超越珠穆朗瑪峰有一張足夠大的紙,其厚度為0.1毫米,請問,將它對折多少次之后,其厚度將超過珠穆朗瑪峰(珠穆朗瑪峰的高度為8848.68米)?這個(gè)題的算法流程圖怎么畫?代碼如何編寫?引例Example課程教學(xué)目標(biāo)s=0.0001i=0whiles<8848.86:s=s*2i+=1print("折疊",i,"次后超過珠穆朗瑪峰的高度。")s=0.0001i=0S<8848.68s=s*2是否輸出ii=i+1開始結(jié)束目標(biāo)1能夠繪制流程圖目標(biāo)2能夠大致讀懂一些簡單代碼目錄

Contents目錄Contents4.1程序和軟件壹4.2算法概述貳4.3程序設(shè)計(jì)語言叁4.4程序設(shè)計(jì)的方法和步驟肆4.1程序和軟件壹COMPUTERPROGRAMANDSOFTWARE回顧計(jì)算機(jī)工作原理-“存儲(chǔ)程序通用電子計(jì)算機(jī)方案”馮?諾依曼計(jì)算機(jī)硬件系統(tǒng)由五大部件組成計(jì)算機(jī)硬件系統(tǒng)由運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備以及輸出設(shè)備組成。存儲(chǔ)程序通過輸入設(shè)備輸入數(shù)據(jù)和指令到計(jì)算機(jī)中存儲(chǔ)起來,然后CPU從存儲(chǔ)器中取出指令、分析指令、執(zhí)行指令,直到所有指令全部執(zhí)行完,最后通過輸出設(shè)備將結(jié)果顯示出來信息用二進(jìn)制格式存儲(chǔ)和表示中,無論何種信息,都是用“0”和“1”來表示,即二進(jìn)制數(shù)?;顒?dòng)1程序和軟件COMPUTERPROGRAMANDSOFTWARE程序?計(jì)算機(jī)為完成某個(gè)任務(wù)所必須執(zhí)行的一系列指令的集合。軟件?程序=算法+數(shù)據(jù)結(jié)構(gòu)NicklausWirth尼古拉斯·沃斯憑借一句話獲得圖靈獎(jiǎng)的Pascal之父程序設(shè)計(jì)?將求解某個(gè)問題的算法,用計(jì)算機(jī)語言實(shí)現(xiàn)的過程。程序設(shè)計(jì)=計(jì)算機(jī)(編程)語言+算法+數(shù)據(jù)結(jié)構(gòu)。軟件包括一個(gè)在一定規(guī)模和體系結(jié)構(gòu)的計(jì)算機(jī)中執(zhí)行的程序,以及軟件開發(fā)過程中涉及的各種文檔和以各種形式存在的數(shù)據(jù)。軟件=程序+支持模塊+數(shù)據(jù)模塊?;顒?dòng)24.2算法貳ALGORITHM4.2.1算法概述4.2.2算法表示4.2.3流程圖表示算法4.2.4算法應(yīng)用引例Example《未來簡史》尤瓦爾·赫拉利在《未來簡史》中以宏大的視角審視人類未來的終極命運(yùn),表達(dá)出驚人的預(yù)測:“生命本身就是不斷處理數(shù)據(jù)的過程,生物本身就是算法;計(jì)算機(jī)和大數(shù)據(jù),將比我們自己更了解自己。未來,只有1%的人將完成下一次生物進(jìn)化,升級(jí)成新物種,而剩下99%的人將徹底淪為無用階級(jí)!”算法的概念是。。。算法ALGORITHM

4.2.1算法概述活動(dòng)3算法:為解決某一問題對采取的有限的方法或步驟的描述。算法ALGORITHM

4.2.1算法概述活動(dòng)3算法ALGORITHM

Example#1:菜譜Example#2:一首曲子Example#3:看電影Step1:買票Step2:檢票Step3:入場Step4:觀看Step5:離場算法ALGORITHM

Example#4:輸入秒數(shù),轉(zhuǎn)化成對應(yīng)的“小時(shí):分:秒“形式輸出Example#5:求兩個(gè)數(shù)中的最大數(shù)。Example#6:計(jì)算1+2+3+……+100的和輸入總秒數(shù)x計(jì)算小時(shí)h計(jì)算分鐘m計(jì)算秒數(shù)s顯示h:m:s輸入第一個(gè)數(shù)a輸入第二個(gè)數(shù)ba>b?輸出第二個(gè)數(shù)b輸出第一個(gè)數(shù)aYs=0i=1i<=100s=s+ii=i+1Y輸出sNN算法ALGORITHM1、算法的特征一個(gè)算法必然是由一系列操作組成的,比如加、減,比較大小,邏輯判斷,輸入、輸出數(shù)據(jù)等;這一系列的操作必然是按一定的控制結(jié)構(gòu)的規(guī)定來執(zhí)行的,這里的控制結(jié)構(gòu)即為順序、選擇、循環(huán)這三種基本結(jié)構(gòu)。順序結(jié)構(gòu)選擇結(jié)構(gòu)循環(huán)結(jié)構(gòu)活動(dòng)4算法ALGORITHM2、算法的性質(zhì)有窮性確定性大于等于0個(gè)輸入大于等于1個(gè)輸出可執(zhí)行性隨機(jī)幾何圖活動(dòng)54.2算法貳ALGORITHM4.2.1算法概述4.2.2算法表示4.2.3流程圖表示算法4.2.4算法應(yīng)用引例Example《禮記·中庸》《禮記·中庸》書中有一句話:“凡事預(yù)則立,不預(yù)則廢;言前定,則不亂;事前定,則不困;行前定,則不疚;道前定,則不窮?!泵珴蓶|同志在引用這句名言時(shí)說:“凡事預(yù)則立,不預(yù)則廢。沒有事先的計(jì)劃和準(zhǔn)備,就不能獲得戰(zhàn)爭的勝利?!睘槭裁匆O(shè)計(jì)算法?算法ALGORITHM

自然語言描述算法傳統(tǒng)流程圖N-S流程圖偽代碼PAD圖計(jì)算機(jī)語言4.2.2算法表示算法ALGORITHM1、自然語言描述例:求輸入數(shù)的絕對值。Step1:把數(shù)據(jù)輸入到一個(gè)存儲(chǔ)空間中;Step2:判斷存儲(chǔ)空間內(nèi)的值,如果大于等于0,轉(zhuǎn)Step4,否則轉(zhuǎn)Step3;Step3:將存儲(chǔ)空間的內(nèi)容取它的負(fù)數(shù)后,放回到存儲(chǔ)空間內(nèi);Step4:輸出存儲(chǔ)空間的值;Step5:結(jié)束。算法ALGORITHM2、傳統(tǒng)流程圖描述算法SymbolNameFunctionStart/EndAnovalrepresentsastartorendpoint.ArrowsAlineisaconnectorthatshowsrelationshipbetweentherepresentativeshapes.Input/outputProcessArectanglerepresentsainputoroutputorprocess.DecisionAdiamondindicatesadecision.⑴流程圖的符號(hào)算法ALGORITHM⑵流程圖的繪制規(guī)則規(guī)則1:使用標(biāo)準(zhǔn)的流程圖符號(hào)。規(guī)則2:通常情況下,流程圖的邏輯應(yīng)該按照從頁面頂端到頁

面底部、從左到右的順序進(jìn)行流動(dòng)。規(guī)則3:判斷符號(hào)具有兩個(gè)退出點(diǎn),詢問一個(gè)“是”或“不是”的問題。其他流程圖符號(hào)只具有一個(gè)進(jìn)入點(diǎn)和一個(gè)退出點(diǎn)。4.2算法貳ALGORITHM4.2.1算法概述4.2.2算法表示4.2.3流程圖表示算法4.2.4算法應(yīng)用算法ALGORITHM

算法的結(jié)構(gòu)01順序結(jié)構(gòu)是最簡單的,只要按照解決問題的順序?qū)懗鱿鄳?yīng)的語句就行,它的執(zhí)行順序是自上而下,依次執(zhí)行。順序結(jié)構(gòu)02選擇結(jié)構(gòu)通過判斷某些特定條件是否滿足來決定下一步的執(zhí)行流程,是非常重要的控制結(jié)構(gòu)。選擇結(jié)構(gòu)03循環(huán)結(jié)構(gòu)是指在需要反復(fù)執(zhí)行某個(gè)功能而設(shè)置的一種程序結(jié)構(gòu)。它由循環(huán)條件,判斷繼續(xù)執(zhí)行某個(gè)功能還是退出循環(huán)。循環(huán)結(jié)構(gòu)算法ALGORITHM順序結(jié)構(gòu)按照從上向下的順序執(zhí)行多個(gè)語句的處理方法。開始結(jié)束算法ALGORITHM例1:交換兩個(gè)存儲(chǔ)空間的內(nèi)容。假設(shè)存儲(chǔ)空間1的名稱為a,存儲(chǔ)空間2的名稱為b,c為使用到的第三個(gè)存儲(chǔ)空間的名稱。請同學(xué)們繪制后拍照上傳學(xué)習(xí)通。順序結(jié)構(gòu)活動(dòng)6算法ALGORITHM選擇結(jié)構(gòu)根據(jù)給定的條件成立與否,而決定從不同的解決方案中選擇某一個(gè)方案來執(zhí)行。開始結(jié)束算法ALGORITHM例2:

交通監(jiān)控設(shè)備需要根據(jù)車輛的速度判斷車輛是否超速時(shí),如果限制速度為80km/h,當(dāng)車輛速度大于80km/h時(shí),為“超速通過”,否則,為“正常通過”。監(jiān)控結(jié)論判斷的流程圖該如何繪制呢?選擇結(jié)構(gòu)活動(dòng)8算法ALGORITHM

1x>0y(x)=0x=0-1x<0例3:計(jì)算分段函數(shù)。算法ALGORITHM例4:在限速為50公里以下的道路,交通監(jiān)控設(shè)備根據(jù)車輛行駛情況,給出車輛通行信息:①超過10%以內(nèi),不罰款,給予警告;②超過限定時(shí)速10%以上不到20%的,處50元罰款;③超過限定時(shí)速20%以上不到50%的,處100元罰款;④超過限定時(shí)速50%以上不到70%的,處300元罰款;⑤超過70%以上的,處500元罰款。要實(shí)現(xiàn)這個(gè)功能,又該怎么繪制流程圖呢?算法ALGORITHM請大家看看以下流程圖是否正確:活動(dòng)9算法ALGORITHM編寫多分支的條件時(shí),如果只對一個(gè)量進(jìn)行判斷,可通過“數(shù)軸”確保各條件的完整性以及條件之間的互斥性。錯(cuò)誤的劃分正確的劃分①②③④⑤⑥算法ALGORITHM例5:小明的姐姐在假日旅行社工作,旅行社為了爭取更多的游客,給出優(yōu)惠措施:團(tuán)購5人以上(含5人),旅游費(fèi)用8折;如果在淡季出行(3、6、9、11月),旅游費(fèi)用5折;同時(shí)符合上述條件,旅行費(fèi)用享折上折。根據(jù)顧客人數(shù)和出行月份計(jì)算折扣信息的流程圖該如何繪制?活動(dòng)10算法ALGORITHM團(tuán)購5人以上(含5人),旅游費(fèi)用8折;如果在淡季出行(3、6、9、11月),旅游費(fèi)用5折;同時(shí)符合上述條件,旅行費(fèi)用享折上折。ABd=0.5d=0.4算法ALGORITHM循環(huán)結(jié)構(gòu)按照一定條件控制反復(fù)執(zhí)行某段程序或某個(gè)語句的處理方法。開始結(jié)束算法ALGORITHM例6:計(jì)算1+2+3+……+100。1+100=2+99=3+98=…=49+52=50+51(1+100)×100÷2=5050高斯的方法:數(shù)學(xué)家:高斯循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)-三個(gè)要素算法ALGORITHM(1)設(shè)計(jì)循環(huán)體。需要被重復(fù)執(zhí)行的語句放入循環(huán)體中。(2)設(shè)置循環(huán)條件。在這里控制循環(huán)條件的變量我們稱之為循環(huán)變量。(3)初始化。對循環(huán)中要使用的變量賦初值。算法ALGORITHMi=1,s=s+1i=2,s=s+2i=3,s=s+3……i=100,s=s+100計(jì)算機(jī)的求解方法(累加算法):s=0(用于存放累加和),i=1(表示從第一次開始)i<=100s=s+?s=0,i=1i<=100s=s+?是否循環(huán)結(jié)構(gòu)-一個(gè)要求算法ALGORITHM循環(huán)變量必須在循環(huán)過程中發(fā)生變化。s=0,i=1i<=100s+=?是否i+=1循環(huán)結(jié)構(gòu)-一個(gè)關(guān)系算法ALGORITHM找循環(huán)體中變化的量與循環(huán)變量的關(guān)系來確定這個(gè)變化的量。s=0,i=1i<=100s+=?是否i+=1循環(huán)結(jié)構(gòu)-一個(gè)關(guān)系算法ALGORITHM找循環(huán)體中變化的量與循環(huán)變量的關(guān)系來確定這個(gè)變化的量。s=0,i=1i<=100s+=i是否i+=1循環(huán)結(jié)構(gòu)構(gòu)造算法ALGORITHM三個(gè)要素構(gòu)造循環(huán)體;設(shè)置循環(huán)條件;設(shè)置變量初始化。一個(gè)要求

循環(huán)變量的值在循環(huán)過程中必須改變。一個(gè)關(guān)系

循環(huán)中變化的量與循環(huán)變量的關(guān)系。“精研計(jì)算”—素?cái)?shù)問題功能要求:判斷輸入的數(shù)是否為素?cái)?shù)。例如,17、9999999967是不是素?cái)?shù)?分析問題:素?cái)?shù)又稱質(zhì)數(shù),是一個(gè)大于1的自然數(shù),除了1和它自身外,不能被其他自然數(shù)整除。設(shè)計(jì)算法用流程圖描述算法。設(shè)計(jì)上追求獨(dú)具匠心、質(zhì)量上追求精益求精、技藝上追求盡善盡美的“工匠精神”算法ALGORITHM”“精研計(jì)算”-素?cái)?shù)問題算法流程圖繪制開始輸入自然數(shù)m結(jié)束i≤m-1是否i=2i=i+1i是m的因子否是i>m-1是m是素?cái)?shù)否m不是素?cái)?shù)算法一算法ALGORITHM”“精研計(jì)算”-素?cái)?shù)問題算法流程圖繪制開始輸入自然數(shù)m結(jié)束i≤m/2是否i=2i=i+1i是m的因子否是i>m/2是m是素?cái)?shù)否m不是素?cái)?shù)算法二算法ALGORITHM”“精研計(jì)算”-素?cái)?shù)問題算法流程圖繪制開始輸入自然數(shù)m結(jié)束

是否i=2i=i+1i是m的因子否是

是m是素?cái)?shù)否m不是素?cái)?shù)算法三算法ALGORITHM”“精研計(jì)算”-素?cái)?shù)問題不同算法比較算法序號(hào)輸入數(shù)據(jù)循環(huán)次數(shù)算法一171599999999679999999965算法二17799999999674999999983算法三173999999996799999算法ALGORITHM01020304正確性能正確地實(shí)現(xiàn)預(yù)定的功能,滿足具體問題的需要。處理數(shù)據(jù)使用的算法是否得當(dāng),能不能得到預(yù)想的結(jié)果。高效性算法的時(shí)空性是該算法的時(shí)間性能和空間性能。主要是說算法在執(zhí)行過程中的時(shí)間長短和空間占用多少問題。健壯性輸入非法數(shù)據(jù),算法也能適當(dāng)?shù)刈龀龇磻?yīng)后進(jìn)行處理,不會(huì)產(chǎn)生預(yù)料不到的運(yùn)行結(jié)果。?如果算法能夠處理異常數(shù)據(jù),處理能力越強(qiáng),健壯性越好。可讀性易于閱讀、理解和交流,便于調(diào)試、修改和擴(kuò)充。如果通俗易懂,在系統(tǒng)調(diào)試和修改或者功能擴(kuò)充的時(shí)候,使系統(tǒng)維護(hù)更為便捷。算法的評價(jià)算法ALGORITHM活動(dòng)114.2算法貳ALGORITHM4.2.1算法概述4.2.2算法表示4.2.3流程圖表示算法4.2.4算法應(yīng)用算法ALGORITHMAlphaGoAlphaGoMasterAlphaGoZero算法ALGORITHM阿爾法狗到底有多厲害?第一個(gè)戰(zhàn)勝圍棋世界冠軍的人工智能機(jī)器人2017年3月,阿爾法狗VS李世石

4:12018年初,阿爾法狗VS中日韓圍棋高手連勝60局2018年5月,阿爾法狗VS柯潔3:0然后,阿爾法狗宣布“退役”,不再參加圍棋比賽了,人類已無挑戰(zhàn)性,它的征途是星辰和大海。算法ALGORITHM視野拓展——人工智能算法1、搜索算法:搜索算法是利用計(jì)算機(jī)的高性能來有目的的窮舉一個(gè)問題解空間的部分或所有的可能情況,從而求出問題的解的一種方法。

常見搜素算法:枚舉算法、深度優(yōu)先搜索、廣度優(yōu)先搜索、A*算法、回溯算法、蒙特卡洛樹搜索、散列函數(shù)等算法。

優(yōu)化措施:在搜索前,根據(jù)條件降低搜索規(guī)模;根據(jù)問題的約束條件進(jìn)行剪枝;利用搜索過程中的中間解,避免重復(fù)計(jì)算。算法ALGORITHM視野拓展——人工智能算法1、搜索算法:①暴力搜索算法“百錢百雞”問題:百錢百雞是我國古代數(shù)學(xué)家張丘建在《算經(jīng)》一書中提出的數(shù)學(xué)問題:雞翁一值錢五,雞母一值錢三,雞雛三值錢一。百錢買百雞,問雞翁、雞母、雞雛各幾何?翻譯成現(xiàn)代文是:公雞5元一只,母雞3元一只,小雞1元三只,用100塊錢買一百只雞,問公雞、母雞、小雞各有多少只?算法ALGORITHM視野拓展——人工智能算法②二分搜索算法二分搜索算法用來在已經(jīng)有序的數(shù)組中找到關(guān)鍵字的位置。在說明詞義的字典中,詞的排列基本是有序的。電話本上,記錄也都按照人名、地址或是電話號(hào)碼排序。通過這樣的算法,我們可以由人名,很快地在電話本中找到相應(yīng)的電話以及地址。算法ALGORITHM視野拓展——人工智能算法③深度優(yōu)先搜索算法(Depth-First-Search)是一種圖形搜索算法。它沿著樹的深度遍歷樹的節(jié)點(diǎn),盡可能深的搜索樹的分支。當(dāng)節(jié)點(diǎn)v的所有邊都己被探尋過,搜索將回溯到發(fā)現(xiàn)節(jié)點(diǎn)v的那條邊的起始節(jié)點(diǎn)。④廣度優(yōu)先搜索算法(Breadth-First-Search)是一種圖形搜索算法。BFS是從根節(jié)點(diǎn)開始,沿著樹(圖)的寬度遍歷樹(圖)的節(jié)點(diǎn)。如果所有節(jié)點(diǎn)均被訪問,則算法中止。BFS同樣屬于盲目搜索。一般用隊(duì)列數(shù)據(jù)結(jié)構(gòu)來輔助實(shí)現(xiàn)BFS算法。算法ALGORITHM視野拓展——人工智能算法⑤蒙特卡羅樹搜索(MonteCarloTreeSearch,MCTS)(隨機(jī)數(shù)策略)假設(shè)所有落子方法分值都相等,設(shè)為1。兩個(gè)棋手都扔骰子下棋,從361種落子方法中隨機(jī)選擇一個(gè)走法,棋盤狀態(tài)變?yōu)镾1。對方也扔了一個(gè)篩子走了一步,棋盤狀態(tài)變成S2。然后這兩個(gè)棋手一直扔骰子下棋,一路走到Sn,最后肯定也能分出一個(gè)勝負(fù)r,贏了就r記為1,輸了則為0,假設(shè)這第一次r=1。這樣就靠搜素下完了一盤圍棋。算法ALGORITHM視野拓展——人工智能算法2、群智能算法:由簡單個(gè)體組成的群落與環(huán)境以及個(gè)體之間的互動(dòng)行為稱為“群智能”,受動(dòng)物群智能啟發(fā)的算法稱為“群智能算法(swarmintelligence,SI)”。群智能算法包括蟻群算法、粒子群優(yōu)化算法和遺傳算法。算法ALGORITHM視野拓展——人工智能算法蟻群算法工作原理單個(gè)螞蟻的行為比較簡單,但是蟻群整體卻可以體現(xiàn)一些智能的行為。螞蟻會(huì)在其經(jīng)過的路徑上釋放一種可以稱之為“信息素”的物質(zhì),蟻群內(nèi)的螞蟻對“信息素”具有感知能力,它們會(huì)沿著“信息素”濃度較高路徑行走,而每只路過的螞蟻都會(huì)在路上留下“信息素”,這就形成一種類似正反饋的機(jī)制,這樣經(jīng)過一段時(shí)間后,整個(gè)蟻群就會(huì)沿著最短路徑到達(dá)食物源了。蟻群算法就是模擬螞蟻尋找食物的過程,它能夠求出從原點(diǎn)出發(fā),經(jīng)過若干個(gè)給定的需求點(diǎn),最終返回原點(diǎn)的最短路徑。這也就是著名的旅行商問題(TravelingSalemanProblem,TSP)。算法ALGORITHM視野拓展——人工智能算法例:蟻群算法工作原理算法ALGORITHM視野拓展——人工智能算法3、機(jī)器學(xué)習(xí)傍晚校區(qū)路面上沁出微雨后的濕潤,和熙的細(xì)風(fēng)吹來,抬頭看看天邊的晚霞,嗯,明天又是一個(gè)好天氣。走到教育超市的水果攤,挑了個(gè)根蒂蜷縮、敲起來聲音濁響的青綠西瓜,一邊滿心期待著皮薄肉厚瓜甜的爽落感,一邊愉快地回寢室!計(jì)算機(jī)如何幫助人類來實(shí)現(xiàn)預(yù)測?機(jī)器學(xué)習(xí)正是這樣的一門學(xué)科,人的“經(jīng)驗(yàn)”對應(yīng)計(jì)算機(jī)中的“數(shù)據(jù)”,讓計(jì)算機(jī)來學(xué)習(xí)這些經(jīng)驗(yàn)數(shù)據(jù),生成一個(gè)算法模型,在面對新的情況中,計(jì)算機(jī)便能作出有效的判斷,這便是機(jī)器學(xué)習(xí)。算法ALGORITHM視野拓展——人工智能算法3、機(jī)器學(xué)習(xí)算法ALGORITHM視野拓展——人工智能算法3、機(jī)器學(xué)習(xí)監(jiān)督學(xué)習(xí)預(yù)測值為離散值的問題為:分類(classification)。預(yù)測值為連續(xù)值的問題為:回歸(regression)。無監(jiān)督學(xué)習(xí)聚類關(guān)聯(lián)規(guī)則算法ALGORITHM視野拓展——人工智能算法例:決策樹、隨機(jī)森林算法、邏輯回歸、SVM、樸素貝葉斯、K最近鄰算法、K均值算法、Adaboost算法、馬爾可夫……算法ALGORITHM視野拓展——人工智能算法機(jī)器學(xué)習(xí)的應(yīng)用場景算法ALGORITHM視野拓展——人工智能算法3、機(jī)器學(xué)習(xí)參考書籍:1.李航:統(tǒng)計(jì)學(xué)習(xí)方法2.周志華:機(jī)器學(xué)習(xí)……網(wǎng)上學(xué)習(xí):1.吳恩達(dá)機(jī)器學(xué)習(xí)(視頻教程)(1)視頻:/course/introduction.htm?courseId=1004570029(2)筆記:/ml2014/2.李宏毅:機(jī)器學(xué)習(xí)視頻:/video/av10590361?from=search&seid=456509998694502607算法ALGORITHM視野拓展——人工智能算法4、神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)(NeuralNetworksandDeepLearning)深度學(xué)習(xí)的概念源于人工神經(jīng)網(wǎng)絡(luò)的研究。含多隱層的多層感知器就是一種深度學(xué)習(xí)結(jié)構(gòu)。深度學(xué)習(xí)通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。算法ALGORITHM視野拓展——人工智能算法4、神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)(NeuralNetworksandDeepLearning)同機(jī)器學(xué)習(xí)方法一樣,深度機(jī)器學(xué)習(xí)方法也有監(jiān)督學(xué)習(xí)與無監(jiān)督學(xué)習(xí)之分.不同的學(xué)習(xí)框架下建立的學(xué)習(xí)模型很是不同.例如,卷積神經(jīng)網(wǎng)絡(luò)(Convolutionalneuralnetworks,簡稱CNNs)就是一種深度的監(jiān)督學(xué)習(xí)下的機(jī)器學(xué)習(xí)模型,而深度置信網(wǎng)(DeepBeliefNets,簡稱DBNs)就是一種無監(jiān)督學(xué)習(xí)下的機(jī)器學(xué)習(xí)模型。算法ALGORITHM視野拓展——人工智能算法4、神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)(NeuralNetworksandDeepLearning)歷史上,科學(xué)家一直希望模擬人的大腦,造出可以思考的機(jī)器。人為什么能夠思考?科學(xué)家發(fā)現(xiàn),原因在于人體的神經(jīng)網(wǎng)絡(luò)。外部刺激通過神經(jīng)末梢,轉(zhuǎn)化為電信號(hào),轉(zhuǎn)導(dǎo)到神經(jīng)細(xì)胞(又叫神經(jīng)元)。無數(shù)神經(jīng)元構(gòu)成神經(jīng)中樞。神經(jīng)中樞綜合各種信號(hào),做出判斷。人體根據(jù)神經(jīng)中樞的指令,對外部刺激做出反應(yīng)。算法ALGORITHM視野拓展——人工智能算法4、神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)(NeuralNetworksandDeepLearning)上個(gè)世紀(jì)六十年代,提出了最早的“人造神經(jīng)元”模型,叫做“感知器”

。圖中的圓圈就代表一個(gè)感知器。它接受多個(gè)輸入(x1,x2,x3...),產(chǎn)生一個(gè)輸出(output),好比神經(jīng)末梢感受各種外部環(huán)境的變化,最后產(chǎn)生電信號(hào)。你去看動(dòng)漫展覽,天氣:是否晴天?同伴:能否找到人一起去?價(jià)格:門票是否可承受?這就構(gòu)成一個(gè)感知器。這三個(gè)因素就是外部輸入,最后的決定就是感知器的輸出。如果三個(gè)因素都是Yes(使用1表示),輸出就是1(去參觀);如果都是No(使用0表示),輸出就是0(不去參觀)。(你還可以加上權(quán)重和閾值)算法ALGORITHM視野拓展——人工智能算法4、神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)(NeuralNetworksandDeepLearning)車牌自動(dòng)識(shí)別:

車牌照片為輸入,車牌號(hào)碼是輸出,照片的清晰度可以設(shè)置權(quán)重(w)。找到一種或多種圖像比對算法,作為感知器。算法得到的結(jié)果是一個(gè)概率,比如75%的概率可以確定是數(shù)字1。這就需要設(shè)置一個(gè)閾值(b)(比如85%的可信度),低于這個(gè)閾值就無效。一組已經(jīng)識(shí)別好的車牌照片,作為訓(xùn)練集數(shù)據(jù),輸入模型。不斷調(diào)整各種參數(shù),直至找到正確率最高的參數(shù)組合。以后拿到新照片,就可以直接給出結(jié)果了。算法ALGORITHM視野拓展——人工智能算法4、神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)(NeuralNetworksandDeepLearning)

算法ALGORITHM視野拓展——人工智能算法4、神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)(NeuralNetworksandDeepLearning)1.吳恩達(dá):深度學(xué)習(xí)(視頻教程)https:///smartSpec/detail/1001319001.htm2.李宏毅:深度學(xué)習(xí)(1)視頻:/video/av9770302?from=search&seid=456509998694502607(2)李宏毅2017深度學(xué)習(xí)GAN課程/video/av18603573?from=search&seid=456509998694502607(3)李宏毅深度學(xué)習(xí)合輯/video/av19145699?from=search&seid=456509998694502607(4)深度學(xué)習(xí)理論DeepLearningTheory/video/av20961661?from=search&seid=47537723156761731683.博客:/hanbingtao/note/433855算法ALGORITHM視野拓展——人工智能算法人工智能、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的關(guān)系:深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的子類;深度學(xué)習(xí)是基于傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)算法發(fā)展到多隱層的一種算法體現(xiàn);機(jī)器學(xué)習(xí)是人工智能的一個(gè)子類。深度學(xué)習(xí)機(jī)器學(xué)習(xí)人工智能算法ALGORITHM視野拓展——人工智能算法5、專家系統(tǒng)(ExpertSystem)專家系統(tǒng)屬于人工智能的一個(gè)發(fā)展分支,1965年,美國計(jì)算機(jī)科學(xué)家費(fèi)根鮑姆和美國遺傳學(xué)家萊德伯格等人合作,開發(fā)出世界上第一個(gè)專家系統(tǒng)程序DENDRAL,被認(rèn)為是人工智能研究的一個(gè)歷史性突破。費(fèi)根鮑姆將專家系統(tǒng)定義為:一種智能的計(jì)算機(jī)程序,它運(yùn)用知識(shí)和推理來解決只有專家才能解決的復(fù)雜問題。這里的知識(shí)和問題均屬于同一特定領(lǐng)域。簡單的說:專家系統(tǒng)就是能像人類專家一樣解決困難、復(fù)雜的實(shí)際問題的計(jì)算機(jī)(軟件)系統(tǒng)。算法ALGORITHM視野拓展——人工智能算法5、專家系統(tǒng)(ExpertSystem)人類專家與專家系統(tǒng)的主要區(qū)別:算法ALGORITHM視野拓展——人工智能算法5、專家系統(tǒng)(ExpertSystem)專家系統(tǒng)與傳統(tǒng)的計(jì)算機(jī)程序的主要區(qū)別:算法ALGORITHM視野拓展——人工智能算法5、專家系統(tǒng)(ExpertSystem)用于某一特定領(lǐng)域內(nèi)的專家系統(tǒng),可以劃分為以下幾類:1、診斷型專家系統(tǒng):根據(jù)對癥狀的觀察分析,推導(dǎo)出產(chǎn)生癥狀的原因及排除故障方法。2、解釋型專家系統(tǒng):根據(jù)表層信息解釋深層結(jié)構(gòu)或內(nèi)部情況,如地質(zhì)結(jié)構(gòu)分析等。3、預(yù)測型專家系統(tǒng):根據(jù)現(xiàn)狀預(yù)測未來情況,如氣象預(yù)報(bào)、經(jīng)濟(jì)形勢預(yù)測等。4、決策型專家系統(tǒng):對可行方案進(jìn)行綜合評判并優(yōu)選的一類專家系統(tǒng)。5、規(guī)劃型專家系統(tǒng):制定行動(dòng)規(guī)劃,如自動(dòng)程序設(shè)計(jì)、軍事計(jì)劃的制定等。6、數(shù)學(xué)專家系統(tǒng):用于自動(dòng)求解某些數(shù)學(xué)問題的一類專家系統(tǒng)。7、監(jiān)視型專家系統(tǒng):對某類行為進(jìn)行監(jiān)測并在必要時(shí)候進(jìn)行干預(yù),如森林監(jiān)視等。算法ALGORITHM視野拓展——人工智能算法6、自然語言處理(NaturalLanguageProcessing)自然語言處理(NLP)是計(jì)算機(jī)科學(xué),人工智能,語言學(xué)關(guān)注計(jì)算機(jī)和人類(自然)語言之間的相互作用的領(lǐng)域。它研究能實(shí)現(xiàn)人與計(jì)算機(jī)之間用自然語言進(jìn)行有效通信的各種理論和方法。自然語言處理是一門融語言學(xué)、計(jì)算機(jī)科學(xué)、數(shù)學(xué)于一體的科學(xué)。因此,這一領(lǐng)域的研究將涉及自然語言,即人們?nèi)粘J褂玫恼Z言,所以它與語言學(xué)的研究有著密切的聯(lián)系,但又有重要的區(qū)別。算法ALGORITHM視野拓展——人工智能算法6、自然語言處理(NaturalLanguageProcessing)許多不同類的機(jī)器學(xué)習(xí)算法已應(yīng)用于自然語言處理任務(wù)。這些算法的輸入是一大組從輸入數(shù)據(jù)生成的“特征”。一些最早使用的算法,如決策樹,產(chǎn)生硬的if-then規(guī)則類似于手寫的規(guī)則,是再普通的系統(tǒng)體系。然而,越來越多的研究集中于統(tǒng)計(jì)模型,這使得基于附加實(shí)數(shù)值的權(quán)重,每個(gè)輸入要素柔軟,概率的決策。此類模型具有能夠表達(dá)許多不同的可能的答案,而不是只有一個(gè)相對的確定性,產(chǎn)生更可靠的結(jié)果時(shí),這種模型被包括作為較大系統(tǒng)的一個(gè)組成部分的優(yōu)點(diǎn)。算法ALGORITHM視野拓展——人工智能算法6、自然語言處理自然語言處理應(yīng)用:機(jī)器翻譯文本摘要問答系統(tǒng)對話系統(tǒng)語音識(shí)別閱讀理解看圖說話算法ALGORITHM視野拓展——人工智能算法6、自然語言處理學(xué)習(xí)參考書籍:算法ALGORITHM12306挑戰(zhàn)的,是全球最難的“算法”/p/187332076/video/BV1og411c7Ne/第4章課后任務(wù)Assignment12306挑戰(zhàn)的,是全球最難的“算法”一列火車,有很多個(gè)座位,可以到很多站,以北京到廣州的一列火車G67為例,如何實(shí)現(xiàn)合理的搶票策略,才能保證這趟列車能夠坐最多的人?(沒有站票)請同學(xué)們通過資料搜索的方式,了解一下這個(gè)全球最難算法!二進(jìn)制和位運(yùn)算在12306算法中的應(yīng)用算法ALGORITHM有算法之“根”,才能撐起產(chǎn)業(yè)“繁茂”!讓信息賦能,擔(dān)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論