机器学习相关算法知识(一)

目录

 一、分类

(一)机器学习算法可以按照其学习方式进行分类,常见的分类包括监督学习、无监督学习和强化学习​​​​​​​​​​​​​​

(二)机器学习算法可以按照其任务类型进行分类,常见的分类包括回归和分类   

二、如何根据数据情况选择适当的机器学习算法   

三 、 可直接下载各种机器学习数据集的库 (个别举例)

(一)介绍

(二)安装并导入


 一、分类

(一)机器学习算法可以按照其学习方式进行分类,常见的分类包括监督学习、无监督学习和强化学习
  1. 监督学习:监督学习是指在有标签的数据集上进行学习,即输入数据与对应的输出数据都已知。监督学习主要用于分类和回归任务,目的是构建一个由输入特征到输出标签/值之间的映射关系的函数模型。一些常见的监督学习算法包括:
  2. 无监督学习:无监督学习是指在没有标签的数据集上进行学习,即只有输入数据,没有对应的输出数据。无监督学习主要用于聚类、降维和异常检测等任务,目的是发现数据内部的结构和规律,从而提供更深入的理解和可视化
  3. 强化学习:强化学习是指在一个由环境、状态、行动和奖励组成的马尔科夫决策过程中进行学习,目的是构建一个行动价值的函数模型,使得智能体能够选择最优的行动序列以获得最大的累积奖励。
  4. 监督学习无监督学习强化学习
    线性回归 (LinearRegression)

    K均值聚类

    (K-Means Clustering)

    Q学习 (Q-Learning)

    逻辑回归

    (Logistic Regression)

    层次聚类

    (Hierarchical Clustering)

    Sarsa算法

    (Sarsa Learning)

    决策树

    (Decision Tree)

    主成分分析

    (Principal

    Component Analysis)

    深度强化学习

    (Deep Reinforcement Learning)

    随机森林

    (Random Forest)

    独立成分分析 (Independent Component Analysis)

    支持向量机

    (Support VectorMachines)

    高斯混合模型 (Gaussian Mixture Model)

    神经网络

    (Neural Network)

   (二)机器学习算法可以按照其任务类型进行分类,常见的分类包括回归和分类
       1.回归算法:回归算法用于预测连续型变量的值。它们通过学习输入特征与输出之间的关系来          建立一个函数模型,从而对未知数据做出预测
       2.分类算法:分类算法用于将实例分配到不同的类别中。它们通过学习输入特征与已知类别之         间的关系来构建一个分类模型,以便对新的、未标记的样本进行分类。
       3.
回归算法分类算法

线性回归

(Linear Regression)

逻辑回归

(Logistic Regression)

决策树回归

(Decision Tree Regression)

决策树分类

(Decision Tree Classification)

随机森林回归

(Random Forest Regression)

随机森林分类

(Random Forest Classification)

支持向量回归

(Support Vector Regression)

支持向量机

(Support Vector Machines)

神经网络回归

(Neural Network Regression)

K近邻算法

(K-Nearest Neighbors)

朴素贝叶斯

(Naive Bayes)

神经网络分类

(Neural Network Classification)

二、如何根据数据情况选择适当的算法

  1. 理解问题类型:首先要确切地理解你面临的问题是一个分类、回归、聚类还是其他类型的问题。这将有助于缩小算法选择的范围。
  2. 数据量和维度:考虑你的数据集的大小和特征的数量。某些算法在大规模数据集上执行得更好,而其他算法可能对高维数据更适用。
  3. 数据类型:确定你的数据是结构化(如表格数据)还是非结构化(如文本、图像或音频数据)。不同类型的数据可能需要不同的算法。
  4. 特征相关性:分析你的特征之间的相关性。如果存在高度相关的特征,某些算法可能会受到影响,需要进行特征选择或降维处理。
  5. 可用的标注数据:考虑你是否拥有标注的训练数据。一些算法需要有标注的数据进行监督学习,而其他算法可以使用无监督学习或半监督学习方法。
  6. 模型可解释性:根据问题的要求,考虑模型的可解释性。某些算法(如决策树、逻辑回归)对模型的解释性更好,而其他算法(如深度神经网络)可能更注重预测性能。
  7. 算法复杂度:评估不同算法的复杂度,包括训练时间、预测时间和所需的计算资源。这在处理大规模数据集或有限计算资源的情况下特别重要。
  8. 预测性能:最后,通过实验和验证来评估不同算法的预测性能。使用交叉验证或其他评估方法,在你的数据集上对不同算法进行比较,并选择在给定问题上表现最佳的算法。   

三 、 可直接下载各种机器学习数据集的库 (例举个别)

(一)介绍
  1. Scikit-learn:Scikit-learn库提供了一些常用的数据集,可以通过sklearn.datasets模块中的函数进行下载。例如,可以使用load_iris()函数下载鸢尾花数据集,使用load_digits()函数下载手写数字数据集等。
  2. TensorFlow Datasets:TensorFlow Datasets(TFDS)是一个用于管理和访问各种数据集的库。它提供了一个简单的API,可以轻松地下载、加载和预处理数据集。TFDS支持各种领域的数据集,包括图像、文本、语音等。
  3. PyTorch:PyTorch库也提供了一些内置的数据集,可以通过torchvision.datasets模块进行下载。例如,可以使用MNIST类下载MNIST手写数字数据集,使用CIFAR10类下载CIFAR-10图像数据集等。
  4. Keras:Keras库是一个高级深度学习框架,它提供了一些内置的数据集,可以通过keras.datasets模块进行下载。例如,可以使用mnist.load_data()函数下载MNIST手写数字数据集,使用cifar10.load_data()函数下载CIFAR-10图像数据集等。
  5. UCI Machine Learning Repository:UCI机器学习仓库是一个在线数据库,提供了各种机器学习数据集。可以使用Python的网络请求库(例如requestsurllib)直接从UCI仓库下载数据集。
  6. OpenML:OpenML是一个在线机器学习平台,提供了各种机器学习数据集。可以使用Python的OpenML API直接从平台上下载数据集。使用openml.datasets.get_dataset()函数可以下载数据集。
  7. Kaggle Datasets:Kaggle Datasets是一个社区驱动的在线数据集平台,提供了各种公共数据集。可以使用kaggle命令行工具或Python Kaggle API直接从平台上下载数据集。
  8. Quandl:Quandl是一个金融和经济数据提供商,提供了各种金融和经济数据集。可以使用Python的Quandl API直接从平台上下载数据集。
  9. NLTK:NLTK是一个自然语言处理库,提供了各种自然语言处理任务所需的数据集。可以使用nltk.download()函数下载数据集。
  10. IMDb:IMDb是一个电影数据库,提供了各种电影和电视节目数据集。可以使用Python的IMDbPY库直接从IMDb数据库下载数据集。
  11. ImageNet:ImageNet是一个大型图像数据库,提供了各种图像分类、检测和分割数据集。可以使用Python的ImageNet Utils库直接从ImageNet数据库下载数据集。
(二)安装并导入(个别举例)
安装导入
Scikit-learn
pip install scikit-learn

from sklearn import datasets

TensorFlow Datasets
pip install tensorflow-datasets
import tensorflow_datasets as tfds

​​​​​​​PyTorch
pip install torch torchvision

import torchvision.datasets as datasets

Keras
pip install keras

from keras.datasets import mnist, cifar10

UCI Machine Learning Repository

import requests

url = "https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data"
response = requests.get(url)
with open("iris.data", "w") as f:
    f.write(response.content.decode())
OpenML
pip install openml

import openml

Kaggle Datasets
pip install kaggle

from kaggle.api.kaggle_api_extended import KaggleApi

Quandl
pip install quandl

import quandl

NLTK
pip install nltk

import nltk

IMDb
pip install IMDbPY
import imdb

ImageNet
pip install imagenet_utils

import imagenet_utils

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

紫菜汤 66

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值