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 .
DETAILED ACTION
Claim Rejections - 35 USC § 101
Claims 1-20 as amended 4/8/26 suffice to obviate the 35 U.S.C. 101 rejection because the amended claimed invention is considered directed to a system, method, etc. comprising improvements to the evaluating and refining of semantic text clustering and recite a particular processing arrangement of semantic vector generation, the generation of intra and inter cluster similarity structures sufficient to specify duplicate and improper sub clusters, metrics, thereof and to update the clustering based thereon.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1-20 rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention. Claims 1, 8, 15 recite a system, method, etc. operative to “determine one or more data structures representing, for each of the plurality of text strings, intra- cluster similarity and inter- cluster similarity based, at least in part, on a vector representation for each text string generated by one or more neural networks to represent a semantic meaning of each respective text string,” it cannot be determined from the claim if the structures correspond globally to the plurality of text strings, or correspond per string and thus comprise one data structure, or more data structures, respectively; similarly the manner in which the similarities are determined is indefinite and as such it is unclear if the necessary plurality of structures are distinct with respect to the intra and inter cluster similarities or if the global structure comprises all these values; nor do the claims clarify the natures of an “improper,” sub cluster and as such it comprises merely an assignment of data; nor does the recited operation to update “the one or more data clustering algorithms,” resolve a clear object as to which of the one or more algorithms are updated, which parameters or portions update, or how the update processes the one or more algorithms, particularly in as much as this update is “based on,” recited “metrics,” which rely on the indefinite steps detailed supra to process the already indefinite “one or more data structures.” The remaining claims do not remedy and are similarly rejected. Claims 2-6, 9-13, 16, 17 variously additionally recite “the plurality of clusters of data,” “one or more clusters of data,” and “members of the one or more clusters of data,” whereas the independent claim resolved instead recites the system operative to obtain “clustering information,” using “clustering algorithms identifying groupings of semantically similar text strings,” not “one or more clusters of data.” Claims 7, 14 additionally recite “are further to evaluate,” based on “a holistic cluster performance metric generated at least in part on a combination of the distinct performance metrics of the set of distinct performance metrics,”: the scope of this claim lacks clarity. Similarly claim 16 additionally recites “wherein the one or more performance metrics corresponding to the one or more data clustering algorithms to be generated is based, at least in part on generating one or more performance metrics,”; the scope of this claim lacks clarity. Claim 18 recites “the one or more performance metrics,” but depends from claim 15 which merely recites “a set of distinct performance metrics.” Appropriate correction is required.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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 of this title, 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.
The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1-20 rejected under 35 U.S.C. 103 as being unpatentable over Grootendorst: “ BERTopic: Neural topic modeling with a class-based TF-IDF procedure,” (copy provided by Examiner; available 3/11/22; and hereinafter Bert) further in view of Saleh: 20230252478 hereinafter Sal further in view of Li: 8914366.
Regarding claim 1
Bert teaches:
A processor (Bert: § 5.3, 6.2, 6.4: such as the discussed processors, GPU, etc. operative to run the disclosed models), comprising: one or more circuits to:
obtain a plurality of text strings and clustering information produced for the plurality of text strings using one or more data clustering algorithms identifying groupings of semantically similar text strings (Bert: § 1, 2, 3.1: algorithms such as the BERT algorithm of Devlin obtain documents comprising one or more text strings encoded in vector space to determine groupings of semantically similar vectors),
determine one or more data structures representing, for each of the plurality of text strings, intra- cluster similarity (Bert: § 3, 3.1, 3.2: each document converted to embeddings by a language model to create semantic representations, and generate clusters therefrom of semantically similar document embeddings; wherein internal document similarities and inter- cluster similarity are determines such as by generating document embeddings such as with UMAP; and clustering same such as with HDBSCAN) and intra-cluster similarity (Bert: § 3, 3.1, 3.2, 3.3, 4: such as by performing class based TF IDF over all clusters in such a way as to compare and merge topic representations using Bert-topic such as by the taught determination of topic vectors and cross-topic comparisons) based at least in part, on a vector representation for each text string generated by one or more neural networks to represent a semantic meaning of each respective text string (Bert: § 3, 3.1, 3.2, 3.3, 4: such as by converting each document into semantic embedding vector to create representing of the document, sentences, paragraphs, etc. therein which can be compared semantically, such as to generate intra cluster similarities over one or more documents such as topics therein and inter cluster similarities of the documents such as topic word distributions for clusters of documents each based on semantic meanings of text strings);
cause a set of distinct performance metrics to measure performance of the one or more data clustering algorithms used to produce the clustering information (Bert: § 3.3, 5.3, 6: system evaluates the performance of topic models and determines overall suitability of Bert-topic to the clustering tasks, such as by determining topic coherence and diversity and similarity and reifying topics over the space based on similarity), to be generated based, at least in part, on the one or more data structures representing intra-cluster and inter-cluster similarity (Bert: § such as by performing the evaluation using the coherence and diversity metrics upon topics generated from clusters with documents, strings thereof, and of overall similarity of topics upon the corpus), the set of metrics comprising a metric indicative of an amount of duplication (Bert: § 5.3: system measures topic diversity to determine a redundance metric which indicates redundant clusters by assignment of a particular value) and a metric indicative improper sub-clusters in a cluster hierarchy (Bert: § 3.2, 3.3: system models noisy clusters as outliers and iteratively merging least common clusters); and update the one or more data clustering algorithms based, at least in part, on the performance metrics (Bert: § 3.3: system iteratively merges c-TF-IDF representations to reduce a number of topics based on user input).
Bert strongly suggests but does not explicitly teach a system, method, etc. operable to cause a set of distinct performance metrics to measure performance of the one or more data clustering algorithms to determine an amount of duplicate clusters and an amount of improper sub-clusters in an hierarchy; and while Bert does not discuss training, fine-tuning, or updating of the model, algorithm, etc. beyond the updating of clusters, the iterative update of a model, algorithm, etc. based on outputs, measures, etc. thereof must be considered an obvious step over the machine learning domain.
In a related field of endeavor Sal teaches a processor, system, method, etc. comprising, operative of, etc.: one or more circuits for clustering data, such as over a plurality of data records (Sal: Abstract; ¶ 67; Fig 5) to:
using one or more data clustering algorithms identifying groupings (Sal: Abstract; ¶ 12, 14, 17, etc.: system operates to utilize a DNN, embeddings thereof, passed thereto, etc. to determine similarities and relationships among clustered features vectors of a plurality of data records),
determine one or more data structures representing intra-cluster similarity and inter-cluster similarity (Sal: Abstract; ¶ 19, 39, 54, etc.; Fig 2: system uses a silhouette score which is considered to comprise a measure of cluster self-similarity or intra cluster similarity and compares this to other clusters or inter cluster similarity; see additionally Silhouette Wikipedia page; the communication of vectors between layers of the figure 2 DNN and the provision thereto of the silhouette score are considered to encompass the recited data structures)
based, at least in part, on a vector representation for each data record generated by one or more neural networks (Sal: ¶ 47-49: an embedding layer of a neural network operable for deep clustering in concert with a silhouette score based on vectorized input);
measure performance of the one or more data clustering algorithms used to produce the clustering information, based, at least in part, on the one or more data structures representing intra-cluster and inter-cluster similarity (Sal: ¶ 14, 19, etc.: silhouette score used for cluster performance evaluation) including determining a number of determined, output, etc. clusters such as based on a hyperparameter which directs the determination of a particular number or spread of clusters (Sal: ¶ 18, 39, 40, 57, etc.); and
update the one or more data clustering algorithms based, at least in part, on the set of distinct performance metrics (Sal: ¶ 13, 18, 19, 34, 39, 54: the silhouette score is used in training a DNN, RNN, etc. to optimize a loss function with respect to a clustering algorithm and to monitor performance thereof; recurrent neural network (RNN) used to predict relationships among input data, an RNN is considered to update weight vectors, array/matrices thereof and upon each timestep, cadences of timesteps etc.)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the instant application to apply silhouette score cluster evaluation and cluster number tuning as taught or suggested by Sal to thereby perform cluster evaluation and tuning, such as tuning based on a number parameter to improve clustering in the Bert taught system for semantic document clustering and for at least the purpose of improving intra cluster cohesion to manage similarity of embeddings by assigned topic cluster and to manage inter cluster separations by maintaining and parameterizing difference, distance, etc. among nearby, neighboring etc. topic clusters; such as by managing metadata directing particular counts, numbers, amounts, etc. of duplicate clusters, duplications with clusters, etc.; and particular counts, numbers, amounts, etc. improper, noisy, outlier, etc. clusters and/or cluster members as taught or suggested by Bert and to thereby improve topic distinctness and cluster selection based thereon; one of ordinary skill in the art would have expected only predictable results therefrom.
Bert in view of Sal does not explicitly discuss a set of distinct clustering performance metrics that comprise a metric capturing an amount of duplicate clusters and a metric capturing an amount of improper sub clusters.
In a related field of endeavor Li teaches a system for clustering of data and evaluating said clusters for the purpose of detecting mischaracterization and the modification of clustering processes based on evaluation metrics (Li: Col 1:25-1:32) wherein the system determines a set of distinct performance metrics comprising a metric indictive of an amount of duplicate clusters (Li: Col 1:38-1:55, 2:44-2:52; Claim 1, 3: a duplication tendency tracks an amount of duplicates using a quantified duplication metric); and a metric indicative of an amount of improper sub-clusters in a cluster hierarchy (Li: Col 1:55-2:4, 2:53-2:62; Claim 1, 9: an overclustering metric tracks an amount of clusters with different entities within a cluster using a quantified overclustering metric); and wherein to thereby utilize the metrics to evaluate the clustering and update the clustering algorithm outputs by iterating over the input data to thereby modify the algorithm (Li: Col 15:56-16:5, 21:60-22:49, 22:58-23:21; Fig 8).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the instant application to apply the distinct set of duplication and overclustering metrics to the optimized semantic clustering of Bert in view of Sal to diagnose, minimize, etc. specific clustering errors not identified by the taught steps of Bert or Sal for at least the purpose of thereby identifying redundant or over-inclusive topics, clusters, etc. thereby allowing update of the clustering procedure, clustering parameters, and subsequent counts to improve the clustering, clustering model, etc.; one of ordinary skill in the art would have expected only predictable results therefrom.
Regarding claim 2
Bert in view of Sal in view of Li teaches or suggests:
The processor of claim 1, wherein the vector representations generated by the one or more neural networks are applied to indicate data not grouped with the plurality of clusters of data (Bert: § 3.2: such as modeling noise as outlying data not grouped within a cluster); (Sal: ¶ 57, etc.; Fig 3: system identifies data unaffiliated or associated with a single cluster such as that of account D). The claim is considered obvious over Bert as modified by Sal and Li as addressed in the base claim as it would have been obvious to apply the further teaching of Bert, Sal, and/or Li to the modified device of Bert, Sal, and Li; one of ordinary skill in the art would have expected only predictable results therefrom.
Regarding claim 3
Bert in view of Sal in view of Li teaches or suggests:
The processor of claim 1, wherein the vectors to be generated by the one or more neural networks are indicative of noisy data among members of one or more clusters of data (Bert: § 3.2: such as modeling noise as outlying data not grouped within a cluster); (Sal: Abstract; ¶ 14, 19, 54, 57: a silhouette score is a measure of cluster noise in as much as it provides a metric for cluster consistency which is considered to provide a measure of noise within a cluster in the form of a measure of how well particular data point(s) integrate distance wise with the overall cluster). The claim is considered obvious over Bert as modified by Sal and Li as addressed in the base claim as it would have been obvious to apply the further teaching of Bert, Sal, and/or Li to the modified device of Bert, Sal, and Li; one of ordinary skill in the art would have expected only predictable results therefrom.
Regarding claim 4
Bert in view of Sal in view of Li teaches or suggests:
The processor of claim 1, wherein the vectors to be generated by the one or more neural networks indicative of duplicate clusters of data among members of one or more clusters of data (Bert: § 3.3: iteratively merging representations of a least common topic); (Sal: ¶ 39: silhouette score is considered a measure of redundancy as clusters which are not well separated, insufficiently distinguished, etc. are increasingly duplicates of one another); (Li: Col 18:13-18:27: quantifying a duplication tendency to a particular value). The claim is considered obvious over Bert as modified by Sal and Li as addressed in the base claim as it would have been obvious to apply the further teaching of Bert, Sal, and/or Li to the modified device of Bert, Sal, and Li; one of ordinary skill in the art would have expected only predictable results therefrom.
Regarding claim 5
Bert in view of Sal in view of Li teaches or suggests:
The processor of claim 1, further comprising generating the one or more clusters of data using the one or more data clustering algorithms, wherein the one or more clusters of data is based, at least in part, on unstructured textual data (Bet: Abstract; ¶ 3.2: clustering of unstructured data such as document text into topics); (Sal: Abstract: clustering of embeddings based on silhouette scores). The claim is considered obvious over Bert as modified by Sal and Li as addressed in the base claim as it would have been obvious to apply the further teaching of Bert, Sal, and/or Li to the modified device of Bert, Sal, and Li; one of ordinary skill in the art would have expected only predictable results therefrom.
Regarding claim 6
Bert in view of Sal in view of Li teaches or suggests:
The processor of claim 1, wherein the vectors to be generated by the one or more neural networks indicative of a semantic relationship between members of the one or more clusters of data (Bert: § 1: semantic properties of vector representations allow the meaning of texts to be encoded in such a way that similar texts are proximal in vector space); (Sal: Abstract; ¶ 14: clustering of embeddings based on silhouette scores allows for determination of similarities and relationships among input data). The claim is considered obvious over Bert as modified by Sal and Li as addressed in the base claim as it would have been obvious to apply the further teaching of Bert, Sal, and/or Li to the modified device of Bert, Sal, and Li; one of ordinary skill in the art would have expected only predictable results therefrom.
Regarding claim 7
Bert in view of Sal in view of Li teaches or suggests:
The processor of claim 1, wherein the one or more performance metrics corresponding to the one or more data clustering algorithms are to be generated based, at least in part, on one or more performance metrics indicative of at least one of an amount of unclustered data (Bert: § 3.2: such as by utilizing modeled noise as outlying data not grouped within a cluster); (Sal: ¶ 57, etc.; Fig 3: system identifies data unaffiliated or associated with a single cluster such as that of account D), noisy data (Bert: id.); (Sal: Abstract; ¶ 14, 19, 54, 57: a silhouette score is a measure of cluster noise in as much as it provides a metric for cluster consistency which is considered to provide a measure of noise within a cluster in the form of a measure of how well particular data point(s) integrate distance wise with the overall cluster), duplicate clusters (Sal: ¶ 39: silhouette score is considered a measure of redundancy as clusters which are not well separated, insufficiently distinguished, etc. are increasingly duplicates of one another); (Li: Col 1:38-1:55, 2:44-2:52; Claim 1, 3: a duplication tendency tracks an amount of duplicates using a quantified duplication metric) or sub-clusters to be merged, among the members of the one or more clusters of data. The claim is considered obvious over Bert as modified by Sal and Li as addressed in the base claim as it would have been obvious to apply the further teaching of Bert, Sal, and/or Li to the modified device of Bert, Sal, and Li; one of ordinary skill in the art would have expected only predictable results therefrom.
Regarding claims 8, 15—the claims recite substantially similar subject matter to that of claim 1 supra and are similarly rejected
Regarding claim 9—the claim recites substantially similar subject matter to that of claim 2 supra and is similarly rejected.
Regarding claim 10—the claim recites substantially similar subject matter to that of claim 3 supra and is similarly rejected.
Regarding claim 11—the claim recites substantially similar subject matter to that of claim 4 supra and is similarly rejected.
Regarding claim 12—the claim recites substantially similar subject matter to that of claim 5 supra and is similarly rejected.
Regarding claims 13, 17—the claims recite substantially similar subject matter to that of claim 6 supra and are similarly rejected.
Regarding claims 14, 16—the claims recite substantially similar subject matter to that of claim 7 supra and are similarly rejected.
Regarding claim 18
Bert in view of Sal in view of Li teaches or suggests:
The method of claim 15, further comprising: updating parameters of one or more data clustering algorithms based, at least in part on, the one or more performance metrics (Bert: § 3.3: system iteratively merges c-TF-IDF representations to reduce a number of topics based on user input); (Sal: ¶ 13, 28, 35, etc.: recurrent neural network (RNN) used to predict relationships among input data, an RNN is considered to update weight vectors, array/matrices thereof and upon each timestep, cadences of timesteps etc.); (Li: Col 15:56-16:5, 21:60-22:49, 22:58-23:21; Fig 8: metrics evaluate the clustering and update the clustering algorithm outputs by iterating over the input data to thereby modify the algorithm). The claim is considered obvious over Bert as modified by Sal and Li as addressed in the base claim as it would have been obvious to apply the further teaching of Bert, Sal, and/or Li to the modified device of Bert, Sal, and Li; one of ordinary skill in the art would have expected only predictable results therefrom.
Regarding claim 19
Bert in view of Sal in view of Li teaches or suggests:
The method of claim 15, further comprising generating a similarity matrix based, at least in part on the vectors generated by the one or more neural networks. Examiner has taken official notice which Applicant has failed to timely and explicitly traverse and it is thus accepted as Admitted Prior Art (APA: please see MPEP 2144.03) that utilizing data structures such as similarity matrices to store or buffer vector data for comparison, clustering, processing by a neural network, etc. would have comprised an obvious inclusion such as for managing the dimensionality of data in a computationally efficient manner; one of ordinary skill in the art would have expected only predictable results therefrom. (Please see additionally Grootendorst: BERTopic: Hierarchical Topic Modelling github page included by Examiner and available at least 3/4/23). The claim is considered obvious over Bert as modified by Sal and Li as addressed in the base claim as it would have been obvious to apply the further teaching of Bert, Sal, and/or Li to the modified device of Bert, Sal, and Li; one of ordinary skill in the art would have expected only predictable results therefrom.
Regarding claim 20
Bert in view of Sal in view of Li teaches or suggests:
The method of claim 19, further comprising generating the set of distinct performance metrics based, at least in part, on the similarity matrix (Bert: such as by including hierarchical topic modeling methods inbuilt into Bert or in other manners well known to the prior art). The claim is considered obvious over Bert as modified by Sal and Li as addressed in the base claim as it would have been obvious to apply the further teaching of Bert, Sal, and/or Li to the modified device of Bert, Sal, and Li; one of ordinary skill in the art would have expected only predictable results therefrom.
Response to Arguments
Applicant’s arguments in concert with claim amendments, see Remarks and Claims, filed 4/8/26, with respect to the rejection(s) of claim(s) 1-20 under 35 USC 103 over Saleh in view of Osuala have been fully considered and are persuasive. Therefore, the rejection has been withdrawn. However, upon further consideration, a new ground(s) of rejection is made in view of BERTTopic in view of Saleh in view of Li.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to PAUL C MCCORD whose telephone number is (571)270-3701. The examiner can normally be reached 730-630 M-F.
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, CAROLYN EDWARDS can be reached at (571) 270-7136. 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 C MCCORD/Primary Examiner, Art Unit 2692