You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opennlp.apache.org by jo...@apache.org on 2016/11/02 22:13:29 UTC
opennlp git commit: Replace Heap with PriorityQueue
Repository: opennlp
Updated Branches:
refs/heads/trunk 895975eab -> 22bed4b87
Replace Heap with PriorityQueue
See issue OPENNLP-879
Project: http://git-wip-us.apache.org/repos/asf/opennlp/repo
Commit: http://git-wip-us.apache.org/repos/asf/opennlp/commit/22bed4b8
Tree: http://git-wip-us.apache.org/repos/asf/opennlp/tree/22bed4b8
Diff: http://git-wip-us.apache.org/repos/asf/opennlp/diff/22bed4b8
Branch: refs/heads/trunk
Commit: 22bed4b876f12ca4a88a674aaddad42d1e75dbad
Parents: 895975e
Author: J�rn Kottmann <jo...@apache.org>
Authored: Wed Nov 2 22:58:52 2016 +0100
Committer: J�rn Kottmann <jo...@apache.org>
Committed: Wed Nov 2 23:13:09 2016 +0100
----------------------------------------------------------------------
.../src/main/java/opennlp/tools/ml/BeamSearch.java | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/opennlp/blob/22bed4b8/opennlp-tools/src/main/java/opennlp/tools/ml/BeamSearch.java
----------------------------------------------------------------------
diff --git a/opennlp-tools/src/main/java/opennlp/tools/ml/BeamSearch.java b/opennlp-tools/src/main/java/opennlp/tools/ml/BeamSearch.java
index e2054cd..1395d9f 100644
--- a/opennlp-tools/src/main/java/opennlp/tools/ml/BeamSearch.java
+++ b/opennlp-tools/src/main/java/opennlp/tools/ml/BeamSearch.java
@@ -19,13 +19,13 @@ package opennlp.tools.ml;
import java.util.Arrays;
import java.util.List;
+import java.util.PriorityQueue;
+import java.util.Queue;
import opennlp.tools.ml.model.MaxentModel;
import opennlp.tools.ml.model.SequenceClassificationModel;
import opennlp.tools.util.BeamSearchContextGenerator;
import opennlp.tools.util.Cache;
-import opennlp.tools.util.Heap;
-import opennlp.tools.util.ListHeap;
import opennlp.tools.util.Sequence;
import opennlp.tools.util.SequenceValidator;
@@ -83,9 +83,9 @@ public class BeamSearch<T> implements SequenceClassificationModel<T> {
public Sequence[] bestSequences(int numSequences, T[] sequence,
Object[] additionalContext, double minSequenceScore, BeamSearchContextGenerator<T> cg, SequenceValidator<T> validator) {
- Heap<Sequence> prev = new ListHeap<Sequence>(size);
- Heap<Sequence> next = new ListHeap<Sequence>(size);
- Heap<Sequence> tmp;
+ Queue<Sequence> prev = new PriorityQueue<>(size);
+ Queue<Sequence> next = new PriorityQueue<>(size);
+ Queue<Sequence> tmp;
prev.add(new Sequence());
if (additionalContext == null) {
@@ -96,7 +96,7 @@ public class BeamSearch<T> implements SequenceClassificationModel<T> {
int sz = Math.min(size, prev.size());
for (int sc = 0; prev.size() > 0 && sc < sz; sc++) {
- Sequence top = prev.extract();
+ Sequence top = prev.poll();
List<String> tmpOutcomes = top.getOutcomes();
String[] outcomes = tmpOutcomes.toArray(new String[tmpOutcomes.size()]);
String[] contexts = cg.getContext(i, sequence, outcomes, additionalContext);
@@ -157,7 +157,7 @@ public class BeamSearch<T> implements SequenceClassificationModel<T> {
Sequence[] topSequences = new Sequence[numSeq];
for (int seqIndex = 0; seqIndex < numSeq; seqIndex++) {
- topSequences[seqIndex] = prev.extract();
+ topSequences[seqIndex] = prev.poll();
}
return topSequences;