Submitted by ActionParticular7697 t3_10gy477 in deeplearning

For some explanation, I am more familiar with PyTorch but I wanted to refresh my knowledge of machine learning and deep learning concepts. However, with the recent trend of moving away from TensorFlow and towards PyTorch, I wonder if TensorFlow and other ML frameworks are still worth learning today. I know certain algorithms are exclusively implemented in one or the other framework.

I think at least TensorFlow is good since they’re well-documented and put to the test by other experts. But I’m not so sure about the case of newer custom frameworks. If I dive into them, it could be a step back for me especially after reading this article. It talks about newer ML framework launches and how a lot of people try it out at first, but then interest in said frameworks starts to decrease.

I know there are a bunch of good custom frameworks out there but it might take more time for new tools to become mainstream or eventually die down. Which is why I’m afraid to use them at the moment. Let me know what you all think! Thanks!

59

Comments

You must log in or register to comment.

Nater5000 t1_j55c801 wrote

>Are TensorFlow and other ML frameworks worth learning in 2023?

They're worth learning if you need to use them. Otherwise, why bother?

There's a weird sentiment I see frequently on reddit that one progresses their programming abilities by just learning how to use a bunch of different frameworks/libraries/languages/etc. This is just not true, and what you gain from that process becomes increasingly marginal as you progress. You're better off just picking a framework and using it.

To put it another way, if I had to hire an ML dev for a TensorFlow project and I'm interviewing two candidates, one who could recite the TensorFlow docs from heart but has never used it, and another who has only used PyTorch but has worked on plenty of real-world projects, then odds are the latter candidate will easily be the choice. It's really not hard implementing something using a framework you're not familiar with when, you know, you can just read the docs as you need them.

With regards to that article, there was a post about it a few weeks ago, and the comments may be worth reading. Basically, nobody doing serious work is going to invest in some home-grown framework that helps solve some niche problem marginally better than more mature frameworks. The fact that the two leading frameworks, TensorFlow and PyTorch, are supported by Google and Facebook isn't a coincidence.

In any case, your questions aren't really clear. You're asking about learning frameworks, but you haven't really provided any context as to why you want to learn these frameworks. I think if there is no specific context, you'd be fine just sticking with PyTorch. Why fix something that isn't broken?

41

whatisinfinity_01 t1_j56l1hb wrote

Really great feedback! Hope many people see this and not chase after padding their CV. Strong fundamentals are much more important than knowing lots of things only on surface level. Hope more people pay attention to your comments.

8

ChunkyHabeneroSalsa t1_j56wbae wrote

Well said. The specific frameworks or languages really don't matter. Learning another library is the least productive way to increase your skills.

1

mining4goldwinsmith t1_j58xmyo wrote

I agree that it is wrong to learn something for the sake of padding your resume, I do think there is some value in pytorch and tensorflow, if you need to use it, but tensorflow is owned by google, so unless you directly benefit from google stock it is not worth adding something else from the google ecosystem into you repertoire. I personally had to learn tensorflow and pytorch due to a degree and I hated being forced to use, tensorflow, google collab and kaggle in one class, when another prof was showing us how to escape the google ecosystem using jupyter, etc. that being said I have used plenty of both frameworks not just for a job or because “I needed to use them.” Simply to make things that had little commercial value but value to groups of academic professionals who otherwise would not have access to certain tools and will never get the funding to use these things. And for community projects that I made for fun, I did not even know what I could do until I learned these things. Knowledge pursuit is worth it even when there is no monetary gain.

0

WrongMeeting9043 t1_j593f8x wrote

Check out the Jina Finetuner on GitHub. It's a game changer for fine-tuning the performance of programs that can understand and search using natural language. Trust me, it makes the whole process a lot more manageable.

32

suflaj t1_j55ogya wrote

Well you should learn them even if only to know how to transform models from them to PyTorch.

2

Final-Rush759 t1_j59xe05 wrote

Machine learning is more framework. The knowledge is more important. Like, why does batch normalization cause problem ? how do you increase model performance without change model architecture? Which optimizer gives better performance SGD vs Adam ?

1