Author Archives: pgfeldman

Phil 5.25.18

7:00 – 6:00 ASRC MKT

  • Starting Bit by Bit
  • I realized the hook for the white paper is the military importance of maps. I found A Revolution in Military Cartography?: Europe 1650-1815
    • Military cartography is studied in order to approach the role of information in war. This serves as an opportunity to reconsider the Military Revolution and in particular changes in the eighteenth century. Mapping is approached not only in tactical, operational and strategic terms, but also with reference to the mapping of war for public interest. Shifts in the latter reflect changes in the geography of European conflict.
  • Reconnoitering sketch from Instructions in the duties of cavalry reconnoitring an enemy; marches; outposts; and reconnaissance of a country; for the use of military cavalry. 1876 (pg 83) reconnoitering_sketch
  • rutter is a mariner’s handbook of written sailing directions. Before the advent of nautical charts, rutters were the primary store of geographic information for maritime navigation.
    • It was known as a periplus (“sailing-around” book) in classical antiquity and a portolano (“port book”) to medieval Italian sailors in the Mediterranean Sea. Portuguese navigators of the 16th century called it a roteiro, the French a routier, from which the English word “rutter” is derived. In Dutch, it was called a leeskarte (“reading chart”), in German a Seebuch (“sea book”), and in Spanish a derroterro
    • Example from ancient Greece:
      • From the mouth of the Ister called Psilon to the second mouth is sixty stadia.
      • Thence to the mouth called Calon forty stadia.
      • From Calon to Naracum, which last is the name of the fourth mouth of the Ister, sixty stadia.
      • Hence to the fifth mouth a hundred and twenty stadia.
      • Hence to the city of Istria five hundred stadia.
      • From Istria to the city of Tomea three hundred stadia.
      • From Tomea to the city of Callantra, where there is a port, three hundred stadia
  • Battlespace
  • Cyber-Human Systems (CHS)
    • In a world in which computers and networks are increasingly ubiquitous, computing, information, and computation play a central role in how humans work, learn, live, discover, and communicate. Technology is increasingly embedded throughout society, and is becoming commonplace in almost everything we do. The boundaries between humans and technology are shrinking to the point where socio-technical systems are becoming natural extensions to our human experience – second nature, helping us, caring for us, and enhancing us. As a result, computing technologies and human lives, organizations, and societies are co-evolving, transforming each other in the process. Cyber-Human Systems (CHS) research explores potentially transformative and disruptive ideas, novel theories, and technological innovations in computer and information science that accelerate both the creation and understanding of the complex and increasingly coupled relationships between humans and technology with the broad goal of advancing human capabilities: perceptual and cognitive, physical and virtual, social and societal.
  • Reworked Section 1 to incorporate all this in a single paragraph
  • Long discussion about all of the above with Aaron
  • Worked on getting the CoE together by CoB
  • Do Diffusion Protocols Govern Cascade Growth?
    • Large cascades can develop in online social networks as people share information with one another. Though simple reshare cascades have been studied extensively, the full range of cascading behaviors on social media is much more diverse. Here we study how diffusion protocols, or the social exchanges that enable information transmission, affect cascade growth, analogous to the way communication protocols define how information is transmitted from one point to another. Studying 98 of the largest information cascades on Facebook, we find a wide range of diffusion protocols – from cascading reshares of images, which use a simple protocol of tapping a single button for propagation, to the ALS Ice Bucket Challenge, whose diffusion protocol involved individuals creating and posting a video, and then nominating specific others to do the same. We find recurring classes of diffusion protocols, and identify two key counterbalancing factors in the construction of these protocols, with implications for a cascade’s growth: the effort required to participate in the cascade, and the social cost of staying on the sidelines. Protocols requiring greater individual effort slow down a cascade’s propagation, while those imposing a greater social cost of not participating increase the cascade’s adoption likelihood. The predictability of transmission also varies with protocol. But regardless of mechanism, the cascades in our analysis all have a similar reproduction number ( 1.8), meaning that lower rates of exposure can be offset with higher per-exposure rates of adoption. Last, we show how a cascade’s structure can not only differentiate these protocols, but also be modeled through branching processes. Together, these findings provide a framework for understanding how a wide variety of information cascades can achieve substantial adoption across a network.
  • Continuing with creating the Simplest LSTM ever
    • All work and no play makes jack a dull boy indexes alphabetically as : AllWork

Phil 5.22.18

8:00 – 5:00 ASRC MKT

  • EAMS meeting
    • Rational
    • Sensitivity knn. Marching cubes, or write into space. Pos lat/lon altitude speed lat lon (4 dimensions)
    • Do they have flight path?
    • Memory
    • Retraining (batch)
    • inference real time
    • How will time be used
    • Much discussion of simulation
  • End-to-end Machine Learning with Tensorflow on GCP
    • In this workshop, we walk through the process of building a complete machine learning pipeline covering ingest, exploration, training, evaluation, deployment, and prediction. Along the way, we will discuss how to explore and split large data sets correctly using BigQuery and Cloud Datalab. The machine learning model in TensorFlow will be developed on a small sample locally. The preprocessing operations will be implemented in Cloud Dataflow, so that the same preprocessing can be applied in streaming mode as well. The training of the model will then be distributed and scaled out on Cloud ML Engine. The trained model will be deployed as a microservice and predictions invoked from a web application. This lab consists of 7 parts and will take you about 3 hours. It goes along with this slide deck
    • Slides
    • Codelab
  • Added in JuryRoom Text rough. Next is Research Browser
  • Worked with Aaron on LSTM some more. More ndarray slicing experience:
    import numpy as np
    dimension = 3
    size = 10
    dataset1 = np.ndarray(shape=(size, dimension))
    dataset2 = np.ndarray(shape=(size, dimension))
    for x in range(size):
        for y in range(dimension):
            val = (y+1) * 10 + x +1
            dataset1[x,y] = val
            val = (y+1) * 100 + x +1
            dataset2[x,y] = val
    
    
    dataset1[:, 0:1] = dataset2[:, -1:]
    print(dataset1)
    print(dataset2)
  • Results in:
    [[301.  21.  31.]
     [302.  22.  32.]
     [303.  23.  33.]
     [304.  24.  34.]
     [305.  25.  35.]
     [306.  26.  36.]
     [307.  27.  37.]
     [308.  28.  38.]
     [309.  29.  39.]
     [310.  30.  40.]]
    [[101. 201. 301.]
     [102. 202. 302.]
     [103. 203. 303.]
     [104. 204. 304.]
     [105. 205. 305.]
     [106. 206. 306.]
     [107. 207. 307.]
     [108. 208. 308.]
     [109. 209. 309.]
     [110. 210. 310.]]

     

Phil 5.18.18

7:00 – 4:00 ASRC MKT

Phil 5.17.18

7:00 – 4:00 ASRC MKT

  • How artificial intelligence is changing science – This page contains pointers to a bunch of interesting projects:
  • Multi-view Discriminative Learning via Joint Non-negative Matrix Factorization
    • Multi-view learning attempts to generate a classifier with a better performance by exploiting relationship among multiple views. Existing approaches often focus on learning the consistency and/or complementarity among different views. However, not all consistent or complementary information is useful for learning, instead, only class-specific discriminative information is essential. In this paper, we propose a new robust multi-view learning algorithm, called DICS, by exploring the Discriminative and non-discriminative Information existing in Common and view-Specific parts among different views via joint non-negative matrix factorization. The basic idea is to learn a latent common subspace and view-specific subspaces, and more importantly, discriminative and non-discriminative information from all subspaces are further extracted to support a better classification. Empirical extensive experiments on seven real-world data sets have demonstrated the effectiveness of DICS, and show its superiority over many state-of-the-art algorithms.
  • Add Nomadic, Flocking, and Stampede to terms. And a bunch more
  • Slides
  • Embedding navigation
    • Extend SmartShape to SourceShape. It should be a stripped down version of FlockingShape
    • Extend BaseCA to SourceCA, again, it should be a stripped down version of FlockingBeliefCA
    • Add a sourceShapeList for FlockingAgentManager that then passes that to the FlockingShapes
  • And it’s working! Well, drawing. Next is the interactions: Influence
  • Finally went and joined the IEEE

Phil 5.16.18

7:00 – 3:30 ASRC MKT

  • My home box has become very slow. 41 seconds to do a full recompile of GPM, while it takes 3 sec on a nearly identical machine at work. This may help?
  • Working on terms
  • Working on slides
  • Attending talk on Big Data, Security and Privacy – 11 am to 12 pm at ITE 459
    • Bhavani Thiraisingham
    • Big data management and analytics emphasizing GANs  and deep learning<- the new hotness
      • How do you detect attacks?
      • UMBC has real time analytics in cyber? IOCRC
    • Example systems
      • Cloud centric assured information sharing
    • Research challenges:
      • dynamically adapting and evolving policies to maintain privacy under a changing environment
      • Deep learning to detect attacks tat were previously not detectable
      • GANs or attacker and defender?
      • Scaleabe is a big problem, e.g. policies within Hadoop operatinos
      • How much information is being lost by not sharing data?
      • Fine grained access control with Hive RDF?
      • Distributed Search over Encrypted Big Data
    • Data Security & Privacy
      • Honypatching – Kevin xxx on software deception
      • Novel Class detection – novel class embodied in novel malware. There are malware repositories?
    • Lifecycle for IoT
    • Trustworthy analytics
      • Intel SGX
      • Adversarial SVM
      • This resembles hyperparameter tuning. What is the gradient that’s being descended?
      • Binary retrofitting. Some kind of binary man-in-the-middle?
      • Two body problem cybersecurity
    • Question –
      • discuss how a system might recognize an individual from session to session while being unable to identify the individual
      • What about multiple combinatorial attacks
      • What about generating credible false information to attackers, that also has steganographic components for identifying the attacker?
  • I had managed to not commit the embedding xml and the programs that made them, so first I had to install gensim and lxml at home. After that it’s pretty straightforward to recompute with what I currently have.
  • Moving ARFF and XLSX output to the menu choices. – done
  • Get started on rendering
    • Got the data read in and rendering, but it’s very brute force:
      if(getCurrentEmbeddings().loadSuccess){
          double posScalar = ResizableCanvas.DEFAULT_SCALAR/2.0;
          List<WordEmbedding> weList = currentEmbeddings.getEmbeddings();
          for (WordEmbedding we : weList){
              double size = 10.0 * we.getCount();
              SmartShape ss = new SmartShape(we.getEntry(), Color.WHITE, Color.BLACK);
              ss.setPos(we.getCoordinate(0)*posScalar, we.getCoordinate(1)*posScalar);
              ss.setSize(size, size);
              ss.setAngle(0);
              ss.setType(SmartShape.SHAPE_TYPE.OVAL);
              canvas.addShape(ss);
          }
      }

      It took a while to remember how shapes and agents work together. Next steps:

      • Extend SmartShape to SourceShape. It should be a stripped down version of FlockingShape
      • Extend BaseCA to SourceCA, again, it should be a stripped down version of FlockingBeliefCA
      • Add a sourceShapeList for FlockingAgentManager that then passes that to the FlockingShapes

Phil 5.15.18

7:00 – 4:00 ASRC MKT

Phil 5.14.18

7:00 – 3:00 ASRC MKT

    • Working on Zurich Travel. Ricardo is getting tix, and I got a response back from the conference on an extended stay
    • Continue with slides
    • See if there is a binary embedding reader in Java? Nope. Maybe in ml4j, but it’s easier to just write out the file in the format that I want
    • Done with the writer: Vim
  • Fika
  • Finished Simulacra and Simulation. So very, very French. From my perspective, there are so many different lines of thought coming out of the work that I can’t nail down anything definitive.
  • Started The Evolution of Cooperation

Phil 10.11.18

Neural Network Evolution Playground with Backprop NEAT

  • The genetic algorithm called NEAT will be used to evolve our neural nets from a very simple one at the beginning to more complex ones over many generations. The weights of the neural nets will be solved via back propagation. The awesome recurrent.js library made by karpathy, makes it possible to build computational graph representation of arbitrary neural networks with arbitrary activation functions. I implemented the NEAT algorithm to generate representations of neural nets that recurrent.js can process, so that the library can be used to forward pass through the neural nets that NEAT has discovered, and also to backprop the neural nets to optimise for their weights.

Thread on opacity and how we don’t know where our FB advertising is coming from

Meeting with Wayne

  • Walked through the terms. I need to add citations
  • Discussed What to do After the PhD. Setting up a program to study and implement trustworthy anonymous citizen journalism came up, which is very cool
  • Quite a bit of logistical discussion on how to bridge from UMBC to UMD
  • Showed Wayne my copy of Bit by Bit.

Continuous Profile Models (CPM) Matlab Toolbox and a matlab to python converter, as well as how to call MATLAB from python

Phil 5.10.18

Worked on my post on terms

Navigating with grid-like representations in artificial agents

  • Most animals, including humans, are able to flexibly navigate the world they live in – exploring new areas, returning quickly to remembered places, and taking shortcuts. Indeed, these abilities feel so easy and natural that it is not immediately obvious how complex the underlying processes really are. In contrast, spatial navigation remains a substantial challenge for artificial agents whose abilities are far outstripped by those of mammals.

7:30am – 8:00pm ASRC Tech conference

  • Maybe generate an fft waveform that can be arbitrarily complex, but repeating and repeatable as a function to learn. We then find the simplest, smallest representation that we can then run hyperparameter tuning algorithms on.
  • IoT marketplace is apparently a thing
  • IMG_4292

Phil 5.9.18

Listening to an interview with Kate Crawford of MIT on bias in machine learning and risks with AI in general

7:30am – 8:00pm ASRC Tech conference

  • Need to demo LMN for USPTO
  • We can get interns!
  • Presentation with Deltek was actually pretty interesting. Need to ask if they can run an analysis that finds the change in words associating AI terms is increasing, decreasing, or staying the same.
  • Aaron got ‘technologist of the year’, which was cool
  • Way too much sitting!

Phil 5.8.18

7:00 – 5:00 ASRC MKT

5:00 – 8:00 ASRC Tech Conference

Phil 5.7.18

7:00 – 5:00 ASRC MKT

  • Content Sharing within the Alternative Media Echo-System: The Case of the White Helmets
    • Kate Starbird
    • In June 2017 our lab began a research project looking at online conversations about the Syria Civil Defence (aka the “White Helmets”). Over the last 8–9 months, we have spent hundreds of hours conducting analysis on the tweets, accounts, articles, and websites involved in that discourse. Our first peer-reviewed paper was recently accepted to an upcoming conference (ICWSM-18). That paper focuses on a small piece of the structure and dynamics of this conversation, specifically looking at content sharing across websites. Here, I describe that research and highlight a few of the findings.
  • Matt Salganik on Open Review
  • Spent a lot of time getting each work to draw differently in the scatterplot. That took some digging into the gensim API to get vectors from the corpora. I then tried to plot the list of arrays, but matplotlib only likes ndarrays (apparently?). I’m now working on placing the words from each text into their own ndarray.
  • Also added a filter for short stop words and switched to a hash map for words to avoid redundant points in the plot.
  • Fika
    • Bryce Peake
    • ICA has a computational methods study area. How media lows through different spaces, etc. Python and [R]
    • Anne Balsamo – designing culture
    • what about language as an anti-colonial interaction
    • Human social scraping of data. There can be emergent themes that become important.
    • The ability of the user to delete all primary, secondary and tertiary data.
    • The third eye project (chyron crawls)

Phil 5.6.18

Sentiment detection with Keras, word embeddings and LSTM deep learning networks

  • Read this blog post to get an overview over SaaS and open source options for sentiment detection. Learn an easy and accurate method relying on word embeddings with LSTMs that allows you to do state of the art sentiment analysis with deep learning in Keras.

Which research results will generalize?

  • One approach to AI research is to work directly on applications that matter — say, trying to improve production systems for speech recognition or medical imaging. But most research, even in applied fields like computer vision, is done on highly simplified proxies for the real world. Progress on object recognition benchmarks — from toy-ish ones like MNISTNORB, and Caltech101, to complex and challenging ones like ImageNet and Pascal VOC — isn’t valuable in its own right, but only insofar as it yields insights that help us design better systems for real applications.

Revisiting terms:

  • Belief Space – A subset of information space that is associated with opinions. For example, there is little debate about what a table is, but the shape of the table has often been a source of serious diplomatic contention
  • Medium – the technology that mediates the communication that coordinates the group. There are properties that seem to matter:
    • Reach – How many individuals are connected directly. Evolutionarily we may be best suited to 7 +/- 2
    • Directionality – connections can be one way (broadcast) or two way (face to face)
    • Transparency – How ‘visible’ is the individual on the other side of the communication? There are immediate perception and historical interaction aspects.
    • Friction – How difficult is it to use the medium? For example in physical space, it is trivial to interact with someone nearby, but becomes progressively difficult with distance. Broadcasting makes it trivial for a small number of people to reach large numbers, but not the reverse. Computer mediated designs typically try to reduce the friction of interaction.
  • Dimension Reduction – The process by which groups decide where to coordinate. The lower the dimensions, the easier (less calculation) it takes to act together
  • State – a multidimensional measure of current belief and interest
  • Orientation – A vector constructed of two measures of state. Used to determine alignment with others
  • Velocity – The amount of change in state over time
  • Diversity Injection – The addition of random, factual information to the Information Retrieval Interfaces (IRIs) using mechanisms currently used to deliver advertising. This differs from Serendipity Injection, which attempts to find stochastically relevant information for an individual’s implicit information needs.
    • Level 1: population targeted –  Based on Public Service Announcements (PSAs), information presentation should range from simple, potentially gamified presentations to deep exploration with citations. The same random information is presented by the IRIs to the using population at the same time similarly to the Google Doodle.
    • Level 2: group targeted – based on detecting a group’s behaviors. For example, a stampeding group may require information that is more focussed on pointing at where flocking activity is occuring.
    • Level 3: individual targeted –  Depending on where in the belief space the individual is, there may be different reactions. In a sparsely traveled space, information that lies in the general direction of travel might be a form of useful serendipity. Conversely, when on a path that often leads to violent radicalization, information associated with disrupting the progression of other individuals with similar vectors could be applied.
  • Map – a type of diagram that supports the plotting of trajectories. In this work, maps of belief space are constructed based on the dimension reduction used by humans in discussion. These maps are assumed to be dynamic over time and may consists of many interrelated, though not necessarily congruent, layers.
  • Herding – Deliberate creation of stampede conditions in groups. Can be an internal process to consolidate a group, or an external, adversarial process.

Trump as Enron (Twitter)

Phil 5.4.18

7:00 – 4:30 ASRC MKT

  • Listening to the Invisibilia episode on the stories we tell ourselves. (I, I, I. Him)
  • Listening to BBC Business Daily, on Economists in the doghouse. One of the people being interviewed is Mariana Mazzucato, who wrote The Entrepreneurial State: debunking public vs. private sector myths. She paraphrases Plato: “stories rule the world”. Oddly, this does not show up when you search through Plato’s work. It may be part of the Parable of the Cave, where the stories that the prisoners tell each other build a representation of the world?
  • Moby Dick, page 633 – a runaway condition:
    • They were one man, not thirty. For as the one ship that held them all; though it was put together of all contrasting things-oak, and maple, and pine wood; iron, and pitch, and hemp-yet all these ran into each other in the one concrete hull, which shot on its way, both balanced and directed by the long central keel; even so, all the individualities of the crew, this man’s valor, that man’s fear; guilt and guiltiness, all varieties were welded into oneness, and were all directed to that fatal goal which Ahab their one lord and keel did point to.
  • John Goodall, one of Wayne’s former students is deep into intrusion detection and visualization
  • Added comments to Aaron’s Reddit notes / CHI paper
  • Chris McCormick has a bunch of nice tutorials on his blog, including this one on Word2Vec:
    • This tutorial covers the skip gram neural network architecture for Word2Vec. My intention with this tutorial was to skip over the usual introductory and abstract insights about Word2Vec, and get into more of the details. Specifically here I’m diving into the skip gram neural network model.
    • He also did this:
    • wiki-sim-search: Similarity search on Wikipedia using gensim in Python.The goals of this project are the following two features:
      1. Create LSI vector representations of all the articles in English Wikipedia using a modified version of the make_wikicorpus.py script in gensim.
      2. Perform concept searches and other fun text analysis on Wikipedia, also using gensim functionality.
  • Slicing out columns in numpy:
    import numpy as np
    dimension = 3
    size = 10
    dataset = np.ndarray(shape=(size, dimension))
    for x in range(size):
        for y in range(dimension):
            val = (y+1) * 10 + x +1
            dataset[x,y] = val
    
    print(dataset)
    print(dataset[...,0])
    print(dataset[...,1])
    print(dataset[...,2])

    Results in:

    [[11. 21. 31.]
    [12. 22. 32.]
    [13. 23. 33.]
    [14. 24. 34.]
    [15. 25. 35.]
    [16. 26. 36.]
    [17. 27. 37.]
    [18. 28. 38.]
    [19. 29. 39.]
    [20. 30. 40.]]
    [11. 12. 13. 14. 15. 16. 17. 18. 19. 20.]
    [21. 22. 23. 24. 25. 26. 27. 28. 29. 30.]
    [31. 32. 33. 34. 35. 36. 37. 38. 39. 40.]
  • And that makes everything work. Here’s a screenshot of a 3D embedding space for the entire(?) Jack London corpora: 3D_corpora
  • A few things come to mind
    • I’ll need to get the agents to stay in the space that the points are in. I think each point is an “attractor” with a radius (an agent without a heading). IN the presence of an attractor an agent’s speed is reduced by x%. It there are a lot of attractors (n), then the speed is reduced by xn%. Which should make for slower agents in areas of high density. Agents in the presence of attractors also expand their influence horizon, becoming more “attractive”
    • I should be able to draw the area covered by each book in the corpora by looking for the W2V coordinates and plotting them as I read through the (parsed) book. Each book gets a color.