Monthly Archives: March 2018

Phil 3.30.18

TF Dev Sumit

Highlights blog post from the TF product manager

Keynote

  • Connecterra tracking cows
  • Google is an AI – first company. All products are being influenced. TF is the dogfood that everyone is eating at google.

Rajat Monga

  • Last year has been focussed on making TF easy to use
  • 11 million downloads
  • blog.tensorflow.org
  • youtube.com/tensorflow
  • tensorflow.org/ub
  • tf.keras – full implementation.
  • Premade estimators
  • three line training from reading to model? What data formats?
  • Swift and tensorflow.js

Megan

  • Real-world data and time-to-accuracy
  • Fast version is the pretty version
  • TensorflowLite is 300% speedup in inference? Just on mobile(?)
  • Training speedup is about 300% – 400% anually
  • Cloud TPUs are available in V2. 180 TF computation
  • github.com/tensorflow/tpu
  • ResNet-50 on Cloud TPU in < 15

Jeff Dean

  • Grand Engineering challenges as a list of  ML goals
  • Engineer the tools for scientific discovery
  • AutoML – Hyperparameter tuning
  • Less expertise (What about data cleaning?)
    • Neural architecture search
    • Cloud Automl for computer vision (for now – more later)
  • Retinal data is being improved as the data labeling improves. The trained human trains the system proportionally
  • Completely new, novel scientific discoveries – machine scan explore horizons in different ways from humans
  • Single shot detector

Derrek Murray @mrry (tf.data)

  • Core TF team
  • tf.data  –
  • Fast, Flexible, and Easy to use
    • ETL for TF
    • tensorflow.org/performance/datasets_performance
    • Dataset tf.SparseTensor
    • Dataset.from_generator – generates graphs from numpy arrays
    • for batch in dataset: train_model(batch)
    • 1.8 will read in CSV
    • tf.contrib.data.make_batched_features_dataset
    • tf.contrib.data.make_csv_dataset()
    • Figures out types from column names

Alexandre Passos (Eager Execution)

  • Eager Execution
  • Automatic differentiation
  • Differentiation of graphs and code <- what does this mean?
  • Quick iterations without building graphs
  • Deep inspection of running models
  • Dynamic models with complex control flows
  • tf.enable_eager_execution()
  • immediately run the tf code that can then be conditional
  • w = tfe.variables([[1.0]])
  • tape to record actions, so it’s possible to evaluate a variety of approaches as functions
  • eager supports debugging!!!
  • And profilable…
  • Google collaboratory for Jupyter
  • Customizing gradient, clipping to keep from exploding, etc
  • tf variables are just python objects.
  • tfe.metrics
  • Object oriented savings of TF models Kind of like pickle, in that associated variables are saved as well
  • Supports component reuse?
  • Single GPU is competitive in speed
  • Interacting with graphs: Call into graphs Also call into eager from a graph
  • Use tf.keras.layers, tf.keras.Model, tf.contribs.summary, tfe.metrics, and object-based saving
  • Recursive RNNs work well in this
  • Live demo goo.gl/eRpP8j
  • getting started guide tensorflow.org/programmers_guide/eager
  • example models goo.gl/RTHJa5

Daniel Smilkov (@dsmilkov) Nikhl Thorat (@nsthorat)

  • In-Browser ML (No drivers, no installs)
  • Interactive
  • Browsers have access to sensors
  • Data stays on the client (preprocessing stage)
  • Allows inference and training entirely in the browser
  • Tensorflow.js
    • Author models directly in the browser
    • import pre-trained models for inference
    • re-train imported models (with private data)
    • Layers API, (Eager) Ops API
    • Can port keras or TF morel
  • Can continue to train a model that is downloaded from the website
  • This is really nice for accessibility
  • js.tensorflow.org
  • github.com/tensorflow/tfjs
  • Mailing list: goo.gl/drqpT5

Brennen Saeta

  • Performance optimization
  • Need to be able to increase performance exponentially to be able to train better
  • tf.data is the way to load data
  • Tensorboard profiling tools
  • Trace viewer within Tensorboard
  • Map functions seem to take a long time?
  • dataset.map(Parser_fn, num_parallel_calls = 64)) <- multithreading
  • Software pipelining
  • Distributed datasets are becoming critical. They will not fit on a single instance
  • Accelerators work in a variety of ways, so optimizing is hardware dependent For example, lower precision can be much faster
  • bfloat16 brain floating point format. Better for vanishing and exploding gradients
  • Systolic processors load the hardware matrix while it’s multiplying, since you start at the upper left corner…
  • Hardware is becoming harder and harder to do apples-to apples. You need to measure end-to-end on your own workloads. As a proxy, Stanford’s DAWNBench
  • Two frameworks XLA nd Graph

Mustafa Ispir (tf.estimator, high level modules for experiments and scaling)

  • estimators fill in the model, based on Google experiences
  • define as an ml problem
  • pre made estimators
  • reasonable defaults
  • feature columns – bucketing, embedding, etc
  • estimator = model_to_estimator
  • image = hum.image_embedding_column(…)
  • supports scaling
  • export to production
  • estimator.export_savemodel()
  • Feature columns (from csv, etc) intro, goo.gl/nMEPBy
  • Estimators documentation, custom estimators
  • Wide-n-deep (goo.gl/l1cL3N from 2017)
  • Estimators and Keras (goo.gl/ito9LE Effective TensorFlow for Non-Experts)

Igor Sapirkin

  • distributed tensorflow
  • estimator is TFs highest level of abstraction in the API google recommends using the highest level of abstraction you can be effective in
  • Justine debugging with Tensorflow Debugger
  • plugins are how you add features
  • embedding projector with interactive label editing

Sarah Sirajuddin, Andrew Selle (TensorFlow Lite) On-device ML

  • TF Lite interpreter is only 75 kilobytes!
  • Would be useful as a biometric anonymizer for trustworthy anonymous citizen journalism. Maybe even adversarial recognition
  • Introduction to TensorFlow Lite → https://goo.gl/8GsJVL
  • Take a look at this article “Using TensorFlow Lite on Android” → https://goo.gl/J1ZDqm

Vijay Vasudevan AutoML @spezzer

  • Theory lags practice in valuable discipline
  • Iteration using human input
  • Design your code to be tunable at all levels
  • Submit your idea to an idea bank

Ian Langmore

  • Nuclear Fusion
  • TF for math, not ML

Cory McLain

  • Genomics
  • Would this be useful for genetic algorithms as well?

Ed Wilder-James

  • Open source TF community
  • Developers mailing list developers@tensorflow.org
  • tensorflow.org/community
  • SIGs SIGBuild, other coming up
  • SIG Tensorboard <- this

Chris Lattner

  • Improved usability of TF
  • 2 approaches, Graph and Eager
  • Compiler analysis?
  • Swift language support as a better option than Python?
  • Richard Wei
  • Did not actually see the compilation process with error messages?

TensorFlow Hub Andrew Gasparovic and Jeremiah Harmsen

  • Version control for ML
  • Reusable module within the hub. Less than a model, but shareable
  • Retrainable and backpropagateable
  • Re-use the architecture and trained weights (And save, many, many, many hours in training)
  • tensorflow.org/hub
  • module = hub.Module(…., trainable = true)
  • Pretrained and ready to use for classification
  • Packages the graph and the data
  • Universal Sentence Encodings semantic similarity, etc. Very little training data
  • Lower the learning rate so that you don’t ruin the existing rates
  • tfhub.dev
  • modules are immutable
  • Colab notebooks
  • use #tfhub when modules are completed
  • Try out the end-to-end example on GitHub → https://goo.gl/4DBvX7

TF Extensions Clemens Mewald and Raz Mathias

  • TFX is developed to support lifecycle from data gathering to production
  • Transform: Develop training model and serving model during development
  • Model takes a raw data model as the request. The transform is being done in the graph
  • RESTful API
  • Model Analysis:
  • ml-fairness.com – ROC curve for every group of users
  • github.com/tensorflow/transform

Project Magenta (Sherol Chen)

People:

  • Suharsh Sivakumar – Google
  • Billy Lamberta (documentation?) Google
  • Ashay Agrawal Google
  • Rajesh Anantharaman Cray
  • Amanda Casari Concur Labs
  • Gary Engler Elemental Path
  • Keith J Bennett (bennett@bennettresearchtech.com – ask about rover decision transcripts)
  • Sandeep N. Gupta (sandeepngupta@google.com – ask about integration of latent variables into TF usage as a way of understanding the space better)
  • Charlie Costello (charlie.costello@cloudminds.com – human robot interaction communities)
  • Kevin A. Shaw (kevin@algoint.com data from elderly to infer condition)

 

Phil 3.28.18

7:00 – 5:00 ASRC MKT

    • Aaron found this hyperparameter optimization service: Sigopt
      • Improve ML models 100x faster
      • SigOpt’s API tunes your model’s parameters through state-of-the-art Bayesian optimization.
      • Exponentially faster and more accurate than grid search. Faster, more stable, and easier to use than open source solutions.
      • Extracts additional revenue and performance left on the table by conventional tuning.
    • A Strategy for Ranking Optimization Methods using Multiple Criteria
      • An important component of a suitably automated machine learning process is the automation of the model selection which often contains some optimal selection of hyperparameters. The hyperparameter optimization process is often conducted with a black-box tool, but, because different tools may perform better in different circumstances, automating the machine learning workflow might involve choosing the appropriate optimization method for a given situation. This paper proposes a mechanism for comparing the performance of multiple optimization methods for multiple performance metrics across a range of optimization problems. Using nonparametric statistical tests to convert the metrics recorded for each problem into a partial ranking of optimization methods, results from each problem are then amalgamated through a voting mechanism to generate a final score for each optimization method. Mathematical analysis is provided to motivate decisions within this strategy, and sample results are provided to demonstrate the impact of certain ranking decisions
    • World Models: Can agents learn inside of their own dreams?
      • We explore building generative neural network models of popular reinforcement learning environments[1]. Our world model can be trained quickly in an unsupervised manner to learn a compressed spatial and temporal representation of the environment. By using features extracted from the world model as inputs to an agent, we can train a very compact and simple policy that can solve the required task. We can even train our agent entirely inside of its own hallucinated dream generated by its world model, and transfer this policy back into the actual environment.
    • Tweaked the SingleNeuron spreadsheet
    • This came up again: A new optimizer using particle swarm theory (1995)
      • The optimization of nonlinear functions using particle swarm methodology is described. Implementations of two paradigms are discussed and compared, including a recently developed locally oriented paradigm. Benchmark testing of both paradigms is described, and applications, including neural network training and robot task learning, are proposed. Relationships between particle swarm optimization and both artificial life and evolutionary computation are reviewed.
      • New: Particle swarm optimization for hyper-parameter selection in deep neural networks
    • Working with the CIFAR10 data now. Tradeoff between filters and epochs:
      NB_EPOCH = 10
      NUM_FIRST_FILTERS = int(32/2)
      NUM_MIDDLE_FILTERS = int(64/2)
      OUTPUT_NEURONS = int(512/2)
      Test score: 0.8670728429794311
      Test accuracy: 0.6972
      Elapsed time =  565.9446044602014
      
      NB_EPOCH = 5
      NUM_FIRST_FILTERS = int(32/1)
      NUM_MIDDLE_FILTERS = int(64/1)
      OUTPUT_NEURONS = int(512/1)
      Test score: 0.8821897733688354
      Test accuracy: 0.6849
      Elapsed time =  514.1915690121759
      
      NB_EPOCH = 10
      NUM_FIRST_FILTERS = int(32/1)
      NUM_MIDDLE_FILTERS = int(64/1)
      OUTPUT_NEURONS = int(512/1)
      Test score: 0.7007060846328735
      Test accuracy: 0.765
      Elapsed time =  1017.0974014300725
      
      Augmented imagery
      NB_EPOCH = 10
      NUM_FIRST_FILTERS = int(32/1)
      NUM_MIDDLE_FILTERS = int(64/1)
      OUTPUT_NEURONS = int(512/1)
      Test score: 0.7243581249237061
      Test accuracy: 0.7514
      Elapsed time =  1145.673343808471
      
    • And yet, something is clearly wrong: wrongPNG
    • Maybe try this version? samyzaf.com/ML/cifar10/cifar10.html

 

Phil 3.27.18

7:00 – 6:00 ASRC MKT

  •  
  • Continuing with Keras
    • The training process can be stopped when a metric has stopped improving by using an appropriate callback:
      keras.callbacks.EarlyStopping(monitor='val_loss', min_delta=0, patience=0, verbose=0, mode='auto')
    • How to download and install quiver
    • Tried to get Tensorboard working, but it doesn’t connect to the data right?
    • Spent several hours building a neuron that learns in Excel. I’m very happy with it. What?! SingleNeuron
  • This is a really interesting thread. Stonekettle provoked a response that can be measured for variance, and also for the people (and bots?) who participate.
  • Listening to the World Affairs Council on The End of Authority, about social influence and misinformation
    • With so many forces undermining democratic institutions worldwide, we wanted a chance to take a step back and provide some perspective. Russian interference in elections here and in Europe, the rise in fake news and a decline in citizen trust worldwide all pose a danger. In this first of a three-part series, we focus on the global erosion of trust. Jennifer Kavanagh, political scientist at the RAND Corporation and co-author of “Truth Decay”, and Tom Nichols, professor at the US Naval War college and author of “The Death of Expertise,” are in conversation with Ray Suarez, former chief national correspondent for PBS NewsHour.
  • Science maps for kids
    • Dominic Walliman has created science infographics and animated videos that explore how the fields of biology, chemistry, computer science, physics, and mathematics relate.
  • The More you Know (Wikipedia) might serve as a template for diversity injection
  • A list of the things that Google knows about you via Twitter
  • Collective movement ecology
    • The collective movement of animals is one of the great wonders of the natural world. Researchers and naturalists alike have long been fascinated by the coordinated movements of vast fish schools, bird flocks, insect swarms, ungulate herds and other animal groups that contain large numbers of individuals that move in a highly coordinated fashion ([1], figure 1). Vividly worded descriptions of the behaviour of animal groups feature prominently at the start of journal articles, book chapters and popular science reports that deal with the field of collective animal behaviour. These descriptions reflect the wide appeal of collective movement that leads us to the proximate question of how collective movement operates, and the ultimate question of why it occurs (sensu[2]). Collective animal behaviour researchers, in collaboration with physicists, computer scientists and engineers, have often focused on mechanistic questions [37] (see [8] for an early review). This interdisciplinary approach has enabled the field to make enormous progress and revealed fundamental insights into the mechanistic basis of many natural collective movement phenomena, from locust ‘marching bands’ [9] through starling murmurations [10,11].
  • Starting to read Influence of augmented humans in online interactions during voting events
    • Massimo Stella (Scholar)
    • Marco Cristoforetti (Scholar)
    • Marco Cristoforetti (Scholar)
    • Abstract: Overwhelming empirical evidence has shown that online social dynamics mirrors real-world events. Hence, understanding the mechanisms leading to social contagion in online ecosystems is fundamental for predicting, and even manouvering, human behavior. It has been shown that one of such mechanisms is based on fabricating armies of automated agents that are known as social bots. Using the recent Italian elections as an emblematic case study, here we provide evidence for the existence of a special class of highly influential users, that we name “augmented humans”. They exploit bots for enhancing both their visibility and influence, generating deep information cascades to the same extent of news media and other broadcasters. Augmented humans uniformly infiltrate across the full range of identified clusters of accounts, the latter reflecting political parties and their electoral ranks.
    • Bruter and Harrison [19] shift the focus on the psychological in uence that electoral arrangements exert on voters by altering their emotions and behavior. The investigation of voting from a cognitive perspective leads to the concept of electoral ergonomics: Understanding optimal ways in which voters emotionally cope with voting decisions and outcomes leads to a better prediction of the elections.
    • Most of the Twitter interactions are from humans to bots (46%); Humans tend to interact with bots in 56% of mentions, 41% of replies and 43% of retweets. Bots interact with humans roughly in 4% of the interactions, independently on interaction type. This indicates that bots play a passive role in the network but are rather highly mentioned/replied/retweeted by humans.
    • bots’ locations are distributed worldwide and they are present in areas where no human users are geo-localized such as Morocco.
    • Since the number of social interactions (i.e., the degree) of a given user is an important estimator of the in uence of user itself in online social networks [17, 22], we consider a null model fixing users’ degree while randomizing their connections, also known as configuration model [23, 24].
    • During the whole period, bot bot interactions are more likely than random (Δ > 0), indicating that bots tend to interact more with other bots rather than with humans (Δ < 0) during Italian elections. Since interactions often encode the spread of a given content online [16], the positive assortativity highlights that bots share contents mainly with each other and hence can resonate with the same content, be it news or spam.

Phil 3.26.18

But this occasional timidity is characteristic of almost all herding creatures. Though banding together in tens of thousands, the lion-maned buffaloes of the West have fled before a solitary horseman. Witness, too, all human beings, how when herded together in the sheepfold of a theatre’s pit, they will, at the slightest alarm of fire, rush helter-skelter for the outlets, crowding, trampling, jamming, and remorselessly dashing each other to death. Best, therefore, withhold any amazement at the strangely gallied whales before us, for there is no folly of the beasts of the earth which is not infinitely outdone by the madness of men.

—-Moby Dick, The Grand Armada

8:30 – 4:30 ASRC MKT

  • Finished BIC and put the notes on Phlog
  • Exposure to Opposing Views can Increase Political Polarization: Evidence from a Large-Scale Field Experiment on Social Media
    • There is mounting concern that social media sites contribute to political polarization by creating “echo chambers” that insulate people from opposing views about current events. We surveyed a large sample of Democrats and Republicans who visit Twitter at least three times each week about a range of social policy issues. One week later, we randomly assigned respondents to a treatment condition in which they were offered financial incentives to follow a Twitter bot for one month that exposed them to messages produced by elected officials, organizations, and other opinion leaders with opposing political ideologies. Respondents were re-surveyed at the end of the month to measure the effect of this treatment, and at regular intervals throughout the study period to monitor treatment compliance. We find that Republicans who followed a liberal Twitter bot became substantially more conservative post-treatment, and Democrats who followed a conservative Twitter bot became slightly more liberal post-treatment. These findings have important implications for the interdisciplinary literature on political polarization as well as the emerging field of computational social science.
  • More Keras
  • hyperopt is a Python library for optimizing over awkward search spaces with real-valued, discrete, and conditional dimensions.
  • One Hidden Layer:
    training label size =  60000
    test label size =  10000
    60000 train samples
    10000 test samples
    _________________________________________________________________
    Layer (type)                 Output Shape              Param #   
    =================================================================
    dense_1 (Dense)              (None, 128)               100480    
    _________________________________________________________________
    activation_1 (Activation)    (None, 128)               0         
    _________________________________________________________________
    dense_2 (Dense)              (None, 128)               16512     
    _________________________________________________________________
    activation_2 (Activation)    (None, 128)               0         
    _________________________________________________________________
    dense_3 (Dense)              (None, 128)               16512     
    _________________________________________________________________
    activation_3 (Activation)    (None, 128)               0         
    _________________________________________________________________
    dense_4 (Dense)              (None, 10)                1290      
    _________________________________________________________________
    activation_4 (Activation)    (None, 10)                0         
    =================================================================
    Total params: 134,794
    Trainable params: 134,794
    Non-trainable params: 0
  • Two hidden layers:
    training label size =  60000
    test label size =  10000
    60000 train samples
    10000 test samples
    _________________________________________________________________
    Layer (type)                 Output Shape              Param #   
    =================================================================
    dense_1 (Dense)              (None, 128)               100480    
    _________________________________________________________________
    activation_1 (Activation)    (None, 128)               0         
    _________________________________________________________________
    dense_2 (Dense)              (None, 128)               16512     
    _________________________________________________________________
    activation_2 (Activation)    (None, 128)               0         
    _________________________________________________________________
    dense_3 (Dense)              (None, 128)               16512     
    _________________________________________________________________
    activation_3 (Activation)    (None, 128)               0         
    _________________________________________________________________
    dense_4 (Dense)              (None, 10)                1290      
    _________________________________________________________________
    activation_4 (Activation)    (None, 10)                0         
    =================================================================
    Total params: 134,794
    Trainable params: 134,794
    Non-trainable params: 0

Phil 3.23.18

7:00 – 5:00 ASRC MKT

  • Influence of augmented humans in online interactions during voting events
    • Overwhelming empirical evidence has shown that online social dynamics mirrors real-world events. Hence, understanding the mechanisms leading to social contagion in online ecosystems is fundamental for predicting, and even manouvering, human behavior. It has been shown that one of such mechanisms is based on fabricating armies of automated agents that are known as social bots. Using the recent Italian elections as an emblematic case study, here we provide evidence for the existence of a special class of highly influential users, that we name “augmented humans”. They exploit bots for enhancing both their visibility and influence, generating deep information cascades to the same extent of news media and other broadcasters. Augmented humans uniformly infiltrate across the full range of identified clusters of accounts, the latter reflecting political parties and their electoral ranks.
  • Reddit and the Struggle to Detoxify the Internet
    • “Does free speech mean literally anyone can say anything at any time?” Tidwell continued. “Or is it actually more conducive to the free exchange of ideas if we create a platform where women and people of color can say what they want without thousands of people screaming, ‘Fuck you, light yourself on fire, I know where you live’? If your entire answer to that very difficult question is ‘Free speech,’ then, I’m sorry, that tells me that you’re not really paying attention.”
    • This is the difference between discussion and stampede. That seems like it should be statistically detectable.
  • Metabolic Costs of Feeding Predictively Alter the Spatial Distribution of Individuals in Fish Schools
    • We examined individual positioning in groups of swimming fish after feeding
    • Fish that ate most subsequently shifted to more posterior positions within groups
    • Shifts in position were related to the remaining aerobic scope after feeding
    • Feeding-related constraints could affect leadership and group functioning
    • I wonder if this also keeps the hungrier fish at the front, increasing the effectiveness of gradient detections
  • Listening to Invisibilia: The Pattern Problem. There is a section on using machine learning for sociology. Listening to get the author of the ML and Sociology study. Predictions were not accurate. Not published?
  • The Coming Information Totalitarianism in China
    • The real-name system has two purposes. One is the chilling effect, and it works very well on average netizens but not so much on activists. The other and the main purpose is to be able to locate activists and eliminate them from certain information/opinion platforms, in the same way that opinions of dissident intellectuals are completely eradicated from the traditional media.
  • More BIC – Done! Need to assemble notes
    • It is a central component of resolute choice, as presented by McClennen, that (unless new information becomes available) later transient agents recognise the authority of plans made by earlier agents. Being resolute just is recognising that authority (although McClennen’ s arguments for the rationality and psychological feasibility of resoluteness apply only in cases in which the earlier agents’ plans further the common ends of earlier and later agents). This feature of resolute choice is similar to Bacharach’ s analysis of direction, explained in section 5. If the relationship between transient agents is modelled as a sequential game, resolute choice can be thought of as a form of direction, in which the first transient agent plays the role of director; the plan chosen by that agent can be thought of as a message sent by the director to the other agents. To the extent that each later agent is confident that this plan is in the best interests of the continuing person, that confidence derives from the belief that the first agent identified with the person and that she was sufficiently rational and informed to judge which sequence of actions would best serve the person’s objectives. (pg 197)
  • Meeting with celer scientific
  • More TF with Keras. Really good progress

Phil 3.22.18

7:00 – 5:00 ASRC MKT

  • The ONR proposal is in!
  • Promoted the Odyssey thoughts to Phlog
  • More BIC
    • The problem posed by Heads and Tails is not that the players lack a common understanding of salience; it is that game theory lacks an adequate explanation of how salience affects the decisions of rational players. All we gain by adding preplay communication to the model is the realisation that game theory also lacks an adequate explanation of how costless messages affect the decisions of rational players. (pg 180)
  • More TF crash course
    • Invert the ratio for train and validation
    • Add the check against test data
  • Get started on LSTM w/Aaron?

     

Phil 3.21.18

7:00 – 6:00 ASRC MKT, with some breaks for shovelling

  • First day of spring. Snow on the ground and more in the forecast.
  • I’ve been thinking of ways to describe the differences between information visualizations with respect to maps. Here’s The Odyssey as a geographic map:
  • Odysseus'_Journey
  • The first thing that I notice is just how far Odysseus travelled. That’s about half of the Mediterranean! I thought that it all happened close to Greece. Maps afford this understanding. They are diagrams that support the plotting of trajectories.Which brings me to the point that we lose a lot of information about relationships in narratives. That’s not their point. This doesn’t mean that non-map diagrams don’t help sometimes. Here’s a chart of the characters and their relationships in the Odyssey:
  •  odyssey
  • There is a lot of information here that is helpful. And this I do remember and understood from reading the book. Stories are good about depicting how people interact. But though this chart shows relationships, the layout does not really support navigation. For example, the gods are all related by blood and can pretty much contact each other at will. This chart would have Poseidon accessing Aeolus and  Circe by going through Odysseus.  So this chart is not a map.
  • Lastly, is the relationship that comes at us through search. Because the implicit geographic information about the Odyssey is not specifically in the text, a search request within the corpora cannot produce a result that lets us integrate it
  • OdysseySearchJourney
  • There is a lot of ambiguity in this result, which is similar to other searches that I tried which included travel, sail and other descriptive terms. This doesn’t mean that it’s bad, it just shows how search does not handle context well. It’s not designed to. It’s designed around precision and recall. Context requires a deeper understanding about meaning, and even such recent innovations such as sharded views with cards, single answers, and pro/con results only skim the surface of providing situationally appropriate, meaningful context.
  • Ok, back to tensorflow. Need to update my computer first….
    • Updating python to 64-bit – done
    • Installing Visual Studio – sloooooooooooooooooooooowwwwwwwwwwwww. Done
    • Updating graphics drivers – done
    • Updating tensorflow
    • Updating numpy with intel math
  • At the Validation section in the TF crash course. Good progress. drilling down into all the parts of python that I’ve forgotten. And I got to make a pretty picture: TF_crash_course1

Phil 3.20.18

7:00 – 3:00 ASRC MKT

  • What (satirical) denying a map looks like. Nice application of believability.
  • Need to make a folder with all the CUDA bits and Visual Studio to get all my boxes working with GPU tensorflow
  • Assemble one-page resume for ONR proposal
  • More BIC
    • The fundamental principle of this morality is that what each agent ought to do is to co-operate, with whoever else is co-operating, in the production of the best consequences possible given the behaviour of non-co-operators’ (Regan 1980, p. 124). (pg 167)
    • Ordered On Social Facts
      • Are social groups real in any sense that is independent of the thoughts, actions, and beliefs of the individuals making up the group? Using methods of philosophy to examine such longstanding sociological questions, Margaret Gilbert gives a general characterization of the core phenomena at issue in the domain of human social life.

Back to the TF crash course

    • Had to update my numpy from Christoph Gohlke’s Unofficial Windows Binaries for Python Extension Packages. It’s wonderful, but WHY???
    • Also had this problem updating numpy
      D:\installed>pip3 install "numpy-1.14.2+mkl-cp37-cp37m-win_amd64.whl"
      numpy-1.14.2+mkl-cp37-cp37m-win_amd64.whl is not a supported wheel on this platform.
    • That was solved by installing numpy-1.14.2+mkl-cp36-cp36m-win_amd64.whl. Why cp36 works and cp 37 doesn’t is beyond me.
    • Discussions with Aaron about tasks between now and the TFDS
    • Left early due to snow

 

Phil 3.19.18

7:00 – 5:00 ASRC MKT

    • The Perfect Selfishness of Mapping Apps
      • Apps like Waze, Google Maps, and Apple Maps may make traffic conditions worse in some areas, new research suggests.
    • Cambridge Social Decision-Making Lab
    • More BIC
      • Schema 3: Team reasoning (from a group viewpoint) pg 153
        • We are the members of S.
        • Each of us identifies with S.
        • Each of us wants the value of U to be maximized.
        • A uniquely maximizes U.
        • Each of us should choose her component of A.
      • Schema 4: Team reasoning (from an individual viewpoint) pg 159
        • I am a member of S.
        • It is common knowledge in S that each member of S identifies
          with S.
        • It is common knowledge in S that each member of S wants the
          value of U to be maximized.
        • It is common knowledge in S that A uniquely maximizes U.
        • I should choose my component of A.
      • Schema 7: Basic team reasoning pg 161
        • I am a member of S.
        • It is common knowledge in S that each member of S identifies
          with S.
        • It is common knowledge in S that each member of S wants the
          value of U to be maximized.
        • It is common knowledge in S that each member of S knows his
          component of the profile that uniquely maximizes U.
        • I should choose my component of the profile that uniquely
          maximizes U.

          • Bacharach notes to himself the ‘hunch’ that this schema is ‘the basic rational capacity’ which leads to high in Hi-Lo, and that it ‘seems to be indispensable if a group is ever to choose the best plan in the most ordinary organizational circumstances’. Notice that Schema 7 does not require that the individual who uses it know everyone’s component of the profile that maximizes U.
      • His hypothesis is that group identification is an individual’s psychological response to the stimulus of a particular decision situation. It is not in itself a group action. (To treat it as a group action would, in Bacharach’ s framework, lead to an infinite regress.) In the theory of circumspect team reasoning, the parameter w is interpreted as a property of a psychological mechanism-the probability that a person who confronts the relevant stimulus will respond by framing the situation as a problem ‘for us’. The idea is that, in coming to frame the situation as a problem ‘for us’, an individual also gains some sense of how likely it is that another individual would frame it in the same way; in this way, the value of w becomes common knowledge among those who use this frame. (Compare the case of the large cube in the game of Large and Small Cubes, discussed in section 4 of the introduction.) Given this model, it seems that the ‘us’ in terms of which the problem is framed must be determined by how the decision situation first appears to each individual. Thus, except in the special case in which w == 1, we must distinguish S (the group with which individuals are liable to identify, given the nature of the decision situation) from T (the set of individuals who in fact identify with S). pg 163
    • Starting with the updates
      C:\WINDOWS\system32>pip3 install --upgrade tensorflow-gpu
      Collecting tensorflow-gpu
        Downloading tensorflow_gpu-1.6.0-cp36-cp36m-win_amd64.whl (85.9MB)
          100% |████████████████████████████████| 85.9MB 17kB/s
      Collecting termcolor>=1.1.0 (from tensorflow-gpu)
        Downloading termcolor-1.1.0.tar.gz
      Collecting absl-py>=0.1.6 (from tensorflow-gpu)
        Downloading absl-py-0.1.11.tar.gz (80kB)
          100% |████████████████████████████████| 81kB 6.1MB/s
      Collecting grpcio>=1.8.6 (from tensorflow-gpu)
        Downloading grpcio-1.10.0-cp36-cp36m-win_amd64.whl (1.3MB)
          100% |████████████████████████████████| 1.3MB 1.1MB/s
      Collecting numpy>=1.13.3 (from tensorflow-gpu)
        Downloading numpy-1.14.2-cp36-none-win_amd64.whl (13.4MB)
          100% |████████████████████████████████| 13.4MB 121kB/s
      Collecting astor>=0.6.0 (from tensorflow-gpu)
        Downloading astor-0.6.2-py2.py3-none-any.whl
      Requirement already up-to-date: six>=1.10.0 in c:\program files\python36\lib\site-packages (from tensorflow-gpu)
      Collecting tensorboard<1.7.0,>=1.6.0 (from tensorflow-gpu)
        Downloading tensorboard-1.6.0-py3-none-any.whl (3.0MB)
          100% |████████████████████████████████| 3.1MB 503kB/s
      Collecting protobuf>=3.4.0 (from tensorflow-gpu)
        Downloading protobuf-3.5.2.post1-cp36-cp36m-win_amd64.whl (958kB)
          100% |████████████████████████████████| 962kB 1.3MB/s
      Collecting gast>=0.2.0 (from tensorflow-gpu)
        Downloading gast-0.2.0.tar.gz
      Requirement already up-to-date: wheel>=0.26 in c:\program files\python36\lib\site-packages (from tensorflow-gpu)
      Requirement already up-to-date: html5lib==0.9999999 in c:\program files\python36\lib\site-packages (from tensorboard<1.7.0,>=1.6.0->tensorflow-gpu)
      Requirement already up-to-date: bleach==1.5.0 in c:\program files\python36\lib\site-packages (from tensorboard<1.7.0,>=1.6.0->tensorflow-gpu)
      Requirement already up-to-date: markdown>=2.6.8 in c:\program files\python36\lib\site-packages (from tensorboard<1.7.0,>=1.6.0->tensorflow-gpu)
      Requirement already up-to-date: werkzeug>=0.11.10 in c:\program files\python36\lib\site-packages (from tensorboard<1.7.0,>=1.6.0->tensorflow-gpu)
      Collecting setuptools (from protobuf>=3.4.0->tensorflow-gpu)
        Downloading setuptools-39.0.1-py2.py3-none-any.whl (569kB)
          100% |████████████████████████████████| 573kB 2.3MB/s
      Building wheels for collected packages: termcolor, absl-py, gast
        Running setup.py bdist_wheel for termcolor ... done
        Stored in directory: C:\Users\philip.feldman\AppData\Local\pip\Cache\wheels\de\f7\bf\1bcac7bf30549e6a4957382e2ecab04c88e513117207067b03
        Running setup.py bdist_wheel for absl-py ... done
        Stored in directory: C:\Users\philip.feldman\AppData\Local\pip\Cache\wheels\3c\0f\0a\6c94612a8c26070755559045612ca3645fea91c11f2148363e
        Running setup.py bdist_wheel for gast ... done
        Stored in directory: C:\Users\philip.feldman\AppData\Local\pip\Cache\wheels\8e\fa\d6\77dd17d18ea23fd7b860e02623d27c1be451521af40dd4a13e
      Successfully built termcolor absl-py gast
      Installing collected packages: termcolor, absl-py, setuptools, protobuf, grpcio, numpy, astor, tensorboard, gast, tensorflow-gpu
        Found existing installation: setuptools 38.4.0
          Uninstalling setuptools-38.4.0:
            Successfully uninstalled setuptools-38.4.0
        Found existing installation: protobuf 3.5.1
          Uninstalling protobuf-3.5.1:
            Successfully uninstalled protobuf-3.5.1
        Found existing installation: numpy 1.13.0+mkl
          Uninstalling numpy-1.13.0+mkl:
            Successfully uninstalled numpy-1.13.0+mkl
        Found existing installation: tensorflow-gpu 1.4.0
          Uninstalling tensorflow-gpu-1.4.0:
            Successfully uninstalled tensorflow-gpu-1.4.0
      Successfully installed absl-py-0.1.11 astor-0.6.2 gast-0.2.0 grpcio-1.10.0 numpy-1.14.2 protobuf-3.5.2.post1 setuptools-39.0.1 tensorboard-1.6.0 tensorflow-gpu-1.6.0 termcolor-1.1.0
    • That caused the following items to break when I tried running “fully_connected.py”
      "C:\Program Files\Python36\python.exe" D:/Development/Sandboxes/TensorflowPlayground/HelloPackage/fully_connected_feed.py
      Traceback (most recent call last):
        File "C:\Program Files\Python36\lib\site-packages\tensorflow\python\platform\self_check.py", line 75, in preload_check
          ctypes.WinDLL(build_info.cudart_dll_name)
        File "C:\Program Files\Python36\lib\ctypes\__init__.py", line 348, in __init__
          self._handle = _dlopen(self._name, mode)
      OSError: [WinError 126] The specified module could not be found
      
      During handling of the above exception, another exception occurred:
      
      Traceback (most recent call last):
        File "D:/Development/Sandboxes/TensorflowPlayground/HelloPackage/fully_connected_feed.py", line 28, in 
          import tensorflow as tf
        File "C:\Program Files\Python36\lib\site-packages\tensorflow\__init__.py", line 24, in 
          from tensorflow.python import *
        File "C:\Program Files\Python36\lib\site-packages\tensorflow\python\__init__.py", line 49, in 
          from tensorflow.python import pywrap_tensorflow
        File "C:\Program Files\Python36\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 30, in 
          self_check.preload_check()
        File "C:\Program Files\Python36\lib\site-packages\tensorflow\python\platform\self_check.py", line 82, in preload_check
          % (build_info.cudart_dll_name, build_info.cuda_version_number))
      ImportError: Could not find 'cudart64_90.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 9.0 from this URL: https://developer.nvidia.com/cuda-toolkit
    • Installing Visual Studio for the DLLs before I install the Cuda parts
    • Downloading cuda_9.0.176_win10.exe from here There are also two patches
    • Next set of errors
      Traceback (most recent call last):
        File "D:/Development/Sandboxes/TensorflowPlayground/HelloPackage/fully_connected_feed.py", line 28, in 
          import tensorflow as tf
        File "C:\Program Files\Python36\lib\site-packages\tensorflow\__init__.py", line 24, in 
          from tensorflow.python import *
        File "C:\Program Files\Python36\lib\site-packages\tensorflow\python\__init__.py", line 49, in 
          from tensorflow.python import pywrap_tensorflow
        File "C:\Program Files\Python36\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 30, in 
          self_check.preload_check()
        File "C:\Program Files\Python36\lib\site-packages\tensorflow\python\platform\self_check.py", line 97, in preload_check
          % (build_info.cudnn_dll_name, build_info.cudnn_version_number))
      ImportError: Could not find 'cudnn64_7.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Note that installing cuDNN is a separate step from installing CUDA, and this DLL is often found in a different directory from the CUDA DLLs. You may install the necessary DLL by downloading cuDNN 7 from this URL: https://developer.nvidia.com/cudnn
      
  • Looking for cudnn64_7.dll here?
  • Aaaand that seems to be working!
  • Tweaked ONR proposal with Aaron. Discovered that there is one page per PI, so we need to make one-page resumes.

 

 

Phil 3.17.18

This came to me as a herding paper title for SASO 2018: This one simple trick can disrupt digital societies. Too much?

First International workshop on Socio-Cognitive Systems

  •  In this workshop we want to explore the interactions between cognitive and social aspects of “socio-cognitive systems” – that is where the social and cognitive aspects are studied together. The workshop connects elements of IJCAI/ECAI, AAMAS and ICML. Of course, modelling these systems in terms of Multi-Agent Systems seems intuitive, but also would require special attention to the social concepts in these MAS. The cognitive abilities of the agents should adapt themselves to the social context and development, which connects this area to machine learning in a social context. 
  • Deadline for submissions: 1st May 2018
  • Notification of acceptance: May/June 2018
  • Camera-ready copy of papers: June 2018
  • Workshop: 14 or 15 July 2018
  • Stockholm, co-located with IJCAI

Symmetric generative methods and t-SNE: a short survey

  • In data visualization, a family of methods is dedicated to the symmetric numerical matrices which contain the distances or similarities between high-dimensional data vectors. The method t-Distributed Stochastic Neighbor Embedding has been recently introduced for data visualization. Leading to competitive nonlinear embeddings which are able to reveal the natural classes, several variants have been developed. For comparison purposes, it is presented the recent generative alternative methods (Glove, probabilistic CA, LSPM, LargeVis, SBM) in the literature for nonlinear embedding via low dimensional positions.

edsu/etudier

  • étudier is a small Python program that uses Selenium and requests-html to drive a non-headless browser to collect a citation graph around a particular Google Scholar citation. The resulting network is written out as a Gephi file and a D3 visualization using networkx.

Phil 3.16.18

7:00 – 4:00 ASRC MKT

    • Umwelt
      • In the semiotic theories of Jakob von Uexküll and Thomas A. Sebeokumwelt (plural: umwelten; from the German Umwelt meaning “environment” or “surroundings”) is the “biological foundations that lie at the very epicenter of the study of both communication and signification in the human [and non-human] animal”.[1] The term is usually translated as “self-centered world”.[2] Uexküll theorised that organisms can have different umwelten, even though they share the same environment. The subject of umwelt and Uexküll’s work is described by Dorion Sagan in an introduction to a collection of translations.[3] The term umwelt, together with companion terms umgebungand innenwelt, have special relevance for cognitive philosophers, roboticists and cyberneticians, since they offer a solution to the conundrum of the infinite regress of the Cartesian Theater.
    • Benjamin Kuipers
      • How Can We Trust a Robot? (video)
        • Advances in artificial intelligence (AI) and robotics have raised concerns about the impact on our society of intelligent robots, unconstrained by morality or ethics
      • Socially-Aware Navigation Using Topological Maps and Social Norm Learning
        • We present socially-aware navigation for an intelligent robot wheelchair in an environment with many pedestrians. The robot learns social norms by observing the behaviors of human pedestrians, interpreting detected biases as social norms, and incorporating those norms into its motion planning. We compare our socially-aware motion planner with a baseline motion planner that produces safe, collision-free motion. The ability of our robot to learn generalizable social norms depends on our use of a topological map abstraction, so that a practical number of observations can allow learning of a social norm applicable in a wide variety of circumstances. We show that the robot can detect biases in observed human behavior that support learning the social norm of driving on the right. Furthermore, we show that when the robot follows these social norms, its behavior influences the behavior of pedestrians around it, increasing their adherence to the same norms. We conjecture that the legibility of the robot’s normative behavior improves human pedestrians’ ability to predict the robot’s future behavior, making them more likely to follow the same norm.
    • Erin’s defense
      • Nice slides!
      • Slide 4 – narrowing from big question to dissertation topic. Nice way to set up framing
      • Intellectual function vs. adaptive behavior
      • Loss of self-determination
      • Maker culture as a way of having your own high-dimensional vector? Does this mean that the maker culture is inherently more exploratory when compared to …?
      • “Frustration is an easy way to end up in off-task behavior”
      • Peer learning as gradient descent?
      • Emic ethnography
      • Pervasive technology in education
      • Turn-taking
      • Antecedent behavior consequence theory
      • Reducing the burden on the educators. Low-level detection and to draw attention to the educator and annotate. Capturing and labeling
      • Helina – bring the conclusions back to the core questions
      • Diversity injection works! Mainstream students gained broader appreciation of students with disability
      • Q: Does it make more sense to focus on potentially charismatic technologies that will include the more difficult outliers even if it requires a breakthrough? Or to make incremental improvements that can improve accessibility to some people with disabilities faster?
      • Boris analytic software

 

Phil 3.15.18

8:30 – 4:30 ASRC MKT

Phil 3.14.18

7:00 – 4:00 ASRC MKT

  • Cannot log into my timesheet
  • Continuing along with TF. Got past the introductions and to the beginning of the coding.
  • Myanmar: UN blames Facebook for spreading hatred of Rohingya (The Guardia)
    • ‘Facebook has now turned into a beast’, says United Nations investigator, calling network a vehicle for ‘acrimony, dissension and conflict’
  • Related to the above (which was pointed out by the author in this tweet)
  • Keynote: Susan Dumais
    • Better Together: An Interdisciplinary Perspective on Information Retreival
    • A solution to plato’s problem – latent semantic indexing
    • The road to LSI
    • LSI paper as dimension reduction Dumas et al 1988,
    • Search and context
      • Ranked list of 10 blue links
      • Need to understand the context in which they occur. Documents are intricately linked
      • Search is doe to accomplish something (picture of 2 people pointing at a chart/map?)
      • Short and long term models of interest (Bennett et al 2012)
      • Stuff I’ve Seen (2003) Becomes LifeBrowser
    • Future directions
      • ML will take over IR for better or worst
      • Moving from a world that indexe strings to a world that indexes things
      • Bing is doing pro/con with questions, state maintained dialog
  • Here and Now: Reality-Based Information Retrieval. [Perspective Paper]
    Wolfgang Büschel, Annett Mitschick and Raimund Dachselt

    • Perspective presentation on AR-style information retreival.
    • Maybe an virtual butler that behaves like an invisible freind?
  • A Study of Immediate Requery Behavior in Search.
    Haotian Zhang, Mustafa Abualsaud and Mark Smucker
  • Exploring Document Retrieval Features Associated with Improved Short- and Long-term Vocabulary Learning Outcomes.
    Rohail Syed and Kevyn Collins-Thompson
  • Switching Languages in Online Searching: A Qualitative Study of Web Users’ Code-Switching Search Behaviors.
    Jieyu Wang and Anita Komlodi
  • A Comparative User Study of Interactive Multilingual Search Interfaces.
    Chenjun Ling, Ben Steichen and Alexander Choulos

Phil 3.13.18

7:00 – 5:00 ASRC MKT

  • Sent T a travel request for the conference. Yeah, it’s about as late as it could be, but I just found out that I hadn’t registered completely…
  • Got Tensorflow running on my laptop. Can’t get Python 2.x warnings to not show. Grrrr.
  • Had to turn off privacy badger to get the TF videos to play. Nicely done
  • Information Fostering – Being Proactive with Information Seeking and Retrieval [Perspective Paper]
    Chirag Shah

    • Understanding topic, task, and intention
    • People are boxed in when looking for information. Difficult to encouraging broad thinking
    • Ryan White – tasks? Cortana?
    • What to do when things go bad:
  • The Role of the Task Topic in Web Search of Different Task Types.
    Daniel Hienert, Matthew Mitsui, Philipp Mayr, Chirag Shah and Nicholas Belkin
  • Juggling with Information Sources, Task Type, and Information Quality
    Yiwei Wang, Shawon Sarkar and Chirag Shah

    • Doing tasks in a study has an odd bias that drives users to non-social information sources. Since the user is not engaged in a “genuine” task, the request of other people isn’t considered as viable.
  • ReQuIK: Facilitating Information Discovery for Children Through Query Suggestions.
    Ion Madrazo, Oghenemaro Anuyah, Nevena Dragovic and Maria Soledad Pera

    • LSTM model + hand-coded heuristics combined deep and wide. LSTM produces 92% accuracy, Hand-rolled 68%, both 94%
    • Wordnet-based similarity
  • Improving exploration of topic hierarchies: comparative testing of simplified Library of Congress Subject Heading structures.
    Jesse David Dinneen, Banafsheh Asadi, Ilja Frissen, Fei Shu and Charles-Antoine Julien

    • Pruning large scale structures to support visualization
    • Browsing complexity calculations
    • Really nice. Dynamically pruned trees, with the technical capability for zooming at a local level
  • Fixation and Confusion – Investigating Eye-tracking Participants’ Exposure to Information in Personas.
    Joni Salminen, Jisun An, Soon-Gyo Jung, Lene Nielsen, Haewoon Kwak and Bernard J. Jansen

    • LDA topic extraction
    • Eyetribe – under $200. Bought by Facebook
    • Attribute similarity as a form of diversity injection
  • “I just scroll through my stuff until I find it or give up”: A Contextual Inquiry of PIM on Private Handheld Devices.
    Amalie Jensen, Caroline Jægerfelt, Sanne Francis, Birger Larsen and Toine Bogers

    • contextual inquiry – good at uncovering tacit interactions
    • Looking at the artifacts of PIM
  • Augmentation of Human Memory: Anticipating Topics that Continue in the Next Meeting
    Seyed Ali Bahrainian and Fabio Crestani

    • Social Interactions Log Analysis System (Bahrainian et. al)
    • Proactive augmentation of memory
    • LDA topic extraction
    • Recency effect could apply to distal ends of a JuryRoom discussion
  • Characterizing Search Behavior in Productivity Software.
    Horatiu Bota, Adam Fourney, Susan Dumais, Tomasz L. Religa and Robert Rounthwaite