
Zdravo from Montenegro! I can't believe it, but today marks TWO MONTHS in my new home!!! I cherish every day and am so grateful that a Fulbright fellowship brought me to this beautiful country of mountains and sea, grapes and roses, brandy and roasts, and above all, amazing colleagues and friends.
If you follow me on social media, you've seen my constant stream of photos, but today I'd like to take the opportunity to share what I've been working on over here. For those of you who don't know, I've taken a year sabbatical from my position at IBM, and I am working as a researcher and professor at the University of Montenegro - and absolutely loving it! The pace is slower than in NYC or on a client facing project, but I must say I am loving the freedom to explore the topics and initiatives that are important to ME. Already I've learned SO much and am so inspired by my colleagues and students. Here's a quick look at what I've been up to!
If you follow me on social media, you've seen my constant stream of photos, but today I'd like to take the opportunity to share what I've been working on over here. For those of you who don't know, I've taken a year sabbatical from my position at IBM, and I am working as a researcher and professor at the University of Montenegro - and absolutely loving it! The pace is slower than in NYC or on a client facing project, but I must say I am loving the freedom to explore the topics and initiatives that are important to ME. Already I've learned SO much and am so inspired by my colleagues and students. Here's a quick look at what I've been up to!
Research & Colleagues
My office sits in the engineering floor of UCG technical campus. I am researching classification of electrocardiograms (ECG) through deep learning. I am particularly interested in unsupervised learning methods, which means even if we don't have access to an expert electrocardiologist to label the ECG with annotations like "normal beat" or "atrial flutter", this algorithm could learn what atrial flutter looks like all by itself. There are some existent technologies for ECG classification (primarily atrial fibrillation), but analysis is not done in real time, patients don't appear to be impressed with the results, and there many other arrhythmias and conditions besides Afib. My passion has always been creation - so throughout the year my master goal is to develop a method that could actually be implemented in a device. I'm not alone in this quest; I have amazing colleagues Slobodan Đukanović, expert in signal processing and machine learning, Milan Sekularac, expert in mechanical engineering and 3D vascular cardiology, Radovan Stojanovic, expert in applied electronics, wearables, and stress detection, and Vladimir Jacimovic, expert in theoretical mathematics. (Quite a team, right? :) I am currently using the publicly available MIT-BIH arrhythmia database, but Milan has physician contacts in Montenegro and Belgrade who may be able to get us patient ECG data! Radovan has already developed ECG devices as well, and he would like me to collaborate with him to develop stress detection devices using ECG as well as various other physiological signals (galvanic skin response, temperature, motion, etc).
Girls Who Code
I am SO excited about this!! I hosted an info session last night, and I think we are going to have a lot of engaged girls! Girls Who Code(GWC) isn't global yet, so I can't tap into the official GWC resources, but I've been able to locate many of the open source tool-sets GWC suggests for the girls, as well as some old course materials. I've been researching the curriculum, and I had no idea how many great, free tools there are out there to help people learn to code while doing something that interests us! (Did you know you can create songs while you're learning to code?! Check these awesome resources out below!) One of the reasons this is so dear to me is because the first step in becoming a leader in tech is realizing that you don't have to be afraid of tech. In college I thought I was one of those people who's brain didn't work like a coder, but that's simply not true. If I can achieve one thing with this program, it's removing that barrier that there's something out there that you can't do. I will never be a full stack engineer or the best coder in the room, but I know what coding can do, I can talk about it, and I can work with teams to be the best coding team in the room! This program isn't just about equipping girls with modern computing skills, it's showing them that they can be leaders in STEM.
Teaching
4th Year Applied Mathematics
I'm co-teaching applied mathematics with Vladimir to computer science and applied mathematics 4th years, and I am also overseeing the final projects of the computer science students. My students have some great ideas for final projects! Here's a few of their ideas:
Python for Engineers
I'll be teaching Python to some of the professors and students here. Most of the audience has coding experience (Matlab, C++, Java, Fortran), so I'll be teaching a sort of advanced Python for engineers. I'll be teaching this through the MechE department, so many of the tasks they want to use Python for are new to me as well - such as solving differential equations for fluid motion and parallel programming. I've been doing research in preparing my course, and found some really great stuff - check out in the resources.
Other Fun Stuff
My office sits in the engineering floor of UCG technical campus. I am researching classification of electrocardiograms (ECG) through deep learning. I am particularly interested in unsupervised learning methods, which means even if we don't have access to an expert electrocardiologist to label the ECG with annotations like "normal beat" or "atrial flutter", this algorithm could learn what atrial flutter looks like all by itself. There are some existent technologies for ECG classification (primarily atrial fibrillation), but analysis is not done in real time, patients don't appear to be impressed with the results, and there many other arrhythmias and conditions besides Afib. My passion has always been creation - so throughout the year my master goal is to develop a method that could actually be implemented in a device. I'm not alone in this quest; I have amazing colleagues Slobodan Đukanović, expert in signal processing and machine learning, Milan Sekularac, expert in mechanical engineering and 3D vascular cardiology, Radovan Stojanovic, expert in applied electronics, wearables, and stress detection, and Vladimir Jacimovic, expert in theoretical mathematics. (Quite a team, right? :) I am currently using the publicly available MIT-BIH arrhythmia database, but Milan has physician contacts in Montenegro and Belgrade who may be able to get us patient ECG data! Radovan has already developed ECG devices as well, and he would like me to collaborate with him to develop stress detection devices using ECG as well as various other physiological signals (galvanic skin response, temperature, motion, etc).
Girls Who Code
I am SO excited about this!! I hosted an info session last night, and I think we are going to have a lot of engaged girls! Girls Who Code(GWC) isn't global yet, so I can't tap into the official GWC resources, but I've been able to locate many of the open source tool-sets GWC suggests for the girls, as well as some old course materials. I've been researching the curriculum, and I had no idea how many great, free tools there are out there to help people learn to code while doing something that interests us! (Did you know you can create songs while you're learning to code?! Check these awesome resources out below!) One of the reasons this is so dear to me is because the first step in becoming a leader in tech is realizing that you don't have to be afraid of tech. In college I thought I was one of those people who's brain didn't work like a coder, but that's simply not true. If I can achieve one thing with this program, it's removing that barrier that there's something out there that you can't do. I will never be a full stack engineer or the best coder in the room, but I know what coding can do, I can talk about it, and I can work with teams to be the best coding team in the room! This program isn't just about equipping girls with modern computing skills, it's showing them that they can be leaders in STEM.
Teaching
4th Year Applied Mathematics
I'm co-teaching applied mathematics with Vladimir to computer science and applied mathematics 4th years, and I am also overseeing the final projects of the computer science students. My students have some great ideas for final projects! Here's a few of their ideas:
- Solving the N-Queens Problem with a Genetic Algorithm
- A Decentralized Algorithm for Time Synchronization (they're interested in firefly synchronization and applying this phenomenon)
- A Poisson Process model for Monte Carlo
Python for Engineers
I'll be teaching Python to some of the professors and students here. Most of the audience has coding experience (Matlab, C++, Java, Fortran), so I'll be teaching a sort of advanced Python for engineers. I'll be teaching this through the MechE department, so many of the tasks they want to use Python for are new to me as well - such as solving differential equations for fluid motion and parallel programming. I've been doing research in preparing my course, and found some really great stuff - check out in the resources.
Other Fun Stuff
- Slobodan and I have a daily story hour, where through repetition of riveting children's stories, I am learning Serbian, and Slobodan is slowly losing his mind. I also listen to CDs in my car, make flashcards, and watch tv programming (that always seem to be violent and/or adulterous) with Serbian subtitles, so I have enrichment in the more criminal-type diction.
- I've learned to drive my Mini, and I'm now a half decent driver of a manual car. As long as you sign a waiver, I'd be happy to take you anywhere.
- Ciara and I signed up to run the half and full marathon (respectively, not each haha) in Marrakech, Morocco this January!! Ciara and Maddie are the Fulbright ETA's, and Maddie is going to come cheer us on! These girls are amazing by the way - inspiring, strong, warm, driven, and awesome.
- I don't know how yet, but I'm bringing four 70 pound dogs back to the US. No I know I can't, but I have four sweet pups at my ranch.
- I'm playing soccer! I've been the only girl on the field so far, but the guys have been really great.
Resources
Deep Learning for ECG classification
MIT-BIH Database
Github: TensorFlow Implementation of QRS detection method
Paper: ECG arrhythmia detection from 2D CNN
Github: ECG arrhythmia detection from 2D CNN
Unsupervised Heart-rate Estimation in Wearables with Liquid States and a Probabilistic Readout
Cardiologist Level Arrhythmia Detection with CNN
A Novel Automatic Detection System for ECG Arrhythmias using Maximum Margin Clustering with Immune Evolutionary Algorithm
Futuristic Biosensors for Cardiac Health Care: An Artificial Intelligence Approach
Genetic Algorithm for the Optimization of features and neural networks in ECG signal classification
Interactive Coding Tools
EarSketch: Compose a song using python or javascript
Circuits.io: Online circuit builder for Arduino projects (C++)
w3schools.com: Learn web technology and execute code (many options) in sandbox
Logic Gate Simulator: Simulate simple circuits of logic gates
Khan Academy: Create Digital Art while learning javascript
Codesters: Learn python by creating interactive stories
Actimator: Make and Publish 2D Games
WeScheme: interactive evaluator and interface for editing and running programs
Python for Engineers
Intro to Python: An open source resource for teachers and students
11 Resources for teaching and learning Python
Modeling and Simulation in Python
GitHub: Heat Transfer
Python, CFD, and Heat Transfer (Working Scripts)
Finite Difference Methods for Diffusion Process
Parallel Loops in Python, R, Matlab, and Octave
Deep Learning for ECG classification
MIT-BIH Database
Github: TensorFlow Implementation of QRS detection method
Paper: ECG arrhythmia detection from 2D CNN
Github: ECG arrhythmia detection from 2D CNN
Unsupervised Heart-rate Estimation in Wearables with Liquid States and a Probabilistic Readout
Cardiologist Level Arrhythmia Detection with CNN
A Novel Automatic Detection System for ECG Arrhythmias using Maximum Margin Clustering with Immune Evolutionary Algorithm
Futuristic Biosensors for Cardiac Health Care: An Artificial Intelligence Approach
Genetic Algorithm for the Optimization of features and neural networks in ECG signal classification
Interactive Coding Tools
EarSketch: Compose a song using python or javascript
Circuits.io: Online circuit builder for Arduino projects (C++)
w3schools.com: Learn web technology and execute code (many options) in sandbox
Logic Gate Simulator: Simulate simple circuits of logic gates
Khan Academy: Create Digital Art while learning javascript
Codesters: Learn python by creating interactive stories
Actimator: Make and Publish 2D Games
WeScheme: interactive evaluator and interface for editing and running programs
Python for Engineers
Intro to Python: An open source resource for teachers and students
11 Resources for teaching and learning Python
Modeling and Simulation in Python
GitHub: Heat Transfer
Python, CFD, and Heat Transfer (Working Scripts)
Finite Difference Methods for Diffusion Process
Parallel Loops in Python, R, Matlab, and Octave