DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This action is in response to the original application filed on May 31st, 2023.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C 101 because the claimed invention is directed to an abstract idea without significantly more. The analysis of the claims will follow the 2019 Revised Patent Subject Matter Eligibility Guidance, 84 Fed. Reg. 50 (“2019 PEG”).
Claim 1
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
Claim 1, recites “A computer-implemented method comprising:” therefore it is directed to the statutory category of a process.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“clustering posts by associating a topic identifier with each post based on text in the post, the posts having been posted in groups associated with an online service;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate posts and groups the posts based on observed topics. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“mapping each of the groups to one of the topic identifiers based on topics associated with the posts;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate data and produce a table or map of groups to topics. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“creating a topic-to-group table mapping each of the topic identifiers to one or more of the groups;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate data and generate a table mapping topics to groups. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“detecting an additional post entered by a user associated with the online service;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to observe a thread or community board for further updates. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“determining, by the post classifier model, a topic identifier for the additional post based on text of the additional post;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to use a model and evaluate data for unique topics. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“determining a group recommendation for posting the additional post based on the topic identifier for the additional post and the topic-to-group table; and” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to provide recommendations or opinions of a group to users based on observed comments or posts made by another user. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “training a post classifier model with a training set comprising the text of the posts and the topic identifier associated with each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“causing presentation, based on the determining, of the group recommendation to the user for posting the additional post in the recommended group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “training a post classifier model with a training set comprising the text of the posts and the topic identifier associated with each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“causing presentation, based on the determining, of the group recommendation to the user for posting the additional post in the recommended group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 2
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A process, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“determining if the user belongs to the recommended group; and” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to make observations and provide a judgment on where a member is part of a group or not. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “causing presentation of a recommendation to the user to join the group when the user does not belong to the group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “causing presentation of a recommendation to the user to join the group when the user does not belong to the group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 3
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A process, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“utilizing a clustering algorithm on the reduced embeddings to generate a plurality of topic identifiers.” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses mathematical concept of utilizing a mathematical formula to perform calculations. A human is able to use mathematical equations and concepts to produce an outcome. This claim discloses a math operation and therefore is ineligible.
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “creating an embedding for each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“generating reduced embeddings for the posts with a smaller dimension from the created embeddings; and” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “creating an embedding for each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“generating reduced embeddings for the posts with a smaller dimension from the created embeddings; and” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 4
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A process, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites the abstract ideas of the preceding claims from which it depends.
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “wherein determining the post classifier by the post classifier model enables generating the group recommendation in real-time or near real-time.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “wherein determining the post classifier by the post classifier model enables generating the group recommendation in real-time or near real-time.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 5
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A process, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites the abstract ideas of the preceding claims from which it depends.
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “accessing the topic-to-group table to determine entries with the topic identifier.” is an insignificant extra-solution activity required for any uses of the mental processes (see MPEP § 2106.05(g)) As such, the claim is ineligible.
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, accessing the topic-to-group table to determine entries with the topic identifier.” is an insignificant extra-solution activity required for any uses of abstract ideas (see MPEP § 2106.05(g)), and is a well-understood, routine, conventional activity (see MPEP § 2106.05(d)(iv); “Storing and retrieving information in memory”.
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 6
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A process, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“determining that the topic identifier is mapped to several group identifiers; and” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate topics and determine if the topic is related to groups. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“selecting the recommended group at random from the several group identifiers.” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to make a judgment or opinion based on observed information. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
This claim does not recite any additional limitations which integrate the abstract idea into a practical application.
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea and thus the claim is subject-matter ineligible.
Claim 7
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A process, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“determining an interest of the additional post; and” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate a post and provide opinions or judgements about that post. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “filtering the group for being recommended based on the interest of the post.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “filtering the group for being recommended based on the interest of the post.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 8
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A process, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“determining a percentage of posts in the group associated with the determined interest; and” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses mathematical concept of utilizing a mathematical formula to perform calculations. A human is able to evaluate a list and use known math concepts to determine a percentage of posts in a group that meets specified criteria. This claim discloses a math operation and therefore is ineligible.
“determining that the group is recommended when the percentage of posts in the group is above a predetermined threshold.” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate and observe a list and determine if group that meets a given threshold. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
This claim does not recite any additional limitations which integrate the abstract idea into a practical application.
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea and thus the claim is subject-matter ineligible.
Claim 9
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A process, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“wherein the additional post is detected subsequent to the user adding the post to a user feed, wherein the group recommendation is presented in response to determining that the user added the post to the user feed.” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to observe a post generated by a user and provide opinions and recommendations to the user after they post or comment in a social network. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
This claim does not recite any additional limitations which integrate the abstract idea into a practical application.
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea and thus the claim is subject-matter ineligible.
Claim 10
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A process, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites the abstract ideas of the preceding claims from which it depends.
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “posting the additional post in the recommended group after the user accepts the group recommendation.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “posting the additional post in the recommended group after the user accepts the group recommendation.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 11
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
Claim 11, recites “A system comprising: a memory comprising instructions; and one or more computer processors, wherein the instructions, when executed by the one or more computer processors, cause the system to perform operations comprising:” therefore it is directed to the statutory category of a machine.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“clustering posts by associating a topic identifier with each post based on text in the post, the posts having been posted in groups associated with an online service;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate posts and groups the posts based on observed topics. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“mapping each of the groups to one of the topic identifiers based on topics associated with the posts;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate data and produce a table or map of groups to topics. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“creating a topic-to-group table mapping each of the topic identifiers to one or more of the groups;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate data and generate a table mapping topics to groups. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“detecting an additional post entered by a user associated with the online service;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to observe a thread or community board for further updates. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“determining, by the post classifier model, a topic identifier for the additional post based on text of the additional post;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to use a model and evaluate data for unique topics. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“determining a group recommendation for posting the additional post based on the topic identifier for the additional post and the topic-to-group table; and” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to provide recommendations or opinions of a group to users based on observed comments or posts made by another user. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “training a post classifier model with a training set comprising the text of the posts and the topic identifier associated with each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“causing presentation, based on the determining, of the group recommendation to the user for posting the additional post in the recommended group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “training a post classifier model with a training set comprising the text of the posts and the topic identifier associated with each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“causing presentation, based on the determining, of the group recommendation to the user for posting the additional post in the recommended group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 12
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A machine, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
determining if the user belongs to the recommended group; and” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to make observations and provide a judgment on where a member is part of a group or not. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “causing presentation of a recommendation to the user to join the group when the user does not belong to the group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “causing presentation of a recommendation to the user to join the group when the user does not belong to the group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 13
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A machine, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“utilizing a clustering algorithm on the reduced embeddings to generate a plurality of topic identifiers.” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses mathematical concept of utilizing a mathematical formula to perform calculations. A human is able to use mathematical equations and concepts to produce an outcome. This claim discloses a math operation and therefore is ineligible.
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “creating an embedding for each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“generating reduced embeddings for the posts with a smaller dimension from the created embeddings; and” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “creating an embedding for each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“generating reduced embeddings for the posts with a smaller dimension from the created embeddings; and” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 14
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A machine, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites the abstract ideas of the preceding claims from which it depends.
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “wherein determining the post classifier by the post classifier model enables generating the group recommendation in real-time or near real-time.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “wherein determining the post classifier by the post classifier model enables generating the group recommendation in real-time or near real-time.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 15
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A machine, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites the abstract ideas of the preceding claims from which it depends.
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “accessing the topic-to-group table to determine entries with the topic identifier.” is an insignificant extra-solution activity required for any uses of the mental processes (see MPEP § 2106.05(g)) As such, the claim is ineligible.
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “accessing the topic-to-group table to determine entries with the topic identifier.” is an insignificant extra-solution activity required for any uses of abstract ideas (see MPEP § 2106.05(g)), and is a well-understood, routine, conventional activity (see MPEP § 2106.05(d)(iv); “Storing and retrieving information in memory”.
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 16
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
Claim 16, recites “A non-transitory machine-readable storage medium including instructions that, when executed by a machine, cause the machine to perform operations comprising:” therefore it is directed to the statutory category of a machine.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“clustering posts by associating a topic identifier with each post based on text in the post, the posts having been posted in groups associated with an online service;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate posts and groups the posts based on observed topics. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“mapping each of the groups to one of the topic identifiers based on topics associated with the posts;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate data and produce a table or map of groups to topics. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“creating a topic-to-group table mapping each of the topic identifiers to one or more of the groups;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to evaluate data and generate a table mapping topics to groups. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“detecting an additional post entered by a user associated with the online service;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to observe a thread or community board for further updates. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“determining, by the post classifier model, a topic identifier for the additional post based on text of the additional post;” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to use a model and evaluate data for unique topics. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
“determining a group recommendation for posting the additional post based on the topic identifier for the additional post and the topic-to-group table; and” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to provide recommendations or opinions of a group to users based on observed comments or posts made by another user. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “training a post classifier model with a training set comprising the text of the posts and the topic identifier associated with each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“causing presentation, based on the determining, of the group recommendation to the user for posting the additional post in the recommended group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “training a post classifier model with a training set comprising the text of the posts and the topic identifier associated with each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“causing presentation, based on the determining, of the group recommendation to the user for posting the additional post in the recommended group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 17
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A machine, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“determining if the user belongs to the recommended group; and” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses the mental process of evaluating and observing data, which is an evaluation or observation that is practically capable of being performed in the human mind with the assistance of pen and paper. A human is able to make observations and provide a judgment on where a member is part of a group or not. The limitation is merely applying an abstract idea on generic computer system. See MPEP 2106.04(a)(2)(III)(c).
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “causing presentation of a recommendation to the user to join the group when the user does not belong to the group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “causing presentation of a recommendation to the user to join the group when the user does not belong to the group.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 18
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A machine, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites, inter alia:
“utilizing a clustering algorithm on the reduced embeddings to generate a plurality of topic identifiers.” Under its broadest reasonable interpretation in light of the specification, this limitation encompasses mathematical concept of utilizing a mathematical formula to perform calculations. A human is able to use mathematical equations and concepts to produce an outcome. This claim discloses a math operation and therefore is ineligible.
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “creating an embedding for each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“generating reduced embeddings for the posts with a smaller dimension from the created embeddings; and” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “creating an embedding for each post;” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
“generating reduced embeddings for the posts with a smaller dimension from the created embeddings; and” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 19
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A machine, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites the abstract ideas of the preceding claims from which it depends.
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “wherein determining the post classifier by the post classifier model enables generating the group recommendation in real-time or near real-time.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “wherein determining the post classifier by the post classifier model enables generating the group recommendation in real-time or near real-time.” amounts to generic computer components used as a tool to perform an existing process. Thus, the additional element amounts to no more than a recitation of the words "apply it" (or an equivalent) or are more than mere instructions to implement an abstract idea or other exception on a computer (see MPEP § 2106.05(f)).
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim 20
Step 1 – Is the claim to a process, machine, manufacture or composition of matter?
A machine, as above.
Step 2A Prong 1 – Does the claim recite an abstract idea, law of nature, or natural phenomenon?
The claim recites the abstract ideas of the preceding claims from which it depends.
Step 2A Prong 2 – Does the claim recite additional elements that integrate the judicial exception into a practical application?
The claim recites the additional elements, “accessing the topic-to-group table to determine entries with the topic identifier.” is an insignificant extra-solution activity required for any uses of the mental processes (see MPEP § 2106.05(g)) As such, the claim is ineligible.
Step 2B – Does the claim recite additional elements that amount to significantly more than the judicial exception?
Finally, the claim taken as a whole does not contain an inventive concept which provides significantly more than the abstract idea. The additional elements, “accessing the topic-to-group table to determine entries with the topic identifier.” is an insignificant extra-solution activity required for any uses of abstract ideas (see MPEP § 2106.05(g)), and is a well-understood, routine, conventional activity (see MPEP § 2106.05(d)(iv); “Storing and retrieving information in memory”.
Taken alone or in combination, the additional elements of the claim do not provide an inventive concept and thus the claim is subject-matter ineligible.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-9 and 11-20 are rejected under 35 U.S.C. 103 as being unpatentable over Miao et al, (Miao et al, “RECOMMENDATIONS FOR ONLINE SYSTEM GROUPS”, US 20180322122 A1, Filed May 3rd, 2017, hereinafter “Miao”) in view of Comito et al, (Comito et al, “Word Embedding based Clustering to Detect Topics in Social Media”, Oct. 14th, 2019, hereinafter “Comito”).
Regarding claim 1, Miao discloses, “A computer-implemented method comprising:” (Recommending Groups to a User, pp. 5, [0046]; “FIG. 3 is a flow chart illustrating a method for recommending groups to a user of an online system, according to an embodiment of the invention.” Figure 3 discloses a system for recommending groups to a user of an online social network)
“training a post classifier model with a training set comprising the text of the posts and the topic identifier associated with each post;” (System Architecture, pp. 5, [0040]; “The group learning module 245 applies machine learning techniques to generate a group scoring model 250 that, when applied to a candidate group, outputs a score representing a likelihood that the target user will join the candidate group if presented with a recommendation to join the candidate group. As part of the generation of the group scoring model 250, the group learning module 245 forms a training set of groups by identifying a positive training set of groups that the target user chose to join after being presented with a recommendation to join the group, and, in some embodiments, forms a negative training set of groups that the target user declined to join after being presented with a recommendation to join the group.” The system in this application is able to use a learning module to train the models proposed. This system is able to use posted content and topics to generate a training set of data and use that for training the model.)
“determining a group recommendation for posting the additional post based on the topic identifier for the additional post and the topic-to-group table; and” (Recommending Groups to a User, pp. 6, [0055]; “A fourth type of sourcing rule identifies a group as a candidate group if the group is associated with a trending topic. In one embodiment, the online system 140 maintains a list of trending topics (e.g., the topics that were subject to the most activity during a preceding time window), and the sourcing rule identifies a group as a candidate group if the group has been classified (e.g., by the topic extraction engine 235) as being associated with one of the trending topics.” The system in this article is able to generate group recommendations based on different sourcing rules. This is able to determine a recommendation based on specified topics or popular topics.)
“causing presentation, based on the determining, of the group recommendation to the user for posting the additional post in the recommended group.” (Recommending Groups to a User, pp. 6, [0059]; “The group recommendation module 240 selects 308 one or more candidate groups to be displayed to the user. For example, the group recommendation module 240 selects every candidate group above a threshold position in the ranking. After selecting 308 the candidate groups, the group recommendation module 240 sends 310 recommendations to the target user to join the selected groups.” The system in this article is able to generate a group recommendation for a given user and present the recommendations to that user.)
Miao fails to explicitly disclose the following limitations: “clustering posts by associating a topic identifier with each post based on text in the post, the posts having been posted in groups associated with an online service;”, “mapping each of the groups to one of the topic identifiers based on topics associated with the posts;”, “creating a topic-to-group table mapping each of the topic identifiers to one or more of the groups;”, “detecting an additional post entered by a user associated with the online service;” and “determining, by the post classifier model, a topic identifier for the additional post based on text of the additional post;”.
However, Comito discloses, “clustering posts by associating a topic identifier with each post based on text in the post, the posts having been posted in groups associated with an online service;” (Preliminaries, pp. 194; “A post is assigned to a cluster if it is similar to the cluster centroid. The similarity is based both on the lexicon used in the posts and on their semantics obtained by exploiting word embedding. Therefore, the similarity will be the combination of two measures accounting both syntactic as well as semantics of the posts.” This article discloses a clustering algorithm that is able to evaluate user’s social media content. This will be able to identify different topics and interests in posts made by user in a social network.)
“mapping each of the groups to one of the topic identifiers based on topics associated with the posts;” (Preliminaries, pp. 194; “To store summary information of all the posts assigned to a cluster C, we introduce the cluster centroid as a compact data structure. The centroid keeps the textual items as in the feature vector
f
v
of each social media post smp assigned to the cluster, its corresponding semantic vector
s
f
v
, together with their frequencies and their temporal evolution.” The system in this article is able to generate different clusters containing similar posts and topics. The system in this article is able to map topics to clusters or groups.)
“creating a topic-to-group table mapping each of the topic identifiers to one or more of the groups;” (Word Embedding Based Clustering, pp. 195; “While a new post
s
m
p
i
arrives at time
t
i
, the algorithm builds the representation
f
v
i
of
s
m
p
i
and its word embedding
s
f
v
i
, and computes both the semantic similarity and the syntactic one between the post and the clusters active at the time stamp
t
i
, while the inactive clusters are removed from the set of clusters. Let
C
c
be the cluster whose centroid has maximum similarity with
s
m
p
i
. If this similarity value
s
i
m
(
s
m
p
i
,
C
c
)
is lower than ϵ, a new cluster is generated from
f
v
i
and
s
f
v
i
and added to the set of clusters, otherwise the social media post in the form of
f
v
i
and
s
f
v
i
is added to
C
c
by updating the centroid.” The system in this article is able to save the created clusters and use them later. The generated clusters can be used to map different topics to clusters or groups.)
“detecting an additional post entered by a user associated with the online service;” (Word Embedding Based Clustering, pp. 195; “These steps are repeated until the algorithm receives new posts.” The system in this article is able to detect when a user makes consecutive posting to a social network group.)
“determining, by the post classifier model, a topic identifier for the additional post based on text of the additional post;” (Preliminaries, pp. 194; “A post is assigned to a cluster if it is similar to the cluster centroid. The similarity is based both on the lexicon used in the posts and on their semantics obtained by exploiting word embedding.” This system is able to evaluate newly posted data and see if it aligns with an already generated cluster.)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the present application to combine Miao and Comito. Miao teaches a system that is able to make group recommendations to a user on an online social network. Comito teaches a system that is able to evaluate posts from an online social network and group or cluster topics disclosed in posts. One of ordinary skill would have motivation to combine a group recommendation system that is able to send group recommendations to users based on topics with a system that is able to group or cluster topics from posts generated by a user, “We evaluated WeC against related approaches in terms of precision and recall. Figure 5 shows the precision of the different methods with the number of top detected topics. The graph outlines that, overall, for all the methods the precision slightly increases with the number of top events detected. WeC substantially outperformed traditional approaches to topic detection like LDA and Doc-p. Furthermore, it also improves TweetHealth showing that the joint use of semantic and syntactic relations of terms, together with temporal proximity of posts, highly enhance the detection performance. SFPM achieved the lowest precision that is quite stable with the number of detected topics.” (Comito, Comparison with related approaches, pp. 197).
Regarding claim 2, Miao discloses, “determining if the user belongs to the recommended group; and” (System Architecture, pp. 3, [0031]; “The group store 230 stores objects that each represents a group on the online system 140. Groups include one or more users and can have one or more characteristics.” And “A user becomes included in a group after the user joins the group, and a single user can join a plurality of groups. The plurality of groups that a particular user has joined is referred to as "the user's groups," "the user's associated groups," or "groups connected to the user." This system has a “group store” which contains information about the groups and users in the network. This store is able to evaluate and determine if a user is designed as part of that group or not a member)
“causing presentation of a recommendation to the user to join the group when the user does not belong to the group.” (System Architecture, pp. 7, [0059]; “The group recommendation module 240 selects 308 one or more candidate groups to be displayed to the user. For example, the group recommendation module 240 selects every candidate group above a threshold position in the ranking. After selecting 308 the candidate groups, the group recommendation module 240 sends 310 recommendations to the target user to join the selected groups.” To generate recommendations the system will rely on data from the different modules including the “group store”. This group store contains information about the users including what groups they have already joined. When evaluating the recommendation score used to rank the groups, the group recommendation module will use data from the different modules including the group store.)
Regarding claim 3, Comito discloses, “creating an embedding for each post;” (Preliminaries, pp. 194; “A social media post smp is defined as a tuple
s
i
m
=
(
i
d
,
t
,
f
v
,
s
f
v
)
where id is the post identifier, t is the time at which the post has been published,
f
v
=
(
w
u
,
w
b
,
h
u
,
h
b
,
m
u
,
m
b
)
is a vector of textual features extracted from the post, representing words, unigram
w
u
and bigram
w
b
, hashtags, unigram
h
u
and bigram
h
b
, mentions, unigram
m
u
and bigram
m
b
,
s
f
v
=
(
e
w
u
,
e
w
b
,
e
h
u
,
e
h
b
,
e
m
u
,
e
m
b
)
is the semantic feature vector corresponding to fv.” The system in this article will be able to evaluate a post form a user and embed that data in the
s
f
v
tuple.)
“generating reduced embeddings for the posts with a smaller dimension from the created embeddings; and” (Preliminaries, pp. 194; “A social media post smp is defined as a tuple
s
i
m
=
(
i
d
,
t
,
f
v
,
s
f
v
)
where id is the post identifier, t is the time at which the post has been published,
f
v
=
(
w
u
,
w
b
,
h
u
,
h
b
,
m
u
,
m
b
)
is a vector of textual features extracted from the post, representing words, unigram
w
u
and bigram
w
b
, hashtags, unigram
h
u
and bigram
h
b
, mentions, unigram
m
u
and bigram
m
b
,
s
f
v
=
(
e
w
u
,
e
w
b
,
e
h
u
,
e
h
b
,
e
m
u
,
e
m
b
)
is the semantic feature vector corresponding to fv.” This system will use the generated tuple
s
f
v
, which contains information about the post generated by the user. This system will initially take the post data and imbed it into the system, then the system will compress the post and other information into a sim tuple. This teaches that the initial post is embedded into
s
f
v
to then use it in the smaller sim tuple.)
“utilizing a clustering algorithm on the reduced embeddings to generate a plurality of topic identifiers.” (Preliminaries, pp. 194; “The centroid of a cluster C is a tuple
C
C
=
(
c
,
t
0
,
f
v
c
,
f
f
,
s
f
v
c
)
, where c is the cluster label,
t
0
is the creation time of the cluster, tc is the time stamp of the last time a social object was added to C,
f
v
c
and
s
f
v
c
are the textual and semantic feature vectors, respectively, analogous to the ones defined for the social medial post smp, and
f
f
=
(
f
w
u
,
f
w
b
,
f
h
u
,
f
h
b
,
f
m
u
,
f
m
b
)
is the list of frequencies corresponding to
f
v
c
.” This system is able to use the clustering algorithm to further store and use the data embedded from the users posting. This information is used to generate new clusters of topics or place the post in an existing cluster.)
Regarding claim 4, Miao discloses, “wherein determining the post classifier by the post classifier model enables generating the group recommendation in real-time or near real-time.” (Recommending Groups to a User, pp. 5, [0047]; “For instance, the method can operate periodically for some or all users of the online system 140 to maintain an up-to-date set of group recommendations for those users. Alternatively, the method can operate when a user accesses a group discovery interface provided by the online system 140.” The system in this article is able to generate group recommendations to a user. This system is designed to online and will keep an up-to-date recommendations list for a user.)
Regarding claim 5, Comito discloses, “accessing the topic-to-group table to determine entries with the topic identifier.” (Algorithm
W
E
C
, pp. 195; The different clusters contain different topics posted by users. This algorithm discloses the process of evaluating social media posts from users. The set of clusters, which is interpreted to a be a data structure like a table or map, is saved after being generated and the set can be iterated through in Lines 14-19)
Regarding claim 6, Miao discloses, “determining that the topic identifier is mapped to several group identifiers; and” (System Architecture, pp. 4, [0036]; “To identify topics associated with a group, the topic extraction engine 235 identifies content items associated with the group based on information included in the group store 230 and determines topics associated with content items associated with the group based on anchor terms included in the content items as described above.” The system in this application is able to use a topic extraction engine able to evaluate text and posts. This will be able to associate different topics to different groups based on information.)
“selecting the recommended group at random from the several group identifiers.” (System Architecture, pp. 6, [0049]; “The group recommendation module 240 can implement several different types of sourcing rules, and the set of sourcing rules 404 that the group recommendation module 240 applies to identify the plurality of candidate groups 406 can include any combination of one or more types of sourcing rules.” The group recommendation module has the ability to alter groups being recommended using different sourcing rules. This system would be able add more sourcing rules as stated and combine rules.) And Miao (System Architecture, pp. 7, [0058]; “In some embodiments, the group recommendation module 240 modifies the ranking of the candidate groups based on one or more diversity rules. A diversity rule prevents candidate groups having a common characteristic from appearing in consecutive positions in the ranking, which allows for a more diverse set of groups to be selected 308 and recommended 310 to the user.” Further the system in this application is able to use diversity rules to recommend groups. This teaches that the system can alter and change the output depending on sourcing rules and diversity rules. In combination this can generate recommendations of different dimensions and requirements and an ordinary skilled person of the art would be able to implement a rule similar to selecting at random.)
Regarding claim 7, Comito discloses, “determining an interest of the additional post; and” (Word Embedding Based Clustering, pp. 195; “These steps are repeated until the algorithm receives new posts. To update a centroid
C
C
=
(
c
,
t
0
,
t
c
,
s
g
n
)
when a new post
s
m
p
=
(
i
d
,
u
,
t
,
l
,
f
v
,
s
f
v
)
is added to any cluster C, the time stamp of C is updated with the time stamp t of smp. Then all the items of each feature must be checked if already present in the centroid. Thus, the intersection between the feature vectors of smp and that of CC are computed. Then, for each feature smp.
f
v
(
i
)
of the post, if an element of this feature already appears in the feature vector of the centroid
f
v
c
(
i
)
, the corresponding frequency must be incremented by 1, otherwise, it will be added to the centroid feature and its frequency is set to 1.” The system in this article is able to evaluate for additional posts. After a post is made, the system will attempt to identify the topics disclosed in the post using a clustering method.)
Comito fails to disclose the remaining limitations of this claim. However, Miao discloses, “filtering the group for being recommended based on the interest of the post.” (System Architecture, pp. 7, [0059]; “The group recommendation module 240 selects 308 one or more candidate groups to be displayed to the user. For example, the group recommendation module 240 selects every candidate group above a threshold position in the ranking. After selecting 308 the candidate groups, the group recommendation module 240 sends 310 recommendations to the target user to join the selected groups.” The group recommendation module is able to apply rules to the recommended groups including sourcing and diversity rules. This process also uses a threshold that is required in a ranked structure. This teaches many different forms of filtering techniques.)
Regarding claim 8, Comito discloses, determining a percentage of posts in the group associated with the determined interest; and” (Word Embedding Based Clustering, pp. 195; “These steps are repeated until the algorithm receives new posts. To update a centroid
C
C
=
(
c
,
t
0
,
t
c
,
s
g
n
)
when a new post
s
m
p
=
(
i
d
,
u
,
t
,
l
,
f
v
,
s
f
v
)
is added to any cluster C, the time stamp of C is updated with the time stamp t of smp. Then all the items of each feature must be checked if already present in the centroid. Thus, the intersection between the feature vectors of smp and that of CC are computed. Then, for each feature smp.
f
v
(
i
)
of the post, if an element of this feature already appears in the feature vector of the centroid
f
v
c
(
i
)
, the corresponding frequency must be incremented by 1, otherwise, it will be added to the centroid feature and its frequency is set to 1.” The system in this article is able to cluster topics based on different elements of a post. This system is able to keep track of the number of topics in a cluster using a frequency counter. This would teach the number of topics is associated to a number of groups or clusters.)
Comito fails to explicitly disclose the remaining limitations of this claim. However, Miao discloses, “determining that the group is recommended when the percentage of posts in the group is above a predetermined threshold.” (Recommending Groups to a User, pp. 6, [0053]; “A third type of sourcing rule identifies a group as a candidate group if the group is especially active or popular. The level of activity in a group can be quantified by computing an activity score based on the number of actions associated with the group that were taken in a preceding time period (e.g., the preceding 24 hours, the preceding 7 days). Actions associated with the group can include, for example, the posting of a content item to the group and an action taken toward a content item posted to the group (e.g., adding a comment to the content item, expressing a preference for the content item, or sharing the content item).” This system is able to recommend popular or active groups. An active group would contain members making regular comments on certain subjects. The teaches a system able to recommend groups based a popularity threshold using an activity score over a period of time.)
Regarding claim 9, Comito discloses, “wherein the additional post is detected subsequent to the user adding the post to a user feed,” (Word Embedding Based Clustering, pp. 195; “These steps are repeated until the algorithm receives new posts. To update a centroid
C
C
=
(
c
,
t
0
,
t
c
,
s
g
n
)
when a new post
s
m
p
=
(
i
d
,
u
,
t
,
l
,
f
v
,
s
f
v
)
is added to any cluster C, the time stamp of C is updated with the time stamp t of smp. Then all the items of each feature must be checked if already present in the centroid. Thus, the intersection between the feature vectors of smp and that of CC are computed. Then, for each feature smp.
f
v
(
i
)
of the post, if an element of this feature already appears in the feature vector of the centroid
f
v
c
(
i
)
, the corresponding frequency must be incremented by 1, otherwise, it will be added to the centroid feature and its frequency is set to 1.” The system in this article is able to monitor for additional posts made in a group. The number of clusters is designed to grow with the number of posts made.)
Comito fails to explicitly disclose the remaining limitations of this claim. However, Miao discloses, “wherein the group recommendation is presented in response to determining that the user added the post to the user feed.” (Recommending Groups to a User, pp. 6, [0049]; “The group recommendation module 240 can implement several different types of sourcing rules, and the set of sourcing rules 404 that the group recommendation module 240 applies to identify the plurality of candidate groups 406 can include any combination of one or more types of sourcing rules.” The system in this application is able to use different sourcing rules to recommend groups to a user. This system uses information from the action logger, content store, group store and other modules as seen in figure 2.) And (System Architecture, pp. 3, [0025]; “The action logger 215 receives communications about user actions internal to and/or external to the online system 140, populating the action log 220 with information about user actions. Examples of actions include adding a connection to another user, sending a message to another user, uploading an image, reading a message from another user, viewing content associated with another user, attending an event posted by another user, among others. In addition, a number of actions may involve an object and one or more particular users, so these actions are associated with those users as well and stored in the action log 220.” On of the modules is the action logger. This is able to monitor user actions and it stores the information in the action log. This information contained in the log is used by the group recommendation module. One of ordinary skill in the art would recognize that the action logger can be used to prompt the group recommendation modules to out a response after action is logged.)
Regarding claim 11, Miao discloses, “A system comprising: a memory comprising instructions; and one or more computer processors, wherein the instructions, when executed by the one or more computer processors, cause the system to perform operations comprising:” (Recommending Groups by Category, pp. 8, [0071]; “Embodiments of the invention may also relate to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, and/or it may comprise a general-purpose computing device selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus. Furthermore, any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.” The system in this application discloses a computing system which contains generic computers. The generic computer is a processing system coupled to memory which is able to use instructions stored in memory to perform the method disclosed in this application.)
“training a post classifier model with a training set comprising the text of the posts and the topic identifier associated with each post;” (System Architecture, pp. 5, [0040]; “The group learning module 245 applies machine learning techniques to generate a group scoring model 250 that, when applied to a candidate group, outputs a score representing a likelihood that the target user will join the candidate group if presented with a recommendation to join the candidate group. As part of the generation of the group scoring model 250, the group learning module 245 forms a training set of groups by identifying a positive training set of groups that the target user chose to join after being presented with a recommendation to join the group, and, in some embodiments, forms a negative training set of groups that the target user declined to join after being presented with a recommendation to join the group.” The system in this application is able to use a learning module to train the models proposed. This system is able to use posted content and topics to generate a training set of data and use that for training the model.)
“determining a group recommendation for posting the additional post based on the topic identifier for the additional post and the topic-to-group table; and” (Recommending Groups to a User, pp. 6, [0055]; “A fourth type of sourcing rule identifies a group as a candidate group if the group is associated with a trending topic. In one embodiment, the online system 140 maintains a list of trending topics (e.g., the topics that were subject to the most activity during a preceding time window), and the sourcing rule identifies a group as a candidate group if the group has been classified (e.g., by the topic extraction engine 235) as being associated with one of the trending topics.” The system in this article is able to generate group recommendations based on different sourcing rules. This is able to determine a recommendation based on specified topics or popular topics.)
“causing presentation, based on the determining, of the group recommendation to the user for posting the additional post in the recommended group.” (Recommending Groups to a User, pp. 6, [0059]; “The group recommendation module 240 selects 308 one or more candidate groups to be displayed to the user. For example, the group recommendation module 240 selects every candidate group above a threshold position in the ranking. After selecting 308 the candidate groups, the group recommendation module 240 sends 310 recommendations to the target user to join the selected groups.” The system in this article is able to generate a group recommendation for a given user and present the recommendations to that user.)
Miao fails to explicitly disclose the following limitations of this claim: “clustering posts by associating a topic identifier with each post based on text in the post, the posts having been posted in groups associated with an online service;”, “mapping each of the groups to one of the topic identifiers based on topics associated with the posts;”, “creating a topic-to-group table mapping each of the topic identifiers to one or more of the groups;”, “detecting an additional post entered by a user associated with the online service;” and “determining, by the post classifier model, a topic identifier for the additional post based on text of the additional post;”.
However, Comito discloses, “clustering posts by associating a topic identifier with each post based on text in the post, the posts having been posted in groups associated with an online service;” (Preliminaries, pp. 194; “A post is assigned to a cluster if it is similar to the cluster centroid. The similarity is based both on the lexicon used in the posts and on their semantics obtained by exploiting word embedding. Therefore, the similarity will be the combination of two measures accounting both syntactic as well as semantics of the posts.” This article discloses a clustering algorithm that is able to evaluate user’s social media content. This will be able to identify different topics and interests in posts made by user in a social network.)
“mapping each of the groups to one of the topic identifiers based on topics associated with the posts;” (Preliminaries, pp. 194; “To store summary information of all the posts assigned to a cluster C, we introduce the cluster centroid as a compact data structure. The centroid keeps the textual items as in the feature vector
f
v
of each social media post smp assigned to the cluster, its corresponding semantic vector
s
f
v
, together with their frequencies and their temporal evolution.” The system in this article is able to generate different clusters containing similar posts and topics. The system in this article is able to map topics to clusters or groups.)
“creating a topic-to-group table mapping each of the topic identifiers to one or more of the groups;” (Word Embedding Based Clustering, pp. 195; “While a new post
s
m
p
i
arrives at time
t
i
, the algorithm builds the representation
f
v
i
of
s
m
p
i
and its word embedding
s
f
v
i
, and computes both the semantic similarity and the syntactic one between the post and the clusters active at the time stamp
t
i
, while the inactive clusters are removed from the set of clusters. Let
C
c
be the cluster whose centroid has maximum similarity with
s
m
p
i
. If this similarity value
s
i
m
(
s
m
p
i
,
C
c
)
is lower than ϵ, a new cluster is generated from
f
v
i
and
s
f
v
i
and added to the set of clusters, otherwise the social media post in the form of
f
v
i
and
s
f
v
i
is added to
C
c
by updating the centroid.” The system in this article is able to save the created clusters and use them later. The generated clusters can be used to map different topics to clusters or groups.)
“detecting an additional post entered by a user associated with the online service;” (Word Embedding Based Clustering, pp. 195; “These steps are repeated until the algorithm receives new posts.” The system in this article is able to detect when a user makes consecutive posting to a social network group.)
“determining, by the post classifier model, a topic identifier for the additional post based on text of the additional post;” (Preliminaries, pp. 194; “A post is assigned to a cluster if it is similar to the cluster centroid. The similarity is based both on the lexicon used in the posts and on their semantics obtained by exploiting word embedding.” This system is able to evaluate newly posted data and see if it aligns with an already generated cluster.)
Regarding claim 12, Miao discloses, “determining if the user belongs to the recommended group; and” (System Architecture, pp. 3, [0031]; “The group store 230 stores objects that each represents a group on the online system 140. Groups include one or more users and can have one or more characteristics.” And “A user becomes included in a group after the user joins the group, and a single user can join a plurality of groups. The plurality of groups that a particular user has joined is referred to as "the user's groups," "the user's associated groups," or "groups connected to the user." This system has a “group store” which contains information about the groups and users in the network. This store is able to evaluate and determine if a user is designed as part of that group or not a member)
“causing presentation of a recommendation to the user to join the group when the user does not belong to the group.” (System Architecture, pp. 7, [0059]; “The group recommendation module 240 selects 308 one or more candidate groups to be displayed to the user. For example, the group recommendation module 240 selects every candidate group above a threshold position in the ranking. After selecting 308 the candidate groups, the group recommendation module 240 sends 310 recommendations to the target user to join the selected groups.” To generate recommendations the system will rely on data from the different modules including the “group store”. This group store contains information about the users including what groups they have already joined. When evaluating the recommendation score used to rank the groups, the group recommendation module will use data from the different modules including the group store.)
Regarding claim 13, Comito discloses, “creating an embedding for each post;” (Preliminaries, pp. 194; “A social media post smp is defined as a tuple
s
i
m
=
(
i
d
,
t
,
f
v
,
s
f
v
)
where id is the post identifier, t is the time at which the post has been published,
f
v
=
(
w
u
,
w
b
,
h
u
,
h
b
,
m
u
,
m
b
)
is a vector of textual features extracted from the post, representing words, unigram
w
u
and bigram
w
b
, hashtags, unigram
h
u
and bigram
h
b
, mentions, unigram
m
u
and bigram
m
b
,
s
f
v
=
(
e
w
u
,
e
w
b
,
e
h
u
,
e
h
b
,
e
m
u
,
e
m
b
)
is the semantic feature vector corresponding to fv.” The system in this article will be able to evaluate a post form a user and embed that data in the
s
f
v
tuple.)
“generating reduced embeddings for the posts with a smaller dimension from the created embeddings; and” (Preliminaries, pp. 194; “A social media post smp is defined as a tuple
s
i
m
=
(
i
d
,
t
,
f
v
,
s
f
v
)
where id is the post identifier, t is the time at which the post has been published,
f
v
=
(
w
u
,
w
b
,
h
u
,
h
b
,
m
u
,
m
b
)
is a vector of textual features extracted from the post, representing words, unigram
w
u
and bigram
w
b
, hashtags, unigram
h
u
and bigram
h
b
, mentions, unigram
m
u
and bigram
m
b
,
s
f
v
=
(
e
w
u
,
e
w
b
,
e
h
u
,
e
h
b
,
e
m
u
,
e
m
b
)
is the semantic feature vector corresponding to fv.” This system will use the generated tuple
s
f
v
, which contains information about the post generated by the user. This system will initially take the post data and imbed it into the system, then the system will compress the post and other information into a sim tuple. This teaches that the initial post is embedded into
s
f
v
to then use it in the smaller sim tuple.)
“utilizing a clustering algorithm on the reduced embeddings to generate a plurality of topic identifiers.” (Preliminaries, pp. 194; “The centroid of a cluster C is a tuple
C
C
=
(
c
,
t
0
,
f
v
c
,
f
f
,
s
f
v
c
)
, where c is the cluster label,
t
0
is the creation time of the cluster, tc is the time stamp of the last time a social object was added to C,
f
v
c
and
s
f
v
c
are the textual and semantic feature vectors, respectively, analogous to the ones defined for the social medial post smp, and
f
f
=
(
f
w
u
,
f
w
b
,
f
h
u
,
f
h
b
,
f
m
u
,
f
m
b
)
is the list of frequencies corresponding to
f
v
c
.” This system is able to use the clustering algorithm to further store and use the data embedded from the users posting. This information is used to generate new clusters of topics or place the post in an existing cluster.)
Regarding claim 14, Miao discloses, “wherein determining the post classifier by the post classifier model enables generating the group recommendation in real-time or near real-time.” (Recommending Groups to a User, pp. 5, [0047]; “For instance, the method can operate periodically for some or all users of the online system 140 to maintain an up-to-date set of group recommendations for those users. Alternatively, the method can operate when a user accesses a group discovery interface provided by the online system 140.” The system in this article is able to generate group recommendations to a user. This system is designed to online and will keep an up-to-date recommendations list for a user.)
Regarding claim 15, Comito discloses, accessing the topic-to-group table to determine entries with the topic identifier.” (Algorithm
W
E
C
, pp. 195; The different clusters contain different topics posted by users. This algorithm discloses the process of evaluating social media posts from users. The set of clusters, which is interpreted to a be a data structure like a table or map, is saved after being generated and the set can be iterated through in Lines 14-19)
Regarding claim 16, Miao discloses, “A non-transitory machine-readable storage medium including instructions that, when executed by a machine, cause the machine to perform operations comprising:” (Recommending Groups by Category, pp. 8, [0071]; “Embodiments of the invention may also relate to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, and/or it may comprise a general-purpose computing device selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus. Furthermore, any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.” The system in this application discloses a computing system which contains generic computers. The generic computer is a processing system coupled to memory which is able to use instructions stored in memory to perform the method disclosed in this application.)
“training a post classifier model with a training set comprising the text of the posts and the topic identifier associated with each post;” (System Architecture, pp. 5, [0040]; “The group learning module 245 applies machine learning techniques to generate a group scoring model 250 that, when applied to a candidate group, outputs a score representing a likelihood that the target user will join the candidate group if presented with a recommendation to join the candidate group. As part of the generation of the group scoring model 250, the group learning module 245 forms a training set of groups by identifying a positive training set of groups that the target user chose to join after being presented with a recommendation to join the group, and, in some embodiments, forms a negative training set of groups that the target user declined to join after being presented with a recommendation to join the group.” The system in this application is able to use a learning module to train the models proposed. This system is able to use posted content and topics to generate a training set of data and use that for training the model.)
“determining a group recommendation for posting the additional post based on the topic identifier for the additional post and the topic-to-group table; and” (Recommending Groups to a User, pp. 6, [0055]; “A fourth type of sourcing rule identifies a group as a candidate group if the group is associated with a trending topic. In one embodiment, the online system 140 maintains a list of trending topics (e.g., the topics that were subject to the most activity during a preceding time window), and the sourcing rule identifies a group as a candidate group if the group has been classified (e.g., by the topic extraction engine 235) as being associated with one of the trending topics.” The system in this article is able to generate group recommendations based on different sourcing rules. This is able to determine a recommendation based on specified topics or popular topics.)
“causing presentation, based on the determining, of the group recommendation to the user for posting the additional post in the recommended group.” (Recommending Groups to a User, pp. 6, [0059]; “The group recommendation module 240 selects 308 one or more candidate groups to be displayed to the user. For example, the group recommendation module 240 selects every candidate group above a threshold position in the ranking. After selecting 308 the candidate groups, the group recommendation module 240 sends 310 recommendations to the target user to join the selected groups.” The system in this article is able to generate a group recommendation for a given user and present the recommendations to that user.)
Miao fails to disclose the following limitations of this claim: “clustering posts by associating a topic identifier with each post based on text in the post, the posts having been posted in groups associated with an online service;”, “mapping each of the groups to one of the topic identifiers based on topics associated with the posts;”, “creating a topic-to-group table mapping each of the topic identifiers to one or more of the groups;”, “detecting an additional post entered by a user associated with the online service;”, and “determining, by the post classifier model, a topic identifier for the additional post based on text of the additional post;”.
However, Comito discloses, “clustering posts by associating a topic identifier with each post based on text in the post, the posts having been posted in groups associated with an online service;” (Preliminaries, pp. 194; “A post is assigned to a cluster if it is similar to the cluster centroid. The similarity is based both on the lexicon used in the posts and on their semantics obtained by exploiting word embedding. Therefore, the similarity will be the combination of two measures accounting both syntactic as well as semantics of the posts.” This article discloses a clustering algorithm that is able to evaluate user’s social media content. This will be able to identify different topics and interests in posts made by user in a social network.)
“mapping each of the groups to one of the topic identifiers based on topics associated with the posts;” (Preliminaries, pp. 194; “To store summary information of all the posts assigned to a cluster C, we introduce the cluster centroid as a compact data structure. The centroid keeps the textual items as in the feature vector
f
v
of each social media post smp assigned to the cluster, its corresponding semantic vector
s
f
v
, together with their frequencies and their temporal evolution.” The system in this article is able to generate different clusters containing similar posts and topics. The system in this article is able to map topics to clusters or groups.)
“creating a topic-to-group table mapping each of the topic identifiers to one or more of the groups;” (Word Embedding Based Clustering, pp. 195; “While a new post
s
m
p
i
arrives at time
t
i
, the algorithm builds the representation
f
v
i
of
s
m
p
i
and its word embedding
s
f
v
i
, and computes both the semantic similarity and the syntactic one between the post and the clusters active at the time stamp
t
i
, while the inactive clusters are removed from the set of clusters. Let
C
c
be the cluster whose centroid has maximum similarity with
s
m
p
i
. If this similarity value
s
i
m
(
s
m
p
i
,
C
c
)
is lower than ϵ, a new cluster is generated from
f
v
i
and
s
f
v
i
and added to the set of clusters, otherwise the social media post in the form of
f
v
i
and
s
f
v
i
is added to
C
c
by updating the centroid.” The system in this article is able to save the created clusters and use them later. The generated clusters can be used to map different topics to clusters or groups.)
“detecting an additional post entered by a user associated with the online service;” (Word Embedding Based Clustering, pp. 195; “These steps are repeated until the algorithm receives new posts.” The system in this article is able to detect when a user makes consecutive posting to a social network group.)
“determining, by the post classifier model, a topic identifier for the additional post based on text of the additional post;” (Preliminaries, pp. 194; “A post is assigned to a cluster if it is similar to the cluster centroid. The similarity is based both on the lexicon used in the posts and on their semantics obtained by exploiting word embedding.” This system is able to evaluate newly posted data and see if it aligns with an already generated cluster.)
Regarding claim 17, Miao discloses, “determining if the user belongs to the recommended group; and” (System Architecture, pp. 3, [0031]; “The group store 230 stores objects that each represents a group on the online system 140. Groups include one or more users and can have one or more characteristics.” And “A user becomes included in a group after the user joins the group, and a single user can join a plurality of groups. The plurality of groups that a particular user has joined is referred to as "the user's groups," "the user's associated groups," or "groups connected to the user." This system has a “group store” which contains information about the groups and users in the network. This store is able to evaluate and determine if a user is designed as part of that group or not a member)
“causing presentation of a recommendation to the user to join the group when the user does not belong to the group.” (System Architecture, pp. 7, [0059]; “The group recommendation module 240 selects 308 one or more candidate groups to be displayed to the user. For example, the group recommendation module 240 selects every candidate group above a threshold position in the ranking. After selecting 308 the candidate groups, the group recommendation module 240 sends 310 recommendations to the target user to join the selected groups.” To generate recommendations the system will rely on data from the different modules including the “group store”. This group store contains information about the users including what groups they have already joined. When evaluating the recommendation score used to rank the groups, the group recommendation module will use data from the different modules including the group store.)
Regarding claim 18, Comito discloses, “creating an embedding for each post;” (Preliminaries, pp. 194; “A social media post smp is defined as a tuple
s
i
m
=
(
i
d
,
t
,
f
v
,
s
f
v
)
where id is the post identifier, t is the time at which the post has been published,
f
v
=
(
w
u
,
w
b
,
h
u
,
h
b
,
m
u
,
m
b
)
is a vector of textual features extracted from the post, representing words, unigram
w
u
and bigram
w
b
, hashtags, unigram
h
u
and bigram
h
b
, mentions, unigram
m
u
and bigram
m
b
,
s
f
v
=
(
e
w
u
,
e
w
b
,
e
h
u
,
e
h
b
,
e
m
u
,
e
m
b
)
is the semantic feature vector corresponding to fv.” The system in this article will be able to evaluate a post form a user and embed that data in the
s
f
v
tuple.)
“generating reduced embeddings for the posts with a smaller dimension from the created embeddings; and” (Preliminaries, pp. 194; “A social media post smp is defined as a tuple
s
i
m
=
(
i
d
,
t
,
f
v
,
s
f
v
)
where id is the post identifier, t is the time at which the post has been published,
f
v
=
(
w
u
,
w
b
,
h
u
,
h
b
,
m
u
,
m
b
)
is a vector of textual features extracted from the post, representing words, unigram
w
u
and bigram
w
b
, hashtags, unigram
h
u
and bigram
h
b
, mentions, unigram
m
u
and bigram
m
b
,
s
f
v
=
(
e
w
u
,
e
w
b
,
e
h
u
,
e
h
b
,
e
m
u
,
e
m
b
)
is the semantic feature vector corresponding to fv.” This system will use the generated tuple
s
f
v
, which contains information about the post generated by the user. This system will initially take the post data and imbed it into the system, then the system will compress the post and other information into a sim tuple. This teaches that the initial post is embedded into
s
f
v
to then use it in the smaller sim tuple.)
“utilizing a clustering algorithm on the reduced embeddings to generate a plurality of topic identifiers.” (Preliminaries, pp. 194; “The centroid of a cluster C is a tuple
C
C
=
(
c
,
t
0
,
f
v
c
,
f
f
,
s
f
v
c
)
, where c is the cluster label,
t
0
is the creation time of the cluster, tc is the time stamp of the last time a social object was added to C,
f
v
c
and
s
f
v
c
are the textual and semantic feature vectors, respectively, analogous to the ones defined for the social medial post smp, and
f
f
=
(
f
w
u
,
f
w
b
,
f
h
u
,
f
h
b
,
f
m
u
,
f
m
b
)
is the list of frequencies corresponding to
f
v
c
.” This system is able to use the clustering algorithm to further store and use the data embedded from the users posting. This information is used to generate new clusters of topics or place the post in an existing cluster.)
Regarding claim 19, Miao discloses, “wherein determining the post classifier by the post classifier model enables generating the group recommendation in real-time or near real-time.” (Recommending Groups to a User, pp. 5, [0047]; “For instance, the method can operate periodically for some or all users of the online system 140 to maintain an up-to-date set of group recommendations for those users. Alternatively, the method can operate when a user accesses a group discovery interface provided by the online system 140.” The system in this article is able to generate group recommendations to a user. This system is designed to online and will keep an up-to-date recommendations list for a user.)
Regarding claim 20, Comito discloses, “accessing the topic-to-group table to determine entries with the topic identifier.” (Algorithm
W
E
C
, pp. 195; The different clusters contain different topics posted by users. This algorithm discloses the process of evaluating social media posts from users. The set of clusters, which is interpreted to a be a data structure like a table or map, is saved after being generated and the set can be iterated through in Lines 14-19)
Claims 10 are rejected under 35 U.S.C. 103 as being unpatentable over Miao and Comito in view of Lambert et al, (Lambert et al, “MANAGING DIGITAL MESSAGES ACROSS A PLURALITY OF SOCIAL NETWORKING GROUPS”, US 20180131660 A1, Filed Nov. 10th, 2016, hereinafter “Lambert”).
Regarding claim 10, Miao and Comito fail to explicitly disclose the limitations of this claim. However, Lambert discloses, “posting the additional post in the recommended group after the user accepts the group recommendation.” (Detailed Description, pp. 14, [0137]; “Based on user interaction with the modification elements 442b-442d the digital multi-group messaging system 100 can modify a digital message posted across a plurality of social networking groups. For example, upon user interaction with the edit post element 442b, the digital multi-group messaging system 100 can receive modifications to digital message content (e.g., a change to a digital image, digital video, or digital text). Moreover, the digital multi-group messaging system 100 can automatically post the modified digital message to a plurality of social networking groups (e.g., the "West Town Camping Market" social networking group, the "North Cali Outdoor Traders" social networking group, and the "San Francisco Tent Mart" social networking group).” The system in this application is able to automatically send messages to joined groups. It can also alter the message depending on the group it is posting in or to.) And (Detailed Description, pp. 15, [00146]; “Similarly, the digital multigroup messaging system 100 can manage private social networking groups that require a user to obtain permission from an administrator before posting joining the group and posting on the social networking group page.” The proposed system in this application is able to recognize when the user needs to approved prior to posting or commenting in the group. After this achieved the system can automatically post in the group.)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the present application to combine Miao, Comito and Lambert. Miao teaches a system that is able to make group recommendations to a user on an online social network. Comito teaches a system that is able to evaluate posts from an online social network and group or cluster topics disclosed in posts. Lambert teaches a system that is able to handle message automation of a user in an online social network. One of ordinary skill would have motivation to combine a group recommendation system that is able to send group recommendations to users based on topics and a system that is able to group or cluster topics from posts generated by a user with a system that is able to handle automated messages in an online social network, “In addition, the disclosed systems and methods can further improve efficiency of various computing devices utilized to manage digital messages across social networking groups. Indeed, the disclosed systems and methods can store a digital message and post the digital message in multiple social networking group pages by reference to the stored digital message. In this manner, the disclosed systems and methods can reduce duplicative, unnecessary storage and processing of multiple copies of a digital message.” (Summary, pp. 1, [0008])
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to PAUL MICHAEL GALVIN-SIEBENALER whose telephone number is (571)272-1257. The examiner can normally be reached Monday - Friday 8AM to 5PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Viker Lamardo can be reached at (571) 270-5871. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/PAUL M GALVIN-SIEBENALER/Examiner, Art Unit 2147
/VIKER A LAMARDO/Supervisory Patent Examiner, Art Unit 2147