机器学习-学习笔记
2024-07-04 18:24:43 0 举报
AI智能生成
为你推荐
查看更多
机器学习是一种使计算机系统在没有明确编程的情况下自动学习和改进的方法。核心内容包括监督学习、无监督学习以及强化学习等。监督学习通过标记训练数据预测新实例,而无监督学习则通过发现数据中的结构或模式来进行学习。强化学习则是机器学习的一种,通过试错来提高其在特定任务中的性能。文件类型主要涉及数据文件和模型文件等,包括.csv、.xlsx、.txt、.json等。修饰语包括自学、自适应、智能化等,这些都体现了机器学习的能力和特性。
作者其他创作
大纲/内容
( x - np.mean ) / (np.std)
公式
from sklearn.preprocessing import StandardScaler
导入库
std_scaler = StandardScaler() # 创建对象results = std_scaler.fit_transform(df_work['列名']) print(results) # 其结果是一个numpy array
代码
标准化
(x - min) / (max - min)
from sklearn.preprocessing import MinMaxScaler
mmx_scaler = MinMaxScaler()df_work['列名'] = mmx_scaler.fit_transform(df_work['列名'])df_work.head()
归一化
标准化/归一化
font color=\"#ff0000\
基础填充
from sklearn.preprocessing import OrdinalEncoder
OrdinalEncoder
from sklearn.preprocessing import OneHotEncoder
OneHotEncoder
数值化
from sklearn.model_selection import GridSearchCV
调优
from sklearn.model_selection import train_test_split
划分数据集和验证集
from sklearn import tree
决策树
from sklearn.ensemble import RandomForestClassifier
随机森林
from sklearn.ensemble import GradientBoostingClassifier
GBM
from xgboost import XGBClassifier
XGboost
from lightgbm import LGBMClassifier
LightGBM
from sklearn.cluster import KMeans
kmeans_model = KMeans(n_clusters=3(K)font color=\"#ff0000\
寻找最优k值
K-means(聚类算法)
逻辑回归(本质是分类问题)
from sklearn.linear_model import LinearRegression
线性回归(LinearRegression)
from nltk.tokenize import TweetTokenizer
# 实例化TweetTokenizer方法tokenizer = TweetTokenizer()# 使用TweetTokenizer方法中tokenize函数进行文本分词处理,处理前使用lower()函数首先将文本转换为小写。preprocess = lambda text: ' '.join(tokenizer.tokenize(text.lower()))
分词方法preprocess
from sklearn.feature_extraction.text import CountVectorizer
# 实例化CountVectorizer方法,min_df参数设置为1vectorizer = CountVectorizer(min_df=1)# 基于text_train数据训练词袋模型vectorizer.fit(texts_train)# 使用已训练的词袋模型完成对texts_train,texts_test的特征抽取X_train_bow = vectorizer.transform(texts_train)X_test_bow= vectorizer.transform(texts_test)
词袋模型
from wordcloud import WordCloudfrom matplotlib import pyplot as plt%matplotlib inline
词云(画图查看哪个词频高)
关于词的
算法
predict(val_X)
预测结果
predict_proba(val_X)
预测概率
评估模型(计算预测)
font color=\"#388e3c\
评估模型(计算准确率、召回率)
import numpy as npfrom sklearn import metricsfrom sklearn.metrics import mean_squared_error
均方误差(MSE)
均方根误差(RMSE)
平均绝对误差(MAE)
np.mean(np.abs((y_pred - y_true) / y_true))
平均绝对百分误差(MAPE)
中值绝对误差(MAD)
回归决定系数
各类误差代码
评测指标
机器学习关键代码(Scikit - learn)
例如:pd.read_csv(r\"C:\\Users\\Lenovo\\Desktop\\文件\\data.csv\") (最基础)
读取
例如:pd.to_csv(r\"C:\\Users\\Lenovo\\Desktop\\文件\\data.csv\") (最基础)
储存
csv文件
pandas.read_excel(font color=\"#ff0000\
例如:pd.read_excel(r\"C:\\Users\\Lenovo\\Desktop\\文件\\data.xls或.xlsx\") (最基础)
例如:pd.to_excel(r\"C:\\Users\\Lenovo\\Desktop\\文件\\data.xlsx\") (最基础)
Excel文件
head() (读取前几行(默认值参数为5行))
tail() 读取后几行
读取位置
utf-8 全球通用编码类型 (内存大)
gbk 汉语编码类型(内存小)
encoding(编码类型)
文件读取与存储
columns 查找列名
index 查找index
values 查找值
dtypes 查询类型
size 查询元素个数
ndim 获取数据维度
shape 获取数据形状
loc [行索引名称或条件, 列索引名称] 在行索引前加 ~ 符可以筛选相反数据
iloc [行索引位置, 列索引位置]
info() 用于获取 DataFrame 的简要信息
describe(include = 'all') 用于获取 DataFrame 较多值的计算 参数include = 'all' 可获取更多数据
基于相关性结果做变量选择
选择与y相关性高的因子,同时互相关性低的因子
代码 :sns.heatmap(corr_df)
corr 相关系数函数
value_counts() 对频数进行统计 (该数据有几种数据和每种数据的数量)
var() 方差
median() 中位数
mean() 平均值
max() 最大值
min() 最小值
std() 标准差
mode() 众数
count() 非空值数目
quantile() 四分位数
描述性统计
基础函数
缺失值检查
apply + 自定义函数
index
row(serise)
元组
iterrows
遍历dataframe
列表,元素是列名
values
字典,元素“列名”:[函数1, 函数2]
aggfunc
样例代码
pivot_table
groupby('列名')
返回的是一个group的类型
代码:font color=\"#ff0000\
返回的是dataframe
传递给自定义函数的是dataframe
def func1(x): print(type(x)) print(x)data.apply(func1)
groupby(). apply()
注意事项: groupby创建完之后返回的是一个对象
groupby()
列Series, 可以用列表保存多列
是否统计总数
margins
是否求比例
normalize
样例
crosstab
分组统计/数据透视表
right =
join
列名是否要一致? 否
列的内容是可以mou定
left_on/right——on
True/False
left_index/right_index
merge
默认index列进行合并
[表1, 表2, 表3 .......]
1: 列合并
0:行合并
axis = 1或0
concat
合并数据集
ascending = True/False (升序/降序)
sort_values
排序
bins = [...](划分区间)
labels
right
pd.cut(x font color=\"#ff0000\
pd.cut
变量离散化
列, series
prefix = ' ' (建议是与原列名一致)
get_dummies
独热编码
pandas.concat(objs font color=\"#ff0000\
concat 方法堆叠数据
append 方法堆叠数据
堆叠合并数据
replace
变量映射
基础操作
import matplotlib.pyplot as plt / import seaborn as sns
plt.figure( figsize = (font color=\"#ff0000\
创建画布大小、像素
figurefont color=\"#ff0000\
创建子图
画布与子图
plt.title()
添加标题
plt.xlabel() / plt.ylabel()
添加x/y轴名称
plt.xlim()/plt.ylim()
指定当前x/y轴数据范围
plt.xticks()/plt.yticks()
指定x/y轴刻度与取值
plt.legend()
图例
标签与图例
plt.savafig()
保存
plt.show()
显示图形
保存与显示图形
工具包及基本参数设置
plt.bar(left font color=\"#ff0000\
柱状图
基础代码:data['列名'].plot.hist()
直方图
折线图
散点图
饼图
plt.barh(y font color=\"#ff0000\
横柱图
sns.boxplot(datafont color=\"#ff0000\
箱线图
sns.heatmap(data font color=\"#ff0000\
热力图
小提琴图
基础构图
Matplotlib 数据可视化/seaborn
pandas 统计分析
数据分析与应用
机器学习
0 条评论
回复 删除
下一页