![第15章-Python與人工智能_第1頁](http://file4.renrendoc.com/view8/M00/3A/26/wKhkGWco42mAYKoIAACVeFq0-zk800.jpg)
![第15章-Python與人工智能_第2頁](http://file4.renrendoc.com/view8/M00/3A/26/wKhkGWco42mAYKoIAACVeFq0-zk8002.jpg)
![第15章-Python與人工智能_第3頁](http://file4.renrendoc.com/view8/M00/3A/26/wKhkGWco42mAYKoIAACVeFq0-zk8003.jpg)
![第15章-Python與人工智能_第4頁](http://file4.renrendoc.com/view8/M00/3A/26/wKhkGWco42mAYKoIAACVeFq0-zk8004.jpg)
![第15章-Python與人工智能_第5頁](http://file4.renrendoc.com/view8/M00/3A/26/wKhkGWco42mAYKoIAACVeFq0-zk8005.jpg)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第15章Python與人工智能王雷春湖北大學內容15.1概述15.2機器學習15.3深度學習15.1概述15.1.1人工智能簡介15.1.2Python與人工智能15.1.1人工智能簡介1.什么是人工智能1939年,27歲的數(shù)學天才阿蘭·圖靈思考“如何用一臺機器打敗另一臺機器”。1956年,一批年輕的科學家討論人工智能(ArtificialIntelligence,AI)。1997年,IBM“深藍”計算機擊敗了國際象棋冠軍卡斯帕羅夫。2016年和2017年,谷歌研發(fā)的“AlphaGo”戰(zhàn)勝了世界圍棋頂級棋手李世石九段和柯潔九段。
人工智能不再停留在口頭上和實驗室中,而是離人類越來越近,已經進入人類的工作和生活中,與人類深度融合。
人工智能是21世紀三大尖端技術(基因工程、納米科學、人工智能)之一。15.1.1人工智能簡介人工智能的定義:人工智能是研究、開發(fā)用于模擬、延伸和擴展人類智能的理論、方法、技術及應用系統(tǒng)的一門新科學技術。人工智能企圖了解智能的實質,并生產出一種新的能以與人類智能相似的方式做出反應的智能機器。
人工智能領域的研究包括機器人、語言識別、圖像識別、自然語言處理和專家系統(tǒng)等。
人工智能自誕生以來,其理論和技術日益成熟,其應用領域不斷擴大。
人工智能帶來的科技產品將是人類智慧的“容器”。
部分國家對人工智能進行了戰(zhàn)略布局見表15.1(教材P290)。15.1.1人工智能簡介(1)一些世界頂尖公司在人工智能的研究和應用方面投入了巨大的人力、物力:
谷歌擁有2個世界頂尖工智能實驗室,即GoogleX實驗室(深度學習框架TensorFlow在這里誕生)和DeepMind實驗室(AlphaGo是其代表作品)
微軟公司在2014年成立了艾倫人工智能研究院,致力于研究人工智能Facebook發(fā)展了兩個人工智能實驗室(FAIR和AML)
百度在2013年1月、2017年3月分別成立深度學習研究院和深度學習技術及應用國家工程實驗室
阿里巴巴人工智能實驗室于2017年7月5日首次公開亮相
騰訊在2018年3月成立了機器人實驗室。15.1.1人工智能簡介(2)國內外知名大學成立了研究機構或學院進行人工智能研究和教學:
麻省理工學院在1959年就成立了人工智能實驗室,于2018年10月宣布啟用10億美元建設新的人工智能學院
斯坦福大學在1962年成立的人工智能實驗室致力于推動機器人教育
加州大學伯克利分校的機器人和智能機器實驗室致力于用機器人模擬動物的行為
清華大學在1987年成立了智能技術與系統(tǒng)國家重點實驗室
中國科學院大學在2017年5月宣布成立人工智能技術學院
中國科學技術大學建立了兩個人工智能方向的國家工程實驗室。15.1.1人工智能簡介(3)人工智能與科學技術及工業(yè)等相結合已經產生了多方面的應用:
人臉識別(如face++)
購物推薦(如淘寶App)
語音識別(如訊飛輸入法)
圖像識別(如微信小程序)
新聞資訊推薦(如今日頭條)
無人駕駛AlphaGo圍棋
蘋果公司個人助理Siri(能夠幫助客戶發(fā)送短信等)
亞馬遜推出的Alexa(可以幫助用戶在網(wǎng)上搜尋信息)15.1.1人工智能簡介
人工智能、機器學習(MachineLearning,ML)和深度學習(DeepLearning,DL)三者之間的關系見右圖)。
人工智能包含范圍最大,最早被提出;機器學習在20世紀80年代才逐漸被提出和研究;深度學習則在近幾年才被廣泛研究并迅速成為研究熱點。人工智能是研究用計算機模擬人的某些思維過程和智能行為(如學習、推理、思考、規(guī)劃等)的學科。
人工智能涉及計算機科學、心理學、哲學、語言學等幾乎所有自然科學和社會科學,其范圍已遠遠超出了計算機科學的范疇。15.1.2Python與人工智能2.Python與人工智能人工智能的程序開發(fā)語言目前主要有Prolog、LISP、C/C++、Java和Python。Python擁有在人工智能學習和處理過程中所需要的各種庫。(1)數(shù)據(jù)獲取庫,如數(shù)據(jù)獲取庫Requests、Scrapy和數(shù)據(jù)解析庫BeautifulSoup等。(2)數(shù)據(jù)分析、處理庫,如NumPy(數(shù)組和矩陣運算等)庫、Pandas(數(shù)據(jù)分析)庫、SciPy(工程和科學計算)庫和MatPlotlib(數(shù)據(jù)可視化)庫等。(3)人工智能庫,如自然語言處理庫NLTK、機器學習庫Sklearn和深度學習庫TensorFlow、Keras、PyTorch等。
另外,Python的開源、與平臺無關、包裝能力、可組合性、可嵌入性都非常有利于人工智能的學習和研究。15.2機器學習15.2.1Sklearn15.2.2典型案例——使用線性回歸模型訓練、測試和預測數(shù)據(jù)15.2機器學習
機器學習是一門研究機器獲取新知識和新技能,并識別現(xiàn)有知識的科學。
機器學習領域的主要研究對象是人工智能,特別是如何在經驗學習中改善具體算法的性能。
通過機器學習,可以發(fā)現(xiàn)喜歡的新音樂;快速找出想網(wǎng)購的鞋子;通過命令控制手機;讓恒溫器自動調節(jié)溫度;比人類更準確地識別出潦草的手寫郵箱地址;更安全地防止信用卡詐騙;從網(wǎng)頁尋找頭條新聞等。機器學習算法和軟件逐漸成為許多產業(yè)的核心工具。
那么,機器學習是如何進行學習的呢?普遍認為,機器學習的基礎是歸納(Generalize),就是從已知案例數(shù)據(jù)中找出未知的規(guī)律。
機器學習的過程與推理過程是緊密相連的,學習中所用的推理越多,系統(tǒng)的能力就越強。15.2機器學習機器學習通常按學習和模型類型分類。(1)按學習方式分類:
監(jiān)督學習(SupervisedLearning)
無監(jiān)督學習(UnsupervisedLearning)
半監(jiān)督學習(Semi-supervisedLearning)
強化學習(ReinforcementLearning)(2)按模型類型分類:回歸、基于距離方法、正則化方法、樹方法、貝葉斯方法、聚類、神經網(wǎng)絡、深度學習、降維、集成學習、文本挖掘等。15.2機器學習
典型的機器學習算法:決策樹、隨機森林算法、邏輯回歸、支持向量機(SVM)、樸素貝葉斯、K-最近鄰算法、K-均值算法、Adaboost算法、神經網(wǎng)絡算法和馬爾可夫算法等。
機器學習已經有了十分廣泛的應用,如數(shù)據(jù)挖掘、計算機視覺、自然語言處理、生物特征識別、搜索引擎、醫(yī)學診斷、檢測信用卡欺詐、證券市場分析、DNA序列測序、語音和手寫識別、戰(zhàn)略游戲和機器人運用等。15.2.1Sklearn1.簡介Sklearn是Scikit-learn的簡稱,用Python實現(xiàn),它是基于NumPy、SciPy、Matplotlib等的機器學習算法庫。Sklearn的內容豐富,功能強大,包含大量用于機器學習的算法、模塊和數(shù)據(jù)集。(1)實現(xiàn)數(shù)據(jù)預處理、分類、回歸、降維、模型選擇等常用的機器學習算法。(2)特征提取(ExtractingFeatures)、數(shù)據(jù)處理(ProcessingData)和模型評估(EvaluatingModels)等模塊。(3)內置了大量用于訓練、測試和評估模型的數(shù)據(jù)集。15.2.1SklearnSklearn可以不受任何限制,遵從自由的BSD(伯克利軟件發(fā)行版,一種開源協(xié)議)授權。
許多Sklearn算法都可以快速執(zhí)行且可擴展,海量數(shù)據(jù)集除外。Sklearn的穩(wěn)定性很好,大部分代碼都可以通過Python的自動化測試。Sklearn可從站點/project/scikit-learn/#files下載。
本書案例對應下載安裝文件scikit_learn-0.20.3-cp37-cp37m-win_amd64.whl。Sklearn下載和安裝方法參見1.2.5節(jié)。15.2.1Sklearn2.使用Sklearn進行機器學習的主要步驟1)獲取數(shù)據(jù)
獲取數(shù)據(jù)通常三種方法:使用Sklearn現(xiàn)有數(shù)據(jù)集、創(chuàng)建新的數(shù)據(jù)集和獲取真實數(shù)據(jù)集。(1)使用Sklearn現(xiàn)有數(shù)據(jù)集。比較有代表性的數(shù)據(jù)集如下。①鳶尾花數(shù)據(jù)集:通過方法load_iris()調用,常用于分類算法。②波士頓房價數(shù)據(jù)集:通過方法load_boston()調用,常用于回歸算法。③手寫數(shù)字數(shù)據(jù)集:通過方法load_digits()調用,常用于回歸算法。④糖尿病數(shù)據(jù)集:通過方法load_diabetes()調用,常用于回歸算法。15.2.1Sklearn(2)創(chuàng)建新的數(shù)據(jù)集。Sklearn中的樣本生成器(samples_generator)包含大量創(chuàng)建樣本數(shù)據(jù)的方法,其中比較常見的方法如下。①make_blobs():產生多類單標簽數(shù)據(jù)集。②make_classification():產生多類單標簽數(shù)據(jù)集。③make_regression():產生回歸任務的數(shù)據(jù)集。④make_multilabel_classification():產生多類多標簽隨機樣本集。⑤make_gaussian_quantiles():產生分組多維正態(tài)分布的數(shù)據(jù)集。(3)獲取真實數(shù)據(jù)集。一些國內外機構提供了免費的真實數(shù)據(jù)集,這些真實數(shù)據(jù)集可以直接用于模型的學習、測試和評估等。15.2.1Sklearn2)數(shù)據(jù)預處理
數(shù)據(jù)預處理階段是機器學習中不可缺少的一環(huán),它可以使數(shù)據(jù)更加有效地被模型或者評估器識別。(1)數(shù)據(jù)歸一化。(2)正則化。(3)one-hot編碼。3)數(shù)據(jù)集拆分
在訓練數(shù)據(jù)集時,通常會把訓練數(shù)據(jù)集進一步拆分成訓練集和測試集。
訓練集用于建立模型,測試集用于對模型進行驗證。15.2.1Sklearn4)定義模型Sklearn為所有模型提供了非常相似的接口,這樣可以更加快速地熟悉所有模型的用法。Sklearn中常用的模型見表15.2(教材P294)。5)模型評估評估模型的基本思路如下。(1)準備測試樣本。測試樣本的特征應與訓練樣本的特征一致。(2)使用模型對測試樣本進行計算。將計算結果與樣本中的真實值進行比較,評估其準確率。15.2.1Sklearn6)保存模型
訓練好模型后,可以將訓練好的模型保存到本地或者放到網(wǎng)上。
模型可以保存為Pickle文件,或使用Sklearn自帶方法joblib()對模型進行保存。7)應用模型模型保存后,可以在實際中進行使用,如對數(shù)據(jù)分類或預測等。15.2.2典型案例【例15.1】使用Sklearn中的線性回歸模型訓練、測試和預測數(shù)據(jù)。分析:本案例實現(xiàn)方法如下。(1)通過Sklearn中的datasets.make_regression()方法生成指定數(shù)量的回歸數(shù)據(jù)集。(2)將生成的數(shù)據(jù)集拆分為訓練數(shù)據(jù)和測試數(shù)據(jù)。(3)使用訓練數(shù)據(jù)訓練、保存模型。(4)使用測試數(shù)據(jù)評估模型。(5)將生成的模型保存在指定位置。(6)從指定位置讀出模型并預測數(shù)據(jù)。15.2.2典型案例程序代碼:importmatplotlib.pyplotaspltfromsklearn.linear_modelimportLinearRegressionfromsklearn.externalsimportjoblibfromsklearnimportdatasetsfromsklearn.model_selectionimporttrain_test_split15.2.2典型案例x,y=datasets.make_regression(n_samples=200,n_features=1,n_targets=1,noise=6)#生成數(shù)據(jù)點以散點圖顯示.print("1.生成數(shù)據(jù)的散點圖(圖15.2左),訓練數(shù)據(jù)和預測數(shù)據(jù)擬合線(圖15.2右).")plt.scatter(x,y)plt.xticks(fontsize=16)plt.yticks(fontsize=16)plt.xlabel('x軸-x',fontproperties='SimHei',fontsize=18)plt.ylabel('y軸-y',fontproperties='SimHei',fontsize=18)plt.show()15.2.2典型案例#2.拆分數(shù)據(jù)集,70%數(shù)據(jù)用于訓練,30%數(shù)據(jù)用于測試.train_x,test_x,train_y,test_y=train_test_split(x,y,test_size=0.3,random_state=0)#3.訓練模型.LinearModel=LinearRegression()LinearModel.fit(train_x,train_y)fitted_y=LinearModel.predict(train_x)#圖形顯示訓練數(shù)據(jù)和預測數(shù)據(jù).plt.plot(train_x,train_y,'bo')plt.plot(train_x,fitted_y,'r',linewidth=4.0)plt.xlabel('x軸-train_x',fontproperties='SimHei',fontsize=18)plt.ylabel('y軸-train_y/fitted_y',fontproperties='SimHei',fontsize=18)plt.legend(['train_y','fitted_y'],fontsize=16)plt.xticks(fontsize=16)plt.yticks(fontsize=16)plt.show()15.2.2典型案例print("2.模型評估值:%.6f."%LinearModel.score(test_x,test_y))#5.保存模型.joblib.dump(LinearModel,'TrainModel.m')#6.使用模型.LinearModelUse=joblib.load('TrainModel.m')testx=[[1.6]]print("3.%f的預測結果為:%f."%(testx[0][0],LinearModelUse.predict([[1.6]])))15.2.2典型案例運行結果:1.生成數(shù)據(jù)的散點圖(圖15.2左),訓練數(shù)據(jù)和預測數(shù)據(jù)擬合線(圖15.2右).2.模型評估值:0.991244.3.1.600000的預測結果為:112.579482.15.2.2典型案例15.3深度學習15.3.1TensorFlow15.3.2典型案例——識別模糊的手寫數(shù)字圖片15.3.1TensorFlow深度學習的概念源于人工神經網(wǎng)絡的研究,由Hinton等人于2006年提出,通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。
深度學習是機器學習研究中一個新的領域,其動機在于建立、模擬人腦進行分析學習的神經網(wǎng)絡,模仿人腦的機制來解釋數(shù)據(jù),如圖像、聲音和文本等。
同機器學習方法一樣,深度機器學習方法也有監(jiān)督學習與無監(jiān)督學習之分。
不同的學習框架下建立的學習模型有很大不同。
例如,卷積神經網(wǎng)絡(ConvolutionalNeuralNetwork,CNN)是一種深度監(jiān)督學習下的深度學習模型,而深度置信網(wǎng)(DeepBeliefNet,DBN)是一種無監(jiān)督學習下的深度學習模型。15.3.1TensorFlow
在開始深度學習項目之前,選擇一個合適的框架是非常重要的,一個合適的框架能起到事半功倍的作用。
當前最為流行的深度學習框架有TensorFlow、Keras、PyTorch、Caffe等,這些框架都已經開源,主要使用Python,也可以兼容R或其他語言。
深度學習框架在2018年度的綜合得分排名見圖15.3。
從圖15.3中可以看出,TensorFlow排名第一。
在GitHub活躍度、谷歌搜索、Medium文章數(shù)、亞馬遜書籍和arXiv論文這些數(shù)據(jù)源上,TensorFlow所占的比重都是最大的。TensorFlow還擁有最多的開發(fā)者用戶,以及出現(xiàn)在最多的在線職位描述中。圖15.3深度學習框架在2018年度的綜合得分排名15.3.1TensorFlow1.簡介TensorFlow是Google開源的第二代用于數(shù)字計算的軟件庫。TensorFlow可以理解為一個深度學習框架,有完整的數(shù)據(jù)流向和處理機制,封裝了大量高效可用的算法及神經網(wǎng)絡搭建方面的函數(shù),可以在此基礎上進行深度學習的開發(fā)與研究。TensorFlow的靈活架構可以在多種平臺上展開計算,如臺式計算機中的一個或多個CPU/GPU、服務器、移動設備等。
在GoogleBrain團隊支持下,TensorFlow已經是全世界使用人數(shù)最多、社區(qū)最為龐大的一個深度學習框架,它具有Python和C++的接口,其教程非常完善,目前是深度學習框架的首選,且支持Keras。15.3.1TensorFlowTensorFlow是當今深度學習領域中最火的框架之一,具有如下特點。(1)高度的靈活性(2)良好的可移植性(3)多語言支持(4)豐富的算法庫(5)完善的文檔15.3.1TensorFlow2.開發(fā)環(huán)境搭建TensorFlow可從站點/project/tensorflow/#files下載。
本書案例對應安裝文件:tensorflow-1.13.1-cp37-cp37m-win_amd64.whl。TensorFlow的下載和安裝方法參見1.2.5節(jié)。3.工作原理TensorFlow中的計算可以表示為一個有向圖(DirectedGraph)或稱計算圖(ComputationGraph)。
在TensorFlow中,將每個運算操作作為一個節(jié)點(Node),節(jié)點與節(jié)點之間的連接成為邊(Edge),在計算圖的邊中流動(Flow)的數(shù)據(jù)稱為張量(Tensor)。
計算圖中的每個節(jié)點可以有任意多個輸入和任意多個輸出,每個節(jié)點描述了一種運算操作(Operation),節(jié)點可以看作運算操作的實例化(Instance)。
用戶可以使用Python、C++、Java等語言設計計算圖。
TensorFlow計算圖必須在會話(Session)里被啟動。15.3.1TensorFlow4.基本使用【例15.2】兩個矩陣乘法運算。程序代碼:importtensorflowastf #導入TensorFlow.a=tf.constant([[1,2]]) #定義一個1行2列的矩陣a.b=tf.constant([[2],[4]]) #定義一個2行1列的矩陣b.c=tf.matmul(a,b) #矩陣乘法運算.sess=tf.Session() #創(chuàng)建會話.result=sess.run(c) #啟動會話.print("result=",result) #輸出結果.sess.close() #關閉會話.運行結果:result=[[10]]15.3.1TensorFlow【例15.3】兩個變量加法運算。程序代碼:importtensorflowastf#定義變量.a=tf.Variable(3)b=tf.Variable(4)c=tf.add(a,b)#變量初始化.init_op=tf.global_variables_initializer()#創(chuàng)建交互式會話.sess=tf.InteractiveSession()sess.run(init_op)15.3.1TensorFlow#運行并輸出變量.print('c=',sess.run(c))print('c=',sess.run(c)) #輸出結果.sess.close()
#關閉會話.運行結果:c=715.3.1TensorFlow【例15.4】占位符使用示例。程序代碼:importtensorflowastf#占位符.a=tf.placeholder(32)b=tf.placeholder(32)#構建計算圖.c=a*10+b#創(chuàng)建會話.sess=tf.InteractiveSession()#方式一:通過eval()方法給a、b傳值.print("c=",c.eval({a:1,b:2})) #0維張量.print("c=",c.eval({a:[1],b:[2]})) #1維張量.print("c=",c.eval({a:[[1,2],[3,4]],b:[[1,2],[3,4]]})) #2維張量.15.3.1TensorFlow#方式二:通過feed_dict()給a,b傳值.print("c=",sess.run(c,feed_dict={a:1,b:2}))#0維張量.print("c=",sess.run(c,feed_dict={a:[1],b:[2]})) #1維張量.print("c=",sess.run(c,feed_dict={a:[[1,2],[3,4]],b:[[1,2],[3,4]]}))#2維張量.sess.close()#關閉會話.運行結果:c=12c=[12]c=[[1122][3344]]c=12c=[12]c=[[1122][3344]]15.3.2典型案例——識別模糊的手寫數(shù)字圖片MNIST是在機器學習領域中的一個經典問題,是把28像素×28像素的手寫數(shù)字圖像識別為相應的數(shù)字,數(shù)字的范圍從0到9(見圖15.4)。MNIST數(shù)據(jù)集可從站點/exdb/mnist/下載,也可以使用TensorFlow庫中的模塊自動下載和安裝。MNIST數(shù)據(jù)集和解壓、重構后的數(shù)據(jù)集見表15.3和表15.4(教材P300)15.3.2典型案例——識別模糊的手寫數(shù)字圖片【例15.5】使用TensorFlow對MNIST數(shù)據(jù)集中的手寫數(shù)字圖像進行訓練、測試并識別。分析:本案例實現(xiàn)步驟如下。(1)導入MNIST數(shù)據(jù)集。(2)構建模型。(3)訓練模型。(4)測試模型。(5)保存模型。(6)讀取模型。(7)驗證模型。15.3.2典型案例——識別模糊的手寫數(shù)字圖片程序代碼:importtensorflowastfimportmatplotlib.pyplotaspltimporttime#1.下載并安裝MNIST數(shù)據(jù)集.importtensorflow.examples.tutorials.mnist.input_dataasinputdatamnist=inputdata.read_data_sets("MNIST_data/",one_hot=True)15.3.2典型案例——識別模糊的手寫數(shù)字圖片#2.構建模型x=tf.placeholder(tf.float32,[None,784]) #圖像數(shù)據(jù).y_real=tf.placeholder("float",[None,10]) #標簽真實值.#學習參數(shù):參數(shù)矩陣W,偏置b.W=tf.Variable(tf.zeros([784,10]))b=tf.Variable(tf.zeros([10]))y_predict=tf.nn.softmax(tf.matmul(x,W)+b) #標簽預測值.#反向傳播結構.train_cost=-tf.reduce_sum(y_real*tf.log(y_predict)) #損失函數(shù).#優(yōu)化器.optimizer=tf.train.GradientDescentOptimizer(0.01).minimize(train_cost)#設置模型保存路徑.saver=tf.train.Saver()model_path="model/mnist_model.ckpt"train_epochs=2000 batch_size=100 15.3.2典型案例——識別模糊的手寫數(shù)字圖片#創(chuàng)建字典,保存訓練過程中參數(shù)信息.train_info={"epoch":[],"train_cost":[],"train_accuracy":[]}#啟動會話.withtf.Session()assess:sess.run(tf.global_variables_initializer()) #初始化所有變量.#3.訓練模型.start_time=time.time()print("1.訓練模型")forepochinrange(1,train_epochs+1):batch_xs,batch_ys=mnist.train.next_batch(batch_size) #訓練數(shù)據(jù).opt,cost=sess.run([optimizer,train_cost],feed_dict={x:batch_xs,y_real:batch_ys})#計算識別準確率.train_cor_pred=tf.equal(tf.argmax(y_predict,1),tf.argmax(y_real,1))train_accuracy=tf.reduce_mean(tf.cast(train_cor_pred,tf.float32))train_acc=train_accuracy.eval({x:batch_xs,y_real:batch_ys})15.3.2典型案例——識別模糊的手寫數(shù)字圖片
#保存訓練信息.train_info["epoch"].append(epoch)
train_info["train_cost"].append(cost)train_info["train_accuracy"].append(train_acc)end_time=time.time()print("模型訓練時間:%.8f秒."%(end_time-start_time)) #模型訓練時間.#圖形顯示訓練過程中損失和識別準確率變化情況.print("訓練過程中損失(圖15.5左)和識別準確率變化情況(圖15.5右):")plt.figure()plt.plot(train_info["epoch"],train_info["train_cost"],"r")plt.xlabel('x軸-輪數(shù)',fontproperties='SimHei',fontsize=18)plt.ylabel('y軸-損失',fontproperties='SimHei',fontsize=18)15.3.2典型案例——識別模糊的手寫數(shù)字圖片
plt.xticks(fontsize=16)plt.yticks(fontsize=16)plt.legend(['train_cost','line'],fontsize=16)plt.figure()plt.plot(train_info["epoch"],train_info["train_accuracy"],"b")plt.xlabel('x軸-輪數(shù)',fontproperties='SimHei',fontsize=18)plt.ylabel('y軸-識別準確率',fontproperties='SimHei',fontsize=18)plt.xticks(fontsize=16)plt.yticks(fontsize=16)plt.legend(['train_accuracy','line'],fontsize=16)plt.show()15.3.2典型案例——識別模糊的手寫數(shù)字圖片#4.測試模型.print("2.測試模型")test_cor_pred=tf.equal(tf.argmax(y_predict,1),tf.argmax(y_real,1))#計算識別準確率.test_accuracy=tf.reduce_mean(tf.cast(test_c
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 礦產品供貨協(xié)議合同
- 有車輛的離婚協(xié)議書
- 北京商品房認購協(xié)議書
- 農業(yè)種植技術指導書
- 純技術入股合作的協(xié)議書
- 湖南離婚協(xié)議書年
- 三農村土地整治與開發(fā)方案
- 托管班合作協(xié)議書
- 股權融資合同書
- 標準汽車租賃合同協(xié)議
- 第五講鑄牢中華民族共同體意識-2024年形勢與政策
- 中華人民共和國學前教育法
- 2024年貴州公務員考試申論試題(B卷)
- 三年級(下冊)西師版數(shù)學全冊重點知識點
- 期末練習卷(試題)-2024-2025學年四年級上冊數(shù)學滬教版
- 2025年公務員考試申論試題與參考答案
- 抑郁癥課件教學課件
- 關于消防安全評估設備操作說明詳解
- 2009年公務員國考《申論》真題卷及答案(地市、副?。?/a>
- 2025年高考作文專練(25道真題+審題立意+范文)- 2025年高考語文作文備考總復習
- 中國高血壓防治指南(2024年修訂版)要點解讀
評論
0/150
提交評論