Body: <p>I'm working on a project where the dataset contains time series of three classes, depending on the shape of the series. I want to learn the representations of these series as vectors, so naturally I use AutoEncoder for the task (precisely, I use LSTM-AutoEncoder to better handle the sequential data).</p>
  <p>My question is: <strong>should I train one model for all classes</strong> or <strong>one model for each class</strong>? If possible, could you also point out what are the pros and cons of each approach? One thing that worries me about the latter approach is that the AE will simply memorize the data without any learning (again, would that be a concern?)</p>
  <p>Thank you very much in advance!</p>
  <p>Sincerely,</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-05T15:33:58.510Z
Comments.Text: Without your data this is tough to answer.  The very best thing to do is to try it both ways and see how well each solution fits your problem.
Comments.UserDisplayName: David Hoelzer
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-05T16:44:31.057Z
Comments.Text: @DavidHoelzer I tested both approaches and they yield the same observation: if I perform a quick clustering on the feature vectors (either learned by separate models or by the same model), the clustering result is consistent in both approaches. I wonder if it may affect the "correctness" of the learning task, or is it just a matter of managing the pipeline?
Comments.UserDisplayName: Elise Le
Tags: <neural-networks><deep-learning><autoencoders><time-series><representation-learning>
Title: Train separate AutoEncoder's on each class or one AE for all classes to learn features?
UserDisplayName: Elise Le
ThreadText: # Train separate AutoEncoder's on each class or one AE for all classes to learn features?
  
  (Asked by: username_0 on 2021-08-05)
  
  I'm working on a project where the dataset contains time series of three classes, depending on the shape of the series. I want to learn the representations of these series as vectors, so naturally I use AutoEncoder for the task (precisely, I use LSTM-AutoEncoder to better handle the sequential data).
  
  My question is: **should I train one model for all classes** or **one model for each class**? If possible, could you also point out what are the pros and cons of each approach? One thing that worries me about the latter approach is that the AE will simply memorize the data without any learning (again, would that be a concern?)
  
  Thank you very much in advance!
  
  Sincerely,
  
  **Tags:** neural-networks, deep-learning, autoencoders, time-series, representation-learning
  
  > **Comments:**
  > **username_1**: Without your data this is tough to answer.  The very best thing to do is to try it both ways and see how well each solution fits your problem.  
  > **username_0**: @username_1 I tested both approaches and they yield the same observation: if I perform a quick clustering on the feature vectors (either learned by separate models or by the same model), the clustering result is consistent in both approaches. I wonder if it may affect the "correctness" of the learning task, or is it just a matter of managing the pipeline?  
  
  ---
  
  ## 0 answers
  
  