<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>March</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Mash: software tools for developing interactive and transparent machine learning systems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>An T. Nguyen</string-name>
          <email>atn@cs.utexas.edu</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Matthew Lease</string-name>
          <email>ml@utexas.edu</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Byron C. Wallace</string-name>
          <email>byron@ccs.neu.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Northeastern University</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Texas at Austin</institution>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2019</year>
      </pub-date>
      <volume>20</volume>
      <issue>2019</issue>
      <abstract>
        <p>We present Mash, a library that provides software tools for developing interactive and transparent machine learning systems. Mash provides tools for (1) back end: specifying machine learning models, and (2) front end: generating User Interfaces (UIs) that allow non-technical end-users to interpret and interact with the models. In the back-end, Mash includes probabilistic modeling and computation graph utilities. On the front-end, UIs generated by Mash enable end users to examine the model's predictions, manipulate model's parameters, and observe changes in model's predictions. Together, Mash can help developers rapidly build new models and obtain feedback from end users. We present two case studies in which Mash UIs enable end-users to: (1) assess model fairness in predicting student performance, and (2) explore movie recommendations. To support future work, we will open source Mash.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>CCS CONCEPTS</title>
      <p>• Computing methodologies → Machine learning; •
Human centered computing → User interface toolkits; •
Software and its engineering → Development frameworks and
environments.</p>
    </sec>
    <sec id="sec-2">
      <title>1 INTRODUCTION</title>
      <p>The traditional goal of machine learning (ML) is to create
accurate predictors. In a typical development process, ML
IUI Workshops’19, March 20, 2019, Los Angeles, USA
Copyright © 2019 for the individual papers by the papers’ authors. Copying
permitted for private and academic purposes. This volume is published and
copyrighted by its editors.
developers are provided a dataset and are tasked with
building a prediction system that achieves high performance as
measured by standard metrics such as accuracy. The system
is then often presented to end users as a black box, with little
interactive capability. A user interface (UI) may be built, but
the interactions are often limited to specifying the inputs
and observing the outputs; the black box remains opaque.
Although that development process has been successful, there
are many applications where richer end-user interactions are
beneficial or even necessary: when the systems are used to
make high-stakes decisions that afect people, when human
knowledge or creativity is needed, or when the capability to
explore the systems’ predictions may help engage users.</p>
      <p>Developing ML systems capable of providing rich
interactions is a dificult and lengthy process, as it involves the
integration of back-end predictive model building with front-end
UI design. If developers focus only on optimizing predictive
performance without considering end users then the
system may become too complex for end users to meaningfully
interact with.</p>
      <p>To address these issues, we propose Mash, a library for
developing interactive and transparent ML systems. For
developers, Mash facilitates ‘user-aware’ ML development, where
predictive models are integrated with associated UIs. For
end-users, Mash-generated UIs enable rich interactions with
ML systems, helping the users make decisions, explore the
systems, or inject their knowledge into the system.</p>
      <p>
        Advances in ML are often accompanied by software
libraries. The success of Support Vector Machines (SVMs) in
the 2000s was due in part to software packages such as
LIBSVM [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] and SVMLight [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. Recent progress in ML has
been accelerated by the availability of many probabilistic
programming and computation graph libraries (PyMC [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ],
Stan [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], Theano [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], Tensorflow [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], PyTorch [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ], and
others). The creation of specialized software tools for
transparent and interactive ML, such as Mash, has the potential to
similarly accelerate progress.
      </p>
      <p>Mash integrates existing ML libraries with tools for
generating UIs automatically, including tools for specifying how
an end-user can interacts with the models (for example, the
end-user can inspect and manipulate some of the model
parameters and observe how these change the prediction).
Given these tools, developers can build systems with
endusers in mind: they can construct or identify intelligible
components in the systems to expose to end users. For instance,
developers may define a model with a sparsity constraint
(requiring a large number of parameters to be zeros) and
define the UI to include only non-zero parameters for users
to interact with.</p>
      <p>
        We demonstrate the applicability of Mash in two case
studies. First, we consider predicting student performance using
linear regression, mixed efects model, and neural networks.
Such predictions can be used to make important decisions,
which may raise the question of fairness. For example, a ML
system that supports student admission decisions [
        <xref ref-type="bibr" rid="ref36">36</xref>
        ] must
be fair with respect to race and gender. Second, we present
an interactive movie recommendation UI powered by
probabilistic matrix factorization [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ], allowing users to directly
manipulate model parameters to explore recommendations.
2
      </p>
    </sec>
    <sec id="sec-3">
      <title>RELATED WORK</title>
    </sec>
    <sec id="sec-4">
      <title>Model visualization</title>
      <p>
        Software tools for visualizing ML models exist: TensorBoard [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ],
ShinyStan [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], ModelTracker [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and others [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. However,
they aim at helping developers debug models, or helping
expert users (who have ML knowledge) understand and deploy
systems. Tools that aim at non-expert users (Tensorflow
Playground or ConvnetJS) are mainly educational and are used
in toy problems. In contrast, we aim at helping developers
generate UIs to assist non-expert end-users in interpreting
and interacting with ML models in real world problems.
      </p>
      <p>The recently released What-if tool1 enables the
manipulation of the data to observe how the prediction changes.
Mash goes further in enabling the manipulation of the
internal model parameters. Furthermore, What-if is a post-hoc
tool on built models, while Mash is a development tool for
building models.</p>
    </sec>
    <sec id="sec-5">
      <title>Interpretable machine learning</title>
      <p>
        Two main directions in this area are developing inherently
interpretable models, and (2) probing black box models to
generate explainations. In the first direction, popular
methods are decision trees [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ], sparse linear models [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ], and
additive models [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]). Although these methods facilitate user
interpretation, their predictive performance can be limited.
      </p>
      <p>
        In the second direction, recent work has considered
using a simpler model to approximate a complex black-box
model [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ] or finding the most influential training
examples [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ]) for each test instance. These methods can provide
insights into black-box models. However, their explanations
1https://ai.googleblog.com/2018/09/the-what-if-tool-code-free-probing-of.
html
may not be faithful since they are simpler approximations
to complex models.
      </p>
      <p>
        There has also been concern that ‘interpretable’ is not a
well-defined concept [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], and that a more ‘rigorous science’
is needed [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. Other than providing the tools for
developers, we see Mash as a framework toward a ‘science of ML
interpretation’. By building the general tools instead of
focusing on a model or an application, we expect to see general
principles for ML interpretation.
      </p>
    </sec>
    <sec id="sec-6">
      <title>Interactive machine learning:</title>
      <p>
        Work in this area aims at using human interaction to improve
ML systems [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] in a number of applications: image
segmentation [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], text classification [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ], and image search [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ].
Our work aims at creating the tools for building UIs that
enable the interaction between humans and ML systems. We
focus on system transparency, although user interaction can
be used to improve system prediction performance.
      </p>
    </sec>
    <sec id="sec-7">
      <title>Development tools for human computation</title>
      <p>
        Turkit [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] is a tool for developing iterative crowdsourcing
tasks, such as iteratively improving text [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Jabberwocky [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]
provides a programming environment for social computing.
These tools have roughly the same goal: providing an
abstraction layer connecting back-end and front-end components
in order to help developers focus on high-level ideas in
human computation algorithms. Mash has a similar goal for
developing ML systems.
3
      </p>
    </sec>
    <sec id="sec-8">
      <title>BACKGROUND</title>
    </sec>
    <sec id="sec-9">
      <title>Computation graphs</title>
      <p>
        Computation graph libraries (Theano [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], Tensorflow [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ],
PyTorch [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ] and others) provide the tools for defining
operators (from scalars, vectors, and matrices to tensors) and
operations (arithmetic, indexing, conditioning). The key
functionality of these libraries is automatic diferentiation, which
enables gradient based parameter learning. In the
development of new deep neural networks models, these
computation graph libraries have become essential: without them,
developers would need to tediously derive gradients for all
variables in the networks (and repeat after every change).
      </p>
    </sec>
    <sec id="sec-10">
      <title>Probabilistic programming</title>
      <p>
        Probabilistic programming systems (PyMC [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ], Stan [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ],
BUGS [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ], Anglican [
        <xref ref-type="bibr" rid="ref34">34</xref>
        ] and others) provide the tools for
defining probabilistic models, which are probability
distributions over a collection of random variables. Probabilistic
models can also be interpreted as computation graphs in
which the operators (scalars, vectors, ...) are ‘lifted’ from
ifxed values to random variables. Similar to automatic
differentiation, probabilistic programming systems provide the
key functionality of automatic inference: infering the
distribution over all variables given the observed data. Markov
Chain Monte Carlo [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] and Variational Inference [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ] are
two families of commonly implemented automatic inference
methods.
      </p>
      <p>
        Probabilistic modeling is the foundation for many
popular ML algorithms: mixture models, probabilistic matrix
factorization for recommendation [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ], Latent Dirichlet
Allocation (LDA) topic models [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], and others. The advantage
of a probabilistic approach is the clear meaning of variables
in the models and the uniform representation of uncertainty.
However, this approach often does not scale well to very
large datasets.
      </p>
    </sec>
    <sec id="sec-11">
      <title>4 SYSTEM</title>
      <p>
        Mash uses Theano [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] for computation graphs, PyMC [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] for
probabilistic modeling, Dash2 for web application building,
and React3 for user interface rendering. Figure 1 shows
Mash and its dependencies on other tools.
      </p>
      <p>Consider a linear regression model to predict student
grades from two features: ‘study time’ and ’health’ (we will
later use this example as a case study). Linear regression
simply assumes that the target (grade) is a linear combination
of the features:
grade = α + βS × studytime + βH × health + ϵ
(1)
where α , βS , and βH are the parameters to be learned and
ϵ is Normally distributed random noise. Taking a Bayesian
approach, we place zero-mean Normal priors on all
parameters. These priors help regularize parameter estimates to
avoid over fitting.</p>
      <p>Source code for using Mash to implement this model and
specifying the UI is shown below:
import mash as ms
m = ms.Model()
# Assume data is a Pandas dataframe with 3 columns:
# studytime, health, and observed_grade
m.set_pd_data(data)</p>
      <p>Figure 2 shows the generated web UI, which consists
of six sliders. The two data sliders (studytime and health)
are set to their default values (they can also be set to the
values of some test datapoints). The three model parameter
sliders (alpha, beta_S, and beta_H) are set to the values that
the model has learned from the training data. These first
ifve sliders can be manipulated by the end-users, while the
prediction slider (Grade) reacts to these manipulations. For
example, if an end-user moves the ‘studytime’ slider, the
‘Grade’ slider will move to the model’s predicted grade for
a student with the selected study time. End-users can also
move a model parameter slider such as alpha and observe the
change in the model’s prediction. This interaction may help
end-users make sense of how the model works internally.
The overall UI also provides transparency in letting
endusers see and interact with model’s parameters. We note that
the developers make the decisions on which data features
and model parameters to add to the UI. There is a trade-of
between adding all parameters for more transparency vs.
adding fewer parameters for easier end-user sense-making.</p>
      <p>In general, developers use Mash by declaring an ML model
and declaring the corresponding UI. Under the hood, Mash
creates a PyMC probabilistic model, extracts a Theano
computation graph, matches the UI elements to features or model
parameters, sets up callbacks for handling interactions, and
renders the interface.</p>
      <p>For back-end ML model building, Mash provides:
• Placeholders for data.
• Common probability distribution (e.g. Normal).
• Operations on data or model parameters (arithmetic,
indexing, and matrix operations).</p>
      <p>For front-end UI, Mash provides:
• Sliders for manipulating data or parameters, or for
observing model’s predictions.
• Graphs for plotting data.
• Markdown text for explaining the model and
instructing end-users.</p>
      <p>Mash also connects back-end and front-end components
automatically, enabling developers to focus on declaring
what they want in the ML model and the UI.
5</p>
    </sec>
    <sec id="sec-12">
      <title>CASE STUDIES</title>
    </sec>
    <sec id="sec-13">
      <title>Predicting student performance</title>
      <p>
        Some institutions have used ML systems to support making
student admission decisions to their programs [
        <xref ref-type="bibr" rid="ref36">36</xref>
        ], due to
the rapid increase in the number of applicants. Although
reducing the workload for the admission committee, these
systems raise the issue of fairness and transparency: how
do we know these systems do not discriminate between
students based on race or gender, even though these attributes
are not used as features for the predictors? For example, a
common feature is the student’s current school. If a system
has a negative weight on an all-female school then that
system may discriminate between students based on gender
(although it is also possible that the system has correctly
identified a school with low quality teaching). Fairness in
ML is an active research area, such as in the context of credit
rating or criminal justice. Many criteria for fairness have
been proposed [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ], such as equality of opportunity [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] or
demographic parity [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], but there is still no consensus.
Technical criteria may provide some insight, but fairness is a more
complex concept, which necessitates human interpretation.
      </p>
      <p>
        In this case study, we address the issue by making the
system transparent to the end-users, who might be
responsible for making admissions decisions. We use the Student
Performance Dataset from the UCI repository [
        <xref ref-type="bibr" rid="ref12 ref13">12, 13</xref>
        ] and
implement three models: linear regression, a mixed efects
model, and neural networks.
      </p>
      <p>Our linear regression implementation is presented in the
previous section. In this case study, to help end-users assess
model fairness, we include an interactive histogram of the
model’s predictions with respect to student gender (Figure
3):</p>
      <p>The interactive histogram reacts to end-users’
manipulations of the model parameters. If the end-users determine
that there are biases, they can try to manipulate model
parameters to reduce these biases. Other visualization techniques
for assessing fairness are possible. For example, another
histogram may show the distribution of the prediction errors
for each gender.</p>
      <p>Our mixed efects model extends linear regression in
specifying a random efect on the intercept parameter α based
on the school that the student attends4:
In the dataset, there are two schools called MS and GP. The
ifrst line generated an intercept α for each school. Next, in
line 4, we select the intercept based on the school that the
student attends (m.data['school'] is 0 if the school is MS
and 1 if the school is GP). Figure 4 shows our interface, in
which end-users can specify the school of the student (in
addition to study time and health). End-users can also inspect
and manipulate the intercept α for each of the two schools.</p>
      <p>
        For (Bayesian) neural networks, we implement a model
with two hidden units, F0 and F1. The model’s parameters
are: weights from the inputs to the hidden units, and weights
from the hidden units to the final grade prediction. The value
of a hidden unit is a linear combination of the inputs passed
through a non-linear activation function (we use the tanh
4This random efect can be written in R formula as (alpha |school)
Where W(X,Y) is the weight from X to Y (for example the
weight W(health, F0) connects the input health to the first
hidden unit F0). In Figure 5, we display our UI. End-users can
manipulate data, manipulate model parameters, and observe
the predicted grade (similar to previous UIs). A potential
issue is that the hidden units F0 and F1 have no obvious
interpretations. Furthermore, for applications with a large
number of features, the large number of parameters in a
neural network may make it dificult for user to inspect and
manipulate. To address these, developers can implement
sparsity or disentangled representations [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] to reduce the
number of parameters and construct hidden units with clearer
meanings.
      </p>
    </sec>
    <sec id="sec-14">
      <title>Movie recommendation</title>
      <p>Recommendation systems provide suggestions of items to
users. For instance, a movie recommendation system may
suggest new movies to a user given the ratings that user gave
to other movies, often leveraging a large dataset of previous
ratings.
Explanations for recommendation systems exist and have
been widely used in commercial systems such as in Netflix,
but they are typically static, such as ‘people like you also
watch’. In this case study, we consider making a
recommendation system transparent and interactive to users. Users
can directly manipulate the model’s parameters, and observe
how the recommendation changes. This is useful for users
to see how the system works, explore diferent
recommendations, or find recommendations for friends.</p>
      <p>
        One of the most common techniques for recommendation
is Probabilistic Matrix Factorization (PMF) [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ], in which the
system identifies and estimates a number of hidden factors
for each item (movie) and user (viewer). Assuming that there
are n users and m movies. The idea in PMF is to factor the
n × m ratings matrix into two matrices: a n × k user matrix
U and a m × k movie matrix M, where k is the number of
factors (which is usually set to a small number, we set k = 3).
PMF assumes that the rating by user i for movie j is the
dot product of two k dimension row vectors: Ui and Mj .
Intuitively, Ui describes user i and Mj describes movie j. Our
implementation first defines the PMF model:
      </p>
      <p>In Figure 6, we show our UI, where end-users can: (1)
select a user (movie viewer) and a movie, (2) manipulate the
factor values for the selected user and movie, and (3) observe
the predicted rating (also for the selected user and movie). A
potential dificulty is that the factors (F0, F1, and F2) have
no clear meanings. To better understand the predictions, the
end-users may need to look at a large number of movies
and movie factors. For example, if the value of ‘Movie F0’ is
consistently high for action movies, then the factor F0 may
be correlated with that genre. End-users can then interpret
the value of ‘User F0’ as a measure of how much the selected
user likes action movies.
6</p>
    </sec>
    <sec id="sec-15">
      <title>DISCUSSION</title>
    </sec>
    <sec id="sec-16">
      <title>Conclusion</title>
      <p>We have presented Mash, a software library for developing
interactive and transparent ML systems. We also presented
our Mash implementations of four models in two case studies.
We see Mash as a step toward better interactions between
human and ML systems.</p>
    </sec>
    <sec id="sec-17">
      <title>Limitations and future work</title>
      <p>
        Mash is built on top of PyMC [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ], which has a limitation
in scaling to large datasets, and Theano [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], which is no
longer in active development. Future work could integrate
Mash to more recent ML libraries such as Tensorflow [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]
or PyTorch [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. The main interactions in Mash-built UIs
are manipulating sliders and observing model predictions,
which could be dificult for end-users in applications with
a large number of features or parameters. Future work may
develop techniques for interacting with high-dimensional
features or parameters.
      </p>
    </sec>
    <sec id="sec-18">
      <title>ACKNOWLEDGMENTS</title>
      <p>We thank the anonymous reviewers for their time in
reviewing this paper. This work is supported in part by National
Science Foundation grant No. 1253413. Any opinions,
findings, and conclusions or recommendations expressed by the
authors are entirely their own and do not represent those of
the sponsoring agencies.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Martín</given-names>
            <surname>Abadi</surname>
          </string-name>
          , Paul Barham, Jianmin Chen, Zhifeng Chen, Andy Davis,
          <string-name>
            <given-names>Jefrey</given-names>
            <surname>Dean</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Matthieu</given-names>
            <surname>Devin</surname>
          </string-name>
          , Sanjay Ghemawat, Geofrey Irving, Michael Isard, Manjunath Kudlur, Josh Levenberg, Rajat Monga, Sherry Moore, Derek Gordon Murray, Benoit Steiner,
          <string-name>
            <given-names>Paul A.</given-names>
            <surname>Tucker</surname>
          </string-name>
          , Vijay Vasudevan, Pete Warden, Martin Wicke,
          <string-name>
            <given-names>Yuan</given-names>
            <surname>Yu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>and Xiaoqiang</given-names>
            <surname>Zhang</surname>
          </string-name>
          .
          <year>2016</year>
          .
          <article-title>TensorFlow: A system for large-scale machine learning</article-title>
          .
          <source>In OSDI.</source>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Salman</given-names>
            <surname>Ahmad</surname>
          </string-name>
          , Alexis Battle, Zahan Malkani, and
          <string-name>
            <given-names>Sepandar D.</given-names>
            <surname>Kamvar</surname>
          </string-name>
          .
          <year>2011</year>
          .
          <article-title>The jabberwocky programming environment for structured social computing</article-title>
          .
          <source>In UIST.</source>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Saleema</given-names>
            <surname>Amershi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Maya</given-names>
            <surname>Cakmak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W. Bradley</given-names>
            <surname>Knox</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Todd</given-names>
            <surname>Kulesza</surname>
          </string-name>
          .
          <year>2014</year>
          .
          <article-title>Power to the People: The Role of Humans in Interactive Machine Learning</article-title>
          .
          <source>AI Magazine</source>
          <volume>35</volume>
          (
          <year>2014</year>
          ),
          <fpage>105</fpage>
          -
          <lpage>120</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Saleema</given-names>
            <surname>Amershi</surname>
          </string-name>
          , David Maxwell Chickering,
          <string-name>
            <surname>Steven M. Drucker</surname>
            ,
            <given-names>Bongshin</given-names>
          </string-name>
          <string-name>
            <surname>Lee</surname>
            ,
            <given-names>Patrice Y.</given-names>
          </string-name>
          <string-name>
            <surname>Simard</surname>
            , and
            <given-names>Jina</given-names>
          </string-name>
          <string-name>
            <surname>Suh</surname>
          </string-name>
          .
          <year>2015</year>
          .
          <article-title>ModelTracker: Redesigning Performance Analysis Tools for Machine Learning</article-title>
          .
          <source>In CHI.</source>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>James</given-names>
            <surname>Bergstra</surname>
          </string-name>
          , Olivier Breuleux, Frédéric Bastien, Pascal Lamblin, Razvan Pascanu, Guillaume Desjardins, Joseph Turian, David WardeFarley, and
          <string-name>
            <given-names>Yoshua</given-names>
            <surname>Bengio</surname>
          </string-name>
          .
          <year>2010</year>
          .
          <article-title>Theano: A CPU and GPU math compiler in Python</article-title>
          .
          <source>In Proc. 9th Python in Science Conf</source>
          , Vol.
          <volume>1</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Michael</surname>
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Bernstein</surname>
            , Greg Little,
            <given-names>Rob</given-names>
          </string-name>
          <string-name>
            <surname>Miller</surname>
            , Björn Hartmann, Mark S. Ackerman,
            <given-names>David R.</given-names>
          </string-name>
          <string-name>
            <surname>Karger</surname>
            , David Crowell,
            <given-names>and Katrina</given-names>
          </string-name>
          <string-name>
            <surname>Panovich</surname>
          </string-name>
          .
          <year>2010</year>
          .
          <article-title>Soylent: a word processor with a crowd inside</article-title>
          .
          <source>In UIST.</source>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>David</surname>
            <given-names>M Blei</given-names>
          </string-name>
          , Andrew Y Ng, and
          <string-name>
            <given-names>Michael I</given-names>
            <surname>Jordan</surname>
          </string-name>
          .
          <year>2003</year>
          .
          <article-title>Latent dirichlet allocation</article-title>
          .
          <source>Journal of machine Learning research 3</source>
          ,
          <string-name>
            <surname>Jan</surname>
          </string-name>
          (
          <year>2003</year>
          ),
          <fpage>993</fpage>
          -
          <lpage>1022</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>Toon</given-names>
            <surname>Calders</surname>
          </string-name>
          , Faisal Kamiran, and
          <string-name>
            <given-names>Mykola</given-names>
            <surname>Pechenizkiy</surname>
          </string-name>
          .
          <year>2009</year>
          .
          <article-title>Building classifiers with independency constraints</article-title>
          .
          <source>In Data mining workshops</source>
          ,
          <year>2009</year>
          . ICDMW'09. IEEE international conference on.
          <source>IEEE</source>
          ,
          <fpage>13</fpage>
          -
          <lpage>18</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Bob</given-names>
            <surname>Carpenter</surname>
          </string-name>
          , Andrew Gelman, Matthew D Hofman, Daniel Lee, Ben Goodrich, Michael Betancourt, Marcus Brubaker, Jiqiang Guo,
          <string-name>
            <given-names>Peter</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>and Allen</given-names>
            <surname>Riddell</surname>
          </string-name>
          .
          <year>2017</year>
          .
          <article-title>Stan: A probabilistic programming language</article-title>
          .
          <source>Journal of statistical software 76</source>
          ,
          <issue>1</issue>
          (
          <year>2017</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Rich</surname>
            <given-names>Caruana</given-names>
          </string-name>
          , Yinjun Lou, Johannes Gehrke, Paul Koch, Marc Sturm, and
          <string-name>
            <given-names>Noémie</given-names>
            <surname>Elhadad</surname>
          </string-name>
          .
          <year>2015</year>
          .
          <article-title>Intelligible Models for HealthCare: Predicting Pneumonia Risk and Hospital 30-day Readmission</article-title>
          .
          <source>In KDD.</source>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Chih-Chung Chang</surname>
          </string-name>
          and
          <string-name>
            <surname>Chih-Jen Lin</surname>
          </string-name>
          .
          <year>2011</year>
          .
          <article-title>LIBSVM: a library for support vector machines</article-title>
          .
          <source>ACM transactions on intelligent systems and technology (TIST) 2</source>
          ,
          <issue>3</issue>
          (
          <year>2011</year>
          ),
          <fpage>27</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>Paulo</given-names>
            <surname>Cortez</surname>
          </string-name>
          and Alice Maria Gonçalves Silva.
          <year>2008</year>
          .
          <article-title>Using data mining to predict secondary school student performance</article-title>
          . (
          <year>2008</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>Dua</given-names>
            <surname>Dheeru</surname>
          </string-name>
          and Efi Karra Taniskidou.
          <year>2017</year>
          .
          <article-title>UCI Machine Learning Repository</article-title>
          . (
          <year>2017</year>
          ). http://archive.ics.uci.edu/ml
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>Finale</given-names>
            <surname>Doshi-Velez</surname>
          </string-name>
          and
          <string-name>
            <given-names>Been</given-names>
            <surname>Kim</surname>
          </string-name>
          .
          <year>2017</year>
          .
          <article-title>Towards a rigorous science of interpretable machine learning</article-title>
          .
          <source>arXiv preprint arXiv:1702.08608</source>
          (
          <year>2017</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>Jerry</given-names>
            <surname>Alan Fails and Dan R. Olsen</surname>
          </string-name>
          .
          <year>2003</year>
          .
          <article-title>Interactive machine learning</article-title>
          .
          <source>In IUI '03.</source>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>James</surname>
            <given-names>Fogarty</given-names>
          </string-name>
          , Desney S. Tan,
          <string-name>
            <given-names>Ashish</given-names>
            <surname>Kapoor</surname>
          </string-name>
          , and
          <string-name>
            <surname>Simon</surname>
            <given-names>A. J.</given-names>
          </string-name>
          <string-name>
            <surname>Winder</surname>
          </string-name>
          .
          <year>2008</year>
          .
          <article-title>CueFlik: interactive concept learning in image search</article-title>
          .
          <source>In CHI.</source>
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>Stuart</given-names>
            <surname>Geman</surname>
          </string-name>
          and
          <string-name>
            <given-names>Donald</given-names>
            <surname>Geman</surname>
          </string-name>
          .
          <year>1984</year>
          .
          <article-title>Stochastic relaxation, Gibbs distributions, and the Bayesian restoration of images</article-title>
          .
          <source>IEEE Transactions on pattern analysis and machine intelligence</source>
          <volume>6</volume>
          (
          <year>1984</year>
          ),
          <fpage>721</fpage>
          -
          <lpage>741</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>Moritz</surname>
            <given-names>Hardt</given-names>
          </string-name>
          , Eric Price, and
          <string-name>
            <given-names>Nathan</given-names>
            <surname>Srebro</surname>
          </string-name>
          .
          <year>2016</year>
          .
          <article-title>Equality of Opportunity in Supervised Learning</article-title>
          .
          <source>In NIPS.</source>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <surname>Fred</surname>
            <given-names>Hohman</given-names>
          </string-name>
          , Minsuk Kahng, Robert Pienta, and Duen Horng Chau.
          <year>2018</year>
          .
          <article-title>Visual Analytics in Deep Learning: An Interrogative Survey for the Next Frontiers</article-title>
          .
          <article-title>IEEE transactions on visualization and computer graphics (</article-title>
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <surname>Sarthak</surname>
            <given-names>Jain</given-names>
          </string-name>
          , Edward Banner,
          <string-name>
            <surname>Jan-Willem van de Meent</surname>
          </string-name>
          , Iain James Marshall, and
          <string-name>
            <surname>Byron</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Wallace</surname>
          </string-name>
          .
          <year>2018</year>
          .
          <article-title>Learning Disentangled Representations of Texts with Application to Biomedical Abstracts</article-title>
          .
          <source>In EMNLP.</source>
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>Thorsten</given-names>
            <surname>Joachims</surname>
          </string-name>
          .
          <year>1999</year>
          .
          <article-title>Svmlight: Support vector machine</article-title>
          .
          <source>SVMLight Support</source>
          Vector Machine http://svmlight. joachims. org/, University of Dortmund 19,
          <issue>4</issue>
          (
          <year>1999</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>Pang</given-names>
            <surname>Wei</surname>
          </string-name>
          Koh and
          <string-name>
            <given-names>Percy</given-names>
            <surname>Liang</surname>
          </string-name>
          .
          <year>2017</year>
          .
          <article-title>Understanding Black-box Predictions via Influence Functions</article-title>
          . In ICML.
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <surname>Todd</surname>
            <given-names>Kulesza</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Margaret M. Burnett</surname>
          </string-name>
          ,
          <string-name>
            <surname>Weng-Keen Wong</surname>
            , and
            <given-names>Simone</given-names>
          </string-name>
          <string-name>
            <surname>Stumpf</surname>
          </string-name>
          .
          <year>2015</year>
          .
          <article-title>Principles of Explanatory Debugging to Personalize Interactive Machine Learning</article-title>
          .
          <source>In IUI.</source>
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <surname>Zachary</surname>
            <given-names>Chase</given-names>
          </string-name>
          <string-name>
            <surname>Lipton</surname>
          </string-name>
          .
          <year>2018</year>
          .
          <article-title>The mythos of model interpretability</article-title>
          .
          <source>In CACM.</source>
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <surname>Greg</surname>
            <given-names>Little</given-names>
          </string-name>
          , Lydia B.
          <string-name>
            <surname>Chilton</surname>
            , Max Goldman, and
            <given-names>Rob</given-names>
          </string-name>
          <string-name>
            <surname>Miller</surname>
          </string-name>
          .
          <year>2010</year>
          .
          <article-title>TurKit: human computation algorithms on mechanical turk</article-title>
          .
          <source>In UIST.</source>
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>Arvind</given-names>
            <surname>Narayanan</surname>
          </string-name>
          .
          <year>2018</year>
          .
          <article-title>FAT* tutorial: 21 fairness definitions and their politics</article-title>
          . ACM Conference on Fairness, Accountability, and.
          <string-name>
            <surname>Transparency</surname>
          </string-name>
          (
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <surname>Adam</surname>
            <given-names>Paszke</given-names>
          </string-name>
          , Sam Gross, Soumith Chintala, Gregory Chanan, Edward Yang,
          <string-name>
            <surname>Zachary</surname>
            <given-names>DeVito</given-names>
          </string-name>
          , Zeming Lin, Alban Desmaison, Luca Antiga, and
          <string-name>
            <given-names>Adam</given-names>
            <surname>Lerer</surname>
          </string-name>
          .
          <year>2017</year>
          .
          <article-title>Automatic diferentiation in pytorch</article-title>
          . (
          <year>2017</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <surname>Anand</surname>
            <given-names>Patil</given-names>
          </string-name>
          , David Huard, and
          <string-name>
            <surname>Christopher</surname>
          </string-name>
          J Fonnesbeck.
          <year>2010</year>
          .
          <article-title>PyMC: Bayesian stochastic modelling in Python</article-title>
          .
          <source>Journal of statistical software 35</source>
          ,
          <issue>4</issue>
          (
          <year>2010</year>
          ),
          <fpage>1</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <surname>J. Ross Quinlan</surname>
          </string-name>
          .
          <year>1986</year>
          .
          <article-title>Induction of decision trees</article-title>
          .
          <source>Machine learning 1</source>
          ,
          <issue>1</issue>
          (
          <year>1986</year>
          ),
          <fpage>81</fpage>
          -
          <lpage>106</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>Marco</given-names>
            <surname>Tulio</surname>
          </string-name>
          <string-name>
            <surname>Ribeiro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Sameer</given-names>
            <surname>Singh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>and Carlos</given-names>
            <surname>Guestrin</surname>
          </string-name>
          .
          <year>2016</year>
          .
          <article-title>Why should i trust you?: Explaining the predictions of any classifier</article-title>
          .
          <source>In Proceedings of the 22nd ACM SIGKDD international conference on knowledge discovery and data mining. ACM</source>
          ,
          <volume>1135</volume>
          -
          <fpage>1144</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <given-names>Ruslan</given-names>
            <surname>Salakhutdinov</surname>
          </string-name>
          and
          <string-name>
            <given-names>Andriy</given-names>
            <surname>Mnih</surname>
          </string-name>
          .
          <year>2007</year>
          .
          <article-title>Probabilistic Matrix Factorization</article-title>
          .
          <source>In NIPS.</source>
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          [32]
          <string-name>
            <given-names>David</given-names>
            <surname>Spiegelhalter</surname>
          </string-name>
          , Andrew Thomas,
          <string-name>
            <given-names>Nicky</given-names>
            <surname>Best</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Wally</given-names>
            <surname>Gilks</surname>
          </string-name>
          .
          <year>1996</year>
          .
          <article-title>BUGS 0.5: Bayesian inference using Gibbs sampling manual (version ii)</article-title>
          .
          <source>MRC Biostatistics Unit</source>
          , Institute of Public Health, Cambridge, UK (
          <year>1996</year>
          ),
          <fpage>1</fpage>
          -
          <lpage>59</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          [33]
          <string-name>
            <given-names>Robert</given-names>
            <surname>Tibshirani</surname>
          </string-name>
          .
          <year>1996</year>
          .
          <article-title>Regression shrinkage and selection via the lasso</article-title>
          .
          <source>Journal of the Royal Statistical Society. Series B (Methodological)</source>
          (
          <year>1996</year>
          ),
          <fpage>267</fpage>
          -
          <lpage>288</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          [34]
          <string-name>
            <given-names>David</given-names>
            <surname>Tolpin</surname>
          </string-name>
          ,
          <string-name>
            <surname>Jan-Willem van de Meent</surname>
            , and
            <given-names>Frank</given-names>
          </string-name>
          <string-name>
            <surname>Wood</surname>
          </string-name>
          .
          <year>2015</year>
          .
          <article-title>Probabilistic programming in Anglican</article-title>
          .
          <source>In Joint European Conference on Machine Learning and Knowledge Discovery in Databases</source>
          . Springer,
          <fpage>308</fpage>
          -
          <lpage>311</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          [35]
          <string-name>
            <surname>Martin J Wainwright</surname>
          </string-name>
          ,
          <article-title>Michael I Jordan, and</article-title>
          <string-name>
            <surname>others.</surname>
          </string-name>
          <year>2008</year>
          .
          <article-title>Graphical models, exponential families, and variational inference</article-title>
          .
          <source>Foundations and Trends® in Machine Learning</source>
          <volume>1</volume>
          ,
          <fpage>1</fpage>
          -
          <lpage>2</lpage>
          (
          <year>2008</year>
          ),
          <fpage>1</fpage>
          -
          <lpage>305</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref36">
        <mixed-citation>
          [36]
          <string-name>
            <given-names>Austin</given-names>
            <surname>Waters</surname>
          </string-name>
          and
          <string-name>
            <given-names>Risto</given-names>
            <surname>Miikkulainen</surname>
          </string-name>
          .
          <year>2014</year>
          .
          <article-title>GRADE: Machine Learning Support for Graduate Admissions</article-title>
          .
          <source>AI Magazine</source>
          (
          <year>2014</year>
          ). http://nn.cs.utexas.edu/?waters:aimag14
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>