本文概述
机器学习和人工智能已成为科技界的新时髦词汇。从字面上看, 每个人似乎都已经意识到这一研究领域的重要性。
数据科学家会同意, 即使不是每次都在某个时间点使用Jupyter笔记本电脑, 你几乎也做不到。大量的AI / ML工程师已将Jupyter Notebook用作工具来编写和测试算法/模型。
但是Jupyter是什么?为何将其称为笔记本?
根据Wikipedia的说法, 笔记本是经常被裁定的书籍或纸质装订页, 用于许多目的, 例如记录便笺或备忘录, 书写, 绘画或取消预订。
因此, 基本上可以说, 笔记本用于通过文本, 图表, 图形, 图片, 方程式, 表格甚至图表来表达特定的上下文, 思想或知识。
为什么后来将Jupyter称为笔记本?
因为它完全符合上述要求!它用于草拟文档, 代码, 文本, 图片, 方程式, 草稿图以及可视化, 甚至绘制表格。
什么是Jupyter Notebook?
Jupyter Notebook是一个开源Web应用程序, 允许你创建和共享包含实时代码, 方程式, 可视化效果和叙述文本的文档。它使用的内容包括数据清理和转换, 数值模拟, 统计建模, 数据可视化, 机器学习等。
最常见的是, Jupyter Notebook在Python环境中使用。它们具有非常互动的输出, 可以像普通笔记本一样容易共享。
Jupyter Notebook可用于什么用途?
写多种语言。
Jupyter系统支持100多种编程语言(在Jupyter生态系统中称为”内核”), 包括Python, Java, R, Julia, Matlab, Octave, Scheme, Processing, Scala等。你可以与其他人共享用Notebook编写的代码。
以下是可以在Jupyter笔记本中编写的几种语言。
python
在可以用Jupyter编写的所有语言中, python是笔记本电脑中最受欢迎的语言。在Jupyter环境中几乎所有编写代码的人都在编写Python。默认情况下, Jupyter在其环境中支持Python, 而无需使用特殊的魔术命令。
def hello_world():
print("Hello world!!!")
hello_world()
并且, 输出将是:
Hello world!!!
的JavaScript
JavaScript在网络上广为人知, 也可以用Jupyter编写。与Python不同, 默认情况下不支持JavaScript。你必须使用某个特殊命令来告诉你正在运行的单元格, 因为这是JavaScript代码。这些命令通常称为魔术命令。对于JavaScript, 该命令为%% javascript。
与python不同, 在Jupyter Notebook中可以运行的JavaScript代码也受到限制。
%%javascript
const text = "hello world"
alert(text)
Java
它允许集成其他”内核” –语言。可以按照此处的一组安装说明来安装这样的内核。安装后, 如果在Linux上, 请在Jupyter终端中运行以下命令。
jupyter console --kernel=java
Jupyter console 5.1.0
Java 9.0.4+11 :: IJava kernel 1.1.0-SNAPSHOT
Protocol v5.0 implementation by jupyter-jvm-basekernel 2.2.1-SNAPSHOT
In [1]:
Matlab的
Matlab是用于技术计算的高性能语言。它在易于使用的环境中集成了计算, 可视化和编程功能, 其中问题和解决方案以熟悉的数学符号表示。
要在Jupyter Notebook中使用Matlab, 首先必须安装Jupyter-Matlab。我们需要做的第一件事是创建一个虚拟环境。
- 在Windows上打开你的Jupyter提示符, 或者在Linux上打开你的终端, 然后键入以下命令
conda create -vv -n jmatlab python=3.5 jupyter
- 确保你留在此终端中, 然后键入代码
source activate jmatlab
- 然后为Python安装Matlab内核
pip install matlab_kernal
python -m matlab_kernel install
- 检查内核是否正确安装
jupyter kernelspec list
- 找到你的MATLAB目录。 ” /Applications/MATLAB_R2017a.app”。
- 转到” extern / engines / python”子目录并安装Python引擎。
cd "/Applications/MATLAB_R2017a.app/extern/engines/python"
python setup.py install
- 启动Jupyter笔记本
cd your_working_directory
jupyter notebook
一旦启动, 现在应该为Matlab和python提供一个选项。
降价促销
Jupyter Notebook在编写Markdown时会派上用场, 当你想对一段代码, 详细文档或特定数据集的字典提供详细或详细的说明时, 这非常有用。
在笔记本中键入以下代码。
* [Pandas](#pandas), Used for data analysis
* [Numpy](#numpy), Used for numerical analysis
* [Matplotlib](#matplotlib), Used for data visualizations
输出应如下所示;
Bash脚本
Jupyter Notebooks允许使用%% bash magic命令来使用bash脚本。
为了进行测试, 让我们在当前工作目录中创建一个文件夹。在笔记本单元格中键入以下代码。
%%bash
mkdir Test_Folder
运行代码, 现在通过键入代码检查你的工作目录
%%bash
ls
你会看到文件夹Test_Folder已添加到其中。你还可以物理导航到该文件夹进行检查。
数据可视化
通过使用matplotlib等Python库, 你可以直接在浏览器中运行和显示数据可视化。
让我们尝试使用matplotlib进行非常基本的可视化。
我们首先要导入库
from matplotlib import pyplot as plt
%matplotlib inline
然后输入以下代码
x = [1, 2, 3, 4, 5, 6, 7, 8, 9]
y = [11, 12, 13, 14, 15, 16, 17, 18, 19]
plt.plot(x, y)
更有趣的是, 我们可以进行3D可视化!!
我们首先需要导入3d可视化库
from mpl_toolkits import mplot3d
import numpy as np
然后进行3D投影
fig = plt.figure()
ax = plt.axes(projection='3d')
我们的输出应如下所示
现在, 运行以下脚本。
def f(x, y):
return np.sin(np.sqrt(x ** 2 + y ** 2))
x = np.linspace(-6, 6, 30)
y = np.linspace(-6, 6, 30)
X, Y = np.meshgrid(x, y)
Z = f(X, Y)
ax = plt.axes(projection='3d')
ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap='viridis', edgecolor='none')
ax.set_title('surface');
数学和科学记数法
我们可以在Jupyter Notebook类型的数学和科学方程式内部使用诸如Latex之类的工具。
LaTeX是一种高质量的排版系统;它包括为生产技术和科学文档而设计的功能。你可以在这里了解更多关于乳胶的信息。让我们尝试运行一些简单的LaTex代码。
键入以下LaTex命令
## $J(\theta_0) = \frac{1}{2m}\sum_{i=0}^{m} (h_\theta(x^{(i)}) - y^{(i)})^2$
输出应为此类
总结
本文只是介绍了使用Jupyter笔记本可以实现的功能。你可以在我在此处合作创建的Jupyter笔记本中找到本文中的大多数示例