KNN 算法实现以及封装
-
Python (>=3.5)
-
pandas
-
numpy
-
matplotlib (>=0.18)
NB 算法实现以及封装
-
Python (>=3.5)
-
collections
-
numpy
defaultdict(<class 'int'>, {('Sunny', 'No'): 3, ('Sunny', 'Yes'): 2, ('Cool', 'Yes'): 3, ('Cool', 'No'): 1, ('High', 'No'): 4, ('High', 'Yes'): 3, ('Strong', 'No'): 3, ('Strong', 'Yes'): 3})
-----------calPriorProbability-----------
{'Yes': 0.6428571428571429, 'No': 0.35714285714285715}
-----------calPosteriorProbability-----------
{('Sunny', 'No'): 0.6, ('Sunny', 'Yes'): 0.2222222222222222, ('Cool', 'Yes'): 0.3333333333333333, ('Cool', 'No'): 0.2, ('High', 'No'): 0.8, ('High', 'Yes'): 0.3333333333333333, ('Strong', 'No'): 0.6, ('Strong', 'Yes'): 0.3333333333333333}
---------getArgMax--------
No : 0.02057142857142857
Apriori 算法实现以及封装
- Python (>=3.5)
L[ 0 ]: {frozenset({'l4'}), frozenset({'l3'}), frozenset({'l5'}), frozenset({'l1'}), frozenset({'l2'})}
freq_set: frozenset({'l4'})
freq_set: frozenset({'l3'})
freq_set: frozenset({'l5'})
freq_set: frozenset({'l1'})
freq_set: frozenset({'l2'})
L[ 1 ]: {frozenset({'l5', 'l1'}), frozenset({'l2', 'l5'}), frozenset({'l2', 'l4'}), frozenset({'l1', 'l3'}), frozenset({'l2', 'l3'}), frozenset({'l2', 'l1'})}
freq_set: frozenset({'l5', 'l1'})
big_rule: (frozenset({'l1'}), frozenset({'l5'}), 0.3333333333333333)
big_rule: (frozenset({'l5'}), frozenset({'l1'}), 1.0)
freq_set: frozenset({'l2', 'l5'})
big_rule: (frozenset({'l2'}), frozenset({'l5'}), 0.2857142857142857)
big_rule: (frozenset({'l5'}), frozenset({'l2'}), 1.0)
freq_set: frozenset({'l2', 'l4'})
big_rule: (frozenset({'l2'}), frozenset({'l4'}), 0.2857142857142857)
big_rule: (frozenset({'l4'}), frozenset({'l2'}), 1.0)
freq_set: frozenset({'l1', 'l3'})
big_rule: (frozenset({'l1'}), frozenset({'l3'}), 0.6666666666666666)
big_rule: (frozenset({'l3'}), frozenset({'l1'}), 0.6666666666666666)
freq_set: frozenset({'l2', 'l3'})
big_rule: (frozenset({'l2'}), frozenset({'l3'}), 0.5714285714285714)
big_rule: (frozenset({'l3'}), frozenset({'l2'}), 0.6666666666666666)
freq_set: frozenset({'l2', 'l1'})
big_rule: (frozenset({'l2'}), frozenset({'l1'}), 0.5714285714285714)
big_rule: (frozenset({'l1'}), frozenset({'l2'}), 0.6666666666666666)
L[ 2 ]: {frozenset({'l2', 'l5', 'l1'}), frozenset({'l2', 'l1', 'l3'})}
freq_set: frozenset({'l2', 'l5', 'l1'})
big_rule: (frozenset({'l2', 'l1'}), frozenset({'l5'}), 0.5)
big_rule: (frozenset({'l2', 'l5'}), frozenset({'l1'}), 1.0)
big_rule: (frozenset({'l5', 'l1'}), frozenset({'l2'}), 1.0)
big_rule: (frozenset({'l2'}), frozenset({'l5', 'l1'}), 0.2857142857142857)
big_rule: (frozenset({'l1'}), frozenset({'l2', 'l5'}), 0.3333333333333333)
big_rule: (frozenset({'l5'}), frozenset({'l2', 'l1'}), 1.0)
freq_set: frozenset({'l2', 'l1', 'l3'})
big_rule: (frozenset({'l2', 'l1'}), frozenset({'l3'}), 0.5)
big_rule: (frozenset({'l2', 'l3'}), frozenset({'l1'}), 0.5)
big_rule: (frozenset({'l1', 'l3'}), frozenset({'l2'}), 0.5)
big_rule: (frozenset({'l2'}), frozenset({'l1', 'l3'}), 0.2857142857142857)
big_rule: (frozenset({'l1'}), frozenset({'l2', 'l3'}), 0.3333333333333333)
big_rule: (frozenset({'l3'}), frozenset({'l2', 'l1'}), 0.3333333333333333)
GradientDescent 算法实现以及封装
-
Python (>=3.5)
-
numpy
-
matplotlib (>=0.18)
RandomForest 算法实现以及封装
编写爬虫抓取携程网酒店住房数据,数据类型如下:
name | decs |
---|---|
hotelClass | 酒店级别 |
hotelLowestprice | 最低价格 |
hotelComment | 酒店 |
healthScore | 卫生分数 |
surroundingsScore | 环境分数 |
serviceScore | 服务分数 |
facilityScore | |
userRecommended |
-
Python (>=3.5)
-
numpy
-
matplotlib (>=0.18)
-
pandas
-
sklearn
-
logging
SVN 算法实现以及封装
编写爬虫抓取携程网酒店住房数据,数据类型如下:
name | decs |
---|---|
hotelClass | 酒店级别 |
hotelLowestprice | 最低价格 |
hotelComment | 酒店 |
healthScore | 卫生分数 |
surroundingsScore | 环境分数 |
serviceScore | 服务分数 |
facilityScore | |
userRecommended |
-
Python (>=3.5)
-
numpy
-
matplotlib (>=0.18)
-
pandas
-
sklearn
-
logging
BPNN 算法实现以及封装
-
Python (>=3.5)
-
numpy
-
matplotlib (>=0.18)
[[131.37436821 89.80489322 93.62128778 120.81983405 195.11064689]]
[[ 3.41589617 -7.81790557 -24.81536717]
[ 1.42394945 -8.93950953 -33.93583834]
[ -1.09484339 -3.36060313 -16.56460439]
[ 0.6733797 -0.70875915 4.61787133]]
PCA 算法实现以及封装
-
Python (>=3.5)
-
numpy
-
matplotlib (>=0.18)
CNN 算法实现以及封装
-
Python (>=3.5)
-
numpy
-
matplotlib (>=0.18)
-
Tkinter
Softmax 在机器学习和深度学习中有着非常广泛的应用。尤其在处理多分类(C > 2)问题,分类器最后的输出单元需要Softmax 函数进行数值处理。关于Softmax 函数的定义如下所示:
其中,Vi 是分类器前级输出单元的输出。i 表示类别索引,总的类别个数为 C。Si 表示的是当前元素的指数与所有元素指数和的比值。Softmax 将多分类的输出数值转化为相对概率,更容易理解和比较。我们来看下面这个例子。
一个多分类问题,C = 4。线性分类器模型最后输出层包含了四个输出值,分别是:
经过Softmax处理后,数值转化为相对概率:
很明显,Softmax 的输出表征了不同类别之间的相对概率。我们可以清晰地看出,S1 = 0.8390,对应的概率最大,则更清晰地可以判断预测为第1类的可能性更大。Softmax 将连续数值转化成相对概率,更有利于我们理解。
实际应用中,使用 Softmax 需要注意数值溢出的问题。因为有指数运算,如果 V 数值很大,经过指数运算后的数值往往可能有溢出的可能。所以,需要对 V 进行一些数值处理:即 V 中的每个元素减去 V 中的最大值。
-
Python (>=3.5)
-
numpy