Posts

Canny Edge Detection - 1/6-17/20

Image
       This is my first post in 2020 so I would like to take the time to say Happy New Year and Decade. Last decade our world has hosted a lot of notable events like Occupy Wall Street, Brexit, natural disasters, school shootings, and the impeachment of Trump. Like every other decade, the 2010s were a mix of happiness and devastation. I know for me, the decade was a rollercoaster as it occupied more than half the time I have been on this planet. In the span of those 10 years, I have moved from Massachusetts to California and sort of "assimilated" with the people here. Since then, I have made a couple groups of friends and am happy about where I stand. My favorite things to happen last decade were the technological innovations made like the Raspberry Pi and the first picture of a black hole. Enough lamenting the past, let us get back to what I studied these past weeks. Funny image        I learned about t he Canny Edge Detection, a multi-s...

Looking Back at Semester 1

Image
       My group is under Dr. Hassibi for Machine Learning. This semester we have studying Machine Learning but more specifically: graph clustering algorithms. We tested a lot of algorithms on Zachary's Karate Dataset but what was more important than implementing them was understanding them. A lot of the algorithms were math intensive so in order to really understand why algorithms work the way they do, we focused on explaining the math. In order to see how many options there are to cluster the Karate dataset, algorithms were assigned after each meeting. Some algorithms that I did were Spectral Clustering, Girvan Newman, and more recently Fuzzy c-means. Karate Club Dataset        Aside from learning new algorithms, I think my Caltech experiences have helped me improve in other ways. For instance, when I began, I did not know a lot of linear algebra, but after studying math-centered subjects for a couple months, I have gotten into the habi...

Fuzzy C-Means - 11/22/19 - 12/13/19

Image
These past few weeks have been slow. Dr. Hassibi could not come to the last meeting and we had a school break. In the meantime, we started to learn a new algorithm that did not have to do with graph clustering. I studied Fuzzy C-Means which was fairly easy to understand. Fuzzy c-means (FCM) is a method of clustering that allows points to be in more than one cluster. This method was developed by Dunn in 1973 and improved by Bezdek in 1981. The problem of classifying outliers gave rise to non- hard algorithms that were flexible enough to effectively deal with these points, hence the name “ soft clustering ”. It is also known as “ soft k-means ” due to its design centered around k-means. A big difference between the two algorithms is that FCM assigns a membership of every node to each cluster, enabling points to be in two or more clusters. Below is an image of FCM being used to do image partitioning. After is my video explaining what FCM is in further detail. https://youtu...

Filler Journal - 10/18/19 - 11/15/19

Image
     On Thursday, November 14th, I ran into a multitude of issues. All of which was because of pent up anxiety and downright disappointment. It all began in my debate class. I had a tournament coming up soon and my case was barely finished. I know I could finish it late in the day but I felt the need to do it during class. I was compelled to do so since I wanted to do well but I ended up not because I had a math test one period away. For the rest of the class, I did a last-minute cram session but I guess that was bad luck. Right before the test, my teacher, Mrs. Linton, said that if we had 6 minutes left, we "should get on the calculator section ASAP." Judging from her statement, I wrongfully judged that I would need around 10 minutes since I thought she implied that the calc section would take 6. Instead, I really needed much more time. I ended up doing extremely poor and got disappointed. During my "alone" time of thinking about what could I have done to do better...

Zachary's Karate Club Technical Journal 3

Image
General Overview The Girvan-Newman Algorithm, named after Michelle Girvan and Mark Newman, is a hierarchical method used to detect communities in a graph depending on the iterative elimination of edges with the highest number of shortest paths that go through them. Essentially the algorithm is the process of repetitive calculations of edge betweenness centrality of all nodes and cutting the edge with the highest centrality. In pseudo-code: R epeat until no edges are left: C alculate edge betweenness for every node in the graph R emove the edge with the highest edge betweenness R ecalculate edge betweenness for all remaining nodes C onnected nodes are considered communities This method works because groups are separated from one another, revealing the underlying community structure of the network. Edge betweenness is the driving factor of the algorithm but it must be recalculated after each completed iteration. In sentences, edge betweenness works like the following: for ev...

Zachary's Karate Club Technical Journal 2

Image
The Problem:   My last technical journal for this dataset can be found on the home page but here's a short summary: Zachary’s Karate Club is a social network of a karate club that captures 34 members and records links with pairs of interacting members as edges. During the study, the karate club had split into two (between John and Mr. Hi), coincidentally also dividing the members into the two factions. The task at hand is to determine/predict which members would stick with John or leave with Mr. Hi. This is an example of an algorithm splitting the 34 members into two groups, indicated by the color difference The Algorithm: Previously I've tried many algorithms like K-nearest-neighbor but all of those have proven not applicable to this graph dataset. However , I was fortunate enough to have found an algorithm that sounds promising: Community Detection/Girvan-Newman Algorithm. Here's a basic rundown on how the code works: Girvan-Newman Algorithm (In...

Graph Clustering Algorithms - 10/11-25/19

Image
On Thursday, we went to Caltech to visit Dr. Hassibi for our biweekly meeting. Each of us would talk about our algorithm. Dr. Hassibi went over Spectral Clustering which works like finding the max eigenvalue and its eigenvector to create a k-number of cliques. Cliques are the ideal graph clusters because all the nodes in a cluster are connected to each other and never to other nodes outside. Our task for the next three weeks is to complete testing for our algorithms on the Karate Club dataset and understand the math behind it. Picture of Dr. Hassibi and the whiteboard detailing the basics of what Spectral clustering is I also went to West Torrance High School to do a math competition (BML) with my friends. I took the Pre-calculus, Calculus, and Number Theory tests, all of which were a challenge to me. I had studied for an extensive amount of time but my scores did not reflect my efforts. I tripped up on careless mistakes and some unexcusable mishaps ...