Blog

Filter

Text Data Augmentation Techniques

14 May 2025
In the final semester of my Master’s program, I built an NLP model to classify mental health states such as Bipolar, Depression, Suicidal, and others based on written text. Using a labeled but highly imbalanced Kaggle dataset, initial efforts with over-sampling and under-sampling led to limited accuracy and generalizability. This prompted a shift to data augmentation, specifically through synonym replacement and back translation, to enhance model performance.

What I learned is that data augmentation via synonym replacement and back translation offers a practical approach for handling class imbalance in NLP datasets. While not a silver bullet, when applied carefully, these methods improve both the robustness and generalizability of mental health classification models.

Determining the quantity of weights and biases in an ANN

5 October 2024
This example is a quick refresher on how to determine the weights and biases in a basic Artificial Neural Network (ANN). It’s not something I calculate often, so this serves as a handy reference in case I forget. Let’s dive in!

Improving CI/CD with Snyk

18 August 2024
The post explores how Snyk, a security scanning tool, fits into modern CI/CD pipelines by enabling developers to catch vulnerabilities early during development, not just at the end like in traditional waterfall models. While CI/CD automates code integration and unit testing, it doesn’t check for security issues — and that’s where Snyk adds value.

Snyk is a strong contender for secure DevOps, especially for teams seeking seamless integration with development tools and continuous security monitoring.

Q Developer from Amazon

13 August 2024
Amazon’s Q Developer, a rebranded version of Code Whisperer, serves as a generative AI coding assistant. It integrates with VS Code and IntelliJ via plugins and requires authentication through a free AWS Builder ID.

The tool is almost "telepathic" in how well it anticipates next coding steps, even suggesting methods for handling external files and recommending libraries. However, despite its capabilities, developers still play a crucial role in vetting suggestions, ensuring libraries are installed, avoiding redundant or overly complex code, and addressing security needs.

Final verdict: Q Developer is a powerful and insightful assistant for experienced developers, but it still requires human oversight to ensure its recommendations are appropriate and secure.