晴晴.
码龄9年
关注
提问 私信
  • 博客:15,534
    社区:1
    15,535
    总访问量
  • 45
    原创
  • 927,865
    排名
  • 3
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
  • 加入CSDN时间: 2015-11-01
博客简介:

chizhonghang的博客

查看详细资料
个人成就
  • 获得2次点赞
  • 内容获得3次评论
  • 获得28次收藏
创作历程
  • 3篇
    2021年
  • 50篇
    2020年
成就勋章
TA的专栏
  • 推荐系统
    3篇
  • 深度学习
    3篇
  • leetcode随笔
    41篇
  • web前端
    5篇
  • lodash源码分析
    1篇
兴趣领域 设置
  • 大数据
    flink
  • 人工智能
    opencv语音识别计算机视觉机器学习深度学习神经网络自然语言处理tensorflowpytorch图像处理nlp数据分析
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

175人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

esl-erlang_22.1-1_ubuntu_xenial_amd64.deb

发布资源 2021.04.24 ·
deb

推荐算法模型 ----- Attentional Factorization Machines 论文阅读笔记

论文名字:Attentional Factorization Machines:Learning the Weight of Feature Interactions via Attention Network论文地址:http://staff.ustc.edu.cn/~hexn/papers/ijcai17-afm.pdfAFM模型提出的目的和背景
原创
发布博客 2021.02.22 ·
474 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

阿里妈妈 Deep Interest Network 论文总结

最近刚刚读了盖坤团队大佬的DIN,收获颇多,在此总结一下论文名称:Deep Interest Network for Click-Through Rate Prediction论文地址:Deep Interest Network for Click-Through Rate PredictionDIN提出的背景和目的2018年8月,盖坤大神提出了Deep Interest Network。阿里认为,目前很火热的Embeddng&MLP类模型中,为了更好的训练模型,阿里认为传统的embed.
原创
发布博客 2021.02.08 ·
406 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

华为AutoFIS模型总结

最近读了一些SIGKDD的论文,在这里做一个简单的总结,有错误的地方还请各位dalao指点提出的目的和背景华为在2020kdd上提出了新的CTR预估方法。华为指出,很多CTR预估算法都需要进行特征组合,但是传统的特征组合方式都是简单的暴力组合或者人工选择,人工选择的方式依赖于先验知识,而简单的暴力组合其实对模型的性能的提升并不是总有益的,有些组合方式其实对模型的性能提升并没有多少的帮助,甚至会损害模型的性能,而且大量无效的特征组合会形成很多的参数,降低内存的利用率,那么到底如何选择特征组合呢?根据最.
原创
发布博客 2021.01.28 ·
1176 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

2019 最新斯坦福CS224n课件.rar

发布资源 2020.08.14 ·
rar

Sequence to Sequence Learning with Neural Networks 论文内容介绍

论文地址:传送门1.Introduction这篇论文是2014年Google团队提出的一篇论文,当时DNN非常流行,对于语音识别等任务的效果也非常不错,但是DNN是有限制的。比如做MT任务等等,这些序列任务其实对于输出来讲,长度的可变的,例如:English译为“英语”,实际上序列的长度发生了变化,传统的DNN是解决不了这个问题的,于是Google团队提出了seq-to-seq模型的概念。作者选择WMT’14的数据集和英语译为法语的翻译任务为例,将最后的结果和当时SMT的模型做对比,结果基于LSTM的
原创
发布博客 2020.08.05 ·
438 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

LeetCode 116. 填充每个节点的下一个右侧节点指针

116. 填充每个节点的下一个右侧节点指针解题思路:首先,这道题如果使用BFS很快就能AC,思路就是,使用队列存储每一层的节点,并用一个变量存储相应的层次,但是这样做的话,就违反了题目的 O(1)O(1)O(1) 的要求但是观察题目不难发现,这是个完美二叉树,既每个双亲节点都有两个孩子节点,而且如果某一层N已经链接完毕,则这一层的所有节点相当于一个链表,我们可以利用N层的节点来对N+1层进行处理,我们发现只有两类节点需要处理,既两个节点来自同一个父节点,以及两个节点来自不同父节点。情况1(来
原创
发布博客 2020.07.01 ·
116 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Keras实现LeNet-5 对mnist数据集进行识别

记录一下keras代码学习过程,LeNet-5的网络结构就不在这里叙述了,推荐知乎一位大神的讲解:https://zhuanlan.zhihu.com/p/74176427.代码:import numpy as npimport matplotlib.pyplot as pltfrom keras.datasets import mnistfrom keras.models import Sequentialfrom keras.layers import Flatten, Dense, C.
原创
发布博客 2020.06.18 ·
872 阅读 ·
0 点赞 ·
0 评论 ·
9 收藏

使用python实现两层神经网络(HW3)

使用python实现两层神经网络(HW3)记录一下手动实现一个两层的全连接神经网络,主要针对于李宏毅老师HW3的7分类问题。本来是想拿NN SVG画一下这个结构,结果维度太高,它死机了。。(好吧,是我太菜了,,不太会用),所以用一个小的结构代替一下,就是一个简单的FCNNbp算法就不写在这里了,其他的大神都讲的很不错的。网络大概结构:源代码:import numpy as npimport matplotlib.pyplot as pltfrom keras.utils import
原创
发布博客 2020.06.17 ·
1371 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

Leetcode 93. 复原IP地址

93. 复原IP地址解题思路:典型的dfs+回溯的题:挨个判断所有的字符串类型组合,符合题意则加入最后的vector否则退出递归;这里说一下几个点,首先,dfs传入的此一个参数,是剩下的数字字符串,使用stoi的时候,要防止结果溢出,我们知道ipv4地址的每一项最多3位,所以,当前字符串超过三位之后,直接return,在for循环中也是一样,截取的字符串长度超过3,直接break;还有注意测试用例: “010010” ,也就是说stoi会直接忽略掉前置0,比如010,会直接转换为10,最后造成错误
原创
发布博客 2020.06.10 ·
153 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Leetcode 92. 反转链表 II

92. 反转链表 II解题思路:从m到n的位置反转链表,利用头插法可以反转排列的特性进行首先要定义两个头节点 s_head和new_head ,定义头节点的目的是为了方便统一处理,否则会很麻烦定义index = 0 为当前指针索引位置,如果处于m的位置上,则要记录反转链表的新尾巴如果处于m和n之间,则利用头插法,把当前节点插入新链表中如果处于n的位置上,则要把新链表重新插回原来的链表中源代码:/** * Definition for singly-linked list. * s
原创
发布博客 2020.06.03 ·
118 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Leetcode 86. 分隔链表

86. 分隔链表解题思路:这道题第一反应就是,模拟快排算法的那个分割,但是分割之后会有问题,无法保证之前的相对顺序,所以,采用双链表解法,after指针指向比target更大的数,before指针指向比target更小的数,最后把after和before指针连起来就ok了源代码:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * L
原创
发布博客 2020.05.29 ·
139 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Leetcode 80. 删除排序数组中的重复项 II

80. 删除排序数组中的重复项 II解题思路:既然题目要求原地算法,那就直接在原数据上做修改,设一个gap,这个的作用就是标记我们删除的元素的个数,后面的元素直接对前面重复的元素进行覆盖,但是覆盖多少个呢,就是gap个。c++代码:class Solution {public: int removeDuplicates(vector<int>& nums) { int gap = 0, i, cal = 0, len = nums.size();
原创
发布博客 2020.05.28 ·
121 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Leetcode 71. 简化路径

71. 简化路径解题思路:这道题和栈的应用之求逆波兰表达式的解法很像,所以使用栈来求解首先定义一个字符串栈,用来保存当前目录里最后剩余的文件名。由于c++没有split函数,所以要自己写一个才行,把原来的path,按 ‘/’ 这个符号进行分割。遍历分割好的vector,分三种情况讨论:(1). 如果当前字符串为 “点点” ,则代表要访问父目录,如果当前目录栈还有剩余字符串,则把这个字符串弹出。(2). 如果当前字符串为 “点 ”,则代表当前目录,那么我们就什么也不做就行(3). 其余情况
原创
发布博客 2020.05.26 ·
148 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

每日一题 146. LRU缓存机制

146. LRU缓存机制源代码(记录一下):class LRUCache {private: list<pair<int, int>> cache; unordered_map<int, list<pair<int, int>>::iterator> cache_hash; int max_capacity = 0; int c_capacity = 0;public: LRUCache(int ca
原创
发布博客 2020.05.25 ·
152 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Leetcode 63. 不同路径 II

63. 不同路径 II解题思路:这题思路和62基本一致,不一样的地方在于细节处理,初始值的时候,如果遇到障碍,则障碍之后的dp值都为0,dp[i][j]的值要根据是否有障碍物来判断,如果有障碍物,它就是0,否则就是dp(i,j)=dp(i−1,j)+dp(i,j−1)dp(i,j)=dp(i-1,j)+dp(i,j-1)dp(i,j)=dp(i−1,j)+dp(i,j−1)源代码:class Solution {private: int dp[110][110];public:
原创
发布博客 2020.05.24 ·
115 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Leetcode 62. 不同路径

62. 不同路径解题思路:这道题,单单从题意上说,有两种解决方式,第一种我们很快就能想到暴力解决,也就是递归+回溯方法一:暴力解决法:首先定义一个vis数组,用来记录哪些小格子是走过的,防止重复计算路径个数;然后不停的向下和右去递归遍历,直到finish,很显然,这种做法会超时。方法一源码:class Solution {private: bool vis[200][200] = {false}; int res = 0;public: void helper
原创
发布博客 2020.05.24 ·
132 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Leetcode 61. 旋转链表

61. 旋转链表解题思路:这题原来打算使用比较笨的方法,就是用unordered_map去映射每一个节点,把新的索引作为map的索引,但是发现最后结果超时了。。所以新的思路就是,首先把整个链表拉成一个环,然后通过规律找到旋转后,新的第一个元素节点的位置,从这个位置把环断开。假设整个链表长度为len,要右移旋转的偏移量为k(就是题里给的那个k),则第一个元素被偏移到:(0+k)%len(0+k) \% len(0+k)%len,而新的第一个元素的原来的索引就是:len−(0+k)%lenlen -
原创
发布博客 2020.05.24 ·
167 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

剑指Offer 面试题32 - II. 从上到下打印二叉树 II

面试题32 - II. 从上到下打印二叉树 II解题思路:BFS从根节点开始遍历二叉树,如何判断当前是哪一层呢?利用tag打标记,第一次的end_node设置为root ,后面记录下一层的最后一个节点,用tag存储,当前层的最后一个节点进入队列的时候,将当前的vector压入结果中,清空vector并更新end_node的值。源代码:/** * Definition for a binary tree node. * struct TreeNode { * int val; *
原创
发布博客 2020.05.23 ·
158 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Leetcode 每日一题 76. 最小覆盖子串

76. 最小覆盖子串解题思路:本题采用滑动窗口的方法(事实证明,这效率有些低)。首先定义两个指针left和right,分别指向主串的两边位置定义两个hashTable ,一个用来记录主串当前每个字符映射的个数,另一个是记录模式串每个字符的个数模式串每个字符对应的个数首先都要映射到一个hash表中,这个主要是用来当作判断的一个筹码。遍历主串中每一个字符,此时要对滑动窗口进行调整,每一个字符加进来,要扩大当前窗口的右指针,然后判断当前窗口里是否包含每一个模式串元素,如果包含,则尝试缩小左指针,以
原创
发布博客 2020.05.23 ·
207 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多