如何定义一个机器学习问题

        今日学习的资料是一个博客的内容,原文是英文的,我把它翻译出来,理顺思路,给自己以及大家一些小的启示。如何定义你的机器学习的问题

         定义一个正确的机器学习的问题,才是你得到正确解的一个前提,是必要条件。

         面对你要求解的问题,可以思考的问题的框架为:

1,这是一个什么样的问题。

首先,有一个定性的理解,可以用非正式的语言来进行描述,大概知道你要求解的问题是什么。

例如:我现在要处理的一个问题是:如何从大量的推文中将噪声推文数据清除,也就是过滤噪声数据。

其次,套用机器学习的套路。对于机器学习而言,有一个Experience E, tasks T, performance measure P。

E代表的是整个实验,要完成的什么事,在例子中为有垃圾文本和有用文本的整个数据集,T代表的主要任务,在此处就是要分类有用,过滤噪声的这个任务,P为度量的指标,在此处可以为准确率,召回率,精确度等。

然后,列出关于问题的一些假设。

对于问题的一些假设,这些假设可能可以帮助我们更快的获得一个域特定信息的解。其实这个就是一个预判的环节,你首先要对问题有的思考,什么对于你的问题可能是一个重要的环节,什么对于你的问题的求解来说,并不是一个主要的作用,其实在求解问题的时候,我们就需要提前进行判定。例如:对于那些推文不正规的表述,一般而言是非新闻数据,也就是噪声数据等假设。

最后,考虑一下相似的问题。

你能看到的,或者想到的相似的问题有哪些,那么可以通过这些相似问题的求解来得到自己问题的相关东西,而且还可以用这些问题的数据来移植,并且用于之后的性能的变化。

比如:推文中垃圾文本过滤是否可以用邮件的垃圾邮件过滤机制来进行处理。

2,为什么这个问题需要被解决

首先,明确解决的动机。

对于我来说,我做这个问题的动机,当然就是顺利毕业,平稳着陆,然后需要在方法上有所创新,也就是不能采用最常用的方法来进行解决,需要采用创新性的新求解思路。一种是新问题老手段,还有一种是老问题新手段的区别。

其次,明确求解的益处。

求解这些问题有什么益处呢?对我来说,还是可以顺利完成论文,顺利毕业啦。

最后,求解的问题可以用于哪方面。

考虑程序的生存期,哈哈,就是他的使用范围呀,对于我的来说,有项目基础,我主要负责的数据预处理这一块,我做的部分会用于之后的事件检测操作等,哈哈,虽然很小一块,但还是很重要的一部分。

3,如何求解问题

首先,明确一点数据怎么来的。

其次,数据怎么存储。

其次,哪些特征是很重要的。

最后,重复一下细节性的问题,写程序(雏形)来求解问题。

猜你喜欢

转载自blog.csdn.net/angela2016/article/details/84135064