ThisMatlabpackageimplementsmachinelearningalgorithmsdescribedinthegreattextbook:PatternRecognitionandMachineLearningbyC.Bishop(PRML).
ItiswrittenpurelyinMatlablanguage.Itisself-contained.Thereisnoexternaldependency.
Note:thispackagerequiresMatlabR2016borlatter,sinceitutilizesanewMatlabsyntaxcalledImplicitexpansion(a.k.a.broadcasting).ItalsorequiresStatisticsToolbox(forsomesimplerandomnumbergenerator)andImageProcessingToolbox(forreadingimagedata).
DesignGoalSuccinct:Thecodeisextremelycompact.Minimizingcodelengthisamajorgoal.Asaresult,thecoreofthealgorithmscanbeeasilyspotted.Efficient:ManytricksforspeedingupMatlabcodeareapplied(e.g.vectorization,matrixfactorization,etc.).Usually,functionsinthispackageareordersfasterthanMatlabbuiltinones(e.g.kmeans).Robust:Manytricksfornumericalstabilityareapplied,suchascomputingprobabilityinlogrithmdomain,squarerootmatrixupdatetoenforcematrixsymmetry\PD,etc.Readable:Thecodeisheavilycommented.CorrespondingformulasinPRMLareannoted.Symbolsareinsyncwiththebook.Practical:Thepackageisnotonlyreadable,butalsomeanttobeeasilyusedandmodifiedtofacilitateMLresearch.Manyfunctionsinthispackagearealreadywidelyused(seeMatlabfileexchange).InstallationDownloadthepackagetoalocalfolder(e.g.~/PRMLT/)byrunning:gitclonehttps://github.com/PRML/PRMLT.gitRunMatlabandnavigatetothefolder(~/PRMLT/),thenruntheinit.mscript.
Runsomedemosin~/PRMLT/demofolder.Enjoy!
FeedBackIfyoufindanybugorhaveanysuggestion,pleasedofileissues.Iamgracefulforanyfeedbackandwilldomybesttoimprovethispackage.
LicenseReleasedunderMITlicense
Contactsth4nthatgmaildotcom
评论