Filter objects based on the property Activity History "Source" information

I want to be able to create a list of contacts (for example) who’s property was changed for a certain reason. Currently there is no way to do this.
An example would be contacts were accidentally unsubscribed during an import, which was discovered later. There is no ability to find ONLY those contacts unsubscribed via “Import”, and to filter out the others who unsubscribed via an “email activity”.

Being able to drill down to the action that created a property update would be extreamly helpful in troubleshooting.