Machine learning 如何在ML问题上计算概率而不是实际分类

Machine learning 如何在ML问题上计算概率而不是实际分类,machine-learning,classification,regression,Machine Learning,Classification,Regression,假设我们有几个数据点可以用作训练集。每行由4列(特征)组成,这些列采用布尔值。第5列表示类,它还接受布尔值。以下是一个示例(它们几乎是随机的): 现在,我想做的是建立一个模型,这样对于任何给定的输入(新行),系统不会返回类本身(就像在常规分类问题中),而是返回这个特定输入属于类0或类1的概率。我该怎么做?此外,如何生成与该计算相关的置信区间或错误率?并非所有分类算法都返回概率,因为并非所有分类算法都有潜在的概率模型。例如,分类树只是一组规则,您可以按照这些规则将每个新输入分配给特定的类 具有潜在

假设我们有几个数据点可以用作训练集。每行由4列(特征)组成,这些列采用布尔值。第5列表示类,它还接受布尔值。以下是一个示例(它们几乎是随机的):


现在,我想做的是建立一个模型,这样对于任何给定的输入(新行),系统不会返回类本身(就像在常规分类问题中),而是返回这个特定输入属于类0或类1的概率。我该怎么做?此外,如何生成与该计算相关的置信区间或错误率?

并非所有分类算法都返回概率,因为并非所有分类算法都有潜在的概率模型。例如,分类树只是一组规则,您可以按照这些规则将每个新输入分配给特定的类

具有潜在概率模型的分类算法的一个例子是逻辑回归。在该算法中,特定输入
x
在类中的概率为

prob = 1 / (1 + exp( -theta * x ))
其中θ是与
x
具有相同维数的系数向量。通常,要从概率转移到分类,只需设置阈值即可,例如

if prob < 0.5
  return 0;
else
  return 1;
end
如果prob<0.5
返回0;
其他的
返回1;
结束
其他分类算法可能具有概率解释,例如,随机森林本质上是一种具有多个分类树的投票算法。如果80%的树投票给类1,20%的树投票给类2,那么您可以输出80%的概率成为类1。但这是模型工作方式的副作用,而不是明确的潜在概率模型

if prob < 0.5
  return 0;
else
  return 1;
end