{"push_id":1085152439,"size":1,"distinct_size":1,"ref":"refs/heads/parallel-expts","head":"1e9a15c79451105b8c55e01af18dcd7e1b86a9bd","before":"71aa104f7654a69bc5d3f592a7d8213a3411c9df","commits":[{"sha":"1e9a15c79451105b8c55e01af18dcd7e1b86a9bd","author":{"email":"df3cd239cf3b5e0b996b5f6db8b1d2747e06c27b@gmail.com","name":"Kevin Shi"},"message":"Just about finished BuildFitOpts conversion\nFixed most of the supporting code, made almost all the tests run, and fixed the examples. The BuildFitOpts scheme could be readily merged into mainline kroneckerbio.\n\nSome changes that were required:\n- Slightly modified how the old/mainline model+conditions+objectives specification for FitObjective worked. Now, you use the old method with a single model + nCon x 1 col vector of conditions + nCon x nObj matrix of objectives. This enforces the col vector for conditions and transposes the objectives matrix. I think this makes more sense than before.\n- Updated the Objective* functions to use the new scheme. These basically act like they did with FitObject, implicitly converting the mainline kroneckerbio scheme into the updated scheme. Also converted the FiniteObjective* versions.\n- Added an error to the top of FitObject constructor so it's easy to tell if legacy code is used.\n- Documentation throughout.\n- Added basic validation of general fields when calling BuildFitOpts(opts, newopts). This makes sure added fields are valid. However, you can still hack in arbitrary fields by just calling opts.(key) = val.\n- Removed testing scripts and moved functionality into unit tests. Changed UT19 to refer to new scheme.\n\nFixed a bug in updateAllActiveParameters so that it properly updates params over the existing params in models and conditions. In the last couple commits, it just replaced all params with the stuff from Theta, missing existing nonzero params not being fit.\n\nFixed a bug in ConvertFitOpts that incorrectly set the default rate params in the model to fit.\n\nSome notes:\n- ObjectiveProbability and ObjectiveLogLikelhood give kind of strange results when using observationLinearWeightedSumOfSquares. The results in this commit are the same as the ones in mainline kroneckerbio.\n- Removed specifying a vector of models in the old way of using FitObjective (used for topology probabiliy calculation and optimization). Workaround is to just use the new way. May consider readding it.","distinct":true,"url":"https://api.github.com/repos/xpspectre/kroneckerbio/commits/1e9a15c79451105b8c55e01af18dcd7e1b86a9bd"}]}