📄 regressionpriortest.java
字号:
package com.aliasi.test.unit.stats;import com.aliasi.stats.LogisticRegression;import com.aliasi.stats.RegressionPrior;import com.aliasi.matrix.DenseVector;import com.aliasi.matrix.SparseFloatVector;import com.aliasi.matrix.Vector;import com.aliasi.test.unit.BaseTestCase;import com.aliasi.util.AbstractExternalizable;import java.io.IOException;public class RegressionPriorTest extends BaseTestCase { public void testSerialization() throws IOException, ClassNotFoundException { double[] priorVariances = new double[] { 1.0, 2.0, 3.0 }; double priorVariance = 1.0; assertSerialization(RegressionPrior.cauchy(priorVariances),3); assertSerialization(RegressionPrior.cauchy(priorVariance,true),-1); assertSerialization(RegressionPrior.cauchy(priorVariance,false),-1); assertSerialization(RegressionPrior.gaussian(priorVariances),3); assertSerialization(RegressionPrior.gaussian(priorVariance,true),-1); assertSerialization(RegressionPrior.gaussian(priorVariance,false),-1); assertSerialization(RegressionPrior.laplace(priorVariances),3); assertSerialization(RegressionPrior.laplace(priorVariance,true),-1); assertSerialization(RegressionPrior.laplace(priorVariance,false),-1); assertSerialization(RegressionPrior.noninformative(),-1); } void assertSerialization(RegressionPrior prior, int dimensionality) throws IOException, ClassNotFoundException { RegressionPrior prior2 = (RegressionPrior) AbstractExternalizable.serializeDeserialize(prior); for (int i = 0; i < dimensionality || dimensionality == -1 && i < 10; ++i) { assertEquals(prior.log2Prior(2.0,i), prior2.log2Prior(2.0,i), 0.00001); assertEquals(prior.log2Prior(-1.0,i), prior2.log2Prior(-1.0,i), 0.00001); assertEquals(prior.gradient(5.0,i), prior2.gradient(5.0,i), 0.00001); assertEquals(prior.gradient(-2.0,i), prior2.gradient(-2.0,i), 0.00001); } if (dimensionality > 0) { try { prior.gradient(2.0,dimensionality+1); fail(); } catch (ArrayIndexOutOfBoundsException e) { succeed(); } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -