当前位置: 首页 > news >正文

网站制作免费软件网络广告名词解释

网站制作免费软件,网络广告名词解释,西亚网站建设科技,如何做vip视频网站对于CTR问题,被证明的最有效的提升任务表现的策略是特征组合(Feature Interaction); 两个问题: 如何更好地学习特征组合,进而更加精确地描述数据的特点; 如何更高效的学习特征组合。 DNN局限 :当我们使…

对于CTR问题,被证明的最有效的提升任务表现的策略是特征组合(Feature Interaction);

两个问题:

如何更好地学习特征组合,进而更加精确地描述数据的特点;

如何更高效的学习特征组合。

DNN局限 :当我们使用DNN网络解决推荐问题的时候存在网络参数过于庞大的问题,这是因为在进行特征处理的时候我们需要使用one-hot编码来处理离散特征,这会导致输入的维度猛增。

为了解决DNN参数量过大的局限性,可以采用非常经典的Field思想,将OneHot特征转换为Dense Vector,通过增加全连接层就可以实现高阶的特征组合。

黑色的线 和 红色的线 进行concat

self定义 

deep_features = deep_features
fm_features = fm_features  #稀疏的特征
deep_dims = sum([fea.embed_dim for fea in deep_features])  #8
fm_dims = sum([fea.embed_dim for fea in fm_features])  #368   = 23*16           #稀疏的特征embedding化
linear = LR(fm_dims)  # 1-odrder interaction   低阶信息   (fc): Linear(in_features=368, out_features=1, bias=True)
fm = FM(reduce_sum=True)  # 2-odrder interaction    #FM将一阶特征和二阶特征cancat
embedding = EmbeddingLayer(deep_features + fm_features)
mlp = MLP(deep_dims, **mlp_params)

 forward


input_deep = embedding(x, deep_features, squeeze_dim=True)  #[batch_size, deep_dims]    torch.Size([10, 8])
input_fm = embedding(x, fm_features, squeeze_dim=False)  #[batch_size, num_fields, embed_dim]   torch.Size([10, 23, 16])
y_linear = linear(input_fm.flatten(start_dim=1))  #torch.Size([10, 1])  对应的稀疏特征 经过线性层变为1
y_fm = fm(input_fm)  #torch.Size([10, 1])    #对稀疏特征做一阶 二阶处理 
y_deep = mlp(input_deep)  #[batch_size, 1]  #torch.Size([10, 1])
y = y_linear + y_fm + y_deep          
# return torch.sigmoid(y.squeeze(1))

定义的一些函数: 

import torch.nn as nn
class LR(nn.Module):
    """Logistic Regression Module. It is the one Non-linear 
    transformation for input feature.

    Args:
        input_dim (int): input size of Linear module.
        sigmoid (bool): whether to add sigmoid function before output.

    Shape:
        - Input: `(batch_size, input_dim)`
        - Output: `(batch_size, 1)`
    """

    def __init__(self, input_dim, sigmoid=False):
        super().__init__()
        self.sigmoid = sigmoid
        self.fc = nn.Linear(input_dim, 1, bias=True)

    def forward(self, x):
        if self.sigmoid:
            return torch.sigmoid(self.fc(x))
        else:
            return self.fc(x)
        

class FM(nn.Module):
    """The Factorization Machine module, mentioned in the `DeepFM paper
    <https://arxiv.org/pdf/1703.04247.pdf>`. It is used to learn 2nd-order 
    feature interactions.

    Args:
        reduce_sum (bool): whether to sum in embed_dim (default = `True`).

    Shape:
        - Input: `(batch_size, num_features, embed_dim)`
        - Output: `(batch_size, 1)`` or ``(batch_size, embed_dim)`
    """

    def __init__(self, reduce_sum=True):
        super().__init__()
        self.reduce_sum = reduce_sum

    def forward(self, x):
        square_of_sum = torch.sum(x, dim=1)**2
        sum_of_square = torch.sum(x**2, dim=1)
        ix = square_of_sum - sum_of_square
        if self.reduce_sum:
            ix = torch.sum(ix, dim=1, keepdim=True)
        return 0.5 * ix

参考资料:

推荐系统遇上深度学习(三)--DeepFM模型理论和实践 - 简书 (jianshu.com)

DeepFM (datawhalechina.github.io)

http://www.hkea.cn/news/450095/

相关文章:

  • 网站建设谈单情景对话青岛seo百科
  • 网站做自适应好不好网页分析报告案例
  • 大连手机自适应网站建设公司seo诊断站长
  • 有哪些好的网站十大电商代运营公司
  • 个人网页设计欣赏网站整站优化快速排名
  • 多少钱立案seo 公司
  • 医学类的网站做Google百度怎么优化排名
  • 手机网站怎样做枸橼酸西地那非片的功效与作用
  • 邯郸做wap网站的公司六六seo基础运营第三讲
  • 六安市建设银行网站seo编辑的工作内容
  • seo外包平台福州百度快照优化
  • 橙子建站广告怎么投放竞价网络推广
  • 中国公司查询网站网络公司起名
  • wordpress邮箱内容更改一键关键词优化
  • 楼市最新消息2022年房价走势seo网络推广经理
  • wordpress免费中文企业主题seo权重优化软件
  • 周口网站建设哪家好济南专业seo推广公司
  • 济南网站忧化怎么把抖音关键词做上去
  • 网站建设与维护的题目网站点击软件排名
  • 网站收录服务企业网络的组网方案
  • nba排名灰色词seo排名
  • 如何建自己的个人网站深圳市seo上词多少钱
  • 迎访问中国建设银行网站_永久免费的电销外呼系统
  • 类似AG网站建设网络营销的十大特点
  • 河北盘古做的网站用的什么服务器品牌策划与推广
  • 做网站开发的是不是程序员品牌营销与推广
  • 安卓android软件seo搜索引擎优化方式
  • 网站设计培训课程引流推广平台
  • 做淘宝美工需要知道的网站app软件推广平台
  • 做自己个人网站搜索竞价