Thursday, 31 December 2020

Attention

December had just ended and that marked my third month here back in my parent's home again. Stuck without any clue where to go or what to do. It took me almost three weeks for me to understand attention by reading the paper 'Attention is all you need' and this one. That all before I can implement it using PyTorch. The truth is, I never used PyTorch before! So I am currently learning how to use that one.

Damn that learning curve. I used to build my project using Keras since it is very easy to learn, thus my thesis was also build using that one to save the time. Now I feel that Keras is not that easy to debug and to be honest, I don't feel like I am learning anything because everything is wrapped so nicely (which is actually I appreciate). But then I came to one realization that I haven't learn the ugly details. Why the ugly details is important? Because in my opinion it is necessary to understand the mechanism of the magic. Machine learning should not be a seen as a black-box of magic. I used to have this mindset: "Just build a simple model and train the data" Voila, you will go nowhere and thus you will not be able to explain why your chosen architecture is suitable for a certain task.

Here's the catch. I can train signal input for classification, regression, or whatever using convolution layer, recurrent layer, or maybe even a simple MLP (multi-layer perceptron). But then you can see that when you see the result, maybe one of those type (or combination of those) works better than the other. Why? I cannot answer that. Thus I have to read the articles and seek what is the underlying idea behind those architectures or layers. How it works, and at what task.

In academic research I was told that I should do my work systematically. For example, assume that I have this one paper I want to use as the baseline:
  1. Reproduce the baseline (if it is possible, use the same data, preprocessing, features, model, and task). This does not necessarily mean that you have to use the same framework, but (sometimes) there will be slight differences in used algorithm between matlab's partial least square and python library (scikit-learn), but usually it is not too significant.
  2. Change one by one. This means that you cannot do multiple modification from the baseline simultaneously. For instance, you cannot change the model and task at the same time.
  3. Logging! Note everything down. Every experiment iteration, write down what you did and the outcome. I used to lie to myself that I will 
  4. Discuss. You shall never use your own understanding and you will go further by talking to people with similar interest. (unless your environment is toxic and unsupportive)
  5. Write a publication.
  6. Enjoy a little break. While waiting for the reviews ;)
Okay, this is my flawed thoughts and opinion for the time being for this blog is basically my life-note. My thoughts of what I'm going throughout this life. 

###

Saturday, 5 December 2020

Winter 2021 Anime List

 Serials:

  1. Yakusoku no Neverland 2nd Season
  2. Dr. Stone: Stone Wars
  3. Tensei shitara Slime Datta Ken 2nd Season
  4. Re:Zero kara Hajimeru Isekai Seikatsu 2nd Season Part 2
  5. Horimiya
  6. 5-toubun no Hanayome ∬
  7. Mushoku Tensei: Isekai Ittara Honki Dasu
  8. Hataraku Saibou!!
  9. Nanatsu no Taizai: Fundo no Shinpan
  10. Hataraku Saibou Black
  11. Yuru Camp△ Season 2
  12. Jaku-Chara Tomozaki-kun
  13. Wonder Egg Priority
  14. Tatoeba Last Dungeon Mae no Mura no Shounen ga Joban no Machi de Kurasu Youna Monogatari
  15. Urasekai Picnic
  16. Non Non Biyori Nonstop
  17. Bungou Stray Dogs Wan!
Specials:
  1. Gintama: The Semi-Final
  2. Tensei shitara Slime Datta Ken: Kanwa - Hinata Sakaguchi
  3. Dogeza de Tanondemita: Isekai-hen

Movies:

  1. Gintama: The Final
  2. Natsume Yuujinchou: Ishi Okoshi to Ayashiki Raihousha

October - Carry Your Own

The results of my first experiment are here. There are a lot of numbers to analyze. My previous supervisor from back when I was doing my mas...