Database

[{"name":"igor","s":["a","a","a","b","b"]},{"name":"jones","s":["c","b"]}]

Query

db.collection.aggregate([{$unwind:"$s"},{$group:{_id:{k:"$s",_id:"$_id"},name:{$first:"$name"},v:{$sum:1}}},{$group:{_id:"$_id._id",name:{$first:"$name"},shares:{$push:{k:"$_id.k",v:"$v"}}}},{$addFields:{shares:{$arrayToObject:"$shares"}}}])

Result