/** * Calculates Chi^2 * see "Information Retrieval", Manning et al., Eq. 13.19 */ @Override public double getScore(long subsetFreq, long subsetSize, long supersetFreq, long supersetSize) { Frequencies frequencies = computeNxys(subsetFreq, subsetSize, supersetFreq, supersetSize, "ChiSquare"); // here we check if the term appears more often in subset than in background without subset. if (!includeNegatives && frequencies.N11 / frequencies.N_1 < frequencies.N10 / frequencies.N_0) { return Double.NEGATIVE_INFINITY; } return (frequencies.N * Math.pow((frequencies.N11 * frequencies.N00 - frequencies.N01 * frequencies.N10), 2.0) / ((frequencies.N_1) * (frequencies.N1_) * (frequencies.N0_) * (frequencies.N_0))); }
/** * Calculates Chi^2 * see "Information Retrieval", Manning et al., Eq. 13.19 */ @Override public double getScore(long subsetFreq, long subsetSize, long supersetFreq, long supersetSize) { Frequencies frequencies = computeNxys(subsetFreq, subsetSize, supersetFreq, supersetSize, "ChiSquare"); // here we check if the term appears more often in subset than in background without subset. if (!includeNegatives && frequencies.N11 / frequencies.N_1 < frequencies.N10 / frequencies.N_0) { return Double.NEGATIVE_INFINITY; } return (frequencies.N * Math.pow((frequencies.N11 * frequencies.N00 - frequencies.N01 * frequencies.N10), 2.0) / ((frequencies.N_1) * (frequencies.N1_) * (frequencies.N0_) * (frequencies.N_0))); }
/** * Calculates Chi^2 * see "Information Retrieval", Manning et al., Eq. 13.19 */ @Override public double getScore(long subsetFreq, long subsetSize, long supersetFreq, long supersetSize) { Frequencies frequencies = computeNxys(subsetFreq, subsetSize, supersetFreq, supersetSize, "ChiSquare"); // here we check if the term appears more often in subset than in background without subset. if (!includeNegatives && frequencies.N11 / frequencies.N_1 < frequencies.N10 / frequencies.N_0) { return Double.NEGATIVE_INFINITY; } return (frequencies.N * Math.pow((frequencies.N11 * frequencies.N00 - frequencies.N01 * frequencies.N10), 2.0) / ((frequencies.N_1) * (frequencies.N1_) * (frequencies.N0_) * (frequencies.N_0))); }
/** * Calculates Chi^2 * see "Information Retrieval", Manning et al., Eq. 13.19 */ @Override public double getScore(long subsetFreq, long subsetSize, long supersetFreq, long supersetSize) { Frequencies frequencies = computeNxys(subsetFreq, subsetSize, supersetFreq, supersetSize, "ChiSquare"); // here we check if the term appears more often in subset than in background without subset. if (!includeNegatives && frequencies.N11 / frequencies.N_1 < frequencies.N10 / frequencies.N_0) { return Double.NEGATIVE_INFINITY; } return (frequencies.N * Math.pow((frequencies.N11 * frequencies.N00 - frequencies.N01 * frequencies.N10), 2.0) / ((frequencies.N_1) * (frequencies.N1_) * (frequencies.N0_) * (frequencies.N_0))); }
/** * Calculates Chi^2 * see "Information Retrieval", Manning et al., Eq. 13.19 */ @Override public double getScore(long subsetFreq, long subsetSize, long supersetFreq, long supersetSize) { Frequencies frequencies = computeNxys(subsetFreq, subsetSize, supersetFreq, supersetSize, "ChiSquare"); // here we check if the term appears more often in subset than in background without subset. if (!includeNegatives && frequencies.N11 / frequencies.N_1 < frequencies.N10 / frequencies.N_0) { return Double.NEGATIVE_INFINITY; } return (frequencies.N * Math.pow((frequencies.N11 * frequencies.N00 - frequencies.N01 * frequencies.N10), 2.0) / ((frequencies.N_1) * (frequencies.N1_) * (frequencies.N0_) * (frequencies.N_0))); }