IP Library › Granted Patent US 12,602,696
Granted Patent B2
US 12,602,696 · App. 18/510,514 · Granted Apr 14, 2026

Label biasing using interpolation

Inventors: Dushyant Kumar Rai (Bangalore, IN); Swaminathan Padmanabhan (Chennai, IN); Chetan Bhat (Bangalore, IN)
Assignee: Freshworks Inc.
G06Q30/015
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,602,696
App. No.
18/510,514
Granted
Apr 14, 2026
Kind
B2
Abstract

Label biasing of data associated with one of a plurality of closed deals using interpolation includes retrieving, by at least one processor, training data from a data storage, and sampling, by the at least one processor, the training data periodically to capture one or more stages for each of a plurality of open deals. This also includes computing, by the at least one processor, a label for each of the plurality of open deals and a plurality of closed deals. The label is computed with a ‘1’ or ‘0’, in some embodiments. This further training, by the at least one processor, a model on the periodically sampled training data associated with the plurality of closed deal, and generating, by the at least one processor, a score for each of the plurality of closed deal and for each of the plurality of open deals.

Claims (255)

1 . A computer-implemented method for performing label biasing of data associated with one of a plurality of closed deals using interpolation, comprising:

retrieving, by at least one processor, training data from a data storage;

sampling, by the at least one processor, the training data periodically to capture one or more stages for each of a plurality of open deals;

computing, by the at least one processor, a label for each of the plurality of open deals and a plurality of closed deals, wherein the label is computed with a ‘1’ or ‘0’;

training, by the at least one processor, a model on the periodically sampled training data associated with the plurality of closed deals, wherein the training of the model comprises training the model on weekly sampled data of at least one of the plurality of the closed deals using a gradient boosting algorithm and the labels for the plurality of closed deals to reduce label bias and improve overall performance of the model; and

generating, by the at least one processor, a score for each of the plurality of closed deals and for each of the plurality of open deals using the trained model, wherein

the computing of the label comprises defining the label as an amount of activity that is captured using:

label

m

=

0

.

5

+

0

.

5

*

(

∑

k

=

1

m

⁢

1

∑

i

=

1

n

⁢

1

)

*

I

A

where

I A =1 if deal is won

I A =−1 if deal is lost, and

m represents a period of time for when the label is evaluated; or

the computing of the label comprises, responsive to an activity along with a qualitative nature of the activity being associated together, defining the label as an amount of the activity that is captured using:

label

m

=

0

.

5

+

0

.

5

*

(

∑

k

=

1

m

⁢

α

k

∑

i

=

1

n

⁢

α

i

)

*

I

A

where α i represents a polarity and qualitative value of an i th activity,

for numerator k=1−m represents activities happening until as-of-date, and

denominator i=1−n represents overall activity on deals-lifetime.

2 . The computer-implemented method of claim 1 , wherein the data storage stores the training data, the training data comprising the plurality of closed deals and the plurality of open deals.

3 . The computer-implemented method of claim 1 , further comprising:

computing, by the at least one processor, a plurality of features associated with the periodically sampled trained data, wherein

the plurality of features comprise one or more time-static attributes for each of the plurality of open deals that does not change with time, and one or more attributes that changes with time.

4 . The computer-implemented method of claim 1 , wherein computing of the label for data associated with one of the plurality of deals in a middle stage comprises

interpolating a plurality of middle points based on a number of activities to characterize the label in ‘1’ or ‘0’.

5 . The computer-implemented method of claim 1 , further comprising:

generating, by the at least one processor, a deal score from production data that is fed into a trained model.

6 . A system configured to perform label biasing of data associated with one of a plurality of closed deals using interpolation, comprising:

memory comprising a set of instructions; and

at least one processor, wherein the set of instructions are configured to cause at least one processor to execute:

retrieving training data from a data storage;

sampling the training data periodically to capture one or more stages for each of a plurality of open deals;

computing a label for each of the plurality of open deals and a plurality of closed deals, wherein the label is computed with a ‘1’ or ‘0’;

training a model on the periodically sampled training data associated with the plurality of closed deals, wherein the training of the model comprises training the model on weekly sampled data of at least one of the plurality of the closed deals using a gradient boosting algorithm and the labels for the plurality of closed deals to reduce label bias and improve overall performance of the model; and

generating a score for each of the plurality of closed deals and for each of the plurality of open deals using the trained model, wherein

the computing of the label comprises defining the label as an amount of activity that is captured using:

label

m

=

0

.

5

+

0

.

5

*

(

∑

k

=

1

m

⁢

1

∑

i

=

1

n

⁢

1

)

*

I

A

where

I A =1 if deal is won

I A =−1 if deal is lost, and

m represents a period of time for when the label is evaluated; or

the computing of the label comprises, responsive to an activity along with a qualitative nature of the activity being associated together, defining the label as an amount of the activity that is captured using:

label

m

=

0

.

5

+

0

.

5

*

(

∑

k

=

1

m

⁢

α

k

∑

i

=

1

n

⁢

α

i

)

*

I

A

where α i represents a polarity and qualitative value of an i th activity,

for numerator k=1−m represents activities happening until as-of-date, and

denominator i=1−n represents overall activity on deals-lifetime.

7 . The system method of claim 6 , wherein the data storage stores the training data, the training data comprising the plurality of closed deals and the plurality of open deals.

8 . The system of claim 6 , wherein the set of instructions are further configured to cause at least one processor to execute:

computing a plurality of features associated with the periodically sampled trained data, wherein

the plurality of features comprise one or more time-static attributes for each of the plurality of open deals that does not change with time, and one or more attributes that changes with time.

9 . The system of claim 6 , wherein the set of instructions are further configured to cause at least one processor to execute:

interpolating a plurality of middle points based on a number of activities to characterize the label in ‘1’ or ‘0’.

10 . The system of claim 6 , wherein the set of instructions are further configured to cause at least one processor to execute:

generating a deal score from production data that is fed into a trained model.

11 . A computer program embodied on a non-transitory computer-readable medium, the computer program is configured to perform label biasing of data associated with one of a plurality of closed deals using interpolation, and cause at least one processor to execute:

retrieving training data from a data storage;

sampling the training data periodically to capture one or more stages for each of a plurality of open deals;

computing a label for each of the plurality of open deals and a plurality of closed deals, wherein the label is computed with a ‘1’ or ‘0’;

training a model on the periodically sampled training data associated with the plurality of closed deals, wherein the training of the model comprises training the model on weekly sampled data of at least one of the plurality of the closed deals using a gradient boosting algorithm and the labels for the plurality of closed deals to reduce label bias and improve overall performance of the model; and

generating a score for each of the plurality of closed deals and for each of the plurality of open deals using the trained model, wherein

the computing of the label comprises defining the label as an amount of activity that is captured using:

label

m

=

0

.

5

+

0

.

5

*

(

∑

k

=

1

m

⁢

1

∑

i

=

1

n

⁢

1

)

*

I

A

where

I A =1 if deal is won

I A =−1 if deal is lost, and

m represents a period of time for when the label is evaluated; or

the computing of the label comprises, responsive to an activity along with a qualitative nature of the activity being associated together, defining the label as an amount of the activity that is captured using:

label

m

=

0

.

5

+

0

.

5

*

(

∑

k

=

1

m

⁢

α

k

∑

i

=

1

n

⁢

α

i

)

*

I

A

where α i represents a polarity and qualitative value of an i th activity,

for numerator k=1−m represents activities happening until as-of-date, and

denominator i=1−n represents overall activity on deals-lifetime.

12 . The computer program of claim 11 , wherein the data storage stores the training data, the training data comprising the plurality of closed deals and the plurality of open deals.

13 . The computer program of claim 11 , wherein the computer program is further configured to cause at least one processor to execute:

computing a plurality of features associated with the periodically sampled trained data, wherein

the plurality of features comprise one or more time-static attributes for each of the plurality of open deals that does not change with time, and one or more attributes that changes with time.

14 . The computer program of claim 11 , wherein the computer program is further configured to cause at least one processor to execute:

interpolating a plurality of middle points based on a number of activities to characterize the label in ‘1’ or ‘0’.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 16, 2023
From: FRESHWORKS TECHNOLOGIES PRIVATE LIMITED
To: FRESHWORKS INC.
Reel/Frame 065581/0556 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2023
From: RAI, DUSHYANT KUMAR; PADMANABHAN, SWAMINATHAN; BHAT, CHETAN
To: FRESHWORKS TECHNOLOGIES PRIVATE LIMITED
Reel/Frame 065577/0182 →
Continuity (1)
Related Publication 20250156880A1 · May 15, 2025
References Cited (9)
US 12260370B1 · Melancon · 2025 [cited by examiner]
US 20210241033A1 · Yang · 2021 [cited by examiner]
US 20220405775A1 · Siebel · 2022 [cited by examiner]
US 20240037580A1 · Miller-Smith · 2024 [cited by examiner]
US 20240086947A1 · Nambirajan · 2024 [cited by examiner]
WO WO2021154428A1 · 2021 [cited by examiner]
J. P. G. Custódio, C. J. Costa and J. P. Carvalho, “Success Prediction of Leads—A Machine Learning Approach,” 2020 15th Iberian Conference on Information Systems and Technologies (CISTI), Seville, Spain, 2020, pp. 1-6. … [cited by examiner]
D. Rotovei and V. Negru, “A methodology for improving complex sales success in CRM Systems,” 2017 IEEE International Conference on INnovations in Intelligent Systems and Applications (INISTA), Gdynia, Poland, 2017, pp. … [cited by examiner]
S. Emtiyaz and M. Keyvanpour, “Customers Behavior Modeling by Semi-Supervised Learning in Customer Relationship Management,” Advances in information Sciences and Service Sciences (AISS), vol. 3, No. 9, Oct. 2011, pp. 22… [cited by examiner]