The Data Mining Forum                             open-source data mining software open-source data mining software data science journal data mining conferences
This forum is about data mining, data science and big data: algorithms, source code, datasets, implementations, optimizations, etc. You are welcome to post call for papers, data mining job ads, link to source code of data mining algorithms or anything else related to data mining. The forum is hosted by P. Fournier-Viger. No registration is required to use this forum!.  
Data Mining of Groups
Posted by: error1
Date: June 14, 2012 04:03AM

Dear All,
I hope somebody can help me and give me a hint where to look for further information.

I want to Data Mine groups, like the following example.

I have some groups with two or more person. These Persons have attributes like Age or different Skills.

Group 1
Person A, Age, Skill-1-A, Skill-2-A, Skill-3-A
Person B, Age, Skill-1-B, Skill-2-B, Skill-3-B
Person C, Age, Skill-1-C, Skill-2-C, Skill-3-C

Group 2
Person D, Age, Skill-1-D, Skill-2-D, Skill-3-D
Person E, Age, Skill-1-E, Skill-2-E, Skill-3-E

Group3
..

In the past the different groups could have been ranked according to their performance.

For example Group 3 was 1st, Group 2 2nd, Group1 3rd (More rankings available)

Every time the Person in the groups have changed. Now I want to predict how a new group performs in future.

At the moment I have no clou what concept to use. The only thing that comes in mind is to aggregate the persons
into "group measures" for example

Group1, MeasureSkill1, MeasureSkill2, MeasureSkill3 --> 3rd
Group2, MeasureSkill1, MeasureSkill2, MeasureSkill3 --> 2nd
Group3, MeasureSkill1, MeasureSkill2, MeasureSkill3 --> 1st

Is it possible to handle this problem in another way?

Thanks

Options: ReplyQuote
Re: Data Mining of Groups
Date: June 14, 2012 12:01PM

Hello,

Welcome to the forum!

For me, your problem is a classification problem. You want to predict the performance of a group from a set of attributes that are the skills of each member.

I think that there are several things to consider to predict group performance such as (1) the personality of each group member (can they work well together?), (2) the skill that each member possess with respect to the task that they have to perform, (3) the size of the group? (4) their motivations or goals, etc. But I understand that you don't have all this information and that you may not want to consider all of this.

The idea of calculating the average for each skill for each group seems like a a way to simplify the problem. But maybe that it will not best solution.

In my opinion, it is a classification problem. You could use a classifier (e.g. decision tree, neural networks, svm, naive bayes ...) to predict the performance of each group and then order them by rank.

One question is does your groups have a fixed number of members ? If this is the case, it would be easier. For example, if you have n groups of k members with n skills, you could create a neural networks with k * n input neurons. The input of the neural network would be a group. The output could be some value that would indicate the performance of the group. You could then compare the predicted performance of each group to establish the relative rank after.

What I mean is that you would use some data for training the neural network. Then, if you have some new groups, you input each group one by one to the neural network and get the predicted performance. Then you would order the group according to the relative performance for each group .

Note that here i'm talking about neural networks. But you could use a decision tree or any other kind of classifier.

Hope this is clear. Good luck!

Philippe

Options: ReplyQuote
Re: Data Mining of Groups
Date: June 14, 2012 12:01PM

Also, you may search on Google Scholar to see what other people have done to predict group performance. I did not check. But it is always a good idea to check what other people have done before.

Philippe

Options: ReplyQuote
Re: Data Mining of Groups
Posted by: error1
Date: June 14, 2012 10:40PM

Hey there,

thanks for the fast reesponses.
I get that this is a classification problem. Let us consider I use a decision tree.
How will this work?
I mean I know the "Play Golf" example ( http://gautam.lis.illinois.edu/monkmiddleware/public/analytics/decisiontree.html )

This example would also work with my "agreggated groups" but how to use it with multiple groups which have multiples members (let us say that the number of members are equal) and those members have multiple attributes. Maybe you can give an example.

I need make a deeper literature review again. But maybe someone already has an idea or a good article.

Options: ReplyQuote
Re: Data Mining of Groups
Date: June 16, 2012 05:49AM

Hi,

For a classifier in general, you have a set of attributes and you want to predict the value of a target attribute. In your case, the attributes would be the skills of a group and the target attribute would be the performance of the group. To train the decision tree, you need use some instances where the value of the target attribute is known. Then, after the training, you can show a new instance (a new group) and predict the value for the target attribute.

WITH GROUP AVERAGE

So if you use group average, the attributes would be:

"Average value of skill 1 for group", "Average value of skill 2 for group",... "Average value of skill n for group" and "group performance"

Then, each group would have values for these attributes.

WITH A FIXED NUMBER OF MEMBERS FOR EACH GROUP

If you have a fixed number of members for each group, then the attributes could be something like that:

"Value of skill 1 for member 1", "Value of skill 1 for member 2",... "Value of skill2 for member 1", "Value of skill 2 for member 2" .... ....
and "group performance"

Then, for each group, there would be a value for each attribute. However, a problem with this approach is that if you change the order of members in a group, the result may be different. But actually, the order of members is not relevant. So because of this, maybe that it is better to use a group average.

IF THE NUMBER OF MEMBERS IS NOT FIXED

If you don't have a fixed number of members per group, then the problem is that the number of attributes would not be fixed. Many classification algorithms expect a fixed number of attributes as input.

I don't have a lot of time to write now because I'm currently attending a conference and i'm abroad. But I hope that this give you some ideas. Actually, there is probably many ways to solve the problem. I give you my opinion. But they are maybe better approaches.

Best,

Philippe

Options: ReplyQuote
Re: Data Mining of Groups
Posted by: error1
Date: June 16, 2012 08:16AM

Hey,

ok i get your point. But you say the order of members is not relevant. Lets us say we have a
Person M: Skill1 value = 4
Person N: Skill1 value = 2

now in our tree there is something like
if "skill1 for member 1" value<3 then A else B

if Person M is member 1 it would be B. For Person N it would be A. Just by changing the order of the members.
I would love to hear more ideas.

Options: ReplyQuote
Re: Data Mining of Groups
Date: June 16, 2012 08:47AM

You are right. Sorry. I made a mistake. The order of members is relevant and will change the result. That is what I wanted to say. But this is not what I wrote ;-)

To avoid the problem of the order of members in a gorup, a solution is to use group average, as you have mentioned previously (not consider each member).

Average value for skill 1
Average value for skill2
...
Average value for skill n.

An alternative to using a group average would be to use the largest value instead of the average. For example, if a group has 4 members and that the members have the values 3, 4, 6, and 9 for skill1, then we could keep the value 9. The idea is that if at least one member masters this skill, then the team can be viewed as mastering this skill.

It is just some ideas. Best,

Philippe

Options: ReplyQuote
Re: Data Mining of Groups
Posted by: error1
Date: June 16, 2012 10:06AM

hey,

thanks for the answer again.
Actually I am not so happy with the outcome of this discussion. I do not like the idea of group avergae neither do I like the largest value theory (or mean etc).
Imagine there attributes like age or the degree of persons.
Do you think there are another possibilities. Maybe some terms I can search for.

Options: ReplyQuote
Re: Data Mining of Groups
Date: June 16, 2012 08:33PM

Hi again,

Another idea: instead of average or mean, you could use the sum.

For example:

if member 1 has 5 for skill1 , member 2 has 7 for skill1... then the sum would be 13 for skill 1.

But I think that you may also not like this idea.

I still think that the problem that you want to address can be viewed from many different angles. Another way would be to consider different groups that are formed over time with the same individuals, and then to rate how each pairs of individuals performed together (how their group performed). If two individual are together in groups that don't perform well, some penalty would make sure that they would not likely be put together again. I'm not sure how this could be implemented. But it could be some kind of penalty / reward mechanism, so that pairs of individuals that were in groups that perform well are likely to be put together again.

:-)

For keywords, i'm not sure. Maybe searching "group performance prediction", "automatic group creation", "automatic group formation" or something like that would get you some interesting papers that have better ideas than me ;-)

Best,

Philippe

Options: ReplyQuote
Re: Data Mining of Groups
Posted by: error1
Date: June 27, 2012 04:23AM

Hey,

i am still searching.Nothing found so far. Maybe other ideas from someone?

Thanks

Options: ReplyQuote


This forum is powered by Phorum and provided by P. Fournier-Viger (© 2012).
Terms of use.