pharath's Technical Notes and Cheatsheets
website·Indexed 29 days ago
https://pharath.github.ioA collection of technical notes, lecture summaries, and cheatsheets covering a wide range of topics including Web3 (Ethereum, DeFi, IPFS, SSI), programming languages (JavaScript, Python, Lua, C++, Bash), machine learning (PyTorch, TensorRT), and computer science fundamentals (Algorithms, DatKom, Operating Systems).
What's inside pharath
- The Interplanetary File System (IPFS) is an open-source, peer-to-peer protocol designed for storing and sharing data in a distributed file system. Unlike the traditional World Wide Web (HTTP), which uses location-based addressing (where a file is), IPFS uses content addressing (what the file is). This allows for decentralized publishing of data, reducing reliance on centralized platforms and improving resilience through redundancy across multiple nodes.
Overview of R-CNN (Region-based Convolutional Neural Networks)
R-CNN is an early object detection framework that uses a multi-stage pipeline:
- Region Proposals: Uses Selective Search to generate approximately 2,000 region proposals (ROIs) per image.
- Warping: Each proposal is warped to a fixed size to fit the CNN input.
- Classification & Regression: An AlexNet CNN is used for feature extraction. A set of binary SVMs (one per class) classifies the region, and a regressor corrects the bounding box coordinates.
Training Process:
- Pre-training: AlexNet is trained on ILSVRC2012 without bounding-box labels.
- Fine-tuning: The CNN parameters are fine-tuned using SGD with bounding-box labels and warped region proposals. The final 1000-way classification layer is replaced with an (N+1)-way layer (N classes + background).
Limitations: Slow at both test and training time due to processing ~2,000 ROIs per image; relies on non-learned region proposals; complex transfer learning pipeline.
Overview of Prolog for Logic Programming
Prolog is a widely used logic programming language primarily utilized for:
- Rapid prototyping
- Symbol-manipulation tasks (e.g., writing compilers, parsing natural language)
- Developing expert systems for legal, medical, and financial domains
- Constraint satisfaction and constraint programming, as it was the first language created with intrinsic support for these tasks.
Overview of Second-Order Optimization Methods
Second-order optimization methods accelerate learning by estimating both the gradient and the curvature of the cost surface. By understanding the curvature, these methods can more accurately estimate the location of the actual minimum compared to first-order methods.Overview of the OSI Model layers
The OSI Model consists of seven layers:
- Physical layer
- Data link layer
- Network layer
- Transport layer
- Session layer
- Presentation layer
- Application layer
Overview of the Bitcoin Lightning Network
The Bitcoin Lightning Network is an 'add-on' layer built on top of the Bitcoin blockchain. It is designed to enable very fast transactions with no transaction fees, addressing the latency and cost issues associated with on-chain Bitcoin transactions.Overview of Node.js
Node.js is a cross-platform, back-end JavaScript runtime environment built on the V8 JavaScript Engine. It allows developers to execute JavaScript code outside of a web browser, enabling the creation of command-line tools and server-side scripting to generate dynamic web page content.Overview of Project Dojo Training Architecture
Project Dojo is a distributed compute architecture designed by Tesla for high-performance, power-efficient, and cost-effective neural network training. It utilizes a 2D mesh format to interconnect compute elements, aiming to minimize latency and maximize bandwidth. The system is designed to handle large, complex models by partitioning and mapping them to exploit model, graph, and data parallelism. A custom neural compiler is used to reduce the communication footprint by exploiting spatial and temporal locality.Overview of Next.js framework
Next.js is an open-source, full-stack React framework created by Vercel. It extends traditional client-side React applications by providing server-side rendering (SSR) and static website generation (SSG), making it a recommended toolchain for building server-rendered websites with Node.js.Overview of microcontroller hardware components
A microcontroller (µC) is essentially a low-end microprocessor integrated with memory, I/O, and peripherals. Key hardware components include:
- Clock: An electronic oscillator regulated by a quartz crystal for timing.
- Serial Interfaces: Common standards include RS-232 and USB.
- Bus Controllers: Interfaces for networking and automation, such as CAN Bus and Ethernet.
- D/A Converters: Used to convert digital microprocessor values into analog control signals (e.g., for motors). Pulse Width Modulation (PWM) can be used as a simplified conversion method.
Overview of Self-Sovereign Identity (SSI) Principles
Self-Sovereign Identity (SSI) is an identity management approach where the individual is the ultimate point of control over their own identity data. The core motivation is to allow users to decide what information is shared and what remains private, removing the reliance on a single central institution. While the end-user experience (e.g., logging in) may feel similar to centralized accounts (like Google), the underlying architecture is decentralized and relies on interoperable standards to ensure that identity can be proven without a central authority.Overview of the Tesla autonomous driving vision pipeline
The vision system utilizes a stream of video from eight cameras across the vehicle. Neural networks process these videos to make real-time predictions regarding the environment, specifically identifying:
- Lane line markings
- Objects and their distances
- Drivable space (areas where the car is permitted to go)
- Traffic lights and traffic signs