<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[CoderMateng的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/CoderMateng</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; CoderMateng]]></copyright><item><title><![CDATA[【数据结构】队列的链式实现]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/122597529</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/122597529</guid><author>CoderMateng</author><pubDate>Thu, 20 Jan 2022 11:15:01 +0800</pubDate><description><![CDATA[//链式队列定义及各类操作
#include&lt;stdio.h&gt;
#include&lt;string.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;stdbool.h&gt;

typedef int ElemType;

typedef struct  LinkNode
{
    ElemType data;
    struct LinkNode *next;
} LinkNode;

typedef struct LinkQueue
{
    L]]></description><category></category></item><item><title><![CDATA[【数据结构】队列的顺序实现]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/122497305</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/122497305</guid><author>CoderMateng</author><pubDate>Fri, 14 Jan 2022 16:27:01 +0800</pubDate><description><![CDATA[//顺序队列定义及各类操作
#include&lt;stdio.h&gt;
#include&lt;string.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;stdbool.h&gt;

typedef int ElemType;

//定义顺序队列
#define MaxSize 10


typedef struct SqQueue
{
    ElemType data[MaxSize];
    int front, rear; //队头和队尾指针
} Sq]]></description><category></category></item><item><title><![CDATA[【数据结构】链栈的定义和基本操作]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/122488467</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/122488467</guid><author>CoderMateng</author><pubDate>Fri, 14 Jan 2022 10:16:24 +0800</pubDate><description><![CDATA[//链栈定义及各类操作
#include&lt;stdio.h&gt;
#include&lt;string.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;stdbool.h&gt;
typedef int Elemtype;
typedef struct LiStack
{
Elemtype data; //数据域
struct LiStack *next; //指针域
} LiStack; //栈类型定义
//初始化链栈
void InitLiStack(LiSt]]></description><category></category></item><item><title><![CDATA[【数据结构】顺序栈定义及基本操作]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/122486567</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/122486567</guid><author>CoderMateng</author><pubDate>Fri, 14 Jan 2022 08:15:16 +0800</pubDate><description><![CDATA[//顺序栈定义及各类操作
#include&lt;stdio.h&gt;
#include&lt;string.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;stdbool.h&gt;
typedef int Elemtype;
#define MaxSize 10 //定义栈中元素的最大个数
typedef struct SqStack
{
Elemtype data[MaxSize]; //使用静态数组存放栈中元素
int top; //栈顶指针
} SqStac]]></description><category></category></item><item><title><![CDATA[【数据结构】循环链表定义及基本操作]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/122420670</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/122420670</guid><author>CoderMateng</author><pubDate>Mon, 10 Jan 2022 22:19:07 +0800</pubDate><description><![CDATA[//循环链表定义及各类操作
#include&lt;stdio.h&gt;
#include&lt;string.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;stdbool.h&gt;
typedef int Elemtype;
//定义循环单链表节点类型
typedef struct CLinkList
{
Elemtype data; //数据域
struct CLinkList *next; //指针域
} CLinkList;
//初始化循环单链表
bool]]></description><category></category></item><item><title><![CDATA[【数据结构】双链表定义及基本操作]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/122363347</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/122363347</guid><author>CoderMateng</author><pubDate>Fri, 07 Jan 2022 14:15:14 +0800</pubDate><description><![CDATA[//双链表定义及各类操作
#include&lt;stdio.h&gt;
#include&lt;string.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;stdbool.h&gt;

typedef int Elemtype;

//定义双链表节点类型
typedef struct DLinkList
{
    Elemtype data; //数据域
    struct DLinkList *prior, *next; //前驱指针，后继指针
} DLink]]></description><category></category></item><item><title><![CDATA[【数据结构】单链表定义及基本操作]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/122357098</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/122357098</guid><author>CoderMateng</author><pubDate>Fri, 07 Jan 2022 08:58:09 +0800</pubDate><description><![CDATA[C语言实现单链表的定义及基本操作]]></description><category></category></item><item><title><![CDATA[贝叶斯网络——实践]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/108438394</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/108438394</guid><author>CoderMateng</author><pubDate>Sun, 06 Sep 2020 22:50:50 +0800</pubDate><description><![CDATA[Iris_GaussianNB：
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib as mpl
from sklearn.preprocessing import StandardScaler, MinMaxScaler, PolynomialFeatures
from sklearn.naive_bayes import GaussianNB, MultinomialNB
fr]]></description><category></category></item><item><title><![CDATA[机器学习——贝叶斯网络]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/108248920</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/108248920</guid><author>CoderMateng</author><pubDate>Wed, 26 Aug 2020 22:23:52 +0800</pubDate><description><![CDATA[贝叶斯网络
贝叶斯网络（Bayesian Networks）也被称为信念网络（Belif Networks）或者因果网络（Causal Networks），是描述数据变量之间依赖关系的一种图形模式，是一种用来进行推理的模型。贝叶斯网络为人们提供了一种方便的框架结构来表示因果关系，这使得不确定性推理变得在逻辑上更为清晰、可理解性强。
对于贝叶斯网络，我们可以用两种方法来看待它：首先贝叶斯网表达了各个节点间的条件独立关系，我们可以直观的从贝叶斯网当中得出属性间的条件独立以及依赖关系；另外可以认为贝叶斯网用另一种]]></description><category></category></item><item><title><![CDATA[机器学习——EM算法实践]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/108118206</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/108118206</guid><author>CoderMateng</author><pubDate>Thu, 20 Aug 2020 10:27:51 +0800</pubDate><description><![CDATA[EM
在这里插入代码片

import numpy as np
from scipy.stats import multivariate_normal
from sklearn.mixture import GaussianMixture
from mpl_toolkits.mplot3d import Axes3D
import matplotlib as mpl
import matplotlib.pyplot as plt
from sklearn.metrics.pairwise import pa]]></description><category></category></item><item><title><![CDATA[机器学习——EM算法]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/108014560</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/108014560</guid><author>CoderMateng</author><pubDate>Fri, 14 Aug 2020 22:06:29 +0800</pubDate><description><![CDATA[EM算法：
EM算法是一种迭代优化策略，由于它的计算方法中每一次迭代都分两步，其中一个为期望步（E步），另一个为极大步（M步），所以算法被称为EM算法（Expectation Maximization Algorithm）。EM算法受到缺失思想影响，最初是为了解决数据缺失情况下的参数估计问题，其算法基础和收敛有效性等问题在Dempster，Laird和Rubin三人于1977年所做的文章Maximum likelihood from incomplete data via the EM algorithm中]]></description><category></category></item><item><title><![CDATA[机器学习——聚类]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/107935707</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/107935707</guid><author>CoderMateng</author><pubDate>Tue, 11 Aug 2020 15:11:07 +0800</pubDate><description><![CDATA[kMeans:
import numpy as np
import matplotlib.pyplot as plt
import sklearn.datasets as ds
import matplotlib.colors
from sklearn.cluster import KMeans


def expand(a, b):
    d = (b - a) * 0.1
    return a-d, b+d


if __name__ == "__main__":
    N = 400
    ]]></description><category></category></item><item><title><![CDATA[机器学习——聚类算法]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/107722513</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/107722513</guid><author>CoderMateng</author><pubDate>Fri, 31 Jul 2020 22:13:27 +0800</pubDate><description><![CDATA[聚类的概念：
机器学习里面的聚类是无监督的学习问题，它的目标是为了感知样本间的相似度进行类别归纳。它可以用于潜在类别的预测以及数据压缩上去。潜在类别预测，比如说可以基于通过某些常听的音乐而将用户进行不同的分类。数据压缩则是指将样本进行归类后，就可以用比较少的的One-hot向量来代替原来的特别长的向量。
聚类，既可以作为一个单独的过程，也可以作为其他机器学习任务的预处理模块。
其实，在深度学习里面就十分流行这种先给样本聚类 压缩数据，然后把在压缩后的特征向量丢到网络去训练，这其实就是深度学习里面的“表示学习]]></description><category></category></item><item><title><![CDATA[机器学习——SVM实践]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/107601063</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/107601063</guid><author>CoderMateng</author><pubDate>Sun, 26 Jul 2020 22:28:51 +0800</pubDate><description><![CDATA[SVM基本应用：
import numpy as np
import pandas as pd
import matplotlib as mpl
import matplotlib.pyplot as plt
from sklearn import svm
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score


# 'sepal length', 'sepal widt]]></description><category></category></item><item><title><![CDATA[机器学习——SVM算法]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/107549916</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/107549916</guid><author>CoderMateng</author><pubDate>Thu, 23 Jul 2020 22:45:36 +0800</pubDate><description><![CDATA[支持向量机（SVM）定义：
1、线性可分支持向量机：
给定线性可分的训练数据集，通过（硬）间隔最大化或者等价的求解相应的凸二次规划问题学习得到的分离超平面为：w∗x+b=0w∗x+b=0
以及相应的分类决策函数： f(x)=sign(w∗x)+bf(x)=sign(w∗x)+b。
2、线性支持向量机
给定线性不可分的训练数据集，通过软件间隔最大化或者等价的求解相应的凸二次规划问题学习得到的分离超平面为：w∗x+b=0w∗x+b=0
以及相应的分类决策函数： f(x)=sign(w∗x)+bf(x)=sign]]></description><category></category></item><item><title><![CDATA[机器学习——XGBoost实践]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/107443034</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/107443034</guid><author>CoderMateng</author><pubDate>Sun, 19 Jul 2020 11:51:41 +0800</pubDate><description><![CDATA[XGBoost：
XGBoost是大规模并行boosted tree的工具，它是目前最快最好的开源boosted tree工具包，比常见的工具包快10倍以上。在数据科学方面，有大量kaggle选手选用它进行数据挖掘比赛，其中包括两个以上kaggle比赛的夺冠方案。在工业界规模方面，xgboost的分布式版本有广泛的可移植性，支持在YARN, MPI, Sungrid Engine等各个平台上面运行，并且保留了单机并行版本的各种优化，使得它可以很好地解决于工业界规模的问题。
基本原理实践：
import xg]]></description><category></category></item><item><title><![CDATA[机器学习——提升算法理论]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/107417601</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/107417601</guid><author>CoderMateng</author><pubDate>Fri, 17 Jul 2020 20:59:20 +0800</pubDate><description><![CDATA[提升算法的概念：

提升算法：

提升算法推导：


提升算法步骤：


]]></description><category></category></item><item><title><![CDATA[决策树和随机森林——推导与实践]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/107304734</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/107304734</guid><author>CoderMateng</author><pubDate>Sun, 12 Jul 2020 20:29:37 +0800</pubDate><description><![CDATA[决策树：


条件熵：





]]></description><category></category></item><item><title><![CDATA[线性回归——推导及实践]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/107209547</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/107209547</guid><author>CoderMateng</author><pubDate>Wed, 08 Jul 2020 16:55:05 +0800</pubDate><description><![CDATA[使用极大似然估计解释最小二乘

似然函数推导过程：

高斯的对数似然与最小二乘：

θ的解析式的求解过程：

最小二乘意义下的参数最优解：

加入λ扰动后：

线性回归的复杂度惩罚因子：

正则项与防止过拟合：

梯度下降算法：

梯度方向推导：

批量梯度下降算法：

随机梯度下降算法：


...]]></description><category></category></item><item><title><![CDATA[机器学习——数据清洗，特征选择]]></title><link>https://blog.youkuaiyun.com/CoderMateng/article/details/107135442</link><guid>https://blog.youkuaiyun.com/CoderMateng/article/details/107135442</guid><author>CoderMateng</author><pubDate>Sun, 05 Jul 2020 10:27:53 +0800</pubDate><description><![CDATA[数据清洗的方法：
设置阈值去掉异常值
随机森林预测去掉点的数值加进去
onehot编码（不适用于决策树和随机森林）：
先将一个属性分成几个类别
然后再将样本的数据变成矩阵01，1表示其所在类别
会导致特征数增多
数据清洗代码实现
import numpy as np
import pandas as pd
from fuzzywuzzy import fuzz
from fuzzywuzzy import process


def enum_row(row):
    print row['state']]]></description><category></category></item></channel></rss>