EP3861518A1 - Probabilistic item matching and searching - Google Patents
Probabilistic item matching and searchingInfo
- Publication number
- EP3861518A1 EP3861518A1 EP19869731.0A EP19869731A EP3861518A1 EP 3861518 A1 EP3861518 A1 EP 3861518A1 EP 19869731 A EP19869731 A EP 19869731A EP 3861518 A1 EP3861518 A1 EP 3861518A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- item
- input
- response
- probability score
- items
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0283—Price estimation or determination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0623—Item investigation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/08—Auctions
Definitions
- 16/288,199 titled“Inventory Ingestion, Image Processing, and Market Descriptor Pricing System,” filed February 28, 2019
- U.S. Patent Application No. 16/288,203 titled“Inventory Ingestion and Pricing System,” filed February 28, 2019
- U.S. Patent Application No. 16/288,158 titled “Determining Sellabibty Score and Cancellability Score,” filed February 28, 2019
- This disclosure relates generally to computer-implemented searching and
- a related problem is with providing and receiving relevant search results within terms of service or other meaningful constraints of a given platform for buying or selling. For example, all else being equal, buyers may want to receive items sooner rather than later, and platforms may want to provide a quality-of-service (QoS) level or service-level agreement (SLA) to pair buyers with sellers who can ship and get items delivered sooner rather than later. Similarly, sellers may have no reliable way to guess how to price items in order to move them within a certain time window, how to price items for specific proceeds or to have any likelihood of closing a sale.
- QoS quality-of-service
- SLA service-level agreement
- sellers may have no reliable way to guess how to price items in order to move them within a certain time window, how to price items for specific proceeds or to have any likelihood of closing a sale.
- C2C consumer-to-consumer
- FIG. 1 is an illustration showing an example system useful for implementing methods including probabilistic item matching and searching, according to some embodiments.
- FIG. 2 is an illustration showing an example system useful for implementing methods including probabilistic search biasing and recommendations, according to some embodiments.
- FIG. 3 is an illustration showing an example screen display including an
- exemplary prompt for input of a value according to some embodiments.
- FIG. 4 is a flowchart illustrating a method including probabilistic item matching and searching, according to some embodiments.
- FIG. 5 is a flowchart illustrating a method including probabilistic search biasing and recommendations, according to some embodiments.
- FIG. 6 illustrates a block diagram of a general purpose computer that may be used to perform various aspects of the present disclosure.
- FIG. 1 is an illustration showing an example system useful for implementing methods including probabilistic item matching and searching, according to some embodiments.
- FIG. 1 On the left-hand side of FIG. 1 is a representation of a seller and selling
- app which may be used for displaying listed items for sale as well as for creating new listings of items for sale, in some embodiments.
- apps which may be used for displaying listed items for sale as well as for creating new listings of items for sale, in some embodiments.
- These representations involve a frontend design of the app, which may be a web app, mobile app (native, web- based, or hybrid, for example), and may involve varying levels of user interaction.
- Interaction with a buyer instead of a seller may involve similar interaction with the app, in some embodiments.
- FIG. 1 From the center to the right-hand side of FIG. 1 is a representation of an
- FIG. 1 exemplary backend architecture that may be useful for implementing probabilistic item matching and searching, according to an embodiment.
- the components shown in FIG. 1, among others, may be treated as making up an example system 100, which may handle operations from storing, retrieving, and/or calculating data (item data, metadata, listings, databases, etc.) on the backend, and processing input, output, results, and related interaction on the frontend.
- data item data, metadata, listings, databases, etc.
- the backend may process input from a user and/or a variety of other sources. For example, if a seller provides input regarding an item for a new listing, the backend may seek to confirm, via other input, an identification of what the seller is attempting to list. The other input may be prompted from the seller, automatically derived from other sources, or a combination of both, in some embodiments.
- the backend may do any of the following, in any order: (1) check against old listings in a backend database of listings, e.g., on the same platform; (2) check against feed data of data partners, e.g., via a subscription service between the same platform and a third-party provider; (3) check against scraped listings from public sources, e.g., other e-commerce websites including other C2C platforms, business-to-consumer (B2C) consignment sites, and/or retail platforms; and (4) confirm with the seller, including prompting for input to confirm whether any information retrieved from (1), (2), (3), or any combination thereof, is accurate according to the seller.
- a backend database of listings e.g., on the same platform
- feed data of data partners e.g., via a subscription service between the same platform and a third-party provider
- scraped listings from public sources e.g., other e-commerce websites including other C2C platforms, business-to-consumer (B2C) consignment
- any matching may be performed at any stage of such process(es) described here. More specifically, the term“matching” may refer to more than determining text strings or other data sequences coincide.
- matching in any of the above scenarios may include use of natural language processing (NLP) techniques, including determining synonyms (including any abbreviations, acronyms, contractions, or expansions, e.g., by a synonym library or lookup table) and further searching to match any synonyms found, determining and/or further searching any other semantically related words for additional matching, performing word stemming based on least one language and corresponding
- NLP natural language processing
- matching may be recursive, in some embodiments.
- modifier terms e.g., adjectives describing size or color
- nominal identifier terms e.g., names or nouns specifying an item.
- Classifier algorithms in some embodiments, or other neural networks or artificial intelligence may be used to extract relevant terms from unstructured word sets such as search queries, user input, or item descriptions retrieved from (1), (2), or (3) as mentioned above.
- a given classifier may“understand” from a given unstructured word set what terms may be intended as brand names versus generic descriptions, and may be configured to update any database, library, or lookup table, etc., to include brand information in specific categories or sub-categories together with generic terms, for example, to improve matching.
- Matching algorithms or any components may be biased or tuned for precision or recall.
- a client device e.g., personal computer (PC) or mobile device such as a smartphone or tablet computer
- PC personal computer
- mobile device such as a smartphone or tablet computer
- self-hosted service including dedicated server(s), virtual private server (VPS), or on-premises cloud
- third-party services or any combination thereof.
- matching operations may be performed via multiple devices, certain matching operations may be performed locally, with intermediate results being delivered to remote services for confirmation, validation, other additional processing, or any combination thereof.
- one way to identify items or types of items may be to resolve a proposed new listing to correspond to a unique identifier, such as by comparison to items already mapped to unique identifiers, for example. Information on items confirmed in this manner may then correlate more reliably with information of other comparable items listed in the backend database or with other sources, for example.
- Search biasing and price recommendations may be provided accordingly, as additionally described with respect to FIGS. 2 and 5 below, and additionally in the“Probabilistic Search Biasing and Recommendations” application (U.S. Appl. No. 16/288,373) that was referenced above and incorporated by reference herein.
- the backend may proceed differently (not shown), such as by automatically referencing other platforms (e.g., of custom or craft items) for duplicate listings or immediately prompting the seller to confirm such uniqueness, in some example embodiments.
- the reference or value may be a uniform, universal, and/or unique identifier, including but not limited to a stock-keeping unit (SKU), universal product code (UPC), uniform resource identifier (URI), uniform resource locator (URL), uniform resource name (URN), international standard book number (ISBN), Amazon standard item number (ASIN), etc., to which a given item may be mapped, in some embodiments.
- SKU stock-keeping unit
- UPC universal product code
- URI uniform resource identifier
- URL uniform resource locator
- UPN uniform resource name
- ISBN international standard book number
- ASIN Amazon standard item number
- a value may include a checksum, fingerprint, signature, digest, hash, cryptographic hash, etc., corresponding to at least one of the first input or second input (e.g., character string item description, specific text field for brand name, enumerated selector for size, model year, etc.), to track inputs and outputs and/or determine duplicate inputs, for example.
- mapping a given item to a unique identifier may also be referred to as SKU-level matching or SKU-level data.
- system 100 may seek additional user input via the app, for example.
- Input may be text in the form of a character string, a photographic image, voice recognition, other
- Text-based input via the app may prompt a user for a few fields of information depending on a broad category of the item to be listed for sale, rather than an exhaustive description of all features. In many cases, even basic text information may allow the backend to resolve SKU-level data, or at least present a few likely candidate items to a seller for confirmation of the correct item identification.
- Signature in any representation may also be used. Barcodes or other patterns or sequences may be used. Other possible types of input include, without limitation, vibrational patterns, chemical samples and analysis thereof, measurements of radiation, electrical and/or magnetic signals, or any other environmental sensor input, etc.
- Other forms of input may be received, such as in the form of output from other computer programs or algorithms, e.g., neural network output, perceptron output, image recognition output, classification output, or other types of output. These outputs may be based on other user inputs, e.g., from photographic data, voice or audio data, or other third-party resources, feeds, etc. Any or all such input may be generated by a mobile device, such as a tablet computer or smartphone, in some embodiments.
- a mobile device such as a tablet computer or smartphone, in some embodiments.
- a user attempting to create a new listing for sale may be prompted to take at least one photograph of the item to be listed.
- Photographic image data from the photograph(s) may be processed locally on the device running the app, or may be transmitted to the backend or to a third party for initial processing and/or further processing.
- Processing of the photographic image data may include use of artificial intelligence.
- Processing of the image data may include feeding the image data into a neural network, perceptron, or classifier, for example.
- the image data may be processed using computer-implemented image recognition, such as using at least one computer vision algorithm, in some embodiments. Any of the above technologies or their equivalents may be used to perform operations such as classification, object recognition and/or reverse image-searching, to name a few non-limiting examples.
- Any neural networks described herein may include at least one artificial neural network (ANN).
- the ANN(s) may include at least one of a feedforward neural network, a recurrent neural network, a modular neural network, or a memory network, to name a few non-limiting examples.
- a feedforward neural network for example, this may further correspond to at least one of a convolutional neural network, a probabilistic neural network, a time-delay neural network, a multi-layer perceptron, an autoencoder, or any combination thereof, in some embodiments.
- Such ANNs may have multiple layers— in some embodiments, the layers may be densely connected, such as in cases where activation functions may be reused from certain layers or where activation of one or more layers is skipped to resolve certain calculations, in some embodiments.
- CNNs may further integrate at least some filters (e.g., edge filters, horizon filters, color filters, etc.). These filters may include some of the edge detection algorithms, color filtering algorithms, and/or predetermined thresholds, for example.
- filters e.g., edge filters, horizon filters, color filters, etc.
- filters may include some of the edge detection algorithms, color filtering algorithms, and/or predetermined thresholds, for example.
- a given ANN, including a CNN may be designed, customized, and/or modified in various ways, for example, according to several criteria, in some
- Image recognition here may also leverage machine learning, in some aspects
- Image recognition systems may be trained using any of backend database listings, feed data of data partners, scraped listings from public sources, or any other source of accurate training data, for example.
- Image recognition may be further configured to detect and interpret barcodes, Quick Response (QR) codes, labels, tags, logos, trademarks, and/or any other defining characteristic of an item.
- Image recognition may additionally perform optical character recognition (OCR) and interpret text using natural language processing (NLP), in some embodiments.
- OCR optical character recognition
- NLP natural language processing
- actions (l)-(4) taken by system 100 may be performed in any order, taking or skipping any based on any other automated or manual determinations.
- one default configuration may be to check first with the backend database on the same platform at (1), and if (1) sufficiently satisfies a condition (e.g., providing data points for a list of candidate items and/or another data point by which to confirm or update a selected item), then actions (2)-(4) may be bypassed, skipping to any update or confirmation actions.
- subsequent actions may be“smart” or otherwise consider responses or results from previous actions as results become available.
- system 100 may proceed to taking action (2) or (3), depending on which is more efficient or depending on other factors. Additionally or alternatively, any of actions (1)- (4) may be performed in parallel, for potentially quicker resolution, in some
- seller input may be treated as less reliable than input gathered from any of (l)-(3).
- (4) may optionally be pursued, requesting additional seller input, confirmation, or adjustments, for example.
- the action taken at (4) may include providing further prompts for input from the seller, including for additional details describing the item to be listed and/or confirmation of whether a selected item or other candidate items may match the item to be listed, in some embodiments.
- system 100 “understands” what an item is, such as by artificial intelligence, image recognition, or any other means available to system 100, additional calculations may be performed, such as to analyze and categorize the items based on other data or corresponding metadata, such as price, condition, marketability trends, etc. More detail on these further calculations is described with respect to FIGS. 2 and 5 below, and additionally in the“Probabilistic Search Biasing and Recommendations” application (U.S. Appl. No. 16/288,373) incorporated by reference.
- FIG. 2 is an illustration showing an example system useful for implementing methods including probabilistic search biasing and recommendations, according to some embodiments.
- FIG. 2 On the left-hand side of FIG. 2 is a representation of a seller and selling
- app which may be used for displaying listed items for sale as well as for creating new listings of items for sale, in some embodiments.
- apps which may be used for displaying listed items for sale as well as for creating new listings of items for sale, in some embodiments.
- These representations involve a frontend design of the app, which may be a web app, mobile app (native, web- based, or hybrid, for example), and may involve varying levels of user interaction.
- Interaction with a buyer instead of a seller may involve similar interaction with the app, in some embodiments.
- exemplary backend architecture that may be useful for implementing probabilistic search biasing and recommendations, according to an embodiment.
- the components shown in FIG. 2, among others, may be treated as making up an example system 200, which may handle operations from storing, retrieving, and/or calculating data (item data, metadata, listings, databases, etc.) on the backend, and processing input, output, results, and related interaction on the frontend.
- the backend may process input from a user and/or a variety of other sources. For example, if a seller provides input regarding an item for a new listing, the backend may seek to confirm, via other input, an identification of what the seller is attempting to list and typical or comparable list prices therefor, such as on the same market platform, other market platforms, consignment stores, retail stores, or a combination of the above. The other input may be prompted from the seller, automatically derived from other sources, or a combination of both, in some embodiments.
- one way to gather prices may be to start with an item already confirmed to match a given item in a database.
- An example of this is described with respect to FIGS. 1 and 4 herein, and additionally in the“Probabilistic Item Matching and Searching” application (U.S. Appl. No. 16/288,379) incorporated by reference.
- any corresponding price information may be expected to correlate more reliably with the item that the seller is attempting to list.
- the backend may proceed differently (not shown), such as by referring the seller to listings within the same broad category of unique items (e.g., based on user input of a broad category), automatically generate a price based on the broad category or comparable platform for such unique goods, and/or decline to provide a comparable or suggested price recommendation, in some example embodiments.
- unique items e.g., one-of-a-kind items, custom-made items, craft items, personalized items, etc.
- the backend may proceed differently (not shown), such as by referring the seller to listings within the same broad category of unique items (e.g., based on user input of a broad category), automatically generate a price based on the broad category or comparable platform for such unique goods, and/or decline to provide a comparable or suggested price recommendation, in some example embodiments.
- the backend may do any of the following, in any order: (1) check against old listings in a backend database of listings; (2) check against feed data of data partners, e.g., via a subscription service between the same platform and a third-party provider; (3) check against scraped listings from public sources, e.g., other e-commerce websites including other C2C platforms, business-to-consumer (B2C) consignment sites, and/or retail platforms; and (4) confirm with the seller, including prompting for input to confirm or readjust the price, potentially with advice, automatically generated from the backend, as to why the seller may want to readjust the price and by how much, in some embodiments.
- B2C business-to-consumer
- price information may be collected and statistically analyzed with respect to other parameters or variables, e.g., including any other data or metadata for price and correlating with listed condition (new, like-new, very good, good, fair, poor, etc.), category, brand, size, etc., whether on the same platform or on other platforms such as third-party sources or public sources, normalized for any differences in metadata (item condition scales, locality variations in pricing, seasonal variations in pricing, etc.) that may arise on the other platforms.
- Statistical analysis may include averaging or calculation of trends for any set(s) of these data points or metadata categories, for example.
- actions (l)-(4) taken by system 200 may be performed in any order, taking or skipping any based on any other automated or manual determinations.
- one default configuration may be to check first with the backend database on the same platform at (1), and if (1) sufficiently satisfies a condition (e.g., providing data points for a list of candidate items and/or another data point by which to confirm or update a selected item), then actions (2)-(4) may be bypassed, skipping to any update or confirmation actions.
- system 200 may proceed to taking action (2) or (3), depending on which is more efficient or depending on other factors. Additionally or alternatively, any of actions (1)- (4) may be performed in parallel, for potentially quicker resolution, in some
- seller input may be treated as less reliable than input gathered from any of (l)-(3).
- (4) may optionally be pursued, requesting additional seller input, confirmation, or adjustments, for example.
- the action taken at (4) may include providing further advice, automatically generated from the backend, as to why the seller may want to readjust the price and by how much, in some embodiments.
- search result rankings may be upgraded (promoted, boosted, or otherwise augmented) or downgraded (demoted, suppressed, or otherwise diminished).
- APIs application programming interfaces
- Some use cases for biasing may be to improve turnaround time for shipping
- “local” may refer not merely to geographical distance, but rather to“shipping distance,” or average transit times of parcels along particular routes or within/across particular geographic regions, for example. Other factors may include similarity of different items that may also be from local sellers, how long a given item has been listed for sale, whether a given buyer or other buyers have expressed interest in the item (e.g., via a given platform), etc. In some cases, sellers may also be given some control over search biasing, e.g., a guaranteed promotion for a certain time, or based on seller rating, karma, credit, etc., in some embodiments.
- search engine may surface local sellers (close to the buyer in shipping distance) before more remote sellers, even if the more remote sellers may have other attributes potentially of interest to the buyer, in some cases.
- search biasing may be configured to override or weigh more heavily against existing user-specified search filters or preferences, for example.
- search engine may account for may include shipping costs for sellers and/or platforms, sales taxes for buyers and/or platforms, profitability for sellers and/or platforms, among other possibilities.
- search biasing techniques while potentially beneficial for C2C platforms, may also yield similar benefits for B2C platforms or B2B platforms, in some use cases.
- Such preferential search biasing may additionally be useful to a market platform in order to preserve QoS or adhere to an SLA, in further examples.
- searchability may be improved with respect to certain attributes of buyers and/or sellers with respect to items transacted, in some embodiments.
- FIG. 3 illustrates an examples of screen display 300 of an exemplary user
- Screen display 300 may include various regions for output of textual values and/or graphical elements, as well as prompts for input in various forms.
- user input may be provided via any graphical user interface (GUI) element(s), a textual user interface (TUI), voice commands, accelerometers or other environmental sensors, etc.
- GUI graphical user interface
- TTI textual user interface
- the screen display provided in FIG. 3 is merely exemplary, and is provided to illustrate some example outputs and inputs as may relate to enhanced techniques of probabilistic item matching, searching, search biasing, and recommendations as described herein. Persons skilled in the relevant art(s) will appreciate that various approaches may be taken to provide a suitable screen display 300 in accordance with this disclosure.
- Screen display 300 may include various indicators and control elements that may be displayed and arranged according to any appropriate methodology, framework, toolkit, widget set, guidelines, design language etc. Examples include flat design, hierarchical design, layered design, WIMP design (windows, icons, menus, pointer), natural user interface (NUI), reality-based interface (RBI), augmented reality (AR), e.g., with heads- up display (HUD), virtual reality (VR), e.g., with a virtual storefront, etc.
- NUI natural user interface
- RBI reality-based interface
- AR augmented reality
- HUD heads- up display
- VR virtual reality
- User input may be provided using pointing devices such as a mouse, trackball, joystick, touchpad, touchscreen, etc., as well as other forms of touch, spatial navigation, eye tracking, voice commands, environmental sensors, scripted or programmatic input via API, etc.
- Screen display 300 may include a title, such as that shown at the top of screen display 300 in FIG. 3, in some embodiments.
- a title such as that shown at the top of screen display 300 in FIG. 3, in some embodiments.
- other GUI elements, widgets, knobs, sliders, scrollbars, buttons, or related features may be presented for a user to interact with any underlying hardware and/or software, for example.
- FIG. 3 For further illustration, an example is shown in FIG. 3. In the example shown in
- $990 is a“Suggested price” representing one example of a suggested value that is output on a screen display. Additionally output with the suggested value is a prompt for further input.
- the further input may be provided via buttons (“List” or“Save draft”) and/or via a slider, knob, or equivalent element, e.g., in hardware (physical buttons, knobs, sliders, etc.), software (GUI, TUI, voice command, etc.), or any combination thereof.
- any of the values described above, including the suggested value and/or any of the at least two values that may be used to define any range, for example, may be updated and similarly output, updating any existing output, in some embodiments. Any number of buttons or text fields may also be used for input.
- Additional values are displayed, such as a“Sell faster” suggestion and a“Sell slower” suggestion to either side of the central suggested value of“Suggested price” as may be determined based on probability scores for the values described in 508 below.
- This combination of suggested prices forms one example of a pricing guide.
- Other formats and suggestions may be presented in any configuration to create an equivalent pricing guide, or another guide using other parameters besides or in addition to list prices, in other embodiments.
- Further values that may be output via screen display 300, as shown in FIG. 3, include minimum and maximum possible prices, which may be determined by a given platform, for example.
- a fee or commission rate may also be displayed, as well as a calculation of the fee or commission based on a desired sale price that may be selected via an element of screen display 300. In addition to the calculated fee or commission, remaining proceeds from a projected sale may also be displayed.
- any number of text fields or images may be displayed.
- Output may also be accomplished by various other means, including sound, haptic feedback, external electronic indicators including light-emitting diodes (LEDs) or additional external displays, etc. Any number of outputs and/or input prompts may be displayed simultaneously or sequentially in any arrangement or timing.
- LEDs light-emitting diodes
- screen display 300 of FIG. 3 shows one example configuration, practically any other configuration is possible within the scope and spirit of this disclosure to aid developers and users in designing, implementing, configuring, and using an interface and apparatus or system implementing the enhanced techniques described herein.
- FIG. 4 is a flowchart illustrating a method 400 for probabilistic item matching and searching, according to some embodiments.
- Method 400 may be performed by processing logic that may comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executing on a processing device), or a combination thereof. Not all steps of method 400 may be needed in all cases to perform the enhanced techniques disclosed herein. Further, some steps of method 400 may be performed simultaneously, or in a different order from that shown in FIG. 4, as will be understood by a person of ordinary skill in the art. [0064] Method 400 shall be described with reference to FIGS. 1 and 6. However, method
- method 400 is not limited only to those example embodiments.
- the steps of method 400 may be performed by at least one computer processor coupled to at least one memory device.
- An exemplary processor and memory device(s) are described below with respect to 604 of FIG. 6.
- method 400 may be performed using system 100 of FIG.
- At least one processor such as processor 604 may load a data point relating to a specific item.
- the data point may be an input value from a user, which may include a character string, number, or other information that may potentially identify the specific item, for example.
- Any loaded data point or received input may be stored in a memory, for example, such as main memory 608.
- the user input or data point(s) relating to the specific item may be incomplete or ambiguous, in some cases. Leveraging enhanced techniques for probabilistic matching and searching that are described herein, a suitable result may be delivered despite sparse, incomplete, or ambiguous input, thereby improving accuracy of search results otherwise obtainable, and reducing a level of effort and interaction required of a user, according to some embodiments.
- the data point may be a description, title, name, or otherwise brief characterization or statement describing an item, as may be arbitrarily entered by a user, in some embodiments.
- the input may be in response to a specific prompt (not shown), for example.
- the data point may, additionally or alternatively, be based on non-textual data, e.g., from a sensor, camera, voice recognition, artificial intelligence or neural network to generate descriptions based on other input or environmental factors, etc.
- the data point may originate and be sent or received programmatically and/or in an automated fashion, such as by an application programming interface (API), for example, not necessarily by manual input from a user, in some embodiments.
- API application programming interface
- processor 604 may generate a database query based on the data point.
- the database query is not limited to a query of a traditional structured database. Rather, for purposes of this disclosure, a database query is any query that may function like a database query. For example, any term, expression, or value (or any part thereof) used to determine a match against other data may be considered to be a database query for purposes of this disclosure.
- any entry in a“database” may correspond to any listing, data structure, web page, or other entity from which item data or corresponding metadata may be extracted, scraped, parsed, or otherwise handled, in some embodiments..
- the query may be a string literal, for example,
- the query may be a regular expression or similar input having special characters or components intended to match more than the literal input string itself.
- the database query may include operators and/or syntax such as with SQL queries for example.
- queries are not necessarily limited to accessing SQL databases— other types of databases, data stores, data lakes, data pools, data feeds, data streams, etc., may be used, and may be unstructured or partially structured if not fully structured.
- the query may be used for a public resource, third-party resource, library, database, or web search, such as using a web search engine, for example.
- processor 604 may receive a response to the database query, wherein the response comprises a plurality of candidate items relating to the specific item.
- the response received may be stored in memory, such as memory 608. While it may be possible, in some cases, for the response to have less than a plurality of candidate items, i.e., one or zero, in such cases, the probabilistic search and matching may be short-circuited in such cases and conclude early. In other cases, where the response to the database query includes multiple candidate item results, processing of method 400 may continue, to determine, with a level of confidence, at least one top result, for example.
- processor 604 may receive a first input relating to the specific item.
- the first input may be used for further qualifying the data point, regardless of any type or format of the data point, for example.
- first input may be a different text object (e.g., string) even if the data point is a text object— the data point and the first input may describe different elements of a text description (e.g., name, make, model, year, size, etc.), or may be different parts of the same element, for example.
- the first input may be of a different type, e.g., where the data point may be text in the form of a character string, the first input may be a photographic image, or vice-versa.
- Other types may be used, including voice recognition or other characteristic sounds or audio fingerprints, for example.
- a mathematical or cryptographic signature in any representation may also be used. Barcodes or other patterns or sequences may be used.
- Other possible types of input include, without limitation, vibrational patterns, chemical samples and analysis thereof, measurements of radiation, electrical and/or magnetic signals, or any other environmental sensor input, etc.
- Other forms of input may be received, such as in the form of output from other computer programs or algorithms, e.g., neural network output, perceptron output, image recognition output, classification output, or other types of output. These outputs may be based on other user inputs, e.g., from photographic data, voice or audio data, or other third-party resources, feeds, etc.
- the first input may be received in response to any variety of prompts, e.g., on a screen, e.g., of a mobile device, via another visible or audible indicator, over a network, and/or via an API from a local or remote program (with respect to a device performing the probabilistic matching and searching, for example.
- a second input, third input, or any further input may be received in response to any similar or related prompts, for example.
- processor 604 may generate a probability score for at least two candidate items of the plurality of candidate items in the response, based on at least the first input.
- the probability score may be in absolute terms or in relative terms to other candidates, for example.
- the other candidates may be candidates received in response to the database query, and/or may represent candidates from multiple queries and responses thereto (e.g., a history of past queries and responses, at least within a predetermined time frame, etc.).
- probability scoring may be cumulative over a specific time period and/or over all time.
- additional algorithms including machine learning, may be useful to improve accuracy of probability scores over time and iterations of machine learning, including by deep learning networks, in some embodiments.
- Probability scores as described herein may be generated locally on a client device, e.g., PC or mobile device such as a smartphone or tablet computer, remotely on self- hosted service (including dedicated server(s), VPS, or on-premises cloud) infrastructure, remotely via third-party services, or any combination thereof.
- a first device may be configured to send or pass a structured data query (e.g., in markup, serialized format, key- value pair, etc.) or other data structure to a second device such that processing may be initiated or continued to allow a resulting probability score to be generated and returned, either to the first device, a module of the second device, or a third device, for example.
- a structured data query e.g., in markup, serialized format, key- value pair, etc.
- not all components of the query or data structure may contain structured data for expected operation.
- item listings or search results may be biased or ranked based on probability scores that may be generated as described herein.
- scoring and ranking may be realized to provide relatively high levels of specificity in results, without requiring user input of a certain specificity, e.g., a SKU, at the local device, e.g., smartphone or PC terminal.
- processor 604 may select a selected item from the plurality of candidate items, based on the probability score for the selected item. Based on at least one of the data point and the first input, processor 604 may select a candidate item as a selected item. In some embodiments, processor 604 may select the candidate item having the highest corresponding probability score, for example, to be the selected item. In addition, or instead, processor 604 may select the selected item based on any other criteria or conditions, in other embodiments.
- probability scores may be updated or otherwise change. To the extent that the candidate item having the highest
- corresponding probability score may also change in response, such a change may also be reflected in the selected item.
- processor 604 may change the selected item to the candidate item having a highest corresponding probability score, if the selected item is not already the same as the candidate item having the highest corresponding probability score.
- Other criteria may be used, additionally or alternatively, for selecting, updating, or otherwise changing the selected item, in other embodiments.
- processor 604 may output a reference to the selected item. Specifically, as an output, processor 604 may return a reference or some other value as a result, in some embodiments.
- the reference or value may allow a separate function, module, device, user, or other entity to recognize or determine the resulting selected item.
- the reference or value may be a uniform, universal, and/or unique identifier, including but not limited to SKU, UPC, URI, URL, URN, ISBN, ASIN, etc., to which a given item may be mapped, in some embodiments.
- a value may include a checksum, fingerprint, signature, digest, hash, or cryptographic hash, corresponding to at least one of the data point or second input, to track inputs and outputs and/or determine duplicate inputs, for example.
- the output of 414 may be used as input for further methods, systems, and/or devices.
- a reference or identifying value corresponding to the selected item may be reliably used as input for further recommendations and/or biasing of search results, such as in 502 of method 500 and FIG. 5, described in more detail below. Further details of such uses and data flows are described additionally in the“Probabilistic Search Biasing and Recommendations” application (U.S. Appl. No. 16/288,373) incorporated by reference herein.
- Output of 414 may also be used with respect to the“Inventory Ingestion, Image Processing, and Market Descriptor Pricing System,”“Inventory Ingestion and Pricing System,” and“System and Method for Determining Sellability Score and Cancell ability Score” applications (U.S. Appl. Nos. 16/288,199, 16/288,203, and 16/288,158, respectively), each filed herewith and incorporated by reference as noted above.
- Method 400 is disclosed in the order shown above in this exemplary embodiment of FIG. 4.
- the operations disclosed above, alongside other operations may be executed sequentially in any order, or they may alternatively be executed concurrently, with more than one operation being performed simultaneously, or any combination of the above.
- FIG. 5 is a flowchart illustrating a method 500 including probabilistic item
- Method 500 may be performed by processing logic that may comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executing on a processing device), or a combination thereof. Not all steps of method 500 may be needed in all cases to perform the enhanced techniques disclosed herein. Further, some steps of method 500 may be performed simultaneously, or in a different order from that shown in FIG. 5, as will be understood by a person of ordinary skill in the art. [0083] Method 500 shall be described with reference to FIGS. 1 and 6. However, method
- method 400 is not limited only to those example embodiments.
- the steps of method 400 may be performed by at least one computer processor coupled to at least one memory device.
- An exemplary processor and memory device(s) are described below with respect to 604 of FIG. 6.
- method 400 may be performed using system 100 of FIG.
- a processor such as processor 604 may receive an input relating to an identified item.
- the identified item in some embodiments, may be an output selected item, such as from 414 in reference to FIG. 4 above, and as described in the“Probabilistic Item Matching and Searching” application (U.S. Appl. No. 16/288,379) that was referenced above and incorporated by reference herein.
- method 500 may employ any additional or alternative way of identifying items, in addition to or instead of the probabilistic item matching and/or searching described with respect to method 400 above, input received in 502 may be similar to the input received in 402 above, for example.
- the input may be a description, title, name, or otherwise brief characterization or statement describing an item, as may be arbitrarily entered by a user, for example.
- the input may be in response to a specific prompt (not shown), for example.
- the input may, additionally or alternatively, be based on non-textual data, e.g., from a sensor, camera, voice recognition, artificial intelligence or neural network to generate descriptions based on other input or environmental factors, etc.
- the input may originate and be sent or received programmatically and/or in an automated fashion, such as by an application programming interface (API), for example, not necessarily by manual input from a user.
- API application programming interface
- processor 604 may generate a database query based on the input.
- the database query is not limited to a query of a traditional structured database. Rather, for purposes of this disclosure, a database query is any query that may function like a database query. For example, any term, expression, or value (or any part thereof) used to determine a match against other data may be considered to be a database query for purposes of this disclosure.
- any entry in a“database” may correspond to any listing, data structure, web page, or other entity from which item data or corresponding metadata may be extracted, scraped, parsed, or otherwise handled, in some embodiments.
- the query may be a string literal, for example,
- the query may be a regular expression or similar input having special characters or components intended to match more than the literal input string itself.
- the database query may include operators and/or syntax such as with SQL queries for example.
- queries are not necessarily limited to accessing SQL databases— other types of databases, data stores, data lakes, data pools, data feeds, data streams, etc., may be used, and may be unstructured or semi-structured if not fully structured.
- the query may be used for a public resource, third-party resource, library, database, or web search, such as using a web search engine, for example.
- processor 604 may receive a response to the database query, wherein the response comprises a plurality of comparable items, wherein the comparable items are similar to the identified item, and wherein the response further comprises corresponding metadata for the plurality of comparable items, including a range of values corresponding to the plurality of comparable items. While it may be possible, in some cases, for the response to have less than a plurality of comparable items, i.e., one or zero, in such cases, the probabilistic recommendations may be short-circuited in such cases and conclude early. In other cases, where the response to the database query includes multiple comparable item results, processing of method 500 may continue.
- processor 604 may, in some cases, ignore the corresponding comparable item for purposes of further computations regarding the same metadata field of interest.
- a given item may be determined to be a comparable item by virtue of at least some elements of its description being similar to corresponding elements of the input in 502.
- processor 604 may be comparing comparable items to determine reasonable price ranges for how an input item (e.g., of 502) may sell in a given market, for example, processor 604 may ignore certain comparable items if their corresponding price
- processor 604 may generate a probability score for at least two values of the range of values, based at least on the corresponding metadata for the plurality of comparable items. Following the example immediately above, processor 604 may be comparing comparable items to determine reasonable price ranges for how an input item (e.g., of 502) may sell in a given market. Meaningful output may not be one single value, but may, depending on other factors, be reflected by two or more values. Additionally or alternatively, two values of the at least two values may represent a low value and a high value, e.g., defining a given range of values.
- two values may define a range of prices within which a given item
- a first value may represent a highest price for a given probability of sale irrespective of time
- a second value may be determined to be a highest price for a given probability of sale within a given time constraint.
- processor 604 may output at least a suggested value based on at least the generated probability score for the at least two values of the range of values, together with a prompt for further input.
- the suggested value may be one of the at least two values described with respect to 508 above, in some embodiments. In other embodiments, the suggested value may be distinct from any of the at least two values of 508, for example, but may be derived from any of the at least two values described with respect to 508 above, in some cases.
- FIG. 3 For further illustration, an example is shown in FIG. 3. In the example shown in
- $990 is a“Suggested price” representing one example of a suggested value that is output on a screen display. Additionally output with the suggested value is a prompt for further input.
- the further input may be provided via buttons (“List” or“Save draft”) and/or via a slider, knob, or equivalent element, e.g., in hardware (physical buttons, knobs, sliders, etc.), software (GUI, TUI, voice command, etc.), or any combination thereof.
- any of the values described above, including the suggested value and/or any of the at least two values that may be used to define any range, for example, may be updated and similarly output, updating any existing output, in some embodiments.
- Additional values are displayed, such as a“Sell faster” suggestion and a“Sell slower” suggestion to either side of the central suggested value of“Suggested price” as may be determined based on probability scores for the values described in 508 above.
- This combination of suggested prices forms one example of a pricing guide.
- Other formats and suggestions may be presented in any configuration to create an equivalent pricing guide, or another guide using other parameters besides or in addition to list prices, in other embodiments.
- a time value may be output, based at least on at least one comparable item and corresponding metadata. Additionally or alternatively, the time value may be set by a user at the user’s discretion.
- the time value as may be stored in memory 608, may be used to calculate any of the at least two values described in 508, for example, at least for any time-sensitive probability scores.
- the time value may be a period of time in which a sale has a given probability score, e.g., six hours, two days, one week, etc. While such a time value may be stored and associated with a corresponding probability score or other value, the time value may also be optionally displayed to a user alongside or in place of any other value(s), for example.
- the time value may be updated in response to any user input (e.g., first input, second input, etc.) or further user input, and the updated time value and/or probability score(s) may be output, updating any existing output, in some embodiments. Additional operations of updating or refreshing, based on any user input and/or any periodic refresh cycle, for example, may be performed in accordance with any other related technique understood in the art.
- Method 500 is disclosed in the order shown above in this exemplary embodiment of FIG. 5.
- the operations disclosed above, alongside other operations, may be executed sequentially in any order, or they may alternatively be executed concurrently, with more than one operation being performed simultaneously, or any combination of the above.
- Example Computer System
- FIG. 6 Various embodiments may be implemented, for example, using one or more computer systems, such as computer system 600 shown in FIG. 6.
- One or more computer systems 600 may be used, for example, to implement any of the embodiments discussed herein, as well as combinations and sub-combinations thereof.
- Computer system 600 may include one or more processors (also called central processing units, or CPUs), such as a processor 604.
- processors also called central processing units, or CPUs
- Processor 604 may be connected to a bus or communication infrastructure 606.
- Computer system 600 may also include user input/output device(s) 603, such as monitors, keyboards, pointing devices, etc., which may communicate with
- processors 604 may be a graphics processing unit (GPU).
- a GPU may be a processor that is a specialized electronic circuit designed to process mathematically intensive applications.
- the GPU may have a parallel structure that is efficient for parallel processing of large blocks of data, such as mathematically intensive data common to computer graphics applications, images, videos, vector processing, array processing, etc., as well as cryptography (including brute-force cracking), generating cryptographic hashes or hash sequences, solving partial hash- inversion problems, and/or producing results of other proof-of-work computations for some blockchain-based applications, for example.
- the GPU may be particularly useful in at least the image recognition and machine learning aspects described herein.
- processors 604 may include a coprocessor or other implementation of logic for accelerating cryptographic calculations or other specialized mathematical functions, including hardware-accelerated cryptographic coprocessors.
- Such accelerated processors may further include instruction set(s) for acceleration using coprocessors and/or other logic to facilitate such acceleration.
- Computer system 600 may also include a main or primary memory 608, such as random access memory (RAM).
- Main memory 608 may include one or more levels of cache.
- Main memory 608 may have stored therein control logic (i.e., computer software) and/or data.
- Computer system 600 may also include one or more secondary storage devices or secondary memory 610.
- Secondary memory 610 may include, for example, a main storage drive 612 and/or a removable storage device or drive 614.
- Main storage drive 612 may be a hard disk drive or solid-state drive, for example.
- Removable storage drive 614 may be a floppy disk drive, a magnetic tape drive, a compact disk drive, an optical storage device, tape backup device, and/or any other storage device/drive.
- Removable storage drive 614 may interact with a removable storage unit 618.
- Removable storage unit 618 may include a computer usable or readable storage device having stored thereon computer software (control logic) and/or data.
- Removable storage unit 618 may be a floppy disk, magnetic tape, compact disk, DVD, optical storage disk, and/ any other computer data storage device.
- Removable storage drive 614 may read from and/or write to removable storage unit 618.
- Secondary memory 610 may include other means, devices, components,
- Such means, devices, components, instrumentalities or other approaches may include, for example, a removable storage unit 622 and an interface 620.
- the removable storage unit 622 and the interface 620 may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM or PROM) and associated socket, a memory stick and USB port, a memory card and associated memory card slot, and/or any other removable storage unit and associated interface.
- Computer system 600 may further include a communication or network interface
- Communication interface 624 may enable computer system 600 to communicate and interact with any combination of external devices, external networks, external entities, etc. (individually and collectively referenced by reference number 628).
- communication interface 624 may allow computer system 600 to communicate with external or remote devices 628 over communication path 626, which may be wired and/or wireless (or a combination thereof), and which may include any combination of LANs, WANs, the Internet, etc.
- Control logic and/or data may be transmitted to and from computer system 600 via communication path 626.
- Computer system 600 may also be any of a personal digital assistant (PDA), desktop workstation, laptop or notebook computer, netbook, tablet, smart phone, smart watch or other wearable, appliance, part of the Internet of Things (IoT), and/or embedded system, to name a few non-limiting examples, or any combination thereof.
- PDA personal digital assistant
- desktop workstation laptop or notebook computer
- netbook tablet
- smart phone smart watch or other wearable
- appliance part of the Internet of Things (IoT)
- IoT Internet of Things
- embedded system embedded system
- the framework described herein may be implemented as a method, process, apparatus, system, or article of manufacture such as a non-transitory computer-readable medium or device.
- the present framework may be described in the context of distributed ledgers being publicly available, or at least available to untrusted third parties.
- distributed ledgers being publicly available, or at least available to untrusted third parties.
- One example as a modem use case is with blockchain- based systems.
- the present framework may also be applied in other settings where sensitive or confidential information may need to pass by or through hands of untrusted third parties, and that this technology is in no way limited to distributed ledgers or blockchain uses.
- Computer system 600 may be a client or server, accessing or hosting any
- any delivery paradigm including but not limited to remote or distributed cloud computing solutions; local or on-premises software (e.g.,“on premise” cloud-based solutions);“as a service” models (e.g., content as a service (CaaS), digital content as a service (DCaaS), software as a service (SaaS), managed software as a service (MSaaS), platform as a service (PaaS), desktop as a service (DaaS), framework as a service (FaaS), backend as a service (BaaS), mobile backend as a service (MBaaS), infrastructure as a service (IaaS), database as a service (DBaaS), etc.); and/or a hybrid model including any combination of the foregoing examples or other services or delivery paradigms.
- a hybrid model including any combination of the foregoing examples or other services or delivery paradigms.
- JSON JavaScript Object Notation
- XML Extensible Markup Language
- YAML Yet Another Markup Language
- Hypertext Markup Language XHTML
- WML Wireless Markup Language
- MessagePack XML User Interface Language
- XUL XML User Interface Language
- proprietary data structures, formats or schemas may be used, either exclusively or in combination with known or open standards.
- Any pertinent data, files, and/or databases may be stored, retrieved, accessed, and/or transmitted in human-readable formats such as numeric, textual, graphic, or multimedia formats, further including various types of markup language, among other possible formats.
- the data, files, and/or databases may be stored, retrieved, accessed, and/or transmitted in binary, encoded, compressed, and/or encrypted formats, or any other machine-readable formats.
- Interfacing or interconnection among various systems and layers may employ any number of mechanisms, such as any number of protocols, programmatic frameworks, floorplans, or application programming interfaces (API), including but not limited to Document Object Model (DOM), Discovery Service (DS), NSUserDefaults, Web Services Description Language (WSDL), Message Exchange Pattern (MEP), Web Distributed Data Exchange (WDDX), Web Hypertext Application Technology Working Group (WHATWG) HTML5 Web Messaging, Representational State Transfer (REST or RESTful web services), Extensible User Interface Protocol (XUP), Simple Object Access Protocol (SOAP), XML Schema Definition (XSD), XML Remote Procedure Call (XML- RPC), or any other mechanisms, open or proprietary, that may achieve similar functionality and results.
- API application programming interfaces
- Such interfacing or interconnection may also make use of uniform resource
- URI uniform resource locators
- URL uniform resource locators
- UPN uniform resource names
- Other forms of uniform and/or unique identifiers, locators, or names may be used, either exclusively or in combination with forms such as those set forth above.
- Any of the above protocols or APIs may interface with or be implemented in any programming language, procedural, functional, or object-oriented, and may be compiled or interpreted.
- Non-limiting examples include C, C++, C#, Objective-C, Java, Scala, Clojure, Elixir, Swift, Go, Perl, PHP, Python, Ruby, JavaScript, WebAssembly, or virtually any other language, with any other libraries or schemas, in any kind of framework, runtime environment, virtual machine, interpreter, stack, engine, or similar mechanism, including but not limited to Node.js, V8, Knockout, j Query, Dojo, Dijit, OpenUI5, AngularJS, Express.js, Backbone.js, Ember.js, DHTMLX, Vue, React, Electron, and so on, among many other non-limiting examples.
- manufacture comprising a tangible, non-transitory computer useable or readable medium having control logic (software) stored thereon may also be referred to herein as a computer program product or program storage device.
- control logic when executed by one or more data processing devices (such as computer system 600), may cause such data processing devices to operate as described herein.
- embodiment “some embodiments,” or similar phrases, indicate that the embodiment described can include a particular feature, structure, or characteristic, but every embodiment can not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it would be within the knowledge of persons skilled in the relevant art(s) to incorporate such feature, structure, or characteristic into other embodiments whether or not explicitly mentioned or described herein.
- some embodiments can be described using the expression“coupled” and“connected” along with their derivatives. These terms are not necessarily intended as synonyms for each other. For example, some embodiments can be described using the terms“connected” and/or“coupled” to indicate that two or more elements are in direct physical or electrical contact with each other. The term“coupled,” however, can also mean that two or more elements are not in direct contact with each other, but yet still co operate or interact with each other.
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Marketing (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
Claims
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862740165P | 2018-10-02 | 2018-10-02 | |
US201862740182P | 2018-10-02 | 2018-10-02 | |
US16/288,379 US11074634B2 (en) | 2018-10-02 | 2019-02-28 | Probabilistic item matching and searching |
US16/288,373 US11282100B2 (en) | 2018-10-02 | 2019-02-28 | Probabilistic search biasing and recommendations |
PCT/US2019/054006 WO2020072453A1 (en) | 2018-10-02 | 2019-10-01 | Probabilistic item matching and searching |
Publications (2)
Publication Number | Publication Date |
---|---|
EP3861518A1 true EP3861518A1 (en) | 2021-08-11 |
EP3861518A4 EP3861518A4 (en) | 2022-06-29 |
Family
ID=70054488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP19869731.0A Pending EP3861518A4 (en) | 2018-10-02 | 2019-10-01 | Probabilistic item matching and searching |
Country Status (6)
Country | Link |
---|---|
EP (1) | EP3861518A4 (en) |
JP (2) | JP7417597B2 (en) |
KR (1) | KR20210054021A (en) |
AU (1) | AU2019352948A1 (en) |
CA (1) | CA3114908A1 (en) |
WO (1) | WO2020072453A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102411021B1 (en) * | 2021-09-01 | 2022-06-22 | 주식회사 그렇게하자 | Method and apparatus for providing video content production service using augmented reality |
KR102468630B1 (en) | 2022-08-05 | 2022-11-22 | 주식회사 레이첼블루 | Apparatus and method for providing item replacement matching platform service throuth item valuation |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6981040B1 (en) * | 1999-12-28 | 2005-12-27 | Utopy, Inc. | Automatic, personalized online information and product services |
EP1618486A4 (en) * | 2003-03-27 | 2008-10-08 | Univ Washington | Performing predictive pricing based on historical data |
JP2008052672A (en) | 2006-08-28 | 2008-03-06 | Oki Electric Ind Co Ltd | Price information retrieval device, price information retrieval system and price information retrieval method |
US20090319388A1 (en) | 2008-06-20 | 2009-12-24 | Jian Yuan | Image Capture for Purchases |
US8600824B2 (en) | 2010-04-28 | 2013-12-03 | Verizon Patent And Licensing Inc. | Image-based product marketing systems and methods |
US9830632B2 (en) * | 2012-10-10 | 2017-11-28 | Ebay Inc. | System and methods for personalization and enhancement of a marketplace |
JP2014115912A (en) | 2012-12-11 | 2014-06-26 | Yahoo Japan Corp | Exhibition support device, exhibition system, exhibition support method, and exhibition support program |
KR20150110846A (en) * | 2014-03-20 | 2015-10-05 | 박정훈 | Method and system for recommending a goods |
KR20160001578A (en) * | 2014-06-25 | 2016-01-06 | 삼성전기주식회사 | Apparatus and method for determining product price |
US11004131B2 (en) | 2016-10-16 | 2021-05-11 | Ebay Inc. | Intelligent online personal assistant with multi-turn dialog based on visual search |
KR102127191B1 (en) * | 2018-03-16 | 2020-06-26 | 오드컨셉 주식회사 | Method, apparatus and computer program for providing shopping informations |
-
2019
- 2019-10-01 EP EP19869731.0A patent/EP3861518A4/en active Pending
- 2019-10-01 AU AU2019352948A patent/AU2019352948A1/en active Pending
- 2019-10-01 JP JP2021518907A patent/JP7417597B2/en active Active
- 2019-10-01 WO PCT/US2019/054006 patent/WO2020072453A1/en unknown
- 2019-10-01 CA CA3114908A patent/CA3114908A1/en active Pending
- 2019-10-01 KR KR1020217013060A patent/KR20210054021A/en active Search and Examination
-
2024
- 2024-01-05 JP JP2024000700A patent/JP2024041849A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CA3114908A1 (en) | 2020-04-09 |
WO2020072453A1 (en) | 2020-04-09 |
JP2022514156A (en) | 2022-02-10 |
EP3861518A4 (en) | 2022-06-29 |
KR20210054021A (en) | 2021-05-12 |
JP2024041849A (en) | 2024-03-27 |
JP7417597B2 (en) | 2024-01-18 |
AU2019352948A1 (en) | 2021-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11074634B2 (en) | Probabilistic item matching and searching | |
US11282100B2 (en) | Probabilistic search biasing and recommendations | |
US11176589B2 (en) | Dynamically generated machine learning models and visualization thereof | |
US11204972B2 (en) | Comprehensive search engine scoring and modeling of user relevance | |
US11334635B2 (en) | Domain specific natural language understanding of customer intent in self-help | |
US11308276B2 (en) | Generating message effectiveness predictions and insights | |
KR102214015B1 (en) | Smart Match Auto Completion System | |
US20160267377A1 (en) | Review Sentiment Analysis | |
EP3717984B1 (en) | Method and apparatus for providing personalized self-help experience | |
EP3198482A1 (en) | Techniques for similarity analysis and data enrichment using knowledge sources | |
US20210390609A1 (en) | System and method for e-commerce recommendations | |
JP2024041849A (en) | Probabilistic item matching and search | |
US20220067571A1 (en) | Machine-learning prediction or suggestion based on object identification | |
US11341204B2 (en) | Identifying and presenting misalignments between digital messages and external digital content | |
US20230385887A1 (en) | Techniques for automatic filling of an input form to generate a listing | |
US11847303B1 (en) | User interface for depicting informational elements for selectable items | |
US20240169147A1 (en) | Reference driven nlp-based topic categorization | |
US20240062266A1 (en) | Systems and methods for determining similarity of online items | |
US20240054552A1 (en) | Intelligent Computer Search Engine Removal Of Search Results | |
US20240045913A1 (en) | Systems and methods for active web-based content filtering | |
CN112558913A (en) | Conversation method and device based on aggregated card, computer equipment and storage medium | |
CN115080845A (en) | Recommendation reason generation method and device, electronic device and readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20210414 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
DAV | Request for validation of the european patent (deleted) | ||
DAX | Request for extension of the european patent (deleted) | ||
A4 | Supplementary search report drawn up and despatched |
Effective date: 20220531 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06Q 30/02 20120101ALI20220524BHEP Ipc: G06Q 30/08 20120101ALI20220524BHEP Ipc: G06Q 30/06 20120101AFI20220524BHEP |