Skip to main content

BAYESIAN NETWORKS in Machine Learning

So basically this topic is a mix of three theories namely:

  1. Graph Theory
  2. Probability Theory
  3. Bayes Theory

1. Graph Theory

 Graph theory is a mathematical field for the study of Graphs.

Graph = Nodes (or vertices) + Arcs (or lines, or edges!)

So a node can be anything that you want, a company, profits or a band.

The thing is- you can have many nodes- but they have to have some form of relation between them. Graphs can be directed and undirected as shown below.


2. Probability Theory

Probability is a measure of the likelihood of something happening. And is always a value between 0 and 1. The more likely, the closer the value is to 1 and vs-versa.

Probability = (Particular Event)➗(All Possible Events)

An example is coin flip. The probability of getting heads is 0.50 - and this brings us to our next idea, conditional probability.

Instead of one event at a time, what is the the probability of getting a heads twice? Which then becomes

P(Heads|Heads)

The '|' simply means 'given that' (the last value was). And as per our example is 0.50*0.50. You might ask- why multiply? Or what does multiply mean? Or cant we just add?  Well that's because we want to find the intersection of both H and H sets.

3. Bayes Theory

This is an extension of conditional probability. While using Bayes you are using conditional probability to calculate another one.

P(A|B) = P(B|A) * P(A)/P(B)

ie. Posterior = Likelihood*Prior/Evidence

If you want more i refer to this article.


For great examples, follow this link. 

Sample code : 

How AI can help fight Cholera. Feel free to contribute! https://goo.gl/kmcvKv


 


Comments

Popular posts from this blog

PRG, PRF, PRP in Cryptography - What are they?

So I have been reading up on my cryptography and I figured I should give out a brief lesson on these three amazing concepts What are they ? a) PRG (Pseudo Random Generator) You probably know the difference between stream and block cipher. One of the main differences between them is key size. Stream ciphers require the key to be of equal length of greater than the plaintext ,   whereas Block Ciphers take a key smaller than the PT and is then expanded. This is the PRG The PRG expands the seed Considerations: Stream Ciphers base on Perfect Secrecy whereas Block Ciphers base on Semantic Security b) PRF (Pseudo Random Function) Lets share a secret- imagine something- you want to authenticate yourself with me by proving that you know a secret that we both share. Here's a possible option i) Possible Option 1:  PRNGs We both seed a PRNG with the shared secret, I pick and then send you some random number i.  You   then have to prove that you know the secret by respon

Django & Firebase - A marriage of awesomeness

Requirements 1) Django (obviously) 2) Pyrebase (pip install pyrebase, you know the drill) So to give a better appreciation- I will first show you the HTML way then I'll proceed to show you how its done in Python. METHOD 1 : The HTML way Then you need to go to the firebase console. To setup a new project. After that you will see a web setup and you select that. Once selected you will see the config. It should be similar to this : Now that you have configured firebase, we now need to select the components which will be needed. depending on what you want for your app- you can now select the modules that you need. For us today, we will do the login authentication. Make sure you include firebase app first, so this is my screen: METHOD 2: Enter Python Open your dev environment and create a file named  pyrebase_settings within your django app folder. In it, you will have the following: Now, lets go to views.py!