Patents by Inventor Stuart Wray

Stuart Wray 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: 20230421528
    Abstract: Techniques are described herein for using machine learning to learn vector representations of DNS requests such that the resulting embeddings represent the semantics of the DNS requests as a whole. Techniques described herein perform pre-processing of tokenized DNS request strings in which hashes, which are long and relatively random strings of characters, are detected in DNS request strings and each detected hash token is replaced with a placeholder token. A vectorizing ML model is trained using the pre-processed training dataset in which hash tokens have been replaced. Embeddings for the DNS tokens are derived from an intermediate layer of the vectorizing ML model. The encoding application creates final vector representations for each DNS request string by generating a weighted summation of the embeddings of all of the tokens in the DNS request string. Because of hash replacement, the resulting DNS request embeddings reflect semantics of the hashes as a group.
    Type: Application
    Filed: August 24, 2023
    Publication date: December 28, 2023
    Inventors: Renata Khasanova, Felix Schmidt, Stuart Wray, Craig Schelp, Nipun Agarwal, Matteo Casserini
  • Patent number: 11784964
    Abstract: Techniques are described herein for using machine learning to learn vector representations of DNS requests such that the resulting embeddings represent the semantics of the DNS requests as a whole. Techniques described herein perform pre-processing of tokenized DNS request strings in which hashes, which are long and relatively random strings of characters, are detected in DNS request strings and each detected hash token is replaced with a placeholder token. A vectorizing ML model is trained using the pre-processed training dataset in which hash tokens have been replaced. Embeddings for the DNS tokens are derived from an intermediate layer of the vectorizing ML model. The encoding application creates final vector representations for each DNS request string by generating a weighted summation of the embeddings of all of the tokens in the DNS request string. Because of hash replacement, the resulting DNS request embeddings reflect semantics of the hashes as a group.
    Type: Grant
    Filed: March 10, 2021
    Date of Patent: October 10, 2023
    Assignee: Oracle International Corporation
    Inventors: Renata Khasanova, Felix Schmidt, Stuart Wray, Craig Schelp, Nipun Agarwal, Matteo Casserini
  • Patent number: 11451565
    Abstract: Techniques are provided herein for contextual embedding of features of operational logs or network traffic for anomaly detection based on sequence prediction. In an embodiment, a computer has a predictive recurrent neural network (RNN) that detects an anomalous network flow. In an embodiment, an RNN contextually transcodes sparse feature vectors that represent log messages into dense feature vectors that may be predictive or used to generate predictive vectors. In an embodiment, graph embedding improves feature embedding of log traces. In an embodiment, a computer detects and feature-encodes independent traces from related log messages. These techniques may detect malicious activity by anomaly analysis of context-aware feature embeddings of network packet flows, log messages, and/or log traces.
    Type: Grant
    Filed: September 5, 2018
    Date of Patent: September 20, 2022
    Assignee: Oracle International Corporation
    Inventors: Guang-Tong Zhou, Hossein Hajimirsadeghi, Andrew Brownsword, Stuart Wray, Craig Schelp, Rod Reddekopp, Felix Schmidt
  • Publication number: 20220294757
    Abstract: Techniques are described herein for using machine learning to learn vector representations of DNS requests such that the resulting embeddings represent the semantics of the DNS requests as a whole. Techniques described herein perform pre-processing of tokenized DNS request strings in which hashes, which are long and relatively random strings of characters, are detected in DNS request strings and each detected hash token is replaced with a placeholder token. A vectorizing ML model is trained using the pre-processed training dataset in which hash tokens have been replaced. Embeddings for the DNS tokens are derived from an intermediate layer of the vectorizing ML model. The encoding application creates final vector representations for each DNS request string by generating a weighted summation of the embeddings of all of the tokens in the DNS request string. Because of hash replacement, the resulting DNS request embeddings reflect semantics of the hashes as a group.
    Type: Application
    Filed: March 10, 2021
    Publication date: September 15, 2022
    Inventors: Renata Khasanova, Felix Schmidt, Stuart Wray, Craig Schelp, Nipun Agarwal, Matteo Casserini
  • Publication number: 20220027777
    Abstract: Techniques are described that extend supervised machine-learning algorithms for use with semi-supervised training. Random labels are assigned to unlabeled training data, and the data is split into k partitions. During a label-training iteration, each of these k partitions is combined with the labeled training data, and the combination is used train a single instance of the machine-learning model. Each of these trained models are then used to predict labels for data points in the k?1 partitions of previously-unlabeled training data that were not used to train of the model. Thus, every data point in the previously-unlabeled training data obtains k?1 predicted labels. For each data point, these labels are aggregated to obtain a composite label prediction for the data point. After the labels are determined via one or more label-training iterations, a machine-learning model is trained on data with the resulting composite label predictions and on the labeled data set.
    Type: Application
    Filed: July 22, 2020
    Publication date: January 27, 2022
    Inventors: Felix Schmidt, Yasha Pushak, Stuart Wray
  • Patent number: 11036561
    Abstract: Embodiments monitor statistics from groups of devices and generate an alarm upon detecting a utilization imbalance that is beyond a threshold. Particular balance statistics are periodically sampled, over a timeframe, for a group of devices configured to have balanced utilization. The devices are ranked at every data collection timestamp based on the gathered device statistics. The numbers of times each device appears within each rank over the timeframe are tallied. The device/rank summations are collectively used as a probability distribution representing the probability of each device being ranked at each of the rankings in the future. Based on this probability distribution, an entropy value that represents a summary of the imbalance of the group of devices over the timeframe is derived. An imbalance alert is generated when one or more entropy values for a group of devices shows an imbalanced utilization of the devices going beyond an identified imbalance threshold.
    Type: Grant
    Filed: July 24, 2018
    Date of Patent: June 15, 2021
    Assignee: Oracle International Corporation
    Inventors: Stuart Wray, Felix Schmidt, Craig Robert Schelp, Manel Fernandez Gomez, Nipun Agarwal
  • Patent number: 10917203
    Abstract: Embodiments use Bayesian techniques to efficiently estimate the bit error rates (BERs) of cables in a computer network at a customizable level of confidence. Specifically, a plurality of probability records are maintained for a given cable in a computer system, where each probability record is associated with a hypothetical BER for the cable, and reflects a probability that the cable has the associated hypothetical BER. At configurable time intervals, the probability records are updated using statistics gathered from a switch port connected to the cable. In order to estimate the BER of the cable at a given confidence level, embodiments determine which probability record is associated with a probability mass that indicates the confidence level. The estimate for the cable BER is the hypothetical BER that is associated with the indicated probability mass. Embodiments store the estimate in memory and utilize the estimate to aid in maintaining the computer system.
    Type: Grant
    Filed: May 17, 2019
    Date of Patent: February 9, 2021
    Assignee: Oracle International Corporation
    Inventors: Stuart Wray, Felix Schmidt, Craig Schelp, Pravin Shinde, Akhilesh Singhania, Nipun Agarwal
  • Publication number: 20200366428
    Abstract: Embodiments use Bayesian techniques to efficiently estimate the bit error rates (BERs) of cables in a computer network at a customizable level of confidence. Specifically, a plurality of probability records are maintained for a given cable in a computer system, where each probability record is associated with a hypothetical BER for the cable, and reflects a probability that the cable has the associated hypothetical BER. At configurable time intervals, the probability records are updated using statistics gathered from a switch port connected to the cable. In order to estimate the BER of the cable at a given confidence level, embodiments determine which probability record is associated with a probability mass that indicates the confidence level. The estimate for the cable BER is the hypothetical BER that is associated with the indicated probability mass. Embodiments store the estimate in memory and utilize the estimate to aid in maintaining the computer system.
    Type: Application
    Filed: May 17, 2019
    Publication date: November 19, 2020
    Inventors: STUART WRAY, FELIX SCHMIDT, CRAIG SCHELP, PRAVIN SHINDE, AKHILESH SINGHANIA, NIPUN AGARWAL
  • Patent number: 10768982
    Abstract: Herein are techniques for analysis of data streams. In an embodiment, a computer associates each software actor with data streams. Each software actor has its own backlog queue of data to analyze. In response to receiving some stream content and based on the received stream content, data is distributed to some software actors. In response to determining that the data satisfies completeness criteria of a particular software actor, an indication of the data is appended onto the backlog queue of the particular software actor. The particular software actor is reset to an initial state by loading an execution snapshot of a previous initial execution of an embedded virtual machine. Based on the particular software actor, execution of the execution snapshot of the previous initial execution is resumed to dequeue and process the indication of the data from the backlog queue of the particular software actor to generate a result.
    Type: Grant
    Filed: September 19, 2018
    Date of Patent: September 8, 2020
    Assignee: Oracle International Corporation
    Inventors: Andrew Brownsword, Tayler Hetherington, Pavan Chandrashekar, Akhilesh Singhania, Stuart Wray, Pravin Shinde, Felix Schmidt, Craig Schelp, Onur Kocberber, Juan Fernandez Peinador, Rod Reddekopp, Manel Fernandez Gomez, Nipun Agarwal
  • Publication number: 20200089529
    Abstract: Herein are techniques for analysis of data streams. In an embodiment, a computer associates each software actor with data streams. Each software actor has its own backlog queue of data to analyze. In response to receiving some stream content and based on the received stream content, data is distributed to some software actors. In response to determining that the data satisfies completeness criteria of a particular software actor, an indication of the data is appended onto the backlog queue of the particular software actor. The particular software actor is reset to an initial state by loading an execution snapshot of a previous initial execution of an embedded virtual machine. Based on the particular software actor, execution of the execution snapshot of the previous initial execution is resumed to dequeue and process the indication of the data from the backlog queue of the particular software actor to generate a result.
    Type: Application
    Filed: September 19, 2018
    Publication date: March 19, 2020
    Inventors: ANDREW BROWNSWORD, TAYLER HETHERINGTON, PAVAN CHANDRASHEKAR, AKHILESH SINGHANIA, STUART WRAY, PRAVIN SHINDE, FELIX SCHMIDT, CRAIG SCHELP, ONUR KOCBERBER, JUAN FERNANDEZ PEINADOR, ROD REDDEKOPP, MANEL FERNANDEZ GOMEZ, NIPUN AGARWAL
  • Publication number: 20200076842
    Abstract: Techniques are provided herein for contextual embedding of features of operational logs or network traffic for anomaly detection based on sequence prediction. In an embodiment, a computer has a predictive recurrent neural network (RNN) that detects an anomalous network flow. In an embodiment, an RNN contextually transcodes sparse feature vectors that represent log messages into dense feature vectors that may be predictive or used to generate predictive vectors. In an embodiment, graph embedding improves feature embedding of log traces. In an embodiment, a computer detects and feature-encodes independent traces from related log messages. These techniques may detect malicious activity by anomaly analysis of context-aware feature embeddings of network packet flows, log messages, and/or log traces.
    Type: Application
    Filed: September 5, 2018
    Publication date: March 5, 2020
    Inventors: GUANG-TONG ZHOU, HOSSEIN HAJIMIRSADEGHI, ANDREW BROWNSWORD, STUART WRAY, CRAIG SCHELP, ROD REDDEKOPP, FELIX SCHMIDT
  • Publication number: 20200034208
    Abstract: Embodiments monitor statistics from groups of devices and generate an alarm upon detecting a utilization imbalance that is beyond a threshold. Particular balance statistics are periodically sampled, over a timeframe, for a group of devices configured to have balanced utilization. The devices are ranked at every data collection timestamp based on the gathered device statistics. The numbers of times each device appears within each rank over the timeframe are tallied. The device/rank summations are collectively used as a probability distribution representing the probability of each device being ranked at each of the rankings in the future. Based on this probability distribution, an entropy value that represents a summary of the imbalance of the group of devices over the timeframe is derived. An imbalance alert is generated when one or more entropy values for a group of devices shows an imbalanced utilization of the devices going beyond an identified imbalance threshold.
    Type: Application
    Filed: July 24, 2018
    Publication date: January 30, 2020
    Inventors: Stuart Wray, Felix Schmidt, Craig Robert Schelp, Manel Fernandez Gomez, Nipun Agarwal
  • Publication number: 20060239189
    Abstract: Described herein is a method of controlling call admission for packet switched networks, each network including at least two local area networks (50, 60) and a connecting network (70). The method comprises determining success rates of previous calls from a first local area network to a second local area network and deciding to drop the call attempt based on the success rates of previous calls. In one embodiment, the current packet loss rate for calls from the first local area network to the second local area network is also determined, and the decision to drop the call attempt is based on that current packet loss rate. Additionally, the decision to drop the call attempt may be based on both the current packet loss rate and the success rates of previous calls.
    Type: Application
    Filed: February 25, 2005
    Publication date: October 26, 2006
    Applicant: BAE SYSTEMS PLC
    Inventors: Stuart Wray, Clive Ellis Jones, Stephen Jenner, Robert Salter
  • Publication number: 20060193255
    Abstract: Described herein is a method of controlling calls for packet switched networks, each network including at least two local area networks (50, 60) and a connecting network (70). The method comprises the steps of determining an acceptable packet loss rate for a call to be established between two of the local area networks, comparing actual packet loss rate to the acceptable packet loss rate, and dropping the call if the actual packet loss rate is greater than the acceptable packet loss rate. determining for how long a period the actual packet loss rate has been happening and utilising that period in deciding to drop the call. A recorded announcement may be played when the call is to be dropped. Alternatively, the priority of the transmission of the continuous stream of data can be changed when the actual packet loss rate is not acceptable and the above steps are repeated. Ideally, data relating to dropped calls is stored for future use.
    Type: Application
    Filed: February 25, 2005
    Publication date: August 31, 2006
    Applicant: BAE SYSTEMS PLC
    Inventors: Stuart Wray, Clive Jones, Stephen Jenner, Robert Salter
  • Publication number: 20060174112
    Abstract: A method of improving the security of computer communications over a connecting network comprising the steps, carried out before a data packet enters the connecting network from a user domain, of tagging the data packet from a user domain with a security level marking and appending the tagged data packet with a string formed from a check-sum made over the data packet and security level marking tag to form a datagram. The integrity of the data is protected and the method can be used to prevent the mis-routing of data packets to user domains of lower security classification.
    Type: Application
    Filed: February 23, 2005
    Publication date: August 3, 2006
    Applicant: BAE Systems (Defence Systems) Limited
    Inventor: Stuart Wray
  • Publication number: 20060146785
    Abstract: Described herein is a method of controlling call admission for packet switched networks, each network including at least two local area networks (50, 60) and a connecting network (70). The method comprises transmitting a burst 5 of trial data of the same size as the packet to be transmitted from a first node (52, 54) in a first local area network (50) to a second node (62, 64) in a second local area network (60) via the connecting network (70). The connecting network (70) comprises a plurality of routing nodes (72, 74, 76, 78, 80) for routing the burst of trial data of the same size as the packet to be transmitted from a first node (52, 54) in a first local area network (50) to second node (62, 64) in a second local area network (60) via the connecting network (70). The connecting network (70) comprises a plurality of routing nodes (72, 74, 76, 78, 80) for routing the burst of trial data to the second node in the second local area network along a particular path.
    Type: Application
    Filed: February 25, 2005
    Publication date: July 6, 2006
    Applicant: BAE SYSTEMS PLC
    Inventors: Stuart Wray, Clive Jones, Stephen Jenner, Robert Salter