<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMC</journal-id>
<journal-id journal-id-type="nlm-ta">CMC</journal-id>
<journal-id journal-id-type="publisher-id">CMC</journal-id>
<journal-title-group>
<journal-title>Computers, Materials &#x0026; Continua</journal-title>
</journal-title-group>
<issn pub-type="epub">1546-2226</issn>
<issn pub-type="ppub">1546-2218</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">31684</article-id>
<article-id pub-id-type="doi">10.32604/cmc.2023.031684</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Federation Boosting Tree for Originator Rights Protection</article-title>
<alt-title alt-title-type="left-running-head">Federation Boosting Tree for Originator Rights Protection</alt-title>
<alt-title alt-title-type="right-running-head">Federation Boosting Tree for Originator Rights Protection</alt-title>
</title-group>
<contrib-group content-type="authors">
<contrib id="author-1" contrib-type="author">
<name name-style="western"><surname>Sun</surname><given-names>Yinggang</given-names>
</name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-2" contrib-type="author">
<name name-style="western"><surname>Zhang</surname><given-names>Hongguo</given-names>
</name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-3" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Ma</surname><given-names>Chao</given-names>
</name><xref ref-type="aff" rid="aff-1">1</xref><email>machao8396@163.com</email></contrib>
<contrib id="author-4" contrib-type="author">
<name name-style="western"><surname>Huang</surname><given-names>Hai</given-names>
</name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-5" contrib-type="author">
<name name-style="western"><surname>Zhan</surname><given-names>Dongyang</given-names>
</name><xref ref-type="aff" rid="aff-2">2</xref>
<xref ref-type="aff" rid="aff-3">3</xref></contrib>
<contrib id="author-6" contrib-type="author">
<name name-style="western"><surname>Qu</surname><given-names>Jiaxing</given-names>
</name><xref ref-type="aff" rid="aff-4">4</xref></contrib>
<aff id="aff-1"><label>1</label><institution>Harbin University of Science and Technology</institution>, <addr-line>Harbin, 150040</addr-line>, <country>China</country></aff>
<aff id="aff-2"><label>2</label><institution>School of Cyberspace Science, Harbin Institute of Technology</institution>, <addr-line>Harbin, 150001</addr-line>, <country>China</country></aff>
<aff id="aff-3"><label>3</label><institution>The Ohio State University</institution>, <addr-line>Columbus, 43202</addr-line>, <country>USA</country></aff>
<aff id="aff-4"><label>4</label><institution>Heilongjiang Province Cyberspace Research Center</institution>, <addr-line>Harbin, 150001</addr-line>, <country>China</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Chao Ma. Email: <email>machao8396@163.com</email></corresp>
</author-notes>
<pub-date pub-type="epub" date-type="pub" iso-8601-date="2022-10-28"><day>28</day>
<month>10</month>
<year>2022</year></pub-date>
<volume>74</volume>
<issue>2</issue>
<fpage>4043</fpage>
<lpage>4058</lpage>
<history>
<date date-type="received">
<day>24</day>
<month>4</month>
<year>2022</year>
</date>
<date date-type="accepted">
<day>29</day>
<month>6</month>
<year>2022</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2023 Sun et al.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Sun et al.</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_CMC_31684.pdf"></self-uri>
<abstract>
<p>The problem of data island hinders the application of big data in artificial intelligence model training, so researchers propose a federated learning framework. It enables model training without having to centralize all data in a central storage point. In the current horizontal federated learning scheme, each participant gets the final jointly trained model. No solution is proposed for scenarios where participants only provide training data in exchange for benefits, but do not care about the final jointly trained model. Therefore, this paper proposes a new boosted tree algorithm, called RPBT (the originator Rights Protected federated Boosted Tree algorithm). Compared with the current horizontal federal learning algorithm, each participant will obtain the final jointly trained model. RPBT can guarantee that the local data of the participants will not be leaked, while the final jointly trained model cannot be obtained. It is worth mentioning that, from the perspective of the participants, the scheme uses the batch idea to make the participants participate in the training in random batches. Therefore, this scheme is more suitable for scenarios where a large number of participants are jointly modeling. Furthermore, a small number of participants will not actually participate in the joint training process. Therefore, the proposed scheme is more secure. Theoretical analysis and experimental evaluations show that RPBT is secure, accurate and efficient.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Federated learning</kwd>
<kwd>data privacy</kwd>
<kwd>rights protection</kwd>
<kwd>decision tree</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>With the increasing awareness of large companies on data security and user privacy protection, users have serious concern on their private information, which may be leaked or even abused by others for commercial or political purposes [<xref ref-type="bibr" rid="ref-1">1</xref>]. Each data owner&#x2019;s private dataset may contain sensitive information that cannot be made public, and direct exposure may violate some privacy policies, such as the General Data Protection Regulation implemented by the EU [<xref ref-type="bibr" rid="ref-2">2</xref>]. Enterprises and regulators have begun to think about how to ensure the legal compliance of data circulation and avoid risks such as illegal data transfer and resale [<xref ref-type="bibr" rid="ref-3">3</xref>]. Data owners only allow data to be kept in their own hands, which makes the data circulation difficult [<xref ref-type="bibr" rid="ref-4">4</xref>], thus forming data island.</p>
<p>To tackle data island issue in the condition of data, the federated learning framework is proposed by Google in 2016 [<xref ref-type="bibr" rid="ref-5">5</xref>]. Its basic idea is that each participant with the data source trains a model, and uploads the local model instead of the original data to the central server that aggregates the model. The central server obtains the global model through model aggregation, and then distributes the global model to each participant for local model update, and finally completes joint training. This framework is also known as the horizontal federated learning framework [<xref ref-type="bibr" rid="ref-6">6</xref>]. At present, for the horizontal joint learning usage scenario, there is equality among all participants. Each party provides its own data for joint modeling, and finally everyone gets a global model. However, in the horizontal federation process, some participants only want to profit from the training data provided and do not need to obtain the global model. That is, the scenario where one party initiates joint modeling by purchasing data from other participants, but only the initiator ends up with access to the global model has not been solved.</p>
<p>In response to the problems mentioned above, this paper proposes an efficient and privacy-preserving horizontal federated modeling algorithm RPBT, which enables the originator to independently obtain the final joint training model while protecting the data privacy of the participants. Under the premise of ensuring the data privacy of each participant, only the originator can obtain the final global model. The contribution of this paper can be summarized into the following points:
<list list-type="bullet">
<list-item>
<p>We presented to ensure the confidentiality and security of participants data and to protect the rights and interests of originator during the joint training process.</p></list-item>
<list-item>
<p>We presented an efficient boosting tree model method RPBT for joint training, which applies the idea of data batch training in the process of machine learning to the batch selection of participants, so that the participants cannot obtain a complete joint model, which ensures that the originator independently acquires the rights of the joint model.</p></list-item>
<list-item>
<p>We perform a very detailed theoretical and experimental analysis of the built RPBT model, and consider our method to be safe, accurate and effective.</p></list-item>
</list></p>
<p>The rest of the paper is organized as follows: In Section 2, we give the system model, threat model and problem definition. In Section 3, we briefly introduce necessary preliminaries. In Section 4, we describe in detail the federation boosting tree model of the originator&#x2019;s rights protection. In Section 5, we give the theoretical analysis, including correctness and security. In Section 6, we conduct the actual experimental analysis. In Section 7, we review the relevant literature. Finally, we summarize the paper.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Model and Problem Definition</title>
<sec id="s2_1">
<label>2.1</label>
<title>System Model</title>
<p>Our system model considers a federated boosted tree model of originator rights protection. All participants agreed to share the dataset for training the global model, but do not want to reveal their private data to anyone. At the same time, only the originator can obtain the final joint model, which protects the rights of the originator. As shown in <xref ref-type="fig" rid="fig-1">Fig. 1</xref>, the model framework consists of three parts:
<list list-type="bullet">
<list-item>
<p><italic>Originator</italic>. The final joint model is obtained by purchasing participant data for joint training.</p>
</list-item>
<list-item>
<p><italic>Participant</italic>. Provide a dataset to cooperate with the originator for model training, and the final joint model is unknown.</p></list-item>
<list-item>
<p><italic>Coordinator</italic>. Using the secure aggregation protocol, under the premise of protecting data privacy, the model information of the originator and participants is aggregated, and the final model information is sent to the originator.</p></list-item>
</list></p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>The framework of RPBT</title>
</caption>
<graphic mimetype="image" mime-subtype="png" xlink:href="CMC_31684-fig-1.png"/>
</fig>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>Threat Model</title>
<p>Assuming that the coordinator is completely credible, no external user can truncate or tamper with the communication between it and the participants. In addition, the coordinator itself will not leak the data information in the process of constructing the lifting tree model to the unknown user.</p>
<p>All participants are semi-honest. He executes the specified protocol honestly, but may launch large-scale reasoning attacks. That is, some participants may use untrue data to participate in model training and disrupt the model effect. It is also possible that a group of participants colluded to infer the data information of other participants.</p>
<p>We also assume that the coordinator will not collude with the participants. Such a non-conspiracy assumption is reasonable in practice, because the coordinator and participants will maintain their reputation, is unlikely to collude with others to undermine reputation.</p>
</sec>
<sec id="s2_3">
<label>2.3</label>
<title>Problem Definition and Design Objectives</title>
<p>What we are concerned about is building a boosting tree model for the protection of the rights of the originators on the premise of ensuring the data privacy of all participants. As shown in <xref ref-type="fig" rid="fig-1">Fig. 1</xref>, it is assumed that both the originator and the participant are factories that produce the same kind of product. If the originator wants to predict the quality of the product from the machine production parameters, then a large amount of production data is needed to build a predictive model. We designed a federal training platform, the originator purchases production data of the participating factories with money. After the participants receive the money, they provide the data to cooperate with the originator for joint training. Let the originator get the final joint model to predict the quality of the product. Our design goals are as follows:
<list list-type="simple">
<list-item><label>&#x2013;</label><p><italic>Efficiency</italic>: RPBT supports joint training of large-scale participants. Use parallel computing to optimize computing time for large-scale participant model training.</p></list-item>
<list-item><label>&#x2013;</label><p><italic>Privacy Protection</italic>: To protect the data privacy of all participants, the participants calculate the model information through their own data, and add noise to the model information when sending it to the collaborating parties. After the coordinator accepts the participant model information, it will use the secure aggregation protocol to aggregate all participant model related information in a secure manner.</p></list-item>
<list-item><label>&#x2013;</label><p><italic>Right Protection</italic>: As the parties providing data to participate in training, they will not get the final boosted tree model. Only the originator gets the final joint model, which guarantees the rights and interests of the originator.</p></list-item>
</list></p>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Preliminaries</title>
<sec id="s3_1">
<label>3.1</label>
<title>Secure Aggregation Protocol</title>
<p>Secure aggregation protocols are a way to use secure multi-party computation (MPC) to securely compute sum of model parameter updates from individual user devices to advance privacy-preserving machine learning [<xref ref-type="bibr" rid="ref-7">7</xref>]. The protocol allows the server to compute the sum of data vectors held from multiple participants in a secure manner (i.e., without learning each user&#x2019;s individual contribution). The core idea is to add an obfuscation term to each client&#x2019;s gradient. Since the obfuscation term is specially constructed by negotiation with other clients and known only to itself, the obfuscation term in each client&#x2019;s gradient passed to the server can be eliminated during aggregation, making it impossible for the server to attack the true gradient value of each client while getting the true gradient aggregation result. Since each client sends an obfuscated gradient and the obfuscated terms in the gradient are known only to the client, the privacy of each client&#x2019;s gradient can be guaranteed without collusion between other clients and the server. For example, in a federated learning environment, model updates are provided to deep neural network aggregation users. It has low runtime and communication overhead, even in scenarios with large datasets and many participating parties. The protocol is secure in an honest but curious active adversary setting, and demonstrates that it remains secure even if an arbitrarily chosen subset of users drop out at any time.</p>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>XGBoost</title>
<p>XGBoost [<xref ref-type="bibr" rid="ref-8">8</xref>] is an open source machine learning project developed by Tianqi Chen and others that efficiently implements the GBDT algorithm with many algorithmic and engineering improvements, and has been widely used and achieved good results in Kaggle competitions and many other machine learning competitions. XGBoost is an optimized distributed gradient boosting library designed to be efficient and portable. It implements machine learning algorithms in the Gradient Boosting framework. XGBoost provides parallel tree boosting (also known as GBDT, GBM) to solve many data science problems quickly and accurately. The same code runs on major distributed environments (Hadoop, SGE, MPI) and can solve problems with over billions of samples. XGBoost leverages out-of-core computing and enables data scientists to process hundreds of millions of samples of data on a single host. XGboost uses CART decision trees as sub-models, and Gradient Tree Boosting to integrate the learning of multiple CART trees to obtain the final model. base model supports not only decision trees but also linear models, and here we use an objective function based on the decision Here we use the objective function based on the decision tree.</p>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>RPBT Scheme</title>
<sec id="s4_1">
<label>4.1</label>
<title>Overview</title>
<p>In the problem definition, we mentioned the need to devise a scheme that protects the rights of the originator and allows only the originator to obtain the final joint model. As shown in <xref ref-type="fig" rid="fig-2">Fig. 2</xref>, RPBT proceeds as follows.</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>Overview of RPBT</title>
</caption>
<graphic mimetype="image" mime-subtype="png" xlink:href="CMC_31684-fig-2.png"/>
</fig>
<p><list list-type="simple">
<list-item>
<p>1) <bold>System initialization</bold>. Determine the group information of the participants, set the safety aggregation related parameters and the sponsor rights protection parameters.</p></list-item>
<list-item>
<p>2) <bold>Local histogram computation</bold>. Design a local histogram calculation process and ensure data privacy during joint training.</p></list-item>
<list-item>
<p>3) <bold>Histogram security aggregation</bold>. The coordinator calculates the optimal splitting point by using the participant histogram information through the secure aggregation method.</p></list-item>
<list-item>
<p>4) <bold>Joint model distribution</bold>. After the joint training, the sponsor obtains the joint model independently to ensure the rights and interests of the sponsor.</p></list-item>
</list></p>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>System Initialization</title>
<p>Before the task is executed, the information of the participants is counted, and the groups are grouped according to the number of participants and the size of the available data set, so as to facilitate the selection of training batches during joint training. At the same time, the proportion of participants who do not participate in joint training is set according to the number of participants in each group. By giving a fake intermediate model to the participants who do not participate in the joint training, the participants are not sure whether the intermediate model obtained by themselves is real, and the participants cannot use the intermediate model.</p>
</sec>
<sec id="s4_3">
<label>4.3</label>
<title>Local Histograms Computation</title>
<p>The calculation process of joint modeling is designed through the basic idea of horizontal federated learning combined with XGBoost algorithm. Let&#x2019;s first review the specific calculation details of the XGBoost algorithm in the modeling process. A dataset <inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mrow><mml:mtext>X</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mtext>R</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>n</mml:mtext></mml:mrow><mml:mo>&#x00D7;</mml:mo><mml:mrow><mml:mtext>m</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> with <inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:mi>n</mml:mi></mml:math></inline-formula> samples and <inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:mi>m</mml:mi></mml:math></inline-formula> features, suppose we have trained <inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:mi>K</mml:mi></mml:math></inline-formula> trees and the final predicted value for the <italic>i-th</italic> sample is equal to:<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:mrow><mml:mover><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mo>=</mml:mo><mml:mi>&#x03D5;</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:msubsup><mml:mo movablelimits="false">&#x2211;</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi></mml:mrow></mml:msubsup><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> represents the sample characteristics, <inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> denotes the prediction result of the <italic>k-th</italic> tree for sample <inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>, and finally these values are added together to get the final result <inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:mrow><mml:mover><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow></mml:math></inline-formula>.</p>
<p>According to the additive model of formula <xref ref-type="disp-formula" rid="eqn-1">(1)</xref>, the <italic>t-th</italic> tree is learned based on the <italic>t-th</italic> tree optimization, the residuals are calculated based on the predicted values of the t-1 tree, and then the t residual tree is fitted, and the objective The Taylor second-order expansion of the objective function is as follows:</p>
<p><disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:msup><mml:mi>L</mml:mi><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msup><mml:mo>&#x2243;</mml:mo><mml:msubsup><mml:mrow><mml:mo movablelimits="false">&#x2211;</mml:mo></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mi>l</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msup><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mn>2</mml:mn></mml:mfrac><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:msubsup><mml:mi>f</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>which <inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:mi mathvariant="normal">&#x03A9;</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mi>&#x03B3;</mml:mi><mml:mi>T</mml:mi><mml:mo>+</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mn>2</mml:mn></mml:mfrac><mml:mi>&#x03BB;</mml:mi><mml:mo fence="false" stretchy="false">&#x2016;</mml:mo><mml:mi>w</mml:mi><mml:msup><mml:mo fence="false" stretchy="false">&#x2016;</mml:mo><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:mrow><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo mathvariant="italic" stretchy="false">(</mml:mo></mml:mrow><mml:mi>t</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mrow><mml:mo mathvariant="italic" stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mi>l</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mo mathvariant="italic" stretchy="false">(</mml:mo></mml:mrow><mml:mi>t</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mrow><mml:mo mathvariant="italic" stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msubsup><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:mrow><mml:msup><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mo mathvariant="italic" stretchy="false">(</mml:mo></mml:mrow><mml:mi>t</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mrow><mml:mo mathvariant="italic" stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msup></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mi>l</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mo mathvariant="italic" stretchy="false">(</mml:mo></mml:mrow><mml:mi>t</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mrow><mml:mo mathvariant="italic" stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></p>
<p>In constructing the <italic>t-th</italic> tree, starting from the root node, for each split, the original one node will split into two nodes, and the sample data in the original node will enter into each of the two nodes according to the judgment rule. After each new split, we need to check whether this split will bring gain to the loss function. When splitting a node, we use the following formula to calculate the gain of the split point, where The IL and IR represent the instance space of the left and right tree nodes after splitting. After obtaining an optimal tree structure, the leaves <inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:msup><mml:mrow><mml:msub><mml:mi>w</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mo>&#x2217;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> optimal weights can be obtained by the following formula, where <inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the instance space of leaf <inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:mi>j</mml:mi></mml:math></inline-formula>.</p>
<p><disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="italic">s</mml:mi><mml:mi mathvariant="italic">p</mml:mi><mml:mi mathvariant="italic">l</mml:mi><mml:mi mathvariant="italic">i</mml:mi><mml:mi mathvariant="italic">t</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mn>2</mml:mn></mml:mfrac><mml:mrow><mml:mo>[</mml:mo><mml:mfrac><mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi></mml:mrow></mml:mfrac><mml:mo>+</mml:mo><mml:mfrac><mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>R</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>R</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi></mml:mrow></mml:mfrac><mml:mo>&#x2212;</mml:mo><mml:mfrac><mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>I</mml:mi></mml:mrow></mml:munder><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>I</mml:mi></mml:mrow></mml:munder><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi></mml:mrow></mml:mfrac><mml:mo>]</mml:mo></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mi>&#x03B3;</mml:mi></mml:math></disp-formula></p>
<p>After obtaining an optimal tree structure, the leaves <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:msub><mml:mrow><mml:msup><mml:mi>w</mml:mi><mml:mrow><mml:mo>&#x2217;</mml:mo></mml:mrow></mml:msup></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> optimal weights can be obtained by the following formula, where <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the instance space of leaf <inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:mi>j</mml:mi><mml:mo>.</mml:mo></mml:math></inline-formula></p>
<p><disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:msubsup><mml:mi>w</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x2217;</mml:mo></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mfrac><mml:mrow><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi></mml:mrow></mml:mfrac></mml:math></disp-formula></p>
<p>From the above review of XGBoost knowledge, we can observe that computing the split point only depends on <inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>. The calculation steps were designed as follows:
<list list-type="simple">
<list-item>
<p>1) The originator and the participants calculate the quantile interval information according to the data feature set they own, and send the quantile interval information to the coordinator.</p></list-item>
<list-item>
<p>2) The coordinator integrates all quantile interval information, calculates the average quantile sketch, and distributes it to the originators and participants.</p></list-item>
<list-item>
<p>3) The originator and participants calculate the local histogram (including the information of <inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>), and then send the local histogram to the collaborating party.</p></list-item>
<list-item>
<p>4) The collaborating party merges the local histograms of the originator and the participating parties into a global histogram. The splitting point gain is calculated according to the global histogram, and the splitting feature and splitting threshold corresponding to the optimal splitting point gain are sent to the originator and the participants.</p></list-item>
<list-item>
<p>5) The originator and participants update the local histogram after receiving the splitting feature and splitting threshold.</p></list-item>
</list></p>
<p>In our lifting tree algorithm, the originator and the participants send the <inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:msub><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:msub><mml:mrow><mml:mtext>h</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> information to the coordinator, and the coordinator calculates the gain to determine the optimal split point and the corresponding split threshold. Therefore, during joint training, the originator and the participants will not expose the original data information. However, if the coordinator directly uses <inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> to calculate <inline-formula id="ieqn-24"><mml:math id="mml-ieqn-24"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mrow><mml:mtext>split&#xA0;</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>, it is equivalent to expose the <inline-formula id="ieqn-25"><mml:math id="mml-ieqn-25"><mml:msub><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-26"><mml:math id="mml-ieqn-26"><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> data information owned by the local histogram of each participant. In order to further ensure the data privacy and security of the participants, we introduce a secure aggregation protocol [<xref ref-type="bibr" rid="ref-9">9</xref>]. We need to ensure that the local histogram information of the participants is kept secret from the coordinator, so before the participant sends the local histogram to the coordinator, we consider encrypting the local histogram information of each party by means of secure aggregation, so as to ensure the coordinator. The local histogram information of each participant is not known specifically.</p>
<p>The details of the joint model computation combined with the secure aggregation algorithm is described as Algorithm 1 in <xref ref-type="table" rid="table-1">Tab. 1</xref>. When tree calculates the gain of splitting features, XGBoost uses a pre-sorted algorithm to handle node splitting. The split point calculated in this way is more accurate, but it also causes a lot of time overhead. To solve this problem, Lightgbm chose a decision tree algorithm based on histogram. Compared with the pre-sorted algorithm, histogram has many advantages in memory consumption and computational cost. We also added the histogram algorithm to the calculation process to speed up the calculation process. The basic principle is to directly pass in a number of buckets, and then use the improved GK-summary algorithm to calculate the quantile <inline-formula id="ieqn-27"><mml:math id="mml-ieqn-27"><mml:mi>&#x03D5;</mml:mi></mml:math></inline-formula>. We calculate the corresponding value in the data based on this quantile. Forms an interval that divides all samples in the matching interval into a bucket. Since the data splitting only relies on the values of G and H, we only need to count the G and H values of each sample to meet the requirements of subsequent tasks.</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Hist algorithm</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><bold>Algorithm 1</bold>&#x2002;&#x2002;<bold>Create a historgram&#x2002;with encrypted</bold> <inline-formula id="ieqn-28"><mml:math id="mml-ieqn-28"><mml:mo>&lt;</mml:mo><mml:mrow><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">g</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo mathvariant="bold">&gt;</mml:mo><mml:mo mathvariant="bold">,</mml:mo><mml:mo mathvariant="bold">&lt;</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:msub><mml:mo mathvariant="bold">&gt;</mml:mo><mml:mrow><mml:mo mathvariant="bold" fence="false" stretchy="false">{</mml:mo><mml:mi mathvariant="bold-italic">i</mml:mi><mml:mo mathvariant="bold">&#x2208;</mml:mo><mml:mi mathvariant="bold-italic">I</mml:mi><mml:mo mathvariant="bold" fence="false" stretchy="false">}</mml:mo></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td><bold>Input</bold>: <inline-formula id="ieqn-29"><mml:math id="mml-ieqn-29"><mml:mi>I</mml:mi></mml:math></inline-formula>:&#x2002;training data of one client;</td>
</tr>
<tr>
<td>&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-30"><mml:math id="mml-ieqn-30"><mml:mi>d</mml:mi></mml:math></inline-formula>:&#x2002;feature dimension;</td>
</tr>
<tr>
<td>&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<italic>Role list:</italic> contains each role name, <inline-formula id="ieqn-31"><mml:math id="mml-ieqn-31"><mml:mo>&lt;</mml:mo><mml:mrow><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&gt;</mml:mo><mml:mo>,</mml:mo><mml:mo>&lt;</mml:mo><mml:mrow><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:msub><mml:mo>&gt;</mml:mo><mml:mrow><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>I</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>&#x2002;calculated by <italic>I</italic>;</td>
</tr>
<tr>
<td><italic>&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;</italic><inline-formula id="ieqn-32"><mml:math id="mml-ieqn-32"><mml:mrow><mml:mi mathvariant="italic">p</mml:mi><mml:mi mathvariant="italic">r</mml:mi><mml:mi mathvariant="italic">i</mml:mi><mml:mi mathvariant="italic">v</mml:mi><mml:mi mathvariant="italic">a</mml:mi><mml:mi mathvariant="italic">t</mml:mi><mml:mi mathvariant="italic">e</mml:mi></mml:mrow><mml:mi>k</mml:mi><mml:mi>e</mml:mi><mml:mi>y</mml:mi><mml:mo>&#x003A;</mml:mo></mml:math></inline-formula> generated by the Diffie-Hellman algorithm for noise generation</td>
</tr>
<tr>
<td><bold>Output:&#x2002;</bold>A historgram&#x2002;with encrypted <inline-formula id="ieqn-33"><mml:math id="mml-ieqn-33"><mml:mo>&lt;</mml:mo><mml:mrow><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&gt;</mml:mo><mml:mo>,</mml:mo><mml:mo>&lt;</mml:mo><mml:mrow><mml:msub><mml:mi>h</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:msub><mml:mo>&gt;</mml:mo><mml:mrow><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>I</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula></td>
</tr>
<tr>
<td><bold>begin</bold></td>
</tr>
<tr>
<td>1: <inline-formula id="ieqn-34"><mml:math id="mml-ieqn-34"><mml:mi>H</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mi>n</mml:mi><mml:mi>e</mml:mi><mml:mi>w</mml:mi><mml:mrow><mml:mi mathvariant="italic">h</mml:mi><mml:mi mathvariant="italic">i</mml:mi><mml:mi mathvariant="italic">s</mml:mi><mml:mi mathvariant="italic">t</mml:mi><mml:mi mathvariant="italic">o</mml:mi><mml:mi mathvariant="italic">r</mml:mi><mml:mi mathvariant="italic">g</mml:mi><mml:mi mathvariant="italic">r</mml:mi><mml:mi mathvariant="italic">a</mml:mi><mml:mi mathvariant="italic">m</mml:mi></mml:mrow></mml:math></inline-formula>;</td>
</tr>
<tr>
<td>2: <bold>for</bold>&#x2002;<inline-formula id="ieqn-35"><mml:math id="mml-ieqn-35"><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">&#x2192;</mml:mo><mml:mi>m</mml:mi></mml:math></inline-formula>&#x2002;<bold>do</bold>;</td>
</tr>
<tr>
<td>3: &#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;Build bin to H;</td>
</tr>
<tr>
<td>4:&#x2002;&#x2002;&#x2002;&#x2002;Calculated by precentile&#x2002;rate <inline-formula id="ieqn-36"><mml:math id="mml-ieqn-36"><mml:msub><mml:mrow><mml:mtext>quantile</mml:mtext></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mtext>quantile</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>n</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>&#x2002;which from GK-summary Algorithm;</td>
</tr>
<tr>
<td>5: <bold>end for</bold></td>
</tr>
<tr>
<td>6: <bold>for</bold> <inline-formula id="ieqn-37"><mml:math id="mml-ieqn-37"><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">&#x2192;</mml:mo><mml:mi>d</mml:mi></mml:math></inline-formula>&#x2002;<bold>do</bold></td>
</tr>
<tr>
<td>7: &#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<bold>for</bold> <inline-formula id="ieqn-38"><mml:math id="mml-ieqn-38"><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo stretchy="false">&#x2192;</mml:mo><mml:mi>b</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:math></inline-formula>&#x2002;<bold>do</bold></td>
</tr>
<tr>
<td>8:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<bold>if</bold> <inline-formula id="ieqn-39"><mml:math id="mml-ieqn-39"><mml:mi>I</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mi>b</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mi mathvariant="italic">r</mml:mi><mml:mi mathvariant="italic">a</mml:mi><mml:mi mathvariant="italic">n</mml:mi><mml:mi mathvariant="italic">g</mml:mi><mml:mi mathvariant="italic">e</mml:mi></mml:mrow></mml:math></inline-formula>&#x2002;<bold>then</bold></td>
</tr>
<tr>
<td>9: &#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-40"><mml:math id="mml-ieqn-40"><mml:mi>H</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mi>b</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mo>.</mml:mo><mml:mi>g</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mi>I</mml:mi><mml:mo>.</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">[</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">]</mml:mo><mml:mo>.</mml:mo><mml:mi>g</mml:mi></mml:math></inline-formula></td>
</tr>
<tr>
<td>10:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-41"><mml:math id="mml-ieqn-41"><mml:mi>H</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mi>b</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mo>.</mml:mo><mml:mi>h</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mi>I</mml:mi><mml:mo>.</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">[</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">]</mml:mo><mml:mo>.</mml:mo><mml:mi>h</mml:mi></mml:math></inline-formula></td>
</tr>
<tr>
<td>11:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-42"><mml:math id="mml-ieqn-42"><mml:mi>H</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mi>b</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mo>.</mml:mo><mml:mi>n</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mi>H</mml:mi><mml:mo stretchy="false">[</mml:mo><mml:mi>b</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mo stretchy="false">]</mml:mo><mml:mo>.</mml:mo><mml:mi>n</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula></td>
</tr>
<tr>
<td>12:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<bold>end</bold> &#x2002;<bold>if</bold></td>
</tr>
<tr>
<td>13:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<bold>end for</bold></td>
</tr>
<tr>
<td>14:&#x2002;<bold>end for</bold></td>
</tr>
<tr>
<td>15:&#x2002;<bold>for</bold> <inline-formula id="ieqn-43"><mml:math id="mml-ieqn-43"><mml:mi>r</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>e</mml:mi><mml:mi>u</mml:mi><mml:mi>u</mml:mi><mml:mi>i</mml:mi><mml:mi>d</mml:mi><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="italic">p</mml:mi><mml:mi mathvariant="italic">r</mml:mi><mml:mi mathvariant="italic">i</mml:mi><mml:mi mathvariant="italic">v</mml:mi><mml:mi mathvariant="italic">a</mml:mi><mml:mi mathvariant="italic">t</mml:mi><mml:mi mathvariant="italic">e</mml:mi></mml:mrow><mml:mi>k</mml:mi><mml:mi>e</mml:mi><mml:mi>y</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mtext>DH</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>list</mml:mtext></mml:mrow></mml:math></inline-formula>&#x2002;<bold>do</bold></td>
</tr>
<tr>
<td>16:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<bold>if</bold> <inline-formula id="ieqn-44"><mml:math id="mml-ieqn-44"><mml:mi>r</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>e</mml:mi><mml:mi>u</mml:mi><mml:mi>u</mml:mi><mml:mi>i</mml:mi><mml:mi>d</mml:mi><mml:mo>&gt;</mml:mo><mml:mi>s</mml:mi><mml:mi>e</mml:mi><mml:mi>l</mml:mi><mml:mi>f</mml:mi><mml:mo>.</mml:mo><mml:mi>r</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>e</mml:mi><mml:mi>u</mml:mi><mml:mi>u</mml:mi><mml:mi>i</mml:mi><mml:mi>d</mml:mi></mml:math></inline-formula>&#x2002;<bold>then</bold></td>
</tr>
<tr>
<td>17:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-45"><mml:math id="mml-ieqn-45"><mml:mi>r</mml:mi><mml:mi>e</mml:mi><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mi mathvariant="italic">r</mml:mi><mml:mi mathvariant="italic">a</mml:mi><mml:mi mathvariant="italic">n</mml:mi><mml:mi mathvariant="italic">d</mml:mi><mml:mi mathvariant="italic">o</mml:mi><mml:mi mathvariant="italic">m</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi mathvariant="italic">p</mml:mi><mml:mi mathvariant="italic">r</mml:mi><mml:mi mathvariant="italic">i</mml:mi><mml:mi mathvariant="italic">v</mml:mi><mml:mi mathvariant="italic">a</mml:mi><mml:mi mathvariant="italic">t</mml:mi><mml:mi mathvariant="italic">e</mml:mi></mml:mrow><mml:mi>k</mml:mi><mml:mi>e</mml:mi><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>18:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-46"><mml:math id="mml-ieqn-46"><mml:mi>H</mml:mi><mml:mo>=</mml:mo><mml:mi>H</mml:mi><mml:mo>+</mml:mo><mml:mi>r</mml:mi><mml:mi>e</mml:mi><mml:mi>t</mml:mi></mml:math></inline-formula></td>
</tr>
<tr>
<td>19:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<bold>else</bold></td>
</tr>
<tr>
<td>20:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-47"><mml:math id="mml-ieqn-47"><mml:mi>r</mml:mi><mml:mi>e</mml:mi><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mi mathvariant="italic">r</mml:mi><mml:mi mathvariant="italic">a</mml:mi><mml:mi mathvariant="italic">n</mml:mi><mml:mi mathvariant="italic">d</mml:mi><mml:mi mathvariant="italic">o</mml:mi><mml:mi mathvariant="italic">m</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi mathvariant="italic">p</mml:mi><mml:mi mathvariant="italic">r</mml:mi><mml:mi mathvariant="italic">i</mml:mi><mml:mi mathvariant="italic">v</mml:mi><mml:mi mathvariant="italic">a</mml:mi><mml:mi mathvariant="italic">t</mml:mi><mml:mi mathvariant="italic">e</mml:mi></mml:mrow><mml:mi>k</mml:mi><mml:mi>e</mml:mi><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>21:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-48"><mml:math id="mml-ieqn-48"><mml:mi>H</mml:mi><mml:mo>=</mml:mo><mml:mi>H</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>r</mml:mi><mml:mi>e</mml:mi><mml:mi>t</mml:mi></mml:math></inline-formula></td>
</tr>
<tr>
<td>22:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<bold>end if</bold></td>
</tr>
<tr>
<td>23: <bold>end for</bold></td>
</tr>
<tr>
<td>24: <bold>return</bold>&#x2002;A historgram&#x2002;with encrypted by other&#x2019;s&#x2002;private key</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Next, we design how to complete data encryption when calculating the local histogram. We choose to use Diffie-Hellman algorithm [<xref ref-type="bibr" rid="ref-10">10</xref>] to generate a private key for the initiator and all participants to generate noise when encrypting. In addition, we set uuid to each participant to show identity, and then judge the way in which the encryption process uses noise according to <italic>uuid</italic>.</p>
</sec>
<sec id="s4_4">
<label>4.4</label>
<title>Histogram Security Aggregation</title>
<p>We design the operation of model aggregation to be done on the coordinator side. The specific details are as described in Algorithm 2 in <xref ref-type="table" rid="table-2">Tab. 2</xref>. The most important step for the coordinator is to find the best split point. Our histogram format is <inline-formula id="ieqn-49"><mml:math id="mml-ieqn-49"><mml:mo stretchy="false">[</mml:mo><mml:mi>g</mml:mi><mml:mo>,</mml:mo><mml:mi>h</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>, where <inline-formula id="ieqn-50"><mml:math id="mml-ieqn-50"><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow></mml:math></inline-formula> is the sum of the first derivatives of all samples in this bucket, and <inline-formula id="ieqn-51"><mml:math id="mml-ieqn-51"><mml:mrow><mml:mtext>h</mml:mtext></mml:mrow></mml:math></inline-formula> is two sum of derivatives. Then according to the segmentation scheme of XGBoost, we traverse each bucket of each feature to find the optimal segmentation feature and bucket number. Then it is returned to each participant, who divides locally according to the number of features and buckets. Then calculates a new histogram and repeats the above process to complete the training. During the coordinator&#x2019;s process of finding the best split point, the histogram data of all participating parties are summed. According to the method we have dealt with before, the addition can eliminate the noise in the encrypted data, so that the coordinator can obtain a complete and unencrypted global data without obtaining the original data of any participant.</p>
<table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>Split algorithm</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><bold>Algorithm 2&#x2002;Aggregated encrypted historgrams&#x2002;and find best split point</bold></td>
</tr>
<tr>
<td><bold>Input</bold>: <inline-formula id="ieqn-52"><mml:math id="mml-ieqn-52"><mml:mi>I</mml:mi></mml:math></inline-formula>: instance set&#x2002;of current node,</td>
</tr>
<tr>
<td>&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-53"><mml:math id="mml-ieqn-53"><mml:mi>H</mml:mi></mml:math></inline-formula>: encrypted historgrams from each client,</td>
</tr>
<tr>
<td>&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-54"><mml:math id="mml-ieqn-54"><mml:mi>L</mml:mi></mml:math></inline-formula>: role list conclude parvate key</td>
</tr>
<tr>
<td><bold>Output</bold>: best split feature number and bin number</td>
</tr>
<tr>
<td><bold>begin</bold></td>
</tr>
<tr>
<td>1: <inline-formula id="ieqn-55"><mml:math id="mml-ieqn-55"><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mn>3</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">&#x2190;</mml:mo></mml:math></inline-formula> random chocice n clicent historgram and remove from role list;</td>
</tr>
<tr>
<td>2: <inline-formula id="ieqn-56"><mml:math id="mml-ieqn-56"><mml:mi>H</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mn>3</mml:mn></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>.</mml:mo><mml:mo>.</mml:mo><mml:mo>+</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>;</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>3: <inline-formula id="ieqn-57"><mml:math id="mml-ieqn-57"><mml:mi>g</mml:mi><mml:mi>a</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>;</td>
</tr>
<tr>
<td>4: <bold>for</bold> <inline-formula id="ieqn-58"><mml:math id="mml-ieqn-58"><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">&#x2192;</mml:mo><mml:mi>m</mml:mi></mml:math></inline-formula>&#x2002;<bold>do</bold></td>
</tr>
<tr>
<td>5: <inline-formula id="ieqn-59"><mml:math id="mml-ieqn-59"><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mi>R</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>&#x2002;</td>
</tr>
<tr>
<td>6: &#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<bold>for&#x2002;</bold><inline-formula id="ieqn-60"><mml:math id="mml-ieqn-60"><mml:mi>b</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mi>H</mml:mi></mml:math></inline-formula>&#x2002;<bold>do</bold></td>
</tr>
<tr>
<td>7:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-61"><mml:math id="mml-ieqn-61"><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">&#x2190;</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>H</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mi>b</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mi>g</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">&#x2190;</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>H</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mi>b</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mi>h</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mo>;</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>8:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-62"><mml:math id="mml-ieqn-62"><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mi>G</mml:mi><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mi>H</mml:mi><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></td>
</tr>
<tr>
<td>9:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-63"><mml:math id="mml-ieqn-63"><mml:mi>g</mml:mi><mml:mi>a</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>g</mml:mi><mml:mi>a</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mo>,</mml:mo><mml:mfrac><mml:msubsup><mml:mi>G</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mrow><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi></mml:mrow></mml:mfrac><mml:mo>+</mml:mo><mml:mfrac><mml:msubsup><mml:mi>G</mml:mi><mml:mrow><mml:mi>R</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mrow><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mi>R</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi></mml:mrow></mml:mfrac><mml:mo>&#x2212;</mml:mo><mml:mfrac><mml:msup><mml:mi>G</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:mi>H</mml:mi><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi></mml:mrow></mml:mfrac><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>;</td>
</tr>
<tr>
<td>10:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<bold>end for</bold></td>
</tr>
<tr>
<td>11:&#x2002;<bold>end for</bold></td>
</tr>
<tr>
<td>12:&#x2002;<bold>return</bold>&#x2002;<inline-formula id="ieqn-64"><mml:math id="mml-ieqn-64"><mml:msub><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>opt</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>&#x2002;and <inline-formula id="ieqn-65"><mml:math id="mml-ieqn-65"><mml:mi>b</mml:mi><mml:mi>i</mml:mi><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>o</mml:mi><mml:mi>p</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>&#x2002;to each role when we obtain the max gain</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s4_5">
<label>4.5</label>
<title>Joint Model Distribution</title>
<p>We need to consider how to protect the rights of the originator during the joint training process. The originator purchases the participant&#x2019;s dataset for joint training through pricing criteria. In the existing horizontal federation scheme, both the originator and the participants can obtain the final federation model. For the originator, now that he has paid for the data set of the participating parties, he just wants to obtain the joint model by himself. Because of the participating parties, both the data value and the joint model are obtained. This is unfair to the originator and does not effectively protect the rights and interests of the originator. Therefore, we design a horizontal federated learning method suitable for the current scenario, in order to solve the problem of how to ensure the rights and interests of the originator.</p>
<p>The main idea is that before joint modeling, the originator determines the number of participants. In the joint modeling process, the originator randomly selects a batch of participants for joint training each round, and an intermediate model is obtained after this round of training. Then the originator selects a batch of new participants, and on the basis of the intermediate model, continues joint training to obtain a new intermediate model. The joint training process stops when the initiator and all participants have completed training. The originator finally gets a joint model jointly trained by all participants.</p>
<p>The specific details of protecting the rights and interests of the originator during the training process are described as Algorithm 3 in <xref ref-type="table" rid="table-3">Tab. 3</xref>. The idea that the originator randomly selects a batch of participants each time during the training process refers to the data batch training process in machine learning. Batch training is used because there is more training data. Using batch training makes training faster and can get stable results. We regard the data of the participants selected in each round as a batch of data for each iteration of the machine learning process. Since good stable results can be obtained using batch data, our process of training the participants as batch data is also effective, and the resulting model can also be said to be stable. In addition, during the joint training process, we can set some participants not to participate in the real training. Instead, a fake intermediate model is returned directly to the participants during the training process. In this way, the participants are not sure whether the intermediate models they have obtained are real, and the participants cannot use the intermediate models, which is equivalent to protecting the rights and interests of the originators from another aspect.</p>
<table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>Choice and send</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
</colgroup>
<tbody>
<tr>
<td><bold>Algorithm 3</bold>&#x2002;R<bold>andom choice host and send&#x2002;completed model</bold></td>
</tr>
<tr>
<td><bold>Input</bold>: <italic>role list:</italic> contains each role name</td>
</tr>
<tr>
<td>&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;D: data of each role</td>
</tr>
<tr>
<td>&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;M: adequate model training by adequate data</td>
</tr>
<tr>
<td><bold>Output:&#x2002;A&#x2002;complete model</bold></td>
</tr>
<tr>
<td><bold>begin</bold></td>
</tr>
<tr>
<td>1:&#x2002;<bold>while</bold> <inline-formula id="ieqn-66"><mml:math id="mml-ieqn-66"><mml:mi>r</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>e</mml:mi><mml:mo>!</mml:mo><mml:mo>=</mml:mo><mml:mi>s</mml:mi><mml:mi>e</mml:mi><mml:mi>l</mml:mi><mml:mi>f</mml:mi><mml:mo>.</mml:mo><mml:mi>r</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>e</mml:mi></mml:math></inline-formula></td>
</tr>
<tr>
<td>2:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;{the other party -&#x003E;each party }&#x2002;<inline-formula id="ieqn-67"><mml:math id="mml-ieqn-67"><mml:mo stretchy="false">&#x2190;</mml:mo></mml:math></inline-formula> private key (Diffie-Hellman. Algorithm)</td>
</tr>
<tr>
<td>3:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;Add self role&#x2002;to other role with <bold><italic>private key</italic></bold> to a dictionary called DH_list</td>
</tr>
<tr>
<td>3: <bold>end while</bold></td>
</tr>
<tr>
<td>4: <bold>for&#x2002;</bold>batch&#x2002;in&#x2002;batches<bold>: </bold></td>
</tr>
<tr>
<td>5:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;Random(n) in role list</td>
</tr>
<tr>
<td>6: &#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-68"><mml:math id="mml-ieqn-68"><mml:mi>D</mml:mi><mml:mo>=</mml:mo><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>r</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mi>e</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">&#x2192;</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>&#x2002;# training model</td>
</tr>
<tr>
<td>7: <bold>end&#x2002;for</bold></td>
</tr>
<tr>
<td>8: Random(n) in role list <inline-formula id="ieqn-69"><mml:math id="mml-ieqn-69"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>&#x2002;fake&#x2002;role&#x2002;list</td>
</tr>
<tr>
<td>9: <bold>for I in role list do:</bold></td>
</tr>
<tr>
<td>10:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;IF I in fake role list:</td>
</tr>
<tr>
<td>10:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;<inline-formula id="ieqn-70"><mml:math id="mml-ieqn-70"><mml:msub><mml:mi>w</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>+</mml:mo><mml:mi>b</mml:mi></mml:math></inline-formula>&#x2002;<inline-formula id="ieqn-71"><mml:math id="mml-ieqn-71"><mml:mo stretchy="false">&#x2192;</mml:mo><mml:msup><mml:mi>f</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td>11:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;I <inline-formula id="ieqn-72"><mml:math id="mml-ieqn-72"><mml:mo stretchy="false">&#x2190;</mml:mo><mml:msup><mml:mi>f</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> #send uncompleted model</td>
</tr>
<tr>
<td>13:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;else</td>
</tr>
<tr>
<td>14:&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;&#x2002;I <inline-formula id="ieqn-73"><mml:math id="mml-ieqn-73"><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>&#x2002;#send completed model</td>
</tr>
<tr>
<td>15: <bold>end for</bold></td>
</tr>
</tbody>
</table>
</table-wrap>
<p>In this section, we propose a new boosted tree algorithm called the RPBT. It mainly solves the following three problems. First, the data privacy and security of each participant is guaranteed during the joint modeling process. Secondly, when the coordinator performs the model calculation, it is ensured that the model information of the participants will not be leaked. Finally, it is ensured that only the originator can get the final boosting tree model, and the participants cannot know the accurate boosting tree model, which protects the rights and interests of the originator.</p>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Theoretical Analysis</title>
<sec id="s5_1">
<label>5.1</label>
<title>Correctness Analysis</title>
<p>Theorem 1. RPBT is lossless, i.e., RPBT model M and XGBoost model M&#x02032; behave the same, provided that the initialization and hyper parameterization of models M and M&#x02032; are the same.</p>
<p>Proof. According to formula 3, <inline-formula id="ieqn-74"><mml:math id="mml-ieqn-74"><mml:msub><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-75"><mml:math id="mml-ieqn-75"><mml:msub><mml:mrow><mml:mtext>h</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> are the only information for computing the optimal splitting point. In the modeling process, <inline-formula id="ieqn-76"><mml:math id="mml-ieqn-76"><mml:msub><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-77"><mml:math id="mml-ieqn-77"><mml:msub><mml:mrow><mml:mtext>h</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> are encrypted by a secure aggregation protocol. For example, the encryption of message a of side A is <inline-formula id="ieqn-78"><mml:math id="mml-ieqn-78"><mml:mo>&lt;</mml:mo><mml:mi>a</mml:mi><mml:mo>&gt;=</mml:mo><mml:mi>a</mml:mi><mml:mo>+</mml:mo><mml:mi>r</mml:mi></mml:math></inline-formula>, and the encryption of message b of side B is <inline-formula id="ieqn-79"><mml:math id="mml-ieqn-79"><mml:mo>&lt;</mml:mo><mml:mi>b</mml:mi><mml:mo>&gt;=</mml:mo><mml:mi>b</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>r</mml:mi></mml:math></inline-formula>. Where r is the generated noise. By the definition of secure aggregation, we have <inline-formula id="ieqn-80"><mml:math id="mml-ieqn-80"><mml:mo>&lt;</mml:mo><mml:mi>a</mml:mi><mml:mo>&gt;</mml:mo><mml:mo>+</mml:mo><mml:mo>&lt;</mml:mo><mml:mi>b</mml:mi><mml:mo>&gt;=</mml:mo><mml:mi>a</mml:mi><mml:mo>+</mml:mo><mml:mi>b</mml:mi></mml:math></inline-formula>. The proof is as follows:<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:mo>&lt;</mml:mo><mml:mi>a</mml:mi><mml:mo>&gt;</mml:mo><mml:mo>+</mml:mo><mml:mo>&lt;</mml:mo><mml:mi>b</mml:mi><mml:mo>&gt;=</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mi>a</mml:mi><mml:mo>+</mml:mo><mml:mi>r</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mi>b</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>r</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>a</mml:mi><mml:mo>+</mml:mo><mml:mi>b</mml:mi></mml:math></disp-formula></p>
<p>Thus, we have <inline-formula id="ieqn-81"><mml:math id="mml-ieqn-81"><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>l</mml:mi><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>L</mml:mi><mml:mi>a</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>, <inline-formula id="ieqn-82"><mml:math id="mml-ieqn-82"><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>l</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>L</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>. Using secure aggregation protocol encryption is<inline-formula id="ieqn-83"><mml:math id="mml-ieqn-83"><mml:mo>&lt;</mml:mo><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>l</mml:mi><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mo>&gt;=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>L</mml:mi><mml:mi>a</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>r</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, <inline-formula id="ieqn-84"><mml:math id="mml-ieqn-84"><mml:mo>&lt;</mml:mo><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>l</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>&gt;=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>L</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mi>r</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, then <inline-formula id="ieqn-85"><mml:math id="mml-ieqn-85"><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>=&lt;</mml:mo><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>l</mml:mi><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>l</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>&gt;=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:munder><mml:msub><mml:mi>g</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>. As long as there is the same initialization, the optimal splitting point of the model computed encrypted using the secure aggregation protocol and the model M&#x2019; computed by XGBoost plaintext are the same, resulting in the same and M&#x2019;. This guarantees lossless properties.</p>
</sec>
<sec id="s5_2">
<label>5.2</label>
<title>Security Analysis</title>
<p>Theorem 2. RPBT guarantees data privacy protection for all participants and safeguards the rights of the originator.</p>
<p>Proof. Participants calculate model-related information g and h from local data, and use a secure aggregation protocol when passing gradient information to collaborators. During the entire federation modeling process, the data of the participants does not go out locally, and the model information passed to the coordinator is also encrypted. These two processes protect the data privacy of the participants. For the originator, it exists in the whole process of federated model training. Only the originator can get the final joint model, so the rights and interests of the originator are guaranteed.</p>
</sec>
</sec>
<sec id="s6">
<label>6</label>
<title>Experimental Analysis</title>
<p><italic>Our experiments are performed on the following two public datasets:</italic></p>
<p>Dataset 1<xref ref-type="fn" rid="fn1"><sup>1</sup></xref><fn id="fn1"><label>1</label><p><uri xlink:href="http://https://www.kaggle.com/uciml/default-of-credit-card-clients-dataset">https://www.kaggle.com/uciml/default-of-credit-card-clients-dataset</uri>.</p></fn>: This is a public credit scoring dataset related to the task of estimating whether a user will pay on time. This dataset is a binary dataset, which contains a total of 30,000 pieces of data and 25 attributes.</p>
<p>Dataset 2<xref ref-type="fn" rid="fn2"><sup>2</sup></xref><fn id="fn2"><label>2</label><p><uri xlink:href="https://www.kaggle.com/arashnic/covid19-hospital-treatment">https://www.kaggle.com/arashnic/covid19-hospital-treatment</uri>.</p></fn>: The hospitalization information of some COVID-19 patients in hospitals in a certain area is recorded, which is related to the estimated hospitalization time of each patient under different medical conditions. This dataset is a multi-class dataset and it contains a total of 318,000 instances and 18 attributes.</p>
<p>In our experiments, we use 70% of the dataset for training, and then the rest of the data is used to for testing the model. All experiments are performed on 8GB video memory and Intel Core i7-9750H video memory.</p>
<p>First, we design experiments to compare the performance of RPBT with XGBOOST. When using the RPBT algorithm, we divide the training set into 21 parts in order to simulate the effect of multiple participants getting multiple trees. It is distributed to 1 originator and 20 participants. In each round of training, the originator and two randomly selected participants are trained, and a total of 10 trees are trained. For XGBOOST, we directly use the entire dataset. We set the maximum depth of each tree to 5 and the learning rate to 0.3. We considered commonly used metrics, including accuracy (ACC), F1-Score, and area under the ROC curve (AUC). The results are shown in <xref ref-type="table" rid="table-4">Tab. 4</xref>, and we observe that RPBT performs as well as XGBOOST in almost all cases. There is no big gap between the indicators of RPBT and the indicators of XGBOOST, and some indicators are even better than those of XGBOOST. We can reasonably guess that the RPBT training process did not lose too much model accuracy.</p>
<table-wrap id="table-4">
<label>Table 4</label>
<caption>
<title>Performance for RPBT <italic>vs</italic>. XGBOOST</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<tbody>
<tr>
<td></td>
<td colspan="3" align="center">Dataset 1</td>
<td colspan="3" align="center">Dataset 2</td>
</tr>
<tr>
<td><inline-formula id="ieqn-86"><mml:math id="mml-ieqn-86"><mml:mrow><mml:mtext>Model</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-87"><mml:math id="mml-ieqn-87"><mml:mrow><mml:mtext>ACC</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-88"><mml:math id="mml-ieqn-88"><mml:mrow><mml:mtext>F</mml:mtext></mml:mrow><mml:mn>1</mml:mn><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>score</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-89"><mml:math id="mml-ieqn-89"><mml:mrow><mml:mtext>AUC</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-90"><mml:math id="mml-ieqn-90"><mml:mrow><mml:mtext>ACC</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-91"><mml:math id="mml-ieqn-91"><mml:mrow><mml:mtext>F</mml:mtext></mml:mrow><mml:mn>1</mml:mn><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>score</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-92"><mml:math id="mml-ieqn-92"><mml:mrow><mml:mtext>AUC</mml:mtext></mml:mrow></mml:math></inline-formula></td>
</tr>
<tr>
<td><inline-formula id="ieqn-93"><mml:math id="mml-ieqn-93"><mml:mrow><mml:mtext>RPBT</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td>0.8111</td>
<td>0.3729</td>
<td>0.6115</td>
<td>0.934</td>
<td>0.4485</td>
<td>0.6262</td>
</tr>
<tr>
<td><inline-formula id="ieqn-94"><mml:math id="mml-ieqn-94"><mml:mrow><mml:mtext>XGBOOST</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td>0.8078</td>
<td>0.3425</td>
<td>0.6006</td>
<td>0.933</td>
<td>0.4528</td>
<td>0.7079</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>In order to study the accuracy of RPBT in more detail, we added a new logistic regression algorithm for comparison. As shown in <xref ref-type="fig" rid="fig-3">Fig. 3</xref>, we divided the two datasets into multiple subsets of different sizes. In this case, if the data size of each participant is larger, the final results of binary classification and multi-classification will be more accurate.</p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>Accuracy curves for different dataset sizes</title>
</caption>
<graphic mimetype="image" mime-subtype="png" xlink:href="CMC_31684-fig-3.png"/>
</fig>
<p>In addition, as shown in <xref ref-type="fig" rid="fig-4">Figs. 4</xref> and <xref ref-type="fig" rid="fig-5">5</xref>, we observe the accuracy of RPBT and XGBOOST by modifying the depth of the tree under the same dataset, and we can still see that RPBT meets our expectations.</p>
<fig id="fig-4">
<label>Figure 4</label>
<caption>
<title>Accuracy at different depths on binary datasets</title>
</caption>
<graphic mimetype="image" mime-subtype="png" xlink:href="CMC_31684-fig-4.png"/>
</fig><fig id="fig-5">
<label>Figure 5</label>
<caption>
<title>Accuracy at different depths in multi-class datasets</title>
</caption>
<graphic mimetype="image" mime-subtype="png" xlink:href="CMC_31684-fig-5.png"/>
</fig>
<p>In the RPBT scheme, we mentioned that some participants can be set to not conduct joint training.</p>
<p>We can control the number of participants who do not participate in training by modifying the <inline-formula id="ieqn-95"><mml:math id="mml-ieqn-95"><mml:mrow><mml:mtext>error</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>host</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>num&#xA0;</mml:mtext></mml:mrow></mml:math></inline-formula>parameter specific to the RPBT model. Observe the relationship between error rate and running time during the change of <inline-formula id="ieqn-96"><mml:math id="mml-ieqn-96"><mml:mrow><mml:mtext>error</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>host</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>num</mml:mtext></mml:mrow></mml:math></inline-formula>. As shown in <xref ref-type="fig" rid="fig-6">Fig. 6</xref>, when we make the model more secure by adding parties that do not train jointly, the error rate of the model increases, but the performance improves.</p>
<fig id="fig-6">
<label>Figure 6</label>
<caption>
<title>Error rate <italic>vs</italic>. and running time curve under different error_host_num_rate</title>
</caption>
<graphic mimetype="image" mime-subtype="png" xlink:href="CMC_31684-fig-6.png"/>
</fig>
</sec>
<sec id="s7">
<label>7</label>
<title>Related Works</title>
<p>The constant occurrence of data leaks and privacy violations has made the public realize the need to protect user privacy and data confidentiality. Recently, researchers are looking at how privacy-preserving technologies can be applied in everyday life. For example, [<xref ref-type="bibr" rid="ref-11">11</xref>,<xref ref-type="bibr" rid="ref-12">12</xref>] proposed several solutions for data privacy protection in the online car-hailing service, and [<xref ref-type="bibr" rid="ref-13">13</xref>,<xref ref-type="bibr" rid="ref-14">14</xref>] proposed a data privacy protection scheme under the Internet of Vehicles on a larger scale. In the context of the dual requirements of data privacy security protection and data silos cracking, federated learning emerges from time to time. To protect the privacy of data when multi-user joint training of models, Google introduced a federated learning framework to build machine learning models based on datasets distributed across multiple devices while preventing data leakage [<xref ref-type="bibr" rid="ref-15">15</xref>]. Its basic idea is that each local mobile terminal uses the local data of the same model architecture to train the local model. The global model can be updated simply by averaging all local models. Following this method proposed by Google, the original machine learning or deep learning model is improved into some new model algorithms to adapt to the federated environment, including decision trees [<xref ref-type="bibr" rid="ref-16">16</xref>], linear [<xref ref-type="bibr" rid="ref-17">17</xref>] and neural networks [<xref ref-type="bibr" rid="ref-18">18</xref>]. Improvements have focused on overcoming statistical challenges and improving the security of federated learning [<xref ref-type="bibr" rid="ref-19">19</xref>], and there are also some research efforts to make federated learning more personalized [<xref ref-type="bibr" rid="ref-20">20</xref>&#x2013;<xref ref-type="bibr" rid="ref-22">22</xref>]. However, so far, there has not been a scenario where the protection of the rights and interests of the originator has been considered.</p>
<p>The model algorithm we designed is based on the XGBoost algorithm. The exploration of XGBoost can be traced back to the decision tree algorithm, a well-known learning technique for classification and regression tasks. Many decision tree variants have been proposed for different application scenarios, such as C4.5 [<xref ref-type="bibr" rid="ref-23">23</xref>] and CART [<xref ref-type="bibr" rid="ref-24">24</xref>]. Later, the concept of integration was proposed to aggregate multiple trees into one tree, which can be implemented by the gradient boosting tree algorithm [<xref ref-type="bibr" rid="ref-25">25</xref>]. Among them, gradient boosting tree is an efficient and widely used machine learning method. Successful applications in learning to rank [<xref ref-type="bibr" rid="ref-26">26</xref>] and structured prediction [<xref ref-type="bibr" rid="ref-27">27</xref>]. A scalable end-to-end tree boosting algorithm, XGBoost, emerged in later development and is widely used by data scientists to achieve very good model results in many machine learning challenges. However, when the feature dimension is high and the amount of data is large, the efficiency and scalability are still not ideal. One main reason is that, for each feature, they need to scan all data instances to estimate the information gain for all possible split points, which is very time-consuming. In order to solve this problem, we have studied some big data processing and analysis methods according to [<xref ref-type="bibr" rid="ref-28">28</xref>,<xref ref-type="bibr" rid="ref-29">29</xref>]. Meanwhile [<xref ref-type="bibr" rid="ref-30">30</xref>] proposed a new technique that can speed up the training of traditional gradient boosted trees by more than 20 times. We use this computing idea to optimize the computing time of our model.</p>
</sec>
<sec id="s8">
<label>8</label>
<title>Conclusion</title>
<p>In this paper, we study the issue of initiator rights protection when jointly training models, and propose a federated boosted tree model for initiator rights protection, called RPBT. RPBT can combine multiple participants for joint modeling, while ensuring the rights of the initiator and the data privacy of the participants. In RPBT, we propose an effective method to protect the rights and interests of initiators. When the initiator purchases the data of the participants through payment to build a joint model, we use RPBT so that the participants who provide the sample data will not obtain the final joint model. In addition, the local data of the participants will not be leaked during the joint training process, which ensures the data security of the participants. At the same time, the joint training using the data held by each participant also improves the accuracy of the model. Theoretical analysis and experiments show that RPBT is secure, accurate and efficient. Future work for the authors or other researchers may be to use the proposed RPBT model in the real world, designing multiple usage scenarios for the RPBT model. And optimize the model during use to improve performance.</p>
</sec>
</body>
<back>
<fn-group>
<fn fn-type="other"><p><bold>Funding Statement:</bold> This work was supported by National Natural Science Foundation of China (Grant No. 61976064), the National Natural Science Foundation of China (Grant No. 62172123).</p>
</fn>
<fn fn-type="conflict"><p><bold>Conflicts of Interest:</bold> The authors declare that they have no conflicts of interest to report regarding the present study.</p>
</fn>
</fn-group>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>[1]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>V.</given-names> <surname>Mayer-Schonberger</surname></string-name> and <string-name><given-names>Y.</given-names> <surname>Padova</surname></string-name></person-group>, &#x201C;<article-title>Regime change: Enabling big data through Europe&#x2019;s new data protection regulation</article-title>,&#x201D; <source>Science &#x0026; Technology Law Review</source>, vol. <volume>17</volume>, no. <issue>2</issue>, pp. <fpage>315</fpage>&#x2013;<lpage>335</lpage>, <year>2015</year>.</mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>R.</given-names> <surname>Zhuo</surname></string-name>, <string-name><given-names>B.</given-names> <surname>Huffaker</surname></string-name> and <string-name><given-names>S.</given-names> <surname>Greenstein</surname></string-name></person-group>, &#x201C;<article-title>The impact of the general data protection regulation on internet interconnection</article-title>,&#x201D; <source>Telecommunications Policy</source>, vol. <volume>45</volume>, no. <issue>2</issue>, pp. <fpage>102083</fpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>H.</given-names> <surname>Yu</surname></string-name>, <string-name><given-names>X.</given-names> <surname>Jia</surname></string-name>, <string-name><given-names>H.</given-names> <surname>Zhang</surname></string-name> and <string-name><given-names>J.</given-names> <surname>Shu</surname></string-name></person-group>, &#x201C;<article-title>Efficient and privacy-preserving ride matching using exact road distance in online ride hailing services</article-title>,&#x201D; <source>IEEE Transactions on Services Computing</source>, vol. 15, no. 4, pp. <fpage>1841</fpage>&#x2013;<lpage>1854</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-4"><label>[4]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>H.</given-names> <surname>Yu</surname></string-name>, <string-name><given-names>H.</given-names> <surname>Zhang</surname></string-name>, <string-name><given-names>X.</given-names> <surname>Yu</surname></string-name>, <string-name><given-names>X.</given-names> <surname>Du</surname></string-name> and <string-name><given-names>M.</given-names> <surname>Guizani</surname></string-name></person-group>, &#x201C;<article-title>PGRide: Privacy-preserving group ridesharing matching in online ride hailing services</article-title>,&#x201D; <source>IEEE Internet of Things Journal</source>, vol. <volume>8</volume>, no. <issue>7</issue>, pp. <fpage>5722</fpage>&#x2013;<lpage>5735</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-5"><label>[5]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>J.</given-names> <surname>Konecny</surname></string-name>, <string-name><given-names>H. B.</given-names> <surname>Mcmahan</surname></string-name>, <string-name><given-names>F. X.</given-names> <surname>Yu</surname></string-name>, <string-name><given-names>P.</given-names> <surname>Richtarik</surname></string-name>, <string-name><given-names>A. T.</given-names> <surname>Suresh</surname></string-name> <etal>et al.</etal></person-group><italic>,</italic> &#x201C;<article-title>Federated learning: Strategies for improving communication efficiency</article-title>,&#x201D; in <conf-name>International Conference on Learning Representations</conf-name>, VAN, CAN, <year>2016</year>. </mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>Q.</given-names> <surname>Yang</surname></string-name>, <string-name><given-names>Y.</given-names> <surname>Liu</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Chen</surname></string-name> and <string-name><given-names>Y.</given-names> <surname>Tong</surname></string-name></person-group>, &#x201C;<article-title>Federated machine learning: Concept and applications</article-title>,&#x201D; <source>ACM Transactions on Intelligent Systems and Technology</source>, vol. <volume>10</volume>, no. <issue>2</issue>, pp. <fpage>1</fpage>&#x2013;<lpage>19</lpage>, <year>2019</year>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>I.</given-names> <surname>Damg&#x00E5;rd</surname></string-name>, <string-name><given-names>D.</given-names> <surname>Escudero</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Frederiksen</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Keller</surname></string-name>, <string-name><given-names>P.</given-names> <surname>Scholl</surname></string-name> <etal>et al.</etal></person-group><italic>,</italic> &#x201C;<article-title>New primitives for actively-secure MPC over rings with applications to private machine learning</article-title>,&#x201D; in <conf-name>IEEE Symp. on Security and Privacy</conf-name>, Oakland, USA, pp. <fpage>1102</fpage>&#x2013;<lpage>1120</lpage>, <year>2019</year>. </mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>T.</given-names> <surname>Chen</surname></string-name> and <string-name><given-names>C.</given-names> <surname>Guestrin</surname></string-name></person-group>, &#x201C;<article-title>XGBoost: A scalable tree boosting system</article-title>,&#x201D; in <conf-name>Proc. of the 22nd ACM SIGKDD Int. Conf. on Knowledge Discovery and Data Mining</conf-name>, <publisher-loc>San Francisco, CA, USA</publisher-loc>, <year>2016</year>. </mixed-citation></ref>
<ref id="ref-9"><label>[9]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>K.</given-names> <surname>Bonawitz</surname></string-name>, <string-name><given-names>V.</given-names> <surname>Ivanov</surname></string-name>, <string-name><given-names>B.</given-names> <surname>Kreuter</surname></string-name>, <string-name><given-names>A.</given-names> <surname>Marcedone</surname></string-name>, <string-name><given-names>H. B.</given-names> <surname>McMahan</surname></string-name> <etal>et al.</etal></person-group><italic>,</italic> &#x201C;<article-title>Practical secure aggregation for privacy-preserving machine learning</article-title>,&#x201D; in <conf-name>Proc. of the 2017 ACM SIGSAC Conf. on Computer and Communications Security</conf-name>, <publisher-loc>Dallas Texas, USA</publisher-loc>, pp. <fpage>1175</fpage>&#x2013;<lpage>1191</lpage>, <year>2017</year>. </mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>W.</given-names> <surname>Diffie</surname></string-name> and <string-name><given-names>M. E.</given-names> <surname>Hellman</surname></string-name></person-group>, &#x201C;<article-title>New direction in cryptography</article-title>,&#x201D; <source>IEEE Transactions on Information Theory</source>, vol. <volume>22</volume>, no. <issue>6</issue>, pp. <fpage>644</fpage>&#x2013;<lpage>654</lpage>, <year>2019</year>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>H.</given-names> <surname>Yu</surname></string-name>, <string-name><given-names>X.</given-names> <surname>Jia</surname></string-name>, <string-name><given-names>H.</given-names> <surname>Zhang</surname></string-name>, <string-name><given-names>X.</given-names> <surname>Yu</surname></string-name> and <string-name><given-names>J.</given-names> <surname>Shu</surname></string-name></person-group>, &#x201C;<article-title>PSRide: Privacy-preserving shared ride matching for online ride hailing systems</article-title>,&#x201D; <source>IEEE Transactions on Dependable and Secure Computing</source>, vol. <volume>18</volume>, no. <issue>3</issue>, pp. <fpage>1425</fpage>&#x2013;<lpage>1440</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-12"><label>[12]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>H.</given-names> <surname>Yu</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Shu</surname></string-name>, <string-name><given-names>X.</given-names> <surname>Jia</surname></string-name>, <string-name><given-names>H.</given-names> <surname>Zhang</surname></string-name> and <string-name><given-names>X.</given-names> <surname>Yu</surname></string-name></person-group>, &#x201C;<article-title>LpRide: Lightweight and privacy-preserving ride matching over road networks in online ride hailing systems</article-title>,&#x201D; <source>IEEE Transactions on Vehicular Technology</source>, vol. <volume>68</volume>, no. <issue>11</issue>, pp. <fpage>10418</fpage>&#x2013;<lpage>10428</lpage>, <year>2019</year>.</mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>Y.</given-names> <surname>Wang</surname></string-name>, <string-name><given-names>Z.</given-names> <surname>Tian</surname></string-name>, <string-name><given-names>Y.</given-names> <surname>Sun</surname></string-name>, <string-name><given-names>X.</given-names> <surname>Du</surname></string-name> and <string-name><given-names>N.</given-names> <surname>Guizani</surname></string-name></person-group>, &#x201C;<article-title>LocJury: An IBN-based location privacy preserving scheme for IoCV</article-title>,&#x201D; <source>IEEE Transactions on Intelligent Transportation Systems</source>, vol. <volume>22</volume>, no. <issue>8</issue>, pp. <fpage>5028</fpage>&#x2013;<lpage>5037</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-14"><label>[14]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>X. R.</given-names> <surname>Zhang</surname></string-name>, <string-name><given-names>X.</given-names> <surname>Chen</surname></string-name>, <string-name><given-names>W.</given-names> <surname>Sun</surname></string-name> and <string-name><given-names>X. Z.</given-names> <surname>He</surname></string-name></person-group>, &#x201C;<article-title>Vehicle re-identification model based on optimized densenet121 with joint loss</article-title>,&#x201D; <source>Computers, Materials &#x0026; Continua</source>, vol. <volume>67</volume>, no. <issue>3</issue>, pp. <fpage>3933</fpage>&#x2013;<lpage>3948</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-15"><label>[15]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>P.</given-names> <surname>Kairouz</surname></string-name>, <string-name><given-names>H. B.</given-names> <surname>McMahan</surname></string-name>, <string-name><given-names>B.</given-names> <surname>Avent</surname></string-name>, <string-name><given-names>A.</given-names> <surname>Bellet</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Bennis</surname></string-name> <etal>et al.</etal></person-group><italic>,</italic> &#x201C;<article-title>Advances and open problems in federated learning</article-title>,&#x201D; <source>Foundations and Trends&#x00AE; in Machine Learning</source>, vol. <volume>14</volume>, no. <issue>1&#x2013;2</issue>, pp. <fpage>1</fpage>&#x2013;<lpage>210</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-16"><label>[16]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>Q. B.</given-names> <surname>Li</surname></string-name>, <string-name><given-names>Z. Y.</given-names> <surname>Wen</surname></string-name> and <string-name><given-names>B. S.</given-names> <surname>He</surname></string-name></person-group>, &#x201C;<article-title>Practical federated gradient boosting decision trees</article-title>,&#x201D; <source>Association for the Advance of Artificial Intelligence</source>, vol. <volume>34</volume>, no. <issue>4</issue>, pp. <fpage>4642</fpage>&#x2013;<lpage>4649</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-17"><label>[17]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>F.</given-names> <surname>Hanzely</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Hanzely</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Horv&#x00E1;th</surname></string-name> and <string-name><given-names>P.</given-names> <surname>Richtarik</surname></string-name></person-group>, &#x201C;<article-title>Lower bounds and optimal algorithms for personalized federated learning</article-title>,&#x201D; <source>Neural Information Processing Systems</source>, vol. <volume>33</volume>, pp. <fpage>2304</fpage>&#x2013;<lpage>2315</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-18"><label>[18]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>M.</given-names> <surname>Yurochkin</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Agarwal</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Ghosh</surname></string-name>, <string-name><given-names>K.</given-names> <surname>Greenewald</surname></string-name>, <string-name><given-names>N.</given-names> <surname>Hoang</surname></string-name> <etal>et al.</etal></person-group><italic>,</italic> &#x201C;<article-title>Bayesian nonparametric federated learning of neural networks</article-title>,&#x201D; in <conf-name>Int. Conf. on Machine Learning</conf-name>, LA, USA, pp. <fpage>7252</fpage>&#x2013;<lpage>7261</lpage>, <year>2019</year>. </mixed-citation></ref>
<ref id="ref-19"><label>[19]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>V.</given-names> <surname>Smith</surname></string-name>, <string-name><given-names>C. K.</given-names> <surname>Chiang</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Sanjabi</surname></string-name> and <string-name><given-names>A. S.</given-names> <surname>Talwalkar</surname></string-name></person-group>, &#x201C;<article-title>Federated multi-task learning</article-title>,&#x201D; in <conf-name>Advances in Neural Information Processing Systems</conf-name>, <publisher-loc>Long Beach, CA, USA</publisher-loc>, pp. <fpage>4424</fpage>&#x2013;<lpage>4434</lpage>, <year>2017</year>. </mixed-citation></ref>
<ref id="ref-20"><label>[20]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>F.</given-names> <surname>Chen</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Luo</surname></string-name>, <string-name><given-names>Z.</given-names> <surname>Dong</surname></string-name>, <string-name><given-names>Z.</given-names> <surname>Li</surname></string-name> and <string-name><given-names>X.</given-names> <surname>He</surname></string-name></person-group>, &#x201C;<article-title>Federated meta-learning with fast convergence and efficient communication</article-title>,&#x201D; <roman>arXiv preprint</roman>, <year>2018</year>.</mixed-citation></ref>
<ref id="ref-21"><label>[21]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>Z.</given-names> <surname>Sun</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Feng</surname></string-name>, <string-name><given-names>L.</given-names> <surname>Yin</surname></string-name>, <string-name><given-names>Z.</given-names> <surname>Zhang</surname></string-name>, <string-name><given-names>R.</given-names> <surname>Li</surname></string-name> <etal>et al.</etal></person-group><italic>,</italic> &#x201C;<article-title>Fed-dfe: A decentralized function encryption-based privacy-preserving scheme for federated learning</article-title>,&#x201D; <source>Computers, Materials &#x0026; Continua</source>, vol. <volume>71</volume>, no. <issue>1</issue>, pp. <fpage>1867</fpage>&#x2013;<lpage>1886</lpage>, <year>2022</year>.</mixed-citation></ref>
<ref id="ref-22"><label>[22]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>Z.</given-names> <surname>Gu</surname></string-name>, <string-name><given-names>L.</given-names> <surname>He</surname></string-name>, <string-name><given-names>P.</given-names> <surname>Li</surname></string-name>, <string-name><given-names>P.</given-names> <surname>Sun</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Shi</surname></string-name> <etal>et al.</etal></person-group><italic>,</italic> &#x201C;<article-title>Frepd: A robust federated learning framework on variational autoencoder</article-title>,&#x201D; <source>Computer Systems Science and Engineering</source>, vol. <volume>39</volume>, no. <issue>3</issue>, pp. <fpage>307</fpage>&#x2013;<lpage>320</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-23"><label>[23]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>S.</given-names> <surname>Sharma</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Agrawal</surname></string-name> and <string-name><given-names>S.</given-names> <surname>Sharma</surname></string-name></person-group>, &#x201C;<article-title>Classification through machine learning technique: C4.5 algorithm based on various entropies</article-title>,&#x201D; <source>International Journal of Computer Applications</source>, vol. <volume>82</volume>, no. <issue>16</issue>, pp. <fpage>28</fpage>&#x2013;<lpage>32</lpage>, <year>2013</year>.</mixed-citation></ref>
<ref id="ref-24"><label>[24]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><given-names>D.</given-names> <surname>Steinberg</surname></string-name> and <string-name><given-names>P.</given-names> <surname>Colla</surname></string-name></person-group>, &#x201C;<chapter-title>CART: Classification and regression trees</chapter-title>,&#x201D; in <source>The Top Ten Algorithms in Data Mining</source>, <edition>1st</edition> edition, <publisher-loc>New York, USA</publisher-loc>: <publisher-name>Chapman and Hall/CRC</publisher-name>, pp. <fpage>193</fpage>&#x2013;<lpage>216</lpage>, <year>2009</year>.</mixed-citation></ref>
<ref id="ref-25"><label>[25]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>J. H.</given-names> <surname>Friedman</surname></string-name></person-group>, &#x201C;<article-title>Greedy function approximation: A gradient boosting machine</article-title>,&#x201D; <source>The Annals of Statistics</source>, vol. <volume>29</volume>, no. <issue>5</issue>, pp. <fpage>1189</fpage>&#x2013;<lpage>1232</lpage>, <year>2001</year>.</mixed-citation></ref>
<ref id="ref-26"><label>[26]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>J. C.</given-names> <surname>Christopher</surname></string-name></person-group>, &#x201C;<article-title>From ranknet to lambdarank to lambdamart: An overview</article-title>,&#x201D; <source>Learning</source>, vol. <volume>11</volume>, no. <issue>81</issue>, pp. <fpage>23</fpage>&#x2013;<lpage>581</lpage>, <year>2010</year>.</mixed-citation></ref>
<ref id="ref-27"><label>[27]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>T.</given-names> <surname>Chen</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Singh</surname></string-name>, <string-name><given-names>B.</given-names> <surname>Taskar</surname></string-name> and <string-name><given-names>C.</given-names> <surname>Guestrin</surname></string-name></person-group>, &#x201C;<article-title>Efficient second-order gradient boosting for conditional random fields</article-title>,&#x201D; in <conf-name>Proc. of 18th Artificial Intelligence and Statistics Conf.</conf-name>, <publisher-loc>San Diego, California, USA</publisher-loc>, vol.<volume>1</volume>, <year>2015</year>. </mixed-citation></ref>
<ref id="ref-28"><label>[28]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>M. A. R.</given-names> <surname>Khan</surname></string-name> and <string-name><given-names>M. K.</given-names> <surname>Jain</surname></string-name></person-group>, &#x201C;<article-title>Feature point detection for repacked android apps</article-title>,&#x201D; <source>Intelligent Automation &#x0026; Soft Computing</source>, vol. <volume>26</volume>, no. <issue>6</issue>, pp. <fpage>1359</fpage>&#x2013;<lpage>1373</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-29"><label>[29]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>N.</given-names> <surname>Binti</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Ahmad</surname></string-name>, <string-name><given-names>Z.</given-names> <surname>Mahmoud</surname></string-name> and <string-name><given-names>R. M.</given-names> <surname>Mehmood</surname></string-name></person-group>, &#x201C;<article-title>A pursuit of sustainable privacy protection in big data environment by an optimized clustered-purpose based algorithm</article-title>,&#x201D; <source>Intelligent Automation &#x0026; Soft Computing</source>, vol. <volume>26</volume>, no. <issue>6</issue>, pp. <fpage>1217</fpage>&#x2013;<lpage>1231</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-30"><label>[30]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>G. L.</given-names> <surname>Ke</surname></string-name>, <string-name><given-names>Q.</given-names> <surname>Meng</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Finley</surname></string-name>, <string-name><given-names>T. F.</given-names> <surname>Wang</surname></string-name>, <string-name><given-names>W.</given-names> <surname>Chen</surname></string-name> <etal>et al.</etal></person-group><italic>,</italic> &#x201C;<article-title>Lightgbm: A highly efficient gradient boosting decision tree</article-title>,&#x201D; <source>Advances in Neural Information Processing Systems</source>, vol. <volume>30</volume>, pp. <fpage>3146</fpage>&#x2013;<lpage>3154</lpage>, <year>2017</year>.</mixed-citation></ref>
</ref-list>
</back>
</article>










