I have a data model with natural one-to-many relationships.
User: Job1: StartDate: May, 2010 EndDate: Jun, 2014 RoleName: SeniorDataScientist EmploymentType: FT Job2: StartDate: May, 2009 EndDate: May, 2010 Role: JuniorDataScientist EmploymentType: PT
I am trying to predict which people will be a good fit for a particular job.
I've built decision trees where I take the data in the work history and concatenate it together into a single vector for training my decision tree --
User: EmploymentLength: 5 RoleNames: DataScientist,SeniorDataScientist EmploymentType: PT,FT
(The text-based features get processed by a bag of words model)
But doing this loses the contextual information available in the relational model --> that is, I lose the information telling me that the senior position is full time and associated with a 4 year timespan while the junior position is only 1 year and is associated with the part time position.
I've simplified my example a little bit. My model actually has a few one-to-many relationships so I'm going to need to do this to other relationships as well.
I'm looking for a general way to process these nested relationships for my classifier (or use some other technique than decision trees to handle data that looks like this). What technique can be used to process this kind of data or predict an outcome with a classifier using nested features like these?