sigmoid.java

来自「数据挖掘。数据仓库」· Java 代码 · 共 49 行

JAVA
49
字号
package org.scut.DataMining.Algorithm.NeuralNetwork.Core.ActivateFunctions;

import org.scut.DataMining.Algorithm.NeuralNetwork.Core.ActivateFunction;


public class Sigmoid extends ActivateFunction 
{

	public Sigmoid() 
	{
		super();
		// TODO Auto-generated constructor stub
	}
	@Override
	public double function(double value)
	{
		// TODO Auto-generated method stub
		if(value < -45)
			return 0;
		if(value > 45)
			return 1;
		return 1.0/(1.0+Math.exp(-value));
	}

	@Override
	public double reverseFunction(double value)
	{
		//TODO Auto-generated method stub
		if ( value < 0.0 || 1.0 - 1.0E-35 < value)
		    value = Double.NaN;
		else
		    value = Math.log( value / (1 - value) );

	    return value; 
	}

	@Override
	public double derivation(double value)
	{
		// TODO Auto-generated method stub
		value = function(value);
	    value = value*(1 - value);

	    return value;
	}
	

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?