竞争无处不在,青春永不言败!专业撸代码,副业修bug

Talk is cheap , show me the code!



ES千人千面推荐系统

借这个项目正好系统学习 ES 与 推荐算法

需求分析

整体架构

落地实现

  • 导入 github 项目,爆红问题
      Failure to transfer org.springframework.boot:spring-boot-starter-parent:pom:2.0.1.RELEASE from https...
      问题是:依赖包下载不下来
    
      解决办法:
    
      在终端下进入项目所在的目录用mvn compile执行即可
    
      或者点击pom.xml,右键,maven install   实在不行加上 -U 参数
    

ES 的学习

  • match 与 term 的区别
       - match 是进行分词后的 每个词匹配的 or
       - term  是不进行分词的 整词精确匹配, 这一点跟 keyword 很像
       GET /movie/_search
      {
        "query":{
          "match":{"title":"steve"}
        }
      }
    
      GET /movie/_search
      {
        "query":{
          "term":{"title":"steve"}
        }
      }
    
    
      GET /movie/_analyze
      {
        "analyzer": "english",
        "field":"title",
        "text":"Frank Li"
      }
    
      analyzer:english / standard =》 默认标准分词解析器只是根据标点符号进行分词, english 可以去掉停用词 with of 这些,并小写
    
     // or 可以改为 and 
     GET /movie/_search
      {
        "query":{
        "match":{
          "title":{
            "query":"basketball good solution available alien",
            "operator": "or"
          }
        }
      }
    }
    
    // 最少匹配分词后两个
    GET /movie/_search
    {
      "query":{
        "match":{
          "title":{
            "query":"basketball with good boy alien",
            "operator": "or",
            "minimum_should_match": 2
          }
        }
      }
    }
    
    GET /movie/_search
    {
      "query": {
        "multi_match": {
          "query": "good boy man love basketball bad news",
          "fields": ["title", "overview"]
        }
      }
    }
    

极其重要的 TF 词频 - IDF 逆文档频率+ TF NORM 词频归一化

推荐系统

ALS  => alternating least squares  交替最小二乘法
posted @ 2020-11-17 15:37  云雾散人  阅读(1747)  评论(0编辑  收藏  举报

Your attitude not your aptitude will determine your altitude!

如果有来生,一个人去远行,看不同的风景,感受生命的活力!