V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Livid
267.72D
569.1D

关于 V2EX 新的自动打标签功能

  •  1
     
  •   Livid ·
    PRO
    · Jan 14, 2014 · 21483 views
    This topic created in 4491 days ago, the information mentioned may be changed or developed.
    现在在 V2EX 每个主题的右下角,多了一个新的自动打标签功能,及相关的聚合页面。

    这是基于 jieba 做的。目前的效果在某些主题上还是不太理想,接下来会继续优化。

    大家如果有什么好的思路,或者好的词典,还请多多赐教,谢谢。
    Supplement 1  ·  Jan 14, 2014
    extract tags 部分已经被挪到一个独立的进程运行,通过异步方式调用。

    现在 V2EX 在部署新代码的时候不会再因为等待 jieba 启动而产生 HTTP 5xx 错误了。
    71 replies    1970-01-01 08:00:00 +08:00
    meteor2013
        1
    meteor2013  
       Jan 14, 2014
    是不是要回复好几个贴才会出现标签?
    只有主题就不会出现?
    Livid
        2
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    @meteor2013 主题第二次 load 的时候就会有标签。
    kstsca
        3
    kstsca  
       Jan 14, 2014
    @Livid 样式不怎么好看,建议给他加个框框,箭头那种。
    Livid
        4
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    @kstsca 貌似是因为 CSS 没有更新。我马上解决这个问题。

    你可以先试试刷新。
    meteor2013
        5
    meteor2013  
       Jan 14, 2014
    jieba是中文分词,有没有英文的分词的打标签的东东?
    Livid
        6
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    一个副作用就是,由于初始化过程比较慢,每次我们部署完新代码之后,你可能会看到大概 5 秒的 Bad Gateway 500。
    meteor2013
        7
    meteor2013  
       Jan 14, 2014
    @Livid 第二次load已经看到标签了,但是这个标签要是可以根据大家的回复,还有回复内容的频率改变就牛逼了。
    botao1
        8
    botao1  
       Jan 14, 2014
    @Livid 样式再微调一下吧,现在每个标签之间没有margin : )
    Livid
        9
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    @botao1 请刷新一下浏览器。
    est
        10
    est  
       Jan 14, 2014
    @Livid 不如可以针对用户 id 打标签。我觉得很有意思啊。。哈哈。比如某某谁吹过牛,招过人,创过页,做过什么东西,看tag一下子就知道了。
    botao1
        11
    botao1  
       Jan 14, 2014
    @Livid OK 刷新了一下好多了,赞!
    不过感觉圆角背景和标签图标的颜色对比度稍嫌低,还可以再大一点点
    gotounix
        12
    gotounix  
       Jan 14, 2014
    很赞的功能啊!大爱!!!
    Livid
        13
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    @est 这个是可以根据目前的数据算出来的:

    Member -> Topics -> Tags

    接下来会有这个功能:根据每个人发的帖子生成的标签云。
    Livid
        14
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    接下来还可以有的几件好玩的事情:

    * 构建一个所有单词的标准拼写库,比如 v2ex -> V2EX,ssl -> SSL,simcity -> SimCity
    * 挖掘一下数据量更大的回复数据
    westy
        15
    westy  
       Jan 14, 2014
    标签位置很奇怪,会让人觉得是评论的标签。
    Livid
        16
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    @westy 从逻辑上来说确实有点问题。但是放到第一个卡片里的任何位置都别扭…
    qiayue
        17
    qiayue  
    PRO
       Jan 14, 2014
    发现一个小 BUG ,重复标签
    /t/96719 两次“框架”
    Livid
        18
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    @qiayue 多谢反馈!现在马上检查。
    botao1
        19
    botao1  
       Jan 14, 2014   ❤️ 1
    @Livid @westy
    我觉得同样作为作为元数据,可以放在第一个卡片标题下 “By Livid” 和 “27 分钟前 · 537 次点击” 之间,或者 “27 分钟前 · 537 次点击” 之后。

    目前的位置,会觉得这些标签跟回复有直接联系~
    mkeith
        20
    mkeith  
       Jan 14, 2014
    标签和主题放到一起吧,和回复在一起怪怪的啊。
    xiaojay
        21
    xiaojay  
       Jan 14, 2014
    分词 然后用 TF-IDF ?
    Livid
        22
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    @botao1
    @mkeith 请相信设计师的直觉。:-)
    hzlzh
        23
    hzlzh  
    PRO
       Jan 14, 2014
    @Livid 墙裂的需要大小写规范化单词
    nemoliu
        24
    nemoliu  
       Jan 14, 2014
    能介绍一下计算的过程么?对标题分词然后根据tf-idf做关键词提取?
    FarBox
        26
    FarBox  
       Jan 14, 2014   ❤️ 1
    中文词典应该都是接近的。如果有更好的,同求。 :)

    我们原来有尝试用jieba+mongodb做全文检索,但试了下,性能很糟糕,没有办法用在生产环境。

    最后选择用ElasticSearch作为纯粹的分词+索引的中间库,也算一种奇葩的用法;不过效果还挺不错的。
    dorentus
        27
    dorentus  
       Jan 14, 2014   ❤️ 2

    放这个位置不也挺好的么……
    mopig
        28
    mopig  
       Jan 14, 2014   ❤️ 1
    http://v2ex.com/tag/tooyoung
    不存在的 tag 会报错~
    Superoutman
        29
    Superoutman  
    PRO
       Jan 14, 2014
    非常赞同19楼 @botao1 的提议。
    ryon
        30
    ryon  
       Jan 14, 2014
    tag和节点会不会有一定的重复?我们在设计的过程中也考虑过类似的问题,后来最终考虑还是采用节点,相比之下自动计算出来的tag可能很多情况下利用率不高。
    huafang
        31
    huafang  
       Jan 14, 2014
    @ryon wecenter 新版不错,我一直在期待
    mactaew
        32
    mactaew  
       Jan 14, 2014
    @Livid 分词略有问题。
    ayukun
        33
    ayukun  
       Jan 14, 2014
    和27楼想到一块了,放那里就挺好,还容易看见 ,刚刚找这个主题的表情费了好一会。可以考虑加淡彩
    meteor2013
        34
    meteor2013  
       Jan 14, 2014 via iPhone
    目前在iPhone 上看不到标签
    dorentus
        35
    dorentus  
       Jan 14, 2014
    @ayukun
    我明白了,自己的帖子,功能按钮,例如「追加内容」目前是放在那个位置的……
    所以 Livid 才一开始就没考虑把 tag 放在那里吧
    Livid
        36
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    @dorentus 对,在一个主题刚发布的前 300 秒,那里会有 MOVE 和 EDIT 按钮。1800 秒之后,会有 APPEND 按钮。
    Livid
        37
    Livid  
    MOD
    OP
    PRO
       Jan 14, 2014
    @mopig 谢谢,这个问题已经解决。
    xiaop
        38
    xiaop  
       Jan 14, 2014
    tag这个功能非常棒!如果能对tag做归类就更棒了
    ayang23
        39
    ayang23  
       Jan 14, 2014
    jieba启动慢,费内存,貌似要在每个django线程里加载一份词典,简单的不如用mmseg
    Mihuwa
        40
    Mihuwa  
       Jan 14, 2014
    很赞的功能。
    SkyTodInfi
        41
    SkyTodInfi  
       Jan 14, 2014
    @livid 可以考虑有一个特定的标签库,毕竟tf-idf算出来的词比较杂乱,甚至一些是没有意义的

    或者选定一些topic,包含一些特定的词语,文本只用jieba分词,打标签使用文本和topic之间的向量空间模型.
    wwqgtxx
        42
    wwqgtxx  
       Jan 14, 2014 via Android
    移动平台呢?
    cbsw
        43
    cbsw  
       Jan 14, 2014
    需要对一些特殊情况专门处理吧,比如 http://www.v2ex.com/t/96764#reply12 这里内容几乎就是代码, tag 分析出来的只有 print,outer,local 这些没啥意义的词(PS:V2EX 内部链接是怎么写的来着?)
    Sunya
        44
    Sunya  
       Jan 14, 2014
    放 点击 收藏 那个 topic_buttons 区域会好点, 这样看起来会更让人觉得跟主题相关.

    标签用自定义+分词相结合的会不会更好一点. 有些词未必已经收录了.
    xiaop
        45
    xiaop  
       Jan 14, 2014 via iPad
    @SkyTodInfi 赞同
    gihnius
        46
    gihnius  
       Jan 14, 2014
    觉得对主题内容做 tag 已经没有什么意义,因为可以 google.
    而且, 打开 tag 之后你会看到很多看过的内容.

    最好能对用户做 tag, 当然也是基于用户的内容, 这样其它用户可以根据某个用户的 tag 决定是否关注这个用户的内容.
    mozii
        47
    mozii  
       Jan 14, 2014
    @Livid dorentus 赞设计师的直觉。补充个理由:需要变迁基本会是在看完这篇帖子之后,所以出现在末尾是恰当的,标签相当于对该帖子的延伸、补充、互动(这岂不就是回复的实质?),从此点来看,放在回复的这个卡片里,在人们需要的时候进入视野,是好的设计。
    mozii
        48
    mozii  
       Jan 14, 2014
    变迁 == 标签
    ipconfiger
        49
    ipconfiger  
       Jan 14, 2014
    @Livid
    --------------------------
    一个副作用就是,由于初始化过程比较慢,每次我们部署完新代码之后,你可能会看到大概 5 秒的 Bad Gateway 500。
    --------------------------
    这个应该是可以避免的吧
    runninghack
        50
    runninghack  
       Jan 14, 2014
    可以分享一下词库和停词表吗?
    rwx
        51
    rwx  
       Jan 14, 2014
    类似首页的「最热节点」一样,放在屏幕的右侧,比如用户数据的下面,做成标签云
    还能防止某个主题标签过多把样式撑破
    run2
        52
    run2  
       Jan 14, 2014
    会提供关注某些tag的功能么?
    /tag/iOS
    isaced
        53
    isaced  
       Jan 14, 2014
    赞同27楼的换个位置~
    xdata
        54
    xdata  
       Jan 14, 2014
    标签能显示与该标签相关联的标签,按数量或拼写排序,并多重过滤么?
    mimzy
        55
    mimzy  
       Jan 14, 2014
    没有回复的主题标签样式不太一样:


    mopig
        56
    mopig  
       Jan 14, 2014
    分词有硬伤啊~

    xiaojay
        57
    xiaojay  
       Jan 14, 2014 via iPhone
    期待根据tag来block
    run2
        58
    run2  
       Jan 14, 2014
    http://www.v2ex.com/tag/Mavericks

    @Livid tag里面的帖子排序有点奇怪
    Seita
        59
    Seita  
       Jan 14, 2014
    tag 页 不分页?
    xiaoyustudio
        60
    xiaoyustudio  
       Jan 14, 2014
    传完图发现跟 27 楼想到一块去了...
    Perry
        61
    Perry  
       Jan 14, 2014
    我不得不说这个功能真的好给力!
    Tianpu
        62
    Tianpu  
       Jan 14, 2014
    觉得自动分的标签一点不好 还不如不分 虽然没有更好的思路

    相信用户 让用户自己输入标签呢?
    geeklian
        63
    geeklian  
       Jan 14, 2014
    建议取消二手市场的tag...
    我关注ipad,关注kindle,结果看到的都是二手的...
    faceair
        64
    faceair  
       Jan 14, 2014
    jiangrongyong
        65
    jiangrongyong  
       Jan 15, 2014
    根据之前的理解,Topic和Tag应该是多对一的关系吧?现在是多对多么?
    caomu
        66
    caomu  
       Jan 15, 2014
    关于用户来打标签,可以扣财富值来打。
    具体点,lz可以花100铜换掉一个已有的tag。然后,自动生成tag时,如果算出的关联度不高,就不要默认3个了(有时候就会出现不太对应的),这时候,如果tag没有满,那么其他会员可以用500铜打上个新tag。
    ong
        67
    ong  
       Jan 15, 2014
    非常酷!Great Job!
    xdata
        68
    xdata  
       Jan 15, 2014
    话说 macbook air 与 ipad air 都被打上了air ...
    ling0322
        69
    ling0322  
       Jan 18, 2014 via Android
    @Livid 有没有想过用主题模型,这个感觉效果要比关键字好呢
    Reset
        70
    Reset  
       Jan 19, 2014
    @Livid
    发现 如果访问不存在的标签会抛出异常
    比如 /tag/手机
    blakefan
        71
    blakefan  
       Mar 4, 2014
    这个功能主要就为新手设置的,觉得很好!
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2128 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 145ms · UTC 00:33 · PVG 08:33 · LAX 17:33 · JFK 20:33
    ♥ Do have faith in what you're doing.