In this part, you will implement the Word2Vec model and train your own word vectors with stochastic gradient descent (SGD). Numpy methods could be utilized to make your code both shorter and faster. The following requirements should be satisfied:
- Negative sampling loss
- Implement the skip-gram model from scratch
- Train with real data
- Show the resulting embeddings
a) Implement the below model
b) Use a small set of real machine translation data
c) Test with some (very similar) sentences
a) Implement a small transformer with one layer encoder and one layer decoder with self-attention according to the "Attention is All You Need" paper
b) A sub-layer can be constructed from code available in any package
c) Show and explain results (input, output) of each sub-layer during training and testing
a) Implement according to https://aclanthology.org/N16-1030/, using a dataset from https://nlpforthai.com/tasks/ner/ (a very small subset is sufficient for demonstration)
b) You can put together the model from code available in any package
a) You can use GPT code from any package
b) Training uses MIDI files, downloadable from the web (only main, catchy parts of a song may be used)
c) Generate and play the generated tunes
- 6420422002 Tanakorn Withurat - ธนากร วิธุรัติ
- 6420422008 Wannapa Sripen - วรรณนภา ศรีเพ็ญ
- 6420422011 Juntanee Pattanasukkul - จันทร์ทนีย์ พัฒนสุขกุล
- 6420422017 Witsarut Wongsim - วิศรุต วงศ์ซิ้ม
- 6420422021 Suchawalee Jeeratanyasakul - สุชาวลี จีระธัญญาสกุล