<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _normalize_correlation_data(self, corr_data, norm_unit):
 """Normalize the correlation data if necessary. Fisher-transform and then z-score the data for every norm_unit samples if norm_unit > 1. Parameters corr_data: the correlation data in shape [num_samples, num_processed_voxels, num_voxels] norm_unit: int the number of samples on which the normalization is performed Returns ------- normalized_corr_data: the normalized correlation data in shape [num_samples, num_voxels, num_voxels] """

        # normalize if necessary
        if norm_unit > 1:
            num_samples = len(corr_data)
            [_, d2, d3] = corr_data.shape
            second_dimension = d2 * d3
            # this is a shallow copy
            normalized_corr_data = corr_data.reshape(1,
                                                     num_samples,
                                                     second_dimension)
            fcma_extension.normalization(normalized_corr_data, norm_unit)
            normalized_corr_data = normalized_corr_data.reshape(num_samples,
                                                                d2, d3)
            logger.debug(
                'normalization done'
            )
        else:
            normalized_corr_data = corr_data
        return normalized_corr_data