Hugo Infopage

Info Page To customize the info page for PaperMod based website: params: homeInfoParams: Title: "👋Hello World!" Content: >- Welcome to Huijing Huang's tech blogs! Social Icons To add social icons: params: socialIcons: - name: "github" url: "https://github.com/rewrlution" - name: "linkedin" url: "https://www.linkedin.com/in/huijing-huang/" - name: "email" url: "mailto:sssjtuhuang@gmail.com" Here’s the full list of social icons. Tags To enable the tags mode for the PaperMod theme in Hugo, add tags to the post’s front matter: date: "2025-02-28T14:16:39-08:00" draft: false title: "Hugo Infopage" tags: ["hugo", "PaperMod", "customization"] Configure the config.yaml to include the taxonomies settings: ...

February 28, 2025

XCS330 PS2 Part 1 - Data Processing

Introduction In this blog, I will talk about some tricks that I learned when I worked on the data processing part for assignment 2 of XCS300. Here’s the link to the assignment. This is how the data looks like: Understand Dataset In this assignment, we use the Omniglot dataset that has 1623 hand-written characters from 50 different languages. Each character has 20 (28 x 28) images. Running both the grader.py or main.py will download the dataset to local filesystem. A folder named omniglot_resized will be generated under the src directory, and this is the structure of the directory: ...

February 28, 2025

XCS330 PS2 Part 2 - MANN Architecture

Introduction In this blog, I will talk about the model part for assignment 2 of XCS300. Here’s the link to the assignment. This is the MANN (memory-augmented neural network) architecture: LSTM Here are some useful reading materials for understanding LSTM and RNN: What is LSTM (Long Short Term Memory)? PyTorch Tutorial - RNN & LSTM & GRU PyTorch Tutorial - Name Classification Using A RNN Here’s a nice diagram of LSTM from Understanding LSTM Networks: ...

February 28, 2025

Hugo Math Typsesetting

Display Math Equations To display math equations in Hugo, we need to add math typesettings. I followed the PaperMod - Math Typesetting tutorial since I use it as the template. The tutorial uses KaTex as the library. Step 1: Math.html Create a partial under /layouts/partials/math.html. I use the Auto-render Extension to render the math inside it, and I include the reference to the script: <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.21/dist/katex.min.css" integrity="sha384-zh0CIslj+VczCZtlzBcjt5ppRcsAmDnRem7ESsYwWwg3m/OaJ2l4x7YBZl9Kxxib" crossorigin="anonymous" /> <script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.21/dist/katex.min.js" integrity="sha384-Rma6DA2IPUwhNxmrB/7S3Tno0YY7sFu9WSYMCuulLhIqYSGZ2gKCJWIqhBWqMQfh" crossorigin="anonymous" ></script> <script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.21/dist/contrib/auto-render.min.js" integrity="sha384-hCXGrW6PitJEwbkoStFjeJxv+fSOOQKOPbJxSfM6G5sWZjAyWhXiTIIAmQqnlLlh" crossorigin="anonymous" onload="renderMathInElement(document.body);" ></script> Step 2: Extend Head.html Then we need to include this partial in extend_head.html. ...

February 23, 2025

Cross Entropy

Cross Entropy In machine learning, the cross-entropy loss is a very popular loss function. Here’s the math definiton of it: $$ H(P^* | P) = - \sum_{i} P^*(i) log P(i) $$ I have been using cross entropy for decades without truly understanding this loss function. Recently, I watched a few YouTube videos and want to share my most recent understanding of it. Essentially, cross entropy is very useful for measuring the difference between two distributions. ...

February 23, 2025

Null Parent Window Handler Issue for AzureAuth Library

Null Parent Window Handler Issue for AzureAuth Library Background AzureAuth-Lib is a thin wrapper on top of microsoft-authentication-cli, which is a CLI wrapper of MSAL. These CLI tools are heavily used by developers. Starting from September 2024, users reported an issue with the tool, stating that AzureAuth-Lib failed to acquire an access token due to a null reference exception. Here’s the error stack: [Verbose] MSAL.Desktop.4.54.1.0.MsalClientException: ErrorCode: window_handle_required Microsoft.Identity.Client.MsalClientException: A window handle must be configured. See https://aka.ms/msal-net-wam#parent-window-handles Error Code Deep-Dive But what does window_handle_required mean? ...

February 18, 2025

Hugo Basics

Hugo Basics What is Hugo? Hugo is a popular open-source static site generators. It takes your content written in Markdown format, applies templates, and generates a static HTML website. It is written in Go and has great performance. Comment: I have used other static site generators before, including Gatsby and Docusaurus. I prefer Hugo because it is very easy to use, and good for lightweight websites. Get Started Install Hugo and run the following command to verify you have installed Hugo: ...

February 16, 2025