亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? classbackprop.cls

?? FaceRec 簡單易懂的神經網絡面部特征識別例子 [VB源碼]
?? CLS
?? 第 1 頁 / 共 2 頁
字號:
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "ClassBackprop"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Option Explicit

Public NoOfInputs As Integer
Public NoOfHiddens As Integer
Public noofStates As Integer
Public NoOfOutputs As Integer

Dim inputs() As ClassBackPropNeuron
Dim hiddens() As ClassBackPropNeuron
Dim states() As ClassBackPropNeuron
Dim outputs() As ClassBackPropNeuron

'the total backprop error
Public BPerrorTotal As Single

'the actual error
Public BPerror As Single

Public learningRate As Single
Public randomness As Single

Dim initialised As Integer
Public ClassificationConfidence As Single


Public Sub init(No_Of_Inputs As Integer, no_of_hiddens As Integer, No_Of_Outputs As Integer, Optional no_of_states As Variant)
  On Error GoTo init_err
  
  Dim i As Integer
  Dim j As Integer
  Dim n As ClassBackPropNeuron
  
  If (initialised = 1) Then
    Call FreeMem
  End If
  
  NoOfInputs = No_Of_Inputs
  ReDim inputs(NoOfInputs)
  
  NoOfHiddens = no_of_hiddens
  ReDim hiddens(NoOfHiddens)
  
  NoOfOutputs = No_Of_Outputs
  ReDim outputs(NoOfOutputs)
  
  If (Not IsMissing(no_of_states)) Then
    noofStates = no_of_states
    ReDim states(noofStates)
    Else
    noofStates = 0
  End If
  
  For i = 0 To NoOfInputs - 1
    Set inputs(i) = New ClassBackPropNeuron
    Call inputs(i).init(i, 0, 0)
  Next
    
  For i = 0 To NoOfHiddens - 1
    Set hiddens(i) = New ClassBackPropNeuron
    Call hiddens(i).init(i, 1, NoOfInputs + noofStates)
    For j = 0 To NoOfInputs - 1
      Call hiddens(i).addConnection(j, inputs(j))
    Next
  Next
      
  For i = 0 To noofStates - 1
    Set states(i) = New ClassBackPropNeuron
    Call states(i).init(i, 2, NoOfHiddens)
    For j = 0 To NoOfHiddens - 1
      Call states(i).addConnection(j, inputs(j))
      Call hiddens(j).addConnection(NoOfInputs + i, states(i))
    Next
  Next
  
  For i = 0 To NoOfOutputs - 1
    Set outputs(i) = New ClassBackPropNeuron
    Call outputs(i).init(i, 3, NoOfHiddens)
    For j = 0 To NoOfHiddens - 1
      Call outputs(i).addConnection(j, hiddens(j))
    Next
  Next
  
  Call initWeights
  
  initialised = 1

init_exit:
  Exit Sub
init_err:
  MsgBox "classBackprop/init/" & Error$(Err)
  Resume init_exit
End Sub


Public Sub FreeMem()
'deallocates memory

  Dim i As Integer

  For i = 0 To NoOfInputs - 1
    Set inputs(i) = Nothing
  Next
    
  For i = 0 To NoOfHiddens - 1
    Set hiddens(i) = Nothing
  Next
      
  For i = 0 To noofStates - 1
    Set states(i) = Nothing
  Next
  
  For i = 0 To NoOfOutputs - 1
    Set outputs(i) = Nothing
  Next

End Sub


Public Sub initWeights(Optional minVal As Variant, Optional maxVal As Variant)
'randomly initialises the weights within the given range
  On Error GoTo initWeights_err
  
  Dim min As Single
  Dim max As Single
  Dim i As Integer
  Dim n As ClassBackPropNeuron
  
  Randomize
  
  min = -0.9
  max = 0.9
  randomness = 0.1
  
  If (Not IsMissing(minVal)) Then
    min = minVal
  End If
  
  If (Not IsMissing(maxVal)) Then
    max = maxVal
  End If
  
  For i = 0 To NoOfInputs - 1
    Set n = inputs(i)
    Call n.initWeights(min, max)
  Next
  
  For i = 0 To NoOfHiddens - 1
    Set n = hiddens(i)
    Call n.initWeights(min, max)
  Next
  
  For i = 0 To noofStates - 1
    Set n = states(i)
    Call n.initWeights(min, max)
  Next
  
  For i = 0 To NoOfOutputs - 1
    Set n = outputs(i)
    Call n.initWeights(min, max)
  Next

initWeights_err:
  Exit Sub
initWeights_exit:
  MsgBox "classBackprop/initWeights/" & Error$(Err)
  Resume initWeights_exit
End Sub


Public Sub feedForward()
  On Error GoTo feedForward_err
  
  Dim i As Integer
  Dim n As ClassBackPropNeuron

  For i = 0 To NoOfHiddens - 1
    Set n = hiddens(i)
    Call n.feedForward(randomness)
  Next

  For i = 0 To noofStates - 1
    Set n = states(i)
    Call n.feedForward(randomness)
  Next

  For i = 0 To NoOfOutputs - 1
    Set n = outputs(i)
    Call n.feedForward(randomness)
  Next

feedForward_exit:
  Exit Sub
feedForward_err:
  MsgBox "classBackprop/feedForward/" & Error$(Err)
  Resume feedForward_exit
End Sub


Public Sub Backprop()
  On Error GoTo backprop_err
  
  Dim i As Integer
  Dim n As ClassBackPropNeuron
  
  'clear all previous backprop errors
  For i = 0 To NoOfInputs - 1
    Set n = inputs(i)
    n.BPerror = 0
  Next
  
  For i = 0 To NoOfHiddens - 1
    Set n = hiddens(i)
    n.BPerror = 0
  Next
  
  For i = 0 To noofStates - 1
    Set n = states(i)
    n.BPerror = 0
  Next
  
  'now back-propogate the error from the output units
  BPerrorTotal = 0
  For i = 0 To NoOfOutputs - 1
    Set n = outputs(i)
    Call n.Backprop
    BPerrorTotal = BPerrorTotal + n.BPerror
  Next
  BPerror = BPerrorTotal / NoOfOutputs
  
  For i = 0 To NoOfHiddens - 1
    Set n = hiddens(i)
    Call n.Backprop
    BPerrorTotal = BPerrorTotal + n.BPerror
  Next
  
  For i = 0 To noofStates - 1
    Set n = states(i)
    Call n.Backprop
    BPerrorTotal = BPerrorTotal + n.BPerror
  Next
  
  BPerrorTotal = BPerrorTotal / (NoOfOutputs + NoOfHiddens + noofStates)
  
backprop_exit:
  Exit Sub
backprop_err:
  MsgBox "classBackprop/backprop/" & Error$(Err)
  Resume backprop_exit
End Sub


Public Sub learn()
  On Error GoTo learn_err
  
  Dim i As Integer
  Dim n As ClassBackPropNeuron

  For i = 0 To NoOfHiddens - 1
    Set n = hiddens(i)
    Call n.learn(learningRate)
  Next

  For i = 0 To noofStates - 1
    Set n = states(i)
    Call n.learn(learningRate)
  Next

  For i = 0 To NoOfOutputs - 1
    Set n = outputs(i)
    Call n.learn(learningRate)
  Next

learn_exit:
  Exit Sub
learn_err:
  MsgBox "classBackprop/learn/" & Error$(Err)
  Resume learn_exit
End Sub


Public Sub setInput(Index As Integer, value As Single)
  On Error GoTo setInput_err
  
  Dim n As ClassBackPropNeuron
  
  Set n = inputs(Index)
  n.value = value
  
setInput_exit:
  Exit Sub
setInput_err:
  MsgBox "classBackprop/setInput/" & Error$(Err)
  Resume setInput_exit
End Sub


Public Sub setOutput(Index As Integer, value As Single)
  On Error GoTo setOutput_err
  
  Dim n As ClassBackPropNeuron
  
  Set n = outputs(Index)
  n.desiredValue = value
  
setOutput_exit:
  Exit Sub
setOutput_err:
  MsgBox "classBackprop/setOutput/" & Error$(Err)
  Resume setOutput_exit
End Sub


Public Function getOutput(Index As Integer) As Single
  On Error GoTo getOutput_err
  
  Dim n As ClassBackPropNeuron
  
  Set n = outputs(Index)
  getOutput = n.value
  
getOutput_exit:
  Exit Function
getOutput_err:
  MsgBox "classBackprop/getOutput/" & Error$(Err)
  Resume getOutput_exit
End Function


Public Sub loadTrainingInstance(instance As Object)
'loads a training instance
  On Error GoTo loadTrainingInstance_err
  
  Dim i As Integer

  For i = 0 To instance.NoOfInputs - 1
    inputs(i).value = instance.getInput(i)
  Next

  For i = 0 To instance.NoOfOutputs - 1
    outputs(i).desiredValue = instance.getOutput(i)
  Next

loadTrainingInstance_exit:
  Exit Sub
loadTrainingInstance_err:
  MsgBox "classBackprop/loadTrainingInstance/" & Error$(Err)
  Resume loadTrainingInstance_exit
End Sub


Public Sub setImage(nnImage As classImageProcessing, Optional topX As Variant, Optional topY As Variant, Optional width As Variant, Optional height As Variant, Optional border As Variant)
'loads in image into the inputs array
  On Error GoTo setImage_err
  
  Dim x As Integer
  Dim y As Integer
  Dim i As Integer
  Dim tx As Integer
  Dim ty As Integer
  Dim w As Integer
  Dim h As Integer
  Dim borderWidth As Integer
  Dim x_translation As Integer
  Dim y_translation As Integer
  Dim mx As Integer
  Dim my As Integer
  
  If (IsMissing(border)) Then
    borderWidth = 0
    x_translation = 0
    y_translation = 0
    Else
    borderWidth = border
    'randomly translate the image
    x_translation = CInt(Rnd * borderWidth * 2)
    y_translation = CInt(Rnd * borderWidth * 2)
  End If
  
  If (IsMissing(topX)) Then
    tx = 0
    ty = 0
    w = nnImage.width + (borderWidth * 2)
    h = nnImage.height + (borderWidth * 2)
    mx = nnImage.width + x_translation
    my = nnImage.height + y_translation
    Else
    tx = topX
    ty = topY
    w = width + (borderWidth * 2)
    h = height + (borderWidth * 2)
    mx = width + x_translation
    my = height + y_translation
  End If
  
  i = 0
  For x = 0 To w - 1
    For y = 0 To h - 1
      If (x >= x_translation) And (x < mx) Then
        If (y >= y_translation) And (y < my) Then
          inputs(i).value = nnImage.getPoint(tx + x - x_translation, ty + y - y_translation) / 255
          Else
          inputs(i).value = Rnd
        End If
        Else
        inputs(i).value = Rnd
      End If
      i = i + 1
    Next
  Next

setImage_exit:
  Exit Sub
setImage_err:
  MsgBox "classBackprop/setImage/" & Error$(Err)
  Resume setImage_exit
End Sub




Public Sub getImage(img As Object)
'creates an image from the inputs array
  On Error GoTo getImage_err
  
  Dim x As Integer
  Dim y As Integer
  Dim i As Integer
  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
www.亚洲国产| 日本福利一区二区| 日韩成人伦理电影在线观看| 中文字幕一区二区三区乱码在线| 久久久久久夜精品精品免费| 久久女同性恋中文字幕| 国产午夜精品一区二区三区嫩草| 精品日韩在线一区| 国产午夜一区二区三区| 久久综合久久久久88| 精品国产露脸精彩对白| 欧美精品一区二| 国产日产精品一区| 亚洲国产精品av| 亚洲欧美日韩国产手机在线| 一区二区三区四区亚洲| 亚洲卡通动漫在线| 午夜久久电影网| 九九精品一区二区| 国产一区二区三区四区五区入口 | 一区二区三区四区亚洲| 亚洲国产美女搞黄色| 日韩中文字幕91| 国产精品白丝av| 91成人在线精品| 宅男在线国产精品| 26uuu亚洲婷婷狠狠天堂| 国产网红主播福利一区二区| 亚洲免费伊人电影| 日韩极品在线观看| 成人午夜免费视频| 欧美美女直播网站| 久久中文字幕电影| 一区二区成人在线| 激情六月婷婷久久| 99视频在线观看一区三区| 欧美性受极品xxxx喷水| 久久夜色精品一区| 一区二区三区加勒比av| 国产美女在线观看一区| 日本韩国视频一区二区| 久久中文娱乐网| 午夜精品久久久久久久| 成人免费高清在线| 在线不卡中文字幕| 国产精品久久影院| 免费av成人在线| 色婷婷国产精品综合在线观看| 日韩一区二区三区电影| 亚洲欧美怡红院| 国产精品一区二区男女羞羞无遮挡| 色综合天天天天做夜夜夜夜做| 日韩三级精品电影久久久| 日韩美女视频一区二区| 国产精品99久久久久| 欧美伊人久久久久久久久影院| 久久在线免费观看| 日韩不卡在线观看日韩不卡视频| 99国产精品久久久| 国产午夜三级一区二区三| 青青国产91久久久久久| 欧美视频一区二区在线观看| 日韩美女视频一区二区 | 日本一区二区动态图| 日韩精品亚洲一区二区三区免费| 91亚洲资源网| 中文字幕一区二区三区av| 国产精品一区三区| 欧美一区国产二区| 五月婷婷另类国产| 欧美色老头old∨ideo| 亚洲欧美欧美一区二区三区| 成人激情文学综合网| 欧美经典一区二区| 国产成人啪午夜精品网站男同| 欧美xxxx在线观看| 蜜桃视频第一区免费观看| 欧美电影在线免费观看| 视频一区视频二区中文字幕| 精品视频一区三区九区| 亚洲综合色自拍一区| 97精品国产露脸对白| 中文字幕字幕中文在线中不卡视频| 粉嫩久久99精品久久久久久夜| 久久久久一区二区三区四区| 国产成人自拍在线| 久久精品一级爱片| av激情综合网| 亚洲日本欧美天堂| 欧美日韩国产天堂| 蜜臀va亚洲va欧美va天堂| 日韩美女一区二区三区四区| 麻豆91在线观看| 久久久久久亚洲综合影院红桃| 国产一区不卡在线| 国产精品久久久久久久午夜片| av不卡在线观看| 亚洲国产成人av| 日韩欧美亚洲国产另类| 国产成人免费在线| 亚洲人成精品久久久久久| 欧美色网一区二区| 蜜桃av噜噜一区二区三区小说| 精品日韩欧美一区二区| 国产超碰在线一区| 一区二区三区在线观看欧美| 欧美一级欧美三级在线观看| 国产电影精品久久禁18| 亚洲欧美日韩国产综合| 日韩三级视频中文字幕| 成人免费视频网站在线观看| 国产精品久久久久桃色tv| 欧美日韩中文字幕一区二区| 麻豆精品久久精品色综合| 国产精品对白交换视频| 欧美性受xxxx黑人xyx性爽| 国内外成人在线| 一区二区三区中文在线观看| 日韩精品在线一区二区| 91日韩一区二区三区| 美国毛片一区二区三区| 亚洲男人电影天堂| 久久综合成人精品亚洲另类欧美| 色噜噜狠狠色综合中国| 精一区二区三区| 亚洲3atv精品一区二区三区| 欧美国产精品一区| 日韩欧美一二区| 欧美日韩一区二区三区不卡 | 国产精品日韩成人| 欧美一级一级性生活免费录像| 成人av电影在线观看| 捆绑调教美女网站视频一区| 亚洲欧美日韩小说| 国产精品蜜臀av| 日韩欧美一区二区免费| 欧美午夜精品一区| eeuss鲁片一区二区三区在线看| 五月婷婷久久丁香| 亚洲精品成人在线| 亚洲国产高清aⅴ视频| 日韩精品一区二区三区视频播放 | 亚洲一区欧美一区| ㊣最新国产の精品bt伙计久久| 久久久一区二区三区捆绑**| 日韩一卡二卡三卡四卡| 欧美精品黑人性xxxx| 欧美亚洲国产一区在线观看网站| 成人91在线观看| 成人av在线观| 成人av在线电影| 91一区二区在线| 91久久香蕉国产日韩欧美9色| 91麻豆免费在线观看| 99视频在线观看一区三区| 972aa.com艺术欧美| 91小视频在线免费看| 一本色道a无线码一区v| 在线免费观看一区| 欧美色偷偷大香| 欧美精品色综合| 欧美成人激情免费网| 久久综合色鬼综合色| 欧美经典一区二区三区| 中文字幕日韩av资源站| 亚洲美女免费在线| 亚洲电影第三页| 日韩国产在线一| 激情综合色综合久久综合| 国产美女一区二区| av毛片久久久久**hd| 欧美午夜在线观看| 欧美一区二区三区不卡| 久久一二三国产| 亚洲欧美日韩国产综合在线| 天使萌一区二区三区免费观看| 日韩电影一二三区| 国产精品一区专区| 色婷婷综合久色| 在线不卡免费av| 国产午夜精品久久久久久免费视| 中文字幕va一区二区三区| 一区二区成人在线观看| 麻豆精品新av中文字幕| 波多野结衣的一区二区三区| 色94色欧美sute亚洲13| 欧美一级二级在线观看| 中文幕一区二区三区久久蜜桃| 亚洲精品国产高清久久伦理二区| 亚洲国产婷婷综合在线精品| 久久se精品一区二区| 91麻豆精品视频| 欧美不卡123| 亚洲一区二区影院| 国产乱码精品一区二区三区五月婷| 97se亚洲国产综合自在线观| 91精品国产91热久久久做人人| 中文字幕欧美日本乱码一线二线 | www精品美女久久久tv| 亚洲毛片av在线|