999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

迭代中的秩序、混亂和智慧

2019-12-25 01:21:54陳凱
中國信息技術教育 2019年23期

陳凱

許多人工智能的具體實現算法(如卷積神經網、細胞神經網、增強學習等)中,都涉及迭代的方法。迭代是一個重復反饋的過程,即不斷根據系統的輸出結果來調整系統的輸入參數,這樣就可以從一個或若干個估計值或隨機值開始,經過一系列的數據的調整,逐步逼近問題的解。迭代過程中所展現出的復雜性,以及迭代對于解答問題的強大助力,其實可以借助很簡單的例子展現出來。

● 兜圈子的神奇迭代

首先來看一段程序代碼x=

1/(1-x),注意這不是一個數學方程式,其中的等于號作用是賦值,這段代碼的作用是,對于某一個值x,對其進行1/(1-x)的運算,然后將這個值再賦予變量x,不停地反復這樣的動作,觀察其產生的效果(如圖1)。

使用VB,不到一分鐘就能完成這個互動的程序,代碼簡單到只有一行:

Text1.Text=Str(1-1/Val(Text1.Text))

如果不停地點擊“迭代”,那么文本框中的值會在2、0.5和-1這三個數字之間不停地跳動。可以這樣說,迭代進入到了周期模式,周期中有三個不動點。有趣的是,無論文本框中輸入什么值,結果都會進入到有三個不動點的周期模式中去。這個例子是為了讓學習者對迭代過程有一個直觀的體驗。

這里要特別說明一下,雖然很少有人使用VB作為工具來實現機器學習和神經網絡的算法,但在講解某些基礎概念,并且需要快速建立一個演示或交互實驗的小工具的時候,VB具有實現簡易、展示直觀的特點。隨著學習的深入,尤其是需要頻繁用到各種數學工具的時候,還是建議學習者采用Python或Java之類的程序設計語言。

● 迭代兔子的數量天花板

假設有一個島嶼,島嶼上有許多只兔子,兔子不用擔心食物,因為每天都有定量的胡蘿卜生長出來。兔子有著超高的繁殖率,每過一個月,每兩只兔子會生出一只新的兔子。比如說,一開始是10只兔子,到下一個月,會發現多出5只新出生的兔子。但這15只兔子也不是全都可以順利活過這個月,這里有一個折扣率,其比率和食物的相對充分程度有關,如相對兔子數量食物充分,則折扣率更接近百分百,如相對兔子數量食物不足,則折扣就打得比較多,比如說,用公式1-x/50來計算折扣率,其中的數字50,可認為是每天固定可收獲50斤胡蘿卜。

于是,得到下一個月的兔子數量的程序代碼為:

x=x+0.5*x*(1-x/50)

如果初始時x為10,則下一個月的兔子數量是14。

現在將兔子數量的單位設置為萬,假設初始時有0.001萬只兔子,同時,胡蘿卜的數量單位由斤設置為萬斤。然后,將該數按上面的公式進行迭代,并且把每一個月迭代的結果用點陣顯示出來,就可以得到既有意思又很有意義的圖形(如上頁圖2)。

一開始,兔子數量增長還不是特別明顯,然后忽然有了驚人的轉折,數量猛增,直到數量接近50萬只的時候,由于食物數量有限,使得折扣加大,兔子的數量便會到達一個再也無法超越的天花板。可以看到,代表兔子數量的點在連成線后弧度很優美,有點像字母“S”,這樣就體現出在環境受限定的情況下,生物原本呈指數增長的模式是如何被抑制的,這個圖形是生物學家在研究生物增長模式時發現的,被稱為邏輯斯蒂曲線。在學習到神經網絡激活函數的時候,就會發現這個圖形其實與神經元信號傳導有著重要的關系。

筆者想到這樣的情況,即兔子的活動會影響到胡蘿卜的穩定提供,因為兔子的活動會對環境產生破壞,從而影響胡蘿卜的生長,兔子越多,胡蘿卜產量越少。比如說,在兔子只有0.001萬只的時候,胡蘿卜的產出可以達到200/0.001即200000萬斤,實在是多得吃不完。但如果兔子有4萬只,那就只有200/4即50萬斤的胡蘿卜可產出。將剛才的代碼改造如下:

y=x+r*x*(1-x/(200/x))

如果取合適的r值,比如設為1.5,就會產生出有意思的圖形(如圖3),這些圖形貌似有規律,但仔細看,卻并沒有出現真正重復的模式。如果將r值進行微調,比如把1.5改為1.50001,圖像只在初始時比較相似,很快就會有很大的不同,這就呈現出了混沌現象。

● 旁逸斜出的迭代描點器

數學家在研究迭代問題時,發現了一個非常簡化的迭代過程:

x=r*x*(1-x)

這同樣會產生混沌現象。比如說,將r值設置為4,將x的初始值分別設置為0.2和與0.2非常接近的0.2000001,隨著迭代的開始,一開始非常接近的迭代值會在某一時刻忽然“分道揚鑣”,數值差異極大,然而又無法尋找到產生這種差異的原因和規律。這個實驗現象,在許多和復雜性系統有關的文章和書籍中都能見到,其具體的分析,本文就不再贅述了。但筆者將實驗稍微改了一下,將兩個迭代過程的每一步迭代結果分別作為畫布上的點的x坐標和y坐標,這樣就能將混沌效應以二維圖形的形式顯現出來:

迭代過程1:x=r*x*(1-x)

迭代過程2:y=r*y*(1-y)

程序代碼只有9行,并且其中還有好幾行也僅僅是換了變量名而已,其功能理解起來非常容易。初始時,兩個迭代系統的x值都是0.2,r值都是4,由于初始值完全一樣,所以在畫布上,每一次描點時,x坐標和y坐標相等,這樣就描出了一條斜線(如圖4)。

如果初始時r值都取4,第一個x值(將作為畫布的x坐標)取0.2,第二個x值(將作為畫布的y坐標)取0.2000001,則到第17步時,圖像還是一條斜線,但隨后,描出的點就仿佛有了自己的意志,開始旁逸斜出了(如下頁圖5)。

也可以不改變x值,只改變r值,產生出的圖像也同樣很有意思(如下頁圖6)。

有的時候,無論迭代多少次,描的點似乎都沒有規律;有的時候,迭代次數不多,卻能見到顯著的規律;有的時候,一開始好像沒有規律,等迭代足夠多次后,能看出不同位置所描的點疏密情況有一定的規律;而有的時候,也可能一開始仿佛有規律,但越到后面越沒有規律。問題是,并不能從輸入的初始值,預先推算出在足夠多次迭代后將會產生怎樣的圖形。即便是只有9行代碼的簡單程序,由于混沌系統中的蝴蝶效應,其可能產生的圖形模式究竟怎樣,必須親歷整個迭代過程后才可知曉,所以需要花費相當多的時間去探索和發現。

● 迭代中的遺傳和進化

將上面的程序進行一下擴充,就得到了一個具有遺傳進化能力的圖形生成工具(程序實現比較容易,限于篇幅,這里不提供完整的代碼)。可以將r值作為遺傳基因,將生成某種模式的特殊圖像(如6條水平的橫線)作為遺傳進化的目標,迭代若干次后,觀察圖像生成的效果是否接近預期目標,如離預期目標較遠,則大幅度隨機調整獲取其他基因,如離目標比較近,則小幅度隨機調整作為基因的r值,然后再看哪一種效果更為接近預期目標,這個活動甚至可以設計成一個集體合作的比賽項目(如圖7)。

為了找到更恰當的r值以便描出更整齊的橫線,就要基于上一次參數的運行效果,對輸入的初始參數進行調整,然后再開始嘗試新的描點過程,如圖7所示,左、中、右三個圖形,可選擇右圖的r值作為遺傳基因,然后再小幅度隨機調整,生成新的三幅圖,然后反復此過程。在這個例子中可發現,如果要在一個迭代系統中快速達到預期目標,所依靠的工具,也恰恰是迭代本身,這也說明了為什么生物體遺傳進化中的基因迭代策略會被用于人工智能的多種實現方法中。

主站蜘蛛池模板: 在线日韩一区二区| 992tv国产人成在线观看| 久久黄色一级片| 亚洲av无码成人专区| 最新国产午夜精品视频成人| 美女扒开下面流白浆在线试听 | 青青草国产一区二区三区| 国产亚洲精品资源在线26u| 国产欧美在线| 99一级毛片| 青青青国产视频手机| 亚洲精品成人7777在线观看| 中文成人在线| 国产在线91在线电影| 国产欧美性爱网| 日本成人不卡视频| 久久青草视频| 久久99久久无码毛片一区二区| 国产网站一区二区三区| 国产在线观看99| 久久精品国产精品青草app| 青草91视频免费观看| 欧美视频在线观看第一页| 伊人久久久久久久| 国产簧片免费在线播放| 欧美另类精品一区二区三区| 国产中文在线亚洲精品官网| 欧美精品v| 高清视频一区| 亚洲自偷自拍另类小说| 亚洲大尺码专区影院| 精品人妻无码区在线视频| 精品久久综合1区2区3区激情| 国产情侣一区二区三区| 毛片久久久| 四虎永久免费地址| 中文字幕资源站| 四虎永久免费地址| 国产三区二区| 国产美女无遮挡免费视频| 99资源在线| 国产在线观看一区精品| 久久夜夜视频| 中国美女**毛片录像在线| 国产欧美性爱网| 色偷偷综合网| 免费高清a毛片| 久久精品国产精品青草app| 国产亚洲欧美在线视频| 成年人免费国产视频| 国产精品亚洲一区二区三区z | 色综合五月婷婷| 91精品国产无线乱码在线| 91久久国产综合精品女同我| 无码av免费不卡在线观看| 国产免费久久精品99re不卡| 国产精品久久久久久久久久久久| 精品久久久久久成人AV| 8090午夜无码专区| 国产人成乱码视频免费观看 | 久久婷婷色综合老司机| 凹凸精品免费精品视频| 国产99热| 亚洲天堂视频在线观看免费| 国产亚洲精品无码专| 中文字幕在线日本| 亚洲精品自拍区在线观看| 免费大黄网站在线观看| 亚洲视频在线观看免费视频| 人妻出轨无码中文一区二区| 激情综合网激情综合| 麻豆国产精品一二三在线观看| 五月天丁香婷婷综合久久| 亚洲美女一区| 成人免费网站久久久| 人人艹人人爽| 久久精品人人做人人爽| 欧美高清视频一区二区三区| 波多野结衣久久高清免费| 一级毛片在线免费视频| 在线高清亚洲精品二区| 黄色成年视频|