self-study work for caltech's cs156 machine learning course
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md
final.ipynb
hw1.py
hw1.txt
hw1_pla.py
hw2.py
hw2.txt
hw2_hoeffding.py
hw2_linreg.py
hw2_nonlinear.py
hw3.org
hw4.ipynb
hw5.ipynb
hw6.ipynb
hw6_dataload.py
hw6_nlt.py
hw6_test.dta
hw6_train.dta
hw7.ipynb
hw8.ipynb
hw8_dataload.py
hw8_test.dta
hw8_train.dta
line_class.py
line_test.py
linreg.py
logreg.py
pla.py
rbf.py
reglinreg.py
svm.py
svm_kernel.py

README.md

learning-from-data-hw

self-study work for caltech's cs156 machine learning course

  • hw1: Basic Probabiliy and Perceptron Learning Algorithm DONE
    • perceptron learning algo coded in pla.py
    • problem-specific classes and definitions in hw1_pla.py
    • actual function calling in hw1.py
  • hw2: Hoeffding Inequality, Error and Noise, Linear Regression, Nonlinear Transformations DONE
    • testing hoeffding inequality with simulated coin flips in hw2_hoeffding.py
    • error and noise in hw2.txt
    • Linear Regression algo in linreg.py, problem-specific classes/defs in hw2_linreg.py
    • working on nonlinear transformations (hw2_nonlinear.py)
    • actual function calling in hw2.py, call with command-line argument "hoeffding","linreg", or "nlt" (w/o quotes)
  • hw3 (hw3.org): Generalization Error, Break Points, Growth Functions, Convex and Non-Convex Sets DONE
  • hw4: Generalization Error, Bias and Variance, VC Dimension (hw4.ipynb) DONE
  • hw5 (hw5.ipynb): Linear Regression Error, Nonlinear Transforms, Gradient Descent, Logistic Regression, Perceptron Learning Algorithm as Stochastic Gradient Descent DONE
    • logistic regression algo found in logreg.py
  • hw6 (hw6.ipynb): Overfitting and Deterministic Noise, Regularization with Weight Decay, Regularization for Polynomials, Neural Networks DONE
    • nonlinear regression algorithm found in hw6_nlt.py
    • course-provided data renamed as hw6_train.dta and hw6_test.dta
    • data loading class found in hw6_dataload.py
  • hw7 (hw7.ipynb) DONE: Validation, Validation Bias, Cross Validation, PLA vs SVM
    • PLA coded in pla.py
    • line and line testing algo (with training and testing sets) in line_class.py and line_test.py
    • SVM coded in svm.py
  • hw8 (hw8.ipynb) DONE: Primal vs Dual Problem, SVM with Soft Margins: Polynomial Kernels, Cross Validation, RBF Kernel
    • data provided for homework from amlbook.com features.train and features.test and renamed here as hw8_train.dta and hw8_test.dta respectively
    • data loaded and filtered by hw8_dataload.py exporting the LF_Data2 class
    • the SVM class I use comes from scikit-learn
  • final