Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 15 reacties
Submitter: Rafe

Google heeft zijn tweede generatie zelflerende software opensource gemaakt onder de naam TensorFlow. TensorFlow is de opvolger van de in 2011 gebouwde en intern gebruikte deep learning-infrastructuur DistBelief voor het Google Brain-project.

TensorFlow GoogleDistBelief werd door wetenschappers bij Google gebruikt om via schaalbare kunstmatige neurale netwerken allerlei eigenschappen te leren aan deze netwerken, zoals het kunnen herkennen van concepten zoals een kat van niet-gelabelde Youtube-plaatjes. Maar ook werd het netwerk ingezet voor het verbeteren van spraakherkenningssoftware, voor het bouwen van de afbeeldingenzoeker voor Google Photo en het automatisch voorzien van bijschriften bij foto's. Het systeem wordt ook gebruikt voor SmartReply in Inbox.

Het probleem met DistBelief was dat het vooral gericht was op neurale netwerken. Ook was het moeilijk te configureren en gebouwd voor Googles interne infrastructuur. Dat laatste maakte het delen van onderzoekscode met anderen vrijwel onmogelijk, schrijven twee medewerkers van het bedrijf op het Google Researchblog. Met TensorFlow hopen Googles onderzoekers deze problemen opgelost te hebben. Met het opensource maken van TensorFlow willen de onderzoekers ervoor zorgen dat het systeem als flexibel, op datastromen gebaseerd programmeermodel gebruikt en gedeeld gaat worden door een levendige ontwikkelgemeenschap, schrijven de onderzoekers in hun conclusie van de whitepaper.

De TensorFlow-omgeving zou voor alle berekeningen die uitgedrukt kunnen worden in een stroommodel, gebruikt kunnen worden. De software is met Python te programmeren en kan zowel van een cpu als gpu gebruikmaken op pc en smartphone. Gpu is alleen beschikbaar met Nvidia-videokaarten omdat er gebruikgemaakt wordt van Cuda. Downloads zijn beschikbaar voor Mac OSX, Linux of te gebruiken via Docker.

Lees meer over

Moderatie-faq Wijzig weergave

Reacties (15)

Zelf heb ik TensorFlow nog niet kunnen uitproberen, maar het principe is het gelijk aan Theano die ook gebruik maakt van een graph-based aanpak. Je zou het kunnen zien als een wiskundige functie die je programmeert met behulp van variabelen (tensors) die later waarden kunnen bevatten. Elke operator -- hetzij plus, min of wortel -- is een knoop in de graaf en krijgt inputs van andere knopen of variabelen. Theano / TensorFlow zal dan (met optimalisaties) een gehele graaf ervan maken.

Wanneer de graaf compleet is, kun je er daadwerkelijke data er doorheen halen. Een voordeel van TensorFlow (van horen zeggen) ten opzichte van Theano is dat de optimalisatie niet via een compile-stap naar C-code gaat (wat Theano dus doet). Of het waar is weet ik niet. Bovendien is het inspecteren van de graaf in TensorFlow best indrukwekkend van wat ik op de website heb gezien.

Moet het binnenkort maar eens gaan uitproberen!
Een voordeel van TensorFlow (van horen zeggen) ten opzichte van Theano is dat de optimalisatie niet via een compile-stap naar C-code gaat (wat Theano dus doet). Of het waar is weet ik niet.
Dat zou wel super zijn, vooral icm Jupyter was dat bij Theano oorzaak van vrij veel hoofdpijn. Ga er deze week ook maar mee aan de slag dan!
In de white-paper zeggen ze dat de kernels over het algemeen slechte dunne wrappers zijn om functies in efficiente libraries (Eigen, BLAS, cuBLAS, cuDNN, etc.). Dat zou het ook erg makkelijk moeten maken om zelf meer kernels toe te voegen.

Overigens lijkt me een ander belangrijk voordeel t.o.v. Theano dat TensorFlow gedistribueerd is en dus ook op gehele clusters kan draaien. Die functionaliteit is voor Google natuurlijk hard nodig.
Het voordeel van het overslaan van de compile-stap zou heel mooi zijn ten opzichte van Theano/Caffe. Dit heb ik ook gelezen.

Ook de visualisaties zien er in de presentaties bruikbaar uit.

Ik ben benieuwd in hoeverre het echt een nieuwe stap is in vergelijking met de huidige frameworks. Het krijgt in elk geval veel media aandacht, dus er zal ook nieuwe aanwas komen van geļnteresseerden.
Iemand een idee wat het verschil / overeenkomst is tussen IBM Watson en deze software van de concurrent?

De graphs waarover ze het hebben komt me wel enigszins bekend voor van de decision tree functie in Watson Analytics (http://www.kdnuggets.com/.../watson-decision-tree.jpg)
IBM Watson is een prefab getrainde AI, die ingezet kan worden om voorspellingen te doen. TensorFlow laat je die AI zelf trainen op je eigen problemen. Hoewel een decision tree en een graaf wiskundig dezelfde opbouw hebben (een boom is een simpelere variant ervan) heeft dit in dit geval niets met elkaar te maken. Watson gebruikt bomen om te laten zien hoe beslissingen opgebouwd zijn uit logische stappen en afwegingen van bepaalde waarden in data. In TensorFlow is het een manier om berekeningen te schakelen, zoals gamer13 goed beschrijft.
Watson gebruikt bomen om te laten zien hoe beslissingen opgebouwd zijn uit logische stappen en afwegingen van bepaalde waarden in data.
Nu is Watson Analytics wel iets anders dan Watson op zich. Watson analytics is datamining op basis van het Watson platform en richt zich op het analyseren van (gestructureerde) data en onder andere het vinden van correlaties (zgn drivers) tussen "inputs" en "targets".

Het voorbeeld van "herken een kat in een filmpje" op basis van DistBelief, een soortgelijke functie is ook mogelijk om te realiseren met het Watson platform: Visual Recognition Services

Dat er verschil zit tussen Watson Analytics en TensorFlow snap ik, maar het is mij nog niet helemaal duidelijk wat precies het verschil is tussen IBM's Watson platform en TensorFlow.
Het belangrijkste verschil is dat IBM Watson voor een breed scala aan taken een API aanbiedt. Je komt met eigen data, maar IBM heeft daar zelf de modellen voor. Stel (even een erg grof voorbeeld) ik wil sentiment (of er positieve of negatieve connotaties in woorden zitten) uit de reviews op tweakers halen om te kijken of die relatie hebben tot de score die wordt gegeven; bij IBM Watson geef ik de data en ze sturen mij een classificatie terug. Dat is fijn, want ze hebben daar een model voor. Daarna kan ik wat simpele statistiek doen en dan weet ik of er een correlatie is.

Echter, stel dat ik nu een programma wil hebben waar ik een tekst in kan gooien en dat deze zelf zegt of mijn productreview op tweakers een +3 gaat krijgen. Dan zal ik daar toch echt zelf een model voor moeten bouwen (want Watson heeft die niet). TensorFlow biedt een framework aan waarin dat mogelijk is. Behalve zelf je data gebruiken, bepaal je ook waar de AI op moet trainen. Ik geeft tekst en scores van reviews en ik ga net zo lang het netwerk configureren totdat het voor een groot aantal reviews correct kan voorspellen wat voor een score dit zal krijgen van de community.

Een soort McD. vs je eigen keuken dus.

Hopelijk is dit iets duidelijker. :)

[Reactie gewijzigd door fazzeh op 9 november 2015 23:54]

Het Watson platform is een verzameling van NLP en machine learning services. Watson Engagement Advisor is de question-answering variant die een pipeline aan semantics/nlp/machine learning onderdelen bevat om een antwoord op een vraag te vinden. Dit TensorFlow is machine learning / neural networks en zou nuttig kunnen zijn als onderdeel van een groter geheel.
Aangezien dit artikel geen link geeft; je kunt via de blog naar de website van Tensorflow komen.
Maar die website is nog wel W.I.P. en ik zie geen download link. ;)
De download is te vinden op de "Get started" pagina:

http://www.tensorflow.org/get_started/os_setup.md

Interessant om te zien is dat Google een nieuwe site heeft voor het hosten van hun source code nu Google Code uitgefaseerd wordt:

https://tensorflow.googlesource.com/tensorflow/

[Reactie gewijzigd door Overv op 9 november 2015 18:32]

Nu wel ja. ;)
(Of het Internet op mijn werk is heel erg brak)
Iemand anders ook problemen met het binnenhalen van de docker container?
En voor een nieuwsberichten dat over open sourcen van software gaat... is hier de source op GitHub.
Tussen de 39 (!) auteurs staan erg grote namen. Ik voorspel alvast dat dit huge gaat zijn! Morgen maar eens in duiken..

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True