-
2019-08-23 23:16:22
自己在实际的工作和平时的学习中,深深地感受到数据和特征的重要性。正如“Garbage in, garbage out”(错进,错出)所说,对于机器学习中,数据和特征往往决定了结果的上限,模型、算法和优化策略则是逐步在逼近这个上限(注:该话的大意来自于《百面机器学习》这本书的第一章—特征工程)。自己查到了市面上关于介绍“特征工程”的书籍,从讲解的详细程度和实践性出发,选择了《特征工程入门与实践》这本书作为参考书籍。下面是我读完这本书后所总结的读书笔记。
1. 特征工程简介
特征工程的意义:在现实中很少有像机器学习竞赛和学术文献中那样干净的数据,在对原始数据的利用过程中,必须要将数据转化为更好地可以表现潜在问题的特征,才能更好地作为机器学习算法模型的输入,从而得到较为理想的模型性能。
特征工程的评估:(1)得到基准模型的性能;
(2)应用至少一种特征工程;
(3)对于每种特征工程,获得对应的性能指标;
(4)若指标的提升(相对于原模型的相对提升,用百分数表示)大于我们自己定义的阈值,则可以在机器学习流水线中应用该特征工程。
特征工程的评价指标:分类:准确率、召回率、F1、AUC、特定领域的性能指标(如搜索推荐中的指标);
回归:MSE、RMS、EMAE等;
聚类:轮廓系数(值在-1~1之间)等;
统计检验:皮尔逊相关系数、p值检验、卡方检验等。
注:对于前三类问题,本书中所有的特征工程的源代码只涉及其中的分类的准确率指标评价问题。
特征工程的机器学习流水线:(1)探索性数据分析(进行数据的基本的描述性统计);
(2)特征理解(如观察每列数据的等级等);
(3)特征增强(如填充缺失值,对数据进行归一化等);
(4)特征构建(如编码分类变量等);
(5)特征选择(本书中都是单变量测试,根据测试的结果选择性能较佳的特征);
(6)特征转换(从原始列中创建与之前结构不同的新列);
(7)特征学习(相比于(6)中的PCA、LDA等一些依赖数据形状的算法,这里将对对数据形状无要求的数据的特征进行学习,介绍的学习的算法有RBM和Word2vector)。
注:原始的数据会经过多种处理,乃至多种机器学习算法才能得到最终的输出,这里将整体的处理过程称为特征工程的机器学习流水线。在scikit-learn中有很多流水线的实现中常用的模块,如Pipeline、train_test_split等,这些都方便了我们对于流水线的构造。在接下来的 2-7节内容中,将对流水线中每一部分进行介绍。
2. 探索性数据分析
这部分是穿插在整个流水线的实现过程中的,经常以图表可视化的形式呈现。比如,我们可以用Seaborn创建关联热图,显示特征的交互情况。在识别缺失值时,使用Pandas得到属性的统计信息。
3. 特征理解
我们常见的大多数非结构化的数据(如服务器日志等)都可以转化为结构化的数据(利用Pandas转化为DataFrame的数据形式更方便处理)。这里将在机器学习中经常要处理的数据划分为四大类,如下所示:
(1)定类数据 不同的数据只表示不同的类别,并无大小高低之分。
(2)定序数据 相比(1),数据之间有大小高低之分。
(3)定距数据 可以对这样的数据进行一些如计算算数平均值、标准差等的操作,常与分桶关联。
(4)定比数据 数据之间的数值差别比较大。
注:(1)和(2)是定性数据,(3)和(4)是定量数据(数据代表数值大小)。对于(1)常用直方图、扇形图表示,对于(2)常用直方图、扇形图、茎叶图表示,对于(3)常用直方图表示,对于(4)常用直方图表示。
更多相关内容 -
学习《特征工程入门与实践》
2020-03-27 23:48:07特征工程是数据科学和机器学习流水线上的重要一环,包括识别、清洗、构建和发掘数据的特征,为进一步解释数据并进行预测性分析做准备。 特征工程主要内容: ...《特征工程入门与实践》涉及特征...特征工程是数据科学和机器学习流水线上的重要一环,包括识别、清洗、构建和发掘数据的特征,为进一步解释数据并进行预测性分析做准备。
特征工程主要内容:
- 识别和利用不同类型的特征
- 清洗数据中的特征,提升预测能力
- 为何、如何进行特征选择和模型误差分析
- 利用领域知识构建新特征
- 基于数学知识交付特征
- 使用机器学习算法构建特征
- 掌握特征工程与特征优化
- 在现实应用中利用特征工程
《特征工程入门与实践》涉及特征工程的全流程,从数据检查到可视化,再到转换和进一步处理等,并给出了大量数学工具,帮助掌握如何将数据处理、转换成适当的形式,以便送入计算机和机器学习流水线中进行处理。后半部分的特征工程实践用Python作为示例语言,循序渐进,通俗易懂。
整理的机器学习和特征工程方面的学习电子笔记资料参考:
https://www.yuque.com/mathpythondata/lw7b5t
非常简洁而有条理,并且示例做的很详细。讲解习题,注释详细,对新手很友好。
-
特征工程入门与实践----特征工程简介
2019-10-04 08:49:21人工智能的发展,让我们将那些需要手动操作才能处理的问题,...注:本文的内容与图片来源于《特征工程入门与实践》。如有您也想学习相关知识,建议买一本来看。 个人博客 . 联系方式:2391855138(加好友请备注)人工智能的发展,让我们将那些需要手动操作才能处理的问题,让计算机也可以解决。例如,自然语言处理、人脸识别和图片分类等。因此,我们需要借助机器学习的知识来构建一个AI系统,从用户那里读取到原始数据,让计算机来帮助我们达到识别的目的。为了解决某个问题,需要收集大量的数据,这些数据都是在实际的情况中自然形成的,往往有杂乱或者不完整的情况。因此,我们需要对原始数据做处理。这就是所谓的特征工程。在日常的工作中80%的时间都用在捕获、清洗和组织数据上,20%的时间用在构造机器学习流水线上。下图展示了不同工作时间的比例。
- 设置训练集:3%
- 清洗和组织数据:60%
- 收集数据集:19%
- 挖掘数据模式:9%
- 调整算法:4%
准备数据包括捕获数据、存储数据、清洗数据。清洗数据的意思是将数据转换为云系统和数据库可以轻松识别的形式。组织数据是将数据集的格式转换为更干净的格式。我们主要专注于特征工程,着眼于清洗和组织数据的过程,为机器学习流水线所服务。因此,所谓特征工程就是将数据转换为能更好的表示潜在问题的特征,而最终的目的是提高机器学习的性能。下面我们就要了解几个相关的概念。
- 特征:特征是对机器学习算法有意义的属性,对应表格数据,一列就是一个特征。
- 响应(标签):响应也是属性的一个,但是这个属性是我们有希望进行预测的。
- 监督学习:利用有标签的数据,通过机器学习方法进行预测或者分类的学习过程。
- 无监督学习:利用无标签数据,通过机器学习算法进行预测或者分类的学习过程。
我们要做的就是通过特征工程,将杂乱、有问题的数据转化为干净、整洁的数据。这样我们就可以通过机器学习的算法来解决相应的问题。特征工程能提高机器学习的性能。评价一个特征工程的好坏的步骤为:
(1)在应用任何特征工程之前,得到机器学习模型的基准性能。
(2)应用一种或多种特征工程。
(3)对于每种特征工程获取一个性能指标,并与基准性能进行对比。
(4)如果性能增量大于某个阈值,则认为这种特征工程是有益的,可以应用在机器学习流水线上。
接下来我们将学习以下几部分内容,来深入理解特征工程都在做什么:- 特征理解
- 特征增强
- 特征选择
- 特征构建
- 特征转换
- 特征学习
最后,说一下我自己是怎么开始认识到特征工程的重要,在我们的学习中,都是使用一些被处理好的数据来实现我们的模型。并且大多数人都将学习重点放在了模型上。这也造成了很多人都不关心特征工程这部分。直到最近参加了数学建模,选了一道需要特征工程相关知识的题,才感觉到自己对这方面知识的欠缺。最后买了这本书《特征工程入门与实践》。希望学完这本书,可以增加自己对特征工程的了解。
注:本文的内容与图片来源于《特征工程入门与实践》。如有您也想学习相关知识,建议买一本来看。
个人博客.
联系方式:2391855138(加好友请备注) -
机器学习理论到实践-特征工程-小白入门解析
2021-08-04 10:20:53机器学习理论到实践-特征工程-小白入门解析 -
特征工程入门与实践----特征增强
2019-10-04 13:55:14特征增强是对数据的进一步修改,我们开始清洗和增强数据。主要涉及的操作有 识别数据中的缺失值 删除有害数据 输入缺失值 对数据进行归一化/标准化 1. 识别数据中的缺失值 &...特征增强是对数据的进一步修改,我们开始清洗和增强数据。主要涉及的操作有
- 识别数据中的缺失值
- 删除有害数据
- 输入缺失值
- 对数据进行归一化/标准化
1. 识别数据中的缺失值
特征增强的第一种方法是识别数据的缺失值,可以让我们更好的明白如何使用真是世界中的数据。通常,数据因为一些原因,导致数据缺失,不完整。我们需要做的就是识别出数据中的缺失值。并对缺失值进行处理。本文使用皮马印第安人糖尿病预测数据集。这个数据集包含768行数据点,9列特征。预测21岁以上的女性皮马印第安人5年内是否会患糖尿病。数据每列的含义如下:
(1)怀孕次数
(2)口服葡萄糖耐量实验中的2小时血浆葡萄糖浓度
(3)舒张压
(4)三头肌皮褶厚度
(5)2小时血清胰岛素浓度
(6)体重指数
(7)糖尿病家族函数
(8)年龄
(9)类变量(0或1,代表有无糖尿病)
首先我们先来了解一下数据# 导入探索性数据分析所需的包 import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns %matplotlib inline plt.style.use('fivethirtyeight') # 添加标题 pima_column_names = ['times_pregnant', 'plasma_glucose_concentration', 'diastolic_blood_pressure', 'triceps_thickness', 'serum_insulin', 'bmi', 'pedigree_function', 'age', 'onset_diabetes'] pima = pd.read_csv('./data/pima.data', names=pima_column_names) pima.head()
# 计算一下空准确率 pima['onset_diabetes'].value_counts(normalize=True)
# 对plasma_glucose_concentration列绘制两类的直方图 col = 'plasma_glucose_concentration' plt.hist(pima[pima['onset_diabetes'] == 0][col], 10, alpha=0.5, label='non-diabetes') # 不患糖尿病 plt.hist(pima[pima['onset_diabetes'] == 1][col], 10, alpha=0.5, label='diabetes') # 患糖尿病 plt.legend(loc='upper right') plt.xlabel(col) plt.ylabel('Frequency') plt.title('Histogram of {}'.format(col)) plt.show()
# 线性相关矩阵量化变量间的关系 # 数据相关矩阵的热力图 sns.heatmap(pima.corr())
从上面的分析中,我们首先可以得到患者和常人的血糖浓度是有很大的差异的。并且血糖浓度与患者是否患病的相关性很大。下面我们来分析一下数据是否存在缺失值。# 查看数据中是否存在缺失值 pima.isnull().sum()
从上面的结果我们可以看到并没有缺失值,我们在看一下关于数据的基本描述性统计。# 查看数据的基本描述性统计 pima.describe()
我们可以看到BMI指标的最小值是0.这是有悖于医学常识的。这有可能是缺失或不存在的点都用0填充了。从数据中可以看到,有好几列都是0.但是onset——diabetes中的0代表没有糖尿病,人也可以怀孕0次。所以这两列没有问题,其他的列的缺失值用0填充了。- plasma_glucose_concentration
- diastolic_blood_pressure
- triceps_thickness
- serum_insulin
- bmi
2. 处理数据中的缺失值
首先,对存在缺失值的列,使用None代替0。然后在查看是否存在缺失值。
# 直接对所有列操作 columns = ['serum_insulin', 'bmi', 'plasma_glucose_concentration', 'diastolic_blood_pressure', 'triceps_thickness'] for col in columns: pima[col].replace([0], [None], inplace=True) # 查看缺失值情况 pima.isnull().sum()
(1)删除有害的行
我们首先删除有害的行,然后对删除前后的数据做一个分析,最后应用机器学习算法评估一下当前数据的性能。
删除存在缺失值的数据:# 删除存在缺失的行 pima_dropped = pima.dropna() # 检查删除了多少行 num_rows_lost = round(100*(pima.shape[0] - pima_dropped.shape[0]) / float(pima.shape[0])) print("retained {}% of rows".format(num_rows_lost))
retained 49% of rows
数据分析:# 继续对数据做一下探索性分析 # 未删除数据的空准确率 pima['onset_diabetes'].value_counts(normalize=True)
0 0.651042
1 0.348958
Name: onset_diabetes, dtype: float64# 删除数据后的空准确率 pima_dropped['onset_diabetes'].value_counts(normalize=True)
0 0.668367
1 0.331633
Name: onset_diabetes, dtype: float64从空准确率来看,前后的True和False并无太大的变化。接下来比较一下删除前后的个属性均值。
# 未删除数据的均值 pima.mean()
# 删除数据后的均值 pima_dropped.mean()
# 使用条形图进行可视化 # 均值变化百分比条形图 ax = ((pima_dropped.mean() - pima.mean()) / pima.mean()).plot(kind='bar', title='% change in average column values') ax.set_ylabel('% change')
我们可以看到,怀孕次数的均值在删除缺失值后下降了14%,糖尿病血系功能也上升了11%。都变化的比较大。删除行会严重影响数据的形状,所以我们应该保留尽可能多的数据。在我们进行其他操作前,我们使用一个机器学习算法验证一下当前数据情况的模型性能。
评估性能:# 导入机器学习 from sklearn.neighbors import KNeighborsClassifier from sklearn.model_selection import GridSearchCV # 删除标签数据 X_dropped = pima_dropped.drop('onset_diabetes', axis=1) # 特征 print("leanrning from {} rows".format(X_dropped.shape[0])) y_dropped = pima_dropped['onset_diabetes'] # 标签 # KNN的模型参数 knn_params = {'n_neighbors': [1, 2, 3, 4, 5, 6, 7]} # KNN模型 knn = KNeighborsClassifier() # 使用网格搜索优化 grid = GridSearchCV(knn, knn_params) grid.fit(X_dropped, y_dropped) # 输出结果 print(grid.best_score_, grid.best_params_)
结果:0.7448979591836735 {‘n_neighbors’: 7}
(2)填充缺失值
首先,我们检查一下缺失值的情况。然后使用sklearn模块的方法填充缺失值,最后在检查缺失值情况,用机器学期方法验证一下模型的性能。
检查缺失值:# 在此查看缺失值情况 pima.isnull().sum()
填充缺失值:# 使用scikit-learn预处理类的Imputer模块 from sklearn.preprocessing import Imputer # 实例化对象 imputer = Imputer(strategy='mean') # 创建新对象 pima_imputed = imputer.fit_transform(pima) # 将得到的ndarray类型转化为DataFrame pima_imputed = pd.DataFrame(pima_imputed, columns=pima_column_names) pima_imputed.head()
检查缺失值情况并评估性能:# 判断是否有缺失值 pima_imputed.isnull().sum()
# 尝试一下填充一些别的值,查看对KNN模型的影响 # 用0填充 pima_zero = pima.fillna(0) X_zero = pima_zero.drop('onset_diabetes', axis=1) y_zero = pima_zero['onset_diabetes'] # knn模型参数 knn_params = {'n_neighbors': [1, 2, 3, 4, 5, 6, 7]} # 网格搜索 grid = GridSearchCV(knn, knn_params) grid.fit(X_zero, y_zero) # 输出 print(grid.best_score_, grid.best_params_)
结果:0.7330729166666666 {‘n_neighbors’: 6}
3. 标准化和归一化
我们现在要做的是进一步增强机器学习流水线,进行一下探索性数据分析。
impute = Imputer(strategy='mean') # 填充所有的缺失值 pima_imputed_mean = pd.DataFrame(impute.fit_transform(pima), columns=pima_column_names) # 画直方图 pima_imputed_mean.hist(figsize=(15, 15))
从这分析中可以发现,某些特征数据的尺度不同。有一些机器学习模型受数据尺度的影响很大。因此,我们可以使用某种归一化/标准化操作。
**归一化:**将行和列对齐并转化为一致的规则。将所有定量列转化为同一个静态范围中的值。
**标准化:**通过确保所有行和列在机器学习中得到平等对待,让数据的处理保持一致。(1)z分数标准化
z分数标准化利用了统计学最简单的z分数思想。将特征重新缩放,均值为0、标准差为1。通过缩放特征、统一化均值和方差,可以让机器学习模型达到最优化。公式为
z = x − μ σ z=\frac{x-\mu }{\sigma } z=σx−μ
其中 μ \mu μ为均值, σ \sigma σ为标准差。# 取此列均值 mu = pima['plasma_glucose_concentration'].mean() # 取此列标准差 sigma = pima['plasma_glucose_concentration'].std() # 对每个值计算z分数 print(((pima['plasma_glucose_concentration'] - mu) / sigma).head())
# 使用内置的z分数归一化 from sklearn.preprocessing import StandardScaler # 用z分数标准化 scaler = StandardScaler() glucose_z_score_standardized = scaler.fit_transform(pima[['plasma_glucose_concentration']]) # 直方图 ax = pd.Series(glucose_z_score_standardized.reshape(-1,)).hist() ax.set_title('Distribution of plasma_glucose_concentration after Z Score Scaling')
# 将z分数标准化插入到机器学习流水线上 knn_params = {'imputer__strategy': ['mean', 'median'], 'classify__n_neighbors': [1, 2, 3, 4, 5, 6, 7]} mean_impute_standardize = Pipeline([('imputer', Imputer()), ('standardize', StandardScaler()), ('classify', knn)]) X = pima.drop('onset_diabetes', axis=1) y = pima['onset_diabetes'] grid = GridSearchCV(mean_impute_standardize, knn_params) grid.fit(X, y) print(grid.best_score_, grid.best_params_)
结果:0.7421875 {‘classify__n_neighbors’: 7, ‘imputer__strategy’: ‘median’}
(2)min-max标准化
m = x − x m i n x m a x − x m i n m=\frac{x-x_{min} }{x_{max}-x_{min}} m=xmax−xminx−xmin
其中, x m i n x_{min} xmin为该列最小值, x m a x x_{max} xmax为该列最大值。
标准化# 导入sklearn模块 from sklearn.preprocessing import MinMaxScaler # 实例化 min_max = MinMaxScaler() # min-max标准化 pima_min_maxed = pd.DataFrame(min_max.fit_transform(pima_imputed), columns=pima_column_names) # 得到描述性统计 pima_min_maxed.describe()
评估性能knn_params = {'imputer__strategy': ['mean', 'median'], 'classify__n_neighbors': [1, 2, 3, 4, 5, 6, 6]} mean_impute_standardize = Pipeline([('imputer', Imputer()), ('standardize', MinMaxScaler()), ('classify', knn)]) X = pima.drop('onset_diabetes', axis=1) y = pima['onset_diabetes'] grid = GridSearchCV(mean_impute_standardize, knn_params) grid.fit(X, y) print(grid.best_score_, grid.best_params_)
结果:0.74609375 {‘classify__n_neighbors’: 4, ‘imputer__strategy’: ‘mean’}
(3)行归一化
行归一化是针对行进行操作的,保证每行有单位范数,也就是每行的向量长度相同。
∥ x ∥ = ( x 1 2 + x 2 2 + . . . + x n 2 ) \left \| x \right \|=\sqrt{(x_{1}^{2}+x_{2}^{2}+...+x_{n}^{2})} ∥x∥=(x12+x22+...+xn2)
归一化# 引入行归一化 from sklearn.preprocessing import Normalizer # 实例化 normalize = Normalizer() pima_normalized = pd.DataFrame(normalize.fit_transform(pima_imputed), columns=pima_column_names) # 行归一化后矩阵的平均范数 np.sqrt((pima_normalized**2).sum(axis=1)).mean()
结果:1.0
评估性能knn_params = {'imputer__strategy': ['mean', 'median'], 'classify__n_neighbors': [1, 2, 3, 4, 5, 6, 6]} mean_impute_standardize = Pipeline([('imputer', Imputer()), ('normalize', Normalizer()), ('classify', knn)]) X = pima.drop('onset_diabetes', axis=1) y = pima['onset_diabetes'] grid = GridSearchCV(mean_impute_standardize, knn_params) grid.fit(X, y) print(grid.best_score_, grid.best_params_)
结果:0.6822916666666666 {‘classify__n_neighbors’: 6, ‘imputer__strategy’: ‘mean’}
从本章的学习中,我们处理了数据中的缺失值,并使用标准化/归一化的方法继续处理数据。然后我们评估了性能。得到的结果是使用均值填充数据,然后用min-max标准化处理出具。得到0.7461的准确率。注意,虽然这个数据比删除存在缺失值的数据准确率没有高很多。但是这是使用全部数据训练的结果。更具有一般化。泛化性能将更好。注:本文的内容与图片来源于《特征工程入门与实践》。如有您也想学习相关知识,建议买一本来看。
个人博客.
联系方式:2391855138(加好友请备注) -
机器学习入门之特征工程.pdf
2020-01-20 10:43:20特征工程简介 • 什么是特征工程? • 为什么特征工程很重要? 特征工程处理方法 • 数据预处理的有效方法 • 如何获取重要特征? • 如何进行有效的特征选择? • 常用的降维方法 -
Python数据分析实践:特征工程概述.pdf
2022-06-14 19:12:53Python数据分析实践:特征工程概述.pdf -
极佳的特征工程教程——Understanding Feature Engineering
2018-03-13 16:07:47特征工程是机器学习建模最重要的一步,它直接决定了模型的效果。 近日数据科学家 Dipanjan Sarkar发表了几篇特征工程的深度好文,强烈推荐大家学习观摩! -
ANSYS Workbench 19.0基础入门与工程实践-PPT课件.zip
2022-07-11 08:40:07ANSYS Workbench 19.0基础入门与工程实践-PPT课件.zip -
PFGA与VHDL快速工程实践从入门到提高
2017-10-09 16:15:43PFGA与VHDL快速工程实践从入门到提高,基本上可以学会PFGA的开发! -
2、二手车数据挖掘实践PPT_特征工程.pptx
2021-08-05 11:00:502、二手车数据挖掘实践PPT_特征工程.pptx -
简单图像处理(opencv-python入门)
2021-01-20 02:57:46参考书目:《Python人脸识别——从入门到工程实践》王天庆著 1.负片(相机底片) import cv2 import numpy as np img=cv2.imread(1.png) cv2.imshow(lala,img) cv2.waitKey(1000) print(img) height=img.shape[0] ... -
TMS320C6455入门实践相关工程文件.zip
2021-04-11 13:35:32其中的文件主要是和本人写的“TMS320C6455入门实践”相关的一些工程文件。包括编译CSL库、一个简单的应用工程Blink和用于固化程序的工程FlashBurn。 -
QTP入门与实践 QTP入门与实践
2011-07-19 00:25:34QTP入门与实践QTP入门与实践QTP入门与实践QTP入门与实践 -
Python人脸识别——从入门到工程实践
2021-11-24 18:45:22参考书籍:《Python人脸识别从入门到工程实践》 全书共8章: 第 1 章:介绍了人脸识别的基础知识和必备常识; 第 2~4 章:详细讲解了与人脸识别相关的数学、机器学习、计算机视觉、OpenCV相关的基础和算法; 第 5 章... -
Python数据处理与特征工程
2020-10-11 16:58:28CSDN全站首发——Python数据处理与特征工程 课程聚焦数据科学中,数据清洗与分析前的特征提取过程,解决数据科学中最重要的原始数据清洗和特征提取。 【定制课程 精准扫除学习盲点】 课程充分考虑各类实际问题... -
AI产品经理入门:我理解的AI工程化的系统思维框架
2021-02-25 08:48:37通过我的观察:大多数的AIPM实际上都很盲目的去学AI技术,而且学的很深,尤其是那些产品新人,学这些东西本身没问题,但是这样的时间和精力分配上就出了问题——入门任何一行最快的方法和手段就是实践,让实践中遇到... -
特征工程入门:应该保留和去掉那些特征
2020-08-22 09:16:05在特征/列上执行的任何能够帮助我们根据数据进行预测的操作都可以称为特征工程。这将包括以下内容: 添加新功能 去掉一些讲述同样内容的特征 将几个特性结合在一起 将一个特性分解为多个特性 添加新特征 假设您想... -
玩转Python爬虫——入门与实践
2017-05-15 15:50:05任何一个掌握了Python基础的知识就可以入门爬虫,爬虫技术是提高Python技能好的实践项目之一。爬虫所涉及的技术包括HTTP协议、数据库(MySQL、MongoDB)、缓存(Redis)、消息队列、各种算法(布隆过滤器)、分布式... -
Sass基础入门与实践提升视频课程
2017-11-06 21:27:56本课程从基础的sass概述讲起,深入浅出地介绍sass的产生背景、编译方式、基本语法,通过实践页面的开发,全面介绍了如何使用sass结合开发工具,实现编写sass代码的过程。 -
FPGA与VHDL快速工程实践从入门到提高
2010-12-09 15:35:16FPGA与VHDL快速工程实践从入门到提高,属于是FPGA的基础性的入门学习 -
硬件工程师如何零基础入门?
2022-03-13 23:08:031、书籍阅读 硬件的入门需要先看基本的书籍,和工程实践结合紧密的课程有:电路分析、数字电路、模拟电路、高频电子等。 对于基础较差的,先看电路分析,再看模电和数电。 之前也单独写过一篇文章,推荐了一些很好... -
【机器学习】特征工程的最佳实践
2018-07-25 09:53:27特征工程是为机器学习创建新输入功能的过程,是改进预测模型的最有效方法之一。 提出功能很困难,耗时,需要...在本指南中,我们将讨论20个最佳实践和启发式方法,它们将帮助您浏览特征工程。 什么是特征工程... -
Serverless云开发从入门到实战.pdf
2021-04-08 10:21:37Serverless云开发从入门到实战 -
软件工程理论与实践中文版
2010-06-12 13:28:12此书还可作为本科生软件工程概念和实践的入门教材,或用于软件开发人员扩充该领域知识。本书中涵盖的各种样例:大型项目,小型项目,面向对象和面向过程,实时处理,事务处理,开发案例,维护,适合各种读者群。12章... -
干净的数据(数据清洗入门与实践)[澳]Robert
2017-12-23 13:20:35本书主要针对从事机器学习领域,尤其是从事数据挖掘领域的专业人才使用,本书把数据挖掘的特征工程专门拿出来详细介绍,全书是对特征工程的完尽阐述 -
ANSYS Workbench 14.5建模与仿真从入门到精通
2018-04-14 12:50:03ANSYS Workbench 14.5建模与仿真从入门到精通,全面的PDF,分享一下 -
《MATLAB App Designer从入门到实践》随书源代码
2022-03-05 14:58:30为了满足大家的求知欲,让大家能够轻松愉快地搞定App Designer开发,苑伟民老师结合自身多年的MATLAB编程经验以及丰富的App Designer实战开发经历汇著成《MATLAB App Designer从入门到实践》。 即便对App Designer... -
FPGA/VHDL工程实践 入门与提高
2009-04-21 07:56:18FPGA/VHDL工程实践 入门与提高 很好的教材