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 .
Claim Objections
Claim 6 objected to because of the following informalities: the claim recite "to embed the each", that should be "to embed each". Appropriate correction is required.
Claim 14 objected to because of the following informalities: the claim recites "embedding the each", that should be "embedding each". Appropriate correction is required.
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.
Claim 18 rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter.
As to claim 18,
The claim does not limit the recited "computer program element" to a non-transitory computer-readable storage medium. Under the broadest reasonable interpretation, the claimed "computer program element" encompasses a computer program per se and transitory forms of signal transmission, such as a propagating electrical or electromagnetic signal or carrier wave. This rejection may be overcome by amending claim 18 to recite, for example, "a non-transitory computer-readable storage medium".
Claims 1-6, 8-14, and 16-18 rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
MPEP 2106 (III) sets out steps for evaluating whether a claim is drawn to patent-eligible subject matter. The analysis of claims 1-6, 8-14, and 16-18, in accordance with these steps, follows.
Step 1 Analysis:
Claims 9-14 and 16 are directed to method (processes). Claims 1-6 and 8 are directed to a system (machine). Claim 17 is directed to a data processing apparatus (machine). Claim 18 is not directed to a statutory category (see U.S.C. 101 rejection for claim 18 above because the claim is directed to non-statutory subject matter.) Therefore, claims 1-6, 8-14, and 16-17 fall into one of four statutory categories (i.e., process, machine).
As to claim 1,
Step 2A Prong 1: this claim recites the following abstract ideas:
split the geolocation index into a plurality of geolocation indexes each having different scales; (the limitation describes dividing a location index into multiple versions each at a different level of granularity, which is a mental process implemented using a pen and paper.)
embed each of the plurality of geolocation indexes to obtain a plurality of values relating to latitude and longitude for the plurality of geolocation indexes respectively; (the limitation describes converting each location index into corresponding latitude and longitude values, which is a mental process implemented using a pen and paper.)
aggregate the plurality of values to obtain a representation value of the geographical location; (the limitation describes combining multiple values into a single representative value, which is a mental process implemented using a pen and paper.)
calculate an average of the plurality of values to obtain the representation value of the geographical location. (the limitation describes calculating an average of a set of values, which is a mental process implemented using a pen and paper.)
Step 2A Prong 2 and 2B: the claim recited the following additional elements:
an input device configured to obtain a geolocation index for the geographical location; (this limitation describes data collection/receiving, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
a processor configured to train the machine learning model in relation to the geographical location; (This limitation is directed to mere instruction to apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
wherein the processor is further configured to ... and the processor is further configured to; (This limitation is directed to mere instruction to apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
train the machine learning model using the representation value of the geographical location; (This limitation is directed to mere instruction to apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
The additional element does not integrate the judicial exception into practical application and does not amount to significantly more than the Judicial exception.
As to claim 9,
Step 2A Prong 1: this claim recites the following abstract ideas:
splitting the geolocation index into a plurality of geolocation indexes each having different scales; (the limitation describes dividing a location index into multiple versions each at a different level of granularity, which is a mental process implemented using a pen and paper.)
embedding each of the plurality of geolocation indexes to obtain a plurality of values relating to latitude and longitude for the plurality of geolocation indexes respectively; (the limitation describes converting each location index into corresponding latitude and longitude values, which is a mental process implemented using a pen and paper.)
aggregating the plurality of values to obtain a representation value of the geographical location, wherein the aggregating the plurality of values comprises calculating an average of the plurality of values to obtain the representation value of the geographical location; (the limitation describes combining multiple values into a single representative value by calculating an average of the values, which is a mental process implemented using a pen and paper.)
Step 2A Prong 2 and 2B: the claim recited the following additional elements:
obtaining a geolocation index for the geographical location; (this limitation describes data collection/receiving, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
training the machine learning model using the representation value of the geographical location. (This limitation is directed to mere instruction to apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
The additional element does not integrate the judicial exception into practical application and does not amount to significantly more than the Judicial exception.
As to claims 2 and 10,
Step 2A Prong 1: those claims recite the following abstract ideas:
wherein the plurality of geolocation indexes each having different scales includes the obtained geolocation index and one or more coarser level geolocation indexes than the obtained geolocation index. (the limitation describes the content of the plurality of geolocation indexes being considered, which merely specifies the type of data evaluated and is an evaluation and judgment activity that can be performed as a mental process in the human mind.)
Step 2A Prong 2 and 2B:
The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception under step 2B. Thus, the judicial exception is not integrated into a practical application (see MPEP 2106.04(d) 1.), failing step 2A prong 2. The claims are ineligible.
As to claims 3 and 11,
Step 2A Prong 1: those claims recite the following abstract ideas:
wherein the geolocation index includes a geohash. (the limitation describes the content of the geolocation index being considered, which merely specifies the type of data evaluated and is an evaluation and judgment activity that can be performed as a mental process in the human mind.)
Step 2A Prong 2 and 2B:
The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception under step 2B. Thus, the judicial exception is not integrated into a practical application (see MPEP 2106.04(d) 1.), failing step 2A prong 2. The claims are ineligible.
As to claims 4 and 12,
Step 2A Prong 1: those claims recite the following abstract ideas:
gradually remove or removing one or more characters from an end of the geohash to obtain one or more geohashes each having different scales; (the limitation describes deriving coarser location indexes by successively deleting characters from the end of a character string, which is a mental process implemented using a pen and paper.)
Step 2A Prong 2 and 2B: those claims recited the following additional elements:
The additional limitation of claim 4 "wherein where the geolocation index is the geohash, the processor is configured to" (This limitation is directed to mere instruction to apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
The additional element does not integrate the judicial exception into practical application and does not amount to significantly more than the Judicial exception.
As to claims 5 and 13,
Step 2A Prong 1: those claims recite the following abstract ideas:
wherein number of a plurality of geohashes each having different scales is same as a length of the geohash. (the limitation describes the content of the plurality of geohashes being considered, which merely specifies the type of data evaluated and is an evaluation and judgment activity that can be performed as a mental process in the human mind.)
Step 2A Prong 2 and 2B:
The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception under step 2B. Thus, the judicial exception is not integrated into a practical application (see MPEP 2106.04(d) 1.), failing step 2A prong 2. The claims are ineligible.
As to claims 6 and 14,
Step 2A Prong 1: those claims recite the following abstract ideas:
embed or embedding the each of the plurality of geolocation indexes by latitude-longitude embedding, and geohash embedding for naive embedding; (the limitation describes converting each location index into values by decoding it into latitude-longitude values and assigning values to the index characters, which merely specifies the manner of the conversion and is a mental process implemented using a pen and paper.)
Step 2A Prong 2 and 2B: those claims recited the following additional elements:
The additional limitation of claim 6 "wherein the processor is configured to" (This limitation is directed to mere instruction to apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
The additional element does not integrate the judicial exception into practical application and does not amount to significantly more than the Judicial exception.
As to claims 8 and 16,
Step 2A Prong 1: This claim does not recite an additional abstract idea, but the claims depend on claims 1 and 9.
Step 2A Prong 2 and 2B: those claims recited the following additional elements:
The additional limitation of claim 8 "wherein the processor is further configured to" (This limitation is directed to mere instruction to apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
train or training the machine learning model based on a set of observed data points; (This limitation is directed to mere instruction to apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
embed or embedding the representation value of the geographical location into the machine learning model. (This limitation is directed to mere instruction to apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
The additional element does not integrate the judicial exception into practical application and does not amount to significantly more than the Judicial exception.
As to claim 17,
Step 2A Prong 1: This claim does not recite an additional abstract idea, but the claim depends on claim 9.
Step 2A Prong 2 and 2B: the claim recited the following additional elements:
A data processing apparatus configured to perform the method of claim 9. (This limitation is directed to mere instruction to apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
The additional element does not integrate the judicial exception into practical application and does not amount to significantly more than the Judicial exception.
As to claim 18,
Step 2A Prong 1: This claim does not recite an additional abstract idea, but the claim depends on claim 9.
Step 2A Prong 2 and 2B: the claim recited the following additional elements:
A computer program element comprising program instructions, which, when executed by one or more processors, cause the one or more processors to perform the method of claim 9. (This limitation is directed to mere instruction to store the abstract idea on a generic memory and apply the abstract idea on a generic computer to process, which is a well-understood, routine, conventional activity, see MPEP 2106.05(d)(II)(i))
The additional element does not integrate the judicial exception into practical application and does not amount to significantly more than the Judicial exception.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1-4, 6, 8-12, 14, and 16-17 is/are rejected under 35 U.S.C. 103 as being unpatentable over Cervantes et al. (US 20220180184 A1) in view of Moussalli et al. (US 20160283515 A1) and Pao et al. (US 20190037355 A1).
As to claim 1, Cervantes teaches a system for training a machine learning model with a geographical location comprising: (see Cervantes paragraph [0039] "the machine learning model 133 that is used to generate the location embedding data 101 (e.g., an upstream machine learning model) also can be trained to perform any machine learning task that uses the multi-modal relational location data 105 about a location as an input.")
a processor configured to train the machine learning model in relation to the geographical location, (see Cervantes paragraph [0043] "the machine learning system 129 and/or any of the modules 201-207 may perform one or more portions of the process 300 and may be implemented in, for instance, a chip set including a processor and a memory as shown in FIG. 12.", and see Cervantes paragraph [0054] "the machine learning model is a skip-gram type model that is trained (e.g., by the learning module 203) to predict one or more other locations associated with the location based on the input.")
train the machine learning model using the representation value of the geographical location, and (see Cervantes paragraph [0054] "the machine learning model is a skip-gram type model that is trained (e.g., by the learning module 203) to predict one or more other locations associated with the location based on the input. A skip-gram model, for instance, takes the feature vector of a location and predicts the location's context (e.g., neighbors) or other related attributes.")
Cervantes does not explicitly teach "an input device configured to obtain a geolocation index for the geographical location; and", "wherein the processor is further configured to split the geolocation index into a plurality of geolocation indexes each having different scales", "embed each of the plurality of geolocation indexes to obtain a plurality of values relating to latitude and longitude for the plurality of geolocation indexes respectively", "aggregate the plurality of values to obtain a representation value of the geographical location, and ", and "the processor is further configured to calculate an average of the plurality of values to obtain the representation value of the geographical location"
However, Moussalli teaches
an input device configured to obtain a geolocation index for the geographical location; and (see Moussalli paragraph [0058] "The conversion engine 300 includes a first register 302 for holding the input data stream which, depending on the conversion mode, will comprise an input geohash code or input latitude/longitude values, an input interface controller 304, a latitude pipeline 306, a longitude pipeline 308, an output interface controller 310, and a second register 312")
embed each of the plurality of geolocation indexes to obtain a plurality of values relating to latitude and longitude for the plurality of geolocation indexes respectively, (see Moussalli paragraph [0027] "one or more embodiments provide a geohash conversion engine that is enhanced through the incorporation of runtime flexibility, where a length of the geohash codes can vary, while reducing misspent input/output bandwidth.", and see Moussalli paragraph [0034] "Each input geohash bit is examined to update the interval at hand, starting from the initial intervals {−90, 0, +90} and {−180, 0, +180} for latitude and longitude, respectively. The resulting latitude/longitude values are the respective mid values of the final latitude/longitude intervals.", and see Moussalli paragraph [0059] "Further parallelism can be attained when converting several geohash codes in parallel through the additional replication of the single-step function block 314")
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the machine learning training system of Cervantes to obtain geohash codes as input and convert them into latitude/longitude values as taught by Moussalli, in order to process large amounts of location data quickly and efficiently at a constant throughput rate. See Moussalli paragraph [0027].
Cervantes as modified by Moussalli does not explicitly teach "wherein the processor is further configured to split the geolocation index into a plurality of geolocation indexes each having different scales", "aggregate the plurality of values to obtain a representation value of the geographical location, and", and "the processor is further configured to calculate an average of the plurality of values to obtain the representation value of the geographical location"
However, Pao teaches
wherein the processor is further configured to split the geolocation index into a plurality of geolocation indexes each having different scales, (see Pao paragraph [0041] "geohash data 412, 414 may be used to determine a particular geohash associated with the current request 404. For example, a geohash at a certain level may first be determined 412, then geohashes at a more granular level may be determined 414.", and see Pao paragraph [0057] "geohashes associated with the request location are determined. For example, a geohash-6 and geohash-7 of the request location may be obtained.")
aggregate the plurality of values to obtain a representation value of the geographical location, and (see Pao paragraph [0033] "For example, only prior pickup instances may be considered, and an average location of the prior pickup instances selected as the target pickup location 216.")
the processor is further configured to calculate an average of the plurality of values to obtain the representation value of the geographical location. (see Pao paragraph [0041] "In an embodiment, an averaging approach may be used to determine a target pickup location for the current request 404. For example, an average location of the three actual pickup locations 406a-410a may be selected as a target pickup location.", and see Pao paragraph [0059] "an averaging or weighting approach may be used to determine which locations associated with instances of prior transport data (e.g., actual past pickup locations) will be considered more meaningful in an estimation of a target pickup location.")
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to further modify the system of Cervantes as modified by Moussalli to determine geohashes at multiple levels and average a plurality of location values into a single representative location as taught by Pao, in order to determine an accurate and efficient location even where data for the exact location is insufficient. See Pao paragraph [0019].
As to claim 2, Cervantes as modified by Moussalli and Pao teaches the system according to claim 1,
wherein the plurality of geolocation indexes each having different scales includes the obtained geolocation index and one or more coarser level geolocation indexes than the obtained geolocation index. (see Pao paragraph [0020] "a determination of geohashes corresponding to the location may be made, at varying levels. For example, a geohash of the requestor's location at geohash-6. The geohash may be refined, such as to geohash-7 in some embodiments.", and see Pao paragraph [0057] "For example, a geohash-6 and geohash-7 of the request location may be obtained.")
As to claim 3, Cervantes as modified by Moussalli and Pao teaches the system according to claim 1,
wherein the geolocation index includes a geohash. (see Moussalli paragraph [0028] "Geohash is a geographic coordinate system that hierarchically divides space into grid-shaped buckets.", and see Moussalli paragraph [0058] "a first register 302 for holding the input data stream which, depending on the conversion mode, will comprise an input geohash code")
As to claim 4, Cervantes as modified by Moussalli and Pao teaches the system according to claim 3,
wherein where the geolocation index is the geohash, the processor is configured to gradually remove one or more characters from an end of the geohash to obtain one or more geohashes each having different scales. (see Moussalli paragraph [0029] "It provides a spatial hierarchy with arbitrary precision: the precision can be reduced (i.e., representing a larger area) by removing characters from the end of the string; that is, the longer the geohash code, the smaller the bounding box represented by the code. For example, a point of interest in FIG. 1A, point 130, can be represented by either of buckets 104, 116 or 118, depending on the required level of precision")
As to claim 6, Cervantes as modified by Moussalli and Pao teaches the system according to claim 3,
wherein the processor is configured to embed the each of the plurality of geolocation indexes by latitude-longitude embedding, (see Moussalli paragraph [0034] "Each input geohash bit is examined to update the interval at hand, starting from the initial intervals {−90, 0, +90} and {−180, 0, +180} for latitude and longitude, respectively. The resulting latitude/longitude values are the respective mid values of the final latitude/longitude intervals.")
and geohash embedding for naive embedding. (see Moussalli paragraph [0029] "The geohash code 150, represented in FIG. 1B as a string of bits, denotes a rectangle (bounding box) located on the earth.", and see Moussalli paragraph [0030] "A geohash code can be represented as a binary string, where the bits respective to the longitude and latitude space divisions are interleaved.")
As to claim 8, Cervantes as modified by Moussalli and Pao teaches the system according to claim 1,
wherein the processor is further configured to train the machine learning model based on a set of observed data points, and (see Cervantes paragraph [0035] "Yet another example is image data 121 (e.g., street level imagery) captured by vehicles 123 and/or user equipment (UE) devices 125 executing respective imaging capable application 127 as they travel over a geographic area.", and see Cervantes paragraph [0039] "the machine learning model 133 that is used to generate the location embedding data 101 (e.g., an upstream machine learning model) also can be trained to perform any machine learning task that uses the multi-modal relational location data 105 about a location as an input.")
embed the representation value of the geographical location into the machine learning model. (see Cervantes paragraph [0068] "the vector representation or location embedding 915 can be input or otherwise included in an embedding layer 917 of the machine learning task (e.g., neural network 901).")
As to claim 9, this is directed to a method embodiment that corresponds to system claim 1. See the rejection for claim 1 above, which also applies to claim 9.
As to claim 10, this is directed to a method embodiment that corresponds to system claim 2. See the rejection for claim 2 above, which also applies to claim 10.
As to claim 11, this is directed to a method embodiment that corresponds to system claim 3. See the rejection for claim 3 above, which also applies to claim 11.
As to claim 12, this is directed to a method embodiment that corresponds to system claim 4. See the rejection for claim 4 above, which also applies to claim 12.
As to claim 14, this is directed to a method embodiment that corresponds to system claim 6. See the rejection for claim 6 above, which also applies to claim 14.
As to claim 16, this is directed to a method embodiment that corresponds to system claim 8. See the rejection for claim 8 above, which also applies to claim 16.
As to claim 17, this is directed to an apparatus embodiment that corresponds to system claim 1. See the rejection for claim 1 above, which also applies to claim 17.
As to claim 18, this is directed to a computer-program embodiment that corresponds to system claim 1. See the rejection for claim 1 above, which also applies to claim 18.
Claim(s) 5, and 13 is/are rejected under 35 U.S.C. 103 as being unpatentable over Cervantes et al. (US 20220180184 A1) in view of Moussalli et al. (US 20160283515 A1) and Pao et al. (US 20190037355 A1) and Oikarinen et al. (US 20130097163 A1).
As to claim 5, Cervantes as modified by Moussalli and Pao teaches the system according to claim 4,
Cervantes as modified by Moussalli and Pao does not explicitly teach "wherein number of a plurality of geohashes each having different scales is same as a length of the geohash"
However, Oikarinen teaches
wherein number of a plurality of geohashes each having different scales is same as a length of the geohash. (see Oikarinen paragraph [0049] "For example, a restaurant located within a geographic region referenced by geohash DRT2YX (labeled 432 in FIG. 4C) may be indexed with DRT2YX, DRT2Y, DRT2, DRT, DR, and/or D. In this regard, a higher, or more course, level geohash referencing a geographic region including the restaurant's location may be calculated by truncating a suffix from a more precise, lower level geohash.")
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to further modify the system of Cervantes as modified by Moussalli and Pao to derive geohashes at every level of precision from the full length of the obtained geohash down to a single character as taught by Oikarinen, in order to index a location at every desired level of precision so that the location data can be retrieved at varying levels of granularity. See Oikarinen paragraph [0049].
As to claim 13, this is directed to a method embodiment that corresponds to system claim 5. See the rejection for claim 5 above, which also applies to claim 13.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ABDULLAH K ABOUD whose telephone number is (571)272-0025. The examiner can normally be reached Mon-Fri 8am-5pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Li B Zhen, can be reached at (571) 272-3768. 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.
/ABDULLAH KHALED ABOUD/ Examiner, Art Unit 2121
/Li B. Zhen/ Supervisory Patent Examiner, Art Unit 2121