PM 要求同时支持机器学习生成的标签和用户自定义的标签,如何和平相处?

2019-09-16 17:21:28 +08:00
 random0O

我们是做照片管理 App 的。公司有自己的 ML pipeline,给一张图能吐至少一百个标签出来,每个标签有可信度和主题相关度的数据。标签自身是公司内部的知识图谱中的节点,所以互相之间有层级关系 (食物->年糕->韩式炒年糕)。

我收到的需求是既要利用 ML 的标签,又要允许用户自己给照片标注,还希望能自动合并两种标签。比如用户标了几张图片是狗,ML 判定有狗的图片也会被归在一处。

目前我的疑惑是,我怎么知道用户的狗和 ML 的狗是一种东西?不可能依靠字符串匹配吧...

想法 1 )只使用顶级标签(食物,交通工具;而不是年糕,捷安特),用户创建的时候给他个自动补全,如果用户执意不选自动补全给出的狗标签,那就认为用户的狗和 ML 的狗不一样

想法 2 )直接告诉 PM 没戏,合并不了,只能并存

3755 次点击
所在节点    机器学习
7 条回复
leo108
2019-09-16 17:48:01 +08:00
「不可能依靠字符串匹配吧」为什么不能?
即使你的 ML 已经打了一个『狗』的标签,用户硬要再打一个『小狗』的标签也没有任何问题啊。
TimePPT
2019-09-16 18:19:35 +08:00
做过 UGC 社区搜索推荐的 PM,给几个有用的建议吧:

1. 用户自定义的 tag 和用于聚类推荐的 tag 做分离!
千万不要直接用于生产环境做聚类!
最差的情况也是离线清洗后重新上线。

2. 对于 1 中需清洗的 tag,人工界定分类层级,人工对应,高级点的你做个 ML 聚类,知识图谱,词向量相似度之类的做辅助判断。当然,还要判断和图片主题真正的内容契合度。具体不展开说了,方法很多。

3. 用户打 tag 时建议首先给出 suggestion tag,引导用户先 focus 到你给到的 tag

4. 限制用户 tag 数量,潜意识让用户谨慎选择。
TimePPT
2019-09-16 18:21:14 +08:00
另,纯表层字符串匹配不靠谱
最简单的,你打个 tag 是「狗」,用户打个 tag 是「柯基」,文本相似度搞不定。
zhchyu999
2019-09-16 18:22:28 +08:00
看成如何和 PM 和平相处
TimePPT
2019-09-16 18:29:53 +08:00
@TimePPT 再补充下,前面说的分离原则是指能够全平台共享使用的 tag,对用户自建的 tag,在用户的图片库内做同 tag 聚合是没问题的,比如用户对自己上传的狗都打一个 tag 「我家旺财」,点击聚类所有有这个 tag 的用户自有图片没啥问题。
但这个 tag 一定别直接用到公共领域,能玩死你。
有些用户就真得很闲,tag 写个「 123 」,甚至狗图片打个「猫」 tag,各种匪夷所思,防不胜防
random0O
2019-09-16 18:56:18 +08:00
@TimePPT 多谢多谢。我也是觉得 ml 的 tag 和用户自己的 tag 分别对待实现起来方便一些(如果可能的话)。tag 清洗的确也是个问题,我们的知识图谱非常大,就算是只局限于有足够图片数据能 train 出分类器的节点也是无法人工操作的量级,而且整个系统还在 grow,不断会有新 tag 被加进来,我们怎么跟进也得考虑
TimePPT
2019-09-16 19:27:18 +08:00
@random0O 嗯,这是个坑,一定要说服 PM 别搞缺心眼的策略 😂

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/601234

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX