# Patent

## Title
Method for determining hidden states of systems using privacy-preserving distributed data analytics

## Abstract

A method classifies data to determine hidden states of a system, by first randomly permuting the data and inserting client to generate private data. A server classifies the private data according to a hidden Markov model (HMM) to obtain permuted noisy estimates of the states and the chaff, which are returned to the client. The client then removes the chaff, inverts the permuted noisy estimates to obtain unpermuted noisy estimates of the states.

## Background
FIELD OF THE INVENTION
This invention relates generally to data processing and information security, and more particularly to classifying private client data by a server under privacy constraints to determine hidden states of a system.
BACKGROUND OF THE INVENTION
The determination of underlying, unknown or hidden states of a system from noisy observations of the system is a fundamental classification problem relevant to various system diagnostics and data analytics applications.
A classification method that addresses this problem takes as input acquired data, and outputs estimates of the underlying states, or other relevant information regarding the states.
For example, a system may be in either a normal or broken state. In general, there can be many more than two relevant states, e.g., “failure in component X, Y or Z, etc.”, and the system can switch between these states over time. These states cannot be directly observed. Instead, only noisy data, that are somehow related to the underlying states, can be acquired. Determining whether the system is operating normally or is broken is a matter of inferring the underlying state from the acquired data.
A model for the noisy data and the unknown temporally-evolving state can be a hidden Markov model (HMM). Parameters of the HMM include statistical distributions describing how the state evolves over time, and how the data are related to the underlying states. Given knowledge of these parameters, the Viterbi classification method outputs a most likely sequence of the underlying states that produced the acquired data. Lacking knowledge of the model parameters can make the design of the classification method significantly more difficult.
In a simple method, a client acquires the noisy data and has a classification method. However, when the client is resource constrained, a server can assists the client in estimating the underlying hidden states. The motivation for such a two-party coordination between the client and the server can be due to asymmetries of information or capabilities of the client and server, e.g., the server may have exclusive information about a system model, better classification methods, and better computational resources. In a case of information asymmetry, it may be that neither the client nor the server alone have full knowledge of the system parameters, and thus the coordination of the two parties may serve to jointly produce a better reconstruction than either could do alone.
Naturally, there may be privacy concerns for both the client and the server in participating in this coordination. The client desires to protect the privacy of the acquired data and the estimated states. The server desires to protect the privacy of its exclusive knowledge of the system parameters and its classifier.
SUMMARY OF THE INVENTION
The embodiments of the invention provide a method for classifying client data by a server when there are privacy concerns and possible information and capability asymmetries between the server and the client. The invention enables the server to assist the client to estimate the underlying hidden states of a system from acquired noisy data using a hidden Markov model.
The server does not need explicit knowledge of the state transition distribution. The server only needs to have either partial knowledge of the statistical distribution of the data given each possible state, or a trained classifier that estimates the hidden states. The client does not need knowledge of the data distribution under each state. The client only needs to have partial knowledge of the state transition distribution.
This method provides a reasonable degree of privacy to the client by partially concealing from the server the sequence of estimated states. The method also provides a reasonable degree of privacy to the server by concealing details of the server's knowledge of the data distributions and classification parameters from the client.



BRIEF DESCRIPTION OF THE FIGURES
FIG. 1 is a schematic of a method for classifying private private client data by server according to embodiments of the invention;
FIG. 2 is a schematic of a hidden Markov model process according to embodiments of the invention; and
FIG. 3 is a flow diagram of a system and method for determining hidden states of noisy data according to embodiments of the invention.



DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
System Overview
As shown in FIG. 1, the embodiments of our invention provide a method for classifying private client data 105 by a server 104 to estimate hidden states 203 of a system 100. A user 101 of a client 102 desires to the classify private data 103. The client transmits the private data to the server. The server returns analysis result 105 to the client. The client can then post-process the results to obtain the classification of the private data, i.e., the estimates of the hidden states 380.
As shown in FIG. 2, the classification uses a hidden Markov model (HHM). The model is used to process noisy data 201 acquired over time 202 to estimate hidden states 203. Parameters of the HMM include distributions of state transition statistics and observation statistics.
FIG. 3 shows the details of the method and system shown in FIG. 1. The client 102 acquires 310 noisy data 311. The data are randomly permuted to generate permuted data, and chaff e.g., random data, is inserted 320 in the permuted data to generate the private data 103, which are transmitted 330 to the server 104. The server classifies 340 each sample of the data independently. The server returns 350 permuted state estimates and the chaff 341 to the client.
The client inverts 360 the permutation and removes the chaff to obtain unpermuted noisy state estimates 361. Errors in the noise estimates are corrected. 370 via temporal correlations to obtain the state estimates 380.
The client data are generated according to an HMM process, and the user wants to recover the underlying states of the HMM. The server has information and computational capabilities to perform classification to assist the client in recovering the states 380. In order to preserve privacy for both parties, the client and the server coordinate in the following manner.
The client alters the data before sending the acquired data to the server to preserve privacy as follows. An ordering of the data is randomly permuted. Artificial random data, known only to the client, are randomly inserted in the permuted data as chaff.
The server applies the classifier to the received private data. The classifier acts on each data point independently, producing a most likely underlying state that generated the data point.
The client post-processes the returned results to remove the permutation and chaff and can apply any knowledge of the temporal state correlations to improve the performance of the reconstruction. For example, the results corresponding to chaff are removed and the ordering is restored by reversing the permutation. Using knowledge of the correlations of the state, the client applies temporal correlations to smooths out errors in the result.
Although the invention has been described by way of examples of preferred embodiments, it is to be understood that various other adaptations and modifications can be made within the spirit and scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.

## Claims

1. A method for classifying data to determine hidden states of a system, comprising:
randomly permuting the data, acquired from the system by a client, to generate permuted data;
inserting, by the client, chaff in the permuted data to generate private data;
transmitting, by the client to the server, the private data;
classifying, by the server, each sample of the private data independently according, to a hidden Markov model (HMM) to obtain permuted noisy estimates of the states and the chaff;
returning, by the server to the client, the permuted noisy estimates of the states and the chaff;
removing, by the client, the chaff;
inverting, by the client after removing the chaff, the permuted noisy estimates to obtain unpermuted noisy estimates of the states; and
correcting errors, by the client, to obtain estimates of the hidden states.

2. The method of claim 1, wherein server has either partial knowledge of a statistical distribution of the private data given each possible state or a trained classifier that estimates the states, and the client has partial knowledge of a state transition distribution.

3. The method of claim 1, wherein parameters of the HMM include distributions of state transition statistics and statistics of the private data.

4. The method of claim 1, wherein the chaff is random data.

5. The method of claim 1, wherein the correcting uses temporal correlations to obtain the estimates of the hidden states.