Bayesian Network – Java Implementation

I still have a bit of work to do, but I figured I was at a good point to share the progress I’ve made with my assignment in Machine Learning Artificial Intelligence.

The tool works by reading a CSV file containing multiple columns of “Features” or variables you could say, ending with a final column designating if those variables resulted in a positive or negative end result. Finally this allows you to “Query” the dataset by entering your own set of variables and getting back the probability of a positive or negative end result.

Moreover, this is not simply pattern matching against a set of preconfigured categories, the tool both parses the “test cases” and generates a library for the data set at the same time, so you could swap out the commonly used “Weather=>Play-Tennis?” dataset for literally any spreadsheet based dataset you’d like. I am working with a collection of data from IMDb at the moment with just shy of 3,000,000 rows and 8 columns, which by design I was able to just plug in place of the “Weather=>Play-Tennis?” dataset without having to change anything.

Expect a follow up in the next few weeks specifically for this project!

For some more information on Bayesian Networks. I recommend checking out this article from Towards Data Science as it covers the topic much more fluidly than I could ever hope to achieve.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s