Category Archives: Python

Phil 3.30.20

Today’s study in contrasts: Italy and the US:

COVID-19 projections for the US, from the The Institute for Health Metrics and Evaluation (IHME):

IHME

Work on converting the ETS json file into spreadsheets to evaluate thresholds and labels – spreadsheet conversion is working. done! Now I need to figure out what those ETS parameters do!

Add a short bit to the D20 writeup that explains why linear interpolation isn’t the best option, and why we went with ETS – done

Work with Zach to get the website up today – working

Work this article into the exploit-space writeup: Why Is Cybersecurity Not a Human-Scale Problem Anymore?. Wow, actually, the company (Balbix) that was founded by the author (Gaurav Banga) seems to be doing most of what I was going to write about. Sent Darren a note to see if I should continue

Got a note from ProQuest saying my file needed to have blank pages at the beginning and end of the document. Fixed. And accepted!

  • Congratulations. Your submission, xxxxx has cleared all of the necessary checks and will soon be delivered to ProQuest for publishing.

Ok, back to Docker and building an InfluxDB image. Wow, that seems like a lifetime ago I was doing this

  • To save a custom image, create the container from a base image and then docker save image_name > image_name.tar. This puts it wherever you run the command in the system, Linux or Windows

#COVID-19 meeting at 1:30 today – proposal’s in. We have twitter data from January

SDaaS meeting at 4:00 today – postponed

Phil 3.28.20

From today’s spreadsheet: countries_2020-03-28_07-38

US_3.28_2020

Italy_3.28_2020

NY Times is starting to use rates as well Some U.S. Cities Could Have Coronavirus Outbreaks Worse Than Wuhan’s

Interesting chat as an expert(?) on developing code in the future

Working on the ssh transfer in code using paramiko. This seems to be a good one.

It works!

import paramiko

filename = "C:/Development/Sandboxes/DaysToZero/data/external/countries_2020-03-28_07-38.xlsx"
remote_dir = "/home/some_place.com/d20/countries_2020-03-28_07-38.xlsx"
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect('ssh.some_place.com', username='some_login', password='some_password')
ftp_client = client.open_sftp()
#l = ftp_client.listdir()
#print(l)
ftp_client.put(filename, remote_dir)
ftp_client.close()
client.close()

I should try to put all the pieces together, but I am just done, and am stress-scrolling through Twitter, which really doesn’t help. Getting away from the computer for a while

Phil 3.27.20

Working with Zach and Aaron on the app. I think we’ll have something by this weekend

  • Added a starting zero on the regression
  • Added the regression to the json file, and posted to see if Zach can reach
  • Set up the hooks for export to excel workbook, with one tab per active country. I’ll work on that later today – done! countries

Got clarification from Wayne on some edits. Going to turn those around this morning and try to submit before COB today. Maryland is at 580 confirmed cases as of yesterday. I’d expect to see nearly 800 when they update the site this morning. Sent over all the edits. It’s in!

Maryland_3.26_2020

Yup

Maryland_3.27_2020

ProQuest submission site.

Phil 3.26.20

Updated the proposal

Found an example of diversity injection in the wild: the-syllabus.com. Here’s a story about it from The Correspondent.

Working on the parser today

  • Tried using my ExcelUtils, which are barfing on all the text in the csv
  • Discovered DictReader from the csv library, which works perfectly!
  • Throwing away rows that have less than three data points
  • Collecting rows into countries – done
  • Parsing out dates and values – done
  • Working on getting totals – done
  • Working on calculating rates – done
  • Seeing if I can do a least squares regression to calculate a first pass -done? It doesn’t seem to quite work right on the actual data
  • Aaron added his pieces in and everything seems to be kind of working

Phil 3.25.20

Waking up to the news these days makes me want to stay in bed with the radio off

Working on automating the process of downloading the spreadsheet, parsing out the countries, and calculating daily rates. The goal is to have a website up this weekend so you can see how your country is doing.

Tasks

  • Set up converter class – done
  • download spreadsheet – done
  • parse out countries – working on it
  • Made mockups of the mobile and webpage displays, and refined a few times based on comments

Got notes for Chapter 11 from Wayne. Switching gears and rolling that in. Put in changes for all the items I could read. There are a few still outstanding. I’ll submit tonight if Wayne doesn’t come back for a discussion.

Back to Docker. Need to connect to the WLS. Done!

Meetings

  • AIMS – status for all, plus technichal glitches. We’ll try Teams next time. Vadim has made GREAT progress. We might be able to get a real Yaw Flip soon as well
  • A2P – Infor demo. Meh.

Stampede theory proposal deadline was delayed a couple of days

Phil 3.24.20

Well, I’ve got more predictions using death rates as described in this post. Based on the latest dataset from here (Github), I’ve created a spreadsheet that does a linear (least squares) extrapolation for when the number of new deaths per day drops to zero:

predictions_3.24.20

China is in this group as a sanity check, and as you can see, it’s very near zero, and so is South Korea. Italy, Germany, Spain, Iran, and Indonesia are currently all in the middle, with 2-3 weeks to go if nothing changes. France, the Netherlands, and Switzerland are far enough out that I think these may be low confinance values. The UK seems to be doing terribly. The worst performers are Belgium and the US, whose death rates are still going up, as indicated by the “-1” in the “days till” column.

Here are plots of the data used to calculate the table. Due to the way that excel labels axis, I don’t have dates for the x-axis for all the charts. They all end on the seme date (3/21, the last day in the dataset with the two days I need to calculate rates), but some of them have fewer tata points so that the time before the outbreak doesn’t influence the calculations:

prediction_charts_3.24.20

Working on Hours for misinfo proposal

ASRC

  • Had a good chat with Biruh about InfluxDB running in Docker. Since I’m running the Windows version, things are different enough that I’m going to need to download a linux distro image and run my own version of InfluxDB2 inside that. Which means I need to get smarter on Docker and making a custom image, etc. Got this book. We’ll see how that goes today.

ML Webex meeting

BART is the new BERT!

BART

Phil 3.20.20

Yesterday, I looked at the confirmed cases from this dataset. Today, I thought I’d look at the death rates. These are actually from yesterday. Maybe I’ll update at the end of the day. Everything is in a logarithmic scale because it’s impossible to tell the difference between one crazy exponential rate and another (It may be small-world power law as well, as per here). This is also with China excluded:

I mean, that’s not a good picture. I can see why California went on full non-essential lockdown today – we seem to be on the same trajectory as Iran, assuming the difference in slope is not related to manipulated or poorly-gathered information. South Korea, as per reports, really has appeared to adjust the trajectory. Note though, that the adjusted curve still seems to be exponential, but at a lower value.

My sense right now is that the economic impacts (however those would be charted) are going to look similar, with some kind of time delay that relates to spare capacity, like savings. My sense is that this is going to be bigger than the 2008 financial meltdown, but maybe in some kind of slow motion?

Since I can work from home, and work on government contracts, I’ve been sending money to food banks and similar charities. Hopefully, the best ways to contribute will become clear as the situation settles into the new “normal”. For some more thinking on the economic impact, there’s a short interview with John Ioannidis, who wrote in this article:

One of the bottom lines is that we don’t know how long social distancing measures and lockdowns can be maintained without major consequences to the economy, society, and mental health. Unpredictable evolutions may ensue, including financial crisis, unrest, civil strife, war, and a meltdown of the social fabric. 

“A fiasco in the making? As the coronavirus pandemic takes hold, we are making decisions without reliable data” – StatNews, 3/17/2020

I tend to agree that the world at large is focusing on one, large immediate problem when it needs to be focusing on two large immediate problems. And that’s probably too much to expect.

8:00 – 4:30 ASRC GOES

  • More interesting use of ML to enhance simulations: NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
    • We present a method that achieves state-of-the-art results for synthesizing novel views of complex scenes by optimizing an underlying continuous volumetric scene function using a sparse set of input views. Our algorithm represents a scene using a fully-connected (non-convolutional) deep network, whose input is a single continuous 5D coordinate (spatial location (x,y,z) and viewing direction (θ,ϕ)) and whose output is the volume density and view-dependent emitted radiance at that spatial location. We synthesize views by querying 5D coordinates along camera rays and use classic volume rendering techniques to project the output colors and densities into an image. Because volume rendering is naturally differentiable, the only input required to optimize our representation is a set of images with known camera poses. We describe how to effectively optimize neural radiance fields to render photorealistic novel views of scenes with complicated geometry and appearance, and demonstrate results that outperform prior work on neural rendering and view synthesis. View synthesis results are best viewed as videos, so we urge readers to view our supplementary video for convincing comparisons.
  • Let’s see if we can get InfluxDB working in Docker and start to generate and store data
  • I found a wonderful thing! It looks like you can change the default settings for where applications and their data are saved! Here’s a screenshot of where in the settings:

Phil 3.19.20

I found the data sources for the dashboard in the previous few posts. Yes, everything still looks grim:

So rather than working on my dissertation, I thought I’d take a look at the data for the last 9(!) days in Excel:

This is for the USA. The data is sorted based on the cumulative total of new cases confirmed. If you look at the chart on the right, everything is in line with a pandemic in exponential growth. However, that’s not the whole story.

I like to color code the cells in my spreadsheets because colors help me visualize patterns in the data that I wouldn’t otherwise see. And one of the things that really stands out here is the red rows with one yellow cell on the left. These are all cases where the rate of confirmed new cases dropped to zero overnight. And they’re not near each other. They are in WA, NY, and CA. Is this a measuring problem or is something going right in these places?

Maybe we’ll find out more in the next few days. Now that I know how to get the data, I can do some of my own visualizations that look for outliers. I can also train up some sequence-to-sequence ML models to extrapolate trends.

One more thing. I had heard earlier (Twitter, I think?) that Vietnam was handling the crisis well. And it looks like it was, but things are back to being bad:

Ok, back to work

8:00 – 4:30 ASRC PhD, GOES

  • Working on the process section – done!
  • Working on the TACJ bookend – done! Made a new figure:
  • Submitted to Wayne. Here’s hoping it doesn’t fall through the cracks
  • Neuroevolution of Self-Interpretable Agents
    • Inattentional blindness is the psychological phenomenon that causes one to miss things in plain sight. It is a consequence of the selective attention in perception that lets us remain focused on important parts of our world without distraction from irrelevant details. Motivated by selective attention, we study the properties of artificial agents that perceive the world through the lens of a self-attention bottleneck. By constraining access to only a small fraction of the visual input, we show that their policies are directly interpretable in pixel space. We find neuroevolution ideal for training self-attention architectures for vision-based reinforcement learning tasks, allowing us to incorporate modules that can include discrete, non-differentiable operations which are useful for our agent. We argue that self-attention has similar properties as indirect encoding, in the sense that large implicit weight matrices are generated from a small number of key-query parameters, thus enabling our agent to solve challenging vision based tasks with at least 1000x fewer parameters than existing methods. Since our agent attends to only task-critical visual hints, they are able to generalize to environments where task irrelevant elements are modified while conventional methods fail.

Phil 3.11.20

7:00 – 5:00 ASRC GOES

  • A couple more paragraphs in the revisions
  • Working on the SDaaS paper. Getting close to finished
  • Mission meeting
    • Update status to delay deliverables
    • Still waiting on data
    • Simulation running – demo tomorrow
    • Evaluate against known yaw flip
    • White papers for John D
    • 20 sims so far
    • Need to install Influx, dammit!
    • Paragraph on 400 hrs
    • Paragraph on schedule
  • Sent Erik paragraphs

Phil 3.10.20

7:00 ASRC PhD

  • Good chat with Aaron M last night. I’ve incorporated comments into the new chapter
  • Put together a Saudi #corona doc
  • Meeting with Don today at 1:00
  • ML group in Hampden today

GOES

  • More SDaaS paper. Maybe finish first draft today?

Phil 2.28.20

7:00 – ASRC GOES

AirSim is a simulator for drones, cars and more, built on Unreal Engine (we now also have an experimental Unity release). It is open-source, cross platform, and supports hardware-in-loop with popular flight controllers such as PX4 for physically and visually realistic simulations. It is developed as an Unreal plugin that can simply be dropped into any Unreal environment. Similarly, we have an experimental release for a Unity plugin.

  • Added notes for the dissertation revisions
  • Working on the GVSETS paper – meeting at 3:00. Got everything into SVN and coordinated across machines.
  • Got Deep Learning with Tensorflow2 and Keras to start boning up on before the conference
  • Need to set some time aside for dissertation revisions
  • Keyword search for Shakespeare
  • Still need to fix the race conditions on file write and directory change
  • IRAD meeting. Signed up for Sim as a service, and exploit spaces white paper. Got John to pay for an Overleaf account

Phil 2.26.20

8:00 – 6:00 ASRC GOES

PhD

  • Successfully defended, so I’m a PhD now!
  • Need to handle graduation paperwork by the end of the month

ASRC

  • Add thread code (from here) back into scratches – done
  • Try out the multi-gpu code – it works!
    • But there is a race condition for the writing of the best and eval
    • Trying to create a smaller test case to break things and work out a fix
    • found a nice lorem ipsum package
  • Start writing up two pager for proposal
  • Meeting with John D and T about APG workshop paper. Sent T a bunch of nores later
  • Mission Meeting
    • Went over VPN, and chatted with Vadim, who’s still having joint constraint problems

Phil 2.19.20

7:00 – 8:00 ASRC GOES

disinfoOps
  • Defense practice and tweaking
  • Continue setting up workstation
    • Java – done
    • Python – done
      • Pandas3d
      • Panda
      • Scikit-learn
      • TF 2.0
      • etc
    • TortoiseSVN – done
    • WinSCP – done
    • PuTTY – done
    • XAMPP – done
    • gVIM – done
    • MikTex – done
    • TexStudio – done
    • Adobe Creative Cloud – done
      • Acrobat- done
      • Illustrator- done
      • Photoshop – done
    • Intellij
    • Office- done
    • Project
    • Chrome- done
    • FF
    • GitHub desktop
    • Set up non-admin user
  • Mission Drive meetings

Phil 2.12.20

7:00 – 8:00pm ASRC PhD, GOES

  • Create figures that show an agent version of the dungeon
  • Replicate the methods and detailed methods of the cartography slides
  • Text for each group by room can be compared by the rank difference between them and the overall. Put that in a spreadsheet, plot and maybe determine the DTW value?
    • Add the sim version of the dungeon and the rank comparison to the dissertation
  • Put all ethics on one slide – done
  • Swapped out power supply, but now the box won’t start. Dropped off to get repaired
  • Corporate happy hour

Phil 1.17.20

An ant colony has memories that its individual members don’t have

  • Like a brain, an ant colony operates without central control. Each is a set of interacting individuals, either neurons or ants, using simple chemical interactions that in the aggregate generate their behaviour. People use their brains to remember. Can ant colonies do that? 

7:00 – ASRC

  •  Dissertation
    • More edits
    • Changed all the overviews so that they also reference the section by name. It reads better now, I think
    • Meeting with Thom
  • GPT-2 Agents
  • GSAW Slide deck