Is Rust the New King of Data Science?

  Рет қаралды 141,006

Code to the Moon

Code to the Moon

Күн бұрын

Пікірлер
@NoBoilerplate
@NoBoilerplate 2 жыл бұрын
This is what it's all about, clear, useful Rust tutorial that also features pizza. Wonderful! Thanks for the shout out, too! 🙂
@amjadiqbal478
@amjadiqbal478 2 жыл бұрын
Nice to see your comments team No Boilerplate.🐯🙏🇵🇰
@codetothemoon
@codetothemoon 2 жыл бұрын
Tris - thanks for your support of the channel and all that you do for this fantastic CS KZbin community!
@NoBoilerplate
@NoBoilerplate 2 жыл бұрын
@@amjadiqbal478 Thank you! It's just me, Tris, though!
@NoBoilerplate
@NoBoilerplate 2 жыл бұрын
@@codetothemoon Right back at you, Ken, grand job you're doing here - thank you very much!
@amjadiqbal478
@amjadiqbal478 2 жыл бұрын
Tris, Surprised. Actually your channel is among the top Rust rankings, so I thought there would be a team. But you turned out to be a one man army👌. Love you.
@heredento
@heredento 2 жыл бұрын
I love how you responded the video title just at the start and then proceded to elaborate, I've always wanted to see a channel do that
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks, glad you liked it! 😎
@justin3594
@justin3594 2 жыл бұрын
The answer is always no when a video name asks a question.
@kennethbeal
@kennethbeal 2 жыл бұрын
@@justin3594 "Is the answer always no when a video name asks a question?", next video title. :)
@justin3594
@justin3594 2 жыл бұрын
@@kennethbeal or “What is the answer? No.”
@Microphunktv-jb3kj
@Microphunktv-jb3kj Жыл бұрын
why he is saying tek? .. annoying.. its clearly TEX , not TEC or TEK.. is he dyslexic or smt?
@wtcxdm
@wtcxdm 2 жыл бұрын
I started my rust learning because of No Boilerplate!
@ahmadolukotun3884
@ahmadolukotun3884 2 жыл бұрын
Me too...got me hooked
@adrianlazar1454
@adrianlazar1454 2 жыл бұрын
same
@mpogrzebski
@mpogrzebski 2 жыл бұрын
Haha same
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice!! I find it great how a video or channel can inspire and change the trajectory of one's journey. It's one of the many reasons I love this platform!
@Ma1ne2
@Ma1ne2 2 жыл бұрын
Same here :D
@robmulla
@robmulla 2 жыл бұрын
Amazing video! I make data science content using python and was thinking about trying out Rust during a live stream. This video was a great starting guide. Subscribed!
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks so much Rob! I saw a bit of your live stream last night using Rust - fantastic work. I've subscribed to your channel as well!
@robmulla
@robmulla 2 жыл бұрын
@@codetothemoon Thanks! I quickly found out there is a steep learning curve with Rust from python, but I can see why people love it. Keep making great videos. Link to my stream in case anyone is interested: kzbin.info/www/bejne/lXyul4KrhM6dgLs
@Rabixter
@Rabixter 9 ай бұрын
Nice intro. I like the honesty and that you didn't beat around the bush lol.
@dhananjaysingh4945
@dhananjaysingh4945 2 жыл бұрын
First time I heard the conclusion of title at the very start of video. That's a good content for me
@codetothemoon
@codetothemoon 2 жыл бұрын
Hah, thanks! Hopefully you found the long answer valuable too!
@dhananjaysingh4945
@dhananjaysingh4945 2 жыл бұрын
@@codetothemoon Is there any series you have done?...from start to finish a rust project. I think people like me like to build something by looking and then reproduce it by modifications. Subbed for the upcoming content anyways😍
@rodolfoblasser3329
@rodolfoblasser3329 Жыл бұрын
I believe the value of Rust in DS is to actually build your own implementations (models, algorithms, etc.). At a low-level, you have the ability to understand core calculations and decide what architectures satisfies your needs.
@Dominik-K
@Dominik-K 2 жыл бұрын
Decision trees are amazing, and I'm glad to see rust be able to calculate those. The best feature is actually it being based purely on statistics and the algorithm being immediately explainable. Random Forests and similar techniques building up on decision trees can help to predict outcomes in a human understandable way. Which can be good for some regulatory fields as well, where explainablity of conclusions is necessary
@codetothemoon
@codetothemoon 2 жыл бұрын
I agree with all of this! Neural networks seem to suck all of the mindshare away from other approaches - while it's the only game in town for the more ambitious use cases, they do have their downsides. I feel like Decision trees (and RF) are at a great cross section of performance and human understandability that can be a great fit for many applications.
@someonespotatohmm9513
@someonespotatohmm9513 2 жыл бұрын
Neural networks is what you use when you don't know what to use anymore. There is a lot of problems we have no good solutions for. But also a lot of cases where ppl didn't think about ol' reliable.
@ScottBrown124
@ScottBrown124 2 жыл бұрын
Random forests aren't particularly explainable at scale either. You *can* explain exactly how a decision was made, but that won't necessarily give you any insight into why the output space was partitioned the way it was in a way that means anything to a human.
@TAP7a
@TAP7a Жыл бұрын
@@ScottBrown124 there are great ways to explain a random forest. SHAP values can help a little bit, but that's true of NNs, and they aren't great. Partial dependence plots can be useful if you're only looking at a single record. But RFs have a cool feature they share with decision trees which is the Gini impurity, or whichever other metric you're using to optimize your splits. In short, you can follow a record down each decision tree and aggregate the change to the impurity induced by splitting on each variable, so in the end you have the Conditional Feature Contributions, or the total impact of each feature on the decision. On its own, it won't be able to give you a scorecard model printout or something as easy as a logistic regression, but here's an example. If you were working on a tax fraud detection problem the CFCs might indicate that the income received from benefits in kind, capital gains, having a dependent, the total tax paid, and the submission date would contribute most to a positive identification, which would be passed on to the investigations team as starting points. They might then find that actually there had been some chicanery committed with the reporting of capital gains received on highly appreciating benefits in kind (I don't know tax evasion strategies) that resulted in underpayment, but the dependent and submission date were spurious correlations. You can even then aggregate CFCs to all training records in a given class or bin and identify what features were most frequently the drivers of, or had the largest sum of contributions towards, making a prediction that puts a record in that outcome On top of CFCs you have feature importance inherent to the calculation of a bootstrapped model, which provides a level of global interprability. There's even the nuclear option, applicable to any predictive model, where you just train a single decision tree on the output of the main model as a surrogate, which should explain the (likely simplified) relationships discovered by the main model. Anything more complicated than a single CART tree, subset of a GLM, or _maybe_ an ARIMA model if your customers are really technical, is not going to be able to confidently state that for a particular record the combination of features X, Y, and Z is exactly the driver of a decision. You've always got to compomise. For my taste, unless you're working on a very hard and very noisy problem like LLMs, recommendation algos or image processing, the compromise required to run an NN is too much. If your problem is a classification or regression on tabular data, a NN is probably a sledgehammer for your nut. But for me, the compromise offered by a Random Forest is actually very palatable
@omaredumx
@omaredumx 2 жыл бұрын
"The short answer is... No" Loved that intro 😂
@codetothemoon
@codetothemoon 2 жыл бұрын
haha thanks, I like to cut to the chase 😎
@kodee2
@kodee2 2 жыл бұрын
Sick video, also a big fan of no boilerplate. I think python has a place still as a high level language, but underlying libraries like pydantic used in FastAPI, to parse http requests, are already being rewritten in rust. Exciting to see it’s adoption
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks @kdodee2! I am excited as well!
@LtdJorge
@LtdJorge 2 жыл бұрын
All high performance Python libs are written in C/C++/Fortran, so Rust makes a good candidate 😊
@vectoralphaSec
@vectoralphaSec 2 жыл бұрын
All Rust needs is really stable and useful standard libraries for wide industry use in AI, ML and Data Science as well as Computer Graphics/ Rendering and Game Development and i will use Rust as my main language. Hopefully one day.
@codetothemoon
@codetothemoon 2 жыл бұрын
I'm hoping for this as well!
@jeremykothe2847
@jeremykothe2847 2 жыл бұрын
Python has too much traction, even *if* rust were a more approachable language for the kinds of people that work in ML. I've spent the last week playing with tch, a rust pytorch binding, and while I was impressed as hell at how well it worked and how easy it was to use, and of course how fast, memory efficient etc it was, python is something you can teach to a non-programmer in a very short while. Rust...
@jeremykothe2847
@jeremykothe2847 2 жыл бұрын
But here's hoping! Remember for Data Science in general, R is actually more used than Python. It's only ML/nets where Python is the king.
@jeremykothe2847
@jeremykothe2847 10 ай бұрын
@mariobroselli3642 so true. And, frankly, it's an ugly language :D
@jeffg4686
@jeffg4686 2 жыл бұрын
@1:50 - 20 lines of code is genius for training. Love that style. When people go scrolling up and down, there's no way to keep track. Gotta keep it simple and tight. Have you made your way into building out a NN yet? Would love a video on that if you have experience with that. Would like to see uses outside of "object type identification" if you know of some interesting uses. Quite amazing what's being done out there with them.
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks Jeff!
@stanrock8015
@stanrock8015 Жыл бұрын
NoBoilerplate is a great channel as well. Lots of good Rust info out there.
@codetothemoon
@codetothemoon Жыл бұрын
I agree he is fantastic!
@victorpinasarnault7910
@victorpinasarnault7910 2 жыл бұрын
I was thinking in that point this week. Thank for your video.
@codetothemoon
@codetothemoon 2 жыл бұрын
thanks for watching!
@adsick_ua
@adsick_ua 2 жыл бұрын
I like your high contrast and minimalist VScode setup in the video.
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks!
@arkadiuszpaterak
@arkadiuszpaterak 2 жыл бұрын
What theme is it?
@TCMx3
@TCMx3 2 жыл бұрын
Rust may be increasing in its representation, but this is 15 years too early to even challenge Python. And it's not because Rust isn't a great language, or Python is so great. Most new DS are scial and hard scientists, not CS majors. Trust me, Ive tried, but getting DS to even trying a "difficult" compiled language is like pulling teeth. Doesn't even matter if it's actually hard.
@codetothemoon
@codetothemoon 2 жыл бұрын
Maybe you're right! There's definitely something to be said for Python's simplicity, which - like you said - is especially great for folks without a CS background
@AhmedIsam
@AhmedIsam 2 жыл бұрын
@@codetothemoon @TCM I don't think Rust will ever get there. Use rust if you want a single binary that wraps everything. This is probably not what you want when you are constnantly experimenting with new ideas (which is what a scientist's life is all about, including data-scientist). That's why scripting languages are popular among them. They want the interactivity of the console. I can only imagine a niche application for Rust at production time, definitely not development time.
@someonespotatohmm9513
@someonespotatohmm9513 2 жыл бұрын
@@AhmedIsam automation is probaply that "niche". A lot of ppl who learned coding while doing and need performance.
@qx-jd9mh
@qx-jd9mh 2 жыл бұрын
The long compile times of Rust make data science tasks inane. You want fast feedback loops. Just use Julia so you don't need to deal with the borrow checker.
@qx-jd9mh
@qx-jd9mh 2 жыл бұрын
@@AhmedIsam lol if all you have is a hammer, everything looks like a nail? There are plenty of ways to deploy data science code without Rust
@IanRiley915
@IanRiley915 2 жыл бұрын
Another great thing to look at for rust in DS would be the Python FFI bindings. I think rust could have a huge impact on the DS community that way.
@TCMx3
@TCMx3 2 жыл бұрын
you can easily generate them with pyo3 or unifii. There are others too, I'm sure.
@codetothemoon
@codetothemoon 2 жыл бұрын
I hadn't considered this!
@astronemir
@astronemir 2 жыл бұрын
@@codetothemoon re-write the decision tree algorithm in Rust, would be dope!
@holthuizenoemoet591
@holthuizenoemoet591 2 жыл бұрын
the reasons i still pref Python for data-science are the following: ease of readability, useful for non CS scholars, and the ease of prototyping.
@codetothemoon
@codetothemoon 2 жыл бұрын
Very valid reasons!
@igormriegel
@igormriegel 2 жыл бұрын
Duuuudee, you're missing Polars, it is the Pandas for Rust.
@codetothemoon
@codetothemoon 2 жыл бұрын
Someone else pointed this out as well, I'm going to look into it! What's it like using Polars data frames as input for the various Rust ML crates?
@igormriegel
@igormriegel 2 жыл бұрын
@@codetothemoon They're poised to be the de facto standard, they implemented the Apache Arrow memory format, which came to guarantee compatibility among languages. Their implementation has Python bidings and Javascript(Node Js) bidings as well, they are awesome and truly performant
@tellezgerardoruben5202
@tellezgerardoruben5202 7 ай бұрын
That was the only part I was missing.
@flogginga_dead_horse4022
@flogginga_dead_horse4022 2 жыл бұрын
Thanks for the no boilerplate link too.
@codetothemoon
@codetothemoon 2 жыл бұрын
Glad you're checking it out!
@dinophage
@dinophage 2 жыл бұрын
Love No Boilerplate and the algorithm knows it so now I am here too :) or maybe it's because I'm a data scientist
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice, I am very happy to have more data science folks here!
@NamasteProgramming
@NamasteProgramming 2 жыл бұрын
No boilerplate is amazing for explaining rust to others
@codetothemoon
@codetothemoon 2 жыл бұрын
I agree!
@HyperFocusMarshmallow
@HyperFocusMarshmallow Жыл бұрын
Rust is great when you want to impose lots of structure on your data and keep types under control. But it seems like in machine learning you kind of want to already format your data into being just an array of numbers so you can unleash maths libraries on it. That said, this seemed more convenient than I had expected. I’ve been staying in python land because I’ve felt forced to. I’ll probably still stay in python land for this kind of stuff, but what you showed here at least indicate that the option is there. Mostly seem like the main difference is that I’d have to add a few “to_owned()” and “unwrap()” though, but the functional chaining was very nice.
@ChronicTHX
@ChronicTHX Жыл бұрын
You can do both in rust. This is not Java.
@KirbyZhang
@KirbyZhang Жыл бұрын
I thought he'd at least try to use a Rust REPL or at least explain how usable it is or isn't.
@anishbhanushali
@anishbhanushali 2 жыл бұрын
Until I see rust being used for CUDA or ROCm gpu natively as c++, I'll still be little skeptical about Rust's entry in ML domain. that being said, I would love to see more and more cpu intensive stuff ( looking at you dask !!) tobe ported in rust.
@codetothemoon
@codetothemoon 2 жыл бұрын
Yeah it seems like Rust GPU support is not great but is in the works, it will be interesting to see how things pan out
@katech6020
@katech6020 2 жыл бұрын
You may want to take a look at rust-gpu library, it is still early
@anishbhanushali
@anishbhanushali 2 жыл бұрын
@@katech6020 thanks ... I'll take a look
@harleyspeedthrust4013
@harleyspeedthrust4013 2 жыл бұрын
I have been using it for CUDA, there's a family of crates ("cust", "rustc_codegen_nvvm", "cuda_builder", "nvvm") that allow you to write and execute CUDA kernels all in rust.
@Lord2225
@Lord2225 2 жыл бұрын
Rust have quite promising CUDA support. Overall cuda c/c++ is llvm based. Unfortunelty unofficial and not all features are avalible (like almost all librares are not ported, and even some basic instructions are still unsuported, but it is still quite an achivment cus C++ needs special compiler&syntax for it.
@hershreddy9154
@hershreddy9154 2 жыл бұрын
What a great intro!
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks, glad you liked it!
@y1ink
@y1ink 2 жыл бұрын
❤️ for giving the answer in 5 secs rather than riding out for 10 mins
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks, ❤️ for watching!
@victorpinasarnault7910
@victorpinasarnault7910 2 жыл бұрын
Python is still the preferable choice, but, with no doubt, Rust lang will play a important role in data science field in the near future.
@codetothemoon
@codetothemoon 2 жыл бұрын
I agree!
@jamespower5165
@jamespower5165 2 жыл бұрын
The main reason Python is so big is because it is easy to program and so more people program on it and so it has an enormous library of resources you can just import. Rust is fast and an attempt has been made to make it easier to code with. But it won't really be as welcoming to programmers and so will struggle to build a library of the same size. So for anything that's not really hard-core computer science, which just uses computer science, like data science, Python will be hard to beat
@itellyouforfree7238
@itellyouforfree7238 2 жыл бұрын
well no, actually Julia is the preferable choice
@thedatajanitor9537
@thedatajanitor9537 2 жыл бұрын
@@jamespower5165 They don't really understand James. Most of these are kids who don't work in the real-world. The gold standard in applied machine learning is Python and that's not going to change. I wouldn't try to convince people who really have no clue... like almost everyone on this channel. I'm not sure if the channel owner allows links to other channels but if he does.. hear you go. This is my answers. kzbin.info/www/bejne/g2qliqV-otZ1mpI
@noabstruction
@noabstruction 2 жыл бұрын
I just loved the fast 20s of this video
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks, glad you liked it!
@analisamelojete1966
@analisamelojete1966 2 жыл бұрын
Here because of No Boilerplate! Also, prepare for the amount of “Data Scientists” and “analysts” moving to rust 😂
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice, really great to have you here!
@analisamelojete1966
@analisamelojete1966 2 жыл бұрын
@@codetothemoon Thank you!
@analisamelojete1966
@analisamelojete1966 2 жыл бұрын
@@codetothemoon Btw, Do you offer some online rust courses on platforms like Udemy? I’ve been trying to find a tutorial on how to build a simple CRUD Api with Warp, Mongo and Tokio. However Routing and how to keep a database connection has been complicated for me. Many tutorials out there are a clone of one another and have too much boilerplate.
@ivandashkevich3398
@ivandashkevich3398 2 жыл бұрын
Fun fact: on 0:37 there is green book to the left, which title translates from russian like "Troll tamer" Easter egg trolling
@codetothemoon
@codetothemoon Жыл бұрын
lol wow, I'd like to read that book (preferably an english translation)
@starlord0208
@starlord0208 2 жыл бұрын
What is the name of this wonderful color theme?
@codetothemoon
@codetothemoon 2 жыл бұрын
Sonokai! 😎
@starlord0208
@starlord0208 2 жыл бұрын
@@codetothemoon thanks!
@CripplingDuality
@CripplingDuality 2 жыл бұрын
I want it to be Elixir but it'd be nice to have some competition in this space generally
@codetothemoon
@codetothemoon 2 жыл бұрын
I hadn't heard of Elixir being a big contender in the DS space - do you think it's a good fit for that purpose?
@hidekxyz
@hidekxyz 2 жыл бұрын
@@codetothemoon You don't see elixir in general in regard to this purpose, since elixir's main utility is for highly concurrent web applications, however, elixir's creator Jose Valim is working on a series of tools and libs for DS, you can search numerical elixir (or nx)
@CripplingDuality
@CripplingDuality 2 жыл бұрын
@@hidekxyz I (and I think Jose too) would say Sean Moriarty is more the prime mover but yeah Nx is very promising, along with Livebook, Axon, and Explorer they represent a big push to try and compete in that space, though it's of course very early days.
@CripplingDuality
@CripplingDuality 2 жыл бұрын
@@codetothemoon I think as a language it has potential, as it doesn't suffer from many of Python's limitations. But the ecosystem, and and I don't just mean the ubiquity of libraries for ML operations, but the capabilities of Nx, are still behind in some regards. It's nonetheless catching up quickly, so hopefully we will see a real race happening soon enough :)
@МухиддинМахмудов-б5щ
@МухиддинМахмудов-б5щ 2 жыл бұрын
Thanks for the short answer at the beginning 👍
@codetothemoon
@codetothemoon 2 жыл бұрын
Of course, thanks for watching!
@generalyoutubewatching5286
@generalyoutubewatching5286 3 ай бұрын
Can’t stop laughing. Rust for data science.
@codetothemoon
@codetothemoon 3 ай бұрын
🫢
@AllOfMyWat
@AllOfMyWat 2 жыл бұрын
two of my favorite rust folks!
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks!! 😎
@alst4817
@alst4817 22 күн бұрын
In order for Rust to be interesting for exploratory data science it would need a Julia style REPL. Oh, and dynamic types. So, no. Can it be a replacement for c++ in mature maths heavy modelling? Definitely it can!
@codetothemoon
@codetothemoon 21 күн бұрын
great point about the REPL - I hadn't thought about this. I suppose that can be a key component for data science work.
@alst4817
@alst4817 21 күн бұрын
@@codetothemoonI spend a decent amount of my time at the REPL playing with the data before modelling. Julia is pretty good for this, but a fast binary would be great
@valdemarkjaer
@valdemarkjaer Жыл бұрын
Julia has better chances to make a difference in DS. Julia and Rust together can be unbeatable.
@codetothemoon
@codetothemoon Жыл бұрын
Julia seems great from what I've seen. But now Mojo seems like it might become a serious contender....
@LowestofheDead
@LowestofheDead 2 жыл бұрын
Rust is effective when you know exactly what to do, and need to do it as efficiently as possible. In Data Science you don't even know what you're doing, so you need prototyping - which is the main thing that Python is good at.
@codetothemoon
@codetothemoon 2 жыл бұрын
100% agree!
@CaioMizerkowski
@CaioMizerkowski 2 жыл бұрын
Can you talk about Polars? I love to use it in Python in my projects.
@codetothemoon
@codetothemoon 2 жыл бұрын
I've put it on the todo list, I'll give it a spin at some point!
@_hologram
@_hologram Жыл бұрын
Could I ask what keyboard are you using? Sounds great, bold and quiet :)
@codetothemoon
@codetothemoon Жыл бұрын
I believe for this video I was using a Keebio Iris (keeb.io/collections/iris-split-ergonomic-keyboard/products/iris-keyboard-pre-built) with Durock Shrimp switches. Lately I've been using a Corne keyboard with Gateron Red Pros (which are a bit louder)
@_hologram
@_hologram Жыл бұрын
Sorry, I realized later that you had already answered the same question, should have looked before in the comments. Thanks for answering
@arjanmarku3895
@arjanmarku3895 2 жыл бұрын
I just love the sound of that keyboard. What model is that and what switches are you using?
@hnahapet
@hnahapet 2 жыл бұрын
Yes please
@Don-ix2ok
@Don-ix2ok 2 жыл бұрын
Sounds like brown tactile
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks! It's actually a Keebio Iris with Durock Shrimp Silent Tactile switches. Full disclosure - I struggled a bit typing during this video because I was still getting used to it 🙃 but it's a fantastic board.
@mageprometheus
@mageprometheus 2 жыл бұрын
Thanks. This looks great.
@codetothemoon
@codetothemoon 2 жыл бұрын
thanks for watching!
@akin242002
@akin242002 2 жыл бұрын
I dought it. With GCP & Azure being the biggest data engineering software providers, they tend to use different programming languages. C# and Python for Azure's data factory. Java, Kotlin, Go, and Python for GCP Dataflow. Google will always support their languages first (Kotlin & Go).
@codetothemoon
@codetothemoon 2 жыл бұрын
Maybe you're right - it'll be interesting to see how things play out
@ARS-fi5dp
@ARS-fi5dp 2 жыл бұрын
Thank you for the Useful contents
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks for watching, glad to have you here!
@ehsankhorasani_
@ehsankhorasani_ 2 жыл бұрын
the king of data science is Go!
@codetothemoon
@codetothemoon Жыл бұрын
interesting, i haven't tried using Go for it!
@anonymoustechiie
@anonymoustechiie 2 жыл бұрын
Liked for the answer in beginning
@codetothemoon
@codetothemoon Жыл бұрын
glad you liked it!
@_drakz13
@_drakz13 Жыл бұрын
Good video, the answer is just in first 3 seconds directly.
@codetothemoon
@codetothemoon Жыл бұрын
thanks, I like to get to the point!
@robinmoussu
@robinmoussu 2 жыл бұрын
Thanks for making me discover @NoBoilerplate!
@amjadiqbal478
@amjadiqbal478 2 жыл бұрын
It is really wonderfully stuffed on Rust.
@amjadiqbal478
@amjadiqbal478 2 жыл бұрын
NoBoilerplate; derived from the progammatic terms.
@codetothemoon
@codetothemoon 2 жыл бұрын
You're welcome, glad you're checking it out!
@ibrahim.3999
@ibrahim.3999 2 жыл бұрын
good to see rust growing this fast 🦀 learn something new! anyway which theme you're using? thanks :)
@codetothemoon
@codetothemoon 2 жыл бұрын
glad you got something out of it! The theme is Sonokai, though it appears a bit more contrasty in the video because of the color grading. In any case it is currently my favorite theme 😎
@ibrahim.3999
@ibrahim.3999 2 жыл бұрын
@@codetothemoon going to be my favourite too 😀
2 жыл бұрын
will these crates implement alphatensor's new faster matrix multiplication algos?
2 жыл бұрын
also there is a new number type called "posit", it would be great if you could showcase these new stuff
@codetothemoon
@codetothemoon Жыл бұрын
not sure!
Жыл бұрын
@@codetothemoon would be cool tho
@dankotov1045
@dankotov1045 11 ай бұрын
I understand its not reasonable to expect you answering all debugging realted questions, however just on the off chance you reply to this. For the life of me, I can not figure out how to transform custom datatypes to be used with linfa. For example - I have a Vec
@fra4897
@fra4897 2 жыл бұрын
python is the king of DS cuz (most) DS people don't know how to code so they copy & paste stuff and create spaghetti code I am a ML engineer with strong SE background Love the content
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks for the kind words!
@japrogramer
@japrogramer 2 жыл бұрын
How did you set up the auto complete and can the same complete be done on vim?
@katech6020
@katech6020 2 жыл бұрын
you can use rust-analyser, treesitter and vim-lsp to get the complete rust IDE experience
@codetothemoon
@codetothemoon 2 жыл бұрын
This was VSCode so I just installed the rust-analyzer plugin. I use neovim normally which has a built-in LSP, I think for regular vim you need to use an LSP plugin
@Naruto-oc6mi
@Naruto-oc6mi 10 ай бұрын
i think python for scientist computing is the best than rust, because the syntax is just beautiful, no complex rule, so you can focus on the algorithm you are building, and for the performance most of heavy task in python is written is c++ code (mostly), c, and cuda, for example the most popular machine learning framework in python: tensorflow and pytorch are written in c++ and cuda (for gpu programming), python is just binding with them (as the user interface for easy to use) and other library like numpy the core is written in c, and opencv the core is written in c++. well maybe there are still little time consumed when connecting the python frontend to the c++/c backend. when the model is build, it can be build to various format, eg : special format that can be used to reedited the architecture, final format aka binary code like .tflite and .onnx
@Mvanec
@Mvanec 4 ай бұрын
Do you have this up on Github anywhere?
@codetothemoon
@codetothemoon 4 ай бұрын
I believe this is it! github.com/MoonKraken/youtube/tree/main/linfa_test
@juliansteden2980
@juliansteden2980 2 жыл бұрын
no mention of polars? ;) its a great DataFrame library and an alternative to pandas and available in rust as well as python! :D
@codetothemoon
@codetothemoon 2 жыл бұрын
To be honest I hadn't heard of it! I'll put it on my list of stuff to check out. What is it like to use Polar data frames with Rust ML crates?
@igormriegel
@igormriegel 2 жыл бұрын
@@codetothemoon It is like working with pandas on Python
@atanjacket
@atanjacket 2 жыл бұрын
Lmao the immediate click bait turn around at the beginning is nice.
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks, glad you liked it!
@harshkumarmoroliya5272
@harshkumarmoroliya5272 2 жыл бұрын
Hey tikz is an unknown key, how to fix that? I tried installing tikz from kde 'ktikz' package in arch repo, but still doesn't work. :/
@tarasst6887
@tarasst6887 2 жыл бұрын
R is a best Lang for DS!!
@codetothemoon
@codetothemoon 2 жыл бұрын
Seems like R still has a strong community!
@tarasst6887
@tarasst6887 2 жыл бұрын
@@codetothemoon still???? Ahhaha
@miettoisdev
@miettoisdev 10 ай бұрын
how about a benchmark against same python implementations??
@Thekingslayer-ig5se
@Thekingslayer-ig5se 11 ай бұрын
Sir your tutorial is just brilliant. One small doubt sir. I am a data analyst I am well versed in python. Like I am good in it. And I am interested in rust. Will there be any future demand for rust ? In data science ? Can u explain
@spacelem
@spacelem Жыл бұрын
Between R and Julia, I feel pretty covered for all my data science needs. Seeing data science done in a non-REPL language doesn't make me want to try it.
@character640p
@character640p 2 жыл бұрын
I really like short answer.
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice, I like to get to the point quickly!
@31redorange08
@31redorange08 2 жыл бұрын
The result is underwhelming. Why is there no "Ok" outcome in the left branch?
@codetothemoon
@codetothemoon 2 жыл бұрын
Sorry to disappoint! What do you think could have made it better? I think there was no "Ok" in the left branch because there was no (or not enough) data points leading to "Ok" results in cases where the left branch is taken.
@marioschmidt1251
@marioschmidt1251 Жыл бұрын
You know you are a programmer when you need to train a machine learning model to know whether you are happy.
@johnychinese
@johnychinese 2 жыл бұрын
Wait, for a second I thought I was watching No Boilerplate 😅
@codetothemoon
@codetothemoon 2 жыл бұрын
We're a little (ok, a lot) less refined here but we try to keep up with No Boilerplate!
@evalinor
@evalinor 2 жыл бұрын
we all know why ds use python, its all about simple syntax and ofc additional library(tensor, keras, etc..). For regular python enjoyer hard to switch to rust
@codetothemoon
@codetothemoon 2 жыл бұрын
I agree!
@mmatongo
@mmatongo 2 жыл бұрын
What is that vscode theme?
@codetothemoon
@codetothemoon 2 жыл бұрын
Sonokai 😎
@SolaireML
@SolaireML 2 жыл бұрын
great job
@codetothemoon
@codetothemoon 2 жыл бұрын
Thank you!
@floriansalihovic3697
@floriansalihovic3697 Жыл бұрын
Your keyboard sounds interesting.
@codetothemoon
@codetothemoon Жыл бұрын
thank you! if you like the sound of the keyboard you'll definitely like the newest video 😎
@txkyle2013
@txkyle2013 2 жыл бұрын
This font is nice, whatever it is
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks, I believe it is Menlo!
@aoimiyamori9517
@aoimiyamori9517 2 жыл бұрын
Why do you have to to_owned the features and labels? Shouldn't it work by reference? Even Python (with numpy) doesn't require you to copy the data when running a scikit-learn model on it.
@nicklam3594
@nicklam3594 Жыл бұрын
Sir please consider doing an introduction to ndarray and rust for numerics , cause it is realy beating my ass. eg Making a polynomial regression in rust.
@gamcd
@gamcd 2 жыл бұрын
What font are you using?
@codetothemoon
@codetothemoon 2 жыл бұрын
I believe it is Menlo
@gamcd
@gamcd 2 жыл бұрын
@@codetothemoon thanks very much also keep up the good work w the vids
@codetothemoon
@codetothemoon 2 жыл бұрын
@@gamcd thanks will do!
@kleinesfilmroellchen
@kleinesfilmroellchen 2 жыл бұрын
I have never seen anyone pronounce "LAY-tek" or "TICK-z" so strangely
@codetothemoon
@codetothemoon 2 жыл бұрын
Hah sorry about that, I'm new to both. I thought I did my due diligence with Latex and gathered that there are multiple ways to pronounce it and the one I chose was one of the "acceptable" ways. Tikz is a different story - I'd recently talked about something completely unrelated called TiKV for which the "Ti" is pronounced "Tie" - so yeah I probably butchered it
@ApostropheErEpiphany
@ApostropheErEpiphany Жыл бұрын
@@codetothemoon I refer to your channel (and no boilerplate) often, but… to my pedantic, ADHD+OCD brain, repeatedly hearing ‘x’ pronounced ‘k’ was worse than fingernails on a chalkboard. 😵‍💫 I’m not trying to be a d*ck, but I couldn’t focus on anything else in the video. Anyway, I’m interested in Rust/DS so I’m gonna take my ADD meds, meditate, light a candle, vape some CBD, and try again! 🧘‍♂️ (P.S. still subscribed 👍)
@nostrorom
@nostrorom Жыл бұрын
@@ApostropheErEpiphany he's right on that point though. I can't vouch for 'ah' vs 'ay', but in the LaTeX world (academia, math, physics etc..) the "x" is actually pronounced "k" as the greek letter "khi". tex => tech
@danielfm123
@danielfm123 2 жыл бұрын
but no interactive console :(
@codetothemoon
@codetothemoon 2 жыл бұрын
There actually is one! Also I believe you can use Rust in Jupyter notebooks.
@Singlton
@Singlton 9 ай бұрын
What prelude mean?
@geoffrygeorgemathew3505
@geoffrygeorgemathew3505 2 жыл бұрын
* historical data ? 🤔 0:33
@codetothemoon
@codetothemoon Жыл бұрын
I see what you're saying - what I meant is that in the future you will have new data points that you need to perform inferences on. The way I worded it probably wasn't the best 🙃
@sazk4000
@sazk4000 2 жыл бұрын
Python uses underlying C++ libs for the computational part. That is where Rust can be used..but it won't be replacing Python itself at the higher level.
@codetothemoon
@codetothemoon 2 жыл бұрын
I doubt Rust will replace Python for things like manual "offline" data exploration, but Rust definitely has some advantages over Python especially in situations where the DS/ML code is part of a business critical customer-facing product where failures would be very costly
@Zimi485
@Zimi485 2 жыл бұрын
(Don't forget R)
@codetothemoon
@codetothemoon 2 жыл бұрын
I realize a lot of DS folks live in that world - I gave R a sincere try a few years ago but I personally didn't fully grasp what made it better than the more modern options like Python, Scala and now Rust. YMMV
@Zimi485
@Zimi485 2 жыл бұрын
@@codetothemoon Just startet by Studies as a DS Engineer and most of the time Python is used for "in production" environments as a glue language, sometimes c,c++,rust or golang for compute things but R is the shiny kid on the block with decades of experience and polishing of graphs and plots. R ist just made for fancy graphics at this point, but a lot of banks still have their ml models in R
@Smurdy1
@Smurdy1 7 ай бұрын
Hear me out rust developers should join up to form an empire and overthrow python. Imagine how Blazing Fast 🚀 our daily life would be
@codetothemoon
@codetothemoon 6 ай бұрын
I actually really like python. just not for production apps...
@igordemetriusalencar5861
@igordemetriusalencar5861 2 жыл бұрын
I think Julia programming language will be the default Data science language in the 5-10 years ahead.
@techpriest4787
@techpriest4787 2 жыл бұрын
I think nobody is going to write any code in the future. AI will. Just like artists will use text-to-image/3D. Programmers will be using text-to-source if non-neuromorphic runtimes are needed.
@lopyus
@lopyus 2 жыл бұрын
After I trying Julia, I do all my DS projects using it. I like their autodiff and DataFrame library, such a relief from pytorch and pandas 😄
@MDminddump
@MDminddump 2 жыл бұрын
lookss good ! will try it !
@codetothemoon
@codetothemoon 2 жыл бұрын
Been meaning to check out Julia, I've moved it much higher on my todo list after all the great things folks are saying about it here...
@techpriest4787
@techpriest4787 2 жыл бұрын
Why is that though? The only thing I know about Julia is that it is more math driven.
@NA-di3yy
@NA-di3yy 2 жыл бұрын
"Сон Бодлера" и "Эффект Люцифера", понятно
@codetothemoon
@codetothemoon 2 жыл бұрын
what does that mean?
@NA-di3yy
@NA-di3yy 2 жыл бұрын
@@codetothemoon you tell me, that's not my book shelf @ 0:37 =) those two titles sound most intriguing to me personally
@codetothemoon
@codetothemoon 2 жыл бұрын
@@NA-di3yy oh, that is stock footage, not my bookshelf hah. Mine is significantly less interesting
@houtamelocoding
@houtamelocoding 2 жыл бұрын
Unfortunately Rust is still too young on data science, there are no easy-to-setup/prototype libraries which is what make python appealing, and that sucks because I really dislike python and I'll be very happy when rust gets there :)
@codetothemoon
@codetothemoon 2 жыл бұрын
what do you mean by easy to setup / prototype in this context? Would Linfa qualify? Assuming a bit of Rust knowledge, I personally didn't find it any harder to get started with than something like scikit-learn
@houtamelocoding
@houtamelocoding 2 жыл бұрын
@@codetothemoon A few years ago I worked with a reinforcement learning package that in order to train your models this is all that was required: -Define your hyperparameters in a config file. -Set up your reward system. -Feed the observations to the package's code. Recently I tried looking for reinforcement learning in rust and I couldn't find a package that had a process like that.
@itellyouforfree7238
@itellyouforfree7238 2 жыл бұрын
have you tried julia in the meanwhile? much better than python for scientific computing
@yash1152
@yash1152 2 жыл бұрын
0:53 will watch later
@varshard0
@varshard0 Жыл бұрын
So crates are linfra linfra-trees
@narwodev
@narwodev 2 жыл бұрын
Yes!
@codetothemoon
@codetothemoon 2 жыл бұрын
😎
@CallousCoder
@CallousCoder 2 жыл бұрын
Rust will not kickout Python (just yet) just like C++ hasn't kicked out python despite pretty much all the lybraries that data scientists use written in C++ and execution is 100 times faster. Data Scientists aren't programmers, Rust and C++ are just too complex compared to ugly arse python.
@codetothemoon
@codetothemoon 2 жыл бұрын
Yeah, making the jump from Python to something like Rust will not be palatable for many folks.
@spirit_x64
@spirit_x64 Жыл бұрын
Julia exists...
@codetothemoon
@codetothemoon Жыл бұрын
it does indeed! 🙃
@apstl7106
@apstl7106 2 жыл бұрын
its not fast to write, when i need speed i use julia
@itellyouforfree7238
@itellyouforfree7238 2 жыл бұрын
sure, like waiting a couple minutes every time you restart the kernel and execute `using Plots; using DifferentialEquations`...
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice, I'm excited to take Julia for a spin
@oykunj3630
@oykunj3630 2 жыл бұрын
Iz the gud vids, friend can u us the make vid for rust ml app? U know make full fir students have no money yas,
@codetothemoon
@codetothemoon Жыл бұрын
That's kind of what this one is! I have two other vids that you might be interested in - "Rust Artificial Intelligence" and "Rust OpenAI Integration"
@Cm0nd00d
@Cm0nd00d 2 жыл бұрын
what happened to petting cats?
@codetothemoon
@codetothemoon 2 жыл бұрын
The algorithm deemed it not heavily correlated enough with happiness to include it in the model!
@Cm0nd00d
@Cm0nd00d 2 жыл бұрын
oh interesting! thanks for following up!
@MudroZvon
@MudroZvon 2 жыл бұрын
Rust is the King 👑 in Blockchain development
@codetothemoon
@codetothemoon 2 жыл бұрын
Yeah it seems to have some traction there, which makes sense the way it forces error handling...
@jorge1869
@jorge1869 2 жыл бұрын
Rust is the king in data science and I'm Leonardo Di Caprio.
@codetothemoon
@codetothemoon 2 жыл бұрын
Which makes you the king of the world!! 👑
@sammflynn6751
@sammflynn6751 2 жыл бұрын
sorry to be blunt but what why?
@codetothemoon
@codetothemoon 2 жыл бұрын
no need to apologize, it's a great question! Some possible reasons are (1) the need for DS/ML in an existing project that is already written in Rust, and there is a desire for language isomorphism, (2) you'd like to learn Rust and are passionate about DS/ML, (3) your DS code is running in production and you'd like the extra safeguards that Rust provides
@amjadiqbal478
@amjadiqbal478 2 жыл бұрын
Rust is not; but going to be the King🐯🙏🇵🇰
@NamasteProgramming
@NamasteProgramming 2 жыл бұрын
At least we can agree on something 🇮🇳
@amjadiqbal478
@amjadiqbal478 2 жыл бұрын
Thanks dear for your respect and love 🙏 And nice having your comments and agreement. But we also agree on countless other things. I love and like India and Indian people. They are very nice. The Indian culture is deep rooted and wonderful. Vedic knowledge is really superb. The Rishi's/ munni's / sanyasi's were all great teachers, that was once the grandeur of this region. Alas, we lost such great gurus of antiquity and no one left in inheritence. Difference is only that of superficial or deep study and thereupon practice Why should we hate each other or anybody? I find no reason. Thanks
@codetothemoon
@codetothemoon 2 жыл бұрын
And perhaps also a peacemaker between nations! ❤️
@Cathexis256
@Cathexis256 2 жыл бұрын
could have stopped the video at 2 seconds in to get the answer lol
@codetothemoon
@codetothemoon 2 жыл бұрын
Many folks probably did just that! And that's perfectly fine 😎
@arods
@arods 2 жыл бұрын
No, you don't have easy to use libraries or modules to work DS with in rust. Also, you can't use CUDA, which is the standard for when working with large models. Maybe someday ahead, but not now.
@codetothemoon
@codetothemoon 2 жыл бұрын
I've only tried the one that is showcased in this video, and it seemed every bit as easy to use as something like scikit-learn. And it looks like support for CUDA exists, though I'm not sure about the current state of the project github.com/Rust-GPU/Rust-CUDA
@32zim32
@32zim32 2 жыл бұрын
Rust is trying to go to different markets and areas but if will fail almost in every field
@codetothemoon
@codetothemoon 2 жыл бұрын
we shall see!
@JorgetePanete
@JorgetePanete 2 жыл бұрын
it* Rust is not an "option" it is "progress"
@diadetediotedio6918
@diadetediotedio6918 2 жыл бұрын
why it will fail?
@32zim32
@32zim32 2 жыл бұрын
@@diadetediotedio6918 because in 90% of cases there are better alternatives, easier to write and maintain
@rmvlvs5228
@rmvlvs5228 Жыл бұрын
A Monokai user like me :)
@codetothemoon
@codetothemoon Жыл бұрын
yep Monokai ftw!
Rust vs 7 Other Languages You Probably Haven't Tried
8:55
Code to the Moon
Рет қаралды 78 М.
Mini-rust in Rust 004: Refactoring our lexer
20:59
Andy Balaam
Рет қаралды 398
REAL or FAKE? #beatbox #tiktok
01:03
BeatboxJCOP
Рет қаралды 18 МЛН
The Best Band 😅 #toshleh #viralshort
00:11
Toshleh
Рет қаралды 22 МЛН
黑天使被操控了#short #angel #clown
00:40
Super Beauty team
Рет қаралды 61 МЛН
Rust Interior Mutability - Sneaking By The Borrow Checker
16:02
Code to the Moon
Рет қаралды 75 М.
7 Outside The Box Puzzles
12:16
MindYourDecisions
Рет қаралды 114 М.
Why I Switched from Python to Rust for AI Deployment
9:57
Code In a Jiffy
Рет қаралды 34 М.
Learn Machine Learning Like a GENIUS and Not Waste Time
15:03
Infinite Codes
Рет қаралды 353 М.
Rust Data Modelling Without Classes
11:25
No Boilerplate
Рет қаралды 185 М.
5 deadly Rust anti-patterns to avoid
13:25
Let's Get Rusty
Рет қаралды 38 М.
Rust's Most Important Containers 📦 10 Useful Patterns
17:11
Code to the Moon
Рет қаралды 132 М.
Rust's Alien Data Types 👽 Box, Rc, Arc
11:54
Code to the Moon
Рет қаралды 156 М.
Why Does Diffusion Work Better than Auto-Regression?
20:18
Algorithmic Simplicity
Рет қаралды 418 М.
Google's 9 Hour AI Prompt Engineering Course In 20 Minutes
20:17
Tina Huang
Рет қаралды 122 М.
REAL or FAKE? #beatbox #tiktok
01:03
BeatboxJCOP
Рет қаралды 18 МЛН