GlassNet: a multitask deep neural network for predicting many glass
  properties
A multitask deep neural network model was trained on more than 218k different
glass compositions. This model, called GlassNet, can predict 85 different
properties (such as optical, electrical, dielectric, mechanical, and thermal
properties, as well as density, viscosity/relaxation, crystallization, surface
tension, and liquidus temperature) of glasses and glass-forming liquids of
different chemistries (such as oxides, chalcogenides, halides, and others). The
model and the data used to train it are available in the GlassPy Python module
as free and open source software for the community to use and build upon. As a
proof of concept, GlassNet was used with the MYEGA viscosity equation to
predict the temperature dependence of viscosity and outperformed another
general purpose viscosity model available in the literature (ViscNet) on unseen
data. An explainable AI algorithm (SHAP) was used to extract knowledge
correlating the input (physicochemical information) and output (glass
properties) of the model, providing valuable insights for glass manufacturing
and design. It is hoped that GlassNet, with its free and open source nature,
can be used to enable faster and better computer-aided design of new
technological glasses.
Daniel R. Cassar
# GlassNet: a multitask deep neural network for predicting many glass properties

###### Abstract

A multitask deep neural network model was trained on more than 218k different glass compositions. This model, called GlassNet, can predict 85 different properties (such as optical, electrical, dielectric, mechanical, and thermal properties, as well as density, viscosity/relaxation, crystallization, surface tension, and liquidus temperature) of glasses and glass-forming liquids of different chemistries (such as oxides, chalcogenides, halides, and others). The model and the data used to train it are available in the GlassPy Python module as free and open source software for the community to use and build upon. As a proof of concept, GlassNet was used with the MYEGA viscosity equation to predict the temperature dependence of viscosity and outperformed another general purpose viscosity model available in the literature (ViscNet) on unseen data. An explainable AI algorithm (SHAP) was used to extract knowledge correlating the input (physicochemical information) and output (glass properties) of the model, providing valuable insights for glass manufacturing and design. It is hoped that GlassNet, with its free and open source nature, can be used to enable faster and better computer-aided design of new technological glasses.

Keywords: non-metallic glasses, artificial neural networks, property prediction

## 1 Introduction

Glasses are particularly interesting materials for data-driven modeling. First, there is no need for crystal structure descriptors, because these materials are noncrystalline. Second, commercial glass properties are highly dependent on glass chemical composition, because the vast majority of these glasses are manufactured by the same process, the melt and quench technique [1]. These facts are often exploited in the literature with good to great results [2]-[9].

Recently, Le Losq et al. [10] reported a new model called i-Melt, which is a multitask deep neural network capable of predicting 18 different properties of melts and glasses in the K\({}_{2}\)O--Na\({}_{2}\)O--Al\({}_{2}\)O\({}_{3}\)--SiO\({}_{2}\) system. A multitask model is a single model that has more than one output [11]. The expectation is that learning how to predict one output can help in predicting another related output.

This work is inspired by i-Melt. The goal is to test whether multitask learning can be beneficial to glass modeling when we increase the scope of the model, both the input (more glass chemistries) and the output (more properties). In the literature, single-output neural
networks are viable algorithms for glass modeling [12]-[22]. However, multitask models have not been explored except for the work of Le Losq et al. [10].

The main hypothesis investigated in this work was \(\mathbf{H}_{1}\): multitask learning improves the performance of predictive models of glass properties.

## 2 Materials and methods

### Data acquisition and processing

The SciGlass database, which is openly available to the community as a GitHub repository [23], provides the data used in this paper. This database consists of several dataframes. For this work, all the data in the main dataframe were collected. The processing steps for the raw data were as follows:

1. Only glasses with a sum of the molar fractions of the compounds between 0.99 and 1.01 were taken into account. Sum of molar fractions that are too far away from unity are probably due to typing errors.
2. Glasses with non-zero amounts of any compound in {"Al2O3+Fe2O3", "MoO3+WO3", "CaO+MgO","FeO+Fe2O3","Li2O+Na2O+K2O","Na2O+K2O","F2O-1","FemOn","HF+H2O", "R2O","R2O3", "R2O3","RO","RmOn"} were removed. These compounds cannot be converted to atomic mass (see next step).
3. The chemical features were converted from compound molar fraction to atomic molar fraction. The atomic fractions were then rebalanced so that their sum is 1 for all examples.
4. Only the elements between atomic numbers 1 and 83 (hydrogen and bismuth included) were considered, excluding promethium and the noble gases. Glasses containing non-zero amounts of excluded elements were removed. This strategy will become clear in the next section when discussing feature extraction.
5. A total of 85 target properties were considered. Glasses without values for at least one property were removed. These properties and related information will be presented later.
6. Some of the properties were processed by setting an acceptable minimum or maximum value. These limits are shown in the Supplementary Material.

After these steps, the processed dataset had 281,093 examples with 919,164 filled target cells. Many target cells are unfilled, as expected. This is not an issue for inducing a neural network model, because the unfilled cells do not contribute in the backpropagation step [24].

The next step was deduplication, the removal of duplicate entries to avoid data leakage [25]. For this step, the atomic fraction was first rounded to the third decimal place, and then glasses with the same composition were grouped together and collapsed into a single entry. The resulting target value was the median of the targets from the duplicate groups, ignoring the unfilled cells. If all cells for a given target were unfilled, then the final collapsed cell was also unfilled. The median was chosen instead of the mean, because it is robust to outliers in small datasets.

After deduplication, the final dataset had 218,533 examples of different glasses, with 795,298 filled target cells. Finally, the data were shuffled and 10% were randomly selected to be part of the holdout dataset. These data were not used for anything else, except at the very end to test the predictive ability of the selected models (simulating what happens when the model sees new data). Hereafter, any reference to the dataset refers to the 90% of the data that was _not_ selected for the holdout dataset, unless otherwise stated.
### Feature extraction, feature selection, and data scaling

Inspired by the works of Ward et al. [26], Hu et al. [27], and Nakamura et al. [28], [29], we extracted physicochemical features from the chemical information of the glasses, following a similar procedure reported in a previous communication [19]. This procedure involved three steps.

The first step was to collect the physicochemical properties of the elements considered in this work (see step 4 of data processing in the previous section). A total of 55 elemental properties were collected using the Python modules mendeleev[30] and matminer[31]. The only restriction at this stage was that the property had to be available for all elements studied (justifying why promethium and noble gases were not considered in the previous section). See Table 1 for 25 of those 55 properties that were selected. The Supplementary Material lists the physicochemical properties that were considered but not selected.

The second step was using the physicochemical properties to compute new features. Let us consider one glass as an example. Let \(\mathbf{C}=[x_{\mathrm{H}},x_{\mathrm{Li}},\cdots,x_{\mathrm{Bi}}]\) be a vector of the atomic mole fractions of the chemical elements that make this glass. Let \(\mathbf{S}=[s_{\mathrm{H}},s_{\mathrm{Li}},\cdots,s_{\mathrm{Bi}}]\) be a vector of a certain physicochemical property \(s\) (atomic radius, for example). Each vector element of \(\mathbf{C}\) and \(\mathbf{S}\) correspond to the atomic mole fraction or physicochemical property of a chemical element. Having these vectors, we can compute the weighted features with

\[w=f(\mathbf{C}\circ\mathbf{S}) \tag{1}\]

and the absolute features with

\[a=f(\lceil\mathbf{C}\rceil\circ\mathbf{S}). \tag{2}\]

In the equations above, \(f\) is an aggregator function, and \(\circ\) is the Hadamard product, also known as the element-wise product. The aggregator functions considered in this work are \(\{\mathrm{sum},\min,\max,\mathrm{mean},\mathrm{std}\}\).

The third step was feature selection. After the previous step, the dataset had 627 features: 77 representing the atomic mole fraction of the chemical elements, 275 representing the weighted physicochemical features (55 physicochemical properties times 5 aggregator functions), and 275 representing the absolute physicochemical features. The first procedure was to remove features with extremely low variance, defined as those with standard deviation lower than \(10^{-3}\). The second procedure was to remove features with high multicolinearity using the Variance Inflation Factor (VIF) [32]. The steps were:

1. Compute the VIF for all remaining features;
2. If all values of VIF are below 5, then stop;
3. Otherwise, remove the feature with the highest VIF and return to step 1.

The rationale of feature extraction is to add more relevant information to the problem to be leveraged by the algorithm when inducing the predictive model. The benefit of feature selection is twofold: reduce the computation power to induce the model (more features require more computation) [33], and reduce multicolinearity, which improves convergence of the model.

Finally, the dataset was scaled using a min-max scaler. This is a linear transformation that converts all features and targets to values between zero and one. This strategy is often used when training neural networks to improve convergence and reduce the difference in magnitude between features and targets.
### Designing and training a multitask neural network

An artificial neural network (NN) algorithm was used to induce the predictive models of this work. More specifically, it was a multitask feedforward neural network (also known as a multilayer perceptron, MLP). This is a well-known algorithm in the machine learning field, and the formalism can be found elsewhere [34]. All NN models in this work were trained with pytorch[35] using lightning[36].

Backpropagation to adjust the NN weights and biases was performed using the weighted Adam optimizer. This optimizer was chosen based on the results of a previous publication [19]. At the start of training, 10% of the training data was randomly selected and reserved as the validation dataset. These data were not used to change the parameters (weights and biases) of the NN, but instead were used for the early stopping routine. This routine reduces overfitting of the NN by stopping its training after a certain number of epochs without improvement in the validation loss transpire. This number of epochs without improvement is a tunable hyperparameter called _patience_. An epoch is when all the training data "passes" through the neural network (forward pass) and then through backpropagation, and can be considered as one cycle of the training process.

Some of the hyperparameters (HP) of the algorithm were not part of the HP tuning; the loss function is one of them. We used the multitask loss function of Liebel and Korner [37], which combines the single-task loss (mean squared error) for each predicted property into a single number. This multitask loss function includes a regularization term with individual weights for each target. These weights are learnable parameters and their purpose is to avoid giving too much weight to those properties with much more data than others (appropriate for the unbalanced database studied).

Other hyperparameters of the algorithm were tuned and a total of 1000 different HP sets were tested. Table 2 shows the search space. The search was performed with the ray[tune] Python module [38], using an Asynchronous Successive Halving Algorithm (ASHA) scheduler [39] with a grace period of 20 and a reduction factor of 4. Search space navigation was performed with suggestions from a Tree-structured Parzen Estimator algorithm [40]. Each layer of the NN was allowed to have its own activation function (that is, the activation function of the hidden layers could be different). The activation functions considered were hyperbolic tangent, sigmoid, ReLU, Leaky ReLU, Softplus, GELU, ELU, PReLU, SiLU, SELU, and Mish. The maximum number of epochs for HP tuning was set to 1000.

After this initial search, 10 HP sets were selected for the next step, which was a 10-fold cross-validation. These 10 HP sets were manually selected from the best scoring sets (using multitask loss as the score), taking care to select _sufficiently different_ network architectures. The rationale is that the top positions of these experiments commonly consist of neural networks that are far too similar; therefore, manually selecting different architectures increases the diversity of architectures to be tested. After cross-validation, the selected HP set was the one with the lowest mean loss considering the 10 local test datasets. This selected architecture will be discussed in the results section, but the reader can already check its hyperparameters in the far right column of Table 2.

The NN obtained is a multilayer perceptron. However, the network that inspired this work (i-Melt) is a multi-headed feedforward NN. Fortunately, one can be easily converted from the other within the pytorch framework. This gives us the opportunity to test a secondary hypothesis of this work \(\mathbf{H}_{2}\): for the induction of multitask predictive models of glass properties, multi-headed feedforward neural networks have a better performance than multilayer perceptrons.

To test H\({}_{2}\), we used a trained NN with the selected HP set and converted it into a multi-headed NN. We did so by replacing the last layer (output layer) with 85 new layers of 10 neurons each (ReLU activation function) in parallel, one layer for each property. These new layers are
relatively small and highly specialized for the prediction of their respective property.

The performance of the models was tested against the holdout dataset to see how they predicted new data. To test H\({}_{1}\), we compared these metrics with another model. The algorithm used to induce this comparative model was a random forest trained using the scikit-learn Python module with the default set of hyperparameters. The models induced by this algorithm had great performance in previous publications [4], [8].

After observing a reasonable performance of the NNs (discussed in the Results section), we proceeded to train the final model using the chosen architecture and considering _all_ the dataset (training _and_ holdout). This final model was given the name GlassNet.

Finally, relevant information for the glass community was obtained by computing the SHap-ley Additive exPlanation (SHAP) values using the shap Python module [41]-[43]. This is an analysis that allows the trained model to be interpreted in search of patterns that can then be used by glass scientists and engineers when designing new glasses. Unfortunately, it was not possible to obtain the interaction SHAP values recently used by the community [9], because this calculation cannot be performed for neural network-based models.

### Modeling the temperature-dependence of viscosity

Knowledge of the temperature-dependence of shear viscosity is essential for glass manufacturing, because it is used to adjust process variables such as melting, working, and annealing temperatures. Recent publications have already reported on data-driven models for predicting this property, ViscNet [19] and i-Melt [10] being two examples of free and openly available data-driven viscosity models.

Many of the properties investigated in this work are directly or indirectly related to shear viscosity. Furthermore, many of these viscosity-related properties were better predicted by the multitask NNs than by the baseline model (discussed in detail in the Results section). Here, we exploited this fact by using the trained models to generate (temperature, viscosity) data tuples, and then using these data points to perform a non-linear regression of the MYEGA equation (Eq. 3), which is a physical model of viscosity [44].

\[\log_{10}(\eta(T))=\log_{10}(\eta_{\infty})+\frac{T_{12,\mathrm{M}}}{T}[12- \log_{10}(\eta_{\infty})]\exp\left(\left[\frac{m}{12-\log_{10}(\eta_{\infty} )}-1\right]\left[\frac{T_{12,\mathrm{M}}}{T}-1\right]\right) \tag{3}\]

In the previous equation, \(\eta\) is the equilibrium shear viscosity, \(\eta_{\infty}\) is the asymptotic viscosity (\(\eta_{\infty}\equiv\lim_{T\rightarrow\infty}\eta(T)\)), \(m\) is the liquid fragility index [45], and \(T_{12,\mathrm{M}}\) has the same definition as \(T_{12}\) (\(\eta(T_{12})\equiv 10^{12}\,\mathrm{Pa}\). s), but it is written with a different notation to indicate that it comes from a non-linear regression of the MYEGA equation. Using this approach, GlassNet can predict three additional properties.

Knowing that the prediction of material properties by machine learning models is much more susceptible to noise (compared with prediction from experimental data), using a robust non-linear regression of Eq. (3) is a good strategy to compensate for this disadvantage. In this work, we used a Cauchy loss for the least squares regression. The mathematical equation for this loss is \(\rho(z)=\ln(1+z)\), where \(z\) is the standard least squares loss.

To test the viscosity prediction capabilities of GlassNet, a set of 143,219 data points of composition, temperature, and measured viscosity were collected from the SciGlass database. Entries containing thorium or uranium were removed, because GlassNet cannot predict glasses with either of these elements. Entries with \(\log_{10}(\eta)\) outside the [-5, 12] range, measured at temperatures above 3000 K, or measured at temperatures below the glass transition (predicted by GlassNet) were also removed, because these data are prone to higher measurement errors. Composition (in atomic fraction) was rounded to the third decimal place and temperature (in
Kelvin) was rounded to the second decimal place before duplicate entries were merged into one with the median value of \(\log_{10}(\eta)\). Finally, entries with the same chemical composition as one of the glasses used to train GlassNet were removed, to make this experiment another test of GlassNet's predictive power for unseen compositions.

## 3 Results and discussion

### Data analysis and selected physicochemical features

Table 1 lists the symbols used in this work, their meaning, and their units. Table 3 shows the descriptive statistics (count, minimum, mean, and maximum) of the 85 targets of GlassNet. These numbers reflect the whole dataset after data processing, just before the holdout split.

Of the 85 properties, 26 had more than 10k instances when all data were considered. In this group we find the glass transition temperature, density at ambient temperature, refractive index, Abbe number, Young's modulus, microhardness, linear coefficient of thermal expansion below \(T_{g}\), crystallization peak, crystallization onset, and others.

In contrast, 21 out of 85 properties had less than 1k examples. This group includes maximum crystal growth velocity, density and surface tension at temperatures above ambient, heat capacity at constant pressure, and others.

This representation problem regarding the number of examples of different targets can be an issue if left unattended. For example, the NN may choose to ignore the properties with less representation in favor of those with more data, defeating the purpose of having a multitask model. This problem is minimized by using the multitask loss function of Liebel and Korner [37], as discussed in the Materials and Methods section.

Table 4 shows the descriptive statistics (count, mean, and standard deviation) and elemental mole fraction information (first quartile, median, third quartile, and maximum) for the chemical elements in the glasses used to train GlassNet. These values reflect the full dataset just before the holdout split, similar to the data shown in Table 3.

Considering all the data, 25 of the 72 elements were present in more than 10k examples. In this group, we find the most common chemical elements of inorganic glasses such as oxygen, silicon, boron, sodium, aluminum, calcium, potassium, and others. Similarly, 14 of the 72 elements were present in fewer than 1k examples. In this group we find dysprosium, hafnium, europium, terbium, and others.

Remarkably, some elements in Table 4 have a maximum elemental mole fraction of 1, in other words, these are monoatomic examples present in the dataset, and it is known that most of them are quite resistant to glass formation [1]. While the original authors' rationale for including these particular examples in the SciGlass database is not clear, the information in these entries is typically related to liquidus temperature, which (by definition) is a property of crystalline materials and not glasses. Given the small number of these data points and the importance of the liquidus temperature for glass making [1], these data points were not excluded.

The induced models will inevitably be better at predicting the properties of glasses with chemistries that are more represented in the training dataset. The expectation is that the strategy of physicochemical feature extraction from the data (see methods) will reduce this problem.

Finally, Table 5 shows the 98 selected features out of the 627 considered. Of these 98 features, 64 are elemental mole fractions, 12 are weighted physicochemical features (see Eq. 1), and 22 are absolute physicochemical features (see Eq. 2). Some remarks on these selected features: the aggregator function "mean" is not present; out of a total of 77 elemental mole
fraction features, 13 were not selected (e.g., silicon and oxygen are in this group of 13); out of a total of 55 physicochemical properties considered, only 25 are part of the selected features.

### Neural network

The last column of Table 2 shows the hyperparameters selected after HP tuning. This is a deep neural network with four hidden layers. Each hidden layer has a different activation function. All hidden layers have a dropout probability that decreases from the first to the second layer and then keeps increasing until the last layer. Batch normalization is only present in the first two hidden layers.

The root mean squared error (RMSE) metrics of the NN models trained with the selected set of hyperparameters are shown in Table 3, one metric for each property. The values are the prediction metrics for the holdout dataset (_not_ used to train the model) and the standard deviation is that obtained in the 10-fold cross-validation experiment. The RMSE gives an estimate of the prediction error in the same units and magnitude as the target. The same table also shows the RMSE for the random forest models (baseline model, used for comparison). A t-test (95% confidence) was used to compare how the three models performed; these results are also reported in Table 3.

The multi-headed NN model outperforms the multilayer perceptron model for 13 properties, 12 of which are properties with more than 10k examples. There was only one property for which the multi-headed model had a worse prediction, and that was \(D(1073\,\mathrm{K})\). This result supports H\({}_{2}\); a multi-headed NN improves performance for targets with a large number of examples, without losing generalization power for targets with fewer examples.

Comparing the NN models with the random forest models produced mixed results: for 37 properties, there was no statistical difference between the performance of the random forest models and the NN models. The multilayer perceptron outperformed the random forest in 27 properties and was outperformed by the random forest in 21 properties. The multi-headed NN produced slighly better results: it outperformed the random forest in 30 properties and was outperformed by the random forest in 18 properties.

The properties that the NN predicted better than the random forest were mostly targets with more than one measurement at different temperatures, such as density measured at 1273 and 1673 K. Most of these properties are targets related to viscosity. Properties predicted better by random forest than NN were mostly targets with more than 10k examples.

Overall, neither supporting nor rejecting hypothesis H\({}_{1}\) is possible. On the one hand, a multitask NN improves the prediction of glass properties for targets with measurements in different experimental conditions (e.g., different temperatures), compared to specialized random forest models. Such improved prediction occurs because the shared hidden layers of a multitask NN can exploit the connections between the targets better than specialized models that "know" only one target. On the other hand, the specialized random forest models perform better when more data is available.

A computational advantage of the multitask NN over the random forest model is that it requires less memory to store the trained parameters. The parameters of the NN can be stored in an uncompressed binary file of less than 4 MiB, while the compressed files of all the random forest models require more than 1 GiB of storage. Inference is also slower for random forest models.

One question that arises from these results is whether the performance of the multitask neural network can be improved by target selection. For example, if one of the properties where the NN underperformed the random forest were removed, would the prediction of the remaining targets improve? A conservative hypothesis is that no, it would not improve performance, because the removed data is probably relevant to the overall learning. However, testing this
hypothesis is not the focus of this communication.

### Interpreting the trained model

Figure 1 shows the SHAP value violin plots of three properties: \(C_{p}(1073\,\mathrm{K})\), \(T_{\max(U)}\), and \(\log_{10}(\rho(1073\,\mathrm{K}))\). These plots show the 10 most important features (those with the highest mean absolute SHAP) on the \(y\)-axis, with SHAP values on the \(x\)-axis. The base value (marked as a vertical gray line) is the mean value of the property (considering the entire dataset) and has a SHAP value of zero. The width of the violins represents the number of examples with the same SHAP value, while the color within the violins represents the value of the feature. See the Supplementary Material for the violin plots for the other properties.

As shown in Figure 0(a), \(C_{p}(1073\,\mathrm{K})\) increases with increasing amounts of sodium, boron, magnesium, or calcium. Sodium is the element with the greatest impact on this property. Increasing the standard deviation of the boiling point of the elements present in the glass also increases this property. One can decrease this property by increasing the standard deviation of the FCC lattice parameter, the maximum atomic radius, the standard deviation of the effective nuclear charge, and the sum of the number of filled f valence orbitals. The heat capacity is a property related to the fluctuations in the glasses [46].

Figure 0(b) shows that sodium and boron are the most important features for modeling \(T_{\max(U)}\). The modeling of this rather complex property involves many physicochemical features. With the exception of the melting enthalpy, the other physicochemical features shown in Figure 0(b) are not often discussed in the crystal growth literature. The temperature of the maximum crystal growth velocity is related to the glass-forming ability [47], and is one of key properties for glass-ceramics design, together with the glass transition temperature and the maximum crystal growth velocity [48].

Finally, Figure 0(c) shows sodium once again as the most important feature, this time for \(\log_{10}(\rho(1073\,\mathrm{K}))\). Notably, 8 of the 10 most important features are elemental features for this property, the opposite of what was observed for \(C_{p}(1073\,\mathrm{K})\) and \(T_{\max(U)}\). This list includes elements that are well known in the electrical property community, like potassium, lithium, and vanadium.

The SHAP analysis allows us to answer other questions: What are the most relevant features overall (considering all the properties studied here)? And what are the most relevant features for each group of properties? Examining the frequency of the 10 most important features for each property is one strategy for answering these questions.

Table 6 shows the most frequent features overall and for property groups. Overall, we can see that some of the chemical elements that are most commonly used in glass making are also the most important ones in our analysis. Sodium, boron, lead, lithium, aluminum, potassium, and calcium are on this list. One might think that this is just a list of the most abundant chemical elements in the dataset, but this is not the case, as barium, magnesium, phosphorus, zinc, titanium, and fluor are not on this list (and they are all more abundant than lead in the dataset). Melting enthalpy, number of unfilled valence orbitals, and number of filled d orbitals are physicochemical features that are also collectively relevant to glass properties.

The most relevant features for viscosity and relaxation, optical properties, electrical and dielectric properties, mechanical properties, density, thermal properties, crystallization, and surface tension are also listed in Table 6. Again, sodium and boron are relevant features for most of these property groups. Lithium and lead are also relevant features, appearing many times in this table. Interestingly, the model understood that the optical properties are highly dependent on the filled valence orbitals (where the absorption process takes place) and on lead, bismuth, titanium, niobium, lanthanum, and germanium, known elements used for optical glasses.
These violin plots and the table of relevant features provide valuable insights for glass manufacturers and designers to help them fine-tune the properties of their products.

### Viscosity modeling

The final viscosity dataset (after all the procedures mentioned in the Materials and Methods section) consisted of 134,976 examples. For each of these examples, the viscosity at the measurement temperature was predicted using GlassNet. To evaluate this prediction, the RMSE between the reported and predicted values of \(\log_{10}(\eta)\) was calculated (with \(\eta\) in units of Pa.s). Glassnet had a RMSE of 0.65, performing better than ViscNet [19], another deep learning model used to predict viscosity, which had an RMSE of 1.1 for unseen data. However, GlassNet performed worse than i-Melt (RMSE: 0.4) [10] and the unnamed model reported by Tandia et al. (RMSE: 0.04) [3], two highly specialized models, trained and tested on liquids with much more restricted chemistries than GlassNet. The increase in RMSE can be considered the price paid for increasing the scope of GlassNet.

### Model and data availability

The model reported here is called GlassNet and is available to the community, along with the training data, in the GlassPy Python module, a free and open source module for researchers working with glass materials. See the official repository at [https://github.com/drcassar/glasspy](https://github.com/drcassar/glasspy) for instructions on installing and using this module. In GlassPy, the user has the option to load the MLP or the multi-headed version of GlassNet. GlassPy can also use the random forest models, for those properties where random forest models outperformed the NNs (although, when doing this, the inference is slower). GlassNet can also predict the temperature-dependence of viscosity and the MYEGA parameters, as discussed in this paper.

GlassPy also provides an easy way to load SciGlass data into a pandas DataFrame, including (but not limited to) the GlassNet training dataset. These pandas DataFrames are state of the art Python objects for data analysis. Two advantages of using GlassPy as a frontend for exploring SciGlass data are

1. GlassPy already translates the SciGlass data into a ready-to-use DataFrame with an intuitive naming scheme;
2. GlassPy does not require installing any legacy non-free software (the oficial SciGlass repository only provides the database files in a legacy proprietary Microsoft Access format).

## 4 Summary and conclusion

In this work, we collected more than 218k different glass compositions with more than 795k data points on 85 properties. A new multitask neural network was designed and trained with this rich dataset. We observed that the trained multitask model outperformed specialized models (i.e., random forests) in predicting targets of the same property measured under different conditions (e.g., different temperatures). However, specialized models outperformed the multitask NN for some properties with many data points (more than 10k).

An advantage of the proposed model, compared to other models reported in the literature, is that it is not limited to a specific inorganic glass chemistry and can be used to predict properties of oxides, chalcogenides, halides, and other types of glasses.

We show how the purely data-driven predictions of the proposed model can be used together with a physical model to predict the temperature dependence of viscosity. This approach was
tested with about 135k viscosity data points and yielded better results than another general viscosity model (ViscNet [19]), but worse results than models designed for specific chemistries. Additionally, useful insights for glass manufacturing and design were obtained from the trained model using SHAP analysis.

The obtained model was named GlassNet and is free software, available to the community (together with the training data) in the Python module GlassPy. This free and open source suite for inorganic glass data and property prediction is expected to benefit the community, improve the reproducibility of data-driven publications, and accelerate the development of new and exciting glasses and glass-ceramics (e.g., by using GlassNet with inverse design tools such as GLAS [20]). In addition, the open nature of GlassNet allows the community to build on it to solve other property prediction problems using transfer learning [34], [49], [50].

## Acknowledgements

The author acknowledges funding from the CNPq / INCT - Materials Informatics project. The author also thanks Carolina B. Zanelli for the English revision.

## Declaration of Generative AI and AI-assisted technologies in the writing process

During the preparation of this work the author used Grammarly and DeepL in order to improve readability and grammar. After using these tools, the author reviewed and edited the content as needed and takes full responsibility for the content of the publication.
