Nghia Bui, Saigon, Christmas 2016
From the beginning days of computers, people have wondered whether computers can be programmed to learn. If we can make them to learn, the effect would be so amazing. For example, ML is frequently used in cancer diagnosis and detection. Cruz and Wishart [CW06] showed that ML methods can be used to substantially (15-25%) improve the accuracy of predicting cancer susceptibility, recurrence and mortality. Indeed, recently [Ng16], it was reported that IBM’s Watson gave proper diagnosis for Japanese leukemia patient after doctors were stumped for months. The supercomputer, sifted through 20 million cancer research papers, was able to find out the proper diagnosis within 10 minutes, and also suggested a new treatment that has since been more effective.
With an undoubted impression about applications of ML, let our discussion continue with the formal definitions and basic concepts of this subfield of computer science.
Continue reading “A humble introduction to Machine Learning, Information Extraction, and Bootstrapping Method”
A machine learning technique which boosts weak learners to strong ones by using gradient.
A simple explanation of the Hidden Markov Model
One of popular interview questions is: “please describe the four characteristics of object-oriented programming”. In my observation, not many candidates — even the senior ones — can explain well Abstraction, Encapsulation, Polymorphism, and Inheritance. Worse, little did they know the drawback of Inheritance.
Continue reading “The three characteristics of OOP”
Little did they know that the universe is four dimensional and even the orbit of planets is an illusion produced when straight motion in a four dimensional space is projected into three dimensions (or something).
immediately reminded me about projective geometry which is one of the most beautiful systems of mathematics.
So the universe is 4D? I don’t know. But if it was true then we could use the concepts of projective geometry to interpret something interesting.
Continue reading “The universe is 4D?”
Null is clearly evil. We as human tend to forget to check null, and boom … crash!!! Documentation may help, but again we still forget reading documents. Worse, not all documents are correct and up-to-date 100%. Even if we remember to do every null check, our code would be very messy.
So what is the solution?
Continue reading ““Null References: The Billion Dollar Mistake””
Exceptions are a very common concept in most of languages nowadays. In this article we will discuss why exceptions are needed, checked vs unchecked exceptions, and why C# doesn’t have checked exceptions.
Continue reading “How do you use Exceptions?”
This article is about my personal explanation of the famous design patterns: Model View Controller (MVC), Model View Presenter (MVP), Presentation Model (PM), and Model View ViewModel (MVVM).
Let’s start with Model.
Continue reading “How to think about MVC, MVP, PM, and MVVM?”
Builder Pattern and Factory Pattern are pretty similar in a way: both of them encapsulate the details of object-creation processes. However, in cases there are many complicated processes to create various representations of objects, and those processes share a common trait, Builder Pattern is the better choice.
Continue reading “GoF Builder Pattern”
Object persistence — for example, saving/loading objects to/from a database — is easy, especially when using an ORM framework. It is easy because it breaks principles of OO design.
Continue reading “Why object persistence is hard?”