Phil 5.13.19

7:00 – 3:00 ASRC NASA GEOS-R

• Really good Ted Radio Hour on Jumpstarting Creativity
• More dissertation
• Integrating Artificial Intelligence into Weapon Systems is up!
• Played around with the speed of agents, hoping to make some super-slow agents, but the way that the speed is updated is an accumulation of speed influences set by the neighbors, based on influence distance. To do this, I need to set the minmax separate from the initial variance
• Help Aaron with MatrixScalar – Nope
• Slides for talk -Yep, all day

Phil 5.6.19

7:00 – 5:00 ASRC GOES-R

• Finished the AI/ML paper with Aaron M over the weekend. I need to have him ping me when it goes in. I think it turned out pretty well, even when cut down to 7 pages (with references!! Why, IEEE, why?)
• Sent a copy to Wayne, and distributed around work. Need to put in on ArXiv on Thursday
• Starting to pull parts from phifel.com to make the lit review for the dissertation. Those reviews may have had a reason after all!
• And oddly (though satisfying), I wound up adding a section on Moby-Dick as a way of setting up the rest of the lit review
• More Matrix scalar class. Basically a satisfying day of just writing code.
• Need to fix IEEE letter and take a self-portrait. Need to charge up the good camera

Phil 5.1.19

7:00 – 7:00 ASRC NASA AIMS

• Added lit review section to the dissertation, and put the seven steps of sectarianism in.
• Spent most of yesterday helping Aaron with TimeSeriesML. Currently working on a JSON util that will get a value on a provided path
• Had to set up python at the module and not project level, which was odd. Here’s how: www.jetbrains.com/help/idea/2016.1/configuring-global-project-and-module-sdks.html#module_sdk
• Done!
    def lfind(self, query_list:List, target_list:List, targ_str:str = "???"):
for tval in target_list:
if isinstance(tval, dict):
return self.dfind(query_list[0], tval, targ_str)
elif tval == query_list[0]:
return tval

def dfind(self, query_dict:Dict, target_dict:Dict, targ_str:str = "???"):
for key, qval in query_dict.items():
# print("key = {}, qval = {}".format(key, qval))
tval = target_dict[key]
if isinstance(qval, dict):
return self.dfind(qval, tval, targ_str)
elif isinstance(qval, list):
return self.lfind(qval, tval, targ_str)
else:
if qval == targ_str:
return tval
if qval != tval:
return None

def find(self, query_dict:Dict):
# pprint.pprint(query_dict)
result = self.dfind(query_dict, self.json_dict)
return result


• It’s called like this:
ju = JsonUtils("../../data/output_data/lstm_structure.json")
# ju.pprint()
print("result 1 = {}".format(result))
print("result 2 = {}".format(result))
• Here’s the results:
result 1 = [None, 12, 1]
result 2 = 666.0
• Got Aaron’s code running!
• Meeting with Joel
• A quicker demo that I was expecting, though I was able to walk through how to create and use Corpus Manager and LMN. Also, we got a bug where the column index for the eigenvector didn’t exist. Fixed that in JavaUtils.math.Labeled2DMatrix.java
• Meeting with Wayne
• Walked through the JASSS paper. Need to make sure that the lit review is connected and in the proper order
• Changed the title of the dissertation to
• Stampede Theory: Mapping Dangerous Misinformation at Scale
• Solidifying defense over the winter break, with diploma in the Spring
• Mentioned the “aikido with drones” concept. Need to make an image. Actually, I wonder if there is a way for that model to be used for actually getting a grant to explore weaponized AI in a way that isn’t directly mappable to weapons systems, but is close enough to reality that people will get the point.
• Also discussed the concept of managing runaway AI with the Sanhedrin-17a concept, where unanimous agreement to convict means acquittal.  Cities had Sanhedrin of 23 Judges and the Great Sanhedrin had 71 Judges en.wikipedia.org/wiki/Sanhedrin
• Rav Kahana says: In a Sanhedrin where all the judges saw fit to convict the defendant in a case of capital law, they acquit him. The Gemara asks: What is the reasoning for this halakha? It is since it is learned as a tradition that suspension of the trial overnight is necessary in order to create a possibility of acquittal. The halakha is that they may not issue the guilty verdict on the same day the evidence was heard, as perhaps over the course of the night one of the judges will think of a reason to acquit the defendant. And as those judges all saw fit to convict him they will not see any further possibility to acquit him, because there will not be anyone arguing for such a verdict. Consequently, he cannot be convicted.

Phil 4.29.19

7:00 – 3:30 ASRC TL

• Register for Tech Summit – done
• Ask for a week of time to prep for talk – done
• Panos read the paper and has some suggestions. Need to implement
• This might be important: Neural Logic Machines
• We propose the Neural Logic Machine (NLM), a neural-symbolic architecture for both inductive learning and logic reasoning. NLMs exploit the power of both neural networks—as function approximators, and logic programming—as a symbolic processor for objects with properties, relations, logic connectives, and quantifiers. After being trained on small-scale tasks (such as sorting short arrays), NLMs can recover lifted rules, and generalize to large-scale tasks (such as sorting longer arrays). In our experiments, NLMs achieve perfect generalization in a number of tasks, from relational reasoning tasks on the family tree and general graphs, to decision making tasks including sorting arrays, finding shortest paths, and playing the blocks world. Most of these tasks are hard to accomplish for neural networks or inductive logic programming alone.
• Need to read the Nature “Behavior” paper. Notes probably go straight into the dissertation lit review – done
• Continuing to read Army of None, which is ridiculously good. This figure has been making me think:  This implies that the idea that a set of diverse ML systems all agreeing is a warning condition is worth exploring.
• Finished read through of Tao’s paper
• Need to find a cardiologist for Arpita

Phil 4.23.19

7:00 – 5:30 ASRC TL

• Reading Army of None and realizing that incorporating AI is a stampede theory and diversity issue:
• This makes Aegis less like a finished product with a few different modes and more like a customizable system that can be tailored for each mission. Galluch explained that the ship’s doctrine review board, consisting of the officers and senior enlisted personnel who work on Aegis, begin the process of writing doctrine months before deployment. They consider their anticipated missions, intelligence assessments, and information on the region for the upcoming deployment, then make recommendations on doctrine to the ship’s captain for approval. The result is a series of doctrine statements, individually and in packages, that the captain can activate as needed during deployment. (Page 164)
• Doctrine statements are typically grouped into two general categories: non-saturation and saturation. Non-saturation doctrine is used when there is time to carefully evaluate each potential threat. Saturation doctrine is needed if the ship gets into a combat situation where the number of inbound threats could overwhelm the ability of operators to respond. “If World War III starts and people start throwing a lot of stuff at me,” Galluch said, “I will have grouped my doctrine together so that it’s a one-push button that activates all of them. And what we’ve done is we’ve tested and we’ve looked at how they overlap each other and what the effects are going to be and make sure that we’re getting the defense of the ship that we expect.” This is where something like Auto-Special comes into play, in a “kill or be killed” scenario, as Galluch described it. (Page 164)
• Extensive testing goes into ensuring that it works properly. Once the ship arrives in theater, the first thing the crew does is test the weapons doctrine to see if there is anything in the environment that might cause it to fire in peacetime, which would not be good. This is done safely by enabling a hardware-level cutout called the Fire Inhibit Switch, or FIS. The FIS includes a key that must be inserted for any of the ship’s weapons to fire. When the FIS key is inserted, a red light comes on; when it is turned to the right, the light turns green, meaning the weapons are live and ready to fire. When the FIS is red—or removed entirely—the ship’s weapons are disabled at the hardware level. (Page 165)
• But the differences run deeper than merely having more options. The whole philosophy of automation is different. With Aegis, the automation is used to capture the ship captain’s intent. In Patriot, the automation embodies the intent of the designers and testers. The actual operators of the system may not even fully understand the designers’ intent that went into crafting the rules. The automation in Patriot is largely intended to replace warfighters’ decision-making. In Aegis, the automation is used to capture warfighters’ decision-making. (Page 165)
• Hawley argued that Army Patriot operators train in a “sham environment” that doesn’t accurately simulate the rigors of real-world combat. As a result, he said “the Army deceives itself about how good their people really are. . . . It would be easy to believe you’re good at this, but that’s only because you’ve been able to handle the relatively non-demanding scenarios that they throw at you.” Unfortunately, militaries might not realize their training is ineffective until a war occurs, at which point it may be too late. (Page 171)
• Hawley explained that the Aegis community was partially protected from this problem because they use their system day in and day out on ships operating around the globe. Aegis operators get “consistent objective feedback from your environment on how well you’re doing,” preventing this kind of self-deception. The Army’s peacetime operating environment for the Patriot, on the other hand, is not as intense, Hawley said. “Even when the Army guys are deployed, I don’t think that the quality of their experience with the system is quite the same. They’re theoretically hot, but they’re really not doing much of anything, other than just monitoring their scopes.” Leadership is also a vital factor. “Navy brass in the Aegis community are absolutely paranoid” about another Vincennes incident, Hawley said. (Page 171)
• Working on JASS paper
• Working on AI paper
• Long chat with Eric H

Phil 4.22.19

7:00 – 4:00 ASRC TL

• The mission of the Conference on Truth and Trust Online (TTO) is to bring together all parties working on automated approaches to augment manual efforts on improving the truthfulness and trustworthiness of online communications.
• The inaugural Truth and Trust Online conference will be taking place on October 4th and 5th 2019 at BMA House in London.
•

Key Dates

• First call for papers: 2nd of April, 2019 *

• Deadline for all submissions: 3rd of June, 2019
• Notification of acceptance: Early July
• Registration opens: End of June
• Conference: 4th and 5th of October, 2019, BMA House, London, UK
• From On Being with Pádraig Ó Tuama, about belonging gone bad and the scale of sectarianism:
• Fooling automated surveillance cameras: adversarial patches to attack person detection
• Adversarial attacks on machine learning models have seen increasing interest in the past years. By making only subtle changes to the input of a convolutional neural network, the output of the network can be swayed to output a completely different result. The first attacks did this by changing pixel values of an input image slightly to fool a classifier to output the wrong class. Other approaches have tried to learn “patches” that can be applied to an object to fool detectors and classifiers. Some of these approaches have also shown that these attacks are feasible in the real-world, i.e. by modifying an object and filming it with a video camera. However, all of these approaches target classes that contain almost no intra-class variety (e.g. stop signs). The known structure of the object is then used to generate an adversarial patch on top of it.
• In this paper, we present an approach to generate adversarial patches to targets with lots of intra-class variety, namely persons. The goal is to generate a patch that is able successfully hide a person from a person detector. An attack that could for instance be used maliciously to circumvent surveillance systems, intruders can sneak around undetected by holding a small cardboard plate in front of their body aimed towards the surveillance camera. From our results we can see that our system is able significantly lower the accuracy of a person detector. Our approach also functions well in real-life scenarios where the patch is filmed by a camera. To the best of our knowledge we are the first to attempt this kind of attack on targets with a high level of intra-class variety like persons.
• More adding Wayne’s notes into JASS paper. Figured out how to make something that looks like blockquotes without screwing up the JASS formatting:
\hspace{1cm}\begin{minipage}{\dimexpr\textwidth-2cm}
\textit{"Get him home.  And deliver my cut of earnings to the people of Phandalin near Neverwinter, my home". With this, before anyone can stop him, Edmund turns to the dragon. "I make a counter offer.  In exchange for them motions to the two caged people. I offer myself to take their place.  I will remain.  I will starve.  You will lose two peasants, and in return you will gain all that I have to offer.  Edmund of house DeVir of Neverwinter.  The last of a noble bloodline of the ruling class."} - Edmond: Group 2
\end{minipage}
• More Machine Teaching paper

Phil 4.15.19

7:00 – ASRC TL

• I’ve been hunting around for what a core message of the iSchool should be (And I like LAMDA), but I think this sums it up nicely. From The Library Book:
• use arxiv2bibtex to get bibtex information for arXiv submissions for use in BibTeX, on web pages or in Wikis. You can enter:
• one or several paper IDs like “1510.01797” or “math/0506203”.
• your arXiv author ID looking similar to “grafvbothmer_h_1” to get a list of all your submitted papers.
• your ORCID ID looking similar to “0000-0003-0136-444X” which you should register with your arXiv-account.
• Here’s hoping the proposal goes in. It did!
• Start on IEEE paper? Nope. Did get back to Grokking Deep learning. Trying to get the system working with MNIST.
• Something for the arousal potential/Clockwork Muse file: Accelerating dynamics of collective attention
• With news pushed to smart phones in real time and social media reactions spreading across the globe in seconds, the public discussion can appear accelerated and temporally fragmented. In longitudinal datasets across various domains, covering multiple decades, we find increasing gradients and shortened periods in the trajectories of how cultural items receive collective attention. Is this the inevitable conclusion of the way information is disseminated and consumed? Our findings support this hypothesis. Using a simple mathematical model of topics competing for finite collective attention, we are able to explain the empirical data remarkably well. Our modeling suggests that the accelerating ups and downs of popular content are driven by increasing production and consumption of content, resulting in a more rapid exhaustion of limited attention resources. In the interplay with competition for novelty, this causes growing turnover rates and individual topics receiving shorter intervals of collective attention.
• Chasing down narrative embedding using force-directed graphs and found Tulip
• Tulip is an information visualization framework dedicated to the analysis and visualization of relational data. Tulip aims to provide the developer with a complete library, supporting the design of interactive information visualization applications for relational data that can be tailored to the problems he or she is addressing.
• There are Python bindings. The following are for large layouts
• FM^3 (OGDF)
• Implements the FM³ layout algorithm by Hachul and Jünger. It is a multilevel, force-directed layout algorithm that can be applied to very large graphs.
• H3 (GRIP)
• Implements the H3 layout technique for drawing large directed graphs as node-link diagrams in 3D hyperbolic space. That algorithm can lay out much larger structures than can be handled using traditional techniques for drawing general graphs because it assumes a hierarchical nature of the data. It was first published as: H3: Laying out Large Directed Graphs in 3D Hyperbolic Space . Tamara Munzner. Proceedings of the 1997 IEEE Symposium on Information Visualization, Phoenix, AZ, pp 2-10, 1997. The implementation in Python (MIT License) has been written by BuzzFeed (https://github.com/buzzfeed/pyh3).
• Mahzarin R. Banaji
• Professor Banaji studies thinking and feeling as they unfold in social context, with a focus on mental systems that operate in implicit or unconscious mode. She studies social attitudes and beliefs in adults and children, especially those that have roots in group membership.  She explores the implications of her work for questions of individual responsibility and social justice in democratic societies. Her current research interests focus on the origins of social cognition and applications of implicit cognition to improve individual decisions and organizational policies.
• What do Different Beliefs Tell us? An Examination of Factual, Opinion-Based, and Religious Beliefs
• My sense is that these three regios – factual, religious, and opinion are huge attractors in our belief landscape
• Studying Implicit Social Cognition with Noninvasive Brain Stimulation

Phil 4.14.19

An interesting take on diversity science that I had never heard of:

UnTangle Map: Visual Analysis of Probabilistic Multi-Label Data

• Data with multiple probabilistic labels are common in many situations. For example, a movie may be associated with multiple genres with different levels of confidence. Despite their ubiquity, the problem of visualizing probabilistic labels has not been adequately addressed. Existing approaches often either discard the probabilistic information, or map the data to a low-dimensional subspace where their associations with original labels are obscured. In this paper, we propose a novel visual technique, UnTangle Map, for visualizing probabilistic multi-labels. In our proposed visualization, data items are placed inside a web of connected triangles, with labels assigned to the triangle vertices such that nearby labels are more relevant to each other. The positions of the data items are determined based on the probabilistic associations between items and labels. UnTangle Map provides both (a) an automatic label placement algorithm, and (b) adaptive interactions that allow users to control the label positioning for different information needs. Our work makes a unique contribution by providing an effective way to investigate the relationship between data items and their probabilistic labels, as well as the relationships among labels. Our user study suggests that the visualization effectively helps users discover emergent patterns and compare the nuances of probabilistic information in the data labels.

Spring Embedders and Force Directed Graph Drawing Algorithms

• Force-directed algorithms are among the most flexible methods for calculating layouts of simple undirected graphs. Also known as spring embedders, such algorithms calculate the layout of a graph using only information contained within the structure of the graph itself, rather than relying on domain-specific knowledge. Graphs drawn with these algorithms tend to be aesthetically pleasing, exhibit symmetries, and tend to produce crossing-free layouts for planar graphs. In this survey we consider several classical algorithms, starting from Tutte’s 1963 barycentric method, and including recent scalable multiscale methods for large and dynamic graphs.

Phil 4.12.19

9:00 – 5:00 ASRC TL

• Finished the BAA white paper(?), and asked for hours to write the full paper for the Symposium on Technologies for Homeland Security
• These are appropriate:
• Meaningful Human Control over Autonomous Systems: A Philosophical Account
• In this paper, we provide an analysis of the sort of control humans need to have over (semi)autonomous systems such that unreasonable risks are avoided, that human responsibility will not evaporate, and that is there is a place to turn to in case of untoward outcomes. We argue that higher levels of autonomy of systems can and should be combined with human control and responsibility. We apply the notion of guidance control that has been developed by Fischer and Ravizza (1998) in the philosophical debate about moral responsibility and free will, and we adapt it as to cover actions mediated by the use of (semi)autonomous robotic systems. As we will show, this analysis can be fruitfully applied in the context of autonomous weapon systems as well as of autonomous systems more generally. We think we herewith provide a first full-fledged philosophical account of “meaningful human control over autonomous systems.”
• The following is the preprint PDF of our paper on driver functional vigilance during Tesla Autopilot assisted driving: Human Side of Tesla Autopilot: Exploration of Functional Vigilance in Real-World Human-Machine Collaboration. It is part of the MIT-AVT large-scale naturalistic driving study
• What I Learned from a Year of ChinAI
• Finally, Chinese thinkers are engaged on broader issues of AI ethics, including the risks of human-level machine intelligence and beyond. Zhao Tingyang, an influential philosopher at the Chinese Academy of Social Sciences, has written a long essay on near-term and long-term AI safety issues, including the prospect of superintelligence. Professor Zhihua Zhou, who leads an impressive lab at Nanjing University, argued in an article for the China Computer Federation that even if strong AI is possible, it is something that AI researchers should stay away from.
• And so ends a long, hectic, but satisfying week.

Phil 4.6.19

Added a section on calculating belief terms in the trap room. And then worked on the paper for the rest of the day. It’s currently 7:45, and the first draft is DONE!

Sent drafts off to Wayne

Working on the lit review. Reading Foucault’s Of Other Spaces:

• We are in the epoch of simultaneity: we are in the epoch of juxtaposition, the epoch of the near and far, of the side-by-side, of the dispersed. We are at a moment, I believe, when our experience of the world is less that of a long life developing through time than that of a network that connects points and intersects with its own skein. (Page 22)
• Today the site has been substituted for extension which itself had replaced emplacement. The site is defined by relations of proximity between points or elements; formally, we can describe these relations as series, trees, or grids (Page 23)
• …we do not live in a homogeneous and empty space, but on the contrary in a space thoroughly imbued with quantities and perhaps thoroughly fantasmatic as well. The space of our primary perception, the space of our dreams and that of our passions hold within themselves qualities that seem intrinsic: there is a light, ethereal, transparent space, or again a dark, rough, encumbered space; a space from above, of summits, or on the contrary a space from below, of mud; or again a space that can be flowing like sparkling water, or a space that is fixed, congealed, like stone or crystal. (Page 23)
• Places of this kind are outside of all places, even though it may be possible to indicate their location in reality. Because these places are absolutely different from all the sites that they reflect and speak about, I shall call them, by way of contrast to utopias, heterotopias. I believe that between utopias and these quite other sites, these heterotopias, there might be a sort of mixed, joint experience, which would be the mirror (Page 24)
• the study, analysis, description, and “reading” (as some like to say nowadays) of these different spaces, of these other places. As a sort of simultaneously mythic and real contestation of the space in which we live, this description could be called heterotopology (Page 24)
• But these heterotopias of crisis are disappearing today and are being replaced, I believe, by what we might call heterotopias of deviation: those in which individuals whose behavior is deviant in re 1:ition to the required mean or norm are placed. Cases of this are rest homes and psychiatric hospitals, and of course prisons; and one should perhaps add retirement homes that are, as it were, on the borderline between the heterotopia of crisis and the heterotopia of deviation since, after all, old age is a crisis, but is also a deviation since, in our society where leisure is the rule, idleness is a sort of deviation. (Page 25)
• Third principle. The heterotopia is capable of juxtaposing in a single real place several spaces, several sites that are in themselves incompatible. Thus it is that the theater brings onto the rectangle of the stage, one after the other, a whole series of places that are foreign to one another; thus it is that the cinema is a very odd rectangular room, at the end of which, on a two-dimensional screen, one sees the projection of a three-dimensional space; but perhaps the oldest example of these heterotopias that take the form of contradictory sites is the garden. We must not forget that in the Orient the garden, an astonishing creation that is now a thousand years old, had very deep and seemingly superimposed meanings. (Page 25)
• Fourth principle. Heterotopias are most often linked to slices in time-which is to say that they open onto what might be termed, for the sake of symmetry, heterochronies. (page 26)
• Fifth principle. Heterotopias always presuppose a system of opening and closing that both isolates them and makes them penetrable. In general, the heterotopic site is not freely accessible like a public place. Either the entry is compulsory, as in the case of entering a barracks or a prison, or else the individual has to submit to rites and purifications. To get in one must have a certain permission and make certain gestures. (Page 26)
• This limitation is why it is possible to come to consensus in reasonable timeframes
• The last trait of heterotopias is that they have a function in relation to all the space that remains. This function unfolds between two extreme poles. Either their role is to create a space of illusion that exposes every real space, all the sites inside of which human life is partitioned, as still more illusory (perhaps that is the role that was played by those famous brothels of which we are now deprived). Or else, on the contrary, their role is to create a space that is other, another real space, as perfect, as meticulous, as well arranged as ours is messy, ill constructed, and jumbled. This latter type would be the heterotopia, not of illusion, but of compensation (Page 27)
• The ship is the heterotopia par excellence. In civilizations without boats, dreams dry up, espionage takes the place of adventure, and the police take the place of pirates. (Page 27)

Foucault’s Heterotopias as Play Spaces

• Tim Hutchings – Western Oregon University
• Jason Giardino – Games to Gather
• However, if the game was set on the deck of an aircraft carrier, we might find Foucault better abled to address the significance of that setting through his interest in social and architectural spaces. A Magic Circle is created when players ‘other’ themselves for the purpose of a game, a heterotopia is created when ‘others’ find a space within a larger structure in order to engage their othered selves. (page 12)
• We are using games to map structuctures in larger spaces
• “Heterotopias have a specific function that is a reflection of the society in which they exist.” (Page 12)
• A heterotopia exists within a larger architectural and social space but is apart from it. However, a heterotopia operates in reaction to this larger framework – it considers the world from the margins and found spaces between the controls and intentions of society as a whole. Dungeons & Dragons remains blissfully ignorant of the space which hosts it. (Page 12)
• Our aim of using these collective and repeated actions to produce maps of both place and space, when combined with aspects such as the explicit acceptance of the IRB meet this requirement, I think.

Phil 3.22.19

7:00 – 5:30 ASRC PhD

• Morning thought – primordial movement is navigation at a more generalized level. At this level, only broad features are visible, so it’s only easy to jump to a large, common feature like fear-of-the-other. For humans, I think there are very few accessible features at this level.
• Adversarial attacks on medical machine learning
• With public and academic attention increasingly focused on the new role of machine learning in the health information economy, an unusual and no-longer-esoteric category of vulnerabilities in machine-learning systems could prove important. These vulnerabilities allow a small, carefully designed change in how inputs are presented to a system to completely alter its output, causing it to confidently arrive at manifestly wrong conclusions. These advanced techniques to subvert otherwise-reliable machine-learning systems—so-called adversarial attacks—have, to date, been of interest primarily to computer science researchers (1). However, the landscape of often-competing interests within health care, and billions of dollars at stake in systems’ outputs, implies considerable problems. We outline motivations that various players in the health care system may have to use adversarial attacks and begin a discussion of what to do about them. Far from discouraging continued innovation with medical machine learning, we call for active engagement of medical, technical, legal, and ethical experts in pursuit of efficient, broadly available, and effective health care that machine learning will enable.
• Jumping straight into coding
• Moved the menu bars around
• Working on parsing the selected listings to add to the various lists
• Added a “search” button to search for neighbors of terms in the spaces and places text areas
• Ran into a problem when I was calculating TF-IDF From here, but the way to get the data is here, spoilers – it uses Dataframes. Anyway, artifacts from Slack and PHPBB we interfering with the analytics. Things like [i:3fsgwhpz]. So I added a lot of preprocessing. First, more regexes:
punctuation_regex = re.compile(r"[\",\-\_\.\d+?!*;“”]")
bracket_regex = re.compile(r"$.*?$")
amper_semicolon_regex = re.compile(r"\&.*?\;")

And then some word-by-word testing and more regexing:

def cleanup_text(self, raw: str) -> str:
raw = self.bracket_regex.sub("",raw)
raw = self.amper_semicolon_regex.sub("",raw)
words = raw.split(" ")
s = ""
for word in words:
if len(word) < 20:
word = self.punctuation_regex.sub("",word)
word = word.strip()
word = word.lower()
s += " {}".format(word)
else:
print("Threw out {}".format(word))
return s
• Anyway, the results are pretty good now with TF-IDF. Here’s the top few terms for each player’s runs
----------------------
FuguRoulette-player:
post TF-IDF
javelin: 1.3235824005932413
orc: 1.2596337832554234
don: 1.2329356851106978
mindy: 1.1935877563453061
dragon: 1.180695872064165
room: 1.16758789676671
goblin: 1.1244271157713812
gate: 1.0518778198496626
muttered: 0.9602704217082824
orb: 0.7818369426232508
vines: 0.7682713289173773
around: 0.7650741399517217
believe: 0.7181160263645541
set: 0.6960723252519683
----------------------
Kaeritha-player:
post TF-IDF
troll: 1.8877816896391235
room: 1.6145159552006425
spell: 1.19387373804735
orb: 1.031131725198719
hand: 1.0226191383574903
halfling: 0.882770501608177
feather: 0.8321564150194518
chest: 0.7956715550842
need: 0.7833254070966856
without: 0.7774257667568547
thought: 0.7698168337310007
wasn: 0.7681132279117597
grogg: 0.7397095370527041
nodded: 0.7283692418929164
cricket: 0.7152753845274986
----------------------
Ashleyder-player:
post TF-IDF
room: 1.37664885493529
halfling: 1.3095258648568422
orb: 1.1635393833341
arrow: 1.0958743699311024
bow: 1.0833323871838676
woman: 0.905661830111989
sword: 0.8274886204621582
side: 0.8159855961191507
door: 0.8030328480633289
weapons: 0.8023256227742956
bit: 0.7654054685520582
armor: 0.6925203949859854
compatriots: 0.6877982251257945
moment: 0.666106887452693
wasn: 0.6407825783880001
group: 0.6181005287618395
words: 0.6162132133458346
statues: 0.6129058701485565
----------------------
dungeon_master1-player:
post TF-IDF
grogg: 5.334199523123002
room: 3.811509447108922
gate: 3.258183021914178
orb: 2.618164708893951
troll: 2.613186928575063
arrow: 2.324879853387413
looking: 2.0945608918805405
dragon: 2.0386853821484214
statues: 2.0307941282615394
halfling: 1.9946267677568987
goblin: 1.9479046173471883
eyes: 1.9250729565572604
large: 1.8740265406115013
hand: 1.8621985701316857
ooc: 1.854167610118333
orc: 1.8453651951258079
----------------------
Aaron Buchanan-player:
post TF-IDF
smile: 5.028089150947501
troll: 4.349229589605341
linda: 4.01623419920215
damage: 3.5816072459387898
let: 3.145522725372224
know: 3.0568701804539486
jenni: 3.0150241755107605
need: 2.9865597817204916
don: 2.89736685000583
fire: 2.8533063572331154
hit: 2.750325190292788
elf: 2.61638151392588
nothing: 2.5832965974665827
rope: 2.5651899037822403
want: 2.5516172618521207
room: 2.5234046485126127
hand: 2.408589994530533
key: 2.400913929253641
halfling: 2.300372097141645
grogg: 2.2976898742276277
----------------------
Jenni-player:
post TF-IDF
insight: 3.5333368131417924
troll: 3.4738014944618905
help: 2.629726435567097
grogg: 2.396996336469604
need: 2.358944535917952
room: 2.25768912386651
healing: 2.2382624097615995
rolls: 2.2229326490531314
gate: 2.195439698041948
around: 2.161868029714761
flame: 2.132641891485049
perception: 2.1149040159363293
floor: 2.1054598538974045
hands: 1.9310855224062018
light: 1.8784320905937355
uses: 1.850257078968512
catch: 1.793277658871867
----------------------
Bjorn Hasseler-player:
post TF-IDF
flame: 2.315315586844817
sacred: 2.315315586844817
stonecunning: 2.1557147060826947
rolls: 2.132883047459771
grogg: 1.9660626127710805
don: 1.9424906312537291
steps: 1.935482241603244
bridge: 1.7092785394164918
rope: 1.5744166673302291
torches: 1.551554596214274
stairs: 1.4732750153279608
platform: 1.3689503773093064
vines: 1.3351891642736244
light: 1.3217202403569526
----------------------
randomexile-player:
post TF-IDF
troll: 5.780387270246775
grogg: 4.59954530049338
need: 4.379175783748707
attack: 3.7429397050152247
don: 3.564218421074024
open: 3.503242156009218
gate: 3.3068573706012985
stealth: 3.1899559813180645
traps: 2.965951521209904
chest: 2.9426150667239175
side: 2.8272991421295277
room: 2.8187225708944883
dragon: 2.7919898167411095
party: 2.784297298562819
know: 2.698287503059542
----------------------
Linda-player:
post TF-IDF
grogg: 10.15480371661793
damage: 6.745957190399183
gate: 4.595526542550383
turn: 4.47763106887882
side: 4.220054751334396
room: 4.0759304935283875
troll: 3.6496283755351433
persuasion: 3.427787051079431
stairs: 3.2452878097049718
open: 3.0691978408049714
appears: 2.9662151644031236
barrier: 2.9526976397873197
hit: 2.882801312489094
feet: 2.7553337830423685
----------------------
Grymm-player:
post TF-IDF
rope: 2.5925740290266477
troll: 2.149767946611558
grogg: 2.1373623910153023
close: 2.093606121380299
goes: 1.9114083131138986
thing: 1.879425660287383
gate: 1.8498993377390152
behind: 1.7759591324283694
around: 1.7739744768952832
eyes: 1.6015525983573213
along: 1.565130385605012
face: 1.5465277621378841
merric: 1.531838768719999
goblin: 1.5017357357398398
chest: 1.4793322265307385
----------------------
AllTheLolz-player:
post TF-IDF
rope: 2.5574727497157186
bit: 2.334695846271241
halfling: 2.2917865866720875
turn: 2.2913671375617244
help: 2.263326099701241
want: 2.255517431033907
let: 2.2248419816867973
hand: 2.05823145874274
thing: 2.0252535914010243
need: 2.017853031957051
trying: 1.9392838304479607
won: 1.9074029011042937
lever: 1.8940047810992084
motions: 1.8791666280630153
grogg: 1.8512620533629853
know: 1.8460073095362568
----------------------
brkuhlman-player:
post TF-IDF
joy: 2.2090099096592093
bow: 1.4708821850714477
agreed: 1.2909672047219294
shit: 1.2511351948636689
hand: 1.1939893091569087
simply: 1.0754065506075219
alongside: 1.03095098597318
moves: 1.0217451884953292
follows: 1.019308558744064
esvele: 1.0031051305561383
eyes: 1.0031051305561383
alrighty: 1.0
sounds: 1.0
wow: 1.0
armor: 0.9675296552629622
goblin: 0.9675296552629622
arrow: 0.959551586099932
----------------------
Poe-player:
post TF-IDF
grogg: 9.574956839446978
room: 7.7929146794417985
gate: 7.769157727681967
open: 5.161416388301517
side: 4.9552473292407315
hand: 4.920538249739186
something: 4.862660052617354
troll: 4.756897094197843
damage: 4.698981284560832
phoenix: 4.506875041306749
group: 4.4419312361884575
stealth: 4.347602688687722
bee: 4.337563548710324
stairs: 4.272837824041584
perception: 4.240823300482532
investigation: 4.214126267526979
bit: 4.2116435909201435
goblin: 4.16370490562877
----------------------
Keiri'to-player:
post TF-IDF
gate: 3.813331273921538
course: 3.3238613690720182
light: 3.2357123635315
move: 3.0410330090181983
orc: 2.920652421803098
dragon: 2.91393405622444
casts: 2.910174915050543
shelton: 2.781316206653326
turn: 2.7696197904765247
close: 2.7395876537286137
history: 2.7290686528241705
rope: 2.533647571484718
toss: 2.488833414797614
----------------------
Lorelai-player:
post TF-IDF
rope: 7.346484814122864
mage: 5.1901641703849695
hand: 5.169823617707603
something: 4.052962289815423
room: 3.7977359903069874
spell: 3.733564719352958
feet: 3.629297463463484
gate: 3.4221850444525543
need: 3.313446574887807
hands: 3.306280386619182
casts: 3.239250407373651
arrows: 3.094136824719543
hahaha: 3.0
lorelai: 2.8832894462350955
troll: 2.879950620848435
----------------------
Bren'Dralagon-player:
post TF-IDF
javelin: 5.50125987652874
sigh: 4.0
hmm: 3.534360458898429
room: 3.5148283185111264
yup: 3.5117826563035313
axe: 3.114116974088525
wait: 3.0448104923325108
course: 2.7955498582374037
chest: 2.7578668995086213
kk: 2.68753920352695
rope: 2.491724054450192
hand: 2.409513756019609
attack: 2.380401354039185
side: 2.2585165820164
ft: 2.2506235321034813
better: 2.2144928823627117
move: 2.159570674311593
troll: 2.149851721830461
----------------------
Shelton Herrington-player:
post TF-IDF
hehe: 12.124909531389427
don: 11.505547928323026
guess: 10.67778790195941
nice: 9.170367618719803
rope: 8.698156248650768
orb: 8.567297721201122
hey: 8.3986603737825
hmm: 8.284208790999351
guys: 8.195019661596476
want: 7.965528793382409
door: 7.900199902653034
know: 7.817490225187236
can: 6.476312939358579
maybe: 6.393688899561484
around: 6.370346146839613



Phil 3.21.19

ASRC PhD 7:00 – 6:00

• Worked a little on the iConference slides. Found the section on subcritical/supercritical in Kaufman’s book
• Working on drawing the player panalyzers
• Visualizing a NetworkX graph in the Notebook with D3.js
• In this recipe, we will create a graph in Python with NetworkX and visualize it in the Jupyter Notebook with D3.js.
• Bokeh is an interactive visualization python library that targets modern web browsers for presentation. Its goal is to provide elegant, concise construction of versatile graphics, and to extend this capability with high-performance interactivity over very large or streaming datasets. Bokeh can help anyone who would like to quickly and easily create interactive plots, dashboards, and data applications.
• Visualizing Network Graphs
• Bokeh has added native support for creating network graph visualizations with configurable interactions between edges and nodes.
• Got the BOW terms out of all the panalyzers.
• Working on setting child embeddings
• Scikit has TF-IDF and BOW vectorizers
• Players plotted in the master embedding space:
• I just realized that I can plot the space and place terms in the same way, which should make some nice figures in the paper.
• Here’s a plot of the different groups. Note that it is much wider. Something happened?
• Anyway, I’m done for the day. Tomorrow I’ll start to add stop words and look for neighbor terms (And plot them!)

Phil 3.9.19

Understanding China’s AI Strategy

• In my interactions with Chinese government officials, they demonstrated remarkably keen understanding of the issues surrounding AI and international security. It is clear that China’s government views AI as a high strategic priority and is devoting the required resources to cultivate AI expertise and strategic thinking among its national security community. This includes knowledge of U.S. AI policy discussions. I believe it is vital that the U.S. policymaking community similarly prioritize cultivating expertise and understanding of AI developments in China.

Russian Trolls Shift Strategy to Disrupt U.S. Election in 2020

• Russian internet trolls appear to be shifting strategy in their efforts to disrupt the 2020 U.S. elections, promoting politically divisive messages through phony social media accounts instead of creating propaganda themselves, cybersecurity experts say.

Backup phone

Work on SASO paper – started

Rachel’s dungeon run is tomorrow! Maybe cross 10,000 posts?

Look at using BERT and the full Word2Vec model for analyzing posts

The Promise of Hierarchical Reinforcement Learning

• To really understand the need for a hierarchical structure in the learning algorithm and in order to make the bridge between RL and HRL, we need to remember what we are trying to solve: MDPs. HRL methods learn a policy made up of multiple layers, each of which is responsible for control at a different level of temporal abstraction. Indeed, the key innovation of the HRL is to extend the set of available actions so that the agent can now choose to perform not only elementary actions, but also macro-actions, i.e. sequences of lower-level actions. Hence, with actions that are extended over time, we must take into account the time elapsed between decision-making moments. Luckily, MDP planning and learning algorithms can easily be extended to accommodate HRL.

Phil 2.27.19

7:00 – 5:30 ASRC

• Getting closer to the goal by being less capable
• Understanding how systems with many semi-autonomous parts reach a desired target is a key question in biology (e.g., Drosophila larvae seeking food), engineering (e.g., driverless navigation), medicine (e.g., reliable movement for brain-damaged individuals), and socioeconomics (e.g., bottom-up goal-driven human organizations). Centralized systems perform better with better components. Here, we show, by contrast, that a decentralized entity is more efficient at reaching a target when its components are less capable. Our findings reproduce experimental results for a living organism, predict that autonomous vehicles may perform better with simpler components, offer a fresh explanation for why biological evolution jumped from decentralized to centralized design, suggest how efficient movement might be achieved despite damaged centralized function, and provide a formula predicting the optimum capability of a system’s components so that it comes as close as possible to its target or goal.
• Nice chat with Greg last night. He likes the “Bones in a Hut” and “Stampede Theory” phrases. It turns out the domains are available…
• Thinking that the title of the book could be “Stampede Theory: Why Group Think Happens, and why Diversity is the First, Best Answer”. Maybe structure the iConference talk around that as well.
• Guidance from Antonio: In the meantime, if you have an idea on how to structure the Introduction, please go on considering that we want to put the decision logic inside each Autonomous Car that will be able to select passengers and help them in a self-organized manner.
• Try out the splitter on the Tymora1 text.
• Incorporate the ignore.xml when reading the text
• If things look promising, then add changes to the phpbb code and try on that text as well.
• At this point I’m just looking at overlapping lists of words that become something like a sand chart. I wonder if I can use the Eigenvector values to become a percentage connectivity/weight?
• Ok – I have to say that I’m pretty happy with this. These are centrality using top 25% BOW from the Slack text of Tymora1. I think that the way to use this is to have each group be an “agent” that has cluster of words for each step:
• Based on this, I’d say add a “Evolving Networks of words” section to the dissertation. Have to find that WordRank paper
• Working on white paper. Lit review today, plus fix anything that I might have broken…
• Added section on cybersecurity that got lost in the update fiasco
• Aaron found a good paper on the lack of advantage that the US has in AI, particularly wrt China
• Avoiding working on white paper by writing a generator for Aaron. Done!
• Cortex is an open-source platform for building, deploying, and managing machine learning applications in production. It is designed for any developer who wants to build machine learning powered services without having to worry about infrastructure challenges like configuring data pipelines, continuous deployment, and dependency management. Cortex is actively maintained by Cortex Labs. We’re a venture-backed team of infrastructure engineers and we’re hiring.