[HN Gopher] Machine learning is still too hard for software engi... ___________________________________________________________________ Machine learning is still too hard for software engineers Author : gk1 Score : 98 points Date : 2022-02-22 20:07 UTC (2 hours ago) (HTM) web link (www.nyckel.com) (TXT) w3m dump (www.nyckel.com) | deepsun wrote: | I've dived into ML (and DL) with 17 years of software development | experience. I'd say it's much easier than software. Yes, there's | A TON to learn and experiment with, but still much less than with | software. I was able to feel confident enough after just 1.5 | years learning and kaggling, and passed easily ML interviews to | SF Bay Area companies (hint -- all data science people are | extremely glad to see software experience, much more than data | science). | | "Good pipeline and bad model is much better than bad pipeline and | good model" (c) someone | mrfusion wrote: | Can you share how you switched into ML? How and what did you | study? Any tips? | abc_lisper wrote: | Yeah, would appreciate if parent answers this. | monkeybutton wrote: | Bad pipeline means bad data, and bad data means bad model. Its | as simple as that. | jacobr1 wrote: | Bad pipeline is too strong. But good enough pipeline + good | enough models > bad pipeline + great model | exdsq wrote: | My wife is a researcher at Stanford doing some ML stuff and | the constant painpoint isn't the researching of novel | models or maths or whatever, it's the IT hell of managing a | pipeline and data acquisition. I've helped her introduce | things like Docker to the lab which seems to have helped | but still - software engineering is a totally different | skill that really hinders ML work. | vorpalhex wrote: | I'm ok with this. ML should remain expensive and hard to use | while we grasp how to regulate it and understand it. We need less | ML, not more of it. | ramesh31 wrote: | Can confirm. Data science team just schooled the entire | engineering department in our Deep Racer tournament. | fxtentacle wrote: | In the gocoder Bomberland competition, my DL AI trained on 1.5 | billion timesteps just lost against someone handcrafting | algorithms in Python in one day. | | You're absolutely right, sometimes, simple and predictable | solutions are much better than AI magic ^^ | exdsq wrote: | Makes sense though, right? Data team did data stuff better. If | you had a different task with an engineering focus you'd see | the opposite. | rememberlenny wrote: | This is timely. | | I just compiled a few resources I found useful on groking | computer vision and deep learning. | | Short list I've enjoyed recently: | | - PyImageSearch blog: https://pyimagesearch.com/blog/ | | - Fastai library and course: https://www.fast.ai/ | | - Yan LeCun's 2021 Spring NYU class: | https://m.youtube.com/playlist?list=PLLHTzKZzVU9e6xUfG10TkTW... | Irishsteve wrote: | I'm doing ML a long time, practice makes perfect etc. If anything | is too hard, it is front end. | tiborsaas wrote: | As a senior frontend engineer, practice makes perfect, frontend | is easy-peasy. ML/AI seems to have this thick wall of math | around it, if I really want to understand what makes the models | going. | marcinzm wrote: | Yeah, it felt like a sales person being confused why can't | become an expert fullstack software engineer on up to date | modern stacks without a lot of effort and time. | modernpink wrote: | Most CS grads coming onto the engineer market now will have ML | exposure through their chosen college courses. As this wave of | knowledge makes its way through the industry, the value of ML | specialist knowledge will decline, especially as off-the-shelf | pre-trained models improve. Very few companies then will be able | to justify the luxury of a dedicated in-house data science/ML | engineering team. In other words, most software engineers will be | ML engineers, in the same way most software engineers today are | Docker/cloud proficient engineers. | clircle wrote: | No, this article is wrong on the first sentence. The hardest part | of machine learning _is_ in fact curating quality data. | disgruntledphd2 wrote: | That's the essential complexity. The OP is correct that there's | far more accidental complexity involved than seems strictly | necessary. In an ideal world, I wouldn't have had to spend the | last few years learning software engineering in order to be a | better data scientist. | PLenz wrote: | Physically training the models isn't the hard part. It knowing | why you using x method, how to interpret the result, and what | dials to turn that's the hard part. And there's no automating | that. | bob1029 wrote: | We made an experimental foray into the ML space in attempts to | accelerate authoring of SQL queries. | | After about a week of reading through literature and playing with | open ai, it became pretty obvious we were still super far away | from being able to build something the business could actually | find value in. | | My problem scales horribly with the ML training angle we have | today, because it's the super complex one-off queries we need the | most help with, not the simple ones we can anticipate and train | against. | | What we need is _actual_ intelligence for many of our problems. | Things like subjective criteria are important to us. Realizing | maybe a recursive query is a fair compromise to reduce a 400 line | monster to 30 lines. Assuming the 400 "looks nasty", that is. I | guess you could train that bit too, but then your solution space | gets even more impossible to target. | spaetzleesser wrote: | I still remember when SQL was a dark science that could only be | managed by administrators that were initiated in secret rooms. | Nowadays a lot of people use SQL without deep understanding. They | do useful stuff but if you are very skilled you can do way more. | And SQL experts are often frustrated with all the amateurs that | use their database in such a sub-optimal way. | | I expect the same for ML. The tooling will improve until regular | developers can use it without understanding the fundamentals. | They will do useful things but some skilled people will be able | to do way more advanced stuff. | | That's pretty much the path of all technologies. They get | simplified to a level where they useful for a lot of people but | some experts will be able to get way more out it. And usually the | experts look down on the amateurs. | rchaves wrote: | I really like the premise, and I really agree with it, but I | don't think a SaaS is a solution, the solution is trying to find | better abstractions that makes things simple and easier for the | developers, using code, and without limiting their flexibility, | but that's the hardest thing to do! | | As an experienced software developer who used to learn a new | framework every week, I thought ML was going to be piece of cake. | In reality, I went down this rabbit hole 4 years ago, and I'm | still in there, I was so innocent back then | lbriner wrote: | The issue with abstractions is that ML isn't just a few | variables or dissimilar systems to choose from, the whole | problem domain that could be helped with ML has so many | dimensions. Natural language, speech processing, pattern | recognition etc. are all completely different. The only thing | they have in common is that you might use computers for them. | | I think that is why people find ML so hard. It isn't a single | sausage machine to create insight from, it is a set of entire | stacks from philosophy all the way down to the electronics. | oblak wrote: | Good points. But truth is SaaS can be a great solution if you | pick Nyckel! | | Sorry, it had to be done. | saintarian wrote: | Author of the blog post here - it's very cool to see this on HN! | | I wrote this as someone who considers himself a half-decent | software engineer trying to use ML for a side project and feeling | frustrated by all the effort and "accidental complexity" | involved. Why focus on software engineers and ML in this | post/rant/company? Because "software is eating the world" and | having ML be more accessible to software engineers will broaden | the range of problems they can solve. | | Thanks for all the comments - I acknowledge all/most of the | criticisms as valid. A SaaS/AutoML solution won't work for | everyone and definitely not for every problem, and it won't be | the only answer to making ML more approachable. | jakupovic wrote: | The hardest thing about ML is getting right data in right format. | This is the same of pretty much any other program, but ML has a | special place. | version_five wrote: | I'd argue software engineering is still too hard for ML | engineers. Most of ML (not research but commercial applications | of what's already been demonstrated) is now well within the realm | of engineering, but there are few standard practices, bodies of | knowledge, or agreed on processes for doing anything. These are | problems that engineering formalism solve, not another auto-ml | tool. Maybe I'm saying the same thing as the article, just framed | differently? | yldedly wrote: | In my experience, both are true. I'm more on the ML side, and I | can tell I don't have the kind of routine and habits that good | software engineers have, though I'm learning. But on the other | hand, and I've seen this from software engineers who've made | the transition to ML, and clearly have a good handle on the | concepts (in one case even published papers in ML journals), | they don't seem to have the intuition that allows them to | select the right tool for the job, or understand when a given | technique is appropriate; you could call that "modeling | maturity" - a combination of mathematical maturity and the | skill of relating domain knowledge to modeling choices. | 7h3kk1d wrote: | I think the above commenter is more critiquing the notion of | relying on intuition all together. | yldedly wrote: | Right, I see. That's not really possible imo. For things | like mlops, sure. But model development, selection, | evaluation? From what I've seen, it's exactly when | engineers reach for standard tools without giving thought | to how it applies to the given problem that they do a bad | job. | jacobr1 wrote: | Even in non-ML software engineering you still have | architectural tradeoffs, that while you can in part make | reasoned arguments about, you still are relying on the | intuition of your technical leadership. | otras wrote: | To add to your point, the _Hidden Technical Debt in Machine | Learning Systems_ paper: | https://proceedings.neurips.cc/paper/2015/file/86df7dcfd896f... | zcw100 wrote: | I'd argue software engineering is still too hard for software | engineers. | garyfirestorm wrote: | lol I did an ML course in 2017. I am a mechanical engineer with | some computer skills and managed to do lot of tensor flow models | quite successfully. It's funny to read that this could be hard | for software guys. | monksy wrote: | Machine learning isn't for SWEs. It's for data scienctists and in | a limited sense of Data Engineers. | [deleted] | surrTurr wrote: | Nice read. However, it seems a bit fishy that the website | publishing this article is a company offering ML as a service. | They as a company directly profit from people not wanting to | learn ML themselves. I'm not saying they wrote this article to | increase sales, but it's a thing to keep in mind. | etangent wrote: | One might as well write an article claiming that "UI design is | still too hard for software engineers" or "controlling a nuclear | power plant is still too hard for software engineers" -- which | are true (and it is equally true that software engineering is | hard for UI designers and nuclear power plant operators). | | Who came up with this silly idea that something that is a valid | knowledge domain of its own is suddenly going to become "easy"? | sbeckeriv wrote: | Can we not apply Machine Learning to teaching Machine Learning to | software engineers? | stevenalowe wrote: | So is software engineering | uoaei wrote: | Wow, it's almost like machine learning and software engineering | are different disciplines entirely! | | Just because both involve coding doesn't mean software engineers | should be expected to have the math chops (stats/prob, linalg, | calc, etc.) to make machine learning work for them... | | Vice versa is a little more complicated, because ML/DS can be | done very inefficiently without the proper coding practices, but | understanding the math is independent of that so that point still | holds for this comparison. | jstx1 wrote: | > machine learning and software engineering are different | disciplines entirely | | I don't think so. Or more precisely, they might look different | academically but you need to have both as a skill to build | something useful. | uoaei wrote: | In-built is the assumption that one person must have both | competencies. This may be true for cash-strapped startups but | this hardly plays well as general advice. | jstx1 wrote: | It's not an assumption, that's my main point - you need | both skills in the same person. And it's true everywhere | including in the biggest companies. | uoaei wrote: | Any good tech lead will remove that need, so no, still | not good general advice. | disgruntledphd2 wrote: | Regardless of how low you get your communication | overhead, it still exists. It's rare to find people who | can both run and test all the infrastructure and model | code, and notice that the transformation you apply on | line 34876 of file foobar_now_with_added_ml.py is | statistically inappropriate for your problem. | | That's not even to mention the really hard part, | selecting a good outcome variable and appropriate ways to | measure the performance of your system once it hits prod. | | You can definitely split this stuff between people, but | it gets super-linearly harder as you add more people, so | it's really incredible to find people who can do both | (and honestly, there aren't that many of them (I'd like | to say us, but I'm probably not there yet)). | torbTurret wrote: | Amazon has some cool interactive articles that make it easy to | understand some concepts, eg: | | https://mlu-explain.github.io/decision-tree/ | zwieback wrote: | Missing in these advertisements-disguised-as-blogs is an estimate | of effort or time. Let's say ML is critical to a new product or | internal tool, how many man-years is it reasonable to invest? If | your expectation is using ML like a drag-and-drop app builder | then you're probably best off using a canned tool but then you | won't really have any competitive advantage. | lysecret wrote: | So, I went directly into data science after an econ degree, | worked there for 2 years and then transitioned to SWE (at | startups). First, I am 100% certain ML will become a part of the | standard SWE toolkit (just like apis, docker, sql, etc..). | However, to the relative "hardness" I would say ML currently is | much less things but they can be really hard to get your head | around (like starting to think in embeddings and vectors), and | many APIs are wonky, because they are new. And the whole data | science workflow space it in an early spot (we are still missing | a "create-data-app", simmilar to the create-react-app. | antisthenes wrote: | Your career path seems really interesting. Do you have a blog | or some kind of work showcase where we can follow your journey | and work? | howmayiannoyyou wrote: | The best tutorials for indoctrinating software engineers in ML | are written accessibly & use real-world business-case data, or | easily comprehended data sets. One great example of this, from | graph theory, was this fantastic 2013 article by Kieran Healy: | https://kieranhealy.org/blog/archives/2013/06/09/using-metad... | | There's no getting around the complexities of fit, bias and | customized models for many ML problems, so my observation above | is obviously limited in its applicability. | binarymax wrote: | This line _" Set up low-latency, elastic, highly-available, and | cost-effective inference close to your data."_ is the problem | I've found that annoys everyone - Software Eng don't understand | MLOps, Data Scientists don't understand systems programming, and | everything ends up costing way too much money and taking way too | much time. | | Even with a magic API the latency still isnt good enough, so the | choice is often entire ML solutions like the OPs product, months | of development time, or a really expensive container. | | Shameless plug since my Show HN went completely ignored earlier | today ;) ...but that's why i built this: | https://news.ycombinator.com/item?id=30428664 | tehsauce wrote: | Another perspective, someone with no programming experience | whatsoever today can in 1 minute create a new ML application for | natural language tasks with performance that would blow most SOTA | systems from 5 years ago out of the water, using things like the | openai API. And this trend will almost certainly continue, where | many tasks can be programmed by simply asking/describing the | problem to a massive model and letting it work magic. | lbriner wrote: | That might be true but my experience is that people are much | better at building tooling than they are at using it properly. | | So many organisations can't even get the basics of efficiency | and custom service right but they still invest heavily into | cutting edge tech. I can imagine plenty of companies joining | the ML bandwagon and still not even really knowing what they do | as a business. | dTal wrote: | This seems a trifle hyperbolic. No programming experience | whatsoever? Remind me what the 'P' in 'API' stands for? | dhairya wrote: | The challenge for the engineers at our AI startup is that | deterministic testing paradigms don't adapt well to probabilistic | models that are continually being retrained. As a scientist is | hard to convey the acceptable range of variance and often the | random change of individual predictions at the decision boundary. | It's also hard debug behavioral issues that actually are | systematic model failure versus those that are traditional | infrastructure bugs. Often times the band aid is that build | lookup tables to ensure certain behavior which in turn also | underlying issues from being discovered. | | Testing paradigms are either too high level or too specific. | Recent work on evolving behavioral tests addresses this but it | requires more manual effort and interpretation which kinda | defeats to point of automated tests. | Xcelerate wrote: | Coming from a background in computational quantum chemistry, it's | interesting to see all of the people who say ML is "easy" after | taking a few online courses and reading some books on data | science. If it's so easy, invent AGI then, since that is the holy | grail of machine learning. | | Most of these people claiming expertise do not have a deep grasp | of the mathematical fundamentals required for state of the art | research in the field. Can you develop a neural network with | features that are invariant to permutational and rotational | symmetries? If so, how do you efficiently generate the | irreproducible representations of the product of the symmetric | and special orthogonal groups for use in a fast Fourier | transform? What is minimum description length and why is it so | fundamental? How do you solve trust-region problems on Riemannian | manifolds? Throwing an off-the-shelf PyTorch library at a problem | does not make one an expert in machine learning. | uejfiweun wrote: | Not to disagree with your point, but your comment really | reminded me of the following scene from Breaking Bad: | https://www.youtube.com/watch?v=W_dxteeedgs | surrTurr wrote: | I'd argue that integrating ML into a project isn't the hard | problem, as it was described in this article. Most people will, | after some research, be able to build some basic ML functionality | using popular libraries and a bit of python. The hard thing about | ML is, when you try to actually understand it. I've met many ,,ML | engineers" who do their job but do not actually understand what | they're doing. Understanding ML doesn't have to do a lot with | coding. It's math and statistics. | Thaxll wrote: | I view ML the same as crypto, a fad that will go away in the | future and remains in certain nich realms. | binarymax wrote: | ML has already added actual value to so many industries. While | the AGI fantasy may never happen and we may even see another AI | winter, the existing products and solutions that you use every | day are powered by ML. | swframe2 wrote: | In general, getting a phd is the best way to go but it is not the | only way. "The AI Epiphany" channel by Aleksa Gordic is worth | watching. Check out his origin story: | https://www.youtube.com/watch?v=SgaN-4po_cA He works at DeepMind. | He is self taught; without a phd. | alexcnwy wrote: | Aleksa is great. | | Also check out Jeremy Howard from fast.ai - also no PhD but | amazing teacher and contributes actively to research. | | Chris Olah (Google Brain, OpenAI, etc) go to university at all. | | PhD definitely not required. | xiphias2 wrote: | I tried to build on top of fast.ai, and it was very easy to | start, but all the hooks and magic in fast.ai 2 just made it | extremely hard for me to understand and extend the code. I | believe it went in a bad direction. | master_yoda_1 wrote: | OP first define which software engineers you are talking about. | Otherwise stop bullshitting just to market your company? | xavxav wrote: | Sort of hijacking, but I've always wondered: Where are our | 'neural binutils'? | | I want to be able to compose these tools like I would random unix | ones: Something like 'Identify album covers in this image | | extract the text in said covers | spotify api'. | | It seems like there are so many breakthrough models but both due | to technical (size/compute) and industrial ($$$) concerns they | remain out of reach for random devs, let alone packageable into a | `grep` style composable tool. | jldugger wrote: | > Where are our 'neural binutils'? | | Assuming you mean coreutils. binutils is for | managing/inspecting binary executables. | | But to your point: there were two key innovations and criteria | of UNIX pipelines: a common and understandable data format, and | writing programs to send and receive anonymous data. Crucially, | the input and output formats were the same: plain text, | separated by newlines. | | In contrast neural networks are applied to a variety of data | formats. Images, video, audio, text, social networks etc. each | with their own encoding into something an NN can work with, | with varying dimensions, features, metadata etc. So it doesn't | make sense to bundle them as 'neural utils' but rather utils | along whatever pipeline already exists, like GraphicsMagick. | Which does leave a huge blind spot for the domain transforms | like text recognition. | | If you stay within the AI ecosystem, you _can_ set up reusable | layers for tensorFlow, but typically you cant swap out | something in the middle without retraining all layers below it. | Which you might treat as a violation of the anonymity | criterion, since the behavior / performance of a layer relies | on the specific behavior of those above it. | fxtentacle wrote: | "Machine Learning is too difficult" ... says company selling "ML | platform [which] can be used by anyone and it only takes minutes | to train your first model." | | No, actually, you're just being dishonest. Even if you hide | TensorFlow and the keras models behind a nice GUI, people still | need that mathematics knowledge to succeed. And yes, pre-training | is great. But you need a shitload of stochastic analysis to make | sure that the pre-trained embedding won't distort your results. | | "For a software engineer, the hardest thing about developing | Machine Learning functionality should be finding clean and | representative ground-truth data, but it often isn't." | | That is (in my opinion) an entirely bogus request. Machine | learning is a mathematical / statistical tool for modeling large | unknown functions. I feel like this sentence is akin in | usefulness to: | | "For a nuclear power plant, the hardest thing about building one | should be to draw how the finished building will look like in the | press release". | | Someone "doing" machine learning without the requisite math | knowledge is effectively driving blind. And worse than that, they | don't even know what they don't see, because they lack the skills | to identify their blind spots. That's how you end up with a "tank | detection AI" that in reality just classifies the weather into | bright vs. dark. [1] | | Companies like this who promise advanced mathematical algorithms | with no prior skill or knowledge are how we unleash a plague of | buggy unverified automatons upon the world. | | [1] https://www.lesswrong.com/posts/5o3CxyvZ2XKawRB5w/machine- | le... | l33t2328 wrote: | > That's how you end up with a "tank detection AI" that in | reality just classifies the weather into bright vs. dark. | | It seems to me the lack of knowledge was not knowing to use a | diverse sample set, not some lack of mathematics knowledge. | vladoh wrote: | While driving, do you understand how the engine ECU of your car | computes how much fuel to inject into the cylinder, how the | ECUs distribute the power, and the braking force on individual | wheels, or how your rear wheel steering calculates the turning | angle of the rear wheels based on your seed and steering input? | | You don't need to know most of the details how your car works | in order to drive. You need much more knowledge to build one, | yes, but not to drive. | | There are different levels of abstractions and depending on | your problem you need to understand them only up to a certain | level. And different people have different problems to solve. | | In most real-world problems today, the difficult part is indeed | the data, not the underlying math of the activation function, | loss function, or optimizer. Just Google "data-centric AI | Andrew Ng" to read more on the topic from one of the most well- | known people in ML. | glouwbug wrote: | Resume driven development is real. Who wants a crud app on | their resume when they can have a crud + ML app on their | resume? I remember back in like 2016 recruiters devoured anyone | with the slightest bit of ML experience on their resumes: it | fed back into the ego of developers, and suddenly everyone was | an ML expert who could do no better than load a JSON of data | and import keras. What a strange trip that time was | fxtentacle wrote: | I feel like we're seeing the next round of that now with all | those "build your own advanced Deep Learning AI in 3 simple | steps" websites. | | Clarifai, Amazon Rekognition, Google AutoML Vision, Nykel | (the article here), Amazon Comprehend, Google AutoML Natural | Language, MonkeyLearn, Lateral, BigML, Azure ML, Lobe, | DataRobot, Rapidminer, Dataiku ... | | Did I forget anyone? | | EDIT: H2O's Driverless AI, Floyd, AWS SageMaker, Databricks | | EDIT2: Pega Platform, MLFlow, Comet.ml | | EDIT3: $SNOW SnowFlake, Spell.ml, Cloudera ML, Alibaba Cloud | disgruntledphd2 wrote: | Snowflake is not like the others in that list, as they just | provide a pretty good SQL dialect over cloud storage, and a | tolerable UI and API access, for a pretty indeterminate | price (who knows how much a credit is worth this quarter?). | | Personally, if there's ever a downturn, I plan to play | Snowflake sales people off each other and get enough | credits to last me a lifetime ;) | tluyben2 wrote: | Unfortunately there are a shitload of ML 'experts' out there | who do not know what they are doing but still get results that | are good enough to not get fired and receive copious amounts of | money every year. These tools help doing that; companies | generally don't see the difference anyway and they don't know | how to set or evaluate KPIs on these ventures; they don't even | know what or why they are asking for; they just know they need | to show progress with AI to not become obsolete. | habitue wrote: | This goes a little too far. For traditional ML, sure, you need | lots of deep statistical knowledge. But the fact is that deep | learning is different: it's mostly a black box. _no one_ | understands exactly what they 're doing, how they're biased, | and how exactly these models understand things differently than | humans, whether you have a PhD in statistics or not. | | Because of that, doing deep learning consists of a bunch of | cobbled together heuristics for getting good results and | probing the model to give a human an intuition for whether it's | learning correctly. The tricks and tips for steering that black | box have mostly been developed in the last decade: it is not a | super deep well. | | These tricks and heuristics are like the knowledge needed to be | a technician in a nuclear facility, not the knowledge needed to | build the nuclear facility in the first place. It's not | nothing, to be sure, but unless you're a researcher developing | new novel architectures, a very shallow understanding of the | statistics will go a very long way. | zozbot234 wrote: | It's no different, statistical knowledge is still needed to | draw the best possible inferences out of the combination of | limited data points and prior general information with | varying strengths/confidence levels attached. Not to mention | that loosely "black box" methods have a long history of their | own in non-parametric and semi-parametric stats, so it's not | like deep learning is doing anything radically different. | etangent wrote: | Even so, there are procedures, protocols, and best practices | for working with (and validating) black boxes, acquiring | which may require time, skill, and patience. | habitue wrote: | Sure, but it's finite, reasonably circumscribed, and | honestly not that mathy. | | I mean, even the example given by the OP about the tanks is | super well known (apocryphal[0]) and doesn't require math | knowledge to avoid. You just have to have heard of this | kind of failure mode | | [0] https://www.gwern.net/Tanks | FridgeSeal wrote: | > You just have to have heard of this kind of failure | mode | | Yes exactly. You have to be aware of it, you have to know | what it entails and what can cause it and how to diagnose | and fix it. | | That's the other half of the domain knowledge, and just | "autoML-ing it" or following some set of prescribed steps | won't necessarily get you that solution. | igorkraw wrote: | The "deep learning is a black box" meme is about 5 years past | it's due date. It's not as tight as for convex models but we | _do_ understand what 's going on inside, just not perfectly | yet. | habitue wrote: | I think we're talking about different levels of | understanding. For things like convex optimization, we have | optimality results. For deep learning we have "try to stop | training early because it tends to get overfit if you run | it too long", "increase the number of parameters in the | transformer to magically get uncanny impressions of written | text out". These are not the same kind of understanding. | | If I hand you a 175B parameter language model, are you | really contending we know what's going on in there? At a | mechanical level, sure, it's tensor products and activation | functions, but that's like saying we know how human brains | work because the standard model is very predictive. | hooande wrote: | Not sure why you're making a distinction between ML and deep | learning here. both of them can be black boxes. Calculating | the area of a square can be a black box if all you know is | how to plug numbers into the formula. | | A big part of machine learning is looking at weights and | outputs to make sure the results are sane and that you have | an understanding of what's going on. This is true no matter | what algorithm you use to make predictions. | rjsw wrote: | If the data is garbage then it doesn't really matter how good | your maths knowledge is, I challenge you to get a working "tank | detection AI" when you are just training it on pictures of | different cats. | | The Nuclear Power industry is starting to think about stopping | doing all designs on paper, maybe in a few decades they will | have achieved this, sending a message that good data is the | thing they should work on first isn't a bad idea. | CoastalCoder wrote: | > I challenge you to get a working "tank detection AI" when | you are just training it on pictures of different cats. | | Unless you're focusing on German tanks :) | efitz wrote: | Who cares if you overfitted? See, the model has 100% success | rate vs the training set! | | Who cares if it denies bail to minorities or hits a few | pedestrians from time to time? | | The problem isn't that ML is too hard, it's that it's too easy. | Crazy people keep connecting ML to systems that matter- that | have real, irreversible impact to humans- and they don't | understand it. | | I wish ML were 1000x harder/more expensive to integrate so the | economics would drive away frivolity. | counters wrote: | This is exactly right. | | I've seen it time and time again: Team has a black box ML/AI | solution to a "problem." Team wants to eke out better P/R or | deal with some complex edge cases. But team's problem is | fundamentally ill-posed and no amount of hacking or kludges | will actually produce the success criterion that they need. | | The problem is the accessibility to these tools, which in | many times has led folks to neglect the subject matter | expertise required to effectively _apply them_ in the first | place. At least as these tools catch on in popularity in | myriad problem domains, there will be a new generation of | subject matter / domain experts who are familiar with them, | and we'll probably jump over this hurdle. | hinkley wrote: | "For a software engineer, the hardest thing about developing | Machine Learning functionality should be finding clean and | representative ground-truth data, but it often isn't." | | Which is so much bullshit. The hardest thing is validating your | hypotheses, which machine learning turns into a black box. When | we have coworkers who insist on operating on wishful thinking | we try to maneuver them out of a job. Except every 10-15 years | when the built up pressure of fads overwhelms reason and we all | get stupid for a generation (which in software is about five | years). | | The things that started as AI that we don't call AI anymore, | and don't lump in with AI when discussing successes or | failures? It's because they can be explained in plain English | and implemented without much or even any special jargon that | marks it as anything more than exceptionally clever Logic. | picardo wrote: | I agree with this. The emphasis of any product that wants to | democratize ML should be on making it easy for lay people to | train models, and to collaborate with ML experts. | horsawlarway wrote: | I agree entirely with this. | | Software developers _HAVE_ to have an understanding of the | subject they 're developing for. Computers are not brains, and | they are not able to understand the objective or context in | which they run. | | I could spit out their crappy tagline - "the hardest thing | about developing __X__ should be __Y__, but it often isn't." - | for almost any topic. | | "The hardest thing about developing an inertial navigation | system should be getting clean sensor readings, but it often | isn't" | | "The hardest thing about developing MITM proxies should be | getting certs configured, but it often isn't" | | "The hardest thing about developing web extensions should be | setting up your manifest file, but it often isn't" | | "The hardest thing about web development should be handling | https requests, but it often isn't" | | "The hardest thing about having a baby should be labor, but it | often isn't" | | "The hardest thing about making a car should be getting high | quality steel, but it often isn't" | | ON AND ON. ___________________________________________________________________ (page generated 2022-02-22 23:00 UTC)