从其他文档嵌入内容
人工智能与机器学习
概述
人工智能(AI)和机器学习(ML)是当今科技领域最热门的话题之一。AI是指计算机系统能够执行通常需要人类智能的任务,如视觉识别、语音识别和决策制定。ML是AI的一个子集,专注于开发能够从数据中学习的算法。
关键技术
深度学习
深度学习是ML的一个分支,使用多层神经网络来处理复杂的数据模式。它在图像和语音识别方面取得了显著的成果。
强化学习
强化学习是一种通过试错来学习的ML方法。它通常用于游戏和机器人控制等领域。
应用领域
医疗保健
AI和ML在医疗诊断、药物发现和个性化治疗方面有广泛应用。
金融
在金融领域,AI用于风险管理、欺诈检测和算法交易。
挑战
数据隐私
随着AI和ML的发展,数据隐私成为一个重要问题。如何在不侵犯个人隐私的情况下利用数据是一个挑战。
伦理问题
AI系统的决策过程可能不透明,这引发了关于伦理和责任的讨论。
未来展望
AI和ML的未来充满希望,但也伴随着挑战。随着技术的进步,我们期待看到更多创新的应用和解决方案。
概述
您可以使用 embed
短代码包含另一个 Quarto 文档(.qmd
或 .ipynb
)的输出。要嵌入代码块或笔记本单元格的输出,请提供文档的路径和块或单元格的标识符。例如,这个名为 penguins.ipynb
的 Jupyter 笔记本有一个单元格标记为 fig-bill-scatter
:
您可以使用以下短代码嵌入此单元格的输出:
{{< embed penguins.ipynb#fig-bill-scatter >}}
这将嵌入图表如下:
图表下方会自动提供一个指向源笔记本的链接。点击链接将用户带到笔记本的渲染版本,使他们无需下载并在本地运行即可探索笔记本。例如,点击 penguins.ipynb
的链接会进入一个如下所示的页面:
您可以嵌入来自 Jupyter 笔记本(.ipynb
)和 Quarto 文档(.qmd
)的输出。在本文中,我们将源文档统称为 笔记本。
除了这种基本用法,您还可以:
指定单元格
embed
短代码使用相对路径后跟单元格或代码块标识符(例如 penguins.ipynb#fig-bill-scatter
)指定源笔记本。如果省略标识符,文档将嵌入笔记本中的所有单元格或代码块。
Quarto 文档
当源文档是 Quarto 文档(.qmd
)时,使用代码块的 label
作为标识符。例如,如果源文档 penguins.qmd
包含以下代码块:
penguins.qmd
```{r}
#| label: fig-size-scatter
ggplot(penguins, aes(body_mass_g, flipper_length_mm)) +
geom_point(aes(color = species)) +
scale_color_manual(values = colors) +
theme_minimal()
```
您将使用以下代码嵌入该块的输出:
{{< embed penguins.qmd#fig-size-scatter >}}
结果如下:
Jupyter 笔记本
当源文档是 Jupyter 笔记本时,用于定位正确单元格的标识符遵循以下规则:
- 单元格
id
首先,单元格元数据将被检查是否匹配id
。(单元格 ID 是 Jupyter 笔记本的新功能,尚未在 Jupyter 前端得到广泛支持,但首先检查id
以允许未来兼容性,因为它们变得更加常见)。 - 标签
如果没有找到匹配id
的单元格,Quarto 将使用代码元数据中具有匹配单元格标识符的label
的单元格。 - 标签
如果没有找到单元格,Quarto 将使用其标签匹配单元格标识符的单元格或单元格。
单元格标签
例如,要在 Jupyter Lab 中嵌入您标记为 bill-ratio
的单元格的输出:
您将使用以下嵌入:
{{< embed penguins.ipynb#bill-ratio >}}
结果如下:
代码单元格选项
源笔记本中的代码单元格选项会传播到嵌入它们的文档中。例如,您可以指定代码单元格选项,如 fig-cap
、fig-alt
和 layout-ncol
,以控制嵌入图形的各个方面。例如,penguins.ipynb
中的此单元格指定了包括标题、子标题、替代文本和布局的图形选项:
penguins.ipynb
#| label: fig-bill-marginal
#| fig-cap: "喙尺寸的边际分布"
#| fig-subcap:
#| - "企鹅的喙往往较薄,"
#| - "而阿德利企鹅的喙往往较短。"
#| fig-alt:
#| - "按物种分类的喙深度密度图。"
#| - "按物种分类的喙长度密度图。"
#| layout-ncol: 2
sns.displot(penguins, = "bill_depth_mm",
x = "species",
hue = "kde", fill = True, aspect = 2, height = 3)
kind
plt.show()
sns.displot(penguins, = "bill_length_mm",
x = "species",
hue = "kde", fill = True, aspect = 2, height = 3)
kind plt.show()
当这个单元格嵌入时:
{{< embed penguins.ipynb#fig-bill-marginal >}}
生成以下输出:
嵌入代码
你可以通过在 embed
短代码中使用 echo=true
选项,同时包含单元格或代码块的代码和输出。例如,要包含 penguins.ipynb
中标记为 species-counts
的单元格的代码和图表,嵌入内容应为:
{{< embed penguins.ipynb#species-counts echo=true >}}
文档中的结果是该单元格的代码和输出:
与图表选项类似,显示代码的选项会从源笔记本传播。例如,要折叠此单元格的代码,你可以在 species-counts
单元格的选项中添加 code-fold: true
:
penguins.ipynb
#| label: species-counts
#| code-fold: true
"species").size().reset_index(name = "count") penguins.groupby(
嵌入这些单元格的文档的 YAML 头中设置的选项也会控制这些代码单元格。例如,要折叠所有代码,包括从 penguins.ipynb
嵌入的代码,你可以在文档 YAML 中添加 code-fold: true
:
sample.qmd
title: 企鹅特征探索
author: 诺拉·琼斯
toc: true
format:
html:
code-fold: true
链接到源笔记本
当你在 Quarto 文档中嵌入笔记本内容并将其渲染为 HTML 时,Quarto 会自动包含提供嵌入内容的源笔记本的链接。这些链接默认会出现在嵌入内容下方以及目录下方。例如,以下文档嵌入了来自 penguins.ipynb
笔记本的内容。你可以在下面的渲染 HTML 文档中看到这些链接:
链接位置
你可以通过在文档 YAML 中指定 notebook-links
选项,并使用以下值之一来控制源笔记本链接的位置:
true
(默认)-
在嵌入内容下方内联显示源笔记本的链接,并在目录旁边显示。
false
-
不显示任何源笔记本的链接。
inline
-
仅在嵌入内容下方内联显示链接。
global
-
仅在目录旁边显示链接。
笔记本视图
默认情况下,源笔记本的链接指向笔记本的自动生成的 HTML 渲染。这使得用户无需下载并本地运行笔记本即可查看其内容。此笔记本视图显示笔记本的内容,并包含一个下载笔记本的按钮。例如:
例如,你可以查看本文件中使用的 penguins.ipynb
笔记本 和 penguins.qmd
笔记本 的实时预览。
视图选项
你可以使用 notebook-view
控制笔记本视图的行为。对于每个源笔记本,你可以提供一个 title
和一个 url
。title
将用作指向源笔记本的任何链接的文本,并也会出现在渲染的笔记本视图顶部。如果提供了 url
,它将用作指向源笔记本的任何链接的 href
。如果你已将源笔记本的副本部署到 Github、Google Colab 或 Kaggle 等网站,并且更愿意链接到该网站,这将非常有用。
例如:
notebook-view:
- notebook: penguins.ipynb
title: "图表和计算" url: https://colab.research.google.com/drive/12GsIPQ644SI4vkEEHiZn-Qqfbr-bD1__
将生成如下链接:
要禁用笔记本视图,并直接链接到笔记本(以便用户可以直接下载笔记本,而无需中间视图),请将 notebook-view
设置为 false
。