Patents by Inventor Dror Kremer
Dror Kremer 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).
-
Publication number: 20190266195Abstract: A data set may be distributed over many data stores, and a query may be distributively evaluated by several data stores with the results combined to form a query result (e.g., utilizing a MapReduce framework). However, such architectures may violate security principles by performing sophisticated processing, including the execution of arbitrary code, on the same machines that store the data. Instead of processing queries, a data store may be configured only to receive requests specifying one or more filtering criteria, and to provide the data items satisfying the filtering criteria. A compute node may apply a query by generating a request including one o more filter criteria, providing the request to a data node, and applying the remainder of the query (including sophisticated processing, and potentially the execution of arbitrary code) to the data items provided by the data node, thereby improving the security and efficiency of query processing.Type: ApplicationFiled: May 7, 2019Publication date: August 29, 2019Applicant: Microsoft Technology Licensing, LLCInventors: Nir Nice, Daniel Sitton, Dror Kremer, Michael Feldman
-
Patent number: 10311105Abstract: A data set may be distributed over many data stores, and a query may be distributively evaluated by several data stores with the results combined to form a query result (e.g., utilizing a MapReduce framework). However, such architectures may violate security principles by performing sophisticated processing, including the execution of arbitrary code, on the same machines that store the data. Instead of processing queries, a data store may be configured only to receive requests specifying one or more filtering criteria, and to provide the data items satisfying the filtering criteria. A compute node may apply a query by generating a request including one or more filter criteria, providing the request to a data node, and applying the remainder of the query (including sophisticated processing, and potentially the execution of arbitrary code) to the data items provided by the data node, thereby improving the security and efficiency of query processing.Type: GrantFiled: December 28, 2010Date of Patent: June 4, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Nir Nice, Daniel Sitton, Dror Kremer, Michael Feldman
-
Publication number: 20180233057Abstract: A modern, personalized, adaptive learning experience may be enabled for distinct groups of students. Content entered in a notebook application or similar platform may be analyzed. Content from a learning object repository may then be selected to be suggested based on comparison with the entered content. A style may also be determined based on one or more of a common attribute of a group of teachers, a common attribute of a group of students, or a rule of an organization. The selected content to be suggested may be automatically customized to conform to the style and a lesson plan, and the customized content may be provided to a client application or another service to be displayed in conformance with the lesson plan to students supporting teachers by freeing teachers' time through optimization of the learning process, creation of easy and simple to use experiences, and actionable analytics and proactive alerts.Type: ApplicationFiled: May 18, 2017Publication date: August 16, 2018Applicant: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Daniel SITTON, Dror KREMER, Shay BEN-ELAZAR, Shay SLOBODKIN, Oded VAINAS, Yehuda Arkin ADAR, Ran GILAD-BACHRACH, Ze'ev MAOR
-
Patent number: 9208155Abstract: A recommendation system for optimizing content recommendation lists is disclosed. The system dynamically tracks a list interaction history of a user, which details that user's interactions with a plurality of different lists presenting different recommended items to that user. The system automatically correlates one or more list preferences with that user based on the list interaction history, and builds a recommendation list with a plurality of candidate items having different recommendation confidences. The recommendation list is built such that each candidate item with a higher recommendation confidence is prioritized over each candidate item with a lower recommendation confidence according to the one or more list preferences correlated to that user.Type: GrantFiled: September 9, 2011Date of Patent: December 8, 2015Assignee: Rovi Technologies CorporationInventors: Nir Nice, Dror Kremer, Daniel Sitton, Michael Feldman, Shimon Shlevich, Ori Folger
-
Patent number: 8983888Abstract: A technique for efficiently factoring a matrix in a recommendation system. Usage data for a large set of users relative to a set of items is provided in a usage matrix R. To reduce computational requirements, the usage matrix is sampled to provide a reduced matrix R?. R? is factored into a user matrix U? and an item matrix V. User vectors in U? and V are initialized and then iteratively updated to arrive at an optimal solution. The reduced matrix can be factored using the computational resources of a single computing device, for instance. Subsequently, the full user matrix U is obtained by fixing V and analytically minimizing an error in UV=R+error. The computations of this analytic solution can be divided among a set of computing devices, such as by using a map and reduce technique. Each computing device solves the equation for different respective subset of users.Type: GrantFiled: November 7, 2012Date of Patent: March 17, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Nir Nice, Noam Koenigstein, Ulrich Paquet, Shahar Keren, Daniel Sitton, Dror Kremer, Shai Roitman
-
Patent number: 8910270Abstract: In some embodiments of the invention, techniques may make private identifiers for private network resources usable to establish connections to those private network resources from computing devices connected to an outside network. For example, when a computing device is connected to an outside network and attempting to contact a private network resource, DNS may be used to resolve a domain name for the private network resource to an IP address for an edge resource of the private network. Communications may be passed between the computing device and the edge resource according to protocols which embed the identifier originally used to identify the private network resource. The edge resource of the private network may analyze communications over the connection to determine this identifier, and use it to pass the communication to the desired private network resource.Type: GrantFiled: January 20, 2009Date of Patent: December 9, 2014Assignee: Microsoft CorporationInventors: Nir Nice, Amit Finkelstein, Dror Kremer, Noam Ben-Yochanan, Shyam Seshadri
-
Publication number: 20140129500Abstract: A technique for efficiently factoring a matrix in a recommendation system. Usage data for a large set of users relative to a set of items is provided in a usage matrix R. To reduce computational requirements, the usage matrix is sampled to provide a reduced matrix R?. R? is factored into a user matrix U? and an item matrix V. User vectors in U? and V are initialized and then iteratively updated to arrive at an optimal solution. The reduced matrix can be factored using the computational resources of a single computing device, for instance. Subsequently, the full user matrix U is obtained by fixing V and analytically minimizing an error in UV=R+error. The computations of this analytic solution can be divided among a set of computing devices, such as by using a map and reduce technique. Each computing device solves the equation for different respective subset of users.Type: ApplicationFiled: November 7, 2012Publication date: May 8, 2014Applicant: MICROSOFT CORPORATIONInventors: Nir Nice, Noam Koenigstein, Ulrich Paquet, Shahar Keren, Daniel Sitton, Dror Kremer, Shai Roitman
-
Publication number: 20130325898Abstract: Large-scale event processing systems are often designed to perform data mining operations by storing a large set of events in a massive database, applying complex queries to the records of the events, and generating reports and notifications. However, because such queries are performed on very large data sets, the processing of the queries often introduces a significant delay between the occurrence of the events and the reporting or notification thereof. Instead, a large-scale event processing system may be devised as a large state machine organized according to an evaluation plan, comprising a graph of event processors that, in realtime, evaluate each event in an event stream to update an internal state of the event processor, and to perform responses when response conditions are met. The continuous monitoring and evaluation of the stream of events may therefore enable the event processing system to provide realtime responses and notifications to complex queries.Type: ApplicationFiled: August 8, 2013Publication date: December 5, 2013Applicant: Microsoft CorporationInventors: Nir Nice, Daniel Sitton, Dror Kremer, Michael Feldman
-
Patent number: 8510284Abstract: Large-scale event processing systems are often designed to perform data mining operations by storing a large set of events in a massive database, applying complex queries to the records of the events, and generating reports and notifications. However, because such queries are performed on very large data sets, the processing of the queries often introduces a significant delay between the occurrence of the events and the reporting or notification thereof. Instead, a large-scale event processing system may be devised as a large state machine organized according to an evaluation plan, comprising a graph of event processors that, in realtime, evaluate each event in an event stream to update an internal state of the event processor, and to perform responses when response conditions are met. The continuous monitoring and evaluation of the stream of events may therefore enable the event processing system to provide realtime responses and notifications of complex queries.Type: GrantFiled: December 20, 2010Date of Patent: August 13, 2013Assignee: Microsoft CorporationInventors: Nir Nice, Daniel Sitton, Dror Kremer, Michael Feldman
-
Publication number: 20130066819Abstract: A recommendation system for optimizing content recommendation lists is disclosed. The system dynamically tracks a list interaction history of a user, which details that user's interactions with a plurality of different lists presenting different recommended items to that user. The system automatically correlates one or more list preferences with that user based on the list interaction history, and builds a recommendation list with a plurality of candidate items having different recommendation confidences. The recommendation list is built such that each candidate item with a higher recommendation confidence is prioritized over each candidate item with a lower recommendation confidence according to the one or more list preferences correlated to that user.Type: ApplicationFiled: September 9, 2011Publication date: March 14, 2013Applicant: MICROSOFT CORPORATIONInventors: Nir Nice, Dror Kremer, Daniel Sitton, Michael Feldman, Shimon Shlevich, Ori Folger
-
Publication number: 20120166447Abstract: A data set may be distributed over many data stores, and a query may be distributively evaluated by several data stores with the results combined to form a query result (e.g., utilizing a MapReduce framework). However, such architectures may violate security principles by performing sophisticated processing, including the execution of arbitrary code, on the same machines that store the data. Instead of processing queries, a data store may be configured only to receive requests specifying one or more filtering criteria, and to provide the data items satisfying the filtering criteria. A compute node may apply a query by generating a request including one o more filter criteria, providing the request to a data node, and applying the remainder of the query (including sophisticated processing, and potentially the execution of arbitrary code) to the data items provided by the data node, thereby improving the security and efficiency of query processing.Type: ApplicationFiled: December 28, 2010Publication date: June 28, 2012Applicant: Microsoft CorporationInventors: Nir Nice, Daniel Sitton, Dror Kremer, Michael Feldman
-
Publication number: 20120158783Abstract: Large-scale event processing systems are often designed to perform data mining operations by storing a large set of events in a massive database, applying complex queries to the records of the events, and generating reports and notifications. However, because such queries are performed on very large data sets, the processing of the queries often introduces a significant delay between the occurrence of the events and the reporting or notification thereof. Instead, a large-scale event processing system may be devised as a large state machine organized according to an evaluation plan, comprising a graph of event processors that, in realtime, evaluate each event in an event stream to update an internal state of the event processor, and to perform responses when response conditions are met. The continuous monitoring and evaluation of the stream of events may therefore enable the event processing system to provide realtime responses and notifications of complex queries.Type: ApplicationFiled: December 20, 2010Publication date: June 21, 2012Applicant: Microsoft CorporationInventors: Nir Nice, Daniel Sitton, Dror Kremer, Michael Feldman
-
Publication number: 20100186079Abstract: In some embodiments of the invention, techniques may make private identifiers for private network resources usable to establish connections to those private network resources from computing devices connected to an outside network. For example, when a computing device is connected to an outside network and attempting to contact a private network resource, DNS may be used to resolve a domain name for the private network resource to an IP address for an edge resource of the private network. Communications may be passed between the computing device and the edge resource according to protocols which embed the identifier originally used to identify the private network resource. The edge resource of the private network may analyze communications over the connection to determine this identifier, and use it to pass the communication to the desired private network resource.Type: ApplicationFiled: January 20, 2009Publication date: July 22, 2010Applicant: Microsoft CorporationInventors: Nir Nice, Amit Finkelstein, Dror Kremer, Noam Ben-Yochanan, Shyam Seshadri