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.
 
  • Post
  • Reply
Lord Of Texas
Dec 26, 2006

Volmarias posted:

Depends entirely upon how much political power they have. Could be chill or could be a nightmare.

Basically, do they have the power to say "we'd like to do this for you, we'll put it into the backlog and prioritize it, but teams X and Y also need Urgent Feature Q and P so we're committed to that right now."

Alternatively, the internal infrastructure/culture to say "sure, that feature that you need could fit into our framework, feel free to create a pull request and we'll look it over!"

Adbot
ADBOT LOVES YOU

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


Hollow Talk posted:

We're currently "adding" a Data Science segment to our company and offerings (we're a small data consultancy that is roughly split into analysts/consultants and engineers), and this is what drives me nuts at the moment. The lady who is tasked with this has a math background and comes with a background in ML, but her technical expertise is nonexistent. However, since she currently falls in the "engineer"-category, it is kind of assumed she will be able to do the software architecture and development parts just the same, because "it's all programming, duh".

It's a really tricky problem, because ideally, you'd get people who can do at least two of those roles at the same time, i.e. data science/ML + engineering, engineering + analysis, ML + analysis. But since it's hard enough to find people who are even half competent in any single one of these things, good luck. And if you then consider that we are doing consulting, i.e. you might actually have to engage with customers, and you are in for a lot of fun.

I feel that this overlapping of skills is the really hard problem, because otherwise, ML-people build models that cannot be run, engineers build systems without purpose, and analysts build analyses without technical merits.

:sigh::respek::saddowns:

Yeah, you definitely need some breadth in each of those roles. I think that hiring for that is hard, so you just have to focus on developing it in the people you get.

smackfu
Jun 7, 2004

Lord Of Texas posted:

Alternatively, the internal infrastructure/culture to say "sure, that feature that you need could fit into our framework, feel free to create a pull request and we'll look it over!"

Actually, that’s the role I’m currently playing (creating those pull requests) and they asked me to join the team officially. I think I have more freedom working on my own team and contributing part time to theirs but obviously that depends on my management continuing to be agreeable to it.

Hughlander
May 11, 2005

Lord Of Texas posted:

Alternatively, the internal infrastructure/culture to say "sure, that feature that you need could fit into our framework, feel free to create a pull request and we'll look it over!"

God. That’s sometimes the worse. “Sorry that doesn’t scale/match the style/have tests so we can’t merge it.” “Too bad we’re shipping in a week and our code relies on it!”

necrobobsledder
Mar 21, 2005
Lay down your soul to the gods rock 'n roll
Nap Ghost

Lord Of Texas posted:

Alternatively, the internal infrastructure/culture to say "sure, that feature that you need could fit into our framework, feel free to create a pull request and we'll look it over!"
The problems happen as people start getting saddled with too much work to even contribute said PRs and what was supposed to be the team that's at the nexus of Good Things winds up becoming the thing every other team hates. The typical scenario is a top-down push that is despised by a lot of incumbents because it doesn't give them anything valuable in return for their investment (honestly a good reason to resist something IMO), the team in charge becomes resistant to change or becomes draconian, and resentment builds and the force multiplier of the central team drops below 1.0

Lord Of Texas
Dec 26, 2006

Hughlander posted:

God. That’s sometimes the worse. “Sorry that doesn’t scale/match the style/have tests so we can’t merge it.” “Too bad we’re shipping in a week and our code relies on it!”

It's not perfect but it's better than "We the framework team don't have capacity to implement this feature you're expecting/fix this defect you're experiencing." "Too bad we're shipping in a week and our code relies on it!" At least the ability to direct the panicked feature requester to gently caress off and do it themselves is available.


necrobobsledder posted:

The problems happen as people start getting saddled with too much work to even contribute said PRs and what was supposed to be the team that's at the nexus of Good Things winds up becoming the thing every other team hates. The typical scenario is a top-down push that is despised by a lot of incumbents because it doesn't give them anything valuable in return for their investment (honestly a good reason to resist something IMO), the team in charge becomes resistant to change or becomes draconian, and resentment builds and the force multiplier of the central team drops below 1.0

IMO the framework team should still be doing the most skill-intensive and intrusive changes themselves, if they are nothing but ivory tower PR approvers, the framework is too broad or the framework team is too underfunded. If an internal framework's upkeep is solely reliant on Good Samaritan PR's, I definitely see that as a problem unless your company has an amazing open-source culture.

Lord Of Texas
Dec 26, 2006

smackfu posted:

Actually, that’s the role I’m currently playing (creating those pull requests) and they asked me to join the team officially. I think I have more freedom working on my own team and contributing part time to theirs but obviously that depends on my management continuing to be agreeable to it.

Ultimately in that situation I would ask myself "which group of people do I like working with more?" If the content of your work won't change a lot, the people you surround yourself with will probably make the most difference in your happiness.

PhantomOfTheCopier
Aug 13, 2008

Pikabooze!

Hollow Talk posted:

I feel that this overlapping of skills is the really hard problem, because otherwise, ML-people build models that cannot be run, engineers build systems without purpose, and analysts build analyses without technical merits.

:sigh::respek::saddowns:
Meanwhile I have decades of programming experience, a solid five years of recent software architecture work, a degree in an applied field, a master's in mathematics, and at least one big example in this company where I saved their bacon with a few hours of math research. Ask any senior manager or director though and they'll tell you, "We don't do anything that needs mathematicians". In other words, they don't know anything about math.

ML is popular because you can get results almost immediately and it doesn't matter if they're wrong. People don't understand large systems, so they don't have a baseline with which to judge ML programs. Nevertheless they'll sink a few years and a team of people into it if they get 0.01% improvements and "predictive results". Good luck getting them to agree to even four weeks of focused math research, not that they realize when that is needed. It truly is a perfect example of agilefail.



Disclaimer: As before, some ML works. The only examples I've seen tend to be in image analysis, where writing a representation by hand would kinda suck. Still I wonder if a simple color histogram would correctly find good strawberries.

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost
I know a mango place that switched from histos to deep learning poo poo with p. good results

That sort of totally commoditized QC / QA poo poo is where the value is indisputible imo

shrike82
Jun 11, 2005

Speaking of which, what viable production ML systems have you guys seen in the wild?

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!

smackfu posted:

Thoughts on working for an internal frameworks team at a big company rather than a product team?

From outside: Does your management just treat you like a cost center within a cost center?
From inside: When the product team has a problem, does the framework solve it or create another problem?

Keetron
Sep 26, 2008

Check out my enormous testicles in my TFLC log!

shrike82 posted:

Speaking of which, what viable production ML systems have you guys seen in the wild?

Youtube recommendations is in the wild but I would not call it "viable".

Keetron
Sep 26, 2008

Check out my enormous testicles in my TFLC log!

smackfu posted:

Thoughts on working for an internal frameworks team at a big company rather than a product team?

I completely missed this one, but I work in an internal framework for publishing content to this global corps .com website. There are teams that are working on frameworks to set up microservices, build pipelines and whatnot.
We are treated well , it is recognised that our work is essential to have a smooth publication of content. The flow from business wants and needs to dev work is smooth, we tend to work agile in the true sense of the word. Everything considered, this is one of the better workplaces around.
For the tools teams, I am not sure how they are treated. I know that people love to complain about internal tools but when I was using it and had a bunch of grumbles and questions, they were very helpful and eager to learn how to make the tools better.

So I think that whatever your team, company culture will make or break you no matter what.

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost

shrike82 posted:

Speaking of which, what viable production ML systems have you guys seen in the wild?

Goog and bing search
Fb recs
Youtube search and recs
Amazon recs
Basically if its a tech major and its recs its got a neural net in it

Any fraud protection system from a company who vaguely knows wtf its doing (stripe, square, paypal)

Less than you would think, in robotics

Lots of qc / qa for real objects, incl. fruit and food and pharma poo poo

SpaceX landing programs are big rear end cvx opt dealies, dunno if that counts. If it does lots of operations research things do

Volguus
Mar 3, 2009

bob dobbs is dead posted:

Goog and bing search
Fb recs
Youtube search and recs
Amazon recs
Basically if its a tech major and its recs its got a neural net in it

Any fraud protection system from a company who vaguely knows wtf its doing (stripe, square, paypal)

Less than you would think, in robotics

Lots of qc / qa for real objects, incl. fruit and food and pharma poo poo

SpaceX landing programs are big rear end cvx opt dealies, dunno if that counts. If it does lots of operations research things do

What's "recs" in this context?

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...
Recommendations

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


shrike82 posted:

Speaking of which, what viable production ML systems have you guys seen in the wild?

Natural language understanding is big in finance right now. It's used in trading to predict how people are going to react to an article and place bets first, but there applications elsewhere too.

Demand forecasting at big retailers (Walmart, Amazon, Target, etc.).

Pretty much anything looking at genomic data.

Volguus
Mar 3, 2009

Volmarias posted:

Recommendations

Oh, thanks. I thought it may mean "recognitions".

shrike82 posted:

Speaking of which, what viable production ML systems have you guys seen in the wild?


Recognition systems. Voice recognition, speech to text for example. Google's is the best out there. Gesture recognition on a touch surface (2D), sensor based (accelerometer/gyroscope) or visual (RGB camera, infrared). More nefarious purposes: face recognition by facebook, police or whoever. They're there and they're working.

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost
there's a built in and fast as poo poo effectively-ml dealio (its a model) for figuring out where you actually tapped when you tap on a phone, iirc. so gesture recognition is not the end of it

Hollow Talk
Feb 2, 2014

PhantomOfTheCopier posted:

ML is popular because you can get results almost immediately and it doesn't matter if they're wrong. People don't understand large systems, so they don't have a baseline with which to judge ML programs. Nevertheless they'll sink a few years and a team of people into it if they get 0.01% improvements and "predictive results". Good luck getting them to agree to even four weeks of focused math research, not that they realize when that is needed. It truly is a perfect example of agilefail.

This is actually an interesting problem that fits well with thread title. I've spoken to somebody recently who is a fairly high-up manager for Risk Management at one of the major investment banks in the City, and they obviously come via the Quant route outline above, since that's what they have either way. We were talking about Agile and Project Management, and he said that while they are trying to become more agile, "Agile" doesn't really work for (financial) modelling. You cannot deliver that in increments. Either the model is finished and correct, or it isn't. You can't deliver half a risk-assessment, with the other half "coming real soon".

I believe you see something similar with ML and, more generally, with BI and Data Science in general. Incremental analyses also mean that they only contain half the story.

This is something we are also kind of fighting with (apart from that whole expertise-thing) -- we started with Scrum and subsequently got rid of big parts of it, since Scrum in a massively multi-project environment, with variable load, with rather short-term requests, and in consulting, was...not a great. Now, we do something somewhere between Scrum and Kanban, and that works well enough for the engineering side of things, but it's still tricky for analysis. You face the same problem for modelling and thus for ML. Oh, your web tracking data/industrial process capturing processes/CRM/ETL processes/whatever had a bug, or partial data? Well, good thing we reported those numbers anyway in that previous sprint/meeting/report.

edit: On the other hand, incremental refinements are the only way to get a better understanding of your data and to build your pipelines and processes. And the same goes for models. However, you can't really have both an evolutionary approach and one that ensures correctness.

Nippashish
Nov 2, 2005

Let me see you dance!

shrike82 posted:

Speaking of which, what viable production ML systems have you guys seen in the wild?

The swipe-typing thing on phone keyboards uses ML. So does the system that estimates how long your trip will take in google maps (and everyone else's maps too). There are a handfull of startups like these guys built around using ML to estimate economic activity from satellite images. More nefariously, there are a surprisingly large number of startups whose business model is to buy all the data they can about individuals and use it to sell proprietary credit scores, which they make using ML.

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


Hollow Talk posted:

This is actually an interesting problem that fits well with thread title. I've spoken to somebody recently who is a fairly high-up manager for Risk Management at one of the major investment banks in the City, and they obviously come via the Quant route outline above, since that's what they have either way. We were talking about Agile and Project Management, and he said that while they are trying to become more agile, "Agile" doesn't really work for (financial) modelling. You cannot deliver that in increments. Either the model is finished and correct, or it isn't. You can't deliver half a risk-assessment, with the other half "coming real soon".

I believe you see something similar with ML and, more generally, with BI and Data Science in general. Incremental analyses also mean that they only contain half the story.

This is something we are also kind of fighting with (apart from that whole expertise-thing) -- we started with Scrum and subsequently got rid of big parts of it, since Scrum in a massively multi-project environment, with variable load, with rather short-term requests, and in consulting, was...not a great. Now, we do something somewhere between Scrum and Kanban, and that works well enough for the engineering side of things, but it's still tricky for analysis. You face the same problem for modelling and thus for ML. Oh, your web tracking data/industrial process capturing processes/CRM/ETL processes/whatever had a bug, or partial data? Well, good thing we reported those numbers anyway in that previous sprint/meeting/report.

edit: On the other hand, incremental refinements are the only way to get a better understanding of your data and to build your pipelines and processes. And the same goes for models. However, you can't really have both an evolutionary approach and one that ensures correctness.

One of my big accomplishments at my current job was convincing my management to not try to use Scrum for research projects. They're loving up everything in other ways, but by gum I saved us that particular heartache.

Hollow Talk
Feb 2, 2014

ultrafilter posted:

One of my big accomplishments at my current job was convincing my management to not try to use Scrum for research projects. They're loving up everything in other ways, but by gum I saved us that particular heartache.

"They're loving up everything in other ways, but at least it's not Scrum" makes for a good pamphlet slogan.

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost
agile is a way to try to get power for developers without doing anything in any way shape or form to get power for developers

works fine if and only if the management is a buncha developers, i guess. that was true for the og agile peeps' firm

Hughlander
May 11, 2005

bob dobbs is dead posted:

agile is a way for agile consultants to sell their time.

FTFY...

shrike82
Jun 11, 2005

yeah, scrum and ML don't mix. it's really annoying to deal with product managers that try to fit model work into that framework

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...
Agile is useful if your "customer" isn't really sure what they want, but they'll take delivery in increments and will actually tell you what they like, and why they don't like the things they don't like. It's a step up from waterfall when you know you're going to need to make changes, it's cheap to do the changes up front, and the stakeholders will give you the leeway to work on it as you feel best.

It doesn't work when the results are proscripted, when the stakeholders don't look at the intermediate results, and when they'll change your tasks from underneath of you daily because it's "agile"

It's a way to have managers think about waterfall development in two weeks increments. If you can't get them to do that, then your unironic best choice is waterfall.

xiw
Sep 25, 2011

i wake up at night
night action madness nightmares
maybe i am scum

Cpig Haiku contest 2020 winner
Watching small agency teams try and do scrum is enraging. oh look you planned out seven sprints worth of work for 1 person to do in advance, that was a good use of days of slaving in jira for this fixed-price job

it's improving though

Hollow Talk
Feb 2, 2014

Volmarias posted:

Agile is useful if your "customer" isn't really sure what they want, but they'll take delivery in increments and will actually tell you what they like, and why they don't like the things they don't like. It's a step up from waterfall when you know you're going to need to make changes, it's cheap to do the changes up front, and the stakeholders will give you the leeway to work on it as you feel best.

It doesn't work when the results are proscripted, when the stakeholders don't look at the intermediate results, and when they'll change your tasks from underneath of you daily because it's "agile"

It's a way to have managers think about waterfall development in two weeks increments. If you can't get them to do that, then your unironic best choice is waterfall.

This is also why agile is tricky/trickier with multiple customers, since each customer on their own might actually be alright in terms of delivering increments, but with multiple projects, you basically constantly juggle whose increment will be more or less substantial. It's a permanent tug of war in which only management wins, since no matter which customer gets his stuff done, you are working full tilt.

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

Hollow Talk posted:

This is also why agile is tricky/trickier with multiple customers, since each customer on their own might actually be alright in terms of delivering increments, but with multiple projects, you basically constantly juggle whose increment will be more or less substantial. It's a permanent tug of war in which only management wins, since no matter which customer gets his stuff done, you are working full tilt.

That's when the PMs do their zigbees with each other's spreadsheets and decide what has which priority when, and what the backlog for the UPCOMING sprint (or the one past that instead, if you're lucky enough to have that pull) looks like IN GENERAL. You'll be switching what you work on but you'll have the time to make the cognitive shift.

shrike82
Jun 11, 2005

It's too bad Scott Adams became a MAGA chud because he was good at skewering enterprise IT culture and it'd be good to see "modern" strips covering stuff like Agile and the ML bubble.

shrike82 fucked around with this message at 01:59 on May 28, 2019

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!

xiw posted:

Watching small agency teams try and do scrum is enraging. oh look you planned out seven sprints worth of work for 1 person to do in advance, that was a good use of days of slaving in jira for this fixed-price job

it's improving though

Sup Army of One buddy.

When I get in these situations, I used to joke I was like that requisite episode in old cartoons where the group goes to a ghost town and discovers one person quickly changing hats to be the sheriff, shopkeeper, and saloon owner. They then thought that was a good thing. I'm now working on a new analogy: I'm the one guy bemoaning my ghost town in Scooby Doo and if they see me suddenly start getting interested in real estate, they're about to get eaten by a holographic ogre I am making for a scam. I need to work on it some more.

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost
Tell them to suck dick do one persons work at a time and look for newjob or new engagement

Hollow Talk
Feb 2, 2014
Charge for every hat separately. I have to check with my PO! I'll have to do a retrospective with the team. Daily standup is important so I need to go now. Sorry, planning will have to be billed. Sorry, I need to escalate this within the team. Especially if they know it's just you!

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!

bob dobbs is dead posted:

Tell them to suck dick do one persons work at a time and look for newjob or new engagement

Well you may have noticed me posting about a lot about algorithm and data structures recently...

PhantomOfTheCopier
Aug 13, 2008

Pikabooze!

bob dobbs is dead posted:

Goog and bing search
Fb recs
Youtube search and recs
Amazon recs
Basically if its a tech major and its recs its got a neural net in it

Any fraud protection system from a company who vaguely knows wtf its doing (stripe, square, paypal)

Less than you would think, in robotics

Lots of qc / qa for real objects, incl. fruit and food and pharma poo poo

SpaceX landing programs are big rear end cvx opt dealies, dunno if that counts. If it does lots of operations research things do

I find this first chunk interesting, along with some of the other posts, but I'll start here. Internet search didn't start with machine learning, and when I search for coffee I get indexed results from the pool that answers (which isn't Google anymore because they just screwed up their site). The ML is only on the classification and ranking side; right? That's an improvement over full text indexing, for certain, because of the nature of language.

So linguistics, voice recognition, that stuff I believe. I think most quality recognition for fruit and such is a matter of convenience only, and I don't believe it's notably better than deterministic algorithms.

The "black box" nature of most ML projects makes it de facto irrefutable. That doesn't make it wrong, just unverifiable. Yes there are silly examples (cancer caused by medical rulers, ref?), but swipe gets it wrong all the time and increasingly so does (did) Google. When I find myself doing the (-b -c -d garrr I'll just use full Boolean!) game, all their work has failed... drastically.

Shrug. This much I know, not speaking about anyone here, but there are some posters in SA who can only be understood with ML, if even then. :buddy:

shrike82
Jun 11, 2005

Most criticisms about black box models are tied to Deep Learning rather than Machine Learning, which includes more traditional algos. The former does perform significantly better on certain classes of problems (e.g, vision, NLP). And people are working on the interpretability aspect (e.g, visualizing hierarchy of features with CNNs on image problems).

Competent practitioners should be able to leverage traditional ML approaches - it's fairly easy to suss out by testing them on theory and past business applications rather than just discussing sexy new frameworks. This is just like interviewing for any other engineering role.

Nippashish
Nov 2, 2005

Let me see you dance!

PhantomOfTheCopier posted:

The "black box" nature of most ML projects makes it de facto irrefutable. That doesn't make it wrong, just unverifiable. Yes there are silly examples (cancer caused by medical rulers, ref?), but swipe gets it wrong all the time and increasingly so does (did) Google. When I find myself doing the (-b -c -d garrr I'll just use full Boolean!) game, all their work has failed... drastically.
Google's original algorithm was pagerank, which is a classic ML algorithm at this point. A modern search engine doesn't look like pagerank though. A modern search engine is a very complicated beast that uses machine learning in literally tens if not hundreds of thousands of ways. As an example, if you search for something on Google (or bing, or whatever search engine) then for every piece of text that appears on the page there is at least one learned model involved in deciding each of what it says, how long it is, what size it is, and where it appears on the page.

Your paragraph is pretty hard to parse though. What do you mean by irrefutable and unverifiable?

Typically the place where ML shines is in tasks where the right answer is either ambiguous (e.g. perception or language tasks) or it is very hard to articulate why the right answer is right (e.g. again perception, but also things like "which search result should go first?" or "is this customer going to come back?"). In situations like this it's misleading to judge systems on absolute accuracy alone, because the tradeoff available isn't between a non-learned system that works and a learned system that doesn't. The tradeoff is between many different systems that all work with varying degrees of success. So yes, something like swipe gets the intended word wrong fairly often, but try looking at where you're actually putting your fingers to appreciate how poor of a signal it has to work with.

There is an emergent rich-get-richer effect that you get from systems that learn from people and also influence their behavior (like search, or netflix recommendations, and so on) whose effects can range from annoying to very problematic. This effect is why systems that recommend content by topic have so much high ranked 101 level bullshit, and it's also the same effect that makes facebook and youtube into radicalization engines. The right takeaway from this isn't "machine learning doesn't work" though, it's more like "machine learning and society interact in complicated ways at scale."

PhantomOfTheCopier
Aug 13, 2008

Pikabooze!
This is getting into awfully technical considerations that likely belong elsewhere. I'll admit to being biased against most "machine learning" (actual or otherwise), but also admit to knowing of a handful of large successes that I'd prefer to continue to use. :angel:

Maybe when I start going through my backlog of agliefales I'll have a few ml stories to share.

Adbot
ADBOT LOVES YOU

Subjunctive
Sep 12, 2006

✨sparkle and shine✨

Wait, pagerank was ML? What decision changed over time? I haven’t read the paper in a while (and AIUI Google’s ranking has never actually been what’s in the paper), but I recall it being a deterministic algorithm independent of previous inputs.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply