机器学习是什么?AIGC又是什么?机器学习与AIGC未来科技的双引擎

举报
小馒头学Python 发表于 2024/11/22 21:32:01 2024/11/22
【摘要】 🍀机器学习是什么机器学习是人工智能的一个子领域,专注于让计算机通过数据和经验自我学习和改进。与传统编程不同,在机器学习中,程序不是通过明确的指令来解决问题,而是通过分析数据来找出模式和规律,从而做出预测或决策。 🍀AIGC又是什么AIGC(Artificial Intelligence Generated Content)指的是由人工智能生成的内容。随着人工智能技术的不断发展,AIGC...

🍀机器学习是什么

机器学习是人工智能的一个子领域,专注于让计算机通过数据和经验自我学习和改进。与传统编程不同,在机器学习中,程序不是通过明确的指令来解决问题,而是通过分析数据来找出模式和规律,从而做出预测或决策。

🍀AIGC又是什么

AIGC(Artificial Intelligence Generated Content)指的是由人工智能生成的内容。随着人工智能技术的不断发展,AIGC正在改变内容创作的方式,使得生成高质量文本、图像、音频和视频变得更加高效和可行。

感兴趣的小伙伴可以阅读下面一篇知网的文章,帮助你更好地去了解AIGC的发展及前景~

image.png

🍀经典的机器学习算法

一些经典的机器学习算法包括:

🍀线性回归(Linear Regression)

用于预测连续值,基于线性关系。
示例代码:

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

# 生成数据
np.random.seed(0)
X = 2 * np.random.rand(100, 1)
y = 4 + 3 * X + np.random.randn(100, 1)

# 拟合线性回归模型
model = LinearRegression()
model.fit(X, y)
X_new = np.array([[0], [2]])
y_predict = model.predict(X_new)

# 绘图
plt.scatter(X, y)
plt.plot(X_new, y_predict, color='red', linewidth=2)
plt.title("Linear Regression")
plt.xlabel("X")
plt.ylabel("y")
plt.grid()
plt.show()

运行实例
image.png


🍀逻辑回归(Logistic Regression)

用于二分类问题,通过逻辑函数来估计事件发生的概率。
示例代码:

from sklearn.linear_model import LogisticRegression

# 生成数据
X = np.random.rand(100, 1) * 10
y = (X > 5).astype(int).ravel()

# 拟合逻辑回归模型
model = LogisticRegression()
model.fit(X, y)

# 绘图
X_test = np.linspace(0, 10, 100).reshape(-1, 1)
y_prob = model.predict_proba(X_test)[:, 1]

plt.scatter(X, y, color='blue')
plt.plot(X_test, y_prob, color='red')
plt.title("Logistic Regression")
plt.xlabel("X")
plt.ylabel("Probability")
plt.grid()
plt.show()

运行实例:
image.png


🍀支持向量机(SVM, Support Vector Machine)

寻找最佳超平面,将不同类别的数据点分隔开。
示例代码:

from sklearn import datasets
from sklearn.svm import SVC

# 生成数据
X, y = datasets.make_blobs(n_samples=100, centers=2, random_state=6)
model = SVC(kernel='linear')
model.fit(X, y)

# 绘图
plt.scatter(X[:, 0], X[:, 1], c=y, s=30)
ax = plt.gca()
xlim = ax.get_xlim()
ylim = ax.get_ylim()

# 创建网格以绘制决策边界
xx = np.linspace(xlim[0], xlim[1], 50)
yy = np.linspace(ylim[0], ylim[1], 50)
YY, XX = np.meshgrid(yy, xx)
xy = np.vstack([XX.ravel(), YY.ravel()]).T
Z = model.decision_function(xy).reshape(XX.shape)

plt.contour(XX, YY, Z, colors='k', levels=[0], alpha=0.5, linestyles='--')
plt.title("Support Vector Machine")
plt.xlabel("Feature 1")
plt.ylabel("Feature 2")
plt.grid()
plt.show()

运行实例:
image.png

🍀决策树(Decision Tree)

通过树形结构进行决策,简单易懂,适用于分类和回归任务。
示例代码:

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score

# 加载数据集
data = load_iris()
X, y = data.data, data.target

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 创建决策树模型
dt = DecisionTreeClassifier()
dt.fit(X_train, y_train)

# 预测
y_pred_dt = dt.predict(X_test)

# 评估
accuracy_dt = accuracy_score(y_test, y_pred_dt)
print(f"决策树准确率: {accuracy_dt}")

运行实例:

决策树准确率: 1.0

🍀随机森林(Random Forest)

集成多个决策树以提高预测准确性和控制过拟合。
示例代码:

from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# 加载数据集
data = load_iris()
X, y = data.data, data.target

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 创建随机森林模型
rf = RandomForestClassifier()
rf.fit(X_train, y_train)

# 预测
y_pred_rf = rf.predict(X_test)

# 评估
accuracy_rf = accuracy_score(y_test, y_pred_rf)
print(f"随机森林准确率: {accuracy_rf}")

运行实例:

随机森林准确率: 1.0


🍀机器学习算法的分类

机器学习算法通常根据其学习方式进行分类:

监督学习(Supervised Learning):使用带标签的数据进行训练,目标是学习输入与输出之间的映射关系。常见算法包括线性回归、逻辑回归、决策树等。

无监督学习(Unsupervised Learning):使用未标记的数据进行训练,目的是发现数据的潜在结构或模式。常见算法包括K-means聚类、主成分分析(PCA)等。

半监督学习(Semi-Supervised Learning):结合少量标记数据和大量未标记数据进行训练,适用于标记成本高的场景。

强化学习(Reinforcement Learning):通过与环境的交互进行学习,最大化累积奖励。常用于游戏、机器人控制等领域。

单单看上面这些文绉绉的话术难免摸不着头脑,下面我将带领你通过一些小故事来更好的了解他们

  • 监督学习

想象你是一名老师,你有一堆学生的考试卷子(带标签的数据),每份卷子都有分数(输出)。你发现了一种方法,能根据学生的学习时间(输入)来预测他们的分数。于是,你通过分析这些数据,训练出一个模型。下次考试时,你可以根据学生的学习时间快速预测他们的分数。

  • 无监督学习

现在假设你是一个侦探,面对一堆没有任何标签的证据(未标记的数据)。你需要找出这些证据之间的关系。你开始将相似的证据分在一起,比如将所有关于同一个嫌疑人的证据放在一个文件夹里。通过这个过程,你发现了潜在的模式,帮助你理清案件的脉络。

  • 半监督学习

想象你正在组织一场派对。你手头有一些受邀者的名单(少量标记数据),但是大多数人没有回复(大量未标记数据)。为了确保派对成功,你决定根据已经回复的人(标记数据)和没有回复的人(未标记数据)来推测其他人可能的意向。通过这种方式,你能更好地计划食物和饮料的数量。

  • 强化学习

想象你是一只小猴子,在一个果树上寻找香蕉(奖励)。每次你爬到树上(与环境互动),如果找到香蕉,你会感到高兴(得到奖励)。如果你走错方向,没有找到香蕉,你就会记住这个教训。通过不断尝试和改进,小猴子逐渐学会了最快的路线来获取更多的香蕉。


🍀机器学习算法的术语

在机器学习中,有一些常见的术语需要了解:

  1. 特征(Feature):用于描述数据的属性或变量,特征选择是构建模型的重要步骤。
  2. 标签(Label):在监督学习中,标签是模型要预测的目标变量。
  3. 训练集(Training Set):用于训练模型的数据集。
  4. 测试集(Test Set):用于评估模型性能的数据集。
  5. 过拟合(Overfitting):模型在训练数据上表现良好,但在新数据上表现不佳的情况。
  6. 欠拟合(Underfitting):模型在训练数据上表现不佳,无法捕捉数据的内在模式。
  7. 模型评估(Model Evaluation):使用指标(如准确率、F1-score等)来评估模型的性能。

等等…在接下来的学习中可能我们会遇到更多的术语,例如:P、R、F等等之类的

image.png

挑战与创造都是很痛苦的,但是很充实。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。