Skip to content

Commit

Permalink
[update] Change the behavior of WordAlign class
Browse files Browse the repository at this point in the history
- Restore 'align' method
  • Loading branch information
m-yoshinaka committed Oct 5, 2020
1 parent c79fb96 commit 611f819
Showing 1 changed file with 10 additions and 7 deletions.
17 changes: 10 additions & 7 deletions sapphire/word_alignment.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,13 +52,7 @@ def __init__(self, lambda_, use_hungarian):
self.use_hungarian = use_hungarian

def __call__(self, sim_matrix):
if self.use_hungarian:
alignments = self._hungarian_assign(sim_matrix)
else:
alignments = self._grow_diag_final(sim_matrix)

return [(s + 1, t + 1) for s, t in alignments
if sim_matrix[s][t] >= self.lambda_]
return self.align(sim_matrix=sim_matrix)

@staticmethod
def _hungarian_assign(sim_matrix):
Expand Down Expand Up @@ -120,3 +114,12 @@ def _final(matrix):
alignments.append((s, t))

return alignments

def align(self, sim_matrix):
if self.use_hungarian:
alignments = self._hungarian_assign(sim_matrix)
else:
alignments = self._grow_diag_final(sim_matrix)

return [(s + 1, t + 1) for s, t in alignments
if sim_matrix[s][t] >= self.lambda_] # 1-index alignment

0 comments on commit 611f819

Please sign in to comment.