Interactive visualizations for a recurrent neural network

US10324983B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10324983-B2
Application numberUS-201816138446-A
CountryUS
Kind codeB2
Filing dateSep 21, 2018
Priority dateOct 4, 2016
Publication dateJun 18, 2019
Grant dateJun 18, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Recurrent neural networks (RNNs) can be visualized. For example, a processor can receive vectors indicating values of nodes in a gate of a RNN. The values can result from processing data at the gate during a sequence of time steps. The processor can group the nodes into clusters by applying a clustering method to the values of the nodes. The processor can generate a first graphical element visually indicating how the respective values of the nodes in a cluster changed during the sequence of time steps. The processor can also determine a reference value based on multiple values for multiple nodes in the cluster, and generate a second graphical element visually representing how the respective values of the nodes in the cluster each relate to the reference value. The processor can cause a display to output a graphical user interface having the first graphical element and the second graphical element.

First claim

Opening claim text (preview).

The invention claimed is: 1. A system comprising: a processing device; and a memory device including instructions that are executable by the processing device for causing the processing device to: receive a plurality of vectors indicating values of a plurality of nodes in a gate of a recurrent neural network resulting from processing data at the gate during a sequence of time steps, each vector among the plurality of vectors including a respective value for each respective node among the plurality of nodes at a respective time step within the sequence of time steps; group the plurality of nodes into a plurality of clusters by applying a clustering method to the values of the plurality of nodes, the clustering method involving comparing how the respective value for each respective node changed during the sequence of time steps and assigning nodes with like changes during the sequence of time steps to a common cluster among the plurality of clusters; generate a first graphical element visually indicating how the respective values of the nodes in a cluster among the plurality of clusters changed during the sequence of time steps; determine a reference value based on multiple values for multiple nodes in the cluster; generate a second graphical element visually representing how the respective values of the nodes in the cluster each relate to the reference value; and transmit a display communication to a display device for causing the display device to output a graphical user interface having the first graphical element and the second graphical element. 2. The system of claim 1 , wherein the first graphical element includes a graph visually indicating (i) the sequence of time steps along a first axis, and (ii) changes in the respective values of the nodes in the cluster during the sequence of time steps along a second axis. 3. The system of claim 1 , wherein the memory device further includes instructions that are executable by the processing device for causing the processing device to: determine a plurality of average node-values corresponding to the sequence of time steps, each average node-value being determined by averaging the values in a respective vector among the plurality of vectors for a respective time step among the sequence of time steps; and incorporate a visual element into the graphical user interface that visually indicates the plurality of average node-values during the sequence of time steps. 4. The system of claim 1 , wherein the second graphical element is a cluster map with cells, each cell in the cluster map corresponding to a respective node in the cluster and being color coded to represent a difference between (i) a particular value associated with the respective node, and (ii) the reference value. 5. The system of claim 4 , wherein the reference value is an average of all of the values for all of the nodes in the cluster. 6. The system of claim 4 , wherein the memory device further includes instructions that are executable by the processing device for causing the processing device to: detect a user interaction with one or more cells in the cluster map; and in response to detecting the user interaction with the one or more cells, visually highlight one or more portions of the first graphical element associated with one or more nodes that correspond to the one or more cells. 7. The system of claim 1 , wherein the memory device further includes instructions that are executable by the processing device for causing the processing device to: detect a user interaction with a portion of the first graphical element corresponding to a particular node in the cluster; and in response to detecting the user interaction with the portion of the first graphical element corresponding to the particular node, visually display a window including additional information about the particular node. 8. The system of claim 1 , wherein the gate is a forget gate, an input gate, or an output gate of the recurrent neural network. 9. The system of claim 1 , wherein the gate is a first gate in the recurrent neural network, the graphical user interface includes a graphical object corresponding to a second gate in the recurrent neural network that is different from the first gate, and the memory device further includes instructions that are executable by the processing device for causing the processing device to: detect an interaction with the graphical object; in response to detecting the interaction with the graphical object, obtain another plurality of vectors indicating other values of another plurality of nodes in the second gate of the recurrent neural network resulting from processing data at the second gate during the sequence of time steps; and update the graphical user interface to include information derived from the other values in the other plurality of vectors. 10. The system of claim 1 , wherein the first graphical element includes a plurality of charts, each chart among the plurality of charts corresponding to a respective cluster among the plurality of clusters and visually indicating how a set of values for a set of nodes in the respective cluster changed during the sequence of time steps. 11. The system of claim 10 , wherein the second graphical element includes a plurality of cluster maps, each cluster map among the plurality of cluster maps corresponding to a respective chart among the plurality of charts and the respective cluster associated with the respective chart, and each cluster map visually indicating how the set of values for the set of nodes in the respective cluster each relate to a respective reference-value obtained using at least two values for at least two nodes in the respective cluster. 12. A non-transitory computer-readable medium comprising program code that is executable by a processing device for causing the processing device to: receive a plurality of vectors indicating values of a plurality of nodes in a gate of a recurrent neural network resulting from processing data at the gate during a sequence of time steps, each vector among the plurality of vectors including a respective value for each respective node among the plurality of nodes at a respective time step within the sequence of time steps; group the plurality of nodes into a plurality of clusters by applying a clustering method to the values of the plurality of nodes, the clustering method involving comparing how the respective value for each respective node changed during the sequence of time steps and assigning nodes with like changes during the sequence of time steps to a common cluster among the plurality of clusters; generate a first graphical element visually indicating how the respective values of the nodes in a cluster among the plurality of clusters changed during the sequence of time steps; determine a reference value based on multiple values for multiple nodes in the cluster; generate a second graphical element visually representing how the respective values of the nodes in the cluster each relate to the reference value; and transmit a display communication to a display device for causing the display device to output a graphical user interface having the first graphical element and the second graphical element. 13. The non-transitory computer-readable medium of claim 12 , wherein the first graphical element includes a graph visually indicating (i) the sequence of time steps along a first axis, and (ii) changes in the respective values of the nodes in the cluster during the sequence of time steps along a second axis. 14. The non-transitory computer-readable medium of claim 12 , wherein the second graphical element is a

Assignees

Inventors

Classifications

  • Recurrent networks, e.g. Hopfield networks · CPC title

  • with fixed number of clusters, e.g. K-means clustering · CPC title

  • characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU] · CPC title

  • Architecture, e.g. interconnection topology · CPC title

  • Selection of displayed objects or displayed text elements (G06F3/0482 takes precedence) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10324983B2 cover?
Recurrent neural networks (RNNs) can be visualized. For example, a processor can receive vectors indicating values of nodes in a gate of a RNN. The values can result from processing data at the gate during a sequence of time steps. The processor can group the nodes into clusters by applying a clustering method to the values of the nodes. The processor can generate a first graphical element visu…
Who is the assignee on this patent?
Sas Inst Inc, Univ North Carolina State
What technology area does this patent fall under?
Primary CPC classification G06F16/904. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 18 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).