Has Julia met your need for AI and ML?

Hello,
Has Julia met your AI and ML needs? I mean, have you ever regretted choosing Julia when doing AI and ML projects?

Thank you.

no

1 Like

it didn’t, but then I submitted a PR and now it does

2 Likes

Hi,
Thank you so much gor your reply
Why Python is still mainstream for most AI? Why did you choose Julia?

The reason Python is used, is because it’s a good interface to high-speed code written in other fast languages. Julia can also be a good interface, and that faster language. Training massive AI/ML models relies on libraries like Microsoft’s DeepSpeed (“Python 69.0% C++ 20.3% Cuda 9.8%”, Julia could theoretically have replaced all the languages, the numbers are for source code, for runtime about 0% is Python), for distributed training, this is only of interest to big companies that can afford to do massive training of AI models costing millions of dollars.

AI is divided into many subfields, Machine learning (ML), natural language processing (NLP), neural networks/deep learning, and large-language models (LLMs) (what I had in mind for mainstream, fuelling so called chatbots like ChatGPT), text-to-image or video models (like LLMs based on transformer models), computer-vision, reinforcement learning, chess and poker playing AI etc.

Mainstream AI is transformer models, a type of machine learning application. The mainstream is already going to Mamba and other variants, and transformer models are being upgraded to KAN-based:

From yesterday:

While you already see KAN in “100.0% Python”, that’s sort of white lie, if you look at the dependencies “the requirements.txt” file, i.e. the heavy lifting is always done by non-Python, faster languages like C, or increasingly Julia.

If you’re a user of any of the AI models, or code, then Python is a good option, if you want to develop future best AI, then Julia is the best option.

For beginners I recommend this book (written by then 15-year old genius):

I bought it, and this one also seems good:

1 Like

“AI and ML” is such a broad topic that it’s impossible to answer this.

What kinds of tasks do you want to do?

2 Likes

I’ll ask back, what are your AI (or ML) “needs”? Do you want to use AI, or develop AI? Either way you can use Julia, especially for developing AI. You are never paining yourself in a corner by learning Julia, even if you abandon Julia it will help you understand e.g. Python. That said the reverse is also true for learning Python or other languages.

Hi,
Thank you so much for your reply.
So it has covered all your needs. What project have you done with Julia?

Hi,
Thank you so much.
So you don’t need to use other languages. What was your project?

Hi,
Thank you so much for your reply.
I want to learn AI programming and then define a project. I am a newbie.

Hello,
Thank you so much for your reply.
At first, I just want to use AI, but maybe in the future I will think about its development.

I have never regretted using julia but I also knew why I chose it when I did. As a rule of thumb: if you’re doing semi standard deep learning, even research thereof I would pick Jax or pytorch in Python. If you have more esoteric needs then julia is awesome as it can be quite performant without the need to commit to a given ecosystem like Jax or pytorch. It’s grossly over simplified of course but it’s a good rule of thumb. :blush:

6 Likes

Hi,
Thank you so much for your reply.
Why doesn’t Julia have something like Jax or pytorch? Can you call Jax or pytorch in Julia?