You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by to...@apache.org on 2012/01/23 23:31:38 UTC
svn commit: r1235040 - in /labs/yay/trunk/core/src/main/java/org/apache/yay:
ActivationFunction.java SigmoidFunction.java
Author: tommaso
Date: Mon Jan 23 22:31:37 2012
New Revision: 1235040
URL: http://svn.apache.org/viewvc?rev=1235040&view=rev
Log:
introduced SigmoidFunction<Double> (and parametrized ActivationFunction<T>)
Added:
labs/yay/trunk/core/src/main/java/org/apache/yay/SigmoidFunction.java
Modified:
labs/yay/trunk/core/src/main/java/org/apache/yay/ActivationFunction.java
Modified: labs/yay/trunk/core/src/main/java/org/apache/yay/ActivationFunction.java
URL: http://svn.apache.org/viewvc/labs/yay/trunk/core/src/main/java/org/apache/yay/ActivationFunction.java?rev=1235040&r1=1235039&r2=1235040&view=diff
==============================================================================
--- labs/yay/trunk/core/src/main/java/org/apache/yay/ActivationFunction.java (original)
+++ labs/yay/trunk/core/src/main/java/org/apache/yay/ActivationFunction.java Mon Jan 23 22:31:37 2012
@@ -23,8 +23,8 @@ import org.apache.yay.bio.Signal;
/**
* An activation function receives a signal and generates a new signal AF : S -> S
*/
-public interface ActivationFunction {
+public interface ActivationFunction<T> {
- public Signal apply(Signal signal);
+ public Signal<T> apply(Signal<T> signal);
}
Added: labs/yay/trunk/core/src/main/java/org/apache/yay/SigmoidFunction.java
URL: http://svn.apache.org/viewvc/labs/yay/trunk/core/src/main/java/org/apache/yay/SigmoidFunction.java?rev=1235040&view=auto
==============================================================================
--- labs/yay/trunk/core/src/main/java/org/apache/yay/SigmoidFunction.java (added)
+++ labs/yay/trunk/core/src/main/java/org/apache/yay/SigmoidFunction.java Mon Jan 23 22:31:37 2012
@@ -0,0 +1,19 @@
+package org.apache.yay;
+
+import org.apache.yay.bio.Signal;
+
+/**
+ * See <a href="http://en.wikipedia.org/wiki/Sigmoid_function">here</a>.
+ */
+public class SigmoidFunction implements ActivationFunction<Double> {
+
+ public Signal<Double> apply(final Signal<Double> doubleSignal) {
+ return new Signal<Double>() {
+ @Override
+ public Double getValue() {
+ return 1d / (1d + Math.exp(-1 * doubleSignal.getValue()));
+ }
+ };
+ }
+
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org