self-study work for caltech's cs156 machine learning course
Jupyter Notebook Python
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
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