我们和大家分享了哪些问题适合于用机器学习来解决。在明确了问题之后我们就需要来解决问题,本文要描述的是产品经理在开发机器学习产品时所需要的能力。
第一部分提到产品经理的核心能力并不会因为应用到机器学习技术而改变,而只是在某些方面需要有所加强。产品经理一般需要五种核心能力,包括客户共情/设计分解,沟通、合作、商业策略和技术理解力。在机器学习领域需要增强的可能是技术方面的理解能力,因为产品经理需要理解机器学习系统的操作才能做出较好的产品决策。你可以向工程师学习也可以通过书本和网络教程充电。但如果你对机器学习系统的运行没有很好的理解,那么你的产品很可能会遇到很多问题。
算法的局限性
机器学习使用的每一个算法都基于特定的任务进行优化,无法覆盖真实情况下每一个细微的差别。理解算法的能力和局限将会帮助你把握住用户体验中存在的差距,并且通过优化产品设计或算法来解决。这是作为产品经理必须要掌握的能力。关于算法的不足我们用几个例子来说明。
数据中的偏差
机器学习算法从数据中学习模式,所以数据的质量决定了算法的表现。机器学习产品需要面对的第一个挑战便是这些数据要能够充分代表你的用户。有一个很负面的例子,就是google将黑人兄弟识别成了大猩猩。
所以保证数据代表你所有的用户是产品成功的关键。有时候偏差的存在并不是来自于数据收集的错误,而是数据固有的特性。就像IBM沃森利用俚语的都市字典进行训练后会输出恶毒的语言一样。我们期待的是输出礼貌的语言,但机器学习却学到了语言集中不好的部分。所以在精训练的时候需要对数据进行一定的清晰。
另一个例子,一般发达国家的互联网人数相较于发展中国家多。如果你基于搜索次数对搜索习惯进行建模的话,就会得到发达国家更多的结果,那么建模就不能准确的反映各国人民的上网习惯了,例如非洲的用户。对于数据偏差的审视将帮助你意识到产品不希望出现的用户体验。
精度和召回率的权衡
例如两个团队利用相同的预测产品预测有害行为,但团队的目标却各不相同。一个团队仅仅想要识别出有害行为的人,而不管行为良好的人,他们希望每个良好行为的人都来用这个产品,所以精度对于这个团队就十分重要。而另一个各团队则仅仅只让行为良好的人使用,即使限制了少数行为良好的人也在所不辞,所以他们更注重的是召回率。精确率和召回率是两个此消彼长的指标。你需要针对用户需求的实际情况来确定有限考虑哪一个指标。下面的曲线反应了召回率和精度的关系。
根据不同的问题,可以通过调节是的模型具有不同的召回率和精度分布。同时使用不同类型的模型也可以改变曲线的分布情况。
冷启动
冷启动是来自于汽车发动机的一个术语,发动机需要预热后才能达到较好的表现。这对于机器学习来说也是一样的,当机器学习面对新用户或者新数据时也需要一个预热过程来达到较优的表现。
从用户出发:这样的情况一般发生在新用户第一次使用产品的时候,模型对于用户还没有任何的了解。例如网站一般都能像用户推荐一些喜欢的内容,但第一次使用网站时网站并不知知道你的喜好所以算法很难给出个性化的推荐。这样的情况一般通过下面三种方法解决:
1.给用户从随机推荐的数据中做出预先的偏好选项;
2.根据地理位置等基本信息为用户分类,并基于人群偏好给出推荐;
3.用户手动设置自己的偏好类型。
从实例出发:这样的情况一般发生在某个新产品第一次上线的时候,例如商品、电影等。例如Netflix上新上线的电影很难做出向哪类用户推荐的选择,特别是在电影元数据缺失的情况下。和用户出发的解决方式相同,主要有两种方法:
1.人工标注,请专家分类并补充电影元数据,这样就能想匹配的人群推荐;
2.基于算法,用算法记录对新产品感兴趣的用户,并根据这些信息不断收缩用户范围。
反馈闭环
由于算法并不完美,可能会得出错误的预测或者识别结果。这就需要我们为产品设计一种反馈机制来对算法提供反馈,这样就可以使得算法随着时间不断改进。反馈的形式多种多样,可以简单的记录下负样本的信号,例如记录下用户滚动页面的速度或者阅读停留时长。更为精确的方法是设计在算法失效的时候让用户主动介入的机制,例如给出差评或者忽略预测,当算法给出好结果时给予好评。
充分利用/探索新世界
我们用信息分发推荐业务作为例子。如果网站算法发现我比较喜欢足球,那么在给我推荐电影或者相关文章的时候就会主要推荐与足球相关的内容。这时候网站就充分利用了我喜欢足球这一特征,不断的给我推荐相关内容。但这种方式的弊端在于,我还有其他感兴趣的内容,但算法把我和他们隔绝开来了。大家可能还记得以前新闻app总是给你推荐看过内容类似的新闻,甚至有时候负新闻不绝于耳,这意味着算法出现了较大的偏差,这样的filter bubble在媒体行业中很常见。
那么为了解决这一状况需要给用户以探索新内容的机会,给用户周期性的呈现随机的探索内容,并根据用户的喜好来纠正用户偏好模型。
以上对于算法局限性的阐述并不完全,由于新的算法不断产生,可能会不断产生新的问题。我们如何才能发现算法的这些问题和局限呢?下面为产品经理总结了三个有用的tips:
1.为工程师团队提供清晰的用户使用场景。与工程师团队一起讨论,并让他们明白期待的用户体验是什么样的。用户样例不仅需要包含主要和次要的用户,更需要包括反面用户。当模型准备好后,需要针对这些用户样例进行评估。
2.关注数据的收集过程。对数据的清洗和组织方式保持清醒,并确保数据能够代表你的用户。
3.利用产品方案缩小差距。如果模型达不到期望的数据,我们需要考察是否能够改进模型的能力,或者用新的用户样例增强模型的表示,随后创建新的产品解决方案来弥补这一差距。
-
机器学习
+关注
关注
66文章
8408浏览量
132568
原文标题:想要参与开发一款机器学习产品,你需要get哪些技能?
文章出处:【微信号:thejiangmen,微信公众号:将门创投】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论