You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
An implementation of "Deep Biaffine Attention for Neural Dependency Parsing".
9
9
10
-
Details and [hyperparameter choices](#Hyperparameters) are almost identical to those described in the paper, except that we do not provide a decoding algorithm to ensure well-formedness, which does not seriously affect the results.
10
+
Details and [hyperparameter choices](#Hyperparameters) are almost identical to those described in the paper,
11
+
except that we provide the Eisner rather than MST algorithm to ensure well-formedness.
12
+
Practically, projective decoding like Eisner is the best choice since PTB contains mostly (99.9%) projective trees.
11
13
12
-
Another version of the implementation is available on [char](https://github.com/zysite/biaffine-parser/tree/char) branch, which replaces the tag embedding with char lstm and achieves better performance.
14
+
Besides the basic implementations, we also provide other features to replace the POS tags (TAG),
Note that punctuation is excluded in all evaluation metrics.
44
+
Note that punctuation is ignored in all evaluation metrics for PTB.
39
45
40
46
Aside from using consistent hyperparameters, there are some keypoints that significantly affect the performance:
41
47
42
48
- Dividing the pretrained embedding by its standard-deviation
43
49
- Applying the same dropout mask at every recurrent timestep
44
-
- Jointly dropping the words and tags
50
+
- Jointly dropping the word and additional feature representations
45
51
46
-
For the above reasons, we may have to give up some native modules in pytorch (e.g., `LSTM` and `Dropout`), and use self-implemented ones instead.
52
+
For the above reasons, we may have to give up some native modules in pytorch (e.g., `LSTM` and `Dropout`),
53
+
and use custom ones instead.
47
54
48
-
As shown above, our results, especially on char lstm version, have outperformed the [offical implementation](https://github.com/tdozat/Parser-v1) (95.74 and 94.08).
55
+
As shown above, our results have outperformed the [offical implementation](https://github.com/tdozat/Parser-v1) (95.74 and 94.08).
56
+
Incorporating character-level features or external embeddings like BERT can further improve the performance of the model.
49
57
50
58
## Usage
51
59
@@ -67,16 +75,56 @@ Commands:
67
75
train Train a model.
68
76
```
69
77
70
-
Before triggering the subparser, please make sure that the data files must be in CoNLL-X format. If some fields are missing, you can use underscores as placeholders.
78
+
Before triggering the subcommands, please make sure that the data files must be in CoNLL-X format.
79
+
If some fields are missing, you can use underscores as placeholders.
0 commit comments