IP Library Granted Patent US 12,442,659
Granted Patent B1
US 12,442,659 · App. 18/066,653 · Granted Oct 14, 2025

Systems and methods for supervised machine learning for matching addresses and buildings

Inventor: Puyang Ma (Bellevue, WA)
Assignee: Amazon Technologies, Inc.
G01C21/3819G01C21/32G01C21/3811G06Q10/08355
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,442,659
App. No.
18/066,653
Granted
Oct 14, 2025
Kind
B1
Abstract

Systems and methods are provided supervised machine learning for matching addresses and buildings. Particularly, a machine learning model may be provided that is trained to identify a building outline within a map that is most likely associated with a given delivery address. A candidate set of buildings that may potentially be associated with the delivery address are determined and provided to the machine learning model. The machine learning model ranks the buildings included in the candidate set of buildings in terms of likelihood of being associated with the address. Based on this ranking, a building outline representing a building that is determined to be the most likely building associated with the address may be updated to include the address label on the map.

Claims (81)

1. A method comprising:

receiving, using one or more processors, input data including a first map of a region, a first address associated with the region, and a second address associated with the region, the first map including building outlines representative of buildings included within the region;

receiving, using the one or more processors, first historical data including first indicated delivery locations for first deliveries associated with the first address, and second historical data including second indicated delivery locations for second deliveries associated with the second address;

determining, using the one or more processors and based on the first historical data and the second historical data, a first bounding box including at least some of the first indicated delivery locations and a second bounding box including at least some of the second indicated delivery locations;

determining, using the one or more processors, that a first set of building outlines of the building outlines are at least partially within the first bounding box and a second set of building outlines of the building outlines are at least partially within the second bounding box, wherein a first building outline of the first set of building outlines and a second building outline of the second set of building outlines are both at least partially within both of the first bounding box and the second bounding box;

determining, using the one or more processors, a first set of candidate buildings of the buildings that are associated with the first address and a second set of candidate buildings of the one or more-buildings that are associated with the second address, the first set of candidate buildings including the first set of building outlines, and the second set of candidate buildings including the second set of building outlines;

providing, using the one or more processors, a first feature vector and a second feature vector to a machine learning model, wherein the first feature vector includes features associated with an individual building of the first set of candidate buildings, and wherein the second feature vector includes features shared by all buildings included within the first set of candidate buildings;

providing, using the one or more processors, a third feature vector and a fourth feature vector to the machine learning model, wherein the third feature vector includes features associated with an individual building of the second set of candidate buildings, and wherein the fourth feature vector includes features shared by all buildings included within the second set of candidate buildings;

determining, using the machine learning model, first ranking values associated with the first set of candidate buildings and second ranking values associated with the second set of candidate buildings;

outputting, by the machine learning model and based on the first ranking values and the second ranking values, an indication of a first building of the first set of candidate buildings that is associated with the first address and a second building of the second set of candidate buildings that is associated with the second address; and

generating a second map including an indication of the first address within a first building outline representative of the first building and an indication of the second address within the second building outline that is representative of the second building.

2. The method of claim 1 , wherein determining the first set of candidate buildings further comprises:

determining that an area included within a third building outline is less than a threshold size; and

removing a third building associated with the third building outline from the first set of candidate buildings.

3. The method of claim 1 , further comprising:

determining, using the first map, a road segment that is associated with the first set of candidate buildings;

determining a line segment that passes through the road segment on the first map;

shifting the line segment towards the first set of building outlines associated with the first set of candidate buildings;

determining that the line segment intersects more than a threshold number of building outlines included in the first set of candidate buildings; and

determining an order sequence of the first set of candidate buildings based on the determination that the line segment intersects more than the threshold number of building outlines.

4. The method of claim 1 , further comprising:

determining a convex hull that intersects the first set of candidate buildings;

determining distances between the first set of candidate buildings and a starting point of a road segment corresponding to the first set of candidate buildings; and

determining an order sequence of the first set of candidate buildings based on the distances.

5. A method comprising:

receiving, using one or more processors, input data including a first map of a region and a first address associated with the region, the first map comprising building outlines representative of buildings included within the region, the building outlines comprising a first building outline and a second building outline;

determining, using the one or more processors, a set of candidate buildings of the buildings that are associated with the first address;

determining that a size of the second building outline is less than a threshold size;

determining, based on determining that the size is less than the threshold size, that a second building associated with the second building outline is a non-delivery structure;

removing, based on determining that the second building is a non-delivery structure, the second building associated with the second building outline from the set of candidate buildings;

providing, using the one or more processors, feature vectors including information relating to the set of candidate buildings to a machine learning model;

determining, using the machine learning model, a ranking value for each candidate building of the set of candidate buildings, wherein a first ranking value for a first building of the set of candidate buildings indicates a likelihood that the first building of the set of candidate buildings is associated with the first address instead of a second address; and

outputting, by the machine learning model and based on the first ranking value, an indication that the first building is associated with the first address.

6. The method of claim 5 , further comprising:

generating a second map including an indication of the first address within the first building outline representative of the first building.

7. The method of claim 5 , wherein determining the set of candidate buildings further comprises:

receiving historical data including indicated delivery locations for deliveries associated with the first address;

determining, based on the historical data, a bounding box including at least some of the indicated delivery locations; and

determining that building outlines associated with the set of candidate buildings are at least partially within the bounding box.

8. The method of claim 5 , wherein the feature vectors comprise a first feature vector and a second feature vector, wherein the first feature vector includes features associated with an individual building of the set of candidate buildings, and wherein the second feature vector includes features shared by all buildings included within the set of candidate buildings.

9. The method of claim 5 , further comprising:

determining, using the first map, a road segment that is associated with the set of candidate buildings;

determining a line segment through a length of the road segment on the first map;

shifting the line segment towards a set of building outlines associated with the set of candidate buildings;

determining that the line segment intersects more than a threshold number of building outlines included in the set of candidate buildings; and

determining an order sequence of the set of candidate buildings based on the determination that the line segment intersects more than the threshold number of building outlines.

10. The method of claim 5 , further comprising:

determining a convex hull that intersects the set of candidate buildings;

determining distances between the set of candidate buildings and a starting point of a road segment corresponding to the set of candidate buildings; and

determining an order sequence of the set of candidate buildings based on the distances.

11. The method of claim 5 , further comprising determining a normalized format of the first address.

12. A system comprising:

a memory that stores computer-executable instructions; and

one or more processors configured to access the memory and execute the computer-executable instructions to:

receive input data including a first map of a region and a first address associated with the region, the first map comprising building outlines representative of buildings included within the region;

determine a set of candidate buildings of the buildings that are associated with the first address;

determine, using the first map, a road segment that is associated with the set of candidate buildings;

determine a line segment that passes through the road segment on the first map;

shifting the line segment towards a set of building outlines associated with the set of candidate buildings;

determine that the line segment intersects more than a threshold number of building outlines included in the set of candidate buildings;

determine an order sequence of the set of candidate buildings based on the determination that the line segment intersects more than the threshold number of building outlines;

provide feature vectors including information relating to the set of candidate buildings to a machine learning model;

determine, using the machine learning model, a ranking value for each candidate building of the set of candidate buildings, wherein a first ranking value for a first building of the set of candidate buildings indicates a likelihood that the first building of the set of candidate buildings is associated with the first address instead of a second address; and

output, by the machine learning model and based on the first ranking value, an indication that the first building is associated with the first address.

13. The system of claim 12 , wherein the one or more processors are further configured to execute the computer-executable instructions to:

generate a second map including an indication of the first address within a first building outline representative of the first building.

14. The system of claim 12 , wherein determining the set of candidate buildings further comprises:

receive historical data including indicated delivery locations for deliveries associated with the first address;

determine, based on the historical data, a bounding box including at least some of the indicated delivery locations; and

determine that the set of building outlines associated with the set of candidate buildings are at least partially within the bounding box.

15. The system of claim 12 , wherein the feature vectors comprise a first feature vector and a second feature vector, wherein the first feature vector includes features associated with an individual building of the set of candidate buildings, and wherein the second feature vector includes features shared by all buildings included within the set of candidate buildings.

16. The system of claim 12 , wherein determining the set of candidate buildings further comprises:

determine that a size of a second building outline is less than a threshold size;

determine, based on determining that the size is less than the threshold size, that a second building associated with the second building outline is a non-delivery structure; and

remove, based on determining that the second building is a non-delivery structure, the second building associated with the second building outline from the set of candidate buildings.

17. The system of claim 12 , wherein the one or more processors are further configured to execute the computer-executable instructions to:

determine a convex hull that intersects the set of candidate buildings;

determine distances between the set of candidate buildings and a starting point of the road segment corresponding to the set of candidate buildings; and

determine the order sequence of the set of candidate buildings further based on the distances.

18. The system of claim 12 , wherein the one or more processors are further configured to execute the computer-executable instructions to:

determine a normalized format of the first address.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2022
From: MA, PUYANG
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 062148/0227 →
References Cited (13)
US 9743239B1 · Mishra · 2017 [cited by examiner]
US 10410090B1 · Wilczynski · 2019 [cited by examiner]
US 20050209781A1 · Anderson · 2005 [cited by examiner]
US 20120001936A1 · Kurata · 2012 [cited by examiner]
US 20120023106A1 · Kurata · 2012 [cited by examiner]
US 20160330592A1 · Crook · 2016 [cited by examiner]
US 20170330032A1 · Du · 2017 [cited by examiner]
US 20200041298A1 · Sheth · 2020 [cited by examiner]
US 20210049224A1 · Zheng · 2021 [cited by examiner]
US 20210319059A1 · Vianello · 2021 [cited by examiner]
US 20230296406A1 · Melo · 2023 [cited by examiner]
CN 105631627A · 2016 [cited by examiner]
Machine Translation of CN-105631627-A (Year: 2016). [cited by examiner]