12 ms·
How a Japanese cucumber farmer is using deep learning and TensorFlow
- dangerlibrary 10y agotl;dr: With a training dataset of over 7000 images, the system is incapable of performing the cucumber sorting task on live data with greater than 70% accuracy - likely do to over fitting on the "small" training set (where it shows 95% accuracy). Also, it is currently incapable of taking into account a number of the existing variables used for sorting. If one were to leverage the power of a supercomputer trained with tens of thousands more observations - all meticulously hand categorized - it would probably get better. Truly, we are only limited by our imaginations.
- tantalor 10y agoHow does it compare to human sorters?
- dangerlibrary 10y agoI understand the rhetorical implications of your question, but I am unclear on how you expect me to answer it.
- throwaway2016a 10y agoI'm not sure it's rhetorical, I think the implication is that human sorters are also imperfect so what's there accuracy level? Is it 70% (a tie), 90% (clearly better), or 50% (the computer is better).
- dangerlibrary 10y ago<semantic discussion about the use of "rhetorical" in my comment ensues. We land at some kind of an understanding of one another and we both grow a bit as human beings.>
- mhb 10y agoSo how does it do versus his mother? Regarding how much their results agree or disagree.
- yomly 10y agoWell given his mother is by definition the training set, surely the machine can only perform as good as or worse than her...?
- coldtea 10y agoThere's no reason to presume that. It's not like conveying knowledge in the sense of information transfer (where by definition a student can't know more than their teacher -- without external help). It's like teaching a skill. In human terms, a person can get to play better piano than their piano teacher, better poker than the person who taught them poker etc. As the "training set" she just gives the basic skills for the recognition. The algorithm could discover further patterns she can't see beyond what she knows (e.g. she knows just that greener ones are usually better, but the algorithm notices that greener and taller are usually also better), do the calculations much faster and consider many patterns while the woman does a more shallow examination, etc.
- dangerlibrary 10y agoIn order to get the necessary data for a machine to bootstrap new criteria, wouldn't you need an independent scoring function for each sample? How are you going to get that data - are you going to auction off individual cucumbers? Alternatively, you could track each cucumber with an Independent ID to see when it is sold, relative to other cucumbers - on the assumption that people are selecting the best from any given batch? But then you'd need to control for things like the position of the cucumbers in the display. Now you're in pretty deep into someone else's business, because you're a wholesaler, and the data will still be insanely noisey.
- coldtea 10y ago>In order to get the necessary data for a machine to bootstrap new criteria, wouldn't you need an independent scoring function for each sample? Merely having an experienced human score images for them can be enough for the machine to self-discover new criteria based on the pictures and their scores.
- bbctol 10y agoWell, I for one am non-rhetorically, legitimately curious about how well human sorters do.
- dangerlibrary 10y agoThis question is predicated on the assumption that there are objective, codified criteria against which human sorting can be judged. That assumption is false. > "In Japan, each farm has its own classification standard and there's no industry standard." Right now the only question is "how closely can the machine approximate human sorting."
- vorotato 10y agoGiven humans can't be judged it stands to reason that you can just call the machine a human, and bada boom, you just saved a lot of money.
- dangerlibrary 10y agoHumans could be judged against each farm's reference human. In this farm's case, there is only the one human sorter. That reference human is the basis for comparison for the machine as well. The machine sucks at it right now.
- TN1ck 10y agoI think he can easily extend the system to use the missing variables. Scratch marks, color, texture and prickles are easily enhanced by digital image processing. Maybe use a different network for each feature and use this output to feed into another network to get the correct classification-function.
- dangerlibrary 10y agoIf you read the article, the majority of the limitations I describe are the result of his running the system on desktop hardware. It takes multiple days to train the system using 7,000 80x80 resolution images. Hence the caveat about the availability of a supercomputer.
- llukas 10y agoOr he could stop training on CPU and use GPU like pretty much everybody in the field...
- ktamura 10y agoWhile it's a cool concept and agriculture is ripe for technology disruption, the enterprise software product marketer in me finds it to be a calculated marketing stunt, if not an disingenuous one. TensorFlow is, in no way shape or form, ready to be used by anyone but very technical people with a solid knowledge of both software engineering and machine learning. In fact, it's probably unfair to single out TensorFlow because every deep learning toolkit I have seen is still in the same "extremely early adopter" phase. Yet, this article makes it seem like a line of business user (farmer) with some background in technology (former embedded systems engineer) can use deep learning to transform his/her business -when, in reality, much expert help is needed to make it work. In other words, it would have been a lot more plausible/genuine if the article read like: 1. A progressive farmer got in touch with Google. 2. Google dispatched their solutions architect to work with them. 3. Hey, a cool, early prototype is working! I am not trying to be a hater. Deep learning has huge potential, and Google, among others, is doing a lot to make it accessible. That said, this type of over-promising ahead of market reality is what gives cutting edge technology a bad name.
- joe_the_user 10y agoNot to mention that if this solution took off, someone - the farmer, Google or an existing sorting-device company - would market it to most other farmers. So most farmers won't be tweaking TensorFlow any time soon even once the product becomes mature - well, they might wind-up using a high quality UI for customizing said existing solution.
- elcritch 10y agoYou'd be surprised... It's like an activation energy in chemistry. Just because two chemical reactants have enough energy to react doesn't mean it's likely to happen. You often need a catalyzer or have many many possible reactants to play the numbers game. Right now, this kinda of small scale farming is right at the "enough to react but not quite ready to chain react" phase. Computational costs need to fall some more to increase possible pool, but it'll happen soon likely.
- orthoganol 10y ago
- benten10 10y ago" ...First they came for the Cucumbers, and I did not speak out— Because I was not a Cucumber ... " -Song of those Tensorflow'd out of their jobs. [Edit: Changed Cucumber sorters to cucumbers to clarify the sarcasm]
- dangerlibrary 10y agoHonestly? Cucumber sorting sounds like a shitty job. Very few people are picketing because humans aren't spending large swaths of their lives churning butter. But the tone of the article is ridiculous. For any reasonable definition of "it works", the system doesn't work yet.
- legodt 10y agoAbsolutely disgusting that you compare low-skill workers being replaced with automation to the holocaust.
- coldtea 10y agoFeigned or real but out of place moral disgrace is even more shameful.
- GFK_of_xmaspast 10y agoWhy do you think they're low-skill workers just because they're doing agriculture? From the article "It takes months to learn the system and you can't just hire part-time workers during the busiest period.".
- mamon 10y agoAm I the only one that thinks this is grossly overengineered solution? Wouldn't the simple machine with differently shaped and sized holes do equaly good or better? Existing industrial machines are usually pretty good at mechanical sorting (think of things like shelled sunflower seeds, etc.).
- pmarsh 10y agoIn the article they talk about many factors that a mechanical sorter will have no ability to account for, color, prickliness, curvature.
- deleted 10y ago[deleted]
- thaw13579 10y agoYes, this is a basic computer vision task, so I think deep learning is probably overkill. In this case, there's no clutter and you can choose any configuration of cameras and illumination you like, which makes the task much easier (and probably feasible on a single desktop machine...).
- eva1984 10y agoWhile it is very cool...I cannot help thinking how many sorters are going to lose their jobs because of this. Scary.
- vthallam 10y agoBut that's not how progress is made. This whole concept of machines taking over has been happening and will happen more. Humans are good at adapting to circumstances, learning new skills and doing more productive work. So guess it's not that scary.
- kafkaesq 10y agoThis whole concept of machines taking over has been happening and will happen more. But what seems different with the AI "revolution" is that we may be seeing a hockey-stick rate to these changes that simply has no historical precedent. In which the "progress" (read: forced obsolescence) that might hitherto have happened over the course of 1-2 generations may soon be happening in the space of 5-10 years, for large categories of job descriptions, planet-wide. So guess it's not that scary. Unless you're the one whose job is threatened -- or as is apparently the case of this "success story", eliminated already. Do you really think all these displaced cucumber sorters can find work as Machine Learning engineers at some hot startup? Or in the near term, any kind of job at all, without significant difficulty?
- 35bge57dtjku 10y agoYou're right. We should all go back to using horses instead of automobiles while we're at it.
- kafkaesq 10y agoThat's (very clearly) not what I'm saying.
- 35bge57dtjku 10y ago
- quikoa 10y agoAny chance that the dataset could be released? It could be interesting to take a look at.
- kafkaesq 10y agoTensorFlow democratizes the power of deep learning I won't say this kind of innovation is bad, per se, or should be stopped. But the blitheness with which the article sidesteps the collateral damage that will necessarily come of this brave new era of efficiency and progress -- as if there was nothing more to this story than an unemployed engineer helping out Mom and Pop -- really is quite breathtaking. "Democratized unemployment, and for many older blue-collar workers in years to come, a nearly inescapable sense of hopelessness and despair" is what we might want to call it.
- dmix 10y agoThis is a technical post on a Google blog for a software library highlighting a use-case written by a "Developer Advocate" for developers to read... this isn't a NYTimes human interest piece about a new technology written by a journalist for average humans to read. Regardless of the non-relevant nature of the context, the HN crowd (the target audience) is well aware of the side effects of technological progress. Similarly, we don't expect every blog post by security researchers highlighting the latest software exploit to include blurbs about the societal implications of vulnerabilities on privacy. There's a time and place for that.
- kafkaesq 10y agoActually, the whole point of the blog post was that it was a marketing piece -- not a dry research article.
- coldtea 10y ago>How a Japanese cucumber farmer is using deep learning and TensorFlow Let me guess: shallowly and for marketing purposes...
- dividuum 10y agoAs someone who is using the Raspberry Pi professionally, I'm nervous when I see that rainbow square in the top right corner in both their screen snapshot and the video (0:16 in). It's a sign that the Pi doesn't get enough power which might results in an unstable operation or even SD card corruption. I hope there's still a human backup sorter should the system fail :-)
- narrator 10y agoMy Raspberry PI corrupts data if the power goes out unexpectedly. I don't understand why it's used for any non-hobbyist application, at least if using the internal SD card to do a lot of read/write. I got myself a fanless cherry trail based system to replace it. Some guy did a hardware modification to fix his: http://therandomlab.blogspot.com/2014/04/how-i-solved-my-sd-card-corruption.html http://therandomlab.blogspot.com/2014/04/how-i-solved-my-sd-...
- dividuum 10y agoI fully agree. That's why I've invested lots of work into my digital signage os (https://info-beamer.com/hosted https://info-beamer.com/hosted): It's booting into a read-only squashfs that contains everything. The squashfs, kernel and PI firmware itself are on the read-only FAT partition. All data that is required as display content ends up on a second read/write partition. If there is any data corruption or similar problem, my system can fully restore that automatically. Here's a small blog post were I wrote about this: https://info-beamer.com/blog/building-a-reliable-raspberry-pi-distribution https://info-beamer.com/blog/building-a-reliable-raspberry-p.... So far the system has never had any problem from power loss or cutting power. Interesting hardware hack you linked there. I haven't seen that one before. Thanks.
- m_eiman 10y agoPerhaps you'd have better luck using "industrial grade" SD cards; should have more robust firmware. E.g.: https://www.sandisk.com/oem-design/industrial/industrial-cards https://www.sandisk.com/oem-design/industrial/industrial-car... http://www.cactus-tech.com/en/products/industrial-grade/sd-card http://www.cactus-tech.com/en/products/industrial-grade/sd-c...
- clickok 10y agoAt first the headline made me skeptical because I expected it to be one of those clickbait articles where someone deploys excessive firepower solving a trivial problem. However! It turns out that cucumber sorting is well-suited to deep learning: a) there is enough interest to generate a reasonably-sized data set, and b) It is one of those difficult "I'll know it when I see it" classification/evaluation problems. However, as soon as they described the actual solution I felt somewhat let down. 1. Reducing the input to 80x80 images is likely unnecessary; it removes some of the most important features (number of thorns, blemishes) from contention. If the issue is computational cost (and therefore training time) you might consider using cloud GPUs. However, a network with multiple "towers" (like Google's Inception model) could conceivably allow for evaluating the sorts of aspects that require higher resolution relatively cheaply (one-or-two convolutional layers with pooling and then a fully connected layer) along one pathway, while a different tower (with more layers or more units per layer) processes the resized images. 2. If the network used was just a modification of the MNIST one, then it seems like it ignores the ordinal nature of the problem. If cucumber quality can be ordered, why not use a regression model instead (or maybe regression along multiple criteria, like straightness, bumpiness, thickness, etc.) instead of treating each class as if they were completely separate? 3. Why not release the dataset? I have GPUs, the necessary background, and a few hours to try out some models. I also have a heretofore unrecognized yen to use my models to generate images of the ideal Japanese cucumber, so I'd be willing to do it for free.
- dmix 10y agoThis is just a prototype - and an effective one at that because as you demonstrated it's a good starting point to brainstorm about where this technology could go if someone invested real time into developing it. So I wouldn't over analyze this. I personally think it's exciting to see average-person real world use cases for these new deep learning tools. I wasn't going in expecting a fully-fleshed out system. It's just one guy helping out his parents with a summer project.
- Animats 10y agoCucumber grading has been automated for years. Look on YouTube for automated cucumber grading systems.[1][2] There are many competing vendors. The commercial machines process their video locally and don't need "the cloud". They're also much faster. Fruit and vegetable sorting using computer vision is routine. That's why commercial produce is so consistent - it's been pre-sorted. The existing technologies are so fast that it's routine to inspect and sort peas, and possible to sort grains of rice. Most of the cost and complexity in the commercial machines is in the material handling. There are conveyors and devices to get the individual items lined up. Cleaning and washing stations are usually part of the line. Commercial machines have to be built sturdily so they survive continuous use, and have to be cleanable with high-pressure soapy water. The little unit that does machine vision is a minor part of the processing line. AI techniques are routinely used. Support vector machines are popular. One Indian system uses fuzzy logic. ANNs have been tried but are not yet popular. The systems generally measure user-defined features - length, width, curvature, color, flaws - which then go into a simple grading algorithm. They're not trying to match human decisions. [1] https://www.youtube.com/watch?v=5DCpOx-q_yo https://www.youtube.com/watch?v=5DCpOx-q_yo [2] http://www.aweta.nl/en/produce/cucumber.html http://www.aweta.nl/en/produce/cucumber.html
- gopz 10y agoYeah, but I'm guessing they cost a lot more than a raspberry pi, they mention these systems in the article
- NegativeLatency 10y agoThat's like saying a shovel is better than an excavator because the shovel is cheaper. In some cases the shovel is better, but you can't effectively compare the two of them.
- sangnoir 10y ago> In some cases the shovel is better, but you can't effectively compare the two of them. Too late: the thread you are participating in has already made the comparison from the very beginning. It's like an HN article titled "Local Man uses nuclear-heated shovel to clear snow off driveway" where the first comment is about how JCB and CAT offer superior options...
- omarforgotpwd 10y agoWhat an eye opening blog post. I never thought about a production line / manufacturing as a software process.
- ars 10y agoCompletely off topic, but why is having lots a prickles a positive thing in a cucumber? Would that just meant they have to be cut off before you can eat it?
- zerop 10y agoSimilar one.. This AI bot from Spanish start-up removes plastic from garbage... http://www.sadako.es/?page_id=33&lang=en http://www.sadako.es/?page_id=33&lang=en
- TYPE_FASTER 10y agoProduce sorting machines are fascinating. https://www.youtube.com/watch?v=Lz88nsWL4kw https://www.youtube.com/watch?v=Lz88nsWL4kw
- contingencies 10y agoIf anyone is interested to work in the food tech / image processing area, we are an early stage startup[0] building small scale automated food preparation robotics and have an image-processing focused industry-experienced Mechatronics PhD as an advisor. We are based in the most natural / pleasant part of China, Yunnan. [0] http://8-food.com/ http://8-food.com/
- blazespin 10y agoWhat I like best about this is he uploaded his dataset: https://github.com/workpiles/CUCUMBER-9 https://github.com/workpiles/CUCUMBER-9
- dharma1 10y agoI don't understand why people say there is no way a non-Google engineer could do this. It's not rocket science... This farmer obviously has an engineering background, either as a job or a hobby. The electronic/mechanical engineering of the sorter is actually much more demanding than training tensorflow on a custom data set - which is a fairly trivial task. Anyway, cool work!