使用scikit-learn进行机器学习 1.无监督学习 2.监督学习预测值是已知的,分析的目的是根据特征预测未见过的数据的目标值 监督式学习的类型:分类: 目标变量是分类型数据回归: 目标变量是连续型数据 3.命名约定feature = predictor variable = independent variable Target variable = dependent variable = response variable 4.数据要求数据存储在 pandas DataFrame 或 NumPy array中 5.scikit-learn 的一般语法from sklearn.module import Model model = Model() model.fit(X, y) predictions = model.predict(X_new) print(predictions)## array([0, 0, 0, 0, 1, 0]) 算是又开启了一段新的学习历程。同时开启python的单细胞和机器学习环节。后面继续分享。
机器学习分类模型的构建和预测 1.作用
2.步骤
3.KNN算法的原理
4.数据
5.代码
1.作用 根据已知数据和它的分类来构建分类器,对未遇见过的数据进行分类。
labeled data(已标记的数据) = training data,就是已知特征和分类,用于构建分类器的数据。
2.步骤 (1)构建模型
(2)模型从我们传递给他的已标记数据中学习
(3)将未标记的数据作为输入传递给模型
(4)模型预测未遇见过的数据标签
本文主要介绍的是K临近法 ,也就是 k-Nearest Neighbor (KNN)
3.KNN算法的原理 经查询,下图的横纵坐标就是两个自变量。非常之简单
图中黑色的点,如果我们设置k=3,就会预测为红色,设置k=5,就会预测为蓝色。
颜色界限就是预测边界,模型预测红色背景色的属于0,灰色背景色的属于1。
4.数据 datacamp的课程里只是预先加载了churn_df,我搜索一番从github找到了这个文件。(不大好找啊)
https://github.com/rishabhm76/LDA-Project/blob/master/Discriminant-analysis-churn-dataset.csv
5.代码 from sklearn.neighbors import KNeighborsClassifierimport pandas as pdimport numpy as np churn_df = pd.read_csv("Discriminant-analysis-churn-dataset.csv" ) churn_df
from sklearn.neighbors import KNeighborsClassifier X = churn_df[["total_day_charge" , "total_eve_charge" ]].values y = churn_df["churn" ].values print(X.shape, y.shape)## (5000, 2), (5000,) # Create a KNN classifier with 15 neighbors knn = KNeighborsClassifier(n_neighbors=15 )# Fit the classifier to the data knn.fit(X, y)
X 和 y 是自变量和因变量,格式要求是数组,所以取子集时加了.values,就成了数组
接下来是完成预测:
X_new = np.array([[56.8 , 17.5 ], [24.4 , 24.1 ], [50.1 , 10.9 ]]) print(X_new.shape)## (3, 2) predictions = knn.predict(X_new) print('Predictions: {}' .format(predictions))## Predictions: [1 0 0]
Python从零开始的配套b站视频和书籍 从零开始开始学习一个编程语言,我们肯定是首先得安装好它,比如前面我们讲解了Python的安装,它多个版本的差异以及管理,详见:Python初体验之弄清楚版本差异和如何安装管理 ,然后给出来了两个Python编辑器,就是PyCharm或者JupyterLab,任选其一都可以打开你的Python从零开始之旅。
接下来就需要给大家推荐一些在线资料啦,尤其是配套b站视频和书籍,还有配合我们生物信息学实践的Python练习题!
b站视频首选:https://www.bilibili.com/video/BV1FT4y1R7sz/
这个是 Python零基础教程快速上手_全程干货+实用技巧小白必看,目前阅读量并不高,但是知识点非常全面了,如下所示的目录节选:
目录节选 另外,值得注意的Python这个编程语言其实非常大众,所以广大的it行业小白都会学习它, 这样的话这个领域的培训玩家就非常多,所以其实绝大部分视频都是培训班引流的,这个也不例外,可以看到它确实是有很多实践案例 :
实践案例 但是这些实践案例 跟我们生物信息学关系并不大, 因为生物信息学实在是太小众了,而且绝大部分生物信息学数据分析都是r编程语言为主,仅仅是因为最近的单细胞转录组和空间单细胞转录组技术的火爆才慢慢的有Python崛起的趋势而已。
配套书籍同样的,我们的推荐的Python配套视频是跟生物信息学完全不搭边的,Python在线书籍也是如此,我就在京东下单了这个:
Python在线书籍 看了看主流的平台差不多是图灵社区整理的最齐全了,详见:年度书单盘点 | 豆瓣高分,值得反复刷的Python好书 :
Python编程书籍