Technical things
-
Linh Thanh Nguyen, “Retrieval-Augmented Generation (RAG): Embeddings and Semantic Search” (v1. June 2026)
-
Linh Thanh Nguyen, “Diffusion models” (v1. July 2024)
-
Linh Thanh Nguyen, “Precision, Recall and F1 Score - All we need to know” (v1. April 2024)
-
Linh Thanh Nguyen, “Key takeaways about supervised learning in Supervised Machine Learning: Regression and Classification course, Deep Learning AI” (August 2023)
-
Linh Thanh Nguyen, “Key takeaways and quiz solutions in the Blockchain Specialization offered by The University at Buffalo and The State University of New York and Many useful Blockchain-related knowledge”, Github repository (March 2023)
-
McKinsey & Company, “The state of AI in 2023: Generative AI’s breakout year” (August 2023)
Scientific Research
- Best practices in paper writing
-
First thought, with Ted Adelson, for preparation of a paper:
-
State the problem we want to solve.
-
Review the current solutions to the problem and ask whether they are satisfactory. If they are, we do not need to work on it.
-
If they are not, present our solution and compare it with the existing ones.
-
Finally, in the related work section, state the proposed techniques that have been used for different problems.
-
-
What can we do for each section in a paper:
-
Introduction: a) What problem we want to solve, b) why is it important and interesting, and c) what is/isn’t new in our paper? (claims, problems, novelty, significance)
-
Related work: surveys and discusses how these work are related, what have been done/have not done from the big to narrow pictures of the targeting topic (context).
-
Main idea & Algorithm: can be foundational conceptual framework (e.g., underlying model/theory which can be theoretical or systemic) and methodology (e.g., structured, strategic and procedure,…). This part can be better with a toy example or a figure to illustrate components, how they work and interact with others. Besides, the paper should explicitly state the technical assumptions/limitations (honesty).
- Workflow vs. Algorithm: while workflow provides a marco-level conceptual understanding of the system model/theory but fail to show edge cases, stop conditions,…, algorithm can introduce micro-level implementation blueprint (e.g, how to implement the proposed solution: control flow, loop bounds,… with complexity).
-
Experiments: are the place we need to show the feasibility and efficiency of the proposed solution, comparing with existing SOTAs, under some (controlled) settings. On the other hands, we need to show the soundness: results need to substantiate the claims/contributions.
- If the paper improves results compared to SOTAs, the paper clearly explains the reason of what made this improvement possible, or where it is coming from: What is improved in the algorithm/analysis?
-
Discussion: is to end with a conclusion/summary, or to show what our contributions open up and how the proposed solution changes the way we approach the current problem.
-
-
Some tips for better scientific writing:
-
Principle: What does the reader know so far, and what does the reader expect next and why?
-
Readers look at, in decreasing numbers, 1) the title, 2) the abstract, 3) a few result figures, and 4) every word. As a result, figure captions need to be self-contained, and the lead-in to the formulation should be precise and smooth.
-
-
How do we decide whether a paper should be accepted or rejected?
-
Are any important references missing, so that the state of the art is not properly covered?
-
Do the authors fail to deliver what the stated contributions promise?
-
Are the results incremental or implausible?
-
Is the writing poor?
-
References
[1]. Paper Writing Best Practices
-
Sebastian Ruder, “10* Tips for Research and a PhD” (Collected in January 2024)
-
Linh Thanh Nguyen, “How to develop your writing skills in the science: Myths and Lessons” (January 2024)
Study
0. How to study/work and manage time effectively?
-
A detailed plan for a working day and a week
-
Pomodoro method: studying for 45 minutes and taking a 5-minute break
-
Feynman technique: explaining complicated problems in a simple way
-
Active Recall & Spaced
-
Regarding time management, I have got some key takeaways from Terence Tao’s blog post, which are shown/quoted as follows
-
Evaluate your work potential (a function of your location, your current level of motivation and energy, your upcoming duties and commitments, availability of resources, and the expected level of distraction) for a given period of time into the future.
-
Avoid to drop a task when it is only partially finished, without any good closure; it then either gets lost, or weighs on one’s mind and prevents one from fully thinking about something else.
- Closure here is the desirability of being able to chop up an extremely long task into smaller, self-contained ones, ideally each with its own immediate “payoff”.
-
Handle tasks requiring less concentration in batches, while doing required-concentration tasks individually.
-
Seriously invest an amount of time on learning skills which are seemed to used repeatedly in the future (e.g., Using and knowing in details Pytorch/Tensorflow/Ethereum frameworks for coding and blockchain system configurations).
-
Abandon your own rules sometimes and allow for serendipity (Actually, I like this statement a lot and I actually found some interesting ideas during the time talking with my friends and colleagues, instead of a loop thought that I must work I must finish this I must finish that now).
-
Events
- Here are my thoughts about the event, “5th cohort Science Foundation Ireland ADVANCE CRT Induction” (Jan. 2024)