Author Archives: pgfeldman

Phil 8.25.16

7:00 – 3:30 ASRC

  • Paper
  • Code
    • Build class(s) that uses some of the CorpusBuilder (or just add to output?) codebase to
    • Access webpages based on xml config file
    • Read in, lemmatize , and build bag-of-words per page (configurable max). Done. Took out DF-ITF code and replaced it with BagOfWords in DocumentStatistics.
    • Write out .arff file that includes the following elements
      • @method (TF-IDF, LSI, BOW)
      • @source (loomings, the carpet bag, the spouter inn, the counterpane)
      • @title (Moby-dick, Tarzan)
      • @author (Herman Melville, Edgar Rice Burroughs)
      • @words (nantucket,harpooneer,queequeg,landlord,euroclydon,bedford,lazarus,passenger,circumstance,civilized,water,thousand,about,awful,slowly,supernatural,reality,sensation,sixteen,awake,explain,savage,strand,curbstone,spouter,summer,northern,blackness,embark,tempestuous,expensive,sailor,purse,ocean,tomahawk,black,night,dream,order,follow,education,broad,stand,after,finish,world,money,where,possible,morning,light)
    • So a line should look something like
      • LSI, chapter-1-loomings, Moby-dick, Herman Melville, 0,0,0,0,0,0,0,5,0,0,7,4,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,3,0,0,0,0,2,0,0,0,5,0,0,3,4,2,0,0,0
      • Updated LabledMatrix2D to generate arff files.

Phil 8.23.16

7:00 – 4:00 ASRC

  • Continuing to read The Sovereign Map. While thinking about  the Twitter expert paper, I thought that maybe there were mapping projects of the Wikipedia, Schema.org or dmoz.org. I found this for Wikipedia.
  • xkcd maps
  • Paper – continued work on fact-checking/crowdsourced data
  • Code
    • Enable slider in fitnessTest – done
    • Enable reading xml config files – done. Also setting the sliders from load
    • Added Dom4j utils to JavaUtils2
    • get started on WEKA – Starting with Emily’s intro. So far so good! Also ran a Naive Bayes classifier on the weather data set for Aaron to compare.

Phil 8.22.16

7:00 – 2:30 ASRC

Phil 8.19.16

7:00 – 3:30 ASRC

  • Wrote up the action items from the discussion with Thom last night. Now that I have the committee’s initial input, I need to write up an email and re-distribute. Done.
  • Had a thought about the initial GP model. In the fitness test, look for beliefs that are more than ATTRACTION_THRESHOLD similar and be more like them. Possibly look for beliefs that are less than REPULSION_THRESHOLD similar and make the anti-belief more like them. If a statement exists in both belief and antibelief, delete the lowest ranked item, or choose randomly.
    • Working through the logic in beliefMain. I’m just *slow* today.
    • Think I got it. Had to write a method ‘rectifyBeliefs’ that goes in BaseBeliefCA and makes sure that beliefs and antibeliefs don’t overlap. And it’s late enough in the day that I don’t want to try it in the full sim.
  • Working through the fact-checking section
  • Submitted ACM, ICA and UMBC reimbursement requests.

Phil 8.18.16

7:00 – 4:30 ASRC

  • Wrote up my recollection of the meetings with Don, Aaron and Shimei
  • Realized that there should be explicit affordances for confirming and avoiding as well as exploring. Added to the strawman mockup.
  • Adding a ‘model feedback’ section after the evaluation criteria for RQs 2, 3 and 4
  • Back to a simple model of GP
  • Starting on livePrint(String) needs a store and clear method. Done. Also added ctrl-click.
  • Need to make a special test case where one belief chases another. Reworking BeliefMain to support this. Done. The algorithm is good (hacked right now to transform quickly)
  • Meeting with Thom – he wants to see the contributions fleshed out. We discussed the larger frame of the contribution of a self-organizing trustworthy journalism, based on the idea that many people doing small implicit fact checking as a function of their information browsing patterns can be (as?) effective as a few people doing deliberate in-depth fact checking, and with the ability to scale.

Phil 8.17.16

7:00 – 7:00 ASRC

  • Working on the fact checking section
  • Trying out different approaches to the polarization algorithm – still not quite right. I think I need onscreen printing to debug
  • Meeting with Don and Aaron. They’d like a more sophisticated belief calculation that ages off old statements as a way of avoiding regression to the mean. Also, triangulation on group polarization in different contexts. I’m suggesting sexual selection, which I’m using already, and stock bubbles. It does look like these systems have been explored extensively. The following cover a pretty good range of years (1989 – 2016)
  • Meeting with Shimei. She’d like a better description of how the results of experiments are used to adjust the model.
    • I think this will mean that there may be several models in the end.
      • Models of information browsing based on term collections generated in/between search sessions
      • Models of GUI use using the tool. Since the idea behind the GUI is to provide affordances that support explorers, confirmers and avoiders, using those sections that support those behaviors should provide good insight and an addition to the model that is language independent. I think this may also address Aaron’s IDE question. Though, to have the a group polarization effect, there needs to be a way of supporting a non-verbal conversation. Maybe the way the page gets set up is dynamically configured by the group use?

Phil 8.16.16

7:00 – 5:00 VTX

Phil 8.15.16

7:00 – 5:00 VTX

  • Extending the group polarization section based on the lovely introduction in Modelling Group Opinion Shift to Extreme : the Smooth Bounded Confidence Model 
  • Still thinking about genetic co-evolution, particularly as demonstrated in sexual selection. In S.S., we have a group that can develop extreme, ‘useless’ and even objectively dangerous traits as genetic conversation with in a group. Birds provide several examples, ranging from peacocks to the Resplendent quetzal. And I think I may have found a paper that proposes some useful models: Models of speciation by sexual selection on polygenic traits. So Group Polarization == Speciation???
  • From the above paper: “The evolution of mating preferences may be self-reinforcing because, once started, females are selecting not only for more extreme males but also indirectly, through the genetic correlation, for a higher intensity of mating preferences. Fisher (3) stated that the result of this positive feedback could be a “runaway process,” in which a male trait and female preferences for it both increase geometrically or exponentially with time until finally checked by severe counterselection. 
  • And more: “In a finite population, random genetic drift in female mating preferences produces random selective forces on males, which in turn affect mating preferences through the genetic correlation between the traits. When the line of equilibria created by genetic variance in mating preferences is unstable, random genetic drift could trigger a runaway process of sexual selection. Even when the line of equilibria is stable, evolution along it can occur rapidly through the interaction of random genetic drift with natural and sexual selection because populations starting from the same point may drift to different sides of the line of equilibria and be selected in opposing directions

Phil 8.12.16

7:00 – 3:30 VTX

  • Working on diagram -done! Incorporated in proposal

proposal-flowchart2

  • Added strawman webpage design
  • Thinking about using some kind of GA approach to adopting a belief. Every pass you look select a belief from another agent, with probability based on nearness+behavior. You then randomly mutate your belief based on the other belief plus some randomness.
    • I’m starting to really like this idea. Evolution, particularly co-evolution is very much about bubbles until the environment constrains. So what’s the breeding algorithm?
  • Found the jenetics.io GA library. Checking out the programmers guide

Phil 8.11.16

7:00 – 4:30 VTX

  • Scheduling Meetings with Aaron, Don, and Shimei.
  • Continuing with diagram.
  • Wrote up evaluation criteria for RQ3. Probably needs some fleshing out.
  • Integrating cluster tests! Done! Working!
  • Added a slider to manipulate where in the sorted list of distances the eps is taken from
  • In the BeliefAgentShape.getOpinions() set the belief and antibelief mechanisms the same. We get our antibeliefs from our neighbors.
  • Need to add an adjustable drag. Done
  • Still thinking about how to calculate opinions. Clearly, closer opinions should be more powerful. What about antiBeliefs? Is that a two-pass process?
  • 4:00 Acceptance meeting.

Phil 8.10.16

7:00 – 4:30 VTX

  • Working on diagram
  • Realised that I don’t have an evaluation Criteria for RQ2
  • Got the antiBelief and origin force scalars working
  • Still don’t have the inserts and deletes working in Belief.addBeliefStatements() working something to talk to Don and Aaron about?
  • Starting to work on clustering. Extended the ResizableCanvas class, since it knows the global state.
  • Yay! I don’t have to implement DBSCAN. It’s in the apache math commons!
  • It works! You need to know the average spacing within a cluster. Here’s how.
    Clusters with eps of < 3.8461538461538463
    
    cluster (10 elements):
    Shape[0-0] pos = (5.14, 2.50), angle = 0.00
    Shape[0-1] pos = (7.46, 0.73), angle = 0.00
    Shape[0-2] pos = (2.51, 2.64), angle = 0.00
    Shape[0-4] pos = (5.11, 0.24), angle = 0.00
    Shape[0-6] pos = (4.07, 1.91), angle = 0.00
    Shape[0-7] pos = (4.14, 4.53), angle = 0.00
    Shape[0-8] pos = (3.82, 5.07), angle = 0.00
    Shape[0-3] pos = (1.96, 4.80), angle = 0.00
    Shape[0-5] pos = (0.68, 2.02), angle = 0.00
    Shape[0-9] pos = (2.73, 6.09), angle = 0.00
    
    cluster (10 elements):
    Shape[1-0] pos = (37.75, 38.52), angle = 0.00
    Shape[1-1] pos = (37.47, 38.50), angle = 0.00
    Shape[1-2] pos = (40.58, 37.65), angle = 0.00
    Shape[1-6] pos = (38.97, 37.11), angle = 0.00
    Shape[1-7] pos = (40.48, 39.53), angle = 0.00
    Shape[1-8] pos = (35.93, 35.51), angle = 0.00
    Shape[1-9] pos = (35.95, 40.37), angle = 0.00
    Shape[1-3] pos = (40.63, 34.00), angle = 0.00
    Shape[1-5] pos = (40.69, 35.59), angle = 0.00
    Shape[1-4] pos = (34.95, 34.15), angle = 0.00
    
    cluster (10 elements):
    Shape[2-0] pos = (68.48, 71.03), angle = 0.00
    Shape[2-4] pos = (67.78, 72.69), angle = 0.00
    Shape[2-5] pos = (67.39, 69.31), angle = 0.00
    Shape[2-6] pos = (71.04, 70.03), angle = 0.00
    Shape[2-8] pos = (70.69, 73.91), angle = 0.00
    Shape[2-1] pos = (70.23, 66.77), angle = 0.00
    Shape[2-2] pos = (74.27, 68.85), angle = 0.00
    Shape[2-3] pos = (72.95, 68.10), angle = 0.00
    Shape[2-7] pos = (72.85, 69.00), angle = 0.00
    Shape[2-9] pos = (72.05, 73.34), angle = 0.00
  • Yup, that worked:
    for(SmartShape outerSS : ssList){
        for(SmartShape innerSS : ssList){
            if(outerSS == innerSS){
                continue;
            }
            double[] op = outerSS.getPoint();
            double[] ip = innerSS.getPoint();
            double dist = Math.sqrt(op[0]*ip[0] + op[1]*ip[1]);
            distList.add(dist);
        }
    }
    distList.sort(doubleComparator);
    double eps = distList.get(distList.size()/10);
    DBSCANClusterer<SmartShape> dbscan = new DBSCANClusterer<SmartShape>(eps, 3);
    final List<Cluster<SmartShape>> clusterList = dbscan.cluster(ssList);
  • Well, that was a really good day…

Phil 8.9.16

7:00 – 3:30 VTX

Paper

  • Working on a diagram that connects research questions
    • Learning Illustrator
  • Need to add some setup for each section
  • Add a study where subjects have explorer, confirmer and avoider roles when searching for an answer. (This should be in the E.C. for 5.4.4)
  • Add a final study that’s just ‘open search’? (This could be interesting with 5.4.5. It wouldn’t be any more coding than the Red Scare system. Still a Google CSE as the back end, but running through an intermediary server for logging.)

Code

  • Working through the antistatement
  • Added a subtractStatement to belief.
  • Adding in an opposing belief for initialization tests
  • I’m going to need an anti belief list for each agent for similarity analysis. Weight is being overloaded.
  • Added AntiBelief, which calculates a repulsion based on similarities with  statements in the target belief.
  • Need to add a button that toggles origin attraction.
  • Copied projects to VTX svn

Phil 8.8.16

8:00 – 3:00 VTX

Paper

  • Continuing the The Sovereign Map. Definitely building my vocabulary. Interesting point: map, carte, etc are all descriptions of drawing. So the etymology of map does not address the concepts that support maps.
  • Need to add a ‘done’ condition to the discussion of the RQs. – Working this.
    • Added the evaluation criteria for 5.4.9.
  • Need to add diagram that connects research questions
  • Need to add some setup for each section
  • Add a study where subjects have explorer, confirmer and avoider roles when searching for an answer. (This should be in the E.C. for 5.4.4)
  • Add a final study that’s just ‘open search’? (This could be interesting with 5.4.5. It wouldn’t be any more coding than the Red Scare system. Still a Google CSE as the back end, but running through an intermediary server for logging.)

Code

Phil 8.5.16

7:00 – 3:30 VTX

Paper

  • Started The Sovereign Map
  • Need to add a ‘done’ condition to the discussion of the RQs. – Working this.
    • Added the evaluation criteria for 5.4.6. Also added some discussion on how the model might help narrow the search space.
  • Need to add diagram that connects research questions
  • Need to add some setup for each section
  • Add a study where subjects have explorer, confirmer and avoider roles when searching for an answer. (This should be in the E.C. for 5.4.4)
  • Add a final study that’s just ‘open search’? (This could be interesting with 5.4.5. It wouldn’t be any more coding than the Red Scare system. Still a Google CSE as the back end, but running through an intermediary server for logging.)

Code

  • Added mousewheel scale and mouse drag. Recentering isn’t quite right
  • Added reset button
  • Working on polarization
    • chance calculations seem to be working, but frequent enough sampling of far away to have all the items converge. Need to ponder. Maybe there’s a cost for keeping a statement that has a high average distance?
    • The current goal is to see the color groups collapse into homogeneous without combining into one group.
    • After that look into dissimilarity. Purge elements of similarity?
    • Would like to measure the overall force vector of a particular cluster as a proxy for group drift.