GithubHelp home page GithubHelp logo

Comments (4)

Mobius-Ash avatar Mobius-Ash commented on August 15, 2024 1

Thanks for your advice! Maybe I have to do some experiments on it. :)

from ner_incomplete_annotation.

allanj avatar allanj commented on August 15, 2024

I did think about this question before. We decided to make the dev data clean for a better evaluation and demonstration in our results.

If the validation/development data is not completely labeled, I think when the model is getting truly better during the process, the development results could be worse. For example, we might see high recall, low precision in validation during the training process because the validation set has just a few entities but our model will try to predict more in this corrupted validation set.

So, I guess the training process will select a bad model such that my code may not work well. Seems it is really hard to evaluate if we have incomplete validation data as we don't know how well the model is during the training process.

But I guess this might be a use case in your scenario? Honestly, I don't really have a good picture if the validation set is not completely labeled. But would love to discuss more on the possibilities to improve the model.

from ner_incomplete_annotation.

Mobius-Ash avatar Mobius-Ash commented on August 15, 2024

Thanks for your reply. In fact, just when I wanted to use your method, I found desperately that I did not have a completely labeled validation data. So I create this issue.

If you are interested in it, we can discuss my immature idea. But I am not sure if it works. Follow your method, how about we overfit the fold data? For example, we split the train data into fold A and fold B. (In this time we combine the train data and dev data as the whole train data.) We overfit model A on fold A. Then we use model A to predict fold B. We can believe that the predictions are high-quality in the view of model A, and we add the different part to fold B. So that fold B has its ground trues and predictions from model A. We take both of them as new ground trues. We use the same method as fold A on fold B. After that, we re-overfit model A and model B. To iterate it some times, or stop when there are few differences between predictions and ground trues, then we might think that fold A and fold B are completely labeled.

I'm not sure if it is theoretically feasible. Hopes for your advice. (Sorry for my poor english expression = =)

from ner_incomplete_annotation.

allanj avatar allanj commented on August 15, 2024

That‘s an interesting problem. One comment I have is probably you have to impose some punishment/regularization during the training of model A to avoid completely overfitting. Theoretically, it is not sure at what point it will converge. Maybe it could converge to a bad or good model. It also depends on the initialization as well. Probably initializing the unknown labels to O should be the best way.

from ner_incomplete_annotation.

Related Issues (12)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.