# Custom XGBoost Loss function w/ Zygote. Julia Computing blog post

**URL:** https://discourse.julialang.org/t/custom-xgboost-loss-function-w-zygote-julia-computing-blog-post/35811
**Category:** Machine Learning
**Tags:** zygote, kaggle
**Created:** [March 10, 2020, 8:42pm UTC](https://discourse.julialang.org/t/custom-xgboost-loss-function-w-zygote-julia-computing-blog-post/35811 "2020-03-10T20:42:21Z")
**Posts on this page:** 1
**Showing post:** 34

<div class="post-metadata">

### Author: ![Albert\_Zevelev](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/albert_zevelev/32/11844_2.png) [@Albert\_Zevelev](https://discourse.julialang.org/u/Albert_Zevelev)
#### Post date: [April 25, 2020, 12:43am UTC](https://discourse.julialang.org/t/custom-xgboost-loss-function-w-zygote-julia-computing-blog-post/35811/34 "2020-04-25T00:43:15Z")

</div>

After I train all MLJ models I create a Table w/ TableView.jl show the score (RMSE) & run time for each model:  
 ![image](https://global.discourse-cdn.com/julialang/original/3X/7/0/700ed5dd83bab2d6b01f86c1b6423ee33da7642e.png)  
Currently MLJ interfaces to 50 regression models (continuous Y).  
The usual suspects (gradient boosting: XGBoost & LightGBM) perform well.  
Note how well the pure-julia [EvoTrees](https://github.com/Evovest/EvoTrees.jl).jl performs despite being so new!

```julia
sc = [train_m(m, X, y, train, test, predict, rms) for m in m_names]
sc =hcat(sc...)';
showtable( hcat(
    m_names[sortperm(sc[:,1])] ,
    sc[sortperm(sc[:,1]), :]
    ) )

```

Question: how can I save the table/plot outputted by TableView.showtable()?  
Is there a better way to create a table showing scores (that is storable) than TableView.showtable()?

---

_[View the full topic](https://discourse.julialang.org/t/custom-xgboost-loss-function-w-zygote-julia-computing-blog-post/35811)._
