## 3 Data analysis and BP Neural Network Model Building  
MATLAB software included plenty of useful functions of neural network algorithm in the Neural Network Toolbox as shown in the literature [32]. These functions provide the possibility to build a basic model for those not professional at machine learning. Therefore, the BPNN models in this article were built with \"newff\" function in Neural Network Toolbox of MATLAB, which is easy for reference. In general, the BP neural network model includes an input layer, an output layer and multiple hidden layers. The previous research shows that the three layer BP neural network with one hidden layer can approximate any non-linear function [32]. Hence, the model in this article was established with one hidden layer and the model structure is shown in Figure 4. \begin{table}
\begin{tabular}{c c c c c} \hline \hline \multirow{2}{*}{**Specimen**} & \multicolumn{3}{c}{**Independent Variable X-Retained Percentage of Each Particle**} & \multirow{2}{*}{**Dependent Variable**} \\  & & **Size Group** & & \\ \cline{2-4}  & **13.2–16.0 mm** & **9.5–13.2 mm** & **4.75–9.5 mm** & **2.36–4.75 mm** & \\ \hline \#1 & 0.06 & 0.3 & 0.16 & 0.33 & 0.3408 \\ \#2 & 0.06 & 0.25 & 0.12 & 0.27 & 0.3406 \\ \#3 & 0.06 & 0.27 & 0.43 & 0.07 & 0.3760 \\ \#4 & 0.06 & 0.21 & 0.12 & 0.38 & 0.3462 \\ \#5 & 0.07 & 0.33 & 0.41 & 0.06 & 0.3795 \\ \(\ldots\) & \(\ldots\) & \(\ldots\) & \(\ldots\) & \(\ldots\) & \(\ldots\) \\ \#196 & 0.01 & 0.4 & 0.35 & 0.05 & 0.3863 \\ \#197 & 0.04 & 0.19 & 0.23 & 0.34 & 0.3507 \\ \#198 & 0.01 & 0.15 & 0.21 & 0.18 & 0.3560 \\ \#199 & 0.04 & 0.2 & 0.23 & 0.07 & 0.3719 \\ \#200 & 0.02 & 0.15 & 0.28 & 0.11 & 0.3642 \\ \hline \hline \end{tabular}
\end{table} 
Table 6: Recorded data of Gradation-13. \begin{table}
\begin{tabular}{c c c c c c} \hline \hline \multirow{2}{*}{**Specimen**} & \multicolumn{3}{c}{**Independent Variable X-Retained Percentage of Each Particle Size Group**} & \multirow{2}{*}{**Dependent**} \\  & **16.0–19.0 mm** & **13.2–16.0 mm** & **9.5–13.2 mm** & **4.75–9.5 mm** & **2.36–4.75 mm** & \\ \hline \#1 & 0.01 & 0.04 & 0.48 & 0.17 & 0 & 0.4149 \\ \#2 & 0.06 & 0.05 & 0.16 & 0.36 & 0 & 0.4020 \\ \#3 & 0.02 & 0.06 & 0.39 & 0.37 & 0.01 & 0.3966 \\ \#4 & 0.07 & 0.02 & 0.14 & 0.57 & 0.01 & 0.3993 \\ \#5 & 0.05 & 0.09 & 0.12 & 0.6 & 0.01 & 0.3946 \\ \(\ldots\) & \(\ldots\) & \(\ldots\) & \(\ldots\) & \(\ldots\) & \(\ldots\) \\ \#196 & 0.08 & 0.19 & 0.04 & 0.08 & 0.44 & 0.3365 \\ \#197 & 0.07 & 0.1 & 0.2 & 0.12 & 0.44 & 0.3372 \\ \#198 & 0.06 & 0.11 & 0.21 & 0.03 & 0.48 & 0.3379 \\ \#199 & 0.02 & 0.26 & 0.13 & 0.01 & 0.5 & 0.3342 \\ \#200 & 0.03 & 0.27 & 0.08 & 0.03 & 0.51 & 0.3364 \\ \hline \hline \end{tabular}
\end{table} 
Table 7: Recorded data of Gradation-16. In the BP model, there are three kinds of key parameters: (1) input and output variables; (2) transfer function; (3) the number of hidden layer nodes and their corresponding weight thresholds. Through the above three parameters, a complete BP neural network prediction model can be obtained and calculated through Equation (1). \[\mathrm{T}=\sum_{i=1}^{n}V_{i}(\sum_{k=1}^{m}f(W_{ki}X_{k}+\varepsilon_{i})+\eta) \tag{1}\]  
where (1) \(X_{k}\) represents model input variables (particle volume fraction of different particle size groups); \(\mathrm{T}\) represents model output result; k represents the number of input variables in the range of 1 to m; m represents the total number of input variables, four for Gradation-13 and five for Gradation-16; (2) f(x) refers to transfer function; (3) \(i\) represents the number of hidden layer nodes in the range of 1 to \(n\); \(n\) refers to the total number of hidden layer nodes; \(W_{ki}\) represents weight from input layer to hidden layer; \(V_{i}\) refers to weight from hidden layer to output layer; \(\varepsilon_{i}\) represents threshold from input layer to hidden layer; \(\eta\) represents threshold from hidden layer to output layer.