Cognitivemodels
An R software package to write, train, tune, test, and compare machine-learning models of cognition
Install / Use
/learn @JanaJarecki/CognitivemodelsREADME
<img src="man/figures/logo_inverted.png" align="right" />
The cognitivemodels package offers a user-friendly collection of machine-learning algorithms to train and test models of human learning, behavior, and cognition.
- Its syntax uses a formula interface resembling the
aov(y ~ x)- orlm(y ~ x)-syntax. - The models can be fit to data by maximum likelihood, minimum MSE, and other fit measures
- Chose optimization routines like rsolnp or Nelder-Mead, among others
- Also, the package provides a model development back end, i.e. a class to develop new cognitive models easily
News
You can see the latest package version's new features in NEWS.
Algorithms
Find a list of the cognitive machine-learning algorithms in this package under MODELS. You can use them for forecasting individual-based decisions about risks and about probabilities, modeling and predicting customer and consumer preferences, analyzing human learning based on prior information, and person-specific utilities.
Installing this Package
To use this package, ensure that you have a working installation of R and the Rcpp package, install.packages("Rcpp"), for help with problems see Installation Troubleshooting
Installation
library(devtools)
install.packages("matlib")
install.packages("Rcpp")
# Restart the R session after installing matlib!
devtools::install_github("janajarecki/cognitivemodels")
You will see a prompt Do you want to install from sources the packages which need compilation?, please type Yes into the console.
Using the package
To use the package, run:
library(cognitivemodels)
Installation of the latest version
(Optional) This installs the newest version (development version) of this package:
devtools::install_github("janajarecki/cognitivemodels" ref = "development")
Getting Started with Behavior Modeling
You can read a quick introduction to how the algorithms in this package work in the ICCM article; and you can go through an example code below.
Example. Let's fit data from a supervised categorization task and use the trained model to predict categorizations.
Background. The categorization task had people learn to categorize many lines that differed in two features (size and tilting angle) into two categories, providing feedback about the true category (Nosofsky, 1989). The collected data can be loaded ba running data(nosofsky1989long). Let's model data in one condition from this data set called "size".
Code. The syntax below loads the data and sets up the model, it is explained below the code.
# Use the 'size' condition in the data
data(nosofsky1989long)
DT <- nosofsky1989long
DT <- DT[DT$condition=="size", ]
D <- DT[!is.na(DT$true_cat), ]
# Fit the model to the data D
model <- gcm(
formula = response ~ angle + size,
class = ~ true_cat,
data = D,
choicerule = "none")
# Make a prediction
predict(model)
Installation Troubleshooting
Below find some messages during the installation and how to troubleshoot them:
- Error:
Failed to install 'cognitivemodels' from GitHub: Could not find tools necessary to compile a package Callpkgbuild::check_build_tools(debug = TRUE)to diagnose the problem.Solution: In R, you must runoptions(buildtools.check = function(action) TRUE )to solve the problem, more details see here - Error:
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at:Solution You need to install xcode which you do on Mac by opening the terminal and runningxcode-select --installto install the command lines tools package more details on stackoverflow
Authors
Jana B. Jarecki,
Florian I. Seitz
License
This project is licensed under CC-By Attribution 4.0 International
Related Skills
YC-Killer
2.7kA library of enterprise-grade AI agents designed to democratize artificial intelligence and provide free, open-source alternatives to overvalued Y Combinator startups. If you are excited about democratizing AI access & AI agents, please star ⭐️ this repository and use the link in the readme to join our open source AI research team.
best-practices-researcher
The most comprehensive Claude Code skills registry | Web Search: https://skills-registry-web.vercel.app
groundhog
399Groundhog's primary purpose is to teach people how Cursor and all these other coding agents work under the hood. If you understand how these coding assistants work from first principles, then you can drive these tools harder (or perhaps make your own!).
last30days-skill
18.7kAI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymarket, and the web - then synthesizes a grounded summary
