SforAiDl / decepticonlp

Python Library for Robustness Monitoring and Adversarial Debugging of NLP models
MIT License
15 stars 10 forks source link

OOP implementation of Bugger #33

Closed someshsingh22 closed 4 years ago

someshsingh22 commented 4 years ago

Design and Implement an OOP Structure for our Bugger, which will take a dataset, get queried by the user and generate bugged sentences.

For imp word extractor use a temporary random selector for the time being.

Refer to slack for reference

Sharad24 commented 4 years ago

Great! If you're working on this issue, think about where this ideally fits in the whole pipeline.

As for a design choice, ideally you'd like to to cater to someone who's an expert and a noob but not keep it very messy. (Best example for this is Matplotlib)

rajaswa commented 4 years ago

I'll be writing an example high-level design code in the README today. That shall give us a good idea about the low-level implementations @someshsingh22

rajaswa commented 4 years ago

Also, we need to be very specific with transform names so that the user can distinguish between them easily Ex: swap ---> character_swap; delete ---> character_delete etc

rohts-patil commented 4 years ago

I can start on this. @rajaswa @someshsingh22

someshsingh22 commented 4 years ago

Yes, that would be nice, so you are talking about the design right ?

rohts-patil commented 4 years ago

I was thinking about design and code both. @someshsingh22 Also, this would be a huge refactor, so we need to come up with a strategy where no one's work gets interrupted or have huge merge conflicts later. The strategy being code freeze for a day.

We need to do this ASAP if we delay this the debt of refactoring will increase day by day.

someshsingh22 commented 4 years ago

Exactly, we have to start working asap, we need a word extractor for the actual implementation, but for the time being we can assume it to be some function

rajaswa commented 4 years ago

You can start working on this immediately @rohts-patil . I'll freeze all the PRs for perturb.py for the time being. While you are at it, can you handle the ignore=True condition in a more efficient way?

rajaswa commented 4 years ago

Issue resolved in #39