身为AI时代的程序员,我们对数据集特别敏感。因此,当我们获得真实数据时,内心充满兴奋和期待。例如,我们得到了一组患者正确药量的数据集,它呈现如下形式:
[数据集的地址:http://bit.ly/quaesita_slkid]
每个数据点包含两部分:输入特征是患者的当前治疗日(Treatment Day),而输出结果是患者在60天疗程内应服用的药物剂量(单位为毫克)。作为AI开发者,我们自然会想到建立一个回归模型,帮助医生根据治疗时长推荐合适的药物剂量。这个过程其实相当简单。
如果我们站在人类的角度应用这些数据,假设有一个病人正处于第2个治疗日,你会如何推荐用药剂量呢?
显然,根据数据集,我们知道正确的剂量是17毫克。同样的,如果是第4个治疗日,推荐剂量则为41毫克。
那么问题来了:在这种情况下,如果采用机器学习方法建立回归模型,是否能更高效、更智能地解决问题?换句话说,当机器学习模型试图学习这些数据模式时,是否会遇到一些预料之外的问题?
答案是否定的。我们可以使用一个简单的“查询表”模型,即根据输入特征查找相应的输出值。在Python中,只需创建一个字典即可实现。需要注意的是,我们只有60天的数据,因此查询表模型的输入必须在60天之内。这不需要复杂的机器学习理论,也不需要建立模型。
那么在什么情况下我们需要使用机器学习呢?
当然,当输入的数据不在训练集中时。例如,如果突然出现一个正处于第61个治疗日的患者,我们该如何应对?
这时查询表模型就无能为力了,因为它从未见过61天这样的情况。那么在这种情况下,我们应该怎么做?抱怨运气不好?胡乱回复一个数字?还是采取其他办法?
没错,机器学习可以帮助我们解决这个问题。
然而,如果输入和输出之间没有任何关联,机器学习也无法提供帮助。面对一堆毫无规律的随机数据,机器学习模型也会束手无策。
但是,如果数据存在一定的规律,并且我们能够找到这种规律,那么机器学习就可以发挥作用。例如,数据集可能在前60天呈现一种模式,而在第61天及以后呈现出另一种模式。在这种情况下,机器学习可以帮助我们预测第61天及以后的用药剂量。
我们需要学习的数据模式必须具备泛化性,也就是说,它们不仅适用于已知数据,还能预测未来数据。如果模型只能对已知数据拟合良好,但在未知数据上表现不佳,那么这样的模型就没有太大价值。
此外,如果数据无法反映未来的情况,或者未来的数据规则与现有数据完全不同(如因瘟疫、地震、战争等原因),那么现有的数据集和模型将无法发挥作用。在这种情况下,即使数据质量很高,机器学习模型也可能频繁出错。
如果数据集中的样本模式具有良好的泛化性,并且能够稳定地反映未来的情况,那么使用机器学习方法将是最佳选择。这时,我们可以尽情利用机器学习技术来发现和应用数据中的模式。无论第61天还是第661天的数据,机器学习都可以为我们提供预测。
当我们提到机器学习时,很多人可能会将其视为一个复杂的东西。为了更好地理解机器学习,我们可以将其视为一个自动决策器,它可以学习数据中的模式,并应用于新数据。如果你不确定机器学习是否适用于你的项目,可以参考以下几篇文章:
回到最初的问题:第61天的患者应该服用多少药物?实际上,这个看似杂乱的数据集背后隐藏着一种稳定的模式。尽管数据形式看起来很奇特,但这也是数据生成的一种方式。对于喜欢挑战的读者,你们可以尝试使用不同的机器学习算法来寻找这种看似随机的数据集中的模式。
如果你愿意,可以在评论区分享你认为第61天应该使用的剂量。
AI科技公司正在招聘科技编辑/记者一名,工作地点在北京或深圳。
职位描述:
任职要求:
有意者请将简历发送至邮箱:cenfeng@leiphone.com。