logistic_regression.client module¶
Logistic regression client
- class logistic_regression.client.Client(config, client_name)[source]¶
Bases:
objectThe client class, representing data owning clients in the learning process.
- Parameters:
SERVER_ID – The name for the server
- SERVER_ID = 'Server'¶
- __init__(config, client_name)[source]¶
Initializes the client based on experiment config and the running client. This includes setting up communication channels and parsing the client data.
- Parameters:
config (
Config) – The experiment configuration.client_name (
str) – The name of client running the application.
- compute_gradient(coefs)[source]¶
Compute the first-order gradient of the coefficients on the data.
- Parameters:
coefs (
ndarray[tuple[Any,...],dtype[float64]]) – The coefficients at which to compute the gradient.- Return type:
ndarray[tuple[Any,...],dtype[float64]]- Returns:
The gradient vector.
- compute_hessian(coefs)[source]¶
Compute the second-order derivative of the coefficients on the data.
- Parameters:
coefs (
ndarray[tuple[Any,...],dtype[float64]]) – The coefficients at which to compute the gradient.- Return type:
ndarray[tuple[Any,...],dtype[float64]]- Returns:
The hessian matrix.
- create_communication_pool()[source]¶
Create the communication pool with the client and the server.
- Return type:
Pool- Returns:
The communication pool
- initial_model()[source]¶
Computes the initial local model.
- Return type:
ndarray[tuple[Any,...],dtype[float64]]- Returns:
The initial local model.
- load_data()[source]¶
Parse the data from the input data file and split in train data and target values.
- Return type:
tuple[ndarray[tuple[Any,...],dtype[float64]],ndarray[tuple[Any,...],dtype[bool]]]- Returns:
A tuple containing a matrix of training data and a vector of target values.
- Raises:
FileNotFoundError – if the data file does not exist.
- async preprocessing()[source]¶
Perform preprocessing on the data. Adds an intercept column if needed according to config.
- Return type:
None