Comments (1)
Hi @ethancaballero, thank you for pointing this out. Let me try to clarify the differences.
The last eq. of section A.2.2
from the original paper, is implemented here in this repo with three feed-forward layers, having linear
(identity
) activations. We first add their outputs and then apply a tanh
non-linearity.
The original code of the paper also implements readout
with three separate feed-forward layers, as you can see here. Adds them together, but then applies a maxout
non-linearity. This is the first difference and in practice (in terms of BLEU), there will be no difference at the end if you replace it with a simple tanh
.
The second difference is, in the original code from GroundHog, readout
layer uses a single bias, but here in our implementation, we use three biases for each of the feed-forward layers. This is a very minor detail and again you will see no difference at the end.
The third difference is a more fundamental one and related with the ease of implementation. In the decoder when we compute \tilde{t}_{i}
, we look at the current hidden state of the decoder s_i
as opposed to looking at the previous hidden state s_{i-1}
. Again, at the end you will not observe any difference in the automatic metrics.
There is one more difference in the decoder compared to the original implementation, where we use a slightly different conditional GRU layer with attention, and you can find the documentation here.
from dl4mt-tutorial.
Related Issues (20)
- Why the grads have to be shared? HOT 2
- Cost is Nan after one epoch if maxlen > 50 HOT 3
- Where is dataset='/ichec/work/dl4mt_data/nec_files/wiki.tok.txt.gz'? HOT 2
- NaN detected HOT 1
- L2 regularization on bias terms?
- Unnecessary bias term? HOT 1
- Asymmetry in read gate application
- dim == dim_nonlin and nin == nin_nonlin must be always true?
- How to build the dataset 'all.en.concat.gz.pkl' in session2/train_nmt_all.py? HOT 1
- Random Translations? HOT 5
- ValueError: unsupported pickle protocol: 3 HOT 2
- why convert the value of matrix to the type with astype('float32')? HOT 2
- a detailed description about param_init_gru and gru_layer HOT 2
- the value of TensorType(float32, 3D) HOT 2
- compute word probabilities HOT 2
- Maybe it's time to upgrade to Python 3 and ditch Python 2 support? HOT 1
- By condition what does it mean in this tutorial?
- Can anyone provide GPU version of translate.py? HOT 1
- TypeError
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dl4mt-tutorial.