skip to main content


Title: Fairkit-learn: A Fairness Evaluation and Comparison Toolkit
Advances in how we build and use software, specifically the integration of machine learning for decision making, have led to widespread concern around model and software fairness. We present fairkit-learn, an interactive Python toolkit designed to support data scientists' ability to reason about and understand model fairness. We outline how fairkit-learn can support model training, evaluation, and comparison and describe the potential benefit that comes with using fairkit-learn in comparison to the state-of-the-art. Fairkit-learn is open source at https://go.gmu.edu/fairkit-learn/.  more » « less
Award ID(s):
1763423
NSF-PAR ID:
10334566
Author(s) / Creator(s):
;
Date Published:
Journal Name:
Proceedings of the Demonstrations Track at the 44th International Conference on Software Engineering (ICSE)
Page Range / eLocation ID:
70-74
Format(s):
Medium: X
Sponsoring Org:
National Science Foundation
More Like this
  1. A goal of software engineering research is advancing software quality and the success of the software engineering process. However, while recent studies have demonstrated a new kind of defect in software related to its ability to operate in fair and unbiased manner, software engineering has not yet wholeheartedly tackled these new kinds of defects, thus leaving software vulnerable. This paper outlines a vision for how software engineering research can help reduce fairness defects and represents a call to action by the software engineering research community to reify that vision. Modern software is riddled with examples of biased behavior, from automated translation injecting gender stereotypes, to vision systems failing to see faces of certain races, to the US criminal justice system relying on biased computational assessments of crime recidivism. While systems may learn bias from biased data, bias can also emerge from ambiguous or incomplete requirement specification, poor design, implementation bugs, and unintended component interactions. We argue that software fairness is analogous to software quality, and that numerous software engineering challenges in the areas of requirements, specification, design, testing, and verification need to be tackled to solve this problem. 
    more » « less
  2. Cyclical models are often used to describe how students learn and develop. These models usually focus on the cognitive domain and describe how knowledge and skills are learned within a course or classroom. By providing insights into how students learn and thus how an instructor can support learning, these models and the schemas drawn from them also influence beliefs about learning and thus how educational programs are designed and developed. In this paper the authors present an alternative cyclical model of learning that is drawn from a philosophy of enactivism rather than rational dualism. In comparison with the dualism inherent in viewpoints derived from Descartes where learners construct internal mental representation from inputs received from the external world, in enactivism development occurs through continual dynamic interactions between an agent and their environment. Enactivism thus emphasizes the role environments play in learning and development. The model developed in this paper hypothesizes that the environment in which learning typically occurs can be represented by three elements: the learner’s identity and culture which informs personally significant goals and values; the affordances a degree program offers in areas of knowledge, identity, and context which informs the capabilities of the environment; and the implicit and explicit goals of education as they are negotiated and understood by learners and teachers. These three elements are strongly coupled and together define the ever-changing learning environment. The paper explores how changing technologies and cultures affect each of these three elements in regards to students’ ability to become technologically literate. While rational or dualist views of education see such environmental changes as peripheral to developing accurate representations of truth, enactivism posits that environment significantly affects the process of education. Because each student or faculty member is a participant in a learning organization changes within the organization—whether externally or internally driven—change the learning process. If education is deemed successful when students can transfer learning to new contexts, dualist models assume transfer is weakly coupled to educational environments while the enactivist viewpoint posits that environments strongly affect transfer. The enactivist model can inform efforts to encourage technological literacy. Like many areas in STEM, education technological literacy has sought to identify and support learning outcomes that specify effective teaching or content interventions which enable learners to become more technologically literate. From the enactivist perspective, however, technological literacy is achieved by placing individuals into an environment in which they must navigate technology-induced challenges, with success defined as learning processes that allow learners to manage tensions inherent in their environment. Because most students already live in such environments teaching definable or enumerable outcomes makes less sense than helping student to be metacognitive and reflective how they manage and relate with technology. 
    more » « less
  3. null (Ed.)
    Graph mining is an essential component of recommender systems and search engines. Outputs of graph mining models typically provide a ranked list sorted by each item's relevance or utility. However, recent research has identified issues of algorithmic bias in such models, and new graph mining algorithms have been proposed to correct for bias. As such, algorithm developers need tools that can help them uncover potential biases in their models while also exploring the impacts of correcting for biases when employing fairness-aware algorithms. In this paper, we present FairRankVis, a visual analytics framework designed to enable the exploration of multi-class bias in graph mining algorithms. We support both group and individual fairness levels of comparison. Our framework is designed to enable model developers to compare multi-class fairness between algorithms (for example, comparing PageRank with a debiased PageRank algorithm) to assess the impacts of algorithmic debiasing with respect to group and individual fairness. We demonstrate our framework through two usage scenarios inspecting algorithmic fairness. 
    more » « less
  4. null (Ed.)
    Abstract Engineering students need to spend time engaging in mathematical modeling tasks to reinforce their learning of mathematics through its application to authentic problems and real world design situations. Technological tools and resources can support this kind of learning engagement. We produced an online module that develops students’ mathematical modeling skills while developing knowledge of the fundamentals of rainfall-runoff processes and engineering design. This study examined how 251 students at two United States universities perceived mathematical modeling as implemented through the online module over a 5-year period. We found, subject to the limitation that these are perceptions from not all students, that: (a) the module allowed students to be a part of the modeling process; (b) using technology, such as modeling software and online databases, in the module helped students to understand what they were doing in mathematical modeling; (c) using the technology in the module helped students to develop their skill set; and (d) difficulties with the technology and/or the modeling decisions they had to make in the module activities were in some cases barriers that interfered with students’ ability to learn. We advocate for instructors to create modules that: (a) are situated within a real-world context, requiring students to model mathematically to solve an authentic problem; (b) take advantage of digital tools used by engineers to support students’ development of the mathematical and engineering skills needed in the workforce; and (c) use student feedback to guide module revisions. 
    more » « less
  5. The development of Artificial Intelligence (AI) systems involves a significant level of judgment and decision making on the part of engineers and designers to ensure the safety, robustness, and ethical design of such systems. However, the kinds of judgments that practitioners employ while developing AI platforms are rarely foregrounded or examined to explore areas practitioners might need ethical support. In this short paper, we employ the concept of design judgment to foreground and examine the kinds of sensemaking software engineers use to inform their decisionmaking while developing AI systems. Relying on data generated from two exploratory observation studies of student software engineers, we connect the concept of fairness to the foregrounded judgments to implicate their potential algorithmic fairness impacts. Our findings surface some ways in which the design judgment of software engineers could adversely impact the downstream goal of ensuring fairness in AI systems. We discuss the implications of these findings in fostering positive innovation and enhancing fairness in AI systems, drawing attention to the need to provide ethical guidance, support, or intervention to practitioners as they engage in situated and contextual judgments while developing AI systems. 
    more » « less