Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
leftist heap
Feb 28, 2013

Fun Shoe

Forums Terrorist posted:

gently caress math imo, just janitor payroll software for the rest of your life and have literally no ambition or drive

working an easy, relatively stress free jobs for six figgies is pretty deece imo.

Adbot
ADBOT LOVES YOU

gonadic io
Feb 16, 2011

>>=

coffeetable posted:

you can use machine learning libraries just fine without understanding the maths behind them, but
  • the moment something doesn't work you'll have no idea what to do
  • ML algs love their silent failures so you won't realise when something does go wrong
  • you'll use the one tool in the box you like to solve every problem

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
MACHINE LEARNING AND MATHS
at a very high level, there are two ways to 'do' machine learning
  • the first is to use ML algorithms without understanding how they work. you need very little maths background for this. as long as you stick to the beaten path, staying close to the library's example code, you'll probably be okay.
  • the second is to read a bigass pile of books, then use - and write - ML algorithms which you understand.
this is not a choice unique to ML. you have to make a similar choice every time you encounter a programming problem outside your domain: do you either invest the time to understand the problem properly, or do you just Google up a solution? thing is, what makes Googling up a solution viable is loud failure. in most of the problems you google up a solution for, if you misapply the solution it'll throw an error message, and you can then Google that error message to work out what's wrong. in contrast, incorrect ML algorithms fukkin love their silent failures. not only does a buggy or misapplied ML algorithm not throw an error message, but a lot of the time it'll make decent predictions - just nowhere near as good as the predictions it'd make if it were correct. and if you don't understand how and why the ML alg in question works, you'll never know it's wrong.

the other thing about ML that makes understanding important is that it's a very new and very fast-moving field. it is easy to run into problems for which there's no library solution at all, but for which there is a very attractive approach in the research literature. without the maths background, you have no hope of implementing that approach.

LEARNING MATHS
first off: if you think you're 'bad at maths', you're almost certainly not, you just got unlucky (and probably had a bad teacher). maths is unlike most subjects in that it builds on itself. if a kid falls behind one day in sixth grade, then they don't have the background to understand the next week's topic. which means they don't have the background for the next month's topic, which means they don't have the background for the next year's topic... and ten years later, it's pretty understandable when they hate maths, having been forced to work on things they don't understand all this time.

fortunately, there is no better subject for self-teaching than maths.

now, a disclaimer: maths is hard. maths is very hard, and learning it takes countless hours of solid concentration. if anyone claims it's easy, a) that person is a shithead and b) all it means is that person invested all that effort and made all their mistakes before you arrived. that effort is absolutely 100% worth it however. everything you learn will contribute to your ability to analyze and predict systems in the world around you, and it'll eventually enable you to write programs that are, to a regular programmer, indistinguishable from magic.

if that sounds attractive to you, here're my recommendations on how to go about learning some maths. keep in mind that different things will suit different people; if you find you don't like one of these books, find someone else's recommendation and try that. this is just what worked for me.
  • Stroud's Engineering Mathematics. it is the finest foundational maths book ever made. it starts with arithmetic and works through to multivariable calculus. it is slow, steady, and entirely self-contained.
  • next you need a book that transitions you from high-school applied maths to undergraduate proof-based maths. i have completely forgotten what i used to make the hop, and i don't want to recommend anything without checking it myself. will come back and edit something in later.

    edit:

    quote:

    Share Bear posted:

    i am following up on this incredibly good post from several pages ago to ask if you recalled what book this was

    my copy of strouds is in the mail rn
    i did; it turns out my first courses on maths at uni were supported just by notes. notes that are, in hindsight, not that great. instead im gonna say go with How to Prove It: A Structured Approach. it wasn't the first book on proof i read, but it's one of the best. the stuff it covers isn't directly relevant to linear alg or ML, but it turns up all over the place anyway and i think it works well as a friendly intro to mathematical thinking.

    that said, the foundations of maths are pretty wide. you can get into logic, probability, set theory, graph theory, real analysis (think of 'analysis' as 'rigorous calculus' for now), discrete maths (combinatorics/counting) and a bunch of other stuff without needing much in the way of prerequisites, and they'll all serve well as intros to mathematical thinking. if any of those pique your interest, the easiest way to tell if you can handle a maths book is to read the preface (where the author will usually mention the audience it's intended for) then try to read the first chapter (usually titled 'preliminaries' or w/e) on Amazon or the author's website or LibGen. if it all seems very easy, you're probably ready for it. if there's stuff you're unfamiliar with in the first few pages, back off and find a more foundational book.

    nb: books for fresh undergrads are commonly titled 'a first course in'/'introductory'/'foundations of', but so are books for fresh postgrads. read the first chapter before buying!

  • once you are over the proof-based maths hurdle, the next step is establishing your basic linear algebra. if you want a geometric perspective, Vector and Geometric Algebra is great; if you want something algebraic, Linear Algebra Done Right. i would recommend reading both, and then probably a third book on computational linear algebra. understanding something in maths often means studying multiple aspects of the same thing, so try not to balk at reading multiple books on the exact same topic.
  • with your LA established, you will actually be able to take a hack at a ML book. i preferred Machine Learning: A Probabilistic Perspective, but a lot of people complain about the number of errors. this is to be expected in any new graduate-level textbook, but if you'd prefer something older then there's Koller's Probabilistic Graphical Models and Bishop's Pattern Recognition.

final notes
  • textbook prices are obscene. use library genesis. only buy the ones you find yourself referencing all the time.
  • to find a good maths book on an arbitrary topic, start with a giant list of maths books by topic, like How to Become a Pure Mathematician, then check the reviews on Amazon to filter the list down, then use Amazon's Look Inside and LibGen to pick one. alternatively, find one book on the topic on Amazon and use the similar products list to find others.

coffeetable fucked around with this message at 17:45 on Jun 2, 2015

Carthag Tuek
Oct 15, 2005

Tider skal komme,
tider skal henrulle,
slægt skal følge slægters gang



^ ty for a good post ^

my homie dhall
Dec 9, 2010

honey, oh please, it's just a machine

Snapchat A Titty posted:

^ ty for a good post ^

Su-Su-Sudoko
Oct 25, 2007

what stands in the way becomes the way

Snapchat A Titty posted:

^ ty for a good post ^

Yaoi Gagarin
Feb 20, 2014

Snapchat A Titty posted:

^ ty for a good post ^

Soricidus
Oct 21, 2010
freedom-hating statist shill

Snapchat A Titty posted:

^ ty for a good post ^

oh no blimp issue
Feb 23, 2011

Snapchat A Titty posted:

^ ty for a good post ^

MeruFM
Jul 27, 2010
Unlike a lot of normal programming where grokking a problem is relatively simple, machine learning really requires you to start from the beginning before you can apply them to real problems.

Without the basics, you're literally grasping at a void even if your math fundamentals are good enough to implement the equations as provided.

I sure would have gotten a lot more out of my last couple quarters of college if I had the foresight to take the starting ML class instead of jumping straight into the research and problem solving labs. It's amazing they even let me take them.

oh well, it's javascript, plangs and css forever for me

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder
If i can't just mindlessly bang my head against something while gaining sporadic insights until I understand it im not going to be able to learn it

Blinkz0rz
May 27, 2001

MY CONTEMPT FOR MY OWN EMPLOYEES IS ONLY MATCHED BY MY LOVE FOR TOM BRADY'S SWEATY MAGA BALLS

Snapchat A Titty posted:

^ ty for a good post ^

Do The Evolution
Aug 5, 2013

but why

MALE SHOEGAZE posted:

If i can't just mindlessly bang my head against something while gaining sporadic insights until I understand it im not going to be able to learn it

i thought this was how everyone programmed

Mr. Nice!
Oct 13, 2005

bone shaking.
soul baking.
someone in the scotus thread is worrying about the supreme court not taking the google/oracle case because it will leave apis protected by copyright in that circuit.

now i don't understand why this is such a terrible thing, and the article linked was written by a google exec's brother, so it is certainly biased and does nothing to explain why copyrighting apis is actually bad.

didn't google just blatantly copy code in some instances without licensing? why shouldn't that be protected.

power botton
Nov 2, 2011

Mr. Nice! posted:

someone in the scotus thread is worrying about the supreme court not taking the google/oracle case because it will leave apis protected by copyright in that circuit.

now i don't understand why this is such a terrible thing, and the article linked was written by a google exec's brother, so it is certainly biased and does nothing to explain why copyrighting apis is actually bad.

didn't google just blatantly copy code in some instances without licensing? why shouldn't that be protected.

because its a slippery slope that will ruin tech innovation forever!!!!!!!!!!!!!!!!

bobbilljim
May 29, 2013

this christmas feels like the very first christmas to me
:shittydog::shittydog::shittydog:

MALE SHOEGAZE posted:

If i can't just mindlessly bang my head against something while gaining sporadic insights until I understand it im not going to be able to learn it

how to do machine learning (best)

Mr. Nice!
Oct 13, 2005

bone shaking.
soul baking.

power botton posted:

because its a slippery slope that will ruin tech innovation forever!!!!!!!!!!!!!!!!

after everything i read back when the first decision came out and now it seems more like people just flailing around with worries that are really nonexistent. the only worry from losing this seems to be people in the position of google won't be able to blatantly steal like before.

Bloody
Mar 3, 2013

coffeetable posted:

MACHINE LEARNING AND MATHS
at a very high level, there are two ways to 'do' machine learning
  • the first is to use ML algorithms without understanding how they work. you need very little maths background for this. as long as you stick to the beaten path, staying close to the library's example code, you'll probably be okay.
  • the second is to read a bigass pile of books, then use - and write - ML algorithms which you understand.
this is not a choice unique to ML. you have to make a similar choice every time you encounter a programming problem outside your domain: do you either invest the time to understand the problem properly, or do you just Google up a solution? thing is, what makes Googling up a solution viable is loud failure. in most of the problems you google up a solution for, if you misapply the solution it'll throw an error message, and you can then Google that error message to work out what's wrong. in contrast, incorrect ML algorithms fukkin love their silent failures. not only does a buggy or misapplied ML algorithm not throw an error message, but a lot of the time it'll make decent predictions - just nowhere near as good as the predictions it'd make if it were correct. and if you don't understand how and why the ML alg in question works, you'll never know it's wrong.

the other thing about ML that makes understanding important is that it's a very new and very fast-moving field. it is easy to run into problems for which there's no library solution at all, but for which there is a very attractive approach in the research literature. without the maths background, you have no hope of implementing that approach.

LEARNING MATHS
first off: if you think you're 'bad at maths', you're almost certainly not, you just got unlucky (and probably had a bad teacher). maths is unlike most subjects in that it builds on itself. if a kid falls behind one day in sixth grade, then they don't have the background to understand the next week's topic. which means they don't have the background for the next month's topic, which means they don't have the background for the next year's topic... and ten years later, it's pretty understandable when they hate maths, having been forced to work on things they don't understand all this time.

fortunately, there is no better subject for self-teaching than maths.

now, a disclaimer: maths is hard. maths is very hard, and learning it takes countless hours of solid concentration. if anyone claims it's easy, a) that person is a shithead and b) all it means is that person invested all that effort and made all their mistakes before you arrived. that effort is absolutely 100% worth it however. everything you learn will contribute to your ability to analyze and predict systems in the world around you, and it'll eventually enable you to write programs that are, to a regular programmer, indistinguishable from magic.

if that sounds attractive to you, here're my recommendations on how to go about learning some maths. keep in mind that different things will suit different people; if you find you don't like one of these books, find someone else's recommendation and try that. this is just what worked for me.
  • Stroud's Engineering Mathematics. it is the finest foundational maths book ever made. it starts with arithmetic and works through to multivariable calculus. it is slow, steady, and entirely self-contained.
  • next you need a book that transitions you from high-school applied maths to undergraduate proof-based maths. i have completely forgotten what i used to make the hop, and i don't want to recommend anything without checking it myself. will come back and edit something in later.
  • once you are over the proof-based maths hurdle, the next step is establishing your basic linear algebra. if you want a geometric perspective, Vector and Geometric Algebra is great; if you want something algebraic, Linear Algebra Done Right. i would recommend reading both, and then probably a third book on computational linear algebra. understanding something in maths often means studying multiple aspects of the same thing, so try not to balk at reading multiple books on the exact same topic.
  • with your LA established, you will actually be able to take a hack at a ML book. i preferred Machine Learning: A Probabilistic Perspective, but a lot of people complain about the number of errors. this is to be expected in any new graduate-level textbook, but if you'd prefer something older then there's Koller's Probabilistic Graphical Models and Bishop's Pattern Recognition.

final notes
  • textbook prices are obscene. use library genesis. only buy the ones you find yourself referencing all the time.
  • to find a good maths book on an arbitrary topic, start with a giant list of maths books by topic, like How to Become a Pure Mathematician, then check the reviews on Amazon to filter the list down, then use Amazon's Look Inside and LibGen to pick one. alternatively, find one book on the topic on Amazon and use the similar products list to find others.

what if I have a generally strong maths footing with gaps and holes that are hard to identify from where I am sitting? I would spend 90% of my time in stroud being tired of things I already know but I'm confident that the other 10% would be oh of course magic moments but the ratio is unfavorable enough that if I picked up the book I would likely run out of focus before making significant progress with hole patching

like I feel like my biggest hurdle when reading ml papers is the Greek alphabet and probably a relatively weak statistics background how do I suck less at these things I've met people that can unpack and explain a maths paper equation in like a minute when it would take me like an hour to figure out what they're even trying to say

Mr. Nice!
Oct 13, 2005

bone shaking.
soul baking.
its silly to say maths unless you're british and then you still sound silly but it's an accent thing.

Mr. Nice!
Oct 13, 2005

bone shaking.
soul baking.
do you also say aluminium?


sorry maths triggered me

Shaggar
Apr 26, 2006

Mr. Nice! posted:

someone in the scotus thread is worrying about the supreme court not taking the google/oracle case because it will leave apis protected by copyright in that circuit.

now i don't understand why this is such a terrible thing, and the article linked was written by a google exec's brother, so it is certainly biased and does nothing to explain why copyrighting apis is actually bad.

didn't google just blatantly copy code in some instances without licensing? why shouldn't that be protected.

its not bad at all and the only people who don't want software copyrights are lovely idiots. it should be protected.

Shaggar
Apr 26, 2006
a good rule of thumb is that if google wants a thing its bad for you and everyone you know (unless you maybe own a large chunk of google)

Mr. Nice!
Oct 13, 2005

bone shaking.
soul baking.
thanks shagger

thagger

Stringent
Dec 22, 2004


image text goes here

Shaggar posted:

a good rule of thumb is that if google wants a thing its bad for you and everyone you know (unless you maybe own a large chunk of google)

started as a parody, but what will it become?

Bloody
Mar 3, 2013

Mr. Nice! posted:

its silly to say maths unless you're british and then you still sound silly but it's an accent thing.

i too am getting upset about vocabulary in the 'pos

Mr. Nice!
Oct 13, 2005

bone shaking.
soul baking.
its important to have principles and leaving 'u' out of words, pronouncing aluminum as the discoverer intended, and using math as plural and singular are my right as an american.

Shaggar
Apr 26, 2006
math is never plural, its always singular. when people say "mathematics" they mean "the field of mathematics" which is singular. no one is talking about a pile of mathematics that you have left out on the counter.

zokie
Feb 13, 2006

Out of many, Sweden

Shaggar posted:

its not bad at all and the only people who don't want software copyrights are lovely idiots. it should be protected.

Google copied the declaring code of like 27(!) namespaces and didn't even change it from java.lang.Math.max to dalvik/android.lang.Math.max

Shaggar is right again, gently caress goog

Valeyard
Mar 30, 2012


Grimey Drawer
Maths m8

Mr. Nice!
Oct 13, 2005

bone shaking.
soul baking.

Shaggar posted:

math is never plural, its always singular. when people say "mathematics" they mean "the field of mathematics" which is singular. no one is talking about a pile of mathematics that you have left out on the counter.

thagger



zokie posted:

Google copied the declaring code of like 27(!) namespaces and didn't even change it from java.lang.Math.max to dalvik/android.lang.Math.max

Shaggar is right again, gently caress goog

also this.

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

Mr. Nice! posted:

its silly to say maths unless you're british and then you still sound silly but it's an accent thing.
im british

Mr. Nice! posted:

do you also say aluminium?
yes

Bloody posted:

what if I have a generally strong maths footing with gaps and holes that are hard to identify from where I am sitting? I would spend 90% of my time in stroud being tired of things I already know but I'm confident that the other 10% would be oh of course magic moments but the ratio is unfavorable enough that if I picked up the book I would likely run out of focus before making significant progress with hole patching
stroud's book comes with a whole bunch of exercises at the end of each chapter, with answers in the back. try working through a few from each set, and see which chapters your success rate plummets on.

quote:

like I feel like my biggest hurdle when reading ml papers is the Greek alphabet and probably a relatively weak statistics background how do I suck less at these things I've met people that can unpack and explain a maths paper equation in like a minute when it would take me like an hour to figure out what they're even trying to say
the people you're talking about have read a lot of maths books and a lot of research papers. the downside is there's no quick way to achieve the same level of fluidity without a lot of practice yourself, but the upside is that you are absolutely capable of achieving the same level of fluidity - it's just a matter of time and effort.

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

MALE SHOEGAZE posted:

If i can't just mindlessly bang my head against something while gaining sporadic insights until I understand it im not going to be able to learn it

best ML algorithm

Deacon of Delicious
Aug 20, 2007

I bet the twist ending is Dracula's dick-babies

rrrrrrrrrrrt posted:

working an easy, relatively stress free jobs for six figgies is pretty deece imo.

but knowing math gets you that super valuable half-figgy

Shaggar posted:

no one is talking about a pile of mathematics that you have left out on the counter.

that's not true, once I accidentally left a pile of maths out on the counter overnight. by the time I noticed the next day, it had turned into a mouldering pile of category theory

Mr. Nice!
Oct 13, 2005

bone shaking.
soul baking.

coffeetable posted:

im british

yes

well, yeah, its acceptable for you. i know we have kiwis and nigels and such running about

qntm
Jun 17, 2009
it's a mass noun

gonadic io
Feb 16, 2011

>>=

Mr. Nice! posted:

its important to have principles and leaving 'u' out of words, pronouncing aluminum as the discoverer intended, and using math as plural and singular are my right as an american.

I bet you say "on accident" and "could care less" too.

Share Bear
Apr 27, 2004

gonadic io posted:

I bet you say "on accident" and "could care less" too.

literally

Mr. Nice!
Oct 13, 2005

bone shaking.
soul baking.

gonadic io posted:

I bet you say "on accident" and "could care less" too.

i acquit.

Bloody
Mar 3, 2013

coffeetable posted:

im british

yes

stroud's book comes with a whole bunch of exercises at the end of each chapter, with answers in the back. try working through a few from each set, and see which chapters your success rate plummets on.

the people you're talking about have read a lot of maths books and a lot of research papers. the downside is there's no quick way to achieve the same level of fluidity without a lot of practice yourself, but the upside is that you are absolutely capable of achieving the same level of fluidity - it's just a matter of time and effort.

I bought book, thank

Adbot
ADBOT LOVES YOU

Bloody
Mar 3, 2013

I will overcome all the impostor syndrome my very ml/stats/data science oriented thesis induced in me dang it

  • Locked thread