I am writing this article as part of the Crowd Counting project which came out of a study group called sg_wonder_vision. This study group is in turn an initiative by fellow students of “Udacity Facebook Secure and Private AI” Course.

I am not new to math, machine learning, security, socket programming fields and Python in general. In that sense the course was not overwhelming for me. One thing that I would like to highlight is — you would deeply experience various people handling scenarios (as discussed in HBR Magazines and similar publications) at a global scale or wider spectrum as…

It is first one of my study notes related to the Facebook Udacity Differential Privacy and Federated Learning course. The purpose is to capture the content /idea in short paragraphs/story form without getting lost in the pile of mathematics (in an attempt to reduce missing the forest /conceptual implication while focusing on individual tree syndrome).

[1] [2] Differential Privacy is a concept by which we would be able to collect user data but some noise would be added to it to prevent/reduce possibility of personal information leakage. Promoted by work of Cynthia Dwork and Apple.

Adding more noise in general…

Note: Writing this for later reference. The article is as is/needs polishing.

For some of our projects we needed to handle geo-spatial processing. For example as part of one of our analytics project we had to figure out which Pharmacy in BC belongs to which Local Health Authority.

We were initially considering R for this particular task so that the pre-existing code could run with minimum modification. There are libraries in R for geo-spatial processing like sf, sp, rgdal. However installation of sf was failing on Azure Data Science VM as well as other systems where we do R based…

(For my own use. To be able to locate these quickly when I need these).

Love this one:

Predicting Seizure

About the following my feeling is the MEG recording sessions contain EEG recordings as well (need to double check/verify):

Here is my personal note regarding how to save changes to a docker image locally and then reload it with the changes intact instead of fetching components related to the changes from some remote repositories while running it next time. This is to prevent excessive overall monthly bandwidth usage every time my development machine/host restarts due to frequent OS updates and when I need that docker image again after the restart. As for example full Anaconda MNE image for EEG related experiments is not that small and if I try the sample code/example gallery then the system downloads large data…

This is to keep track of the steps which I followed to increase disk size so that next time I can just use this document and do something similar quickly.

Couple of months ago to explore Docker on Windows I had to install Oracle Virtual Box first and then had a Docker image installed on top of it. This is because Docker cannot run directly on Windows (as per my research several months ago).

On the same VirtualBox (I recently upgraded it too due to the fact that the VirtualBox stopped working after recent auto upgrade of Windows 10) I…

Links and hints for my personal use/preparation for building an emotion detection model:

MNE is a collection of code/tool to process EEG and MEG data.

Code on how to simulate/generate fake raw data based on some sample is here.

Some basic concerns and questions on MNE are answered here.

One consistent limitation in EEG based model is — the accuracy of recognition is not very high (most are close to 51%~67%; with very few having 80%~91% accuracy). Need to explore what is needed — use of EEG device with more sensors or improving the feature extraction as well as machine…

Why message brokers?

  • To ensure loose coupling, asynchronous/non-blocking communication between producer and consumer. Producer can be written as for example in one language and consumer can be written in a different language.
  • Also in case the consumer cannot process messages as fast as producer is producing; the messages can be buffered in queue.
  • By increasing number of worker processes we can speed up processing.

So packet drop would happen when the queue(s) is/are full (assuming there is no issue in the communication network).

By using message brokers we are basically trying to make the communication layer scalable.

Message bodies can…

The last couple of months I have been waiting for the release of a new EEG device ( from OpenBCI. Apparently the availability date is continuously getting shifted and I am no longer confident that I would get it before 2017. That said in general I found that every single question of mine are answered and they respond (basically Joel who is one of the two co-founders handles questions) to your emails within few days. So the client interaction/support side of this business seems to be reasonable so far.

Additionally I considered consumer grade EEG headband from Muse. To collect…

As usual it is my personal note on refreshing my memory on a particular subject and some trouble shootings as relevant.

A virtual machine is an illusion of a machine (Guest) within another machine (Host). [1] discusses different types of virtual machine designs. The areas which I am focusing on are Hosted (Guest OS runs on Virtual Machine Monitor that in turns runs on the Host OS) and Hypervisor (Hypervisor is a software for virtualization which runs directly on the physical hardware of the host; it is basically a Virtual Machine Monitor). …


Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store