Say I have a set of data generated by someone. It could be either bytes from a photo, or readings from bio-sensors, and I have a huge amount of said information, from many people or subjects. Which AI algorithms could be used to learn that a set of data belongs to a subject. I would have the information map that a huge set of data belongs to Bob, and another belongs to Alice to train the system.
You have a set of different types of data available for each of your subjects, and given one set you'd like to classify which subject it belongs to. This looks like a supervised classificiation problem.
The most popular classifiers for supervised learning are neural networks. Now given the heterogenous nature of your data types, a simple approach would be to use separate classifiers for each type of data. For example, a convolution neural net for the image data, and a simple feed forward net for the biosensor data. Another thing you try is a multi channel approach, where towards the input side you have multiple channels for the different types of data, and the final few layers are fully connected.
The image has only CNNs for the multi channel part but you could have one channel as a simple feed forward net while another one as having conv layers.
Also, if you wish to classify the data as belonging to a subject on the basis of just one of the data types from the set, then you should have separate classifiers for all types. In that case it might be worthwhile to look into classifiers other than neural nets like multi class logistic regression which might be simpler to work with for a particular data type.
The problem of identifying subjects by different data is called De-anonymization. The idea is that unconnected information are available like a puzzle and the AI algorithm has to connect the dots. Heterogeneous data like bio-sensor information, usernames, photos and textual samples can't be stored in a single relational database but are distributed over different sources. The best way to aggregate the information is a knowledge graph, better known as RDF triple storage. It's some kind of universal database, which is independent from columns and rows in a table.
The knowledge graph is forming a unique database but provides also a semantic model. This model can answer questions similar to a SQL database. For example, if somebody understands the Spanish language the chance is high, that he lives in Spain. And if somebody is interested in programming topics, the chance is high that he is male.This kind of hypothesis are collected in a so called hypothesis tracker. Which means, that even the assumption is wrong, the logical reasoning process never stops.
From the perspective of privacy protection the situation is more relaxed then it seems on the first look. The assumption is, that with de-anonymization it's possible to identify any user in the internet and trace back everything what somebody has done in the past. The problem is, that most users didn't upload many data, especially not to social networks. Let me give an example. If somebody hasn't written a phd thesis yet, the thesis can't be uploaded to a social network. And if the text wasn't uploaded it can't be collected in a big data rdf-triple storage. Ergo, the De-anonymization process doesn't work. This kind of failed pairing is the normal case.
for large unstructured datasets, the NN (artificial neural networks) algorithm outperforms other algorithms, thus i would go with that. Also NN is very customisable so it might able to address your problem.