Comments (9)
@rsarky I have recorded the task on finding simple rules for this investigation in #66
from pasta.
2: if we do go for a deep learning based technique, it would be better to pass the entire patch as the model would discover optimal higher level features from those.
3. I am assuming false positives (output person is not actually a maintainer) is more acceptable as compared to false negatives (a maintainer is not amongst the outputs). So precision should be important as an output parameter as compared to recall.
I am not sure if this is indeed a good usecase for a ML model as the problem statement isnt that fuzzy. There are a finite and tractable number of rules that can be written down that will give a definite answer to who are the maintainers of a patch.
from pasta.
It would be helpful if the data available could be made public @bulwahn . If not the entire data set, I guess sufficient amount of data to train and experiment various models might be helpful. Also a metadata file would be highly useful
from pasta.
All data is available in this repository here: https://github.com/lfd/PaStA-resources
from pasta.
@rsarky Your hypothesis (2:) needs to be proved or disproved; I would not state that as a matter of fact. The task here would be to investigate that.
To the point about finite and tractable rules, I will create a new task.
from pasta.
I agree. I was feeling a bit off about point 2, because if we do indeed choose a subset of features such as those you mentioned, each of them has some rule that you could state that would help in determining the maintainers if I am not wrong. But I would be interested in seeing if this indeed works.
Another question to consider is how do we form a good ground truth. If it is driven by get maintainers script then the model will be inherently limited. A manual ground truth is ideal but quite involved.
from pasta.
Here the assumption is that we simply take the full email data as ground truth. How reliably can we predict who a patch will be sent to based on the previous observations?
from pasta.
So if I understand correctly the assumption is that the existing email data gives a good approximation of who patches should be sent to?
from pasta.
Yes, that would be the assumption of the first investigation. We may refine this by giving more weight on "confidence of its correctness" to patches that have been accepted vs. the ones being ignored, or based on the sender's known involvement, e.g., active for many years, known maintainer, etc.
from pasta.
Related Issues (20)
- Combine PaStA with the cregit tool
- Compute relation between patch series HOT 8
- Collect user feedback on relating patches in patchwork tool to improve Pasta
- Determine the relevant entries and maintainers for a provided list of files
- [GSOC] Add a requirements.txt to make setup easier HOT 6
- Fix erroneous behaviour in LinuxMaintainers HOT 8
- Analysis jailhouse repo with PaSta HOT 19
- Readme mentions 4 steps but only 3 are explicitly mentioned HOT 5
- Running "pasta analyse succ" in mbox mode doesnt show appropriate error message HOT 5
- Linux weekly digest HOT 7
- Patch groups file is not created HOT 6
- Support identification of kernel developers for improving the precision of analysis HOT 3
- Update Readme for Getting PaStA HOT 5
- Derive a rule set for the patch recipients based on the existing email data
- Introduce Redis to handle resources HOT 3
- `git -C resources submodule update` is taking a huge amount of time HOT 6
- set_config shows invalid literal for int with base 10 HOT 11
- git and MAINTAINERS only: plot mailing lists over time HOT 1
- Have an option to only run representative analyses (No repository required) HOT 9
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pasta.