<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[curry3030的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/curry3030</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; curry3030]]></copyright><item><title><![CDATA[批量相似度计算]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/125024298</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/125024298</guid><author>curry3030</author><pubDate>Sat, 28 May 2022 22:23:32 +0800</pubDate><description><![CDATA[import torch

def batch_cosine_similarity(sentence_embedding_a, sentence_embedding_b):
    """
    :param sentence_embedding_a: [a_number, hidden_dim]
    :param sentence_embedding_b: [b_number, hidden_dim]
    :return:
    """
    a_number = sentence_emb.]]></description><category></category></item><item><title><![CDATA[DP总结(三) 状态压缩DP]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/110919421</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/110919421</guid><author>curry3030</author><pubDate>Wed, 09 Dec 2020 11:38:53 +0800</pubDate><description><![CDATA[三、状态压缩DP
3.1. 基本概念
​	状态压缩动态规划，就是我们俗称的状压DP，是利用计算机二进制的性质来描述状态的一种DP方式很多棋盘问题都运用到了状压，同时，状压也很经常和记忆化搜索连用。一般用状态压缩的DP作为记忆化数组。
3.2. 关键操作
1 &lt;&lt; (i - 1)			// 左移 i - 1 位.
1 &lt;&lt; (i - 1) | state	// 加入集合中第 i 个元素.
1 &lt;&lt; (i - 1) &amp; state	// 判断集合中第 i 个元素是否包]]></description><category></category></item><item><title><![CDATA[BERT Pytorch版本 源码解析（二）]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/106086570</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/106086570</guid><author>curry3030</author><pubDate>Tue, 12 May 2020 23:11:02 +0800</pubDate><description><![CDATA[BERT Pytorch版本 源码解析（二）

四、BertEmbedding 类解析

BertEmbedding部分是组成 BertModel 的第一部分，今天就来讲讲 BertEmbedding 的内部实现细节。

4.1、Embedding 的组成以及设置


    def __init__(self, config):
        super(BertEmbeddings, self).__init__()
        self.word_embeddings = nn.Embeddin]]></description><category></category></item><item><title><![CDATA[Gensim 库使用手册]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/104775681</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/104775681</guid><author>curry3030</author><pubDate>Sat, 14 Mar 2020 22:50:28 +0800</pubDate><description><![CDATA[Gensim 库使用手册

一、安装


pip install gensim


使用上述安装方式会出现安装失败的情况，主要原因就是因为镜像节点太慢了，所以换个镜像节点就好了。


pip install -i https://pypi.tuna.tsinghua.edu.cn/simple gensim


二、使用GloVe预训练词向量

首先是GloVe预训练词向量的下载地址：


ht...]]></description><category></category></item><item><title><![CDATA[NLP模型常见问题及解决方案]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/104155957</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/104155957</guid><author>curry3030</author><pubDate>Mon, 03 Feb 2020 14:00:01 +0800</pubDate><description><![CDATA[一、序列标注任务预测输出全为0的情况：

1.1、模型搭建出现问题，检查模型是否正确

1.2、学习率太小导致未收敛出现全0的情况，其中如果含BERT的模型可以尝试对不同参数设置不同学习率。

1.3、batch_size过大导致全0的情况，需要调小batch



二、关于含Bert模型的参数设置问题

学习率建议设置为：1e-5 / 2e-5 / 5e-5

Batch_Size建议设置：8...]]></description><category></category></item><item><title><![CDATA[常用命令行]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/104045613</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/104045613</guid><author>curry3030</author><pubDate>Sun, 19 Jan 2020 21:50:28 +0800</pubDate><description><![CDATA[常用命令行

anaconda 环境位置查找


conda info -e

服务器GPU内存使用情况


nvidia-smi

查看某个用户的所有进程


ps -u username

杀死某个用户的所有进程


pkill -u username

指定某个GPU运行程序


CUDA_VISIBLE_DEVICES=0 python Main.py


...]]></description><category></category></item><item><title><![CDATA[PyTorch(一) DataSet and DataLoader]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/103875331</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/103875331</guid><author>curry3030</author><pubDate>Tue, 07 Jan 2020 16:16:10 +0800</pubDate><description><![CDATA[PyTorch(一) DataSet and DataLoader

目录

一、DataSet

1.1、DataSet 简介

1.2、DataSet 代码实现

二、DataLoader

2.1、DataLoader 简介

2.2、DataLoader 源码介绍

2.3、DataLoader 代码实现

三、DataSet 与 DataLoader 的相关性

一、DataSet

1...]]></description><category></category></item><item><title><![CDATA[自然语言处理（二）统计分词（隐马尔可夫模型）]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/95334959</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/95334959</guid><author>curry3030</author><pubDate>Fri, 03 Jan 2020 19:16:07 +0800</pubDate><description><![CDATA[一、统计分词简介

随着大规模语料库的建立，统计机器学习方法的研究和发展，基于统计的中文分词算法渐渐成为主流，其主要思想是把每个词看作是词的最小单位的各个字组成的，如果相连的字在不同的文本中出现的而次数越多，就证明这相连的字很可能是一个词。因此我们就可以利用字与字相邻出现的频率来反应成词的可靠度，统计语料中相邻共现的各个字的组合的频度，当组合频度高于某一个临界值时，我们便可认为此字组可能会构成一个...]]></description><category></category></item><item><title><![CDATA[Machine Learning（一） Multi-Normial Bayes and Bernoulli Bayes]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/103783426</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/103783426</guid><author>curry3030</author><pubDate>Tue, 31 Dec 2019 15:28:07 +0800</pubDate><description><![CDATA[Multi-Normial Bayes


class MultinomialNB(object):
    def __init__(self, train, test, vocab, alpha=1):
        self.n = 0
        self.vocab = vocab
        self.alpha = alpha
        self.n_classes ...]]></description><category></category></item><item><title><![CDATA[BERT Pytorch版本 源码解析（一）]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/102972423</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/102972423</guid><author>curry3030</author><pubDate>Fri, 08 Nov 2019 14:21:41 +0800</pubDate><description><![CDATA[BERT Pytorch版本 源码解析（一）



一、BERT安装方式


pip install pytorch-pretrained-bert

二、BertPreTrainModel:

一个用于获取预训练好权重的抽象类，一个用于下载和载入预训练模型的简单接口
1、初始化函数（def __init__(self, config, *inputs, **kwargs)）:


def _...]]></description><category></category></item><item><title><![CDATA[PAT(甲级) 1003 Emergency]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/100579653</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/100579653</guid><author>curry3030</author><pubDate>Fri, 06 Sep 2019 15:18:55 +0800</pubDate><description><![CDATA[题目：https://pintia.cn/problem-sets/994805342720868352/problems/994805523835109376

代码：


	#include&lt;iostream&gt;
	#include&lt;algorithm&gt;
	#include&lt;vector&gt;
	#include&lt;string&gt;
	using name...]]></description><category></category></item><item><title><![CDATA[PAT(甲级) 1002 A+B for Polynomials]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/100579227</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/100579227</guid><author>curry3030</author><pubDate>Fri, 06 Sep 2019 14:56:21 +0800</pubDate><description><![CDATA[题目：https://pintia.cn/problem-sets/994805342720868352/problems/994805526272000000

代码：


#include&lt;cstdio&gt;
#include&lt;iostream&gt;
#include&lt;algorithm&gt;
#include&lt;functional&gt;
#include&lt...]]></description><category></category></item><item><title><![CDATA[PAT(甲级) 1001 A+B Format]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/100559481</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/100559481</guid><author>curry3030</author><pubDate>Thu, 05 Sep 2019 15:42:57 +0800</pubDate><description><![CDATA[题目地址：https://pintia.cn/problem-sets/994805342720868352/problems/994805528788582400

代码：


#include&lt;iostream&gt;
#include&lt;algorithm&gt;
#include&lt;vector&gt;
#include&lt;string&gt;
#include&lt;c...]]></description><category></category></item><item><title><![CDATA[处理pandas出现warning: “A value is trying to be set on a copy of a slice from a DataFrame.”]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/100533296</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/100533296</guid><author>curry3030</author><pubDate>Wed, 04 Sep 2019 10:10:17 +0800</pubDate><description><![CDATA[报错代码：


col_names = Train_DataFrame.columns.values.tolist()
train_data = Train_DataFrame[col_names[2:]]
age_mean = train_data['Age'].mean()
train_data['Age'] = train_data['Age'].fillna(age_mean)

使用pa...]]></description><category></category></item><item><title><![CDATA[LeetCode 207. 课程表 II]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/100176376</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/100176376</guid><author>curry3030</author><pubDate>Sat, 31 Aug 2019 19:41:19 +0800</pubDate><description><![CDATA[题目：https://leetcode-cn.com/problems/course-schedule-ii/

代码：


class Solution {
public:
    vector&lt;int&gt; findOrder(int numCourses, vector&lt;vector&lt;int&gt;&gt;&amp; prerequisites) {
        in...]]></description><category></category></item><item><title><![CDATA[LeetCode 207. 课程表]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/100025753</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/100025753</guid><author>curry3030</author><pubDate>Thu, 22 Aug 2019 22:45:53 +0800</pubDate><description><![CDATA[题目：https://leetcode-cn.com/problems/course-schedule/submissions/

代码：


class Solution {
public:
    bool canFinish(int numCourses, vector&lt;vector&lt;int&gt;&gt;&amp; prerequisites) {
        vector...]]></description><category></category></item><item><title><![CDATA[LeetCode 不同路径 II]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/99869639</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/99869639</guid><author>curry3030</author><pubDate>Tue, 20 Aug 2019 18:24:08 +0800</pubDate><description><![CDATA[题目：https://leetcode-cn.com/problems/unique-paths-ii/

代码:


class Solution {
public:
    int uniquePathsWithObstacles(vector&lt;vector&lt;int&gt;&gt;&amp; obstacleGrid) {
        int n = obstacleGrid....]]></description><category></category></item><item><title><![CDATA[LeetCode 不同路径]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/99869165</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/99869165</guid><author>curry3030</author><pubDate>Tue, 20 Aug 2019 18:18:23 +0800</pubDate><description><![CDATA[题目：https://leetcode-cn.com/problems/unique-paths/

代码：


class Solution {
public:
    int uniquePaths(int m, int n) {
        vector&lt;vector&lt;int&gt;&gt;dp(n, vector&lt;int&gt;(m, 0));
        //对...]]></description><category></category></item><item><title><![CDATA[leetcode 1 两数之和]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/99783872</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/99783872</guid><author>curry3030</author><pubDate>Tue, 20 Aug 2019 00:55:23 +0800</pubDate><description><![CDATA[题目链接：https://leetcode-cn.com/problems/two-sum/submissions/

题解：


class Solution {
public:
    vector&lt;int&gt; twoSum(vector&lt;int&gt;&amp; nums, int target) {
        map&lt;int, int&gt;hash;   //...]]></description><category></category></item><item><title><![CDATA[自然语言处理（三）文章高频词提取]]></title><link>https://blog.youkuaiyun.com/curry3030/article/details/94765281</link><guid>https://blog.youkuaiyun.com/curry3030/article/details/94765281</guid><author>curry3030</author><pubDate>Fri, 05 Jul 2019 21:24:22 +0800</pubDate><description><![CDATA[一、高频词汇提取简介

高频词一般是指文档中出现频率较高且并非无用的词语，其一定程度上代表了文档的焦点所在。针对单篇文档，可以作为一种关键词来看。对于如新闻这样的多篇文档，可以将其作为热词，发现舆论的焦点。其中高频词提取其实就是自然语言处理中的TF（Term Frequency）策略。

二、数据集下载及算法介绍

数据集下载地址：https://github.com/nlpinaction/le...]]></description><category></category></item></channel></rss>