Patents by Inventor William D. Ramsey
William D. Ramsey has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 7831585Abstract: A task-based advertisement system and method are provided. The system employs high-order concepts (e.g., booking a flight, checking stock quotes etc.) embodied in “task(s)” which can then be bid upon by advertisers. The task(s) employed by the system are based upon a semantic solution to a natural-language query. The system includes a search engine that is capable of serving content in response to user query(ies). The system further includes a task server that can include hardware and/or software to retrieve task(s) in response to user query(ies). The task(s) retrieved by the task server can be presented to advertiser(s) who can bid on the task(s).Type: GrantFiled: December 5, 2005Date of Patent: November 9, 2010Assignee: Microsoft CorporationInventors: William D. Ramsey, Sanjeev Katariya
-
Patent number: 7822699Abstract: Provided is an adaptive semantic reasoning engine that receives a natural language query, which may contain one or more contexts. The query can be broken down into tokens or a set of tokens. A task search can be performed on the token or token set(s) to classify a particular query and/or context and retrieve one or more tasks. The token or token set(s) can be mapped into slots to retrieve one or more task result. A slot filling goodness may be determined that can include scoring each task search result and/or ranking the results in a different order than the order in which the tasks were retrieved. The token or token set(s), retrieved tasks, slot filling goodness, natural language query, context, search result score and/or result ranking can be feedback to the reasoning engine for further processing and/or machine learning.Type: GrantFiled: November 30, 2005Date of Patent: October 26, 2010Assignee: Microsoft CorporationInventors: Sanjeev Katariya, Qi Steven Yao, Jun Liu, William D. Ramsey, Jianfeng Gao
-
Patent number: 7814092Abstract: A computer-implemented method of performing named entity recognition in a client-server environment includes providing a first named entity recognition module operable with a client machine in the client-server environment and a second named entity recognition module operable with a server in the client-server environment. The method also includes performing named entity recognition on the client machine to identify one or more domain dependent named entities in a set of tokens and data assessable to the client machine and performing named entity recognition on the server to identify one or more domain independent named entities in the set of tokens and data assessable to the server. A task is completed using at least information related to the identified named entities from the client machine and the server.Type: GrantFiled: October 13, 2005Date of Patent: October 12, 2010Assignee: Microsoft CorporationInventors: William D. Ramsey, Sanjeev Katariya
-
Publication number: 20100241624Abstract: Systems and methods for presenting search results ordered, at least in part, based upon indicated user preferences are provided. User preferences for one potential search result over another that are free of position bias are obtained utilizing random relative order interchange of juxtaposed, ranked search results. Upon receipt of a search query, a determination is made to present at least a portion of search results satisfying the received query ordered based on user preferences, whether or not the order coincides with that determined using a ranking algorithm. In this way, presented search results are ordered, at least in part, according to user preferences, thus improving the relevance of the output relative to standard ranking algorithms alone.Type: ApplicationFiled: March 20, 2009Publication date: September 23, 2010Applicant: Microsoft CorporationInventor: William D. Ramsey
-
Patent number: 7783588Abstract: A context modeling architecture that includes a context representation portion, which adapted to represent context as features, is provided. The features are specifiable at runtime of an application including the context representation portion.Type: GrantFiled: October 19, 2005Date of Patent: August 24, 2010Assignee: Microsoft CorporationInventors: William D. Ramsey, Jianfeng Gao, Sanjeev Katariya
-
Publication number: 20100175049Abstract: Embodiments of the present invention relate to systems, methods and computer storage media for providing Structured Computations Optimized for Parallel Execution (SCOPE) that facilitate analysis of a large-scale dataset utilizing row data of those data sets. SCOPE includes, among other features, an extract command for extracting data bytes from a data stream and structuring the data bytes as data rows having strictly defined columns. SCOPE also includes a process command and a reduce command that identify data rows as inputs. The reduce command also identifies a reduce key that facilitates the reduction based on the reduce key. SCOPE additionally includes a combine command that identifies two data row sets that are to be combined based on an identified joint condition. Additionally, SCOPE includes a select command that leverages SQL and C# languages to create an expressive script that is capable of analyzing large-scale data sets in a parallel computing environment.Type: ApplicationFiled: January 7, 2009Publication date: July 8, 2010Applicant: MICROSOFT CORPORATIONInventors: WILLIAM D. RAMSEY, RONNIE IRA CHAIKEN, DARREN A. SHAKIB, ROBERT JOHN JENKINS, JR., SIMON J. WEAVER, JINGREN ZHOU, DANIEL DEDU-CONSTANTIN, ACHINT SRIVASTAVA
-
Patent number: 7640162Abstract: A system for synchronizing a natural language input element and a graphical user interface has a synchronization engine. The synchronization engine is adapted to monitor user interactions with the natural language input element and the graphical user interface and to synchronize the natural language input element and the graphical user interface responsive to the user interactions.Type: GrantFiled: December 14, 2004Date of Patent: December 29, 2009Assignee: Microsoft CorporationInventors: William D. Ramsey, Christopher C. McConnell, David Dawson, Jonas Barklund, Steven W. Ickman, Thomas M. Laird-McConnell
-
Patent number: 7624099Abstract: Word-breaking of a query from a client machine in a client-server environment includes determining whether to use a first word breaking module operable with a client machine in the client-server environment and/or a second word breaking module operable with a server in the client-server environment.Type: GrantFiled: October 13, 2005Date of Patent: November 24, 2009Assignee: Microsoft CorporationInventors: Sanjeev Katariya, William D. Ramsey
-
Patent number: 7620634Abstract: Methods of ranking documents on a network using an incrementally-updatable system are disclosed. Computer readable storage media having stored computer-executable instructions for performing a method of ranking documents on a network using an incrementally-updatable system are also disclosed. Further, computing devices containing at least one application module comprising application code for performing methods of ranking documents on a network using an incrementally-updatable system are disclosed.Type: GrantFiled: July 31, 2006Date of Patent: November 17, 2009Assignee: Microsoft CorporationInventor: William D. Ramsey
-
Patent number: 7617093Abstract: A method and apparatus are provided for automatically forming a grammar. Example text strings are received and N-grams are formed based on the text strings. A rule in the grammar is then generated automatically based in part on the n-grams.Type: GrantFiled: June 2, 2005Date of Patent: November 10, 2009Assignee: Microsoft CorporationInventor: William D. Ramsey
-
Patent number: 7606700Abstract: The subject disclosure pertains to systems and methods for performing natural language processing in which natural language input is mapped to a task. The system includes a task interface for defining a task, the associated data and the manner in which the task data is interpreted. Furthermore, the system provides a framework that manages the tasks to facilitate natural language processing. The task interface and framework can be used to provide natural language processing capabilities to third party applications. Additionally, the task framework can learn or be trained based upon feedback received from the third party applications.Type: GrantFiled: November 9, 2005Date of Patent: October 20, 2009Assignee: Microsoft CorporationInventors: William D. Ramsey, Jonas Barklund, Sanjeev Katariya
-
Patent number: 7593846Abstract: A method and apparatus for identifying a semantic structure from text includes processing the input text to identify self-describing fragments of the input text based on a hierarchical schema defining a domain with at least one top-level node and child nodes. Each identified self-describing fragment includes hierarchical context of a portion of the input text. A semantic structure is provided based on the identified self-describing fragments.Type: GrantFiled: September 2, 2004Date of Patent: September 22, 2009Assignee: Microsoft CorporationInventors: William D. Ramsey, Par Jonas Barklund
-
Patent number: 7593845Abstract: A method and apparatus for identifying a semantic structure from an input text forms at least two candidate semantic structures. A semantic score is determined for each candidate semantic structure based on the likelihood of the semantic structure. A syntactic score is also determined for each semantic structure based on the position of a word in the text and the position in the semantic structure of a semantic entity formed from the word. The syntactic score and the semantic score are combined to select a semantic structure for at least a portion of the text. In many embodiments, the semantic structure is built incrementally by building and scoring candidate structures for a portion of the text, pruning low scoring candidates, and adding additional semantic elements to the retained candidates.Type: GrantFiled: October 6, 2003Date of Patent: September 22, 2009Assignee: Microsoflt CorporationInventor: William D. Ramsey
-
Patent number: 7584093Abstract: A computer implemented method of suggesting replacement words for words of a string. In the method, an input string of input words is received. The input words are then matched to subject words of a candidate table. Next, candidate replacement words and scores from the candidate table corresponding to the matched subject words are extracted. Each score is indicative of a probability that the input word should be replaced with the corresponding candidate replacement word. Finally, replacement of the input words with their corresponding candidate replacement words is selectively suggested based on the scores for the replacement words. Another aspect of the present invention is directed to a spell checking system that is configured to implement the method.Type: GrantFiled: April 25, 2005Date of Patent: September 1, 2009Assignee: Microsoft CorporationInventors: Douglas W. Potter, Edward C. Hart, Jr., Hisakazu Igarashi, Patricia M. Schmid, William D. Ramsey
-
Publication number: 20090119641Abstract: The insertion and processing of programming language code (e.g., C#) in SQL statements, and the dynamic compiling of the code to detect errors prior to statement execution. The SQL statement with arbitrary programming language code can then be executed concurrently as a query on a computer cluster. External libraries can be imported and the associated functionality leveraged from within a SQL statement. The programming language compiler performs checking at build time, rather than retuning an error during the statement execution against the cluster, a potentially costly proposition in both computing time and human resources.Type: ApplicationFiled: November 7, 2007Publication date: May 7, 2009Applicant: MICROSOFT CORPORATIONInventors: William D. Ramsey, Ronnie I. Chaiken
-
Publication number: 20090119640Abstract: A graphical application development tool for developing parallel computation applications. The tool facilitates insertion of computational elements by a drag-and-drop operation onto a canvas area for creating a computational graph. The graphical application tool reduces the barriers to the development of parallel computation applications by entry-level developers, for example, by allowing these users to write applications by using a graphical tool, thereby avoiding complexities of having to write well-formed code and learning a new language. The tool includes built-in functionality that allows the developer to write arbitrary code (e.g., C#) to perform various functions on massive amounts of data.Type: ApplicationFiled: November 7, 2007Publication date: May 7, 2009Applicant: MICROSOFT CORPORATIONInventors: William D. Ramsey, Ronnie I. Chaiken
-
Publication number: 20080313161Abstract: Structured queries, such as those written using the Structured Query Language (SQL) can be an efficient mechanism for expressing the information sought to be obtained from a collection of data. Mechanisms can enable the use of structured queries to express data processing that can be performed in parallel in order to obtain the attendant efficiencies of such processing. The structured queries, whether standing alone or integrated into another programming context, can be translated into an intermediate form that can be compatible with, or equivalent to, the programming context into which they were integrated or some other high-level programming language. The intermediate, translated form can use core commands that abstract mechanisms that can be executed in parallel. The core commands include commands for applying a function in parallel and distributing and joining data in parallel, and also include aggregations of core commands directed to commonly performed functions.Type: ApplicationFiled: June 12, 2007Publication date: December 18, 2008Applicant: MICROSOFT CORPORATIONInventors: William D. Ramsey, Ronnie I. Chaiken
-
Publication number: 20080313610Abstract: Scripting core commands and aggregations of such commands are provided to script authors to enable them to generate scripts that can be parallel-processed without requiring the author to be aware of parallel-processing techniques. The scripting core commands and aggregations abstract mechanisms that can be executed in parallel, enabling the script author to focus on higher-level concepts. The scripting core commands provided include commands for applying a function in parallel and distributing and joining data in parallel. For added flexibility, one or more scripting core commands can utilize functions written in a different programming language and referenced appropriately in code blocks.Type: ApplicationFiled: June 13, 2007Publication date: December 18, 2008Applicant: MICROSOFT CORPORATIONInventors: William D. Ramsey, Ronnie I. Chaiken
-
Publication number: 20080313625Abstract: Core commands and aggregations of such commands are provided to programmers to enable them to generate programs that can be parallel-processed without requiring the programmer to be aware of parallel-processing techniques. The core commands and aggregations abstract mechanisms that can be executed in parallel, enabling the programmer to focus on higher-level concepts. The core commands provided include commands for applying a function in parallel and distributing and joining data in parallel. The output of each core command can implement an interface that can enable underlying mechanisms to stitch together multiple core commands in a cohesive manner to perform more complex actions.Type: ApplicationFiled: June 13, 2007Publication date: December 18, 2008Applicant: MICROSOFT CORPORATIONInventors: William D. Ramsey, Ronnie I. Chaiken
-
Publication number: 20080294602Abstract: Systems, methods, computer-readable media, and graphical user interfaces for presenting search results having collapsed domains are provided. A search result obtaining module obtains search results based upon a received query. Upon obtaining the search results, search results having the same domain are associated with one another. Thereafter, search result clusters of associated search results are formed. In some embodiments, the search result clusters may be formatted to include desired search result cluster attributes. The search result clusters are presented such that two or more associated search results form a single cluster of search results rather than being presented individually. In some embodiments, an option to view more search results with the same domain may be provided.Type: ApplicationFiled: May 25, 2007Publication date: November 27, 2008Applicant: MICROSOFT COPORATIONInventors: PRATIBHA PERMANDLA, GAURAV SAREEN, GIRISH KUMAR, JUNHUA WANG, ROHIT V. WAD, WILLIAM D. RAMSEY