您現在的位置是:首頁 > 網頁遊戲首頁網頁遊戲
用人工神經網路分析鳶尾屬植物種類
- 2021-09-10
鶯尾花是什麼類別
人工神經網路(ANN)
或通常僅稱為
神經網路(NN)
,是基於人類神經系統建模的一組小型處理單元的網路。
ANN
是一種自適應系統,可以根據流經網路的外部和內部資訊改變其結構以解決問題。由於其自適應性,
ANN通常
也稱為自適應網路。
一般來說,
ANN中
的圖層分為三個部分:
輸入層(
Input
)是其從變數X的所有接收輸入資料
的神經元
在這個層可連線到
神經元的
隱藏層,如果網路不使用隱藏層可以直接到輸出層。
隱藏層(
Hidden
)由從輸入層接收資料的
神經元
組成。
輸出層(
Output
)是從隱藏層從象徵X的luarannya值計算結果到值Y輸出層接收資料。
同時,iris(鳶尾屬植物)在機器學習領域因其分類實驗而廣為人知。鳶尾花有3種品種,即Versicolor,Virginica和Setosa。然後每個物種都有不同的萼片長度,萼片寬度,花瓣長度和花瓣寬度,以
釐米
為單位。
現在在這個實驗中,我們將使用R對鳶尾屬植物上的物種進行分類。
首先啟用nnet包
library(nnet)
如果不熟悉nnet軟體包,那麼可以輸入“help(nnet)”來檢視網路軟體包是否在R中。
2。之後,我們將使用已經在R中可用的鳶尾屬植物資料集。在R中,有兩種型別的資料集切片,即“iris2”和“iris3”,以檢視差異,然後輸入如下,
data(“iris”)irisdata(“iris3”)iris3
顯示如下
iris資料集
iris3資料集
在虹膜資料集中,有5個變數,其中一個是物種變數,而在iris3資料集中,有4個變數是根據物種收集的。因此,因為物種將被分類為虹膜,所以要使用的資料是虹膜3資料。
3。結合iris3的資料、setosa、versicolor和virginica物種的資料。
ir<-rbind(iris3[,,1],iris3[,,2],iris3[,,3])ir
上面的語法是包含iris[,,1], iris[,,2] , iris[,,3]的所有資料。
4。之後製作一個
target
,這個目標是一個將在以後分類的物種。
target<-class。ind(c(rep(“setosa”,50),rep(“versicolor”,50),rep(“virginica”,50)))target
在
target
上,每個分類都有50個數據。
5。接下來,將150個數據分成
資料序列
和
測試資料
。然後使用以下語法將資料劃分為資料序列。
samp<-c(sample(1:50,25),sample(51:100,25),sample(101:150,25))
樣本(1:50,25)
表示從第1個數據到第50個數據,將獲取25個數據用於資料
訓練
,
樣本(51:100,25)
意味著從第51個數據到第100個數據將採取25個數據對於資料訓練,
樣本(101:150。25),這
意味著從第101個數據到第150個數據將採取25個數據進行資料訓練。
然後呼叫
samp
,然後顯示如下。
iris。train<-ir[samp,]iris。trainiris。test<-ir[-samp,]iris。test
所以我們得到了75個數據的資料序列。同時,75個數據的剩餘(
[-samp]
)將用作測試資料。
6。接下來,為iris中的物種分類過程製作一個數據。
ir1<-nnet(ir[samp,],targets[samp,],size = 2, rang = 0。1, decay = 5e-4,maxit = 600) ir1
在
ir1中
,
size
是
隱藏層
的數量,
rang
是從-0。1到+0。1 的
隨機初始權重
,
decay
是
權重衰減
的
引數
,
maxit
是最大迭代。
然後輸出如下。
從
ir1,
它解釋了4種輸入,即Sepal Lenght,Sepal Width,Petal Lenght和Petal Width。然後根據大小的內容有2個隱藏層,並且還將產生3個輸出用於分類由setosa,versicolor和virginica的物種組成。
要檢視nnet圖,可以使用以下語法。
plot。nnet(ir1)
因此,來自Nnet的外觀如下所示。
7。接下來看看準確度是多少。
test。cl<- function(true,pred) {true<-max。col(true)pred<-max。col(pred)table(true,pred)}test。cl(targets[samp,],predict(ir1,ir[-samp,]))
所以它看起來如下。
從上面的輸出中,獲得了96%的準確率,據說這個精度水平非常好,因此它可以用於對鳶尾屬植物進行分類。
8。輸入新的花卉資料,以檢視進入物種setosa或versicolor或virginica的新花。新花的萼片長度= 6。0,萼片寬度= 2。7,花瓣長度= 4。9,花瓣寬度= 2。8。
bungabaru<-c(6,2。7,4。9,2。8)bungabarupredict(ir1,bungabaru)round(predict(ir1,bungabaru))
然後輸出如下。
事實證明,新花是鳶尾屬植物。
希望這裡對你有用