<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[SLP_L的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/SLP_L</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; SLP_L]]></copyright><item><title><![CDATA[项目部署 -- Gunicorn + supervisor 管理Python项目]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/115932115</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/115932115</guid><author>SLP_L</author><pubDate>Wed, 21 Apr 2021 08:18:48 +0800</pubDate><description><![CDATA[Article structure:

Gunicorn

preliminary
install and usage
pros &amp; cons


supervisor

install and usage



Gunicorn
Gunicorn ‘Green Unicorn’(发音 jee-unicorn | green unicorn | gun-i-corn) 是一个被广泛使用的 Python WSGI UNIX HTTP 服务器，移植自 Ruby 的独角兽（Unicorn ）项目，采用 p]]></description><category></category></item><item><title><![CDATA[自然语言处理——基于隐马尔可夫模型的分词]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/115589359</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/115589359</guid><author>SLP_L</author><pubDate>Sun, 11 Apr 2021 10:07:18 +0800</pubDate><description><![CDATA[文章结构

HMM 基本概念
HMM 与分词关系
如何用 HMM 分词

在 自然语言处理 -分词初窥 我们介绍了基于词典的（最大匹配）分词方法，这种方法依赖于现有的词典库，对于新词（也称未登录词，out of vocabulary, OOV），则无法准确的进行分词。针对 OVV 问题，本文着重阐述下如何利用 HMM 实现基于字的分词方法。
利用 HMM 模型进行分词，主要是将分词问题视为一个序列标注（sequence labeling）问题。基本的思想就是根据观测值序列找到真正的隐藏状态值序列。在中文分词]]></description><category></category></item><item><title><![CDATA[Get it Done is Everything ——The Cult of Done Manifesto]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/115561643</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/115561643</guid><author>SLP_L</author><pubDate>Fri, 09 Apr 2021 23:29:03 +0800</pubDate><description><![CDATA[THE CULT OF DONE MANIFESTO

有三种状态：不知道、行动和完成。
接受一切都是草稿，这有助于完成事情。
不存在编辑这个阶段。
假装自己知道自己在做什么，几乎等于知道自己在做什么，所以接受自己知道自己在做什么，即使不知道也要去做。
拒绝拖延症。如果你需求等待超过一周的时间来完成一个想法，就放弃它。
做完的重点不是为了结束，而是做掉(更多)其他事。
一旦你完成了，你就可以把它扔掉。
去他妈的完美。它很无聊，让你无法完成你的任务。
空谈误国、实干兴邦（就瞎jb翻）。
失败也算做了。失误也算]]></description><category></category></item><item><title><![CDATA[语音识别 --- 音频信号提取]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/115394766</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/115394766</guid><author>SLP_L</author><pubDate>Fri, 02 Apr 2021 11:29:07 +0800</pubDate><description><![CDATA[音频信号特征提取的一般流程为：

假设我们的语音信号采样频率为 8000Hz，语音数据在这里获取。
import numpy
import scipy.io.wavfile
from scipy.fftpack import dct

sample_rate, signal = scipy.io.wavfile.read('OSR_us_000_0010_8k.wav') 
# sample_rate = 8000
signal = signal[0:int(3.5 * sample_rate)]  # 我]]></description><category></category></item><item><title><![CDATA[自然语言处理 - 二元语法与中文分词]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/112917666</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/112917666</guid><author>SLP_L</author><pubDate>Thu, 21 Jan 2021 10:20:44 +0800</pubDate><description><![CDATA[二元语法与中文分词
之前的一篇文章里(自然语言处理 - 分词初窥)中我们介绍并实现了基于词典的最大匹配分词方法。这种方法简单直观，且词典扩充很方便。但词典分词难以消除歧义，给定两种分词结果“商品 和服 务”以及“商品 和 服务”，词典分词不知道哪种更加合理。
但对于人类来说，我们平时接触的都是第二种分词方案，所以我们知道第二种更加合理，因此可以判定第二种是正确地选择。这就是利用了统计自然语言处理。统计自然语言处理的核心话题之一，就是如何利用统计手法对语言建模，
语言模型
模型指的是对事物的数学抽象，那么语言]]></description><category></category></item><item><title><![CDATA[Python 输出彩色日志及调用函数信息]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/112917413</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/112917413</guid><author>SLP_L</author><pubDate>Thu, 21 Jan 2021 10:11:06 +0800</pubDate><description><![CDATA[彩色日志
# coding:utf-8
import logging
import os
from logging.handlers import RotatingFileHandler
import colorlog  # 控制台日志输入颜色

log_colors_config = {
    'DEBUG': 'cyan',
    'INFO': 'green',
    'WARNING': 'yellow',
    'ERROR': 'red',
    'CRITICAL': 'red',
]]></description><category></category></item><item><title><![CDATA[自然语言处理 -分词初窥]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/112763427</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/112763427</guid><author>SLP_L</author><pubDate>Mon, 18 Jan 2021 10:19:04 +0800</pubDate><description><![CDATA[中文分词是指的是将一段文本拆分为一系列单词的过程，这些单词顺序拼接后等于原文本。粗略的讲，中文分词方法分为基于字符串匹配的分词算法，基于理解的分词算法和基于统计的分词算法。


基于字符串匹配的分词算法
也称机械分词算法，它会提前维护一个大的字典，然后将句子和字典中的词进行匹配，若匹配成功，则可以进行分词处理。当字典足够大的时候，就需要考虑不同的匹配算法，通常会基于 Trie 树结构，来实现高效的词图扫描。


基于统计的分词算法
给出大量已经分词的文本，利用统计机器学习模型学习词语切分的规律（称为训练），]]></description><category></category></item><item><title><![CDATA[自然语言处理 -关键词提取之TFIDF方法]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/112598835</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/112598835</guid><author>SLP_L</author><pubDate>Thu, 14 Jan 2021 08:10:23 +0800</pubDate><description><![CDATA[1. TF-IDF 简介
TF-IDF（Terms Frequency-Inverse Document Frequency）主要思想：如果某个单词在一篇文章中出现的频率高，并且在其他文章中很少出现，则认为此词或者短语具有很好的类别区分能力，适合用来分类。
词频（Term Frequency, TF），即一个词条在文本中出现的频率。逆向文件频率（Inverse Document Frequency, IDF），总文件数除以包含该词条的文件数，再取对数。包含词条的文档越少，则 IDF 越大，则说明词条有很好的]]></description><category></category></item><item><title><![CDATA[自然语言处理 - 关键词提取概述及工具]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/112507039</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/112507039</guid><author>SLP_L</author><pubDate>Tue, 12 Jan 2021 10:03:11 +0800</pubDate><description><![CDATA[关键词提取概述
关键词是能够表达文档中心内容的词语，一段话中通常有一个或者多个关键词。关键词提取常用于信息检索、系统汇集以供读者检阅。关键词提取是文本挖掘领域的一个分支，是文本检索、文档比较、摘要生成、文档分类和聚类等文本挖掘研究的基础性工作。
从算法的角度来看，关键词提取算法主要有两类：无监督关键词提取方法和有监督关键词提取方法。


无监督关键词提取方法
不需要人工标注的语料，利用某些方法发现文本中比较重要的词作为关键词，进行关键词提取。该方法的思想是先抽取出候选词，然后对各个候选词进行打分，然后输出分]]></description><category></category></item><item><title><![CDATA[Python 静态方法-实例方法语法及作用区别简析]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/112303514</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/112303514</guid><author>SLP_L</author><pubDate>Thu, 07 Jan 2021 10:09:08 +0800</pubDate><description><![CDATA[Python 中有很多方法：实例方法（instance method），类方法（class method）与静态方法（static method）。本文从语法及用途上做一些简单对比。
语法区别
class HornHub: 
    paied_users = 100

    def __init__(self):
        pass 

    def display(self, vid:str):
        print(vid)

    @classmethod
    def get_]]></description><category></category></item><item><title><![CDATA[GraphViz 绘制图形入门]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/112258842</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/112258842</guid><author>SLP_L</author><pubDate>Wed, 06 Jan 2021 10:10:40 +0800</pubDate><description><![CDATA[DOT, GraphViz 简介

DOT 是一种文本图形描述语言。DOT 语言文件通常具有 .gv 或是 .dot 的文件扩展名。在编写好 DOT 文件之后，需要有专门的程序处理这些文件并将其渲染成为图片，dot 就是其中一款程序，它可以将 DOT 语言描述的图形渲染成 GIF,PNG,SVG,PDF 等多种格式文件。
GraphViz 是一个开源软件包，提供可以运行 DOT 文件的 dot 程序。Graphviz 中包含了众多的布局器：


dot， 默认布局方式，主要用于有向图
neato， 基于 s]]></description><category></category></item><item><title><![CDATA[自然语言处理工具之 HanLP 鸟瞰]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/112213325</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/112213325</guid><author>SLP_L</author><pubDate>Tue, 05 Jan 2021 09:51:26 +0800</pubDate><description><![CDATA[简介
HanLP(Han Language Processing) 是一系列模型与算法组成的自然语言处理（Natural Language Processing, NLP）工具包，由大快搜索主导并完全开源，目标是普及自然语言处理在生产环境中的应用。
自然语言处理技术优势：
支持中文分词（N-最短路分词、CRF分词、索引分词、用户自定义词调、词性标注）、命名实体识别（中国人民、音译人民、日本人民，地名，实体机构名识别）、关键词提取、自动摘要、短语提取、拼音转换、简繁转换、文本推荐、依存句法分析（MaxEnt依]]></description><category></category></item><item><title><![CDATA[TensorFlow Serving 简要了解_v1]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/112142855</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/112142855</guid><author>SLP_L</author><pubDate>Sun, 03 Jan 2021 17:52:39 +0800</pubDate><description><![CDATA[简介
TensorFlow Serving 是一个灵活高效的机器学习服务系统，适用于部署机器学习模型，灵活、性能高、可用于生产环境。Serving 即当对机器学习模型进行训练之后，对模型进行应用。
TF Serving 可抽象为一些组件构成，每个组件实现了不同的 API 任务，其中最重要的是 Servable, Loader, Source, 和 Manager，组件之间的交互如下图。

    

上图对应的流程大致如下：
假设当前系统中有模型 M1 正在运行，而我们又训练好了模型 M2，右下方的 Sou]]></description><category></category></item><item><title><![CDATA[自动语音识别鸟瞰]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/111940936</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/111940936</guid><author>SLP_L</author><pubDate>Wed, 30 Dec 2020 08:19:44 +0800</pubDate><description><![CDATA[[In Progress…]
语音识别
语音识别简史
自动语音识别技术（Automatic Speech Recognition, ASR）主要是将人类语音中的词汇内容转换为计算机可读的输入，一般都是可以理解的文本内容，也有可能是二进制编码或者字符序列。狭义的语音识别技术即是将人类语音转成文本的技术。
GMM-HMM 时代
现代语音识别可以追溯到 1952 年，贝尔研究所 Davis 等人研制了世界上第一个能识别 10 个英文数字发音的实验系统，从此正式开启了语音识别的进程。
从上世纪 60 年代开始，C.]]></description><category></category></item><item><title><![CDATA[曲线救国: 使用 Markdown 编辑器来写 Confluence 文档]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/111824569</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/111824569</guid><author>SLP_L</author><pubDate>Sun, 27 Dec 2020 19:17:00 +0800</pubDate><description><![CDATA[使用 Markdown 写 Confluence 文档
作为一种轻量级标记语言，Markdown 优点多，包括但不限于：

纯文本，兼容性极强，可以用所有文本编辑器打开
让写作者专注于文字而不是排版
格式转换方便，Markdown 的文本可以轻松转换为 html、电子书
Markdown 的标记语法有极好的可读性

概括来讲，Markdown 易懂易写，但 Confluence 没有提供支持 Markdown 格式的编辑器，这对习惯于写 Markdown 文档的开发者来说是一件很苦恼的事情。但好在这个问题存]]></description><category></category></item><item><title><![CDATA[Python 生成器-迭代器-可迭代对象]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/111238380</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/111238380</guid><author>SLP_L</author><pubDate>Tue, 15 Dec 2020 19:43:07 +0800</pubDate><description><![CDATA[迭代器
只要定义了 __next__ 方法的对象即为迭代器。
可迭代对象
即提供迭代器的对象。 Python 中任意的对象，只要它定义了一个可返回迭代器的 __iter__ 方法或者定义可以支持下标索引的 __getitem__ 方法，那它即是一个可迭代对象。
举例: Google 是一个可迭代对象，它支持迭代，但我们不能直接对它进行迭代操作。 iter('Google‘) 是一个迭代器。
for c in iter('Google'): print(e)
# produces
'G'
'o'
'o'
'g]]></description><category></category></item><item><title><![CDATA[Python 两种可变参数区别]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/111237090</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/111237090</guid><author>SLP_L</author><pubDate>Tue, 15 Dec 2020 19:19:33 +0800</pubDate><description><![CDATA[向 Python 函数传递参数的方式有两种：

位置参数（positional argument）
关键词参数（keyword argument）

*args 与 **kwargs 都是 Python 中的可变参数。

*args 表示任何多个无名参数，允许用户发送一个非键值对的可变数量的参数列表给一个函数，它本质是一个 tuple
**kwargs 表示关键字参数，允许用户将不定长度的键值对作为参数传递给一个函数，它本质上是一个 dict
同时使用 *args 和 **kwargs 时，必须 *args]]></description><category></category></item><item><title><![CDATA[TURN YOUR LIFE INTO A GAME]]></title><link>https://blog.youkuaiyun.com/SLP_L/article/details/111058955</link><guid>https://blog.youkuaiyun.com/SLP_L/article/details/111058955</guid><author>SLP_L</author><pubDate>Sat, 12 Dec 2020 12:06:49 +0800</pubDate><description><![CDATA[Turn your life into a game.
Goal/Reward/Progress/Novelty/Challenge

Always has a clear object to work towards, to have a direction to go
Immediate reward

The reward should reward you back in some way. For example, a pair of running shoes after one month’s]]></description><category></category></item></channel></rss>