My first AI winter

After moving to London in September 2016, I experienced my first AI winter! It’s not as ominous as it sounds…there’s no cause for alarm. My play on words stems from the various machine learning events I attended in the last quarter of the year.

Creative AI: Artists and creatives in the age of machine intelligence

This extremely popular event explored applying machine learning methods to artistic endeavours. I secured my place through volunteering (which entailed checking in attendees). The organiser, Luba Elliot gave the first talk which provided an insightful overview of progress in the field. Next, Terence Broad gave an entertaining exposition of his dissertation on autoencoding Blade Runner and the copyright implications which followed! Finally, Bob L. Sturm explained the process of using deep recurrent networks to compose music. I was amazed by the standard of machine made tunes. They actually sound really good! I highly encourage you to listen to some on this dynamic playlist created by Bob! Whilst there were many technical details I didn’t understand, I was nonetheless inspired by the possibilities of making novel art using technology!

Creative AI: Generating music and images with deep learning

Like the first creative AI event, Luba gave an accessible overview after which Kai Arulkumaran (a PhD student at Imperial) led us through the wonders of deep image generating models. Intuitively, to create a generative model, you first need to collect a large quantity of data. This data is then used to train the model. The goal is to make a model which produces data similar to that in the training set. Following this exposition, Aäron van den Oord, a research scientist from DeepMind described the inner workings of generative models for audio and images. This involved looking at the WaveNet and PixelCNN papers. Honestly, I was really tired and struggled to follow the content. However, I found both talks to be intellectually inspiring even though they were both technically challenging! A plus of going to this event was that I found out about the deep learning network group.

London.AI #6

Even though this was a much more application-oriented event courtesy of London.AI, it was certainly no less enjoyable. It was awesome seeing an alternative outlook after having seen the artistic and technical perspectives already. I was curious. What kind of impact was theory having on industry? Thankfully, the three companies – Gluru, Aire and Cardiologs – delivered compelling AI driven products. First was Gluru, a super cool personal assistant which is able to understand the context in your email, work out what needs to be done and display suggested tasks through their mobile interface. I was surprised at the sophistication of this technology and look forward to integrating it in my life when it matures further!

Next was Aire who’s machine learning algorithms provide an alternative way to determine credit scores. Why is this important? It turns out that current credit rating methods rely on a credit model created in 1989! Consequently, the model penalises people who don’t necessarily fit the past mould e.g. self employed individuals who have multiple gigs. From an entrepreneurial perspective, I learned about the importance of delivering value at every point of your products evolution and the way to turn research into a product is through persistence!

Cardiologs was the final company presenting. It was incredible. Turns out that you can diagnose approximately 150 different heart conditions using ECG data. Unfortunately, the number of people who have expertise in reading ECG’s accurately is relatively low. For non-specialists, this means that mistakes can be made leading to missed diagnosis with sometimes fatal consequences! Cardiologs’ aims to solve this problem by taking digital ECG data, training an AI agent with medical practitioners and distributing this expertise across hospitals around the world. This was undoubtedly a great example of democratising AI to make the world a better place!

Workshop – Data Science in a day using Python: from pre-processing to predictive models

My first machine learning workshop was intense! Many concepts and techniques were covered. We started with learning about popular libraries such as scipy, numpy and pandas. After doing some exploratory data analysis and scaling the dataset, I employed scatter plots to investigate the relationship between input features. Using jupyter notebooks made this extremely straightforward. The next part of the workshop involved learning about and training various models. This covered k-means clustering, decision trees, random forests and support vector machines. I got the intuition behind the differing methods but will certainly need to practice implementing the techniques on other data sets before I can be comfortable with the material! However, even though there is much technical improvement to be made, I’m happy that I got exposed to the perils of over-fitting and different ways of partitioning data for use in model validation.

Value?

I have been fortunate to attend these events full of incredible people who are pushing the envelope of what’s possible with artificial intelligence. Whilst no one can predict the future, my current belief formed from my first hand experience talking with experts plus credible articles online is that this is a field with untapped potential. Intellectually and in terms of applications, I have “tested” the waters and am fired up to to invest time and effort into acquiring skills from this domain which I can use to solve problems!

Why is discipline now my foremost value?

What was the problem?

I had a flaw in my philosophy, in my personal mindset which I finally discovered and begun to fix. Consequently, my life is changing and transforming for the better! I was missing the key ingredient, the cornerstone, the foundation to transforming vision into reality. I did not have true discipline!

Essentially, I did not understand, apply and live discipline. I was ignorant! I did not know what I didn’t know. You may not either and I wouldn’t blame you. The missing piece to my puzzle was thanks to Jocko Willink’s podcast. the insights gained enabled me to reflect on my past failures and successes. Through his exploration of human nature, war and life, I learned what sacrifice has been paid and is still being paid for my freedom. I gained perspective! I understand and continue to learn that I am blessed beyond measure.

Living in the developed world with most of human knowledge at our fingertips via the internet, with food conveniently found at the local supermarket and with minimal or no threat to our person, how do we find time to complain? Why did I still blame instead of take extreme ownership? It’s absurd and a testament to the irrationality of the human condition. Relatively speaking, my challenges and most likely yours are almost insignificant compared to those who are entrapped in the darkness of this world. There are people who are starving at this moment in time. Some are being tortured. Others still are dying! Yet we in the light tend to forget or underestimate the evil and darkness that exists on our planet.

Discipline is the solution?!

How could I not be disciplined after internalising the stark reality from Jocko’s wisdom and the books which he investigates? Compared to the harsh experience of those who have lived before me and a significant number of people now, choosing discipline is a no-brainer! For so long, I had the misconception that discipline was like the yoke on an ox. I had fallen for the subliminal message that pain or discomfort was unnecessary, unwarranted and useless. Looking at the definition of discipline, it sounds strenuous, like a chore, almost unnatural, a punishment. How could I be so wrong? No one had ever told me the truth or if they did, not in a way that I understood the significance of what they were saying.

At first glance, it seems like a quality that could only be of use in the military or in some old-style Victorian era school. However, like with many things in life, appearances can be deceiving and I firmly believe that is the case here. Let me give an example. Suppose you have a long term goal that will require sustained effort. All well and good. You have a plan, a schedule to achieve that goal. It’s the start of your endeavour to change, you’re most likely feeling…enthused, at worst motivated. Classic example would be signing up to the gym after New Year’s festivities. Fast forward a few months and you’ve been to the gym a grand total of 7 times and it’s already the start of May. What could have gone wrong? You are nowhere near where you envisioned yourself being at this moment in time.

What happened? A strategy is great until you add in…you guessed it…real life. All sorts of things will come up…which you didn’t account for and in the moment, you will create an alibi, you will procrastinate, you will make an excuse and you will rationalise it all! After all, there’s always tomorrow, right? Except, tomorrow never comes! How can you fix this? How can you sustain the desire and action that will take you from now to the ideal you?

The answer is simple but not easy to implement. It’s discipline. Not discipline like you most likely know it. What is discipline? How is this discipline different? How is it defined? Simply, this discipline is freedom. It is the choice to be better in this moment. To take the high road. To embrace the strain, the challenge at hand. It is knowing that you have in you the strength to push and see your goal to it’s completion. It is an immersion in the process, it never ends. Day in, day out, come rain or shine. This discipline is about taking extreme ownership for yourself and your life. It’s about humility, knowing that whilst you have made some progress, you still have room for improvement. You can be stronger, faster and smarter. Why would you wait? This discipline is the super power that will ensure you get from A to B.

Final thoughts

Frankly, it’s hard for me to describe the mindset change, the paradigm shift I have experienced. All I can attest to is the ease with which I have begun to conquer my goals. It has certainly not been easy. It is one thing knowing better, it is entirely another thing doing better and the transition took a few months. For those who are intrigued enough by my words, I highly encourage you to check out Jocko’s podcast and keep an open mind. For those who are already living the disciplined life, let’s continue to get after it!

I wanna be the very best…in AI, robotics and neuroscience!

I’ve got to apply this actionable intelligence

Since reading So good they can’t ignore you by Cal Newport, I have been reflecting on what rare and valuable skills I should acquire/which field(s) I want to build passion in. As Cal explained so eloquently, people are not born with pre-existing passions, rather they develop passion as their skills improve, they gain experience and they get closer to mastery! My own limited experience concurs with his views, hence my identified passions are a result of previous time and effort, I was not born with them.

Inspiration (not motivation)

With this in the back of my mind, the way ahead is clearer thanks to:

Set of the sail

I am not sure of the origin(s) but over time, a hunger to understand myself and reality has been steadily intensifying! At it’s core, human perception of reality is entangled in the mechanics of our bodies which let us explore the world and simultaneously define the limits of our experience. The brain which receives and interprets information from the universe creates our model reality.

In a bid to get closer to the truth of who I am and how I work, my desire is to become the #1 in artificial intelligence, robotics and neuroscience so that I can create a strong AI. Whilst this is much easier said than done, I believe that the intersection of these closely related fields holds a treasure trove of ideas and wisdom. I am willing to invest as much time and energy as it takes. I want to see and become the person it will take to attain this summit. Why? Because I believe that…

Mastering yourself is true power ~ Lao Tzu

Time to get after it.

Fighting to carpe diem

The beginning

A few days before the end of 2015, I established what I believe is a crucial basis of a successful life. At the start it was tough to adhere to with some occasional truancies from the well-chosen habits. However, I am now at a point where not doing it is abhorrent! Why do I feel this way? Simply because the benefits have a powerful impact on the happiness and productivity I obtain from the day.

Below is the routine I’ve created and optimised through non-trivial experimentation and reflection:

System

  1. Body sculpting (commonly known as working out) – 1 hour
  2. Shower & grooming – 30 minutes
  3. Breakfast – 30 minutes
  4. Meditation – 15 minutes
  5. Foundation – 15 minutes
  6. Reflection – 15 minutes
    • Journal 5 things I’m grateful for
    • Journal my emotions
    • Journal my experiences
  7. Strategy – 15 minutes

Benefits

Since starting to make the above system an integral part of my life, I have noticed that I am always mentally enthused, emotionally calmer, spiritually serene and physically energetic throughout the day. My productivity has significantly improved as measured by the number of pomodoros I complete. I find it much easier to adhere to the rest of my schedule whilst also being more flexible and adaptable to unforeseen circumstances!

Focusing on Python

Tweaking the path

Reviewing my progress so far, I have come to the conclusion that I need to be more focused in terms of what I’m studying. Language-wise, I’ve worked with C, C++, Python and Haskell. This has been overwhelming because I think more progress could have been made if I had narrowed my pursuits considerably. Consequently, I have chosen to focus on Python as my main programming language with Haskell as a side language.

Gaining mastery over one language before tackling others will help considerably when it efficiently expanding my tool set especially since I’ll have a reliable model with regards to imperative, object-oriented and functional paradigms. My technical aids in this endeavour is mainly Learning Python by Mark Lutz. For a real world application perspective, Programming Python (by the same author) seems quite intriguing.

Project wise, I completed the data visualisation tutorial (Data visualisation tutorial code). I’m now working on understanding how to use APIs courtesy of http://newcoder.io/api/.

 

Process is key

Project

Today, I I started the data visualization beginner project on newcoder.io. I completed the setup necessary for the tutorials by getting pip (python install python) and getting started with python virtual environments courtesy of virtualenv. I really like being able to have an isolated development space where I can install packages without worrying about potential conflicts.

In terms of the tutorial, I finished coding up the parse section which means that from a CSV file, I can obtain a JSON-like object which is more amenable to manipulation within python. My plan is to complete each of the five tutorials before making my own projects based on what I’ve learned.

C/C++ and Haskell

With regards to my learning explorations in C, I am exploring an implementation of a linked list using pointers. With C++, I am progressing steadily through Programming principles and practice using C++ by Bjarne Stroustrup. I enjoy the fact that it reflects on the role that technology in society. One of the questions posed was ‘How many human activities can you think of which don’t involve a computational device either directly or indirectly?’. After pondering for a while, I was astounded by how embedded (haha) computers were in daily life. Sure, there are those without access to any devices but where access is available, even simple things like going for a walk involve trainers which were designed/manufactured in part using computers!

With Haskell, my main learning resource is Haskell: The craft of functional programming which I’m using to build a foundation before working through CS194: Introduction to Haskell according to the extremely learning path suggested here.

Philosophy

I am frankly irritated by the current state of my knowledge and by my lack of action. However, my philosophy has been affected by:

Whilst I am still reflecting on the wisdom of these treasures, I have decided to be realistic in the portrayal of this adventure. There is no point in waiting for substantial learning progress or for the grand post idea. Like developing software, learning is an actively iterative process. There are ups and there are downs, all of which are instrumental. Instead of focusing on the final product or destination, I will tinker, make and break. Perfection is impossible so I’ll just keep doing because excellence is achievable 😀

Positive actionable intelligence

Problem

We live in an unprecedented era where information is abundant, cheap and easy to access. With the internet and libraries, many have access to what is effectively a gold mine. However, taking advantage of this treasure is by no means easy. Why? We are overwhelmed. In our modern society, we are constantly under attack. From the news to radio, from twitter to hacker news, distraction is never more than a phone away.

In most people’s cases, the story is of consumption. Bites of knowledge which form no coherent discipline. Just article after unending article. I myself fell into the trap and have learned that more is not better. Quality does outweigh quantity. I look back on the information I have consumed and ask myself, “where is the action, where are the results?”. Unfortunately, I have nothing to show. Action has been the exception, rather than the norm.

This is wasteful and inefficient. Knowledge is being created at an exponential pace with everyone adding to the deluge. As the treasure mine grows, I must take advantage. I must take action.

Solution

As far as I’m concerned, knowledge without action is useless. Henceforth, I am going to adopt a positive actionable intelligence mindset. This means that I will seek and prioritise that which can be acted upon. I will break, tinker and hack ideas into digital reality!

Organising data creates information,
Processing information generates knowledge,
Applying knowledge builds skills,
Employing skills increases intelligence,
Reflecting with intelligence yields wisdom!