Skip to content

Contains notes on articles and papers I recently read & some todos logged on-the-fly at my os.

Notifications You must be signed in to change notification settings

juliusHuelsmann/Readings

Repository files navigation

Readings

Attention: if you are currently editing and viewing the README.md file, remember that this file is read-only; only generated from mdpp files via the python-script markdown-pp.py.

Attention!

Do only edit the mdpp files in this directory!

Content

This repository contains notes on interesting papers, a list of utilites and features I am currently unhappy withj and a list of papers / websites I want to read.

Needed utilities

This file contains a list of utilities that is needed / things coming to my mind to be automated or functionalities to find in some manpage for vim or other tools I am using in my day-2-day working life.

Solved

  • automate logging of feature requests or readings by execution of ctrld command
    • done in this file and the file in reading list reading
  • include markdown files from other sources
    • using markdown-pp [list of input files] -o result.md:
      • !INCLUDE "filename"
  • fix the ct script
  • the git pre-push hook does not work each time but only sometimes. fix that
  • increase trackpoint pointers speed

Open

  • open multiple markdown preview windows in different qutebrowser windows popping up underneath the current vim md file
  • use aliases in dmenu
  • copy pasting into dmenu
  • history of dmenu commands
  • the uuu tool fails when there are paranthesis in the message to be added. fix that
  • daemonize is always one step behind. Compare replacement of ct alias by function not using daemonize function but alias.
  • [VIM] find alternative for vim preview that is entirely open source, offers possibility to use multiple sessions
  • [VIM] livedown alternative: open qutebrowser session in vertical split underneath the vim window, maintaining the previous split setting
  • [OS] 1
  • asdf

Reading list

This list contains files / websites to be read in the future.

 @InProceedings{Taigman_2014_CVPR,
   author = {Taigman, Yaniv and Yang, Ming and Ranzato, Marc'Aurelio and Wolf, Lior},
   title = {DeepFace: Closing the Gap to Human-Level Performance in Face Verification},
   booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
   month = {June},
   year = {2014}
 }

First pass papers

This file contains an overview of the papers I recently red (only superficially in one pass). Sorted by time of reading in reverse order. (✓✓) only given if the observed parts of the paper are extremely well written.

DATE SUBJECT

Notes
Q

2018-10-02 SUBJECT

Notes
Q
@inproceedings{bhattacharyya2018long,
  title={Long-term on-board prediction of people in traffic scenes under uncertainty},
  author={Bhattacharyya, Apratim and Fritz, Mario and Schiele, Bernt},
  booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
  pages={4194--4202},
  year={2018}
}

2018-10-02 SUBJECT (revisit)

Notes
Q
@article{yagi2017future,
  title={Future Person Localization in First-Person Videos},
  author={Yagi, Takuma and Mangalam, Karttikeya and Yonetani, Ryo and Sato, Yoichi},
  journal={arXiv preprint arXiv:1711.11217},
  year={2017}
}

2018-10-02 Siamese Networks (possibly revisit)

Q
  • category: proposes Siamese NN for facial verification
  • Siamese Networks
    • use cases:
      • recognition + verification
      • number training / class can be very low
      • classes do not need to be known during training
    • not useful alternatives
      1. Distance based methods (compute similarity metric between pattern and lib of stored prototypes)
      2. Generative models in reduced dimension space
    • idea:
      • learn f : INPUT -> TARGET sth | f(input) |_1 maintains semantic distance in input space
      • mapping f := convolutional NN
@inproceedings{chopra2005learning,
  title={Learning a similarity metric discriminatively, with application to face verification},
  author={Chopra, Sumit and Hadsell, Raia and LeCun, Yann},
  booktitle={Computer Vision and Pattern Recognition, 2005. CVPR 2005. IEEE Computer Society Conference on},
  volume={1},
  pages={539--546},
  year={2005},
  organization={IEEE}
}

2018-10-01 Siamese Networks

Notes
  • one shot learning means to predict on the basis of only one single example of each new class
    • normally; for one shot learning, domain specific features are designed
      • works fine on similar inputs
      • does however not offer robust solution
  • Siamese networks (see DeepFace paper)
    • := NN-architecture that contains two or more identical subnetworks model architecture (involves distance-based loss)
      • learns similarity of two pairs of inputs
      • training thus involves pairwise learning -> quadratic pairs to learn
    • advantages
      • more robust to class imbalance
      • good for one shot learning
      • learn similarity
    • Feature extraction
    • employ unique structure to naturally rank similarity between inputs
Q
  • contribution:
    1. Method for learning in siamese neural networks
@inproceedings{koch2015siamese,
  title={Siamese neural networks for one-shot image recognition},
  author={Koch, Gregory and Zemel, Richard and Salakhutdinov, Ruslan},
  booktitle={ICML Deep Learning Workshop},
  volume={2},
  year={2015}
}

2018-10-01 Gaze Anticipation (revisit)

Notes
  • point of gaze := point which human is fixating
  • method (called Deep Future Gaze := DFG):
    • GAN
      • GENERATOR:
        1. (PREDICT FRAMES) Two-stream spatial temporal convolutional net (3d-CNN); one for background; one for foreground
        2. Second 3d-CNN employed for gaze anticipations on top
      • DISCRIMINATOR
      • This GAN is used for predicting the future frames
  • Experimental results and code
Q
  • contribution
    1. Aforementioned method outperforms state-of-the-art methods
    • prediction of the point of gaze in the future (order of a few seconds)
    1. Introduces new egocentric dataset
  • reproducibility: ✓✓
  • clarity: ✓
  • correctness: ✓ even though I am extremely surprised that the prediction of the future frames in the next few seconds can be done reliably (gaze anticipation is stacked on top of that)
@inproceedings{zhang2017deep,
  title={Deep Future Gaze: Gaze Anticipation on Egocentric Videos Using Adversarial Networks.},
  author={Zhang, Mengmi and Ma, Keng Teck and Lim, Joo-Hwee and Zhao, Qi and Feng, Jiashi},
  booktitle={CVPR},
  pages={3539--3548},
  year={2017}
}

2018-10-01 Video summarization (revisit)

Notes
  • video summarization := "compress" video by extracting important parts
    • viewpoint := yields important aspects of the image / video
    • applying the video summarization we receive similarity metrics wrt the viewpoint.
    • not one optimal viewpoint
Q
  • contribution meta:
    • viewpoint specified as similarity (in a semantic sense) which, once again is depending on the aspect that is considered important.
    • focuses on video-level similarities (supervized)
  • core contribution:
    1. Proposes a novel video summarization method from multiple groups; inspired by Fisher's discriminant
    2. Introduces a dataset for that purpose
    3. Developed optimization algorithm t
  • usefulness:
    • can be used for feature extraction
  • clarity: ✓✓
  • correctness: ✓
@inproceedings{kanehira2018aware,
  title={aware Video Summarization},
  author={Kanehira, Atsushi and Van Gool, Luc and Ushiku, Yoshitaka and Harada, Tatsuya},
  booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
  pages={7435--7444},
  year={2018}
}

Tasks

a) Solved

  • make tasks work
  • version control the rofi config
  • configure rofi to lokk nice
  • finish configuration qutebrowser
  • version control the new qutebrowser config
  • qutebrowser setup for new qv
  • improve dunst config
  • resize windows also with hjkl for i3
  • ViM aliases for comments, for loop, if, stuff
  • fix snipmate
  • register for aim3
  • fix the script i wrote for opening up the cpp file from h file
  • ViM aliases for comments, for loop, if, stuff
  • vim colorscheme and config: disable the current line col highlighting in all window that is not active. disable 80char line too. set background black also in inactive windows.
  • disable mouse movement enabling focus change on windows i3
  • ns3 dim inactive windows?
  • send offer 2db
  • ticket
  • setup working env
  • notifysend merken

b) Open

Notes

This section contains interesting notes or ways I solved some intermed. problem that I need to take a look at proabably later in time

  • change mouse speed via xinput --list-props --set-prop
  • ps -ejh for process tree, -aux for all
  • snipmate for touching new, filled file containing snippets, make :SnipMateOpen tab and edit and save
  • lvalue := locator value (represetns an object that opccupies some identifiable location in memory)
  • rvalue
  • of course it is possible to return a lvalue from a function (but ugly).
  • lvalues remain lvalues even if they are const. const lvalues are not assignable. The lvalues that can be changed are called modifiable lvalues
  • language constructs operatinng on object values require rvalues as arguments.
    • all lvalues that are not arrays / functions / incomplete types canbe converted to rvalues
  • basically * creates a lvalue from an rvalue
  • & creates a rvalue from a lvalue
    • otherwise defines reference types (lvalue references)
  • NOTE: constant lvaue refernece can be assigned rvalues (as there is no fear that the rvalue will actually change)
  • CV-unqualified / CV-qualifier: const and volatile qualifier
int* p = &arr[0];
*(p + 1) = 10;   // OK: p + 1 is an rvalue, but *(p + 1) is an lvalue

Heap and free store

In Herb's book "Exceptional C++", he defines:

Heap: A dynamic memory area that is allocated/freed by the malloc/free functions.

Free Store: A dynamic memory area that is allocated/freed by new/delete.

Its possible for new and delete to be implemented in terms of malloc and free, so technically, they could be the same memory area. However, as the standard doesn't specify this, its best to treat them separatly, and not to mix malloc/delete or new/free.

  • http://zamanbakshifirst.blogspot.com/search/label/heap (bjarne stroustrup
    • I consistently use "free store" and "heap" is not a defined term in the C++ standard (outside the heap standard library algorithms, which are unrelated to new and malloc()). In relation to new, "heap" is simply a word someone uses (typically as a synonym to "free store") - usually because they come from a different language background

On default destructors / constructors

What is the difference between virtual ~Class() {} or virtual ~Class = #default

= default;

  • considered not user-defined
    • constructor: in case of value initialization for the constructor A* a = new A(); a special kind of initialization that does not use a constructor at all will take place. Zero-Initialization.
    • destrucuto: if a base / member with inaccessible / deleted destructor, it will only compile if default destructor is selected and not if empty one is. However it will raise an exception when the class actually is removed.

Releases

No releases published

Packages

No packages published

Languages