Fork me on GitHub
#clojure-uk
<
2018-07-13
>
thomas07:07:25

mogge 😼

jasonbell08:07:30

Morning friends

alexlynham08:07:15

morrrrrrning

danm08:07:52

eyup πŸ¦†

danm08:07:11

Rain! Made the ride in a bit moist, but still welcome

danm08:07:00

@jasonbell Do you do ML stuff in Clojure, or is that an area where you use Python or similar?

jasonbell08:07:38

@carr0t Clojure and Java.

jasonbell08:07:47

I'm an old git πŸ™‚

jasonbell08:07:29

I need to brush up on some Python stuff. Even to get some of that over marketed Tensorflow stuff.

agile_geek08:07:09

@jasonbell you are an old git...but one, that's got nothing to do with using Java, two Python is older than Java as a language and three you're not as old a git as me! πŸ˜‚

parrot 8
πŸ˜† 8
danm08:07:57

I had a look at a ML "Hello World" style app in Clojure (categorising tulips or something?). It broke my mind. I could see what each individual function did easily enough, I just couldn't see why putting them all together produced the expected result

guy08:07:46

:thinking_face:

guy08:07:52

show the class!

yogidevbear09:07:54

Ah, the joys of receiving letters obviously intended for identity theft. Who to send a lovely GDPR letter to?

alexlynham09:07:43

@carr0t was that the one from lambda lounge?

danm09:07:33

I need to do more reading on ML, but I suspect it involving a lot more mathsy stuff than I am used to counts against me

alexlynham09:07:20

tbh it involves a lot of magic imo

alexlynham09:07:30

most of it these days is done by:

alexlynham09:07:28

import supermegaacemllibrary

input_file = csv("./some-input")
create_business_value(input_file)

alexlynham09:07:25

even in spark/scala with some kaggle datasets it was a bit like "okay, so I've trained what to do what? I think I'm datascience-ing but everything is a black box"

jasonbell09:07:28

@alex.lynham I found it alarming how many books/tutorials and so on only ever focused on the training and never once showed you how to do a prediction.

otfrom09:07:55

If it makes you feel better, even if you understand the maths neural networks/deep learning are still black boxes

πŸ˜† 4
otfrom09:07:34

There is a good book from @postenterprise on building neural networks from scratch

jasonbell09:07:42

Hence everyone at NI conferences gets upset when I say don't use them after hearing every other speaker say "use them"

elise_huard10:07:02

@otfrom I liked that article you posted about deep learning (or layers of it at least) basically coming down to polynomial regression (though I think it was just feed-forward NN and not recursive ones)

Rachel Westmacott10:07:16

is anyone here going to the anti-Trump protest later?

Aleksander12:07:19

I’m heading to Trafalgar Square around 5ish

πŸ‘ 4
elise_huard10:07:30

I reckon if you get really good you probably have a vague idea of what all the tuning params do to the shape of the function underneath

elise_huard10:07:47

but it comes down to the fact that it's complexity on top of complexity. Do most of us really understand what a Clojure function translates to in terms of assembly instructions? Don't reckon so

elise_huard10:07:56

just have to get used to it unfortunately

otfrom10:07:00

@elise_huard I don't think I posted that one here if you have the link to hand

elise_huard10:07:07

I'll look it up

alexlynham10:07:15

:wind_blowing_face: πŸ˜„ ^ "polynomial regression" going over my head

danm10:07:39

@alex.lynham Glad I'm not the only one πŸ˜‰

danm10:07:09

@peterwestmacott I wish I could. I know a few colleagues who are down there and my wife would be if she wasn't off to a hen do in a short while

alexlynham10:07:07

I was going to, and then I was like... I'm not spending money to protest when trump can f--k off for free

danm10:07:51

"In statistics, polynomial regression is a form of regression analysis in which the relationship between the independent variable x and the dependent variable y is modelled as an nth degree polynomial in x." ... Where is Wikipedia's ELI5? What makes a variable independent or dependant? WTF is an "nth degree polynomial"? What makes it "in x"? ML stuff I've read seems to assume I already know this sort of thing instead of starting from basics there too

danm10:07:09

At least the Wiki page for "polynomial" is something I understand...

guy10:07:46

sounds just like maths stuff tbh

guy10:07:47

πŸ˜‚

elise_huard10:07:21

well, you're trying to fit a function to existing data points. Linear regression fits a function y = ax + b, by estimating a and b

πŸ‘Œ 4
elise_huard10:07:01

polynomial is a generalization, you can have higher order (math) functions: say y = ax^2 + bx + c

elise_huard10:07:16

(for a second order one)

elise_huard10:07:55

that's only with one variable x, you can have more than one x for more than one feature. The more features and the higher the order, the more parameters you have to optimize

parrot 16
πŸŽ‰ 8
rhinocratic10:07:12

Morning (but only just)!

πŸ‘‹ 4
danm10:07:17

It's always morning somewhere

guy10:07:50

How is morning defined :thinking_face:

4
danm10:07:27

As a generic greeting

thomas10:07:42

As we use UGT it is always morning here!

12
alexlynham11:07:42

@elise_huard that's a really good & concise explanation. Thanks! πŸ™‚

πŸ‘ 4
guy12:07:30

Seems like a scary path to take haha. I don’t think i’ve ever really worked for an ethical company in london.

otfrom12:07:17

I'm a sad to be missing it too.

jasonbell14:07:06

Looks like a great gig.

Hugh Powell14:07:17

Thanks :thumbsup:

thomas15:07:50

🍺 πŸ•”

jasonbell15:07:29

@thomas Slow down now, you'll be beyond it by 6pm πŸ™‚

thomas15:07:26

Are you suggesting I am not already beyond it?

jasonbell15:07:17

Ah, I didn't realise you'd already started.

πŸ˜‚ 4
yogidevbear16:07:19

Any tennis fans here?

yogidevbear16:07:44

Anderson vs Isner semi-final has been intense

otfrom16:07:58

mmm... I just moved a transducer and a reduce from a core.async channel and slapped the same code into the guts of a

(transduce ...)
. I do love that transducers make that easy

yogidevbear16:07:27

But the tennis...

otfrom16:07:38

is on iplayer

yogidevbear16:07:05

lol, sorry πŸ™‚

otfrom16:07:18

so will keep. πŸ˜‰

😱 4
otfrom16:07:48

I suppose I don't really qualify as a tennis "fan" then.

yogidevbear16:07:58

>Longest men's semi final

yogidevbear16:07:05

Just announced by the commentator

maleghast17:07:38

Has anyone got a good example that they can point me at of looping over a lazy-seq, in order to use each item until a condition is met?

maleghast17:07:52

I have a lazy-seq of DateTime objects and I want to do something for each one until I get to a particular date...

maleghast17:07:34

I`ve Googled already but seem to only find stuff about creating lazy-seqs

maleghast17:07:55

here's my lazy-seq getting made, where 'jt' is clojure.java-time:

(def timeline (jt/iterate jt/plus (jt/local-date 2004 1 1) (jt/days 1)))

dominicm17:07:18

Take-while or reduce?

dominicm17:07:35

Lazy seq is just a collection

maleghast17:07:39

I was trying to figure it out from clojuredocs... would while not work.?

maleghast17:07:17

(trying to understand the diff between take-while and while)

maleghast17:07:26

I mean it looks as though take-while will return a collection of all the items that comply to the predicate... I'd still need to process that collection

maleghast17:07:51

wouldn't I? I may be missing something here, likely I am...

maleghast17:07:55

or is it that while does not iterate along the sequence?

jonpither18:07:22

Watching. Wowza

yogidevbear18:07:08

Come on Anderson!

yogidevbear18:07:45

6 hours and 12 minutes so far!

maleghast18:07:34

I am going out of my mind... Lazy Sequence of clojure.java-time LocalDates that I need to iterate over until I reach a specified date, but I can't compare the items that come off the lazy sequence 'cos they aren't realised so they can't be compared with the LocalDate I am creating for the specified end date.

maleghast18:07:09

What use is this lazy-sequence of dates if I can't use it?

maleghast18:07:53

Turns out that a seq of LocalDate objs from 2004-01-01 to now with a step of 1day doesn't blow the stack so I can__ take-while and then doseq

dominicm19:07:57

Most functions return lazy sequences.