Loading java/src/com/android/inputmethod/latin/UserHistoryForgettingCurveUtils.java +5 −5 Original line number Diff line number Diff line Loading @@ -199,20 +199,20 @@ public class UserHistoryForgettingCurveUtils { public static final int[][] SCORE_TABLE = new int[FC_LEVEL_MAX][ELAPSED_TIME_MAX + 1]; static { for (int i = 0; i < FC_LEVEL_MAX; ++i) { final double initialFreq; final float initialFreq; if (i >= 2) { initialFreq = FC_FREQ_MAX; } else if (i == 1) { initialFreq = (double)FC_FREQ_MAX / 2; initialFreq = FC_FREQ_MAX / 2; } else if (i == 0) { initialFreq = (double)FC_FREQ_MAX / 4; initialFreq = FC_FREQ_MAX / 4; } else { continue; } for (int j = 0; j < ELAPSED_TIME_MAX; ++j) { final double elapsedHour = j * ELAPSED_TIME_INTERVAL_HOURS; final float elapsedHours = j * ELAPSED_TIME_INTERVAL_HOURS; final double freq = initialFreq * Math.pow(initialFreq, elapsedHour / HALF_LIFE_HOURS); initialFreq * Math.pow(initialFreq, elapsedHours / HALF_LIFE_HOURS); final int intFreq = Math.min(FC_FREQ_MAX, Math.max(0, (int)freq)); SCORE_TABLE[i][j] = intFreq; } Loading java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java +3 −3 Original line number Diff line number Diff line Loading @@ -787,9 +787,9 @@ public class BinaryDictInputOutput { // (discretizedFrequency + 0.5) times this value to get the median value of the step, // which is the best approximation. This is how we get the most precise result with // only four bits. final double stepSize = (MAX_TERMINAL_FREQUENCY - unigramFrequency) / (1.5 + MAX_BIGRAM_FREQUENCY); final double firstStepStart = 1 + unigramFrequency + (stepSize / 2.0); final float stepSize = (MAX_TERMINAL_FREQUENCY - unigramFrequency) / (1.5f + MAX_BIGRAM_FREQUENCY); final float firstStepStart = 1 + unigramFrequency + (stepSize / 2.0f); final int discretizedFrequency = (int)((bigramFrequency - firstStepStart) / stepSize); // If the bigram freq is less than half-a-step higher than the unigram freq, we get -1 // here. The best approximation would be the unigram freq itself, so we should not Loading Loading
java/src/com/android/inputmethod/latin/UserHistoryForgettingCurveUtils.java +5 −5 Original line number Diff line number Diff line Loading @@ -199,20 +199,20 @@ public class UserHistoryForgettingCurveUtils { public static final int[][] SCORE_TABLE = new int[FC_LEVEL_MAX][ELAPSED_TIME_MAX + 1]; static { for (int i = 0; i < FC_LEVEL_MAX; ++i) { final double initialFreq; final float initialFreq; if (i >= 2) { initialFreq = FC_FREQ_MAX; } else if (i == 1) { initialFreq = (double)FC_FREQ_MAX / 2; initialFreq = FC_FREQ_MAX / 2; } else if (i == 0) { initialFreq = (double)FC_FREQ_MAX / 4; initialFreq = FC_FREQ_MAX / 4; } else { continue; } for (int j = 0; j < ELAPSED_TIME_MAX; ++j) { final double elapsedHour = j * ELAPSED_TIME_INTERVAL_HOURS; final float elapsedHours = j * ELAPSED_TIME_INTERVAL_HOURS; final double freq = initialFreq * Math.pow(initialFreq, elapsedHour / HALF_LIFE_HOURS); initialFreq * Math.pow(initialFreq, elapsedHours / HALF_LIFE_HOURS); final int intFreq = Math.min(FC_FREQ_MAX, Math.max(0, (int)freq)); SCORE_TABLE[i][j] = intFreq; } Loading
java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java +3 −3 Original line number Diff line number Diff line Loading @@ -787,9 +787,9 @@ public class BinaryDictInputOutput { // (discretizedFrequency + 0.5) times this value to get the median value of the step, // which is the best approximation. This is how we get the most precise result with // only four bits. final double stepSize = (MAX_TERMINAL_FREQUENCY - unigramFrequency) / (1.5 + MAX_BIGRAM_FREQUENCY); final double firstStepStart = 1 + unigramFrequency + (stepSize / 2.0); final float stepSize = (MAX_TERMINAL_FREQUENCY - unigramFrequency) / (1.5f + MAX_BIGRAM_FREQUENCY); final float firstStepStart = 1 + unigramFrequency + (stepSize / 2.0f); final int discretizedFrequency = (int)((bigramFrequency - firstStepStart) / stepSize); // If the bigram freq is less than half-a-step higher than the unigram freq, we get -1 // here. The best approximation would be the unigram freq itself, so we should not Loading