diff --git a/.gitignore b/.gitignore index ea4ebccfd04c78cfb50981a5529ddec98aa1cd4c..88f397f48ed85f39710d3b0349bb2d8b05d4a8ce 100644 --- a/.gitignore +++ b/.gitignore @@ -8,7 +8,7 @@ gen .settings/ .classpath .vscode/ - +.factorypath # 排除编译输出 *.class diff --git a/common/java/common-data-mongodb/src/main/java/com/welab/wefe/common/data/mongodb/config/MongoConfig.java b/common/java/common-data-mongodb/src/main/java/com/welab/wefe/common/data/mongodb/config/MongoConfig.java index 0b064ccf50109e98d282547660c85ea43100bed6..b872bc46f1c70735da410aa00cd0778e69068f05 100644 --- a/common/java/common-data-mongodb/src/main/java/com/welab/wefe/common/data/mongodb/config/MongoConfig.java +++ b/common/java/common-data-mongodb/src/main/java/com/welab/wefe/common/data/mongodb/config/MongoConfig.java @@ -53,11 +53,6 @@ public class MongoConfig { return new SimpleMongoDbFactory(mongoClient, databaseName); } - @Bean - public MongoTransactionManager transactionManager(MongoDbFactory mongoDbFactory) { - return new MongoTransactionManager(mongoDbFactory); - } - @Bean public MongoTemplate mongoTemplate(MongoDbFactory mongoDbFactory) { return new MongoTemplate(mongoDbFactory, getConverter(mongoDbFactory)); diff --git a/docs/federated_learning/federated_learning.md b/docs/federated_learning/federated_learning.md index b8c74bba5b68b578a788c72b10b68a6116af7f5c..f2d5df7021d138b1c7392428c1d6a4a0c8000518 100644 --- a/docs/federated_learning/federated_learning.md +++ b/docs/federated_learning/federated_learning.md @@ -2,7 +2,7 @@ 在机器学习领域,通常情况下更多的样本、更丰富的维度,有助于开发出更优质的模型。 -所以我们希望采取联合建模的方式,增加样本数或维度来提升模型品质,但往往联合建模面临着数据隐私、安全合规等问题的阻碍,联邦学习建模技术应运而生而生。 +所以我们希望采取联合建模的方式,增加样本数或维度来提升模型品质,但往往联合建模面临着数据隐私、安全合规等问题的阻碍,联邦学习建模技术应运而生。 联邦学习(Federated Learning)是机器学习与隐私计算结合的一种技术,它实现了多个数据集在不交换样本的前提下进行多方联合机器学习建模。 @@ -75,4 +75,4 @@ WeFe 联邦学习系统中共有三种角色: 混合联邦在一个建模任务中同时包含了横向联邦与纵向联邦,由于包含纵向联邦,所以所有参与者都只能得到与己方特征相关的部分的模型。 -以上图为例,模型的后续使用需要 **A + B** 或者 **C + B** 才能拼合出一个完整的模型进行预测。 \ No newline at end of file +以上图为例,模型的后续使用需要 **A + B** 或者 **C + B** 才能拼合出一个完整的模型进行预测。 diff --git a/kernel/components/binning/vertfeaturebinning/default_runtime.json b/kernel/components/binning/vertfeaturebinning/default_runtime.json index b1581755c7bc22c0277de22682aee2ecb1733238..6fc62d73b3f745a796012e1e9796e09d3ecccc24 100644 --- a/kernel/components/binning/vertfeaturebinning/default_runtime.json +++ b/kernel/components/binning/vertfeaturebinning/default_runtime.json @@ -10,7 +10,7 @@ "bin_names": [], "category_indexes": [], "category_names": [], - "local_only": true, + "local_only": false, "transform_param": { "is_serving_model": false, "transform_cols": -1, diff --git a/kernel/components/binning/vertfeaturebinning/vert_binning_promoter.py b/kernel/components/binning/vertfeaturebinning/vert_binning_promoter.py index 1e8f4bbbfc6dcceaa310da997134130a8054be1c..bdcd4567468f40d6377108a3dbbc700020930d5c 100644 --- a/kernel/components/binning/vertfeaturebinning/vert_binning_promoter.py +++ b/kernel/components/binning/vertfeaturebinning/vert_binning_promoter.py @@ -241,6 +241,7 @@ class VertFeatureBinningPromoter(BaseVertFeatureBinning): provider_binning_obj = CustomBinning(provider_model_params) provider_binning_obj.cal_iv_woe(result_counts, provider_model_params.adjustment_factor) provider_binning_obj.set_role_party(role=consts.PROVIDER, member_id=provider_member_id) + provider_binning_obj = self.restructure_binning_result(provider_binning_obj) self.provider_results.append(provider_binning_obj) per_provider_result["result"] = provider_binning_obj per_provider_result["method"] = provider_model_params.method @@ -250,4 +251,12 @@ class VertFeatureBinningPromoter(BaseVertFeatureBinning): per_provider_result_copy = copy.deepcopy(per_provider_result) per_provider_results_list.append(per_provider_result_copy) all_provider_result_list.append(per_provider_results_list) - return all_provider_result_list \ No newline at end of file + return all_provider_result_list + + def restructure_binning_result(self, binning_obj): + to_none_list = ["event_count_array", "event_rate_array", "non_event_count_array", "non_event_rate_array"] + for bin_result_obj in binning_obj.bin_results.all_cols_results.items(): + if bin_result_obj: + for static in to_none_list: + setattr(bin_result_obj[1], static, None) + return binning_obj \ No newline at end of file diff --git a/union/union-service/src/main/java/com/welab/wefe/union/service/service/DataSetMemberPermissionContractService.java b/union/union-service/src/main/java/com/welab/wefe/union/service/service/DataSetMemberPermissionContractService.java index dfe5e52a988113337043f09e9be107ea61d97af2..856719f5fe53f80fd4cd3ee2af2a18d0a57b1d59 100644 --- a/union/union-service/src/main/java/com/welab/wefe/union/service/service/DataSetMemberPermissionContractService.java +++ b/union/union-service/src/main/java/com/welab/wefe/union/service/service/DataSetMemberPermissionContractService.java @@ -44,7 +44,6 @@ import java.util.stream.Collectors; * @author yuxin.zhang */ @Service -@Transactional(rollbackFor = Exception.class) public class DataSetMemberPermissionContractService extends AbstractContractService { private static final Logger LOG = LoggerFactory.getLogger(DataSetMemberPermissionContractService.class); diff --git a/union/union-service/src/main/java/com/welab/wefe/union/service/service/DatasetContractService.java b/union/union-service/src/main/java/com/welab/wefe/union/service/service/DatasetContractService.java index 62cd31a73cf3435acf6c32322a09005b6baf062e..967f8fb1b2867700e00f7884972948a39b00fe3c 100644 --- a/union/union-service/src/main/java/com/welab/wefe/union/service/service/DatasetContractService.java +++ b/union/union-service/src/main/java/com/welab/wefe/union/service/service/DatasetContractService.java @@ -36,7 +36,6 @@ import java.util.List; * @author yuxin.zhang */ @Service -@Transactional(rollbackFor = Exception.class) public class DatasetContractService extends AbstractContractService { private final BlockChainContext blockChainContext = BlockChainContext.getInstance();