Patents Assigned to SAS Institute
-
Patent number: 10467344Abstract: A human language analyzer receives, at the human language analyzer, text data representing information in a human language. The human language analyzer receives a computer command for identifying a text data component of the text data. The computer command comprises at least two requirements for the text data component. The human language analyzer, responsive to identifying that the first requirement and the second requirement is met, locates the text data component from one of two clauses. A clause analyzer receives a clause request to locate clauses within text data representing information in a human language. The clause analyzer receives, responsive to a dependency request, token information in a token data set. The clause analyzer determines a location for each clause of the sentence portion in a hierarchy of clauses. The clause analyzer generates and outputs a new data set based on the token data set and the hierarchy of clauses.Type: GrantFiled: April 10, 2019Date of Patent: November 5, 2019Assignee: SAS Institute Inc.Inventors: Teresa S. Jade, Wei-shan Chiang, Aaron Douglas Arthur, Seng Lee, Qin Yang, Xu Yang
-
Patent number: 10459849Abstract: A computing device receives, at a scheduler of the computing device, a first write request from a first thread of a plurality of threads. The scheduler schedules access for the plurality of threads across a boundary of an access-controlled region in a memory of the computing device. The computing device determines that a second memory region in the access-controlled region is allocated for storing data copied from a first memory region. During copying, to the second memory region, the data copied from the first memory region, the computing device permits scheduling, by the scheduler, an operation to read from the first memory region for any read requests from the plurality of threads during the copying; and denies scheduling, by the scheduler, an operation to write to the first memory region for any subsequent write requests from the plurality of threads during the copying.Type: GrantFiled: December 18, 2018Date of Patent: October 29, 2019Assignee: SAS Institute Inc.Inventors: Charles S. Shorb, James P. Carroll
-
Publication number: 20190317952Abstract: A hierarchical structure (e.g., a hierarchy) for use in hierarchical analysis (e.g., hierarchical forecasting) of timestamped data can be automatically generated. This automated approach to determining a hierarchical structure involves identifying attributes of the timestamped data, clustering the timestamped data to select attributes for the hierarchy, ordering the attributes to achieve a recommended hierarchical order, and optionally modifying the hierarchical order based on user input. Through the approach disclosed herein, a hierarchy can be generated that is designed to perform well under hierarchical models. This recommended hierarchy for use in hierarchical analysis may be agnostic to any planned hierarchy provided by or used by a user to otherwise interpret the timestamped data.Type: ApplicationFiled: April 9, 2019Publication date: October 17, 2019Applicant: SAS Institute Inc.Inventors: Yue Li, Neha Bindumadhav Kulkarni, Yung-Hsin Chien, Sagar Arun Mainkar, Bhupendra Suresh Bendale
-
Publication number: 20190310891Abstract: Exemplary embodiments relate to systems for building a model of changes to data items when information the data items is limited or not directly observed. Exemplary embodiments allow properties of the data items to be inferred using a single data structure and creates a highly granular log of changes to the data item. Using this data structure, the time-varying nature of changes to the data item can be determined. The data structure may be used to identify characteristics associated with a regularly-performed action, to examine how adherence to the action affects a system, and to identify outcomes of non-adherence. Fungible data items may be mapped to a remediable condition or remedy class. This may be accomplished by automatically deriving conditions and remedial information from available information, matching the conditions to remedial classes or types via a customizable mapping, and then calculating adherence for the condition on the available information.Type: ApplicationFiled: October 31, 2018Publication date: October 10, 2019Applicant: SAS Institute Inc.Inventors: Ruth Ellen Baldasaro, Jennifer Lee Hargrove, Edward Lew Rowe, Emily Louise Chapman-McQuiston
-
Patent number: 10423469Abstract: A computing device manages a router to route events between a plurality of computing device based on a manager configuration file. A manager engine is instantiated based on a manager engine definition and instantiates a manager ESPE based on a created manager ESP model. A router configuration file is created based on mapping information read from the manager configuration file that describes connectivity between an event publishing source and a source window of the manager ESPE. A router engine is instantiated based on the created router configuration file. A connector is started to receive an event based on the router configuration file. The event is received in the source window of the manager ESPE defined by the manager ESP model and processed based on the manager ESP model. A third computing device is selected by the router engine. The processed event is published to the third computing device.Type: GrantFiled: October 18, 2018Date of Patent: September 24, 2019Assignee: SAS Institute Inc.Inventors: Scott J. Kolodzieski, Vincent L. Deters, Shu Huang, Robert A. Levey
-
Publication number: 20190286440Abstract: In some examples, computing devices can partition timestamped data into groups. The computing devices can then distribute the timestamped data based on the groups. The computing devices can also obtain copies of a script configured to process the timestamped data, such that each computing device receives a copy of the script. The computing devices can determine one or more code segments associated with the groups based on content of the script. The one or more code segments can be in one or more programming languages that are different than a programming language of the script. The computing devices can then run the copies of the script to process the timestamped data within the groups. This may involve interacting with one or more job servers configured to run the one or more code segments associated with the groups.Type: ApplicationFiled: May 22, 2019Publication date: September 19, 2019Applicant: SAS Institute Inc.Inventors: Michael James Leonard, Thiago Santos Quirino, Edward Tilden Blair, Jennifer Leigh Sloan Beeman, David Bruce Elsheimer, Javier Delgado
-
Patent number: 10386271Abstract: The computing device receives information representing a design of an experiment. The design of the experiment comprises a plurality of test cases. Each element of a test case of the design is a test condition for testing one of factors for the experiment. The computing device generates a graphical representation based on the information. The graphical representation comprises a plurality of axes for respective ones of factors used in a fractal sequence. Each of the plurality of axes has two endpoints comprising a first endpoint that corresponds to a first level of a respective factor, and a second endpoint that corresponds to a second level of the respective factor. The computing device plots, on the graphical representation, data corresponding to one or more test cases of the plurality of test cases. The computing device displays an interactive graphical user interface comprising the graphical representation with the plotted data.Type: GrantFiled: January 4, 2019Date of Patent: August 20, 2019Assignee: SAS Institute Inc.Inventors: Caleb Bridges King, Joseph Albert Morgan, Ryan Adam Lekivetz
-
Publication number: 20190250569Abstract: Machines can be controlled using advanced control systems that implement an automated version of singular spectrum analysis (SSA). For example, a control system can perform SSA on a time series having one or more time-dependent variables by: generating a trajectory matrix from the time series, performing singular value decomposition on the trajectory matrix to determine elementary matrices; and categorizing the elementary matrices into groups. The elementary matrices can be automatically categorized into the groups by: generating one or more w-correlation matrices based on spectral components associated with the time series, determining w-correlation values based on the one or more w-correlation matrices; categorizing the w-correlation values into a predefined number of w-correlation sets, and forming the groups based on the predefined number of w-correlation sets. The control system can then generate a predictive forecast using the groups and control operation of a machine using the predictive forecast.Type: ApplicationFiled: April 18, 2019Publication date: August 15, 2019Applicant: SAS Institute Inc.Inventors: Michael James Leonard, David Bruce Elsheimer, Yuelei Sui
-
Publication number: 20190243865Abstract: An apparatus includes a processor to: receive multiple normalized metadata portions based on metadata portions originating from vendor devices storing data sets of a distributed online library system; compare the multiple pieces of information between pairs of normalized metadata portions to identify at least one pair of identical portions of data; analyze the pieces of information of normalized metadata portions corresponding to an identified pair of identical portions of data to determine if there is a dependency relationship between each portion of data of the pair and another identical portion of data stored within another device; and in response to there being such a pair of dependency relationships, generate a visualization that includes a combination of graphical elements depicting the pair of dependency relationships, and transmit the visualization to the client device to enable a visual presentation of the visualization.Type: ApplicationFiled: December 29, 2018Publication date: August 8, 2019Applicant: SAS Institute Inc.Inventors: Nancy Anne RAUSCH, Christopher L. REPLOGLE, III, Elizabeth Jane MCINTOSH
-
Patent number: 10360500Abstract: A computing system provides distributed training of a neural network model. Explore phase options, exploit phase options, a subset of a training dataset, and a validation dataset are distributed to a plurality of computing devices. (a) Execution of the model by the computing devices is requested using the subset stored at each computing device. (b) A first result of the execution is received from a computing device. (c) Next configuration data for the neural network model is selected based on the first result and distributed to the computing device. (a) to (c) is repeated until an exploration phase is complete. (d) Execution of the neural network model is requested. (e) A second result is received. (f) Next configuration data is computed based on the second result and distributed to the computing device. (d) to (f) is repeated until an exploitation phase is complete. The next configuration data defines the model.Type: GrantFiled: April 5, 2018Date of Patent: July 23, 2019Assignee: SAS Institute Inc.Inventors: Mustafa Onur Kabul, Lawrence E. Lewis
-
Patent number: 10354204Abstract: A computing device automatically classifies an observation vector. A label set defines permissible values for a target variable. Supervised data includes a labeled subset that has one of the permissible values. A converged classification matrix is computed based on the supervised data and an unlabeled subset using a prior class distribution matrix that includes a row for each observation vector. Each column is associated with a single permissible value of the label set. A cell value in each column is a likelihood that each associated permissible value of the label set occurs based on prior class distribution information. The value of the target variable is selected using the converged classification matrix. A weighted classification label distribution matrix is computed from the converged classification matrix. The value of the target variable for each observation vector of the plurality of observation vectors is output to a labeled dataset.Type: GrantFiled: October 17, 2018Date of Patent: July 16, 2019Assignee: SAS Institute Inc.Inventors: Xu Chen, Saratendu Sethi
-
Patent number: 10346142Abstract: A computing device automatically generates an event stream processing (ESP) model to receive and process events. A mapping dataset is created from configuration and device information that includes a measurement processing description for a measurement and a measurement identifier that uniquely identifies a sensor and a device to which the sensor is associated and describe a computational process to be performed by an ESP window. An update macro is executed with an update template to create update code to parse the measurement identifier and a measurement value from the event block object. A transpose macro is executed with a transpose template to create transpose code to perform the described computational process. An ESP model is created that includes the created update code, a source window defined to execute the created update code, the created transpose code, and a transpose window defined to execute the created transpose code.Type: GrantFiled: December 12, 2018Date of Patent: July 9, 2019Assignee: SAS Institute Inc.Inventors: Charles Michael Cavalier, Steven William Enck, Sarah Jeanette Gauby
-
Patent number: 10338993Abstract: The computing device generates a test suite that provides test cases for testing a system. A test condition in the test suite comprises one of different levels representing different options assigned to a categorical factor for the system. The computing device receives input weights for one or more levels of the test suite. The computing device receives a failure indication indicating a test conducted according to the test cases failed. The computing device determines a plurality of cause indicators based on the input weights and any commonalities between test conditions of any failed test cases of the test suite that resulted in a respective failed test outcome. The computing device identifies, based on comparing the plurality of cause indicators, a most likely potential cause for a potential failure of the system. The computing device outputs an indication of the most likely potential cause for the potential failure of the system.Type: GrantFiled: October 8, 2018Date of Patent: July 2, 2019Assignee: SAS Institute Inc.Inventors: Ryan Adam Lekivetz, Joseph Albert Morgan, Bradley Allen Jones
-
Publication number: 20190197021Abstract: An apparatus of includes a processor component to: transmit node device identifiers to multiple node devices to define an ordering thereamong and among subsets of multiple blocks of data distributed thereamong; receive sizes of the subsets from the multiple node devices; derive block exchanges among the multiple node device based on the sizes and a minimum size imposed on data transmissions to storage device(s); and transmit a block exchange vector that describes the block exchanges to the multiple node devices, wherein: the subsets remain distributed among a reduced number of the multiple node devices following the block exchanges; at least all node devices of the reduced number but one stores an amount of the blocks of data exceeding the minimum size; and the block exchanges are all lower-order to higher-order node device transfers, or all higher-order to lower-order node device transfers.Type: ApplicationFiled: December 27, 2018Publication date: June 27, 2019Applicant: SAS Institute Inc.Inventors: Brian Payton Bowman, Jeff Ira Cleveland, III
-
Publication number: 20190156153Abstract: Machine-learning models and behavior can be visualized. For example, a machine-learning model can be taught using a teaching dataset. A test input can then be provided to the machine-learning model to determine a baseline confidence-score of the machine-learning model. Next, weights for elements in the teaching dataset can be determined. An analysis dataset can be generated that includes a subset of the elements that have corresponding weights above a predefined threshold. For each overlapping element in both the analysis dataset and the test input, (i) a modified version of the test input can be generated that excludes the overlapping element, and (ii) the modified version of the test input can be provided to the machine-learning model to determine an effect of the overlapping element on the baseline confidence-score. A graphical user interface can be generated that visually depicts the test input and various elements' effects on the baseline confidence-score.Type: ApplicationFiled: April 13, 2018Publication date: May 23, 2019Applicant: SAS Institute Inc.Inventors: AYSU EZEN CAN, NING JIN, ETHEM F. CAN, XIANGQIAN HU, SARATENDU SETHI
-
Publication number: 20190146997Abstract: An apparatus includes a processor to: receive a request to provide, within a specified federated area, a set of objects that enable a performance of a job flow to perform multiple tasks of an analysis based on data table(s) and formulae of a spreadsheet data structure, wherein the set of objects includes at least one task routine to perform a task of the multiple tasks; correlate each indication of data required as input or output to at least a subpart of a data table; identify data dependencies and determine an order of performance among the multiple tasks based on the formulae; generate, within the specified federated area, a job flow definition that specifies the order of performance of the multiple tasks; and for each task routine of the at least one task routine, generate, within the specified federated area, a corresponding macro data structure.Type: ApplicationFiled: December 18, 2018Publication date: May 16, 2019Applicant: SAS Institute Inc.Inventors: Minna Jin, Huina Chen, Juan Du, Henry Gabriel Victor Bequet
-
Publication number: 20190146998Abstract: An apparatus includes a processor to: receive a request to generate a DAG of a job flow of multiple tasks of an analysis based on data table(s) and formulae of a spreadsheet data structure; correlate each indication of data required as input or output to at least a subpart of a data table; identify data dependencies and determine an order of performance among the multiple tasks based on the formulae; generate, within the specified federated area, a job flow definition that specifies the order of performance of the multiple tasks; for each task of the multiple tasks, generate, within the specified federated area, a corresponding macro data structure of multiple macro data structures; and generate the requested visualization based on the job flow definition and the multiple macro data structures.Type: ApplicationFiled: December 20, 2018Publication date: May 16, 2019Applicant: SAS Institute Inc.Inventors: Minna Jin, Huina Chen, Juan Du, Henry Gabriel Victor Bequet
-
Publication number: 20190146849Abstract: Timestamped data can be read in parallel by multiple grid-computing devices. The timestamped data, which can be partitioned into groups based on time series criteria, can be deterministically distributed across the multiple grid-computing devices based on the time series criteria. Each grid-computing device can sort and accumulate the timestamped data into a time series for each group it receives and then process the resultant time series based on a previously distributed script, which can be compiled at each grid-computing device, to generate output data. The grid-computing devices can write their output data in parallel. As a result, vast amounts of timestamped data can be easily analyzed across an easily expandable number of grid-computing devices with reduced computational expense.Type: ApplicationFiled: November 16, 2018Publication date: May 16, 2019Applicant: SAS Institute Inc.Inventors: Michael James Leonard, Thiago Santos Quirino, Edward Tilden Blair, Jennifer Leigh Sloan Beeman, David Bruce Elsheimer
-
Publication number: 20190138555Abstract: An apparatus includes a processor to: receive a request for a federated area (FA) package including a FA storing a job flow definition; retrieve an instance log of a past performance that includes identifiers of the job flow definition, a data object employed as an input to a past performance, and a task routine executed in the past performance; employ an identifier to identify an FA storing a data object employed as an input; employ an identifier to identify an FA storing an executed task routine; generate the FA package to include the FAs storing the job flow definition, the instance log, the data object and the task routine, and include a copy of each in its respective federated area within the FA package; include an integrity value for each FA in the FA package; and transmit the FA package to the requesting device.Type: ApplicationFiled: December 29, 2018Publication date: May 9, 2019Applicant: SAS Institute Inc.Inventors: Henry Gabriel Victor Bequet, Eric Jian Yang, Kais Arfaoui, Ronald Earl Stogner, Partha Dutta
-
Publication number: 20190129888Abstract: An apparatus includes a processor component to: transmit node device identifiers to multiple node devices to define an ordering thereamong; following block exchanges redistributing the subsets among a reduced number of node devices, receive sizes of blocks or sub-blocks of data within each subset from the reduced number of node devices; based on the received sizes, generate map data organized to define an ordering among the blocks stemming from the ordering among the multiple node devices; determine whether the total size of the map data and metadata, together, exceeds a minimum size for data transmissions to storage device(s); and in response to the total size exceeding the minimum size, form the map data and metadata into segment(s) that each fit the minimum size and a maximum size, and transmit the segment(s) at least partially in parallel with other segments of the blocks transmitted by the reduced number of node devices.Type: ApplicationFiled: December 27, 2018Publication date: May 2, 2019Applicant: SAS Institute Inc.Inventors: Brian Payton Bowman, Jeff Ira Cleveland, III