Recent comments in /f/MachineLearning

gradientpenalty t1_j8ruzh9 wrote

Maybe you don't do much NLP research then? Back when huggingface transformers and datasets library ( still think its bad name ), we had to format these validation ourselves and write the same validation code which hundreds of your peers have written before because no one is the defactor code for doing it (since we are using different kinds of model). NLP models ( or so called transformers ) nowadays are a mess and had no fix way to use them, running benchmark is certainly a nightmare.

When transformers first came out, they are limited but serves to simplify using bert embedding and gpt-2 beam search generation in few line of codes. The library will do all the model downloads, version check and abstraction for you. Then there's datasets, which unifies all NLP datasets in a central platform which allows me to run GLUE benchmark in one single py file.

Oh back then, the code was even worse, all modeling_(name).py under the transformers/ directory. The latest 4.2X version its somewhat maintainable and readable with all the complex abstraction they had. But its a fast moving domain, and any contribution will be irrelevant in a few years later, so complexity and mess will add up ( would you like to spend time doing cleaning instead of implement the new flashy self-attention alternative? ).

But one day, they might sell out as with many for profit company, but they have and had save so many time and helped so many researchers on the advancement of NLP progress. If they manage to piss off the community, someone will rise up and challenge their dominance (tensorflow vs pytorch).

38

Didicito t1_j8rr4s7 wrote

Yeah, software is hard, specially if it involves cutting edge tech as the stuff published there. But I would consider it harmful ONLY if I detect monopolistic practices. If there are none I don’t have any reason to believe they are not doing their best and the rest of the world can try to build something better.

2

loadage t1_j8rgptu wrote

My answer is less refined than some of the other ones, and my experience with RL is minimal, but wouldn't the action space be too large? Could you contain it to any word/phrase (near infinite space)? You could try limiting it to single letters, but similar to how CNNs work, you'd be missing out on the relationship between letters and you'd still have a 26 character action space, assuming you don't use punctuation or numbers. My friend spent two years working on a RL algorithm with only a 6 action space... I can't imagine 4x that

2

fxmarty t1_j8r8inv wrote

Thank you for the feedback, I feel the same it does not make much sense. My understanding is that the goal is to be compatible with transformers pipelines - but it makes things a bit illogical trying to mix ONNX Runtime and PyTorch.

That said, Optimum is an open-source library, and you are very free to submit a PR or to do this kind of request in the github issues!

7

tripple13 t1_j8r8f7i wrote

This reads like some of those posts criticising OS-frameworks that don't always behave intuitively.

While I don't disagree that there are bugs, Hugging Face is doing more for Open ML than many large tech companies are doing.

HuggingFace, FastAI and similar frameworks are designed to lower the barrier to ML, such that any person with programming skills can harness the power of SoTA ML progress.

I think that's a great mission tbh, even if there are some inevitable bumps on the road.

152

qalis t1_j8r6o9x wrote

Completely agree. Their "side libraries" are even worse, such as Optimum. The design decisions there are not questionable, they are outright stupid at times. Like forcing input to be a PyTorch tensor... and then converting it to Numpy array inside. Without an option to pass a Numpy array. Even first time interns at my company tend not to make such mistakes.

12

2blazen t1_j8r3le4 wrote

You'd want to find a more in-depth topic for a master's thesis, Reddit scraping and sentiment analysis sounds more like an assignment. Ask your supervisor if they have a topic they're researching on, and if you can join. Look around if your university has example projects or even better, open projects. Look around past year's theses if you can continue working on any of them (hint: future works section) Once you find a topic you're interested in and is niche enough, it's still too broad so you have to filter it down to research questions, for which you have to start an in-depth research about the challenges of the topic and such.

Don't panic, there are many topics that need research. I'm starting my thesis in audio processing - health AI / speaker embeddings / impaired speech / diagnosis assistance and it's wild west over here, partially because the data is not publicly accessible though

0

MustBeSomethingThere t1_j8r2v8m wrote

I ran the model "RWKV-4-Pile-14B-20230213-8019" on CPU and main 64 GB RAM (Not on GPU). It fits in that RAM size and the answer below took 5 minutes to generate (In my opinion not bad for a 6-core CPU and CPU-utilization was just 30%). Below is the Question and Answer:

User: +gen \nAsk Expert\n\nQuestion:\nWhat are some good plans to get rich fast?\n\nExpert Full Answer:\n

From living in developing countries to be a millionaire. The reality is that is a long process that requires a lot of planning and effort. Here is a basic outline of the process.

  1. Start out with the right mindset

You need to have a good mindset in place. The ability to handle failure and accept challenges are going to be essential. If you can handle that then you can go through the journey of trying to be rich. It's like going on a diet or working out for the first time. If you have a negative mindset then you are never going to get past the first few steps.

  1. Make sure you have a work ethic that is impeccable

Make sure you have a work ethic that is impeccable. This is because it will require many hours of work over a long period of time to build up a large fortune. You can't expect to get rich overnight. Just like any successful business it will take you years to get the rewards

7

XPlutonium t1_j8qy684 wrote

I appreciate and respect your rant, have been there

However in interest of both of us getting some good out of this how about if you face an issue next, Open an issue? If you can fix it as a community contribution then gold standard, but even opening an issue will tell them where the problem is

While they’re trying to ‘hog’ the users for their experience it can also be looked at as a way of democratising AI. There were MANY ML APIs that I just used HuggingFace for because I don’t understand ML itself so just call Hug and get the job done. I can understand why it’s buggy when the ecosystem itself moves so fast that you have to add features faster than you can fix old ones

So you know I relate, so in interest of getting shit done so to say, let’s try to fix it. Opening an issue, fixing the issue, writing competitive similar libraries, EVEN AS LITTLE AS participating productively in the issues discussions or GitHub discussions (if there is) will actually be a step in direction of getting it done

8