Skills

Computer Vision              

Computers were invented to assist humans in error-prone tasks. I am rather error-prone in recognizing faces; this has only made me even more motivated to have the computer do it for me. After I started exploring Computer Vision, I grew even more interested in its various applications because images are so important to culture and to daily life.

---Skills include---

Modern Computer Vision (Recognition and detection with Convolutional Neural Networks, dimensionality reduction with Autoencoders), Traditional Computer Vision (Edge Detection, Seam Carving, Dimensionality Reduction with PCA/LDA, Traditional Recognition and Detection, Clustering). This list is not exhaustive; if you would like to know more, contact me in the "More" section below.

Deep Learning                   

I am interested in deep learning because its versatility allows me to contribute to and improve various fields.

---Skills include---

Deep Neural Networks (DNN). Convolutional Neural Networks (CNN). Techniques on how to tune and regularize the network. Theory behind neural networks. Recursive Neural Networks (RNN) coming soon. The framework I mainly use for implementation is Keras. I am open to learning other frameworks as well.

Data Analysis / Data Science

Data has always been a part of my life. I really enjoy working with numbers, but that has since extended to other types of data, although numbers are still my favorite. Analyzing the data gives me satisfaction. Recently, I discovered why implementing a good data pipeline makes you feel so good. It's not just that the processing speed is fast, but also that the entire implementation is so easy to use!

---Skills include---

Probability, Statistics (from a mathematical and CS perspective), Data Analysis (from two perspectives: humanities (sociology) and mathematics), practical experience in pipelining the data from start to finish. Data Mining coming soon.

Computer Systems

I began noticing the difference after a few months. Learning about computer systems has made me a more systematic person. Puns aside, my studies in computer systems have given me experience in debugging, making good design decisions, and programming with many moving parts, finding clarity in organization among the confusion.

---Skills include---

Fundamentals of [Filesystems, Multithreading, Multiprocessing], C and C++, reading Assembly code

Machine Learning

Machine Learning is a superset of Deep Learning (above) but is still placed here to represent the diversity of machine learning techniques that I can use to solve a problem, using which is best for the situation.

---Skills include---

Naive Bayes, Support Vector Machines (SVM), Theory of Machine Learning (e.g. Maximum Likelihood Estimation, Gradient Ascent/Descent), Collaborative Filtering and Prediction

Signal Processing

I was first exposed to Signal Processing as the pre-processing stage of the pipeline I designed for my summer project. I have found it to be fun and useful, and have approached it from both the perspectives of software and hardware.

---Skills include---

Signal Processing using SciPy and NumPy, Fourier Transforms, Implementing filters in software (using NumPy), building filters in hardware

Cybersecurity/ Cryptography

By taking a cryptography option for my Thinking Matters class, I was exposed to the world of modern cryptography: public key cryptography, hashing, etc. I was so interested that I took a class the next year on cybersecurity, which also included lessons on cyberlaw.

---Skills include---

History of Cryptography (pre-modern ciphers), Modern Cryptography, fundamentals of [Web Security, Network Security], basics of cyberlaw

Web Design                              

I enjoy graphic design as a hobby, and that extends to web design. In fact, I designed this webpage from scratch (no Bootstrap), first for the Hack Overflow 2019 hackathon (where we won prizes including the Best Overall Hack), and then repurposed to become my personal website.

---Skills include---

HTML, CSS, and a bit of self-learned JavaScript.

Language Processing: coming soon.

I have been interested in language processing since programming a simple chatbot last year. I am excited to learn more about the field this quarter (Winter 2020).

Object-Oriented Programming

It's one of the foundational skills and is very important.

---Skills include---

Understanding of object-oriented programming, some experience in object-oriented programming in Java

Data Structures                

It's one of the foundational skills and is very important.

---Skills include---

I know how to use standard data structures such as HashMap, LinkedList, Stack, Queue, Binary Trees, etc. I also know their time complexities and a bit of the theory behind it.

Unix                                               

It's one of the foundational skills and is very important.

---Skills include---

I have used Unix since taking CS107 (foundational systems class), and am now pretty experienced with standard commands.

Python

Since the summer of 2017, Python has been my best friend. We met at the Summer Science Program (SSP), where we worked together to simulate an asteroid’s orbit to verify that it won’t crash into Earth in the near future.

I continued to meet Python in unexpected places. When I used NumPy and Keras to tune a 5-layer deep neural network for TreeHacks 2019, Python was there. When I implemented my first convolutional neural network using Keras, Python was there. When I learned about Bayesian methods in CS109, Python was there.

This summer, Python joined me to remove noise in earthquake data. We went on to detect tiny, previously undetectable earthquakes by chaining edge detection and clustering. Our perfect teamwork was instrumental in designing pipelines to process data smoothly and efficiently. That’s because I understand Python, and Python understands me. We’re best friends, after all.

I have many other good friends, including C, C++, Java, MATLAB, HTML, CSS, JavaScript, Julia, and R. But no one will ever be better than Python. #bff

---Skills include---

Libraries (including NumPy, SciPy, ObsPy, Matplotlib, cv2, Keras, TensorFlow, and more), experience using Python in computer vision (CS131, summer project), deep learning (CS230 and hackathons), data analysis (summer project), machine learning (CS109), simulation.

Other languages

I use C++ for work heavily involving a lot of data structures, C for system-related programming, and HTML/CSS/Javascript for web design. I am also familiar with the following languages: I used MATLAB in several of my classes (CME100 and Coursera's Machine Learning Course (CS129)); Java was my best language a few years ago and earlier; I used R in a cryptography course (THINK3); I used Julia in an autonomous systems course (AA120Q).

Teleport to menu