TensorFlow özellikle derin öğrenme, yani çok katmanlı ve garip topolojilere sahip sinir ağları için endikedir.
Bu kadar. Theano'ya bir alternatiftir , ancak Google tarafından geliştirilmiştir.
Hem TensorFlow hem de Theano'da sembolik olarak programlıyorsunuz. Sinir ağınızı algeabreik işlemler şeklinde tanımlarsınız (bu düğümler bu ağırlıklarla çarpılır ve daha sonra dahili olarak bir grafikle temsil edilen (TensorFlow durumunda, ancak doğrusal olmayan bir dönüşüm uygulanır, bla bla bla), ancak Theano değil, aslında sinir ağınızda hata ayıklamak için görebilirsiniz).
Ardından, TensorFlow (veya Theano), hangi ağırlıkları en aza indirmek istediğiniz herhangi bir maliyet fonksiyonunu en aza indirgeme işini yoğunlaştıran optimizasyon algoritmaları sunar. Sinir ağınızın bir regresyon sorununu çözmesi gerekiyorsa, öngörülen değerler ile gerçek değerler arasındaki kare farkların toplamını en aza indirmek isteyebilirsiniz. TensorFlow, maliyet fonksiyonunuzu ve tüm bunları farklılaştırmak için yoğun bir çalışma yapar.
DÜZENLEME: Tabii ki, SVM'lerin bir tür sinir ağı olarak görülebildiğini , bu yüzden açıkça, bir SVM'yi TensorFlow optimizasyon araçlarını kullanarak eğitebileceğinizden bahsetmeyi unutmayın. Ancak TensorFlow, yalnızca çok fazla gözleminiz olmadıkça bir SVM'yi eğitmek için kullanmak için biraz aptal olan degrade iniş tabanlı optimize edicilerle birlikte gelir, çünkü SVM için yerel minima'da sıkışmayan belirli optimize ediciler vardır.
Ayrıca, muhtemelen TensorFlow ve Theano'nun oldukça düşük seviyeli çerçeveler olduğunu belirtmek gerekir. Çoğu kişi, üzerine inşa edilmiş ve kullanımı daha kolay çerçeveler kullanır. Burada hiçbirini önermeyeceğim, çünkü bu kendi tartışmasını yaratacaktır. Kullanımı kolay paketler için buradaki önerilere bakın .