Eden has moved to @Eden@weirder.earth:

Eden @eden@queer.cloud

edge opinion Show more

@WizardSasquatch ooi what branch or field of models do you work with that allows you to compete with NNs for prediction/optimisation/recognition?

@WizardSasquatch Really? That was kinda what I was hoping to do after this, I'd seen quite a few ones from the 80s in c that seemed duplicateable for learning from

@WizardSasquatch It's mostly because I know how to use a model, and when to use specific models, and how to prepare data for them.

But often I don't really get *how* they work, and I want to work at being able to write my own to understand them.

I can setup pipelines myself with docker and Python, but writing a custom algorithm is the part that I think is really interesting.

I've been working on writing CART-equivalents in Rust, and that seems like a good step for now?

@WizardSasquatch SQL pipelines -> R for marketing tools, ad hoc R projects for business analytics, occasional C++ for clustering when it called for it. Lot of dashboards early on, now I don't do as many dashboards.

Fair amount of working with different models and writing code around validation.

What other portion are you thinking about?

I really don't feel like I enjoy the analysis side of data science anymore.

It's cool to learn new things about data, but at the end I have a notebook and a few new tools. And that just doesn't feel like enough anymore.

I think I want to do some kind of data/ops, build some tools, work with algorithms.

@trwnh I could, but not a lot of people use this instance, so the extra cost isn't something I feel is that valuable rn.

So unfortunately I don't really have the time to maintain a mastodon anymore.

I still want to use mastodon, I love talking about rust on here.

But I don't think I can manage _this_ server.

So I'm going to close it down in 3 weeks-ish - 19th December, and move to a new address by then. It's been fun learning this stuff, but I know it's possibly insecure because I just don't have the time to keep updating it.

@trwnh But Rust hates this too.

It doesn't know how many columns are going to be allocated like this, it certainly doesn't know what types to give them, and it doesn't know when they'll go away.

The big thing for Rust is memory safety, so if you allocate something, the compiler has to work out when it'll be de-allocated.

The compiler right now can't work out how many thing will be allocated, so it can't work out the opposite either. So it's not passable in Rust at all

@trwnh You can't really do type inference in Rust! You have to know everything upfront.

Let's imagine it was a CSV of just ints and floats, which is what it is. There's six columns. So I want a structure that can fit that

struct {
col 6

But I don't have any type annotations, so Rust will throw an error. I could say it's generic using <T>, but then *all* the columns would have to be type T, and some might be int and some are float.

So the nested for loop issue runs afoul of metaprogramming.

ideally you want something like

for col in columns {
'col' + col.name = col.values

And the names of col{1..6} are given by the amount of columns I pass.

Eden boosted

Operation Lemon Forest has been a success! ๐Ÿ‹ Just look at these precious babies...

Eden boosted

@amphetamine So it seems to be roughly the same amount of work, but there's no Rust sort that gives that you info by default, even though it's used in the function.

@WizardSasquatch Tbh I've just been trying to find a Rust implementation, but the closest is similar to elsewhere in this thread which uses the approach of sorting a tuple (users.rust-lang.org/t/sort-wit), and their only solution is to rewrite the default quicksort to get an argsort. Your knowing the right terminology does help a lot to get me in the right direction, but unfortunately it looks like having to rewrite _some_ sorter or just suffering the extra allocation.

Which is wild, I thought Rust would have something generic for it.

Creepy, drugs Show more

@WizardSasquatch perfect, that really does! I assumed the complexity would be similar, but I didn't want to have to go all around the houses to get it from the sorted list.

@jacek ooh, I think I can use this. I thought they're not quite equivalent for some types of sort, because you'll move items in blocks rather then repositioning, but I didn't think about adding in an index.

So for my case, I think I can sort tuples in Rust and get the paired index, thanks!

Is there any way of idiomatically finding the sort order of a list, without sorting it?

So if I had
1 4 3 5
It'd return
0 2 1 3

Rather than sorting it into place?
are the communities I usually ping for this sort of thing, but it's kinda language agnostic.