Skip to main content
SimpleAI

SimpleAI

By satyabrata pal

I created the SimpleAI podcast with only one goal. To democratize machine learning and artificial intelligence by sharing one idea at a time.
Available on
Overcast Logo
Pocket Casts Logo
RadioPublic Logo
Spotify Logo
Currently playing episode

Episode 9 - Interesting software part#2 - Transducers.jl

SimpleAIDec 16, 2020

00:00
03:24
Episode10- Interesting Research Papers Which I Read IN 2020
Jan 25, 202106:27
Episode 9 - Interesting software part#2 - Transducers.jl

Episode 9 - Interesting software part#2 - Transducers.jl

This is episode 9 and today we are going to talk about an interesting library in the Julia programming language ecosystem.

The library about which I am going to talk is known as "Transducers". So What is this package named Transducers?

I first heard this term in the Julia language community. There is a package in the Julia ecosystem known as "transducers". As per the readme file of this particular package the definition is as follows-

"Transducers are transformations of "sequence" of input that can be composed very efficiently. The interface used by transducers naturally describes a wide range of processes that is expressible as a succession of steps." In short Transducers can be thought of as software which takes in some input in sequence and then it transforms them into sort of pipeline.

To know more about transducers I looked up the origin of this concept.

My search led me to a blog post by "Rich Hickey' who is the creator of the "Clojure" programming language. This particular blog post was dated August 6,2014 where he had laid down the idea of transducers for the "Clojure" programming language. The equivalent package in Julia is the port of the transducers from the Clojure ecosystem.

In this elaborate blog post, Rich Hickey gives a very simple explanation of a 'transducer'. Which is as follows--

"Transducer is a function that takes one reducing function and returns another".

Building on this definition we can further simplify our earlier description of transducers to this--

" A transducer takes in a function, computes it's output, combines the function with another input in the sequence (which is a fucntion) and gives back a new reducing function."

So, this resembles a pipeline but the Real power of transducers comes from the fact that they are unaware of the input being fed to them and the job which the input objects are supposed to do.

This is a very thoughtful design due to which there is an inherent decoupling present in the Transducers, they have this plug and play ability which makes it easier to customize this in any package/project.

So, this was all about transducers and why I find them interesting.

References

https://cognitect.com/blog/2014/8/6/transducers-are-coming

https://juliafolds.github.io/Transducers.jl/dev/


How To Show Your Support To My Work🤗

Creating a content requires a lot of research, planning, writing and rewriting . This is important because I want to deliver practical content to you without any fluff.

If you like my work and my content and want to support me then the following are the ways to show your support →

  • If you like my work then click on this link to Buy me a coffee.
  • Buy my deep learning course at udemy. Just click on the course link in the show notes and get awesome discount on my deep learning course.
  • Subscribe to my publication and share it across so that more people can discover it.
  • Subscribe and share my podcast “SimpleAI” on google podcast or any other podcast player of your choice. Don’t forget to give it a 5 star.
  • Subscribe to my newsletter.
Dec 16, 202003:24
Episode 8- How To Find Deep Learning Project Ideas

Episode 8- How To Find Deep Learning Project Ideas

Nov 21, 202006:44
Episode 7-Interesting software part1 - Fastcore The Underrated Python Library

Episode 7-Interesting software part1 - Fastcore The Underrated Python Library

Interesting software part1 - Fastcore The Underrated Python Library
First of all apologies for the audio quality of this episode. Due to some reasons I am not bale to record at my original place and on top of it I am still not able to procure quality recording equipment due to budget constraints. I am trying to improve the audio quality of upcoming episodes as soon as am able to fund myself to buy audio equipment.
This episode onwards I have started a new series where I would be finding interesting python and Julia projects and would be talking about it.

The first library about which I want to talk about is Fastcore. Fastcore is a library developed by Jeremy Howard , co-founder of fastai and creator of the popular fastai deep learning library. The Fastcore library extends the python programming language and supercharges it with magic.

One of the capabilities which it adds to python is type dispatch whereby you can have multiple functions with the same name but different behavior based on the input they receive. Now this capability is common in languages like Julia but this was unheard of in python before fastcore came out.

Another thing is that fastcore provides function composition. This is a powerful technique which allows you to chain together different functions to create a sort of pipeline and move data through this pipeline. With fastcore, function composition becomes almost magical .

One more beautiful thing that fastcore provides is monkey patching through a decorator. Monkey patching is not a new thing in python. You can learn more about monkey patching by going to the link given in the show notes. Fastcore makes it possible to do monkey patching with a decorator. In short, fastcore reduces the boiler plate and introduces patterns and features from many other languages into python.

Do try out fastcore and let me know via comments or on my twitter handle you thoughts about this awesome library.

Listen to SimpleAI on google podcast or any other podcast player of your choice and do give it a 5 star. Subscribe to it and share it across so that others can also discover the contents which I post here.

It's goodbye for now and we will meet next time with some more interesting stuff.
Read more about Fastcore-
fastpages.fast.ai/fastcore/
Subscribe to my blog at medium.com/ml-and-automation.
Nov 01, 202002:49
Episode6-End-To-End Object Detection Using DETR By Facebook AI

Episode6-End-To-End Object Detection Using DETR By Facebook AI

Transformers are a familiar name in NLP related tasks. If you search over the internet for the term NLP the only neural network architecture that you would find would be Transformers based or at-least that’s what my experience have been.

Yet, Transformers have only been showing off their powers in the NLP area and their impact on computer vision problem was next to none. At least till the month of May’20.

This was the time when the researchers at Facebook AI flexed their brain muscles and finally combined the power of Transformers with regular CNN based architecture to the problem of Object detection.

In Today's show we would be exploring the related research paper.

A written version of this show is also available as a story on my publication.

How To Show Your Support To The Podcast

Creating a content requires a lot of research, planning, writing and rewriting . This is important because I want to deliver practical content to you without any fluff.

If you like my work and my content and want to support me then the following are the ways to show your support →

  • If you like my work then click on this link to Buy me a coffee.
  • Buy my deep learning course at udemy. Just click on the course link in the show notes and get awesome discount on my deep learning course.
  • Subscribe to my publication and share it across so that more people can discover it.
  • Subscribe and share my podcast “SimpleAI” on google podcast or any other podcast player of your choice. Don’t forget to give it a 5 star.
  • Subscribe to my newsletter.
Recommended Reading List
Aug 15, 202004:47
Episode5 - What Is Transfer Learning?
Jul 19, 202004:03
Episode 4: What Is Machine Learning
Jun 22, 202006:16
Episode 3: How To Start Learning Machine Learning

Episode 3: How To Start Learning Machine Learning

Machine learning is the hottest technology trend nowadays and everyone wants to learn about this amazing technology. Yet often times we don't have a clue about where to start. I was pondering over this same question when I first decided to explore this field. In today's talk let me share my experiences with this regard and I hope that it would help you to get started as well. Links To Refer--> My blog for deep learning tutorials.  Introduction to Deep Learning.  Fastai deep learning course.
Jun 08, 202005:04
Episode 2: BERTweet- The BERT Model That Learns How To Tweet

Episode 2: BERTweet- The BERT Model That Learns How To Tweet

Before I start any further I would like to request you to bear with me if you notice any glitches in audio quality or any form of grammatical errors in this podcast. I am just starting out and learning the tools of the trade so it is possible that there might be some misses while recording this episode. However, I am trying to improve myself with each episode and you can expect better quality in upcoming episodes.

In this episode I talk about a research paper named BERTweet: A pre-trained language model for English Tweets . This paper details the creation of a new BERT model named as BERTweet. To know more continue listening to this episode.

As promised here are some important links to satisfy your craving to know more-->

  1. RoBERTa model- RoBERTa
  2. Code implementing BERTweet - Code

You can also visit my blog at medium.com/ml-and-automation. Here I publish my other cool works.

I also host a deep learning course at Udemy and you can check it out using this link.

May 29, 202005:35
Episode 1: Show Intro In A Hurry

Episode 1: Show Intro In A Hurry

Hello everyone. This is my first podcast ever. So, please bear with me if there are some glitches in audio. I am trying to improve myself and the upcoming episodes would be better. 

You can also visit my blog at medium.com/ml-and-automation. Here I publish my other cool works.

I also host a deep learning course at Udemy and you can check it out using this link - https://www.udemy.com/course/introduction-to-practical-computer-vision-using-fastai/?referralCode=B0832056E641FFF60BC4

May 29, 202001:09