MACHINE LEARNING

This page is for collecting tech-resources related to ML and its applications.
Papers/Seminars that I think worth a reading/listening are also listed.

Tech-resources

GitHub | All you need to know, as well as resolve merge conflicts.
Notes:

  • Configuring Git with ‘git config’, initializing a Git Repository with git init, checking Repository Status with ‘git status’.
  • Cloning a Repository with ‘git clone’, Creating and Staging Files with ‘git add .’, create and switch branch at the same time ‘git branch’ git checkout -b NAME.
  • Switching Between Branches with ‘git switch’, Pushing Changes to a Remote Repository with ‘git push’ (repo name)(branch name). Updating Local Repository with ‘git pull’.
  • better ask coworkers before pull request and merge your branch to the main, Viewing Change History with ‘git show’, Deleting Branches Locally and Remotely: git branch –d branch name to delete locally, git push -delete origin branch.
  • Merge the conflict is important, Git merge branch name (– abort), three options: Accept current/incoming/both change.

GNN & PyG | GNN using Pytorch Geometric | coding from Stanford together with official tutorial of Pytorch & PyG. Also, animation for GNN intro [short] [well detailed] and Microsoft. Basically it is dealing with multi-dimensional info, applied to material science, drug development, social networks, but also beyond…
Notes:

  • The overall Pytorch workflow is to class a network, define parameters and forward functions. Remember to add self. Before parameter, otherwise it won’t be added to parameter lists.
  • Training metric (loss) need to be differentiable, but evaluation metric no need, sklearn have a lot evaluation metrics already, no need to hand write.
  • The precision is the ratio tp / (tp + fp), recall tp / (tp + fn), F1 score: 2 * precision * recall/(precision+recall), all of these are 1 best 0 worst.
  • TensorboardX for tracking torch training process, sklearn manifold for dimensional reduction, with its t-SNE for high dimension data visualization.
  • nn.ModuleList has more freedom than nn.Sequential, and can implement append.
  • Spatiotemporal GNN. And also a video. In summary, it deals with static structure with time-varying features. A Spatiotemporal Graph is defined as a graph that captures the temporal patterns and spatial information of things’ usage events, where nodes represent locations, timestamps, and things, and edges represent relationships between locations, timestamps, and things based on similarities and periodic patterns. So basically, the features changing along the time, but all these nodes and edges are still there connected, which is a static structure.

MPC | Model predictive control implementation, together with a short intro by Steven L. Brunton.
Notes:

  • Basic concept: strategy u at time k is the optimal short-time control starting at k, applying to the system, and system will send updated states to MPC for the timestep k+1.
  • Strength: can compose constraints, work with nonlinear systems (can be linearize if needed). Cons: online, computational expensive as need to reschedule future horizons every step receiving feedbacks.
  • A compromising way is to do linear parameter varying, but with computational speed boosting, directly handle nonlinear system is becoming feasible.
Model-based RL let’s goooo
Model-based RL let’s goooo

Papers/Seminars

Jul 2021 | GNN env based RL?.
Notes: python is great in enhancing the ability from data processing to time-series forecasting, till the sophisticated control. Jul 2021 | Spatiotemporal. And also a video