Cleaned up some old pages and uploaded some proceedings

This commit is contained in:
Brandon Rozek 2021-12-13 16:56:35 -05:00
parent d222df272b
commit fd62fbaf72
26 changed files with 97 additions and 61 deletions

View file

@ -7,6 +7,11 @@ Description: A list of my research Projects
**Broad Research Interests:** Automated Reasoning, Artificial Intelligence, Formal Methods
## Logic-Based AI
Working with [Dr. Selmer Bringsjord](https://homepages.rpi.edu/~brings/) and others in the [RAIR Lab](https://rair.cogsci.rpi.edu/) to design
and implement artificial intelligent agents whose behavior is verifiable
via chains of inference. More details coming soon...
## Symbolic Methods for Cryptography
Worked with [Dr. Andrew Marshall](https://www.marshallandrew.net/) under an ONR grant in collaboration with University at Albany, Clarkson University, University of Texas at Dallas, and the Naval Research lab in order to automatically generated and verify cryptographic algorithms using symbolic (as opposed to computational) methods.
@ -41,23 +46,22 @@ One particular problem I'm fascinated by is how to make Reinforcement Learning a
## Other
**Programming Languages:** Studying the design of programming languages. So far I made an implementation of the SLOTH programming language, experimenting with what I want my own programming language to be syntatically and paradigm wise. [SLOTH Code](https://github.com/brandon-rozek/SLOTH)
[**Programming Languages:**](proglang) Back in the Fall of 2018, under the guidance of Ian Finlayson, I worked towards creating a programming language similar to SLOTH (Simple Language of Tiny Heft). [SLOTH Code](https://github.com/brandon-rozek/SLOTH)
Before this study, I worked though a book called ["Build your own Lisp"](https://www.buildyourownlisp.com/) and my implementation of a lisp like language: [Lispy Code](https://github.com/brandon-rozek/lispy)
Before this study, I worked through a great book called ["Build your own Lisp"](https://www.buildyourownlisp.com/).
**Competitive Programming:** Studying algorithms and data structures necessary for competitive programming. Attended ACM ICPC in November 2018/2019 with a team of two other students.
[**Competitive Programming:**](progcomp) Studying algorithms and data structures necessary for competitive programming. Attended ACM ICPC in November 2018/2019 with a team of two other students.
**Cluster Analysis:** The study of grouping similar observations without any prior knowledge. I studied this topic by deep diving Wikipedia articles under the guidance of Dr. Melody Denhere during Spring 2018. **[Extensive notes](clusteranalysis)**
**Excitation of Rb87**: Worked in a Quantum Research lab alongside fellow student Hannah Killian under the guidance of Dr. Hai Nguyen. I provided software tools and assisted in understanding the mathematics behind the phenomena.
[**Excitation of Rb87**](rb87): Worked in a Quantum Research lab alongside fellow student Hannah Killian under the guidance of Dr. Hai Nguyen. I provided software tools and assisted in understanding the mathematics behind the phenomena.
[Modeling Population Dynamics of Incoherent and Coherent Excitation](/files/research/modellingpopulationdynamics.pdf)
[Coherent Control of Atomic Population Using the Genetic Algorithm](/files/research/coherentcontrolofatomicpopulation.pdf)
**Beowulf Cluster:** In order to circumvent the frustrations I had with simulation code taking a while, I applied and received funding to build out a Beowulf cluster for the Physics department. Dr. Maia Magrakvilidze was the advisor for this project.
[High Performance Cluster for Research and Education Report (nicknamed LUNA-C)](/files/research/LUNAC.pdf)
[LUNA-C Poster](/files/research/LUNACposter.pdf)
[**Beowulf Cluster:**](lunac) In order to circumvent the frustrations I had with simulation code taking a while, I applied and received funding to build out a Beowulf cluster for the Physics department. Dr. Maia Magrakvilidze was the advisor for this project. [LUNA-C Poster](/files/research/LUNACposter.pdf)

View file

@ -1,17 +0,0 @@
---
Title: Dimensionality Reduction
Description: Reducing High Dimensional Datasets to what we can digest.
showthedate: false
---
# Dimensionality Reduction
In the Summer of 2018, I was going to embark with another study on the topics pertaining to Dimensionality Reduction. Sadly the other student became busy a few weeks into the study. I decided to upload what we got through anyways for completeness.
[Syllabus](syllabus)
[Intro](intro)
[Feature Selection](featureselection)
[Optimality Criteria](optimalitycriteria)

View file

@ -1,34 +0,0 @@
# Feature Selection
Feature selection is the process of selecting a subset of relevant features for use in model construction. The core idea is that data can contain many features that are redundant or irrelevant. Therefore, removing it will not result in much loss of information. We also wish to remove features that do not help in our goal.
Feature selection techniques are usually applied in domains where there are many features and comparatively few samples.
## Techniques
The brute force feature selection method exists to exhaustively evaluate all possible combinations of the input features, and find the best subset. The computational cost of this approach is prohibitively high and includes a considerable risk of overfitting to the data.
The techniques below describe greedy approaches to this problem. Greedy algorithms are ones that don't search the entire possible space but instead converges towards local maximums/minimums.
### Wrapper Methods
This uses a predictive model to score feature subsets. Each new subset is used to train a model, which is tested on a hold-out set. The error rate of the model results in a score for that subset. This method is computationally intensive, but usually provides the best performing feature set for that particular type of model.
### Filter Methods
This method uses a proxy measure instead of the error rate. The proxy measure can be specifically chosen to be faster to compute while still capturing the essence of the feature set. Common implementations include:
- Mutual information
- Pointwise mutual information
- Pearson product-moment correlation coefficient
- Relief-based algorithms
- Inter/intra class distances
- Scores of significance tests
Many filters provide a feature ranking rather than producing an explicit best feature subset
### Embedded Methods
This is a catch-all group of techniques which perform feature selection as part of the model. For example, the LASSO linear model penalizes the regression coefficients shrinking unimportant ones to zero.
Stepwise regression is a commonly used feature selection technique that acts greedily by adding the feature that results in the best result each turn.

View file

@ -1,30 +0,0 @@
# Introduction to Dimensionality Reduction
## Motivations
We all have problems to solve, but the data we might have at our disposal is too sparse or has too many features that it makes it computationally difficult or maybe even impossible to solve the problem.
### Types of Problems
**Prediction**: This is taking some input and trying to predict an output of it. An example includes having a bunch of labeled pictures of people and having the computer predict who is in the next picture taken. (Face or Object Recognition)
**Structure Discovery**: Find an alternative representation of the data. Usually used to find groups or alternate visualizations
**Density Estimation**: Finding the best model that describes the data. An example includes explaining the price of a home depending on several factors.
## Advantages
- Reduces the storage space of data (possibly removing noise in the process!)
- Decreases complexity making algorithms run faster
- Removes multi-collinearity which in turn likely improves the performance of a given machine learning model
- Multi-collinearity usually indicates that multiple variables are correlated with each other. Most models make use of independent features to simplify computations. Therefore, ensuring independent features is important.
- Data becomes easier to visualize as it can be projected into 2D/3D space
- Lessens the chance of models *overfitting*
- This typically happens when you have less observations compared to variables (also known as sparse data)
- Overfitting leads to a model being able to have high accuracy on the test set, but generalize poorly to reality.
- Curse of dimensionality does not apply in resulting dataset
- Curse of dimensionality is that in high dimensional spaces, all points become equidistant
## Disadvantages
Data is lost through this method, potentially resulting in possibly insightful information being removed. Features from dimensionality reduction are typically harder to interpret leading to more confusing models.

View file

@ -1,99 +0,0 @@
# Optimality Criteria
Falling under wrapper methods, optimality criterion are often used to aid in model selection. These criteria provide a measure of fit for the data to a given hypothesis.
## Akaike Information Criterion (AIC)
AIC is an estimator of <u>relative</u> quality of statistical models for a given set of data. Given a collection of models for the data, AIC estimates the quality of each model relative to each other.
This way, AIC provides a means for model selection. AIC offers an estimate of the relative information lost when a given model is used.
This metric does not say anything about the absolute quality of a model but only serves for comparison between models. Therefore, if all the candidate models fit poorly to the data, AIC will not provide any warnings.
It is desired to pick the model with the lowest AIC.
AIC is formally defined as
$$
AIC = 2k - 2\ln{(\hat{L})}
$$
## Bayesian Information Criterion (BIC)
This metric is based on the likelihood function and is closely related to the Akaike information criterion. It is desired to pick the model with the lowest BIC.
BIC is formally defined as
$$
BIC = \ln{(n)}k - 2\ln{(\hat{L})}
$$
Where $\hat{L}$ is the maximized value of the likelihood function for the model $M$.
$$
\hat{L} = p(x | \hat{\theta}, M)
$$
$x$ is the observed data, $n$ is the number of observations, and $k$ is the number of parameters estimated.
### Properties of BIC
- It is independent from the prior
- It penalizes the complexity of the model in terms of the number of parameters
### Limitations of BIC
- Approximations are only valid for sample sizes much greater than the number of parameters (dense data)
- Cannot handle collections of models in high dimension
### Differences from AIC
AIC is mostly used when comparing models. BIC asks the question of whether or not the model resembles reality. Even though they have similar functions, they are separate goals.
## Mallow's $C_p$
$C_p$ is used to assess the fit of a regression model that has been estimated using ordinary least squares. A small value of $C_p$ indicates that the model is relatively precise.
The $C_p$ of a model is defined as
$$
C_p = \frac{\sum_{i =1}^N{(Y_i - Y_{pi})^2}}{S^2}- N + 2P
$$
- $Y_pi$ is the predicted value of the $i$th observation of $Y$ from the $P$ regressors
- $S^2$ is the residual mean square after regression on the complete set of regressors and can be estimated by mean square error $MSE$,
- $N$ is the sample size.
An alternative definition is
$$
C_p = \frac{1}{n}(RSS + 2d\hat{\sigma}^2)
$$
- $RSS$ is the residual sum of squares
- $d$ is the number of predictors
- $\hat{\sigma}^2$ refers to an estimate of the variances associated with each response in the linear model
## Deviance Information Criterion
The DIC is a hierarchical modeling generalization of the AIC and BIC. it is useful in Bayesian model selection problems where posterior distributions of the model was <u>obtained by a Markov Chain Monte Carlo simulation</u>.
This method is only valid if the posterior distribution is approximately multivariate normal.
Let us define the deviance as
$$
D(\theta) = -2\log{(p(y|\theta))} + C
$$
Where $y$ is the data and $\theta$ are the unknown parameters of the model.
Let us define a helper variable $p_D$ as the following
$$
p_D = \frac{1}{2}\hat{Var}(D(\theta))
$$
Finally the deviance information criterion can be calculated as
$$
DIC = D(\bar{\theta}) + 2p_D
$$
Where $\bar{theta}$ is the expectation of $\theta$.

View file

@ -1,71 +0,0 @@
# Dimensionality Reduction Study
Dimensionality reduction is the process of reducing the number of random variables under consideration. This study will last for 10 weeks, meeting twice a week for about an hour.
## Introduction to Dimensionality Reduction (0.5 Week)
- Motivations for dimensionality reduction
- Advantages of dimensionality reduction
- Disadvantages of dimensionality reduction
## Feature Selection (3 Weeks)
This is the process of selecting a subset of relevant features. The central premise of this technique is that many features are either redundant or irrelevant and thus can be removed without incurring much loss of information.
### Metaheuristic Methods (1.5 Weeks)
- Filter Method
- Wrapper Method
- Embedded Method
### Optimality Criteria (0.5 Weeks)
- Bayesian Information Criterion
- Mallow's C
- Akaike Information Criterion
### Other Feature Selection Techniques (1 Week)
- Subset Selection
- Minimum-Redundancy-Maximum-Relevance (mRMR) feature selection
- Global Optimization Formulations
- Correlation Feature Selection
### Applications of Metaheuristic Techniques (0.5 Weeks)
- Stepwise Regression
- Branch and Bound
## Feature Extraction (6 Weeks)
Feature extraction transforms the data in high-dimensional space to a space of fewer dimensions. In other words, feature extraction involves reducing the amount of resources required to describe a large set of data.
### Linear Dimensionality Reduction (3 Weeks)
- Principal Component Analysis (PCA)
- Singular Value Decomposition (SVD)
- Non-Negative Matrix Factorization
- Linear Discriminant Analysis (LDA)
- Multidimensional Scaling (MDS)
- Canonical Correlation Analysis (CCA) [If Time Permits]
- Linear Independent Component Analysis [If Time Permits]
- Factor Analysis [If Time Permits]
### Non-Linear Dimensionality Reduction (3 Weeks)
One approach to the simplification is to assume that the data of interest lie on an embedded non-linear manifold within higher-dimensional space.
- Kernel Principal Component Analysis
- Nonlinear Principal Component Analysis
- Generalized Discriminant Analysis (GDA)
- T-Distributed Stochastic Neighbor Embedding (T-SNE)
- Self-Organizing Map
- Multifactor Dimensionality Reduction (MDR)
- Isomap
- Locally-Linear Embedding
- Nonlinear Independent Component Analysis
- Sammon's Mapping [If Time Permits]
- Hessian Eigenmaps [If Time Permits]
- Diffusion Maps [If Time Permits]
- RankVisu [If Time Permits]

View file

@ -1,17 +1,25 @@
---
Title: LUNA-C Cluster
Title: LUNA-C
Description: Building a Beowulf Cluster for the University
showthedate: false
---
# LUNA-C
LUNA-C stands for Large Universal Network Array of Computers and it was a project started back in August 2017 to introduce a cluster computing system to the University. I started this project in response to a want for more computing power to help with the Physics research I was doing at the time.
Dr. Maia Magrakvalidze was the faculty sponsor for this project.
I started this project and wrote a grant proposal and have brought on many students to help make this dream come true. The resources below give a look into all the thoughts and ideas that went along with the project.
One of the Physics labs at the time were getting their computers upgraded
and the old computers were going to be surplussed. I along with Carlos
Ramirez and Clare Arrington convinced them to let us use the surplussed
computers for a Beowulf cluster. We wrote a grant proposal to acquire
hardware upgrades (RAM, SSDs, etc.) for the computers. Later on,
Stefano Cornonado joined the project.
[May 2018 Poster](poster.pdf)
[High Performance Cluster for Research and Education Report (nicknamed LUNA-C)](/files/research/LUNAC.pdf)
[August 2018 Report](report.pdf)
[LUNA-C Poster](/files/research/LUNACposter.pdf)
[June 2019 Presentation](/files/slides/buildinglinuxcluster.pdf)
[FredLUG June 2019 Presentation](/files/slides/buildingalinuxcluster.pdf)
[Physics Newsletter 2017-2018](/files/research/PN-2017-2018.pdf#page=8)
[UMW Research & Creativity Day 2018](/files/research/UMW-RC-2018.pdf#page=48)

View file

@ -1,13 +0,0 @@
---
Title: Physics
Description: Help with Physics Research Projects
showthedate: false
---
## Physics Research
For the two projects below, I worked on Quantum Research in a physics lab with a fellow student Hannah Killian and an advisor Dr. Hai Nguyen. I mostly assisted with the software support for the project and assisted in the mathematics in whatever way I can.
[Modeling Population Dynamics of Incoherent and Coherent Excitation](/files/research/modellingpopulationdynamics.pdf)
[Coherent Control of Atomic Population Using the Genetic Algorithm](/files/research/coherentcontrolofatomicpopulation.pdf)

View file

@ -4,11 +4,12 @@ Description: Competition on Algorithms and Data Structures
showthedate: false
---
# Programming Competition
Back in the Fall of 2018, Harrison Crosse, Clare Arrington, and I all formed a team to compete in a programming competition.
Back in the Fall of 2018, Harrison Crosse, Clare Arrington, and I all formed a team to compete in ACM ICPC.
I didn't make many notes for this, but below are the ones I did make for this.
[Strings](strings)
[Number Theory](numbertheory)
[Number Theory](numbertheory)
I also participated in ACM ICPC 2019 with two other students.

View file

@ -1,4 +1,7 @@
# Number Theory
---
title: Number Theory for ACM ICPC
math: true
---
## Prime Numbers

View file

@ -1,4 +1,6 @@
# Strings
---
title: Strings for ACM ICPC
---
## Character Codes

View file

@ -4,9 +4,10 @@ Description: Designing and Implementing Programming Languages
showthedate: false
---
# Programming Languages
Back in the Fall of 2018, under the guidance of Ian Finlayson, I worked towards creating a programming language similar to SLOTH (Simple Language of Tiny Heft). The language as of now is interpreted and supports array based programming.
[Github repository](https://github.com/brandon-rozek/sloth) outlining my work.
[Short Notes](types) on Types of Programming Languages
[Short Notes](types) on Types of Programming Languages
Before this study, I worked though a book called ["Build your own Lisp"](https://www.buildyourownlisp.com/) and my implementation of a lisp like language: [Lispy Code](https://github.com/brandon-rozek/lispy)

View file

@ -1,8 +1,8 @@
# Types of Programming Languages
---
title: Types of Programming Languages
---
Mostly content from Wikipedia
https://en.wikipedia.org/wiki/List_of_programming_languages_by_type#Hardware_description_languages
Mostly content from [Wikipedia](https://en.wikipedia.org/wiki/List_of_programming_languages_by_type#Hardware_description_languages)
## Array Languages

17
content/research/rb87.md Normal file
View file

@ -0,0 +1,17 @@
---
Title: Rb87 Physics Research
Description: Help with Physics Research Projects
showthedate: false
---
Worked in a Quantum Research lab alongside fellow student Hannah Killian under the guidance of Dr. Hai Nguyen. I provided software tools and assisted in understanding the mathematics behind the phenomena.
[Modeling Population Dynamics of Incoherent and Coherent Excitation](/files/research/modellingpopulationdynamics.pdf)
[Coherent Control of Atomic Population Using the Genetic Algorithm](/files/research/coherentcontrolofatomicpopulation.pdf)
[Physics Newsletter 2016-2017](/files/research/PN-2016-2017.pdf#page=3)
[VAS Proceedings 2017](/files/research/VAS-Proceedings-95-2017.pdf#page=6)
[UMW Resarch & Creativity Day 2017](https://cas.umw.edu/wp-content/blogs.dir/51/files/2019/10/2017-Program-Book-with-Abstracts-2.pdf#page=39)

View file

@ -1,4 +1,6 @@
# Readings for Lectures of Cluster Analysis
---
title: RL Reading Schedule
---
## Lecture 1
Chapter 1: What is Reinforcement Learning?

View file

@ -1,4 +1,6 @@
# Reinforcement Learning
---
title: Reinfrocement Learning Syllabus
---
The goal of this independent study is to gain an introduction to the topic of Reinforcement Learning.