很抱歉问这个幼稚的问题,但作为一个绝对的 MATLAB 新手,我真的被困住了。
以下是我正在尝试做的事情。我有一个以掷硬币结果作为输入的模型:
function randomness = benHMMN(flips,rep,prior) % defined later
flips = csvread('flips.csv')
在右侧,“翻转”是从文件中读取的掷硬币结果,而“rep”和“prior”是我要查找其值的两个参数。该函数输出所有掷硬币的随机性评估,这是一个包含 256 个元素的列向量。
csvread('judgement.csv')
同时,我让人类评估同一组结果,他们的响应存储在另一个包含 256 个元素的列向量中。(请注意,人类判断这些结果的非随机性而不是随机性。)
我希望最小化两个向量之间的相关性。
corr(randomness, judgment)
在抽象层面上,我想解决方案看起来像这样:
function correlation = corr(randomness, judgment)
[...,fval] = fminsearch(@corr, ...)
但是,参数不是我想要拟合的直接参数('rep' 和 'prior'),而是包含它们的函数。当参数中没有明确显示“rep”和“prior”时,我不知道如何使用 fminsearch 或其他方法来查找它们。我将衷心感谢您的帮助!