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 office action is in response to the application filed on July 25, 2023.
Claims 1-20 are pending and have been examined. Claims 1-20 are rejected.
Information Disclosure Statement
Acknowledgment is made of the information disclosure statements filed August 7, 2023, which comply with 37 CFR 1.97. As such, the information disclosure statements have been placed in the application file and the information referred to therein has been considered by the examiner.
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 non-statutory subject matter.
According to the USPTO guidelines, a claim is directed to non-statutory subject matter if:
Step 1: The claim does not fall within one of the four statutory categories of invention (process, machine, manufacture, or composition of matter) – see MPEP 2106.03, or,
Step 2: The claim recites a judicial exception, e.g. an abstract idea, without reciting additional elements that amount to significantly more than the judicial exception, as determined using the following analysis – see MPEP 2106.04:
Step 2A, Prong 1: Does the claim recite an abstract idea, law of nature, or natural phenomenon?
Step 2A, Prong 2: Does the claim recite additional elements that integrate the judicial exception into a practical application?
Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception? - see MPEP 2106.05
MPEP 2106.04(a)(2)(I) states: “The mathematical concepts grouping is defined as mathematical relationships, mathematical formulas or equations, and mathematical calculations.”
MPEP 2106.04(a)(2)(III) states: “Accordingly, the “mental processes” abstract idea grouping is defined as concepts performed in the human mind, and examples of mental processes include observations, evaluations, judgements, and opinions.
Further, the MPEP states: “The courts do not distinguish between mental processes that are performed entirely in the human mind and mental processes that require a human to use a physical aid (e.g. pen and paper or a slide run) to perform the claim limitation.
Using the two-step inquiry, it is clear that Claims 1-20 are each directed to non-statutory subject matter as shown below:
Please note the following:
The following groups of claims are expressed in different statutory categories:
Claims 1-10 are directed to a computer-implemented method.
Claims 11-15 are directed to a computer readable storage medium storing one or more instructions executable by a computer system to perform one or more operations.
Claims 16-20 are directed to a computer-implemented system comprising one or more computers and one or more computer memory devices interoperably coupled with one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, performs one or more operations.
With respect to Claims 1, 11, and 16:
Step 1: The claims are directed to a method, also known as a process, which is one of the four statutory categories of patentable subject matter.
Step 2A, Prong 1: A judicial exception is recited in the claims as they recite mental processes, which are abstract ideas:
“determining multiple split point lists based on the trained supervised and multivariate machine learning model, wherein the multiple split point lists correspond to the multiple attributes, and wherein each of the multiple split point lists comprises a number of split points and a number of split gains associated with a respective attribute;“; Determining multiple split point lists that are based on a trained supervised and multivariate machine learning model and correspond to multiple attributes, where each list comprises a number of split points and a number of split gains associated with a respective attribute covers mental concepts that could be practically performed in the human mind or through the use of a pencil and paper, including observation, evaluation, and judgement. See MPEP 2106.04(a)(2)(III).
“for each attribute of the multiple attributes, determining a cut point list by clustering the split point list associated with the attribute based on the number of split points and the number of split gains comprised in the split point list, wherein the cut point list comprises a number of cut points dividing the attribute into one or more intervals;“; Determining a cut point list for each attribute by clustering split point lists based on the number of split points and split gains within a split point list covers mental concepts that could be practically performed in the human mind or through the use of a pencil and paper, including observation, evaluation, and judgement. See MPEP 2106.04(a)(2)(III).
“and dividing the plurality of instances into one or more groups based on the plurality of inputs and the one or more intervals.“; Dividing a plurality of instances into one or more groups based on the plurality of inputs and the one or more intervals covers mental concepts that could be practically performed in the human mind or through the use of a pencil and paper, including observation, evaluation, and judgement. See MPEP 2106.04(a)(2)(III).
Step 2A, Prong 2: The claims do not recite additional elements that integrate the judicial exception into a practical application:
“A computer-implemented method, comprising: receiving a plurality of inputs corresponding to a plurality of instances, wherein each input of the plurality of inputs representing multiple attributes of a respective instance;“; Receiving a plurality of inputs is considered a pre-solution step regarding the input of data, which is adding insignificant extra-solution activity to the judicial exception. See MPEP 2106.05(g)(1). Describing how each input represents multiple attributes of a respective instance is considered mere instructions to apply an exception (see MPEP 2106.05(f)(3)).
“training, using the plurality of inputs and as a trained supervised and multivariate machine learning model, a supervised and multivariate machine learning model;“; Training a machine learning model using inputted data is an additional element that amounts to adding the words “apply it” (or an equivalent) with the judicial exception (such as merely using a computer in its ordinary capacity as a tool to perform an existing process - see MPEP 2106.04(d)).
Step 2B: The claims do not recite additional elements that amount to significantly more than the judicial exception. Receiving a plurality of inputs is considered a pre-solution step regarding the input of data, which is adding insignificant extra-solution activity to the judicial exception. See MPEP 2106.05(g)(1). Describing how each input represents multiple attributes of a respective instance is considered mere instructions to apply an exception (see MPEP 2106.05(f)(3)). Training a machine learning model using inputted data is an additional element that amounts to adding the words “apply it” (or an equivalent) with the judicial exception (such as merely using a computer in its ordinary capacity as a tool to perform an existing process - see MPEP 2106.04(d)).
With respect to Claims 2, 11, and 19:
Step 2A, Prong 1: The claims incorporate the abstract ideas from independent Claims 1, 11, and 16, respectively.
Step 2A, Prong 2: The claims do not recite additional elements that integrate the judicial exception into a practical application:
“wherein each of the plurality of inputs comprises multiple values, and wherein each of the multiple values representing one of the multiple attributes of the respective instance”; Describing how a plurality of inputs comprises multiple values and how each of the multiple values represents one of the multiple attributes of a respective instance is an additional element that amounts to adding the words “apply it” (or an equivalent) with the judicial exception (such as merely using a computer in its ordinary capacity as a tool to perform an existing process - see MPEP §§ 2106.04(d)), along with mere instructions to apply an exception (see MPEP §§ 2106.05(f)(3)).
Step 2B: The claims do not recite additional elements that amount to significantly more than the judicial exception. Describing how a plurality of inputs comprises multiple values and how each of the multiple values represents one of the multiple attributes of a respective instance is an additional element that amounts to adding the words “apply it” (or an equivalent) with the judicial exception (such as merely using a computer in its ordinary capacity as a tool to perform an existing process - see MPEP §§ 2106.04(d)), along with mere instructions to apply an exception (see MPEP §§ 2106.05(f)(3)).
With respect to Claim 3,13, and 18: Step 2A, Prong 1: The claims incorporate the abstract ideas from independent Claims 1, 11, and 16, respectively.
Step 2A, Prong 2: The claims do not recite additional elements that integrate the judicial exception into a practical application:
“wherein the supervised and multivariate machine learning model is a Gradient Tree Boosting (GTB) model”; Identifying a supervised and multivariate machine learning model as a Gradient Tree Boosting model only specifies what type of machine learning model is being used and is an additional element that amounts to adding the words “apply it” (or an equivalent) with the judicial exception (such as merely using a computer in its ordinary capacity as a tool to perform an existing process - see MPEP §§ 2106.04(d)), along with mere instructions to apply an exception (see MPEP §§ 2106.05(f)(3)).
Step 2B: The claims do not recite additional elements that amount to significantly more than the judicial exception. Identifying a supervised and multivariate machine learning model as a Gradient Tree Boosting model only specifies what type of machine learning model is being used and is an additional element that amounts to adding the words “apply it” (or an equivalent) with the judicial exception (such as merely using a computer in its ordinary capacity as a tool to perform an existing process - see MPEP §§ 2106.04(d)), along with mere instructions to apply an exception (see MPEP §§ 2106.05(f)(3)).
With respect to Claims 4, 14, and 19: Step 2A, Prong 1: The claims incorporate the abstract ideas from independent Claims 1, 11, and 16, respectively.
Step 2A, Prong 2: The claims do not recite additional elements that integrate the judicial exception into a practical application:
“wherein a first split point list of the multiple split point lists comprises one or more split points and one or more split gains”; Describing a first split point list containing one or more split points and one or more split gains is considered an additional element that amounts to adding the words “apply it” (or an equivalent) with the judicial exception (such as merely using a computer in its ordinary capacity as a tool to perform an existing process - see MPEP §§ 2106.04(d)), along with mere instructions to apply an exception (see MPEP §§ 2106.05(f)(3)).
Step 2B: The claims do not recite additional elements that amount to significantly more than the judicial exception. Describing a first split point list containing one or more split points and one or more split gains is considered an additional element that amounts to adding the words “apply it” (or an equivalent) with the judicial exception (such as merely using a computer in its ordinary capacity as a tool to perform an existing process - see MPEP §§ 2106.04(d)), along with mere instructions to apply an exception (see MPEP §§ 2106.05(f)(3)).
With respect to Claims 5, 15, and 20:
Step 2A, Prong 1: The claims incorporate the abstract ideas from independent Claims 4, 14, and 19, respectively. A judicial exception is recited in the claims as they recite mathematical calculations and mental processes, which are abstract ideas:
“wherein a quantity of the one or more split points is less than a predetermined cut point number, and wherein determining a first cut point list by clustering the first split point list comprises: determining the one or more split points as a number of cut points comprised in the first cut point list.”; Establishing that a quantity of one or more split points is less than a predetermined cut point number is considered a mathematical calculation because two quantities are being numerically measured against each other. Determining a first cut point list by clustering the first split point list, which comprises determining the one or more split points as a number of cut points comprised in the first cut point list covers mental concepts that could be practically performed in the human mind or through the use of a pencil and paper, including observation, evaluation, and judgement. See MPEP 2106.04(a)(2)(III).
Step 2A, Prong 2: The claims do not recite additional elements that integrate the judicial exception into a practical application.
Step 2B: The claims do not recite additional elements that amount to significantly more than the judicial exception.
With respect to Claim 6: Step 2A, Prong 1: The claim incorporates the abstract ideas from independent Claims 4, 14, and 19, respectively. A judicial exception is recited in the claims as they recite mathematical calculations and mental processes, which are abstract ideas:
“wherein a quantity of the one or more split points is more than a predetermined cut point number, and wherein determining a first cut point list by clustering the first split point list comprises: applying a weighted clustering algorithm to the one or more split points using the one or more split gains as weights for the weighted clustering algorithm;” Establishing that a quantity of one or more split points is more than a predetermined cut point number is considered a mathematical calculation because two quantities are being numerically measured against each other. Determining a first cut point list by clustering, where a weighted clustering algorithm is applied to the one or more split points using the one or more split gains as weights is a mathematical calculation because a weighted clustering algorithm is a sequence of mathematical operations that add weight parameters to data points, which influences how clusters are formed.
“and determining a number of cut points comprised in the first cut point list based on the weighted clustering algorithm, the one or more split points, and the one or more split gains”; Determining a number of cut points in a first cut point list based on multiple variables covers mental concepts that could be practically performed in the human mind or through the use of a pencil and paper, including observation, evaluation, and judgement. See MPEP 2106.04(a)(2)(III).
Step 2A, Prong 2: The claim does not recite additional elements that integrate the judicial exception into a practical application.
Step 2B: The claim does not recite additional elements that amount to significantly more than the judicial exception.
With respect to Claim 7:
Step 2A, Prong 1: The claim incorporates the abstract ideas from independent Claim 6.
Step 2A, Prong 2: The claim does not recite additional elements that integrate the judicial exception into a practical application:
“wherein the weighted clustering algorithm is a weighted k-medians clustering algorithm”; Identifying a weighted clustering algorithm as a weighted k-medians clustering algorithm only specifies the type of weighted clustering algorithm and is an additional element that amounts to adding the words “apply it” (or an equivalent) with the judicial exception (such as merely using a computer in its ordinary capacity as a tool to perform an existing process - see MPEP §§ 2106.04(d)), along with mere instructions to apply an exception (see MPEP §§ 2106.05(f)(3)).
Step 2B: The claim does not recite additional elements that amount to significantly more than the judicial exception. Identifying a weighted clustering algorithm as a weighted k-medians clustering algorithm only specifies the type of weighted clustering algorithm and is an additional element that amounts to adding the words “apply it” (or an equivalent) with the judicial exception (such as merely using a computer in its ordinary capacity as a tool to perform an existing process - see MPEP §§ 2106.04(d)), along with mere instructions to apply an exception (see MPEP §§ 2106.05(f)(3)).
With respect to Claim 8:
Step 2A, Prong 1: The claim incorporates the abstract ideas from independent Claims 1, 11, and 16, respectively. A judicial exception is recited in the claim as they recite mental processes, which are abstract ideas:
“wherein a second split point list of the multiple split point lists is empty, and wherein determining a second cut point list by clustering the second split point list comprises: determining the second cut point list as an empty list, wherein an attribute corresponding to the second split point list is uninformative and is compressed into one single interval”; Determining a second cut point list by clustering the second split point list, consisting of determining the second cut point list as an empty list and where an attribute corresponding to the second split point list is uninformative and compressed into one single interval, covers mental concepts that could be practically performed in the human mind or through the use of a pencil and paper, including observation, evaluation, and judgement. See MPEP 2106.04(a)(2)(III).
Step 2A, Prong 2: The claim does not recite additional elements that integrate the judicial exception into a practical application.
Step 2B: The claim does not recite additional elements that amount to significantly more than the judicial exception.
With respect to Claim 9:
Step 2A, Prong 1: The claim incorporates the abstract ideas from independent Claims 1, 11, and 16, respectively.
Step 2A, Prong 2: The claim does not recite additional elements that integrate the judicial exception into a practical application:
“providing the plurality of instances, the multiple attributes, and the one or more groups as inputs to a knowledge discovery application”; Providing a plurality of instances, multiple attributes, and one or more groups as inputs to a knowledge discovery application is considered a pre-solution step regarding the input of data, which is adding insignificant extra-solution activity to the judicial exception. See MPEP 2106.05(g)(1).
Step 2B: The claim does not recite additional elements that amount to significantly more than the judicial exception. Providing a plurality of instances, multiple attributes, and one or more groups as inputs to a knowledge discovery application is considered a pre-solution step regarding the input of data, which is adding insignificant extra-solution activity to the judicial exception. See MPEP 2106.05(g)(1).
With respect to Claim 10:
Step 2A, Prong 1: The claim incorporates the abstract ideas from independent Claims 1, 11, and 16, respectively.
Step 2A, Prong 2: The claim does not recite additional elements that integrate the judicial exception into a practical application:
“providing the plurality of instances, the multiple attributes, and the one or more groups to a data analysis application to create a predictive model”; Providing a plurality of instances, multiple attributes, and one or more groups as inputs to a data analysis application to create a predictive model is considered a pre-solution step regarding the input of data, which is adding insignificant extra-solution activity to the judicial exception. See MPEP 2106.05(g)(1).
Step 2B: The claim does not recite additional elements that amount to significantly more than the judicial exception. Providing a plurality of instances, multiple attributes, and one or more groups as inputs to a data analysis application to create a predictive model is considered a pre-solution step regarding the input of data, which is adding insignificant extra-solution activity to the judicial exception. See MPEP 2106.05(g)(1).
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 (i.e. changing from AIA to pre-AIA ) 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.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
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.
The factual inquiries 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 non-obviousness.
Claim(s) 1-5 and 8-20 are rejected under 35 U.S.C. 103 as being unpatentable over “Supervised Multivariate Discretization in Mixed Data with Random Forests” by Berrado et al., (Non-patent literature published on May 10, 2009, hereinafter “Berrado”), in view of Siddiqui et al., (Patent Application No. US20200293952 filed on March 15, 2019, hereinafter “Siddiqui”).
With respect to Claims 1, 11, and 16:
Berrado teaches:
“A computer-implemented method, comprising: receiving a plurality of inputs corresponding
to a plurality of instances, wherein each input of the plurality of inputs representing multiple attributes of a respective instance;“ (Page 4, Section III, Part B recites a random forest discretization algorithm called RFDisc, which uses a training data set (plurality of inputs) consisting of “n” instances (plurality of instances), where each instance is described by “p” attributes (multiple attributes of a respective instance).)
“training, using the plurality of inputs and as a trained supervised and multivariate machine learning model, a supervised and multivariate machine learning model;“ (Page 1, Section I “Introduction”, recites a new supervised and dynamic (multivariate) discretization machine learning algorithm called RFDisc that can be universally applied to continuous and mixed data spaces. Page 4, Section III, Part B recites the RFDisc process, where a Random Forest classifier is trained using a training data set (plurality of inputs).)
“determining multiple split point lists based on the trained supervised and multivariate machine learning model, wherein the multiple split point lists correspond to the multiple attributes, and wherein each of the multiple split point lists comprises a number of split points and a number of split gains associated with a respective attribute;“ (Page 4, Section III, Part B recites one step of the trained RFDisc algorithm (supervised and multivariate machine learning model) where all the splits on each of the “m” continuous attributes performed by each tree in the forest are compiled and “Splits(F;j)” denote all the splits made by all the trees in the forest (multiple split points list) on the “jth” attribute (corresponding to the multiple attributes). The splits are then found using “Find Splits(ti;j)” (comprising a number of split points associated with a respective attribute.)
“for each attribute of the multiple attributes, determining a cut point list by clustering the split point list associated with the attribute based on the number of split points and the number of split gains comprised in the split point list, wherein the cut point list comprises a number of cut points dividing the attribute into one or more intervals;“ (Page 4, Section III, Part B recites the steps RFDisc consists of, where for each attribute j, a histogram of “Splits(F;j)” is plotted and used to determine split points with high density in the forest. Those popular split points are used to discretize the attribute “j”. Two split points at 0.75 and 1.65 are chosen to discretize a variable into three bins (determining a cut point list by clustering the split point list associated with each attribute based on the number of split points). A discretization of the “jth” continuous attribute will divide its range into “pj + 1” intervals, where a set of intervals will result from the discretization process (cut point list comprising a number of cut points dividing the attribute into one or more intervals).
“and dividing the plurality of instances into one or more groups based on the plurality of inputs and the one or more intervals.“ (Page 1, Section I “Introduction” recites a common step in discretization, where after continuous valued attributes are transformed into a finite number of intervals by discretization, each continuous value is then mapped to the interval in which it falls (dividing instances into groups based on a plurality of inputs and one or more intervals).
Berrado does not appear to explicitly disclose:
“determining multiple split point lists based on the trained supervised and multivariate machine learning model, wherein the multiple split point lists correspond to the multiple attributes, and wherein each of the multiple split point lists comprises a number of split points and a number of split gains associated with a respective attribute;“
“for each attribute of the multiple attributes, determining a cut point list by clustering the split point list associated with the attribute based on the number of split points and the number of split gains comprised in the split point list, wherein the cut point list comprises a number of cut points dividing the attribute into one or more intervals;“
However, Siddiqui teaches:
“determining multiple split point lists based on the trained supervised and multivariate machine learning model, wherein the multiple split point lists correspond to the multiple attributes, and wherein each of the multiple split point lists comprises a number of split points and a number of split gains associated with a respective attribute;“ (Paragraph 0016 recites a machine learning algorithm constructing a gradient boosting decision tree (also known as a Gradient Tree Boosting (GTB) model) by evaluating each feature-value pair in a training dataset for the best split gain at a node.)
“for each attribute of the multiple attributes, determining a cut point list by clustering the split point list associated with the attribute based on the number of split points and the number of split gains comprised in the split point list, wherein the cut point list comprises a number of cut points dividing the attribute into one or more intervals;“ (Paragraph 0016 recites a machine learning algorithm constructing a gradient boosting decision tree (also known as a Gradient Tree Boosting (GTB) model) by evaluating each feature-value pair in a training dataset for the best split gain at a node.)
It would have been obvious to a PHOSITA before the effective filing date of the present application to implement the teachings of Berrado with the teachings of Siddiqui, which are both in the same field of invention. A PHOSITA would have been motivated to combine the RFDisc discretization method from Berrado with the split gain evaluation framework of Siddiqui in order to improve the quality of selected discretization thresholds in a supervised multivariate discretization system, meaning split points that provider greater predictive value would be prioritized (called split gains), which in turn would produce more meaningful and informative intervals, thereby improving prediction accuracy and reducing computational complexity.
With respect to Claims 2, 12, and 17: Berrado teaches: “wherein each of the plurality of inputs comprises multiple values, and wherein each of the multiple values representing one of the multiple attributes of the respective instance” (Page 4, Section III, Part B recites a random forest discretization algorithm called RFDisc, which uses a training data set (plurality of inputs) consisting of “n” instances, where each instance is described by “p” attributes (multiple values). Furthermore, the observed value of the “jth” attribute for the “ith” instance will be referred with “xij”, meaning each of the multiple values represents one of the multiple attributes of a respective instance.)
With respect to Claims 3, 13, and 18:Berrado does not appear to explicitly disclose:
“wherein the supervised and multivariate machine learning model is a Gradient Tree Boosting (GTB) model”
However, Siddiqui teaches:
“wherein the supervised and multivariate machine learning model is a Gradient Tree Boosting (GTB) model” (Paragraph 0016 recites a machine learning algorithm constructing a gradient boosting decision tree (also known as a Gradient Tree Boosting (GTB) model) by evaluating each feature-value pair in a training dataset for the best split gain at a node.)
With respect to Claims 4, 14, and 19:
Berrado teaches:
“wherein a first split point list of the multiple split point lists comprises one or more split points and one or more split gains” (Page 4, Section III, Part B recites compiling all the splits on each of the “m” continuous attributes performed by each tree in the forest, where “Splits(F;j)” (first split point list) denotes all the splits made by all the trees in the forest (comprises one or more split points) on the “jth” attribute.)
Berrado does not appear to explicitly disclose:
“wherein a first split point list of the multiple split point lists comprises one or more split points and one or more split gains”
However, Siddiqui teaches:
“wherein a first split point list of the multiple split point lists comprises one or more split points and one or more split gains” (Paragraph 0019 recites a method to improve the area under the curve for a gradient boosting decision tree to maintain multiple split points on a node. Split points are identified by sorting the values of a feature seen during training by their gradient and then doing a linear search to find the contiguous subset with maximum split. Paragraph 0024 states specific values in the split points are included as long as the split gain is increasing.)
With respect to Claims 5, 15, and 20:
Berrado teaches:
“wherein a quantity of the one or more split points is less than a predetermined cut point number, and wherein determining a first cut point list by clustering the first split point list comprises: determining the one or more split points as a number of cut points comprised in the first cut point list.” (Page 4, Section III, Part B recites “Splits(F;j)” (first split point list) denotes all the splits made by all the trees in the forest (comprises one or more split points) on the “jth” attribute. Those popular split points are used to discretize the attribute “j”. Two split points at 0.75 and 1.65 are chosen to discretize a variable into three bins (split points act as the cut point numbers in the first cut point list). It would be inherently understood that the collection of all split points generated across all trees could be less than a desired number of final discretization cut points. In this scenario, clustering would entail that if there is a certain small number of split points less than a predetermined cut point number, then the split points act as the cut point numbers in the cut point list.)
With respect to Claim 8:
Berrado teaches:
“wherein a second split point list of the multiple split point lists is empty, and wherein determining a second cut point list by clustering the second split point list comprises: determining the second cut point list as an empty list, wherein an attribute corresponding to the second split point list is uninformative and is compressed into one single interval” (Page 4, Section III, Part B recites “Splits(F;j)” (a loop that creates split point lists) denotes all the splits made by all the trees in the forest (comprises one or more split points) on the “jth” attribute. It is inherently understood that when no trees perform splits on a particular attribute, then the “Split(F;j)” collection would not contain any split points, which means it would be an empty split. Applying clustering to an empty list creates an empty cut point list as well. It is inherently understood that an attribute not selected to be split by a tree is considered uninformative within tree-based feature selection. Furthermore, Part B recites a discretization of the “jth” continuous attribute will divide its range into “pj + 1” intervals, where a set of intervals will result from the discretization process. It is inherently understood that if there are no outputted cut points, then only one interval exists according to “pj + 1” formula.)
With respect to Claim 9:
Berrado teaches:
“providing the plurality of instances, the multiple attributes, and the one or more groups as inputs to a knowledge discovery application” (Page 1, Section “Abstract” recites how discretizing continuous attributes is a data preprocessing step. It would be inherently understood that once the discretization process is complete, the instances, attributes, and groups associated with the output can then be inputted somewhere.)
Berrado does not appear to explicitly disclose:
“providing the plurality of instances, the multiple attributes, and the one or more groups as inputs to a knowledge discovery application”
However, it would be obvious to a PHOSITA to provide discretized data as inputs to a knowledge discovery application since discretization is a well-known preprocessing step used to prepare data for use in machine learning and data mining tasks, which are commonly employed in knowledge discovery applications.
With respect to Claim 10:
Berrado teaches:
“providing the plurality of instances, the multiple attributes, and the one or more groups to a data analysis application to create a predictive model” (Page 1, Section “Abstract” recites how discretizing continuous attributes is a data preprocessing step. It would be inherently understood that once the discretization process is complete, the instances, attributes, and groups associated with the output can then be inputted somewhere.)
Berrado does not appear to explicitly disclose:
“providing the plurality of instances, the multiple attributes, and the one or more groups to a data analysis application to create a predictive model”
However, it would be obvious to a PHOSITA to provide discretized data to a data analysis application to create a predictive model since discretization preprocessing is commonly used to prepare data for predictive modeling and classification systems.
Claim(s) 6 and 7 are rejected under 35 U.S.C. 103 as being unpatentable over “Supervised Multivariate Discretization in Mixed Data with Random Forests” by Berrado et al., (Non-patent literature published on May 10, 2009, hereinafter “Berrado”), in view of Siddiqui et al., (Patent Application No. US20200293952 filed on March 15, 2019, hereinafter “Siddiqui”), in further view of “Community Detection in Degree-Corrected Block Models“ by Gao et al., (Non-patent literature published on July 24, 2016, hereinafter “Gao”).
With respect to Claim 6:
Berrado and Siddiqui combined teaches:
“wherein a quantity of the one or more split points is more than a predetermined cut point number, and wherein determining a first cut point list by clustering the first split point list comprises: applying a weighted clustering algorithm to the one or more split points using the one or more split gains as weights for the weighted clustering algorithm;” (Page 4, Section III, Part B from Berrado recites “Splits(F;j)” (first split point list) denotes all the splits made by all the trees in the forest (comprises one or more split points) on the “jth” attribute. It would be inherently known that the collection of all split points generated across all trees could exceed a desired number of final discretization cut points. This could logically lead to reducing the split points using a clustering technique on the one or more split points in the first split point list. Paragraph 0016 from Siddiqui recites a machine learning algorithm constructing a gradient boosting decision tree (also known as a Gradient Tree Boosting (GTB) model) by evaluating each feature-value pair in a training dataset for the best split gain at a node.)
“and determining a number of cut points comprised in the first cut point list based on the weighted clustering algorithm, the one or more split points, and the one or more split gains” (Page 4, Section III, Part B from Berrado recites “Splits(F;j)” (first split point list) denotes all the splits made by all the trees in the forest (comprises one or more split points) on the “jth” attribute. Paragraph 0016 from Siddiqui recites a machine learning algorithm constructing a gradient boosting decision tree (also known as a Gradient Tree Boosting (GTB) model) by evaluating each feature-value pair in a training dataset for the best split gain at a node.)
Berrado and Siddiqui combined do not appear to explicitly disclose:
“wherein a quantity of the one or more split points is more than a predetermined cut point number, and wherein determining a first cut point list by clustering the first split point list comprises: applying a weighted clustering algorithm to the one or more split points using the one or more split gains as weights for the weighted clustering algorithm;”
“and determining a number of cut points comprised in the first cut point list based on the weighted clustering algorithm, the one or more split points, and the one or more split gains”
However, Gao teaches:
“wherein a quantity of the one or more split points is more than a predetermined cut point number, and wherein determining a first cut point list by clustering the first split point list comprises: applying a weighted clustering algorithm to the one or more split points using the one or more split gains as weights for the weighted clustering algorithm;” (Page 8, Section 3.1 recites a two-stage algorithm where Step 4 performs a weighted k-median clustering procedure applied on the row vectors of an “n x k” matrix.)
“and determining a number of cut points comprised in the first cut point list based on the weighted clustering algorithm, the one or more split points, and the one or more split gains” (Page 8, Section 3.1 recites a two-stage algorithm where Step 4 performs a weighted k-median clustering procedure applied on the row vectors of an “n x k” matrix. It would be inherently understood that a first cut point list comprising a number of cut points is created when the split points are clustered using one or more split gains as weights, which results in outputted cluster medians that are representative of the determined number of cut points.)
It would have been obvious to a PHOSITA before the effective filing date of the present application to implement the teachings of Berrado and Siddiqui with the teachings of Gao, which are all in the same field of invention. A PHOSITA would have been motivated to combine the weighted k-medians clustering from Gao with the gradient boosting decision tree supervised discretization method of Berrado and Siddiqui so that the split gain values could be used as weights in the weighted k-medians clustering process, meaning split points with a higher predictive value would then have a greater influence on the outputted clustered cut points. This improves the overall efficiency of the discretization process.
With respect to Claim 7:
Berrado and Siddiqui combined do not appear to explicitly disclose:
“wherein the weighted clustering algorithm is a weighted k-medians clustering algorithm”
However, Gao teaches:
“wherein the weighted clustering algorithm is a weighted k-medians clustering algorithm” (Page 7, Section 3.1 recites the use of a weighted k-medians clustering algorithm during the initialization stage in a proposed algorithmic solution for community detection issues in Degree-Corrected Block Models.)
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Vibha Bhat whose telephone number is (571)-272-7091. The examiner can normally be reached on Monday – Thursday from 8:00 AM to 5:00 PM EST and every other Friday from 8:00 AM to 4:00 PM EST.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. See MPEP § 713.01. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at https://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Mariela Reyes, can be reached at telephone number (571)-270-1006. The fax phone number for the organization where this application or proceeding is assigned is (571)-273-8300. Information regarding the status of an application 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://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 (572)-272-1000.
/Vibha Bhat/Examiner
Art Unit 2142
/Mariela Reyes/Supervisory Patent Examiner, Art Unit 2142