A recommendation system for automatically determining, within a message system in which messages are each assigned to one or more of a plurality of message channels and a plurality of users each have access to one or more of the plurality of message channels, recommendations of messages to users, the system comprising: computer memory storing vector representations of the plurality of users, a plurality of authors, and the plurality of message channels, the vector representations computed based on bipartite graphs (200, 202, 204, 206, 208) each representing a relationship between a combination of the users, authors, and message channels; and a computer processor executing instructions stored in the computer memory to perform operations for identifying, for each of a plurality of messages, one or more of the plurality of users to whom the message is to be recommended, the operations comprising: performing a preliminary filtering, among the users of said plurality of users having access to a message channel to which the message is assigned, in order to determine a set of users, wherein the filtering is based on a user shortlist associated with an author of the message, the user shortlist being based on a determination of relevance of messages from the author to users on the shortlist; after said preliminary filtering, then scoring the message for each user of the set of users with a classifier model that takes a vector representation of a content of the message and the vector representations of the user, the author of the message, and the message channel associated with the message as input; determining based on the scoring, as a subset of the set of users, the one or more of the plurality of users to whom the message is to be recommended; and outputting the recommendation to the one or more users of the plurality of users. computer memory storing vector representations of the plurality of users, a plurality of authors, and the plurality of message channels, the vector representations computed based on bipartite graphs (200, 202, 204, 206, 208) each representing a relationship between a combination of the users, authors, and message channels; and a computer processor executing instructions stored in the computer memory to perform operations for identifying, for each of a plurality of messages, one or more of the plurality of users to whom the message is to be recommended, the operations comprising: performing a preliminary filtering, among the users of said plurality of users having access to a message channel to which the message is assigned, in order to determine a set of users, wherein the filtering is based on a user shortlist associated with an author of the message, the user shortlist being based on a determination of relevance of messages from the author to users on the shortlist; after said preliminary filtering, then scoring the message for each user of the set of users with a classifier model that takes a vector representation of a content of the message and the vector representations of the user, the author of the message, and the message channel associated with the message as input; determining based on the scoring, as a subset of the set of users, the one or more of the plurality of users to whom the message is to be recommended; and outputting the recommendation to the one or more users of the plurality of users. performing a preliminary filtering, among the users of said plurality of users having access to a message channel to which the message is assigned, in order to determine a set of users, wherein the filtering is based on a user shortlist associated with an author of the message, the user shortlist being based on a determination of relevance of messages from the author to users on the shortlist; after said preliminary filtering, then scoring the message for each user of the set of users with a classifier model that takes a vector representation of a content of the message and the vector representations of the user, the author of the message, and the message channel associated with the message as input; determining based on the scoring, as a subset of the set of users, the one or more of the plurality of users to whom the message is to be recommended; and outputting the recommendation to the one or more users of the plurality of users.