如何评估人工神经网络中的循环连接?

时间:2015-06-16 14:26:39

标签: artificial-intelligence neural-network

我无法理解我应该如何计算包含循环连接的神经网络的输出。

所以这是一个例子(我还不能发布图片..): http://i.imgur.com/XdXupIj.png

(i_1,2是输入值,w_1,2,3,r是连接权重,o_1是输出值。)

为简单起见,我们假设没有激活或传输功能。 如果我正确理解了ANN的工作原理,那么在不考虑红色循环连接的情况下,输出计算为

o_1=(w_1*i_1+w_2*i_2)*w_3

但是,考虑红色连接的情况是什么时候?会不会是

o_1=((w_1*i_1+w_2*i_2)+(w_1*i_1+w_2*i_2)*w_r)*w_3

可能?但那只是我的猜测。

提前致谢。

2 个答案:

答案 0 :(得分:1)

RNN不是通常的网络。通常的网络没有时间,但RNN有时间。数字化信号转到网络的输入端。例如,对于i_1,我们没有一个值,但是信号i_1[t=0], i_1[t=1],i_1[t=2], …红色连接本身有延迟,延迟是一个时间单位。因此,要计算H1的输出,您需要使用以下循环公式:

o[t]=w_1*i_1[t]+w_2*i_2[t])+o[t-1]*w_r

您在此处看到o[t-1]表示延迟一个单位时间。

谈到递归神经网络,您可能会发现许多使用它的例子。最近我们参加了机器学习竞赛并尝试使用RNN进行脑电信号分类,但遇到了一些障碍。以下是详细信息:http://rnd.azoft.com/classification-eeg-signals-brain-computer-interface/

答案 1 :(得分:0)

递归神经网络(RNN)是一类人工神经网络,其中单元之间的连接形成有向循环。与前馈神经网络不同,RNN可以使用其内部存储器来处理任意输入序列。

对我来说,似乎是:

override func viewDidLoad() {
    super.viewDidLoad()

    var swipeRight = UISwipeGestureRecognizer(target: self, action: "respondToSwipeGesture:")
    swipeRight.direction = UISwipeGestureRecognizerDirection.Right
    self.view.addGestureRecognizer(swipeRight)


}

func respondToSwipeGesture(gesture: UIGestureRecognizer) {

    if let swipeGesture = gesture as? UISwipeGestureRecognizer {

        switch swipeGesture.direction {

        case UISwipeGestureRecognizerDirection.Right:

            println("Swiped right")

//change view controllers

    let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)

        let resultViewController = storyBoard.instantiateViewControllerWithIdentifier("StoryboardID") as ViewControllerName

        self.presentViewController(resultViewController, animated:true, completion:nil)    



        default:
            break
        }
    }
}

注意:请注意这是否是作业。