Notes of Focal Loss

youngyhli

What,Why and How?

What

Focal Loss:Kaiming He 团队在论文《Focal Loss for Dense Object Detection》基于目标检测场景提出的损失函数,用于解决分类问题中类别不平衡、分类难度差异的问题

虽然是基于目标检测场景提出的,但是在NLP等其他任务中,也存在着大量的类别不平衡、正负标签比例差异过大的问题

阅读全文 »

Notes of GAT

youngyhli

GAT:首次将图注意力机制引入到图神经网络中的工作

阅读全文 »

Auto Encoder 调研总结

youngyhli

Part I

AutoEncoder 和 PCA 有着直接的联系

AutoEncoder v.s. PCA

  • 使用线性激活函数的AE可以近似PCA。数学上来说,最小化重建误差的PCA等价于单层线性AE
  • AE把PCA扩展到了非线性空间,换句话说,AE是PCA的非线性拓展

因此,AE应该有着和PCA相似的性质:

  • 权值捆绑(encoder和对应的decoder之间)
  • 权值正交 (每一个权值向量之间互相独立)
  • 特征无关(encoder生成的特征是不相关的)
  • 单位范数(Unit Norm)(同一层的权值有单位范数)

然而,大多数教程中的AE实现并没有以上性质, 这使得它们不是最优的。因此,融入这些性质来实现一个好的AE蛮重要的,为了做到这,我们需要:

阅读全文 »

参考:labuladong: 通过层层拆解问题,实现一个带括号的四则运算计算器

🚀Final Goal:

  • 输入一个合法运算表达式字符串,包含 +. -, *, /, (, ), 数字, 空格;输出运算结果
  • 要符合通常的运算法则,即括号优先,先乘除后加减
  • 除号是整数除法,无论正负都向 0 取整(5/2=2,-5/2=-2)
阅读全文 »

二叉树的前序遍历

递归

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, val=0, left=None, right=None):
# self.val = val
# self.left = left
# self.right = right
class Solution:
def preorderTraversal(self, root: TreeNode) -> List[int]:
#递归
self.res = []
def preorder(root):
if not root: return
self.res.append(root.val)
preorder(root.left)
preorder(root.right)
preorder(root)
return self.res

迭代

阅读全文 »

🌲前缀树的核心思想是用空间换时间,利用字符串的公共前缀来降低查询的时间开销。

阅读全文 »

SGD 和它的兄弟们

Batch Gradient Descent(正常的梯度下降)正常下山

SGD 用单个训练样本的损失来近似平均损失 蒙着眼睛下山 (害怕山谷(震荡)和鞍点(停滞))

Mini-Batch SGD 为了降低随机梯度的方差,使得迭代算法更加稳定,也为了充分利用高度优化的矩阵运算操作,同时处理若干个(一个小批量)的数据

阅读全文 »

机器学习相关知识点总结

特征工程

“Garbage in, garbage out” 数据和特征决定了模型的上限,而模型、算法的选择及优化只是在逐步接近这个上限

阅读全文 »

401.二进制手表: 一道典型的回溯题,一般的思路是将num分解成h和m,分别表示hour中LED灯亮的数量和minute中LED灯亮的数量,同一个数量对应着不同的取值 i.e. h = 1 对应着 小时可以取到1, 2, 4, 8这四种取值,且都是合法的,而h=2对应着小时可以取到3, 5, 9,6,10,12 这6种取值,其中12超过了11是不合法的。

h的数量固定时,m= num - h 自然也就固定, 而我们要做的就是在固定h的数量时, 将所有合法的小时的对应取值H和分钟的对应取值MM组合起来成为 “H:MM”

沿着这个思路, 问题归结为两点:

  • 其一, 给定h,如何算取[1, 2, 4, 8]的数量为h的合法组合(的和),自然也有m对应的
  • 其二, 在第一点解决后,如何将给定h情况下,不同的小时对应的取值和分钟对应的取值组合起来

以上,难点在于 如何恰当地实现对组合数的求解

给定一个长度为n的列表,求长度为h的不同组合 (注意,需要的是具体的组合,不是组合数)

阅读全文 »