Breta Hajek

All my activities in one place–mostly dev stuff.

bretahajek.com

MOOCs — Massive Open Online Courses

The MOOCs (massive open online courses) are becoming a common thing, yet there are some doubts about them. To date, I’ve fully—with all assignments and exams—completed three courses. Yes, I finished another great course called Introduction to Computational Thinking and Data Science from MIT (on edX). But how to choose suitable courses? And is it worth taking them? And should we purchase the certificates from them?

MOOC - online course learning

Markus Spiske / ffcu.io

Importing Multiple TensorFlow Models (Graphs)

Updated 6th March 2018: importing operations by name.

There are a lot of great things about TensorFlow. BUT once I figure out how to import my trained model (graph), I wasn’t able to import second model and use it alongside with the first one. The importing is pretty slow and I don’t want to do it more than once. On the other hand, squashing everything into one model seems to me pretty impractical.

In this tutorial, I will show how to save and import TensorFlow model. Even more, how to import multiple models alongside.

Importing multiple TensorFlow Graphs

Quick Fix: No DISPLAY Variable while using Matplotlib on Android

A few weeks after releasing my tutorial for installing Jupyter Notebook on Android, I ran into this issue of Matplotlib: TclError: no display name and $DISPLAY environment variable, whenever I tried to use it in Jupyter Notebook on Android. This problem got me puzzled for a while because I knew it used to work when I was writing the tutorial. Luckily, there is a one-line fix for this issue. So, in case you don’t have time for any other details, just put this line at the beginning of the notebook:

%matplotlib inline
Matplotlib no display ERROR on Android

Check the example, it works!

Widgets for Jupyter, ipwigdets

I have worked with Jupyter for a while and I must say that it is a pretty unique experience. The ability to get outputs right away and visualize the data right beneath the code create a great environment for data analysis. And you can also install Vim key binding ?. But there is even more! There are widgets — buttons, sliders, drop-down menus, and more — that allows interactive interactions and make your code even more fun. For example, I use widgets for creating simple UI for classifying images and creating a data set.

Using interact from ipywidgets

Using interact from ipywidgets

BretaHajek.com

Big announcement to everyone! Recently, I moved to new domain bretahajek.com. The old domain will no longer work.

Make Your Habits Come True

Don’t worry, this blog post will not include any stupidly long and heartbreaking story how I become motivated. Instead, I would like to give you some tips from my personal experience how I stick to my new habits. You may not trust me, but keep in mind that I already successfully completed a few on-line courses and I still take new ones ? (just try to google the completion rate of MOOCs).

habits and goals

Photo: Markus Spiske / ffcu.io

Scanning Documents from Photos Using OpenCV

During my project I came across this problem: How to detect paper page on the photo and cut it out. There are already mobile apps providing this feature, but we could definitely learn something by building it and maybe even improve it. Even though this problem may seem complicated at first, the OpenCV can help us a lot and reduce the whole problem on a few lines of code. So, today I will give you a quick tutorial how to solve such a problem.

Page Detection (Scanning), using OpenCV

OCR Project Published on GitHub

LaTeX? Maybe Next Time

It is true! I am continuing with my weekly blog posts about my Machine Learning project. For the competition I have to write documentation 30 standard pages long. And this week it started!

Started Writing SOC

2016

Happy New Year! ?
It was an awesome year and I can’t wait to see what 2017 has to bring. Meanwhile, let’s review the 2016 year and what is going on right now. As motivation, here is the progress of unique visitors over last year (numbers are hidden ?).

Unique Visitors Progress

Jupyter Notebook with OpenCV on Android, Machine Learning

Seriously! I successfully installed Jupyter Notebook with OpenCV on my Android NO-ROOT tablet. This may sound crazy and useless, but I why not? The performance of the tablets these days is exaggerated — thanks game industry — so let’s use it for something meaningful. Personally, I have a solid tablet, but I never really used it. And that will change!

Tutorial is up to date with GNURoot Debian app version 0.6.8.

Android with Jupyter notebook OpenCV - Machine Learning

I really works! Jupyter notebook on Android

Electron Builder with AppVeyor and Travis CI, Memory King

I decided to repair the Travis CI build. What started as a small fix end up as setting up the whole automatic release system connected with GitHub releases. It sounds really cool, but the truth is that the electron-builder provided everything what we need. Then our task is “only” to set up everything correctly. So, today I will give you a step by step guide.

GitHub Draft Release

Don’t get stuck, Machine Learning

I heard a lot of stories about people, even whole teams, who works on machine learning problems, getting stuck for whole years trying to solve the problem. And then somebody else came using simple techniques and get much better results! There isn’t any definite way how to overcome such freezes, but we can learn from others mistakes.

Don't get stuck, machine learning

Page 2 of 4

2022 © Břetislav Hájek