Phil 12/20/2021

SBIRs

  • Sprint Review
  • Sprint planning
  • Work on paper! Based on the reviewer’s comments, I’m thinking of changing the name of the maps from Belief maps to “Jukurrpa Charts”, which reference the Australian Aboriginal Dreamtime, which I think are a nice analogy to what language models really are, a system of fixed relationships between latent concepts and language that can be traversed using narrative forms, or “dreamtracks”. The other option would be to use the term Neural Language Maps. The only problem is that NLM also means ‘Neural Language Models’. Maybe Neural Semantic Maps (NSMs)?
  • Wound up going with Neural Narrative Mapping

Phil 12.17.2021

SBIRs

  • The paper got accepted with R&R! Worked with Aaron on roughing out the changes
  • Made an update to the codebase to just draw the groups since the computational orders data doesn’t have the topic connections. It will be nice to generate quick overviews too.
  • Used that to create a new GML for our splash figure:

Also got another nice ride in:

Phil 12.16.2021

Tasks

  • Call Outlaw again!
  • Doctor!

SBIRs

  • Finish mods to ForceNode and CanvasFrame. Yay! Got everything working the way I want. Need to integrate in the main codebase now.
# Repulsion function.  `self' and `n2` should be nodes.  This will
# adjust the dx and dy values of `self` `n2`. If you want objects with more mass to be given
# 'more room', set common_mass to zero
def linRepulsion(self, n2:'ForceNode', common_mass:float = 1.0):
xDist = self.x - n2.x
yDist = self.y - n2.y
distance2 = xDist * xDist + yDist * yDist # Distance squared

if distance2 > 0:
if common_mass == 0:
common_mass = self.mass
factor = self.pp.repulsion_scalar * common_mass / distance2
self.dx += xDist * factor
self.dy += yDist * factor
  • Moved adjust_node to ForceNode and renamed it:
def adjust_mass_size(self, mass:float = 0, size:float = 0, scalar:float=0 ):
#set up the scalar regardless
if mass == 0 and scalar == 0:
print("WARNING! CanvasFrame.adjust_node(): mass == 0 and scalar == 0")
return

if scalar == 0 and size != 0:
scalar = size / self.size

if mass != 0:
self.mass = mass
else:
self.mass *= scalar

# now just use the scalar. The reason we do this is that the call to self.canvas.coords() returns
# a SCALED value of coordinates. If we set them directly from size, they will be too big if
# zoomed out and too small if zoomed in
self.size *= scalar
x0, y0, x1, y1 = self.cd.canvas.coords(self.id)
old_x_size = abs(x1 - x0)
old_y_size = abs(y1 - y0)
x_size = old_x_size * scalar
y_size = old_y_size * scalar
x_offset = (x_size - old_x_size)/2.0
y_offset = (y_size - old_y_size)/2.0
self.cd.canvas.coords(self.id, x0-x_offset, y0-y_offset, x1+x_offset, y1+y_offset)
  • Start on R&R? Haven’t seen the response yet

Go for a longer ride today:

Phil 12.15.2021

Hasbro is making emotional support robots

SBIRs

  • Get paper back for R&R today?
  • 2:00 Talk. Need to prep
  • Update the CanvasFrame testbed so that ForceNodes have their weight and size adjusted in real time. Then migrate to the MapBuilder app
    • Poked at the Atlas algorithm for a while and some of the ways that mass are used don’t make much sense to me. Making some tweaks. I do have an update working, but I’m not sure if I want to pass a scalar or an explicit value in. Maybe both? If the value is zero, don’t use it?

GPT Agents

  • 4:15 UMBC meeting. Didn’t discuss that much. I need to get started on the Yelp template as soon as the IEEE paper final is submitted

JuryRoom

  • Went over changes with Jarod. He’ll add an appendix of definitions
  • Went over progress with Tamahau. I need to review his SLR pdf as well

Phil 12.14.2021

SBIRs

  • Finish fixing the code so that there is an option for weights to be the default or calculated. I can use the calculated now for the GML, and then work out how to use the calculated for the live editing.
  • This looks better:
  • Here’s what I’m doing:

if weight < 1:
weight = 1.0
else:
weight = math.log10(weight)
radius = radius * weight
fn = cf.create_ForceNode(self.name, radius, color, x=xpos, y=ypos)
fn.mass = weight
self.force_node = fn
  • I still need to adjust the sizes and weights in the live edit
  • Put talk together once the code is fixed and schedule

GPT Agents

  • Read Jarod’s SLR – About halfway through
  • Good meeting with Tony and Panos. I went over the concept and tools, and we had a remarkably wide-ranging discussion. I wound up sending Tony and Panos PDFs of the book draft

Phil 12.13.2021

The emergence of collective knowledge and cumulative culture in animals, humans and machines

  • Each of us may know much, yet the collective knowledge in our communities is far richer and more powerful when harnessed towards a common end. Moreover, when spread over time and generations, collective contributions to knowledge can generate the forms of cumulative cultural achievement that underlie the extraordinary global success of our species. This theme issue reveals the surprising diversity of contexts over which the emergence and evolution of forms of collective knowledge and cumulative culture have begun to be identified in the natural world and engineered into new technologies. Manifestations range across the cultural evolution of vocal repertoires in birds and whales, primate conventions and technologies, language evolution, social networking, swarm robotics and humanoid robots.

SBIRs

  • Managed to break something in the conspiracy data that is causing the graph to explode. Chasing down possible causes. It seems to be related to saving the model to the DB
  • Fixed it. The weight was being set differently on the load than as the graph is built. The thing is, the load is probably right, but I need to make that work as the graph is built first

GPT Agents

  • Nice chat with Antonio about using the tool to explore gamification strategies

Phil 12.10.2021

Birds Aren’t Real, or Are They? Inside a Gen Z Conspiracy Theory.

  • Most Birds Aren’t Real members, many of whom are part of an on-the-ground activism network called the Bird Brigade, grew up in a world overrun with misinformation. Some have relatives who have fallen victim to conspiracy theories. So for members of Gen Z, the movement has become a way to collectively grapple with those experiences. By cosplaying conspiracy theorists, they have found community and kinship, Mr. McIndoe said.

SBIRs

  • Submit paper! DONE!
  • Good chat with Aaron about what to focus on next year

Phil 12.9.2021

So in the Before Times, I had a ticket from IAD to BCN on Iberia. Then the pandemic happened and I got a voucher. Now, the closest airport that has flights to BCN that the vouchers work on is JFK. Trying to figure out the best way to get there.

SBIRs

  • Finish paper and submit? I think I’m don. Aaron is getting a last pass in
  • Yay! Fixed the weird scaling bug!
Look at all that stuff working!
  • Start on getting Azure account

Phil 12.8.2021

Book

  • Reference the following from The Power of Us, page 160:
    • Each subject’s brain responses reflected the person’s new identity as a Leopard or a Tiger. Unlike in previous studies, we could see that our participants were not responding to the race of the faces but to their new group identity-their team. More specifically, we observed greater activity in our participants’ amygdalae when they saw members of their in-group compared to members of the out-group and, critically, this occurred regardless of their teammates’ race. Now that another identity was central to the situation, race had little to no bearing on how their brains responded to the faces.
    • The greater activation we observed in the amygdalae when people saw in-group faces was consistent with our findings that this region responds to things that are highly relevant to people. Their brain reflected a newfound affinity for the in-group that was most salient to them at that moment. Far from being wired for racism, our brain are, if anything, wired for social identity

SBIRs

  • More writing
  • Fix motion to target? Played around a good deal. It may be that it is working ok, but the threshold for stopping is changing. I think I may need to add a line that is drawn between the test and target node to make sure that everything is working.

GPT Agents

  • 4:15 Meeting
    • Reverse GPT-Neo for proposal?
    • Walk through paper?

JuryRoom

  • 5:30 Meeting

Phil 12.7.2021

SBIRs

  • Paper
  • Sprint planning
  • Sticking a little debugging/heatmap work in. And it’s nice when your libraries work. Here’s a small piece of code:
def main():
print("CanvasFrame")
window = tk.Tk()
window.title("CanvasFrame testbed")

wrapper = tk.Frame(window)
wrapper.pack()
dp = ConsoleDprint()
canvas = CanvasFrame(wrapper, 0, "Graph", dp, width=450, height=400)
dp.create_tk_console(wrapper, 1, char_width=50)

canvas.setup(debug=True)

window.mainloop()
  • That makes this!
  • Really happy that all that works pretty much the first time
  • Ok, I’ve been trying to get the size and location of the canvas and it doesn’t seem to accessible directly, so that means a shadow class, unless I can get the scaled positions from the object itself? Looks like this is the best way:
canvas.canvasx(cf.test_node.x), canvas.canvasy(cf.test_node.y)

Phil 12.5.2021

aitextgen is a Python package that leverages PyTorchHugging Face Transformers and pytorch-lightning with specific optimizations for text generation using GPT-2, plus many added features. It is the successor to textgenrnn and gpt-2-simple, taking the best of both packages (Github repo)

I think this might be a way to train a GPT model from scratch that is trained in reverse. Which means, given an outcome, it should be possible to create a cluster of text options that would construct that string on a regular GPT. And it should be possible to verify by using that phrase on a forward GPT to evaluate the likelihood that the originating/target text gets generated.

Phil 12/3/2021

Doctor!

SBIRs

  • Continuing to work on paper. I want to add a section that talks about how our biases affect our tactical and strategic decisions. From Ethics Education for Irregular Warfare:
    • For the four members of SEAL Team 10, inserted in the Hindu Kush mountains of Afghanistan’s Kunar province on the night of June 27, 2005, however, the problem was not this puzzling abundance of private contractors and security firms in the battlespace, but a decided absence of reinforcements or backup support of any kind in a remote and inaccessible region far from their operational headquarters. Codenamed ‘Operation Redwing’, the mission of these Special Forces personnel was to reconnoiter and get ‘eyes on’ Ahmad Shah, a close associate of Osama bin Laden, whose attacks had been taking a heavy toll on Marines operating in eastern Afghanistan. After setting up their observation post on a mountainside, overlooking a village near the Pakistani border in which this key Taliban leader was believed to be encamped with a small army, the four-man team was approached at midday by two Afghan men and a 14-year-old boy, herding their flock of goats. The SEALs debated over whether to kill the three civilians in order to protect their cover, try to hold them prisoner, or simply turn them loose and abandon the mission. After arguing among themselves, the four SEALS decided to let the Afghans go, and attempt to re-position. A little later, however, nearly one hundred Taliban fighters materialized, coming across the same ridge over which the goat-herds themselves had fled. The SEAL team fought for several hours, killing an estimated 35 of the enemy, but eventually they were overwhelmed. Their commanding officer, US Navy Lieutenant Michael Murphy, was shot and killed as he called for backup.
  • In this case, Lt. Murphy made the ethical choice, and the proximal cause of his death was that choice. However, the lack of support plays into the result as well, and at a still higher level, the abandonment of Afghanistan to the Taliban shows that many of the decisions made in that 20-year campaign were deeply flawed.
  • We, as human beings have many biases. These may involve gender, ethnicity, and race. But we also have less obvious biases also affect how we make decisions on those issues that affect us such as national security. For example, the USA (among other countries) has a bias towards advanced weapons systems [citation needed]. This is reflected in the decisions to incorporate AI/ML into the nations military. The focus is on intelligent munitions, drones, hypersonic missiles, etc. But since the end of the cold war (in 19xx?), the majority of military operations have been in irregular conflict, such as Kosovo, Somalia, and Afghanistan. An intelligent munition would not have helped Lt. Murphy’s team decide whether to kill, hold, or release the Afghan shepherds that stumbled upon them. But information presented in a way that lets a user clearly visualize the likely outcome of a trajectory of choices, may well choose another path. After Vietnam, Iraq, and Afghanistan, leaders might think twice if that they see they are heading towards the part of the map marked “Quagmire”.
  • Done with this pass!

Phil 11/2/2021

SBIRs

  • Working on paper. Currently listening to George Lucas (Not that George Lucas) talking about military ethics
  • This also looks interesting: On Obedience
    • an in-depth and nuanced philosophical treatment of the virtue of obedience in the context of the professional military and the broader civilian political community, including the general citizenry. The nature and components of obedience are critical factors leading to further discussions of the moral obligations related to obedience, as well as the related practical issues and implications. Pauline Shanks Kaurin seeks to address the following questions: What is obedience? Is it a virtue, and if it is, why? What are the moral grounds of obedience? Why ought military members and citizens be obedient? Are there times that one ought not be obedient? Why? How should we think about obedience in contemporary political communities?
  • Human Terrain System: was a United States ArmyTraining and Doctrine Command (TRADOC) support program employing personnel from the social science disciplines – such as anthropologysociologypolitical science, regional studies, and linguistics – to provide military commanders and staff with an understanding of the local population (i.e. the “human terrain”) in the regions in which they are deployed.
    • The concept of HTS was first developed in a paper by Montgomery McFate and Andrea Jackson in 2005,[6] which proposed a pilot version of the project as a response to “identified gaps in [US military] commanders’ and staffs’ understanding of the local population and culture”, such as became particularly visible during the US invasion of Iraq and Afghanistan.[1][3][4] HTS was subsequently launched as a proof-of-concept program, run by the United States Army Training and Doctrine Command (TRADOC), in February 2007, with five HTS teams deployed between Iraq and Afghanistan.[3][4] Since 2007, HTS has grown from a program with five deployed teams and a $20 million two-year budget to one with 31 deployed teams and a $150 million annual budget.[3] HTS became a permanent US Army program in 2010.
    • Ever since its launch, HTS has been surrounded by controversy.[4][7][8] While the program initially received positive coverage in the US media, it quickly became the subject of heavy criticism – particularly from anthropologists, but also from journalists, military officials and HTS personnel and former personnel.[9] Most notably, on 31 October 2007, the Executive Board of the American Anthropological Association (AAA) published a statement opposing HTS as an “unacceptable application of anthropological expertise” that conflicted with the AAA’s Code of Ethics.[10][11][12] Following the publication of a report on HTS by the Commission on Engagement of Anthropology with the US Security and Intelligence Services (CEAUSSIC) in 2009,[13][14] the AAA released a further statement of disapproval, which they re-iterated in 2012 after rumours that the controversy had died down.
  • Got together with Aaron for a couple of hours of writing