⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 parzen.java

📁 aDABOOST This package contains the following files: learner.jar - is a platform independent java
💻 JAVA
字号:
package learner;

public class Parzen implements Classifier {

	Data data;

	double smoothing = 0;

	// ============================================================ Constructor
	Parzen(Data data, double smoothing) {

		this.data = data;
		data.split(0, 1);
		this.smoothing = smoothing;
	}

	// ------------------------------------------------------ Testing functions
	public int classify(double testdata) {
		double kernels1 = 0, kernels2 = 0;
		for (int i = 0; i < data.training.length; i++) {
			if (data.training[i].label == -1)
				kernels1 += 1
						/ (Math.sqrt(2 * Math.PI))
						* Math.exp(-Math.pow((testdata - data.training[i].data)
								/ smoothing, 2) / 2);
			else
				kernels2 += 1
						/ (Math.sqrt(2 * Math.PI))
						* Math.exp(-Math.pow((testdata - data.training[i].data)
								/ smoothing, 2) / 2);
		}
		kernels1 = 1 / (data.c1 * smoothing) * kernels1;
		kernels2 = 1 / (data.c2 * smoothing) * kernels2;
		if (kernels1 / kernels2 < 1)
			return 1;
		else
			return -1;
	}

	public double test(Datastructure[] testdata) {
		int good = 0;
		for (int i = 0; i < testdata.length; i++)
			if (classify(testdata[i].data) == testdata[i].label)
				good++;
		return (good * 100.0) / testdata.length;
	}

	public double[] crossvalidate(int folds) {
		double average = 0;
		double[] results = new double[folds];
		for (int i = 0; i < folds; i++) {
			data.split(i, folds);
			results[i] = test(data.test);
		}
		average = average / folds;
		return results;
	}

	public double findparameter() {
		Datastructure[] temp;
		double average = 0;
		for (int i = 0; i < data.fulldata.length; i++) {
			temp = data.distance(data.fulldata[i].data);
			average += temp[20].data;
		}
		average = average / data.fulldata.length;
		return average;

	}

	public Data getdata() {
		return this.data;
	}
}

⌨️ 快捷键说明

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