In the previous part I described the main functionality of Lucene and how it can be used. Today I will create a Java application that demonstrates how two basic operations in Lucene: adding documents to index and searching for documents. The code example is intended to give an idea of how to start with Lucene. My goal was to include only the essential code without overwhelming the readers with unnecessary configuration and features.
Apache Lucene is an open source popular library for Information Retrieval tasks. The library is implemented in Java and has ports or API bindings in multiple languages such as Python, Ruby, C#, etc. If you need full text search functionality in your application you can add it with Lucene. Text search is the most common application of the library but not the only one. For example, you can compute text similarity with Lucene using different measures provided with the library or add custom similarity algorithms.
There has been a few years since I’ve encountered Stanford course CS 229 Machine Learning (ML) from Professor Andrew NG and it still remains one of my favorite courses. Last year I watched some of his lectures again to refresh my memories on particular topics. Even though I was familiar with applied machine learning I found the course useful. Today I will try to explain why I still think it may be the best free online ML course.