多标签文本分类
介绍
在我的上一篇文章中,我介绍了各种机器学习方法,这些方法能够为单个电影描述指定一组相关的流派(请访问文章获取数据集)。分类器链模型获得了最好的 F1 值= 0.43。我要验证的想法是用 BERT 嵌入来训练神经网络。
BERT (来自变形金刚的双向编码器表示)是由谷歌人工智能语言的研究人员开发的一个新模型。
它的主要创新是将一种流行的注意力模型 Transformer 的双向训练应用于语言建模。这导致了比单向语言模型更深刻的语言上下文和流程感。
密码
Bert_serving 支持使用 Bert 模型作为句子编码服务,用于将可变长度的句子映射到固定长度的句子。
为了找到最佳的参数,我使用了神圣模块。神圣是一个工具,帮助您配置,组织,记录和复制实验,以便:
- 记录你实验的所有参数
- 轻松运行不同设置的实验
- 在数据库中保存单次运行的配置
修改后的参数如下:
- max_seq_len —序列的最大长度。找到的最佳值是 256 ,这需要使用 GPU
- batch_size —将通过网络传播的样本数量。选择的号码是 128
- gamma —聚焦损失中的聚焦参数,平滑调整简单示例向下加权的速率。焦点损失旨在通过降低内联体(简单的例子)的权重来解决类别不平衡,这样即使它们的数量很大,它们对总损失的贡献也很小。它侧重于训练一组稀疏的硬例子。在我们的例子中,伽马的最佳值是 2
得到了 F1 = 0.49
标签共现
我们需要记住,在我们的数据集中有多个标签,有时一个标签表示另一个标签的出现。为了检查这种百分比依赖性,我创建了共现矩阵。例如,现在我们知道:
Action Comedy -> Action, 0.9722222222222222
Action Comedy -> Comedy, 0.9629629629629629
Action Thrillers -> Action, 0.9492537313432836
Action Thrillers -> Thriller, 0.9253731343283582
Adventure Comedy -> Comedy, 0.9101123595505618
下图显示了前 100 个最强的依赖关系。
标签共现的路由弦
有了获得的知识,我们现在可以尝试修改我们的预测。经过几次尝试,我决定将结果标签的值改为 1,前提是它与指示标签的同现度大于或等于 0.9。
更新后的 F1 成绩是 0.5 ,小进步。
结果
示例结果如下所示。
First Platoon centers around Rock Brannigan ([[Scott Gibson and his ragtag squad of ex-military zombie hunters trying to make a living in the desert Southwest two years after the zombie apocalypse. Along the way they encounter the grizzled Pa Jericho , and the eccentric Rex Necro .
**Action, Comedy, Horror, Parody, Science Fiction**The life of the S&M-theme artist and author Seiu Ito is depicted in the film. His artistic life and Sadian philosophy, inspired by his torturing of his two wives and Tae, his favorite prostitute, are portrayed as shown in his journalistic writings. Tae is eventually driven insane due to Ito's attentions.
**Drama, Japanese Movies, World cinema**
结论
使用 BERT 嵌入技术使 F1 得分提高了 7%(总体提高了 50%)。
在未来的工作中,我认为减少标签的数量,只保留主要的标签是个好主意。由于“动作喜剧”在 100%的情况下是“动作”,在 100%的情况下是“喜剧”,也许我们真的不需要这个类别。
感谢您的阅读。
BERT NLP——如何构建问答机器人
通过亲自动手的 PyTorch 代码理解直觉,BERT 在 SQuAD 上进行了微调。
斯蒂夫·约翰森在 Unsplash 上的抽象画
本文将介绍基于神经网络创建和编码问答系统的关键思想。实现使用谷歌的语言模型,称为预训练伯特。实践证明 PyTorch 代码的问题回答与伯特微调和班是在文章的最后提供。
什么是问答?
在问答任务中,模型接收关于文本内容的问题,并被要求在文本中标记答案的开始和结束。
带答案的文本和相关问题示例
在上面的例子中,问题*的答案是“除了 SCN 细胞之外,在哪里还发现了独立的昼夜节律?”位于红色突出显示的位置。问题“独立时钟的术语是什么?”*在蓝色位置回答。
如果我们有一个非常大的这样的文本集,以及样本问题和答案在文本中的位置,我们可以训练一个神经网络来学习上下文、问题和答案之间的关系。给定与训练文本相似的新上下文,由此产生的网络将能够回答看不见的问题。
几十年来,机器阅读理解一直吸引着计算机科学家的注意力。最近大规模标记数据集的产生使研究人员能够建立受监督的神经系统,自动回答用自然语言提出的问题。
小队数据集
斯坦福问答数据集(SQuAD) 是用于阅读理解的大规模标记数据集的主要例子。Rajpurkar 等人开发了 SQuAD 2.0,它结合了一组维基百科文章中关于同一段落的 10 万个可回答问题和 5 万个无法回答的问题。这些无法回答的问题是由人群工作者以敌对的方式写出来的,看起来与可回答的问题相似。
小队数据集的快照
doc_tokens
描述上下文,即我们希望模型理解的文本。
At the 52nd Annual Grammy Awards, Beyoncé received ten nominations, including Album of the Year for I Am... Sasha Fierce, Record of the Year for "Halo", and Song of the Year for "Single Ladies (Put a Ring on It)", among others. She tied with Lauryn Hill for most Grammy nominations in a single year by a female artist. In 2010, Beyoncé was featured on Lady Gaga's single "Telephone" and its music video. The song topped the US Pop Songs chart, becoming the sixth number-one for both Beyoncé and Gaga, tying them with Mariah Carey for most number-ones since the Nielsen Top 40 airplay chart launched in 1992\. "Telephone" received a Grammy Award nomination for Best Pop Collaboration with Vocals.
question_text
描述应该从上下文中回答的问题。
How many awards was Beyonce nominated for at the 52nd Grammy Awards?
orig_answer_text
代表问题的正确答案。
ten
答案总是从上下文中开始于start_position
并结束于end_position
的部分。如果该问题在上下文中没有任何答案,is_impossible
的值为true
。
问答中的迁移学习
SQuAD 数据集提供了 15 万个问题,这在深度学习世界中并不算多。迁移学习背后的想法是采用一个在非常大的数据集上训练的模型,然后使用 SQuAD 数据集对该模型进行微调。
BERT 的整体预培训和微调程序。图片由 Jacob Devlin 等人@ Google AI Language (来源:Arxiv 上的原始 BERT 论文)
BERT 是一个训练有素的 Transformer 编码器堆栈,基本版有 12 个,大版有 24 个。伯特接受了维基百科和图书语料库的培训,图书语料库包含超过 10,000 本不同流派的书籍。我将在下面的文章中详细介绍 Transformer 架构。
打造下一个聊天机器人?伯特,GPT-2:解决变压器模型的奥秘。
towardsdatascience.com](/lost-in-translation-found-by-transformer-46a16bf6418f)
我们可以使用 BERT 从小队文本中提取高质量的语言特征,只需在顶部添加一个线性层。线性图层有两个输出,第一个输出用于预测当前子笔画是答案的开始位置的概率,第二个输出用于预测答案的结束位置。
下面你可以找到一个模型的总结。为了简单起见,我只显示了第一个和最后一个编码器层。同一层通常会重复 12 次。我们可以在开头看到Bert embeddeds层,后面是每个编码器层的 Transformer 架构: BertAttention , BertIntermediate , BertOutput 。最后,我们有两个输出的 BertPooler 和线性层。
训练模型相对简单。底层已经有了很好的英语单词表示,我们只需要训练顶层,在底层进行一些调整来适应我们的问答任务。为此,您可以定制我在下面的文章中提供的代码。
变压器 DIY 实用指南。经过实践验证的 PyTorch 代码,用于对 BERT 进行微调的意图分类。
towardsdatascience.com](/bert-for-dummies-step-by-step-tutorial-fb90890ffe03)
你可能期望 F1 分数在 74%左右。如果我们查看当前的 SQuAD 1.0 排行榜,我们会看到对测试数据集的评估使我们进入了前 100 名,鉴于免费 GPU 上可用的资源有限,这是可以接受的。
微调后的模型可用于对我们选择的文本和问题进行推理。
结论
在本文中,我解释了如何在 SQUaD 数据集上微调预训练的 BERT 模型,以解决任何文本上的问答任务。
你可以用 BERT 改编我的 PyTorch 代码用于 NLU 来解决你的问答任务。
一些读者可能会发现这本谷歌 Colab 笔记本中的完整代码更加简单明了。功劳归于微软首席数据科学家 Prachur Bhargava 和美国运通软件工程师 Himanshu Mohan ,他们优雅地解决了在 Google Colab 上训练模型的内存问题。谢谢你,Prachur 和 Himanshu!
你可以在我下面的文章中了解更多关于语言模型的知识。
理解书面单词:温习 Word2vec、GloVe、TF-IDF、单词袋、N-grams、1-hot 编码…
towardsdatascience.com](/representing-text-in-natural-language-processing-1eead30e57d8) [## 伯特为假人-一步一步教程
变压器 DIY 实用指南。经过实践验证的 PyTorch 代码,用于对 BERT 进行微调的意图分类。
towardsdatascience.com](/bert-for-dummies-step-by-step-tutorial-fb90890ffe03) [## 具有潜在狄利克雷分配(LDA)的主题建模教程
这是一本实用指南,包含经过实践检验的 Python 代码。找到人们在推特上谈论的内容。
towardsdatascience.com](/topic-modeling-with-latent-dirichlet-allocation-by-example-3b22cd10c835) [## 情感分析:一个基准
递归神经网络解释。使用 FCNNs、CNN、RNNs 和嵌入对客户评论进行分类。
towardsdatascience.com](/sentiment-analysis-a-benchmark-903279cab44a) [## 基于序列对序列模型的自然语言理解
如何预测客户询问背后的意图?Seq2Seq 型号说明。在 ATIS 数据集上演示的槽填充…
towardsdatascience.com](/natural-language-understanding-with-sequence-to-sequence-models-e87d41ad258b) [## 假人的神经机器翻译——5 分钟指南
AI 能让濒危语言不消失吗?
towardsdatascience.com](/heres-how-to-build-a-language-translator-in-few-lines-of-code-using-keras-30f7e0b3aa1d) [## 自然语言处理中的真实大小写
恢复推文和短信中的大写字母可以提高可读性。正确的正确大小写对于…至关重要
towardsdatascience.com](/truecasing-in-natural-language-processing-12c4df086c21)
感谢阅读。
不同语言的文本分类
用 HuggingFace 和简单的变形金刚构建非英语(德语)BERT 多类文本分类模型。
原载于 2020 年 5 月 22 日https://www . philschmid . de。
介绍
目前,我们有 75 亿人生活在世界上大约 200 个国家。其中只有 12 亿人以英语为母语。这导致了大量非结构化的非英语文本数据。
大多数教程和博客帖子都用英语演示了如何使用基于 BERT 的架构来构建文本分类、情感分析、问答或文本生成模型。为了克服这种缺失,我将向大家展示如何建立一个非英语的多类文本分类模型。
英语母语者的世界
打开我的文章,让我来猜猜你是否听说过伯特。如果你还没有,或者你想更新一下,我推荐你阅读这篇文章。
在深度学习中,对于如何建立语言模型,目前有两种选择。您可以构建单语模型或多语言模型。
“使用多种语言,还是不使用多种语言,这是个问题”——就像莎士比亚会说的那样
多语言模型描述了可以理解不同语言的机器学习模型。来自 Google research 的 mBERT 就是一个多语言模型的例子。该型号支持并理解 104 种语言。单语模特,顾名思义能听懂一种语言。
多语言模型已经在某些任务上取得了良好的效果。但是这些模型更大,需要更多的数据,也需要更多的时间来训练。由于需要大量的数据和时间资源,这些特性导致了更高的成本。
由于这个事实,我将向你展示如何训练一个单语的非英语的基于 BERT 的多类文本分类模型。哇,那是一个长句子!
伯特——得到了迷因
辅导的
我们将使用简单变形金刚——一个基于 HuggingFace 的变形金刚库的 NLP 库。Simple Transformers 允许我们用几行代码来微调 Transformer 模型。
作为数据集,我们将使用由德语推文组成的 Germeval 2019 。我们将检测和分类辱骂性语言的推文。这些推文分为四类:PROFANITY
、INSULT
、ABUSE
和OTHERS
。在这个数据集上获得的最高分是0.7361
。
我们将:
- 安装简单的变压器库
- 选择预先训练好的单语模型
- 加载数据集
- 训练/微调我们的模型
- 评估培训的结果
- 保存训练好的模型
- 加载模型并预测一个真实的例子
在本教程中,我使用了带有 GPU 运行时的 Google Colab。如果你不确定如何使用 GPU 运行时,看看这里的。
安装简单的变压器库
首先,我们用 pip 安装simpletransformers
。如果你没有使用 Google colab,你可以点击查看安装指南。
选择预先训练好的单语模型
接下来,我们选择预训练模型。如上所述,简单变形金刚库基于 HuggingFace 的变形金刚库。这使我们能够使用变形金刚库中提供的每个预训练模型和所有社区上传的模型。对于包括所有社区上传模型的列表,我指的是https://huggingface.co/models。
我们将使用distilbert-base-german-cased
型号,一种更小、更快、更便宜的 BERT 版本。它使用的参数比bert-base-uncased
少 40%,运行速度快 60%,同时仍然保留了 95%以上的 Bert 性能。
加载数据集
数据集存储在两个文本文件中,我们可以从竞赛页面中检索。下载它们的一个选择是使用两个简单的wget
CLI 命令。
之后,我们使用一些pandas
魔法来创建一个数据帧。
因为我们没有测试数据集,所以我们分割数据集— train_df
和test_df
。我们将 90%的数据用于训练(train_df
),10%用于测试(test_df
)。
加载预训练模型
下一步是加载预先训练好的模型。我们通过创建一个名为model
的ClassificationModel
实例来做到这一点。此实例采用以下参数:
- 架构(在我们的案例中是
"bert"
) - 预训练模型(
"distilbert-base-german-cased"
) - 类别标签的数量(
4
) - 还有我们训练用的超参数(
train_args
)。
您可以在广泛的可能性范围内配置超参数。有关每个属性的详细描述,请参考文档。
训练/微调我们的模型
为了训练我们的模型,我们只需要运行model.train_model()
并指定要训练的数据集。
评估培训的结果
在我们成功地训练了我们的模型之后,我们可以对它进行评估。因此,我们创建一个简单的辅助函数f1_multiclass()
,用于计算f1_score
。f1_score
是对模型精度的测量。更多关于那个这里。
我们取得了0.6895
的f1_score
。最初,这似乎相当低,但请记住:在 Germeval 2019 的最高提交量是0.7361
。如果不调整超参数,我们将获得前 20 名的排名。这是相当令人印象深刻的!
在以后的文章中,我将向您展示如何通过调优超参数来获得更高的f1_score
。
保存训练好的模型
Simple Transformers 会在每一步2000
和训练过程结束时自动保存model
。默认目录是outputs/
。但是output_dir
是一个超参数,可以被覆盖。我创建了一个助手函数pack_model()
,我们用它将所有需要的模型文件pack
到一个tar.gz
文件中进行部署。
加载模型并预测一个真实的例子
最后一步,我们加载并预测一个真实的例子。因为我们用pack_model()
提前一步打包了文件,所以我们必须先用unpack
打包它们。因此,我编写了另一个助手函数unpack_model()
来解包我们的模型文件。
为了加载一个保存的模型,我们只需要为我们保存的文件提供path
,并像我们在训练步骤中那样初始化它。注意:在加载模型时,您需要指定正确的(通常与训练中使用的相同)参数。
初始化之后,我们可以使用model.predict()
函数对给定输入的输出进行分类。在这个例子中,我们从 Germeval 2018 数据集中提取了两条推文。
我们的模型预测了正确的类别OTHER
和INSULT
。
简历
总之,我们可以说我们实现了创建非英语的基于 BERT 的文本分类模型的目标。
我们的例子提到了德语,但可以很容易地转换成另一种语言。HuggingFace 为法语、西班牙语、意大利语、俄语、汉语、…
感谢阅读。你可以在这里找到带有完整代码的 colab 笔记本。
如果你有任何问题,随时联系我。
使用 Pytorch 的 BERT 文本分类
使用 Huggingface 库提供的 BERT 分类任何文本
介绍
文本分类是自然语言处理中最常见的任务之一。它被广泛应用于各种应用中,包括情感分析、垃圾邮件过滤、新闻分类等。在这里,我们向您展示如何使用最先进的模型来检测假新闻(将文章分类为真实或虚假),这是一个可以扩展到任何文本分类任务的教程。
变压器 是当前最先进的 NLP 架构的基本构建模块。它的主要优势是它的多头注意力机制,与以前的竞争模型(如递归神经网络)相比,它可以提高性能并显著提高并行性。在本教程中,我们将使用预先训练好的 BERT ,这是最流行的变形金刚模型之一,并在假新闻检测上对其进行微调。在后面的教程中,我还使用了一个 LSTM 来完成同样的任务,如果感兴趣的话,请检查一下!
这篇文章的主要源代码可以在这个 Google Colab 笔记本中找到。
预处理代码在这款 Google Colab 笔记本中也有。
入门
Huggingface 是用 Python 实现最新变形器的最知名的库。它提供了清晰的文档和教程,介绍了如何为各种不同的任务实现几十种不同的转换器。我们将使用 Pytorch ,因此请确保 Pytorch 已安装。在确保安装了相关库之后,您可以通过以下方式安装 transformers 库:
pip install transformers
对于数据集,我们将使用来自 Kaggle 的真实和虚假新闻数据集。
步骤 1:导入库
这里要注意的最重要的库是,我们导入了 BERTokenizer 和 BERTSequenceClassification,以便稍后构造记号化器和模型。
步骤 2:预处理和准备数据集
在原始数据集中,我们添加了一个额外的 TitleText 列,它是标题和文本的串联。我们想用标题和正文来检验一篇文章是否是假的。
对于记号赋予器,我们使用“bert-base-uncased”版本的 BertTokenizer。使用 TorchText ,我们首先创建文本字段和标签字段。文本字段将用于包含新闻文章,标签是真正的目标。我们将每篇文章限制为 BERT 输入的前 128 个标记。然后,我们从数据集 csv 文件中创建一个 TabularDataset,使用这两个字段来生成训练集、验证集和测试集。然后我们创建迭代器来批量准备它们。
注意:为了在 TorchText 中使用 BERT tokenizer,我们必须设置 *use_vocab=False*
和 *tokenize=tokenizer.encode*
。这将让 TorchText 知道,我们不会使用我们的数据集从头开始构建我们自己的词汇表,而是使用预先训练的 BERT 标记器及其相应的单词到索引的映射。
步骤 3:构建模型
我们使用的是“bert-base-uncased”版本的 bert,这是一个针对小写英文文本训练的较小模型(具有 12 层、768 个隐藏、12 个头、110M 参数)。查看 Huggingface 的文档了解其他版本的 BERT 或其他变压器模型。
第四步:培训
我们分别为模型检查点和训练指标编写保存和加载函数。请注意,模型检查点的保存功能并不保存优化器。我们不保存优化器,因为优化器通常会占用非常大的存储空间,并且我们假设不需要从以前的检查点进行训练。训练度量存储训练损失、验证损失和全局步骤,以便以后可以进行关于训练过程的可视化。
我们使用 Adam 优化器和合适的学习率来调整 5 个时期的 BERT。
我们使用二进制交叉熵作为损失函数,因为假新闻检测是两类问题。在计算目标与其自身之间的损耗之前,确保输出通过 Sigmoid。
在训练期间,我们根据验证集评估我们的模型参数。每次验证损失减少时,我们保存模型,以便我们最终得到具有最低验证损失的模型,该模型可以被认为是最佳模型。以下是培训期间的输出:
作者图片
训练之后,我们可以使用下面的代码绘制一个图表:
作者图片
第五步:评估
对于评估,我们使用我们训练的模型预测文章,并针对真实标签进行评估。我们打印出分类报告,其中包括测试准确度,精确度,召回,F1 分数。我们还打印出混淆矩阵,以查看我们的模型对每个类正确和不正确地预测了多少数据。
作者图片
在对我们的模型进行评估后,我们发现我们的模型达到了令人印象深刻的 96.99%的准确率!
结论
我们发现微调 BERT 在我们的数据集上表现非常好,并且由于开源的 Huggingface Transformers 库,实现起来非常简单。这可以毫无困难地扩展到任何文本分类数据集。
这里是我写的其他文章,如果感兴趣的话😊:
一步一步的指导你如何在 Pytorch 中建立一个双向 LSTM!
towardsdatascience.com](/lstm-text-classification-using-pytorch-2c6c657f8fc0) [## 使用 Pytorch 微调用于文本生成的 GPT2
使用 Pytorch 和 Huggingface 微调用于文本生成的 GPT2。我们在 CMU 图书摘要数据集上进行训练,以生成…
towardsdatascience.com](/fine-tuning-gpt2-for-text-generation-using-pytorch-2ee61a4f1ba7) [## 控制语言模型的文本生成
控制机器生成文本的样式和内容的实际操作方法
towardsdatascience.com](/controlling-text-generation-from-language-models-6334935e80cf) [## 计算机专业学生应该知道的最佳免费资源
有效学习的最重要的事情之一是拥有合适的资源,这不是一个简单的过程
medium.com](https://medium.com/@itsuncheng/best-free-resources-that-computer-science-students-should-definitely-know-d148c51b956e)
参考
[1] A .瓦斯瓦尼,n .沙泽尔,n .帕尔马等。、注意力是你所需要的全部 (2017),第 31 届神经信息处理系统会议
[2] J. Devlin,M. Chang,K. Lee 和 K. Toutanova, BERT:用于语言理解的深度双向转换器的预训练 (2019),计算语言学协会北美分会 2019 年年会
伯特:为什么它会彻底改变自然语言处理
BERT 是一种语言模型,在许多任务上拥有高性能。但是是什么让它这么好呢?
BERT 代表变压器的双向编码器表示,是一种于 2018 年发布的语言模型,在多项任务上实现了最先进的性能,包括问答和语言理解。它不仅击败了之前最先进的计算模型,还超越了人类在问答方面的表现。
伯特是什么? BERT 是一个将单词转换成数字的计算模型。这个过程至关重要,因为机器学习模型接受数字(而不是单词)作为输入,所以一种将单词转换为数字的算法允许你在原始文本数据上训练机器学习模型。
BERT 是一个将单词转换成数字的计算模型。图片来自 (Devlin 等人,2019) 。
**伯特有什么了不起的?**对我来说,伯特之所以如此伟大,主要有三点。
- 第一:根据大量数据进行预先训练。
- 第二:考虑单词的上下文。
- 第三:开源。
大家讨论一下。
**#1:伯特预先接受了大量数据的训练。**最初的 BERT 模型有两种大小:BERT-base(在图书语料库上训练:~8 亿字)和 BERT-large(在英文维基百科上训练:~ 2,500 万字)。这两个模型都有庞大的训练集!正如机器学习领域的任何人都知道的那样,大数据的力量几乎是不可战胜的。当你看过 2,500 万个单词时,你会变得相当好,即使是在新单词上。这意味着,由于 BERT 经过了良好的预训练,因此它可以应用于小数据集,并且仍然具有良好的性能。我在这里用一个例子:我最近参与了一个开发新冠肺炎问答系统的项目。我应用了 BERT-base,在没有对数据集进行微调的情况下,在 15 个类别中获得了 58.1%的准确率。对我来说更有趣的是,“COVID”这个词甚至不在 BERT 的词汇中,但它仍然有相当高的准确性。
伯特能够解释一个单词的上下文。以前的单词嵌入方法会为一个单词返回相同的向量,不管它如何使用,而 BERT 会根据它周围的单词为同一个单词返回不同的向量。例如,在下面的示例中,旧方法将为“信任”返回相同的嵌入:
我不能信任你。
他们不再信任他们的朋友。
他有一个信托基金。
另一方面,BERT 考虑了上下文,并会返回“信任”的不同嵌入,因为该词在不同的上下文中使用。如果您能够区分一个单词的不同用例,您就有了更多的可用信息,并且您的性能可能会因此而提高。一个相关的语言建模方法是 ELMo ,它也考虑了上下文。
#3: BERT 是开源的。容易接近是一大优势。机器学习领域的许多工作正被推动成为开源,因为开源代码通过允许其他研究人员轻松应用你的想法来促进发展。伯特的代码是在 GitHub 上发布的,它包括一个广泛的自述文件,其中有关于如何使用代码的深入信息,这对任何想要使用它的人都非常有帮助。
对我来说,我认为我能够在几分钟内下载一个 BERT 的工作模型,并且花了不到一个小时编写代码,让我在自己的数据集上运行它。
当您将这三个方面结合在一起时,您将获得一个极其强大的语言模型,它可以在 SQuAD、GLUE 和 MultiNLI 等知名数据集上实现一流的性能。它有一些相当大的优势,使它如此强大和适用。
它是在大量数据上预先训练的,所以你可以把它应用到你自己的(可能很小的)数据集上。它有上下文嵌入,所以它的性能会很好。它是开源的,所以你可以下载并使用它。它的应用非常广泛,这就是它革新 NLP 的原因。
谷歌的研究人员(最初的创造者)计划使用 BERT 来理解谷歌搜索,并提高谷歌自己的回答服务的准确性。其他人发现 BERT 不仅仅在谷歌搜索中有用。BERT 似乎承诺在计算语言学的关键领域进行改进,包括聊天机器人、问答、摘要和情感检测。BERT 的广泛适用性显而易见:自从一年前发表以来,这篇论文已经被引用了 8500 多次。此外,向计算语言学协会(ACL)会议(最大的国际 NLP 会议)提交的论文在 BERT 发表后翻了一番,从 2018 年的 1,544 篇论文增加到 2019 年的 2,905 篇论文。
BERT 将继续革新 NLP 领域,因为它为大范围任务的小数据集提供了高性能的机会。
延伸阅读:
- Devlin 等人的原始论文
- ELMo,一个使用上下文嵌入的类似语言模型。
2020 年最佳商业智能工具:第一轮,战斗!
BI 行业在 2019 年爆发。以下是 2020 年最好最值得关注的 BI 工具。留意这些玩家。
应该选择什么 BI 工具?(原图来自维基百科)
去年,分析界发生了许多变化。一些大型 BI 公司被科技巨头收购。一些斗志昂扬的新创公司获得了成功。商业智能继续进入一个又一个行业,从一个不错的必需品变成一个绝对必须品。这似乎是一个对最值得关注的选择进行大汇总的好时机。
以下是 2020 年 7 个最好/最值得关注的商业智能工具
选择你的商务智能工具(来自维基百科的原始图片)
Knowi
Knowi 标志(来自 Knowi.com)
Knowi 是商业智能雷达上的一个新名字,只是最近才开始成为 Looker 和 Tableau 等公司的真正竞争对手。Knowi 平台采用独特的商业智能方法,专注于传统智能工具中没有的三大区别点。这些是数据虚拟化、基于搜索的分析以及对 NoSQL 数据分析的本机支持。
- **数据虚拟化:**数据虚拟化在数据集成领域越来越受关注,但 Knowi 是唯一一个将该技术引入商业智能的平台。数据虚拟化添加了一个逻辑数据层,允许应用程序检索和操作数据,而无需事先了解数据的结构。在 BI 中,这意味着能够拥有仪表板和数据分析,而不必首先使用 ETL 将所有东西迁移到单个数据仓库。
- **基于搜索的分析:**搜索驱动的分析是对您的数据提出问题的能力,就像您在谷歌中键入问题一样,并获得真实的可操作数据、图表或仪表盘来响应您的查询。基于搜索的分析有时也被称为自然语言商业智能。Knowi 在这方面下了很大的赌注,最近发布了这项功能,并很快部署了该功能的 Slack 版本。
- **原生 NoSQL 数据分析:**大多数 BI 工具需要特殊的连接器来从 MongoDB 等来源获取数据,或者需要将数据转移到结构化数据仓库。Knowi 利用数据虚拟化的优势,无需 ETL 或连接器就可以本机连接到大多数 NoSQL 数据源。
另一项值得注意的是,Knowi 支持白标嵌入式分析。这意味着你可以在你的产品中嵌入 Knowi 品牌,而不是 Knowi 品牌。现在有一些成长中的创业公司,他们的产品有一部分是伪装的。
Knowi 还支持你期望从 BI 工具中得到的所有标准特性:数据可视化、交互式仪表板、报告、查询和分析。
**值得注意是因为:**拥有一些前沿功能,可能会对商业智能世界产生重大影响。
主要不利因素: Knowi 是一家初创公司,因此他们可能会缺少一些大公司的精华。
功率 BI
Power BI 标志(来自 powerbi.microsoft.com)
Power BI 是微软在商业智能游戏中的重磅武器。如果你在微软和 Azure 生态系统中,你可能已经在某种程度上使用了 Power BI。Power BI 是专门为喜爱 Microsoft Excel 的人设计的一个**简单过渡工具。**以下是它的一些特性:
- 简单的拖放界面。
- 无代码平台。允许用户在 GUI 界面中做任何事情。
- 可以在桌面或云中使用。
- 平稳集成到任何以 Microsoft/Windows 为中心的工作流中。
- 捆绑到 Office 365 中
值得注意是因为: Azure 一直处于增长阶段,这给微软生态系统带来了整体提升,并有可能推动 Power BI 的发展。
主要缺点: Power BI 不能连接很多数据源,因为它的预建连接器库有限。据报道,在大型数据集上也有性能问题。
元数据库
元数据库徽标(来自 metabase.com)
Metabase 在许多方面与 Looker 完全相反,因为它完全开源且完全免费。Metabase 的设计主要考虑了更简单的用例,这就是它相当轻量级的原因。以下是一些突出的特点:
- 交互式仪表盘。
- 使用类似 SQL 的查询语言。
- 数据可视化图表在视觉上很吸引人。
- 工作环境干净且易于操作。
- 不断增长的开源社区支持一致的免费更新。
值得注意是因为:这是一个对商业用例可行的开源选项。
**主要缺点:**你需要建立自己的服务器,并用你的元数据库安装来维护它。
(舞台上由人扮的)静态画面
Tableau 标志(来自 Tableau.com)
Tableau 是商业情报的守旧派。如果你在商业分析或数据科学领域工作过一段时间,你应该知道这个名字,并且可能至少用过一次。Tableau 无疑是商业智能工具的市场领导者。这里有几个众所周知的特点:
- 友好的低代码界面,用于制作可视化和仪表板。
- 业界一些最有吸引力的开箱即用的可视化技术。
- 150 多个用于运行常见数据分析操作的预建函数。
- 用户访问控制和共享性。
- 强大的移动体验…如果你想在手机上进行数据分析。
- 生成报告。
**值得关注的原因:**2020 年还是山中之王。
主要缺点: Tableau 自 2003 年就已经存在,在大多数情况下,它仍被用作下载到本地计算机的程序。该公司已经做了大量工作将其移植到云中,但它在该领域的表现不如许多较新的商业智能工具。
检查员
Looker 标志(来自 looker.com)
近年来, Looker 已经成为商务智能领域的一个大玩家。Looker 往往比其主要竞争对手 Tableau 更能吸引懂技术的观众。它非常强调编写 SQL 查询,但也具有构建仪表板和可视化的所有标准特性。Looker 跨垂直行业使用,用户遍布各行各业。以下是 Looker 的几个突出特点:
- 基于网络的交互式仪表板。
- 支持移动设备。
- 可以在内部或云中安装
- 名为 LookML 的内置机器学习/数据建模语言。
- Git 集成。
- 对 SQL 查询的强大支持。
- 专为数据探索而设计,是数据工程师和数据科学家的好工具。
**值得关注的原因:**最近被谷歌以 26 亿美元收购。
**主要缺点:**学习曲线陡峭。谷歌收购后不确定的未来。
谷歌数据工作室
谷歌数据工作室(来自 datastudio.google.com)
经常被忽视的是, Google Data Studio 可以满足商业智能软件的一些简单用例的需求。谷歌数据工作室于 2016 年作为新的免费谷歌服务出现。不可否认,它能够连接的数据源数量相当有限。一些用户通过将他们的数据移植到 Google Sheets,然后将 Data Studio 连接到那个 Google Sheets 文件来解决这个问题。但看起来,就像 PowerBI 一样,只有当你所做的大部分事情已经在谷歌生态系统中时,谷歌数据工作室才是一个很好的选择。以下是一些特征:
- 完全免费。
- 基于 Web 的数据可视化和交互式仪表板。
- 轻松连接到任何基于谷歌的数据源,如谷歌分析,谷歌广告词,YouTube 和谷歌搜索控制台。
- 简洁的用户界面。
- 好用。
**值得注意是因为:**尽管它可以用于许多用例,尤其是与网站数据分析有关的用例,但它并不经常被认为是一种商业智能工具。
**主要缺点:**对数据源的严重限制
Sisense /潜望镜数据
Sisense 标志(来自 sisense.com)
在过去的一年里,Sisense 已经与潜望镜数据融合在一起。这两个商业智能工具合并起来提供了一个 BI 解决方案,该解决方案收集和合并来自多个来源的数据,同时管理收集、集成和可视化步骤本身。以下是一些值得注意的特征:
- Sisense / Periscope 组合产品提供了端到端的分析解决方案。
- 智能平台可以在内部或云中使用。
- 该工具支持移动设备。
- 与众多数据源集成。
**值得关注的原因:**si sense Periscope 组合产品改变了他们的市场定位和作为商业智能平台的价值主张。看看他们在 2020 年如何定位自己将会很有趣。
**主要缺点:**一些用户报告说,在他们能够让产品正常工作之前,实施过程又长又贵。
非商业智能荣誉奖
ETL / ELT 解决方案
对于大多数 BI 工具,您需要在数据仓库中清理和准备数据。为此,您需要一个 ETL 解决方案。在 ETL 中,您提取、转换数据并将其加载到数据仓库中。在这里,我们列出了几个伟大的选择。
这里有必要快速指出例外情况。有了 Knowi,因为它建立在数据虚拟化的基础上,所以实际上不需要数据仓库或 ETL 来进行数据分析或构建仪表板。但是随着他们的数据管道的成熟,许多 Knowi 用户仍然合并了数据仓库和 ETL。然后,他们可以使用 Knowi 来组合和分析自己的仓库数据,或者将它与其他数据源组合起来。
SiSense + Periscope 组合智能工具包含 ETL。
盛装
Panoply 徽标(来自 Panoply.io)
Panoply 对于 ETL 和 ELT 来说都是一个很好的选择。Panoply 本机集成了 150 多个数据源,包括 Instagram、脸书、谷歌分析、YouTube、ElasticSearch 和 MongoDB。Panoply 也可以与 Python 或 r 结合使用。
Xplenty
Xplenty 标志(来自 Xplenty.com)
Xplenty 是另一个很好的 ETL 选项。它完全基于云,具有许多平台上的转换工具来清理和转换您的数据。Xplenty 似乎也非常强调数据安全性。
结论
不幸的是,当涉及到 BI 工具时,没有完美的胜利。赢家取决于组织的需求。
说到选择 BI 工具,没有明确的宿命。决定谁是你公司的赢家很大程度上取决于你的用例。如果您的公司看到了数据仓库的价值,那么使用 Xplenty 或 Panoply,然后在其上放置一个 BI 工具,如 Looker、Tableau 或 Knowi,可能会很好。如果你在微软生态系统上有大量投资,PowerBI 是一个显而易见的选择。如果你在寻找免费的东西,Google Data Studio 或 Metabase 可能是你用例的赢家。如果你有大量的 NoSQL 数据或存储在不同数据源的数据,并且希望先获取数据,而不是将其全部转移到同一个数据仓库(并且你不介意与一家成长中的初创公司合作),Knowi 可能是一个不错的选择。
使用 Python 简化 URL
我们将讨论并学习如何使用各种 Python APIs,只用几行代码来缩短 URL。
奥比·奥尼耶德在 Unsplash 上拍摄的照片
读者你好!所以,你会在各种地方(社交媒体、网站、信息平台等)看到短网址。).短网址容易记忆或输入,所以很受欢迎。没有人喜欢长 URL,所以我们经常需要缩短冗长的 URL。
你可能已经在网上使用过各种 URL 缩短服务,它们都做得很好!甚至谷歌表单,LinkedIn 等等。,缩短 URL 以方便使用。所以,它是互联网上广泛使用的东西。
那么,你有没有想过或者尝试过制作自己的网址缩短器呢?希望有许多可用的库和 API 来帮助我们以编程方式做同样的事情,而不需要访问任何网站和使用任何人的服务。
我们可以根据需要用 Python 语言编写程序。然后我们可以给出一个长的 URL 作为输入,我们会得到短的 URL 作为输出,这也只需要很少几行代码。是不是很刺激?使用各种 API 可以非常容易地做到这一点,而无需深入研究复杂的主题。
因此,有各种各样的 API 可以完成这项工作,所以让我们来看看一些 API,让我们实现它们,看看我们如何使用它们来缩短链接。
一点点网址缩写
Bitly 网址缩写是非常简单的使用。你需要在上做一个小小的账户。然后,进入群组设置,点击高级设置。在那里你会找到 API 选项。因为 API 现在已经贬值,所以单击 OAuth 选项。然后,生成 OAuth 令牌。复制令牌。
现在,安装 bitly_api 。为此,单击这个链接并下载存储库。然后,将其解压缩,并通过以下操作移入文件夹:
cd bitly-api-python-master
然后,你会在文件夹里面;然后,您需要使用以下命令:
python setup.py install
现在,安装工作已经完成。 bitly_api 现在已经安装在您的机器上了。现在,让我们转移到真正的编码部分,这是非常容易的,只有几行。
所以,如你所见,这样做很简单。我们首先需要在代码中导入 bitly_api 。接下来,我们需要放入我们之前生成的访问令牌,并调用包含该访问令牌的连接。
现在,我们需要为用户请求链接。接下来,我们将通过调用之前通过调用 Connection 创建的访问的 shorten 函数来缩短它。
然后,我们将只打印 short_url 函数的*‘URL’*部分。它也有各种其他信息,如哈希,完整的链接和其他信息,我们不需要。
是的,我们完成了!使用 Bitly URL Shortener API 来缩短链接非常容易。
严格的网址缩写
Cuttly URL Shortener 是另一个我们可以使用的很棒的 URL Shortener。它也很容易使用,虽然需要 2-3 行代码,但不需要安装,所以总体上更简单。
首先,搬到并注册一个新账户。接下来,点击编辑配置文件,并点击生成新的 API 密钥。这将生成一对新的 API 密钥供我们使用。复制那些 API 键。
因此,我们可以直接跳到代码中,而不需要安装任何东西。虽然我们需要一个简单的安装,我想我们大多数人已经安装了。
pip install requests
因此,如果您以前没有安装这个简单的库,现在就安装吧。接下来,让我们来看看它的代码。
如你所见,我们从将请求导入代码开始。接下来,我们输入 API 密钥。然后我们要求用户输入 URL。此外,我们需要指定 api_url 参数。然后,我们把它发给请求获取数据的人。
如果数据是有效的,那么我们获取数据的 shortLink 部分,即缩短的 URL,并打印出来。如果无效,我们返回一个错误。
皮肖特纳
pyshortener 是一个 python 模块,可以使用它的访问键来使用各种 URL shortener 服务。我们不需要为不同的提供者安装单独的库。例如,我们可以使用 Google URL shortener、Bitly shortener、Adf.ly shortener 等。
这也有助于我们从缩短的 URL 中获取原始 URL。所以,它有双重用途。
要使用任何缩短服务,我们首先需要注册该服务并获得其访问令牌,就像我们在最后两种方法中所做的那样。
然后,我们需要为 pyshorteners 安装 python 模块。
pip install pyshorteners
在这个例子中,我们将使用 Bitly shortener。我们已经以不同的方式使用了 Bitly,所以让我们以不同的方式尝试相同的提供者。
所以,你可以在下面看到使用 pyshorteners 模块是多么容易。这非常简单,只需要很少几行代码。将收到的访问令牌放入 Bitly OAuth 中。然后只需输入需要缩短的链接。
此外,正如你所看到的,我们也可以很容易地扩展短链接。只需输入短网址,使用*。展开*以我们使用的相同方式展开短 URL。短将其缩短。
所以,以同样的方式,你可以使用各种缩短服务提供商做同样的工作。
所以,我希望你今天学到了一些新东西,你会尝试一些其他的网址提供商,如 adf.ly,Google Shortener 等。你也可以用它来尝试其他各种复杂的事情。
是最基础的部分,也是最重要的部分。你也可以在现有的网站或应用程序中使用它来提高工作效率,或者只是玩玩它,找点乐子!
希望你喜欢这篇文章。在完成这篇文章之后,这里还有一些其他的好文章可以阅读!
[## 使用 React 构建一个博客应用程序——介绍和设置(第 1 部分)
在第一部分中,我们处理项目的基础并设置它。
javascript.plainenglish.io](https://javascript.plainenglish.io/build-a-blog-app-with-react-intro-and-set-up-part-1-ddf5c674d25b) [## 用 MERN 堆栈构建一个电子商务网站——第 1 部分(设置项目)
让我们使用 MERN 堆栈(MongoDB,Express,React 和 Node)建立一个简单的电子商务网站,用户可以在其中添加项目…
shubhamstudent5.medium.com](https://shubhamstudent5.medium.com/build-an-e-commerce-website-with-mern-stack-part-1-setting-up-the-project-eecd710e2696) [## 使用 React 构建一个简单的 Todo 应用程序
让我们用 React 构建一个简单的 Todo 应用程序,它教你 CRUD 的基本原理(创建、读取、更新和…
medium.com](https://medium.com/javascript-in-plain-english/build-a-simple-todo-app-using-react-a492adc9c8a4)
如果您对 Django 和 Django Rest 框架感兴趣,请尝试这些文章系列:
[## 使用 Django Rest 框架构建博客网站——概述(第 1 部分)
让我们使用 Django Rest 框架构建一个简单的博客网站,以了解 DRF 和 REST APIs 是如何工作的,以及我们如何添加…
towardsdatascience.com](/build-a-blog-website-using-django-rest-framework-overview-part-1-1f847d53753f) [## 使用 Django 构建一个社交媒体网站——设置项目(第 1 部分)
在第一部分中,我们集中在设置我们的项目和安装所需的组件,并设置密码…
towardsdatascience.com](/build-a-social-media-website-using-django-setup-the-project-part-1-6e1932c9f221)
学习数据科学的最佳应用
这些应用程序可以很容易地集成到你的学习过程中,以帮助巩固概念,保持你的大脑敏锐!
由 Unsplash 上的 Becca Tapert 拍摄的照片
如今,每个人和他们的母亲都开始意识到数据科学将在我们的社会中扮演的关键角色。我一直在这个领域工作,因为“商业智能”是一个描述数据透视表的花哨术语,所以我看到了从 BI 到大数据、数据科学、机器学习和神经网络等的演变。我记得在 Coursera 上学习大数据课程时,我感到完全迷失了,我还记得那些不眠之夜,我试图配置一个虚拟机,这样我就可以…Hadoop 的一些东西。但本文并非传记,言归正传!
如今的在线资源量简直可笑。要学的东西太多,要尝试的课程太多。阅读 Medium 上的某些主题,似乎每个人都是有抱负的数据科学家或深度学习博士。别误会,我觉得这种热情很棒。但是对于进入这个领域的新人来说,试图找出从哪里开始,或者如何保持专注可能是压倒性的,甚至是令人沮丧的。
就我个人而言,我意识到比我选择哪门课程更重要的是,当我提出自己的学习框架时,我学得更快,也更有动力
我不认为有一个单一的步伐或框架适合所有人,因此我不会浪费你的时间——也不会浪费我的时间——来详细解释我的旅程。但一如既往,如果你想了解更多,可以在下面留下评论。
我想与你分享的部分过程是关于保持你的大脑敏锐并准备好处理任何数据科学任务,即使你不坐在电脑前。
现在,这些应用程序本身不会神奇地将你转变为数据科学家。希望明确这不是重点!这里的目标是用你的手机巩固你在其他地方学到的东西,并保持你的分析能力。默认情况下,我会寻找那些旨在交付简短、简单和清晰任务的应用。理想情况下,你应该可以在上下班的时候使用它们,在排队等东西的时候,在午休的时候,你会有这样的想法…
我还尝试为每一个添加了一个短视频,这样你就可以在决定安装它们之前很容易地检查它们。
1.数据营
如果你在搜索关于数据科学的在线资源时,从未见过 Datacamp ,那你的浏览器一定有问题!Datacamp 是一个拥有数百门课程的惊人平台。从电子表格到 SQL、Python、R,甚至 Git。
一年多以前,Datacamp 是我开始 Python 之旅的地方,我看到他们的订阅价格上涨了,因为他们增加了几十门新课程,并完善了社区论坛体验。你不会学不完的东西,这是肯定的!
关于应用程序,它是为初学者和高级用户设计的,让你练习你已经完成的每门课程的特定部分。这是一个很好的方法来复习简短的片段,巩固你所学的知识。
我主要用它来做可以在电话上轻松完成的小练习,但是有很多东西你可以探索。我找不到专门针对这款应用的视频,但这里有一个视频很好地概述了它们提供的功能。这是一个商业帐户,但工具大多与个人订阅相同。你随时可以拿给你的老板看,说服他/她给你的团队买一个企业账户!
2.举起
很简单:Elevate 被设计成你大脑的私人教练**。每天,该应用程序将根据你之前的表现向你展示 3 个挑战,它们专注于提高处理速度、注意力、记忆力、口语(是的,口语!),逻辑等。**
考虑到分析和沟通技能对数据科学家的重要性,这是一个很好的培训工具。在切换到 Lumosity 之前,我使用了 Elevate 一段时间(前面有更多关于 Lumosity 的内容),最近当我写这篇文章时,我又安装了它。
我猜免费版可以提供更多的种类,但至少你可以在订阅前知道他们提供什么样的锻炼。
[## 阅读法比奥·内维斯(以及媒体上成千上万的其他作家)的每一个故事
作为一个媒体会员,你的会员费的一部分会给你阅读的作家,你可以完全接触到每一个故事…
medium.com](https://medium.com/@fneves/membership)
3.发光度
这是我最近才发现的一款应用,尽管它是最受推荐的应用之一,拥有数百万用户。我认为 Lumosity 是 Elevate 的替代品,但它们并不完全相同。
声明和应用程序结构都类似于 Elevate。一个个性化的大脑教练,免费版每天为你提供 3 个挑战。我确实觉得 Lumosity 练习更有挑战性,更有趣,而且肯定更容易上瘾。
现在我想起来,我确实使用 Elevate 有一段时间了,所以可能我只是很高兴看到一些新的练习!
如上所述,该应用程序提供免费版本或 14 天的订阅试用。如果你正在寻找一种大脑兴奋剂,我建议你试一试。
我省略了 NeuroNation,因为免费版本非常有限,但他们声称它可以改变你的生活,他们的网站上有很多科学标识。像那样大胆的声明总是让我怀疑,所以也许下次…
接下来,统计应用。
4.数据科学基础课程
数据科学 101 顾名思义,是一款教育类 app,可以帮助用户了解机器学习、分类模型等数据科学主题。
它主要是一个面向初学者的应用程序,但任何需要高质量资源来研究该领域并了解不同 ML 算法(如回归、K-最近邻、支持向量网络(SVM)等)的内部工作原理的人都可以使用。
最棒的是,它不仅充当了一个备忘单,而且它还有一些准备使用的代码片段**。**
它又轻又简单。试一试,看看对你有没有用!
5.基本统计
如果我们要在这个数据驱动的时代生存下去,我们都需要一些基本的统计学知识。基础统计可以帮你刷新概念我们大多数人都忘记了高中和大学之间的某个时候。
基础统计学感觉就像是如果有人从我们统计学班最优秀的学生那里拿到笔记,汇编成一个超级简单的 app。
我相信你知道在你学习的时候这些笔记是多么的方便!
6.概率分布
概率分布是对之前应用的一个很好的补充*。在这里你可以在手机上绘制和可视化各种概率分布。老实说,你可能想跳过这一条,直到你对统计学有所了解。*
它绝对不是一个可以一直带在身边的应用,但当你在酒吧和你的书呆子朋友争论概率时,它是一个很好的工具。是的,书呆子也去酒吧!
接下来,我们继续进行编程。
7.编程中心
编程中心就像是编码应用的圣杯。里面有各种各样的编程语言,而且运行得非常好。它包含的语言有 HTML,Javascript,C,C++,C#,Swift,Python,R 编程,Java,CSS。他们还收集了数千个代码示例,您可以将它们移植到您的计算机上。
这不是一个深入的审查,所以我会保持简短。我喜欢互动的体验,以及快速编译代码的方式。当然,如果你想要完整的体验,你需要付费订阅,但是你仍然可以用免费版做很多事情。
开发者也要吃饭吧?
如果你只是测试选择哪种语言,这可能是开始你的编码之旅的好方法。
8.量子 Python
如果没有专门的 Python 资源,这篇文章是不完整的!如果你读过我以前的任何一篇文章,你就会知道我在项目中主要使用 Python。除非你在过去的两三年里一直生活在岩石下,否则你会知道 Python 是最好的通用语言之一。包括数据科学项目。
QPython 至少有两个版本,一个面向初学者,一个面向高级用户(还有一些技术特性)。应用程序的名字一开始可能会令人困惑,但如果你刚刚开始使用,请使用 QPython Ox 。对于更高级的用户,使用 QPython 3x 应用程序。 但是请阅读他们在应用商店 的描述,这样你就完全知道你在安装什么。他们非常清楚不同应用版本的含义。
不幸的是,我相信该应用程序只适用于 Android 用户,但它的功能包括一个 Python 解释器和编辑器,运行时环境,QPYI 和 SL4A 库。它也兼容 Python 2.7。
这不是一个短视频,但我发现开始使用该应用程序真的很有用。如果你对更高级的东西感兴趣,我建议检查这个频道,因为他有很多关于它的教程!
我知道在 Medium 上有大量的“最佳 X 对 Y”的文章,但我试图保持简短,就像我刚开始时喜欢读的文章一样。
如果您刚刚接触数据科学,我希望这些链接对您有用,如果您想更进一步,请查看我的其他文章。我已经发布了几个项目,比如网络抓取教程,以发展一个 Instagram 账户,以及从 Kayak 获取航班价格,这里仅举几个例子。
更新:
我认为在这个列表中加入数据科学是公平的!我读了很多文章
感谢您的阅读!一如既往,我欢迎反馈和建设性的批评。如果你想取得联系,可以在这里联系我或者直接回复下面的文章。
游览伊斯坦布尔的最佳去处
使用 K-means 聚类下一个目的地的区域
这篇博文是 IBM 数据科学专业认证最终任务的一部分:“邻里之战”。
和我的妻子一起,我们都是热情的旅行者。我们尽量不去城镇,我们已经一起去了五大洲的近 30 个国家。虽然我们喜欢旅行中的意外冒险,但我们喜欢在去任何地方之前做好准备。这就是为什么,对于我的 IBM 数据科学专业认证课程的顶点项目,我决定解决我们在准备即将到来的旅程时经常面临的问题。
当计划去一个新的地方旅行时,我们经常很难决定在旅行期间哪个地方最适合居住。一些主要问题是住宿费用和该地区的安全。此外,因为我们是游客,所以我们希望尽可能靠近旅游景点和推荐的餐馆。由于标准的数量,做出最佳选择可能不是那么简单。
在此,我将对去伊斯坦布尔旅行时需要考虑的不同标准进行分析。在此分析的基础上,对其区域进行分类,以表明最适宜居住的区域。
我们俩都没去过土耳其,它在我们的清单上已经有一段时间了。希望,当疫情平静下来,我们将最终有机会去那里,并使用这些发现为我们的准备工作。
正如简介中提到的,需要几个数据集来充分探索给定的问题。对于去伊斯坦布尔旅行的情况,使用了以下数据集:
- 伊斯坦布尔各区列表,包括简单的统计数据,如人口、面积和人口密度
从维基百科,免费的百科全书跳转到导航跳转到搜索这是一个列表,伊斯坦布尔的区在…
en.wikipedia.org](https://en.wikipedia.org/wiki/List_of_districts_of_Istanbul)
- 伊斯坦布尔各区边界的地理空间数据,用于可视化,从
[## GADM
GADM 为所有国家和地区提供地图和空间数据。您可以浏览我们的地图或下载数据来制作您自己的地图。
gadm.org](https://gadm.org/)
- 伊斯坦布尔各区的平均租金价格。由于缺乏短期住宿价格的免费 API 或数据集,如酒店、招待所或 Airbnb,因此假设每个地区的公寓租金价格与短期住宿价格正相关。
2019 年第三季度房租指数数据显示,伊斯坦布尔房租指数下降 2.25 点……
www.realtygroup.com.tr](https://www.realtygroup.com.tr/average-rent-price-in-istanbul-is-1486-tl/)
- 每个区报告的犯罪数量。犯罪数据用于计算每个街区的犯罪指数,基于犯罪数量、人口并根据犯罪的严重性进行加权。在方法部分有更多描述。
北卡罗来纳州埃尔贡和佛罗里达州耶尔米贝索卢(2007 年)。伊斯坦布尔不同地区的犯罪率分布。土耳其研究,8(3),435-455 页。土井:10.1468868686867
- 从 Triposo API 获取伊斯坦布尔的热门景点及其分数和位置坐标。该数据用于计算地区吸引力得分,基于地区到吸引力的距离,并通过其得分的倒数进行加权。
- 从 Triposo API 获取伊斯坦布尔顶级餐馆及其得分和位置坐标。该数据用于计算地区食品得分,基于地区到餐馆的距离,并根据得分的倒数进行加权。
在为了确定最佳停留区域,使用了 K-means 聚类方法。K-means 方法基于提供的特征将未标记的可观察对象(区域)划分成给定数量的簇,使得每个可观察对象被分配到具有最近中心的簇中。这种方法非常适合给定的问题,即根据相似性对地区进行分组。
为此,需要将收集的数据转化为有用的见解。
- 使用的第一个功能是住宿价格。因为找到的数据代表每个地区的平均租金价格,所以没有必要对现有的数据集进行额外的修改。
- 用于分类的另一个特征是犯罪指数,它量化了该地区的安全性。它的计算是基于加拿大国家统计局描述的 T2 犯罪严重指数 T3。它考虑到每种犯罪的危险程度。“严重性权重”来自法院对所犯罪行类型的判决(监禁率和刑期)。罪行越严重,它所获得的“严重性权重”就越高。在这里,使用了加拿大中针对犯罪类型给出的权重。为了更容易,犯罪指数被归一化,其中最危险的地区获得犯罪指数 =100,而犯罪指数 = 0 将表示没有犯罪。犯罪指数的计算方法是将某一类犯罪的报案数量考虑在内,用该犯罪的“严重性权重”进行加权,将所有犯罪类型相加,然后除以该地区的人口:
- 接下来使用的两个特征是地区-景点和地区-美食分数。他们分别根据到顶级景点和餐馆的距离,量化该地区的位置有多好。为了得到这些,哈弗辛公式被用来计算地区中心到每个位置的距离。哈弗辛公式计算两点之间的距离,假设地球是完美的球形。此外,计算的距离由在 Triposo 上获得的位置分数的倒数加权。这种方式反映了即使给定的地点位于更远的地方,但是如果它具有更好的评级,它仍然会被选择访问更近的具有更低评级的地方。随后对每个地区到所有景点和餐馆的加权距离进行平均,以分别获得距离-景点和距离-食物得分。由于所描述的分数反映了距离和评级的倒数,分数较低的地区被认为更适合游客居住。哈弗辛公式,其中ϕ是纬度, λ 是经度, R 是地球半径:
在调查收集的数据时,注意到所使用的犯罪统计数据集缺少一些地区的值。因此,在进入拟合过程之前,必须进行数据插补,以便能够将所有地区纳入分类。为了不偏不倚地对待有缺失数据的区,任何缺失值都将替换为有犯罪统计数据的区的平均犯罪指数。
在进行分类之前,使用 scikit-learn 的 StandardScaler 对所有特征进行标准化。这是为了确保所有特征对拟合过程具有相同的影响。
图一。确定用于 K-均值聚类的聚类数的肘方法。红色虚线显示选择的集群数量。
肘形法用于确定各区应划分的聚类数。为此,对记录相关误差的一系列聚类数进行 K-均值拟合。当然,选择的 k-聚类越多,获得的拟合误差越低。然而,为了避免过度拟合,必须在聚类数量和误差之间进行权衡。如图 1 所示,在 5–6 以上增加更多的聚类不会显著减少误差。因此,对于该分析,选择了 5 个 k-簇。
如前所述,伊斯坦堡的 39 个区被分为 5 个集群。在所有地区中,19 个被分配到群组 0,10 个被分配到群组 1,4 个被分配到群组 2,3 个被分配到群组 3,3 个被分配到群组 4。为了确定哪个聚类包含最适合居住的地区,根据给定聚类中地区的每个要素的平均值对聚类进行评级,如表 1 所示。正如方法一节所述,每个特性的设计都是为了使特性值最低的地区更适合居住(即较低的租金、较低的犯罪率、到最佳评级场所的较短距离)。因此,表 1 中的聚类 0 被认为包含最适合居住的地区,因为它在租金价格方面排名第三,在犯罪指数方面排名第一,在地区景点得分方面排名第一,在地区美食得分方面排名第一,加起来为 3+1+1+1=6,是所有聚类中最低的。
**表 1。**并列排列每个聚类的平均要素,从最适合居住的区域聚类到最不适合居住的区域聚类进行排序。
图 2 显示了显示所获得的聚类的每个特征的基本统计信息的箱线图。
图二。 箱线图显示每个考虑特征的聚类统计。左上角:平均租金价格;右上:犯罪指数;左下:地区吸引力得分;右下:地区食物得分。
为了在空间上可视化与伊斯坦布尔市相关的分析和统计数据,收集的信息叠加在一些地图上。图 3 显示了各区的分类,图 4 显示了前 100 家餐馆和观光地的位置,图 5 显示了每平方米的平均租金价格,图 6 显示了计算的犯罪指数。叠加在交互式地图上的所有收集的统计数据可在以下位置查看:
将箱线图与相关地图进行比较,可以对确定的聚类得出一些结论。
- 最佳居住区,被归类为集群 0,位于严格的市中心之外。
- 正如所料,租金价格最低的集群由距离市中心最远的区域组成。然而,租金最高的集群(明显高于其他集群,图 2 的左上图)不在严格的市中心,而是位于伊斯坦布尔欧洲和亚洲部分之间的欧洲海岸。
- 查看犯罪指数箱线图(图 2 右上图),可以注意到第 4 类和其他类之间的显著差异。第 4 类区的平均犯罪指数是所有其他类区的 3 倍。集群 4 中的两个区位于严格的市中心,然而,第三个区位于远离市中心的地方。对犯罪统计数据的更好检查表明,位于中心的聚类 4 的区确实是犯罪数量最高的区之一,但是,其他区获得的高犯罪分数可能是由该区的低人口造成的。
- 聚类的地区吸引力和地区食物得分盒图似乎显示了几乎相同的统计数据(图 2 底部的图表)。研究图 4 上的地图,可以得出这样的结论,这是因为餐馆和观光地彼此非常接近。此外,因为所有排名靠前的地方都拥挤在市中心,所以计算出的分数高度依赖于各区离市中心的距离。
**图三。**伊斯坦布尔地图,根据指定的聚类划分为不同颜色的区域。
**图 4。**伊斯坦布尔的特写地图,根据所分配的区域划分成不同的区域,标记出前 100 个外出就餐(蓝点)和观光(红点)的地方。
图五。根据图例上显示的每平方米平均租金来划分区域的伊斯坦布尔地图。
**图 6。**伊斯坦布尔地图,根据计算出的犯罪指数着色,如图例所示。未着色区对应于没有犯罪统计数据的区。
通过实施 K-means 算法,伊斯坦堡的 39 个区根据价格、安全以及与最佳餐馆和观光地的距离被分为 5 组。通过对获得的结果进行排序,可以推断出伊斯坦布尔最佳和最差的住宿区。
最适合居住的是位于市中心外围的地区,而由于高物价和高犯罪率,最差的是位于市中心的地区。
虽然最终结果似乎与通常的观点一致,即最好靠近中心而不是在中心本身,但是所执行的分析仍然可以改进。使用的犯罪统计数据来自 10 多年前。在此期间,很多事情可能会发生变化,因此,使用更新的数据会更有好处。对于住宿价格,使用了长期租金价格,而不是每晚的酒店价格。虽然假设两者是相关的,但是如果没有这两个数据,就不能完全确定。至于地区吸引力和地区食物得分,使用直线距离。相反,通勤时间会更好,区分难以到达的区域,例如位于岛屿上的区域。
Jupyter 笔记本包含创建本报告的逐步流程,可在以下位置查看:
最佳人工智能读物
图片来自 stocksnap.io
人工智能和机器学习非小说类书籍的终极清单
在这个列表中,我试图收集关于人工智能、机器学习和机器人的 10 本最重要和最受欢迎的书籍。我花了一年的时间阅读每一本书,我完全推荐所有的书(好吧,也许有些比其他的更多)。这本集子很好地脱离了所有的技术内容,所以不要期望找到充满数学和算法的技术书籍。
相反,只有从哲学或商业角度分析人工智能的非虚构书籍。在我看来,每个机器学习工程师,对机器学习感兴趣的程序员,希望将 AI 应用到业务中的专业人士都应该至少阅读其中两本。如果我告诉你这个星球上的每个人都应该读一本,不要惊讶。
人工智能已经慢慢证明自己是未来所有技术进步的主要力量,预计将在塑造我们的日常生活方面发挥重要作用,超出我们大多数人的想象。
让我们开始吧:
德乌斯人:明日简史
畅销书《智人》(Sapiens)描述了人类从类人猿到超级智能生物的进化过程,在出版后,Yuav Noah Harari(历史学家、哲学家和耶路撒冷大学历史系教授)继续他对未来的探索。
在他的书《德乌斯人》中,他认为人类会更加努力地去获得完全的幸福、不朽和上帝般的力量,这可能会导致各种各样的未来。人类会对机器失去控制吗?这个人会被当作神来崇拜吗?但整本书的主要思想是,它将以将我们的智力从情感中分离出来而告终。哈拉里深入研究哲学问题,如意识、人类情感、个人主义,所以如果你想进行一些哲学上的提问和思考,请务必阅读这本书。
奇点临近:当人类超越生物学
雷·库兹韦尔(Ray Kurzweil)是一位发明家和未来学家,迄今为止已经写了 5 本畅销书,并通过他的书《奇点临近》(The Singularity is Near)对普及术语“技术奇点”负有部分责任。这本书侧重于人工智能的一个更具技术性的方面,而不是哲学的观点,并分析了智能机器人在人类生活中的社会学影响。它还介绍了与机器融合的可能性,并作为一个控制论的存在活着,像一个半机械人(做一个太空堡垒卡拉狄加参考,抱歉我控制不住自己)。
正如比尔·盖茨所说:“在预测人工智能的未来方面,雷·库兹韦尔是我所知道的最好的人。他引人入胜的新书设想了一个未来,在这个未来,信息技术发展如此之快,以至于人类能够超越其生物学限制——以我们还无法想象的方式改变我们的生活。”
超级智能:路径、危险、策略
尼克·博斯特伦教授的《超级智能》是一本关于人工智能安全的书。博斯特罗姆想象我们如何能够创造一个远超我们想象的人工智能,以及它会带来什么风险。他想到了事情如何出错的例子,以及超级智能是否能取代我们成为地球上的主导生命形式。
有一件事让我印象深刻,那就是人类和大猩猩的并行性。如果大猩猩的命运更多地取决于人类而不是它们自己,这是否意味着人类的命运将更多地取决于人工智能而不是我们的物种?另一本关于人工智能的伟大哲学著作,它提出的问题比它回答的问题还多(这是应该的)
生活 3.0:成为人工智能时代的人类
宇宙学家、麻省理工学院教授马克斯·泰格马克的《生命 3.0》。生命 1.0 来自生物进化,生命 2.0 来自文化进化,生命 3.0 来自技术进化。它再次描述了事情是如何变糟的。但它通过使用真实生活元素的实际例子来做到这一点,并提出具体的行动来防止它们。
听听这个:一家名为 Omega 的公司使用一个名为 Prometheus 的超级智能人工智能代理接管了世界,该代理能够开发突破性系统,优化管理全球资源,甚至创造其他机器。所有这些都是在没有人意识到人工智能在背后支持的情况下实现的。这本书就是这样开始的。你觉得这听起来合理吗?对我来说的确如此。
人工智能超级大国:中国、硅谷和新世界秩序
李开复(他开发了世界上第一个非特定人语音识别系统,并在谷歌、苹果和微软担任高管职位)认为,人工智能带来的巨大变化可能比我们预期的要早得多,并探讨了中国未来的影响。按照他的说法:“如果数据是新的石油,那么中国就是新的沙特阿拉伯”。也许未来终究不是西方的。
他专注于人工智能导致的全球失业问题,并清晰地描述了哪些工作将受到影响,多快以及我们如何提供解决方案。他的书最好的一点是,它不会进入模糊的世界末日预测,而是根据真实世界的数据和他在该领域的经验形成有根据的猜测。
生活分析:理解人工智能、机器学习和数据分析
梅尔特·达姆拉皮纳的《生活分析》是一本非常棒的书,适合想要了解人工智能和高级数据分析的商人、经理、营销人员和企业家。它首先解释了什么是机器学习和大数据,然后涵盖了医疗保健、营销、政府和自然领域的应用实例,解释了哪些工作将被取代,以及公司和初创公司如何应用人工智能来解决他们的用例。总结一下主要思想:AI 可以而且将会改造几乎每一个行业。如果你是专业人士,想要深入机器学习的世界,这是必须的
大师算法:对终极学习机的探索将如何重塑我们的世界
如果你想要机器学习的最佳高层次概述,只需看看佩德罗·多明戈斯(Pedro Domingos)的《大师算法》(Master Algorithm)就行了。多明戈斯设法在一本书里组织 ML 的整个领域并且包括从领域的历史到最新的突破的一切。
它通过将算法分为 5 个不同的思想流派,创建了该领域的概念模型。对于什么是最佳广义算法,每个学校都有自己的观点。然后,他更详细地介绍了它的学派和算法,最后,他提出,最终的主算法是所有这些算法的结合,我们会逐渐朝着这个目标前进。
如何创造思维:揭示人类思维的秘密
《如何创造思维》是雷·库兹韦尔的第二本书。这一次,他将对人工智能的探索推进了一步。创造人工大脑的最好方法是什么?答案是对我们自己的生物大脑进行逆向工程,准确理解它是如何工作的,然后应用这些积累的知识来创造智能机器。
受最新神经科学研究的启发,他描述了我们的大脑只不过是“模式识别器的自组织层次系统”,这些见解将使我们能够使用硅和编程来重建它。
我们最后的发明
在这本书中,詹姆斯·巴拉特(国家地理、探索、公共广播公司等纪录片制作人)将人工智能描述为人类的最终发明。它清楚地暴露了普通人工智能可能带来的风险,它表明超级智能不一定意味着仁慈,它总结了过去几年对潜在人工智能线程的研究。这是通过广泛的研究和对该领域的人的详细采访得出的结论。
我们最后的发明可能有一点悲观的基调,它可能会让你感到绝望,但这就是为什么它是一本伟大的书。它迫使你思考我们的未来,试图找到新的方法来阻止这一切的发生。最佳的社会意识。
人+机器:重新想象人工智能时代的工作
埃森哲的领导者保罗·r·多赫蒂和 h·詹姆士·威尔森用他们的经验揭示了公司如何使用人工智能来推动创新和提高盈利能力,以及人工智能如何明确地改变所有业务流程,从客户服务和新发明到生产力和工作场所文化。我喜欢将它描述为一本剧本,供其他商业领袖理解人工智能将对他们的公司产生的积极影响,以及教育和培训的必要性,以防止造成的破坏。
【https://theaisummer.com】原载于 2020 年 2 月 15 日。
每个数据科学家都应该知道的最佳防弹 Python 要素选择方法
用几行代码实现 5 种最佳特征选择方法
亚历山大·科特利亚尔在 Unsplash 上的照片
在大多数数据科学项目中,特性选择是探索性数据分析之后的第二个自然步骤。该过程包括选择正确的特征以获得最佳预测。易于使用的特征选择方法通常包括 SelectFromModel、带有递归特征消除的特征排序、基于过滤器的单变量选择、特征重要性、投票选择器。要成为独角兽数据科学家,掌握最新的特征选择方法是一项必备技能。在本文中,我们将回顾 Kaggle winners 的特征选择方法,这些方法可以用简短的 python 代码实现。对于本文,我们将分析巧克力棒评级数据集样本,以“烟熏味”作为目标特征。
你可以在这里找到完整的数据集:。
照片由 Maciej Gerszewski 在 Unsplash 上拍摄
一个具有挑战性的数据集,在分类编码后包含超过 2800 个特征。
- 从模型中选择
这种方法基于使用算法(SVC,线性,套索…)只返回最相关的特征。
**#import libraries**
from sklearn.linear_model import LassoCV
from sklearn.feature_selection import SelectFromModel**#Fit the model** clf = LassoCV().fit(X, y)**#Selected features** importance = np.abs(clf.coef_)
idx_third = importance.argsort()[-3]
threshold = importance[idx_third] + 0.01
idx_features = (-importance).argsort()[:10]
name_features = np.array(feature_names)[idx_features]
print('Selected features: {}'.format(name_features))
精选特色:[’ cocoa _ percent ’ ’ first _ taste _ 辛辣葡萄干’ ’ first _ taste _ pure ’ ’ first _ taste _ 葡萄干’ ’ first _ taste _ 葡萄干’ ’ first _ taste _ 覆盆子’ ’ first _ taste _ raw ’ ’ first _ taste _ 红莓’ ’ first _ taste _ 红果’,’ first _ taste _ 红酒’]
2.递归特征消除的特征排序
递归特征消除(RFE)方法将权重(系数或特征重要性)分配给递归提取数量减少的特征的特征。重复该循环,直到达到最佳特征数量。
**#import libraries** from sklearn.svm import SVC
from sklearn.model_selection import StratifiedKFold
from sklearn.feature_selection import RFECV
import matplotlib.pyplot as plt**#Fit the model** svc = SVC(kernel="linear")
rfecv = RFECV(estimator=svc, step=1, cv=StratifiedKFold(2), scoring='accuracy')
rfecv.fit(X, y)**#Selected features** print(X.columns[rfecv.get_support()])
print("Optimal number of features : %d" % rfecv.n_features_)
精选特色:[’ specific _ bean _ origin _ or _ bar _ name _ Malo Island,batch Ma20/19 ‘,’ specific _ bean _ origin _ or _ bar _ name _ Venezuela,Trinidad ‘,’ second_taste_sweet’]
3。基于单变量选择的过滤器
统计 scikit-learn library SelectKBest 获得最具影响力的功能。下面的代码使用相关/卡方统计测试来选择最佳特征
**#import libraries** from sklearn.feature_selection import SelectKBest
from sklearn.feature_selection import chi2
import matplotlib.pyplot as plt**#Fit the model** bestfeatures = SelectKBest(score_func=chi2, k=10)
fit = bestfeatures.fit(X,y)
dfscores = pd.DataFrame(fit.scores_)
dfcolumns = pd.DataFrame(X.columns)**#concatenate the two dataframes** featureScores = pd.concat([dfcolumns,dfscores],axis=1)
featureScores.columns = ['Specs','Score']**#print 10 best features** print(featureScores.nlargest(10,'Score').plot(kind='barh'))**#plot graph of feature importances** plt.show()**#Name selected features** X.iloc[:,62].name,X.iloc[:,127].name,X.iloc[:,1578].name,X.iloc[:,1493].name,X.iloc[:,911].name
使用选择最佳方法的 10 个最佳特性**(作者提供**图片)
所选功能:[’ country _ of _ bean _ origin _ Vanuatu ‘,’ company_location_Vanuatu ‘,’ first_taste_basic ‘,’ specific _ bean _ origin _ or _ bar _ name _ Venezuela,Trinidad ‘,’ specific _ bean _ origin _ or _ bar _ name _ Malo Island,batch Ma20/19’]
亚历山大·布朗迪诺在 Unsplash 上拍摄的照片
4。特征重要性
该方法使用基于树的分类器对特征进行评分。分数越高,该特征对于预测我们的目标特征越重要。
**#import libraries** from sklearn.ensemble import ExtraTreesClassifier
import matplotlib.pyplot as plt**#Fit the model** model = ExtraTreesClassifier()
model.fit(X,y)
print(model.feature_importances_)**#plot graph of feature importances** feat_importances = pd.Series(model.feature_importances_, index=X.columns)
feat_importances.nlargest(10).plot(kind='barh')
plt.show()
巧克力数据集中的前 10 个特征**(作者提供的**图片)
Gabriel Santiago 在 Unsplash上拍摄的照片
5。使用 Xuniverse 的投票选择器
该方法对每个算法的特征进行评分,以最小的努力选择最佳的算法。
**#import libraries** !pip install xverse
from xverse.ensemble import VotingSelector
import matplotlib.pyplot as plt**#Fit the model** clf = VotingSelector()
clf.fit(X, y)**#Selected features** clf.feature_importances_
print(clf.feature_importances_['Random_Forest'].nlargest(10).plot(kind='barh'))
plt.show()**#Name selected features** clf.feature_importances_['Variable_Name'][2],clf.feature_importances_['Variable_Name'][1],clf.feature_importances_['Variable_Name'][12],clf.feature_importances_['Variable_Name'][13]
使用随机森林模型的巧克力数据集中的前 10 个特征**(作者提供**图片)
所选特征: [‘first_taste_basic ‘,’ company_location_Vanuatu ‘,’ rating ‘,’ specific _ bean _ origin _ or _ bar _ name _ Malo Island,batch Ma20/19’]
**#Selected features with 6 models** clf.feature_importances_
使用 6 个模型的巧克力数据集中的前 4 个特征**(作者的**图片)
更多详情,请点击 github.com 的号
如果你有空闲时间,我建议你看看这个:
1.什么是特征选择?
medium.com](https://medium.com/@adityaguptai/all-about-feature-selection-f98bf5b1201c)
总结一下
参考此链接木质巧克力了解巧克力棒功能的完整选择。这一简要概述提醒我们在数据科学中使用多种特征选择方法的重要性。这篇文章涵盖了提取最佳特性的 5 种基本 python 特性选择方法,并分享了有用的文档。
希望你喜欢,继续探索!
追踪冠状病毒的最佳仪表板
要关注的区域和前 5 大全球仪表板列表
冠状病毒的传播带来了与之相关的各种数据的传播。海量数据催生了多个仪表盘,帮助总结可用信息,并以视觉上吸引人的方式呈现出来。以下是一些最好的在线仪表板,帮助您在全球范围内跟踪冠状病毒。
第一名——约翰·霍普斯金大学
由约翰·霍普斯金大学系统科学与工程中心(CSSE)开发,这是目前访问量最大的仪表盘。其背后的 JHU 团队从世卫组织和多个国家卫生部门收集数据。数据每天更新多次,每日快照上传到他们的 GitHub 库供公众使用。
链接 : 此处
优点:全球数据的主要来源,有时更新速度比每日世卫组织局势报告还快。
缺点:在灰暗的黑色背景上使用吓人的红色。只需一个时间序列图即可查看一段时间内的全球案例。没有长期的国别比较。
# 2——谷歌数据工作室
DataOutlier 的这个极简仪表板使用了来自 JHU 的数据。它包括多个时间序列图表,以查看不同指标随时间推移的进度。显示的数据是交互式的,可以通过选择世卫组织定义的地区或国家进行更改。
链接 : 此处 优点:干净、交互界面,颜色更酷,不那么吓人。每日和累积指标的多个时间序列图表。缺点:数据每天只更新一次。
第三——微软必应
微软的仪表盘干净且反应灵敏。而 JHU 仪表板仅显示少数国家/地区的省/州级数据(中国、美国、加拿大、澳大利亚等。),该仪表板包含许多国家/地区的次国家/地区(城市、省)数据。
链接:此处优点:多图表、多粒度数据的干净界面。
缺点:结果中的相关视频是多余的。
#4 —世界卫生组织
这个来自世卫组织的仪表盘和 JHU 的非常相似。由于它是基于官方的世卫组织数据,这些数字通常落后于 JHU 数据的更新。
链接 : 此处 优点:世卫组织官方数据
缺点:数据落后于 JHU。没有显示一段时间数据的国家级图表。
第五名——纽约时报
《纽约时报》拥有你在其他地方找不到的大量数据、图表和评论。他们正在收集美国的详细数据,直到县一级,并在他们的 GitHub 上公开分享。
链接 : 此处 优点:优秀的自定义可视化,详细的图表和解说。
缺点:格式更像是一篇文章,而不是仪表盘。
特定区域仪表板
- 美国:疾病控制中心
- 中国:疾病预防控制中心
- 印度:卫生部&家庭福利,志愿者
- 德国:罗伯特·科赫学院
- 意大利:联合国世界粮食计划
- 日本: JAG 日本公司
- 韩国: ESRI 韩国
- 新加坡:卫生部, Upcode 学院
- 香港:政府
- 巴基斯坦:政府
- 泰国:公共卫生部
- 菲律宾:卫生部
2020 年最佳数据科学博客
最值得信赖和享有盛誉的来源,让您了解数据科学领域的最新动态。
数据科学是让数据变得有用的学科。
数据科学正以惊人的速度增长,以满足渴望权力的人工智能相关技术 的需求,如机器学习、神经网络和深度学习。由于这些快速的变化,个人和企业可能会发现跟踪行业中的众多变化是令人困惑的。随着行业被更新的趋势和技术所淹没,企业可能会觉得有必要了解并采用这些趋势和技术来优化他们的数据处理和分析过程。
在这篇文章中,我旨在强调一些最值得信赖和最有声望的来源,让您了解数据科学领域的最新动态。
数据确实为我们所做的一切提供了动力。
——领英首席执行官杰夫·韦纳
最佳数据科学博客
互联网上充斥着许多关于这些趋势的研究和深入分析的文章、时事通讯、白皮书和报告。我们列出了一些顶级的在线资源和门户网站,它们经常更新,全面涵盖了数据科学的所有内容。
1.走向数据科学
图片来源— 走向数据科学
共享概念、想法和代码的媒体出版物。
- **加盟中—**2016 年 10 月
- 网站链接—https://towardsdatascience.com/
- 作者— 超过 5000 人(截至 2020 年 1 月)
- 推特关注者——46.4 万关注者( @TDataScience )
- **脸书追随者—**25868(@ tdata science)
- **Linkedin 粉丝—**202368(@ tdata science)
《走向数据科学》是一份媒体出版物,酝酿着面向受众的内容不仅仅是关于数据科学,而是众多相关技术,如机器学习、编程、可视化、和人工智能,横跨超过 5800 篇已发表文章。
“走向数据科学”正在帮助建立一个内容生态系统,通过让热情的读者和爱好者访问大量精心策划的帖子来激发新想法并教育他们,从而迎合他们。
该平台欢迎有识之士以教程、技巧、分析和实践经验的形式向读者分享他们对这些创新的看法。它是获得评论的最可靠来源之一,也是该技术多样化实现的真实例子之一。
2.数据科学中心
图片来源— 数据科学中心
面向大数据从业者的在线资源
- 成立— 2012 年
- 创办人— 文森特·格兰维尔
- 网站链接—https://www.datasciencecentral.com/
- **推特粉丝—**17.06 亿粉丝
- **脸书追随者—**32201
- Linkedin 上的关注者——163021 人
数据科学中心是数据科学内容的领先存储库之一,定期更新人工智能、机器学习、深度学习、分析、大数据等领域的最新趋势。
拥有超过 350 篇文章,它以明确的方式为各种各样的受众提供了一个内容丰富的平台,包括学生、极客、行业领先的专家和从业者。数据科学中心始终欢迎爱好者及其用户发表意见,并向他人展示来自数据科学世界的最新发现。
对于对数据科学和相关技术有着类似热情的读者,数据科学中心提供了一个论坛,在这里他们可以表达自己的想法和经验,并参与直观的讨论。
数据科学工具,使任务可以实现
towardsdatascience.com](/best-data-science-tools-for-data-scientists-75be64144a88)
3.数据科学 Reddit
图片来源— Reddit
- 网站链接—https://www.reddit.com/r/datascience/
- 创建于—2011 年 8 月 6 日
- **追随者—**247 名追随者
数据科学从业者和专业人士讨论和辩论数据科学职业问题的地方。
Reddit 是世界知名的新闻和讨论网站,拥有数百个不同的社区和数百万活跃用户。reddit 喜欢这样称呼它,一个这样的社区或 subreddit 是 r/DataScience ,有超过 247,000 名成员经常光顾,平均每时每刻都有超过400 名活跃成员。
每天有超过几十个帖子,成员们对各种最新趋势和技术进行深入讨论,分享实践经验,并在平台上发布他们的问题,社区帮助解决这些问题。
用户可以在 subreddit 上以文本和链接的形式自由发布他们的观察结果和数据科学世界的最新进展,让每个人都了解最新情况。
4.KDnuggets
图片来源— KDnuggets
- 创办—1993 年 2 月(作为新闻信)
- 创始人—Gregory Piatetsky-Shapiro(数据挖掘会议的联合创始人)
- 网站链接—https://www.kdnuggets.com/
- 推特关注者——17.47 万关注者
- 脸书追随者—29956 人
- Linkedin 粉丝—18169 人
“KD”代表“知识发现”。
KDnuggets 是一个著名的网站,旨在获取世界上一些快速发展的技术的信息,包括数据科学、人工智能、分析、机器学习、数据挖掘和大数据。
它每个月有超过 50 万的独立访客,在 Twitter、脸书、LinkedIn 和 RSS 订阅源上有超过 26 万的累积用户。KDnuggets 一直在报道计算机科学世界中所有有影响力的事件,并通过博客、新闻、网络研讨会和各种教程呈现这些事件**。**
KDnuggets 提供了一个广泛的现成数据集集合**,以及一个面向数据科学的软件库**,可以帮助您开始使用。为了迎合以职业为导向的读者,KDnuggets 有专门的课程和工作板块,提供最受欢迎的技能和相关工作岗位的课程。
新十年的关键数据科学趋势
towardsdatascience.com](/data-science-trends-for-2020-9b2ee27af499)
5.分析 Vidhya
图片来源— 分析 Vidhya
- 成立— 2014 年
- 由——库纳尔·贾因创立
- 网站链接—【https://www.analyticsvidhya.com/】T22
- 推特关注者——25.7 万关注者
- 脸书追随者—60817 人
- Linkedin 上的粉丝人数
Analytics Vidhya 通过其四个重要支柱提供了一个完整的数据科学生态系统,这些支柱让您了解行业的顶级趋势,通过在线课程巩固您的基础知识,允许您在黑客马拉松上与其他个人互动,并使您成为平台上各种工作的有竞争力的候选人。
凭借超过320 万的月访问量,它是洞察不断增长的数据科学、机器学习、深度学习和人工智能领域的良好平台之一。读者可以找到各种技术和趋势、认证在线课程、实践测试、教程、在线竞赛访问以及数据科学领域的最新工作机会。
6.数据科学|谷歌新闻
图片来源— 谷歌新闻
- 链接——【https://news.google.com/datascience】T2
谷歌的新闻平台涵盖了各种主题的最新趋势和信息,包括行业的一般新闻和特定趋势。作为互联网上几乎所有领先信息来源的保留节目,谷歌新闻提供了一些最著名的数据科学平台的同样广泛的最新创新。
借助谷歌对所有数据科学新闻的一站式解决方案,读者可以获得海量信息,涵盖主题的各个方面。所有这些高质量的信息仅仅是在谷歌新闻应用或网站上的简单搜索,简化了可访问性。
使用谷歌人工智能中心将想法变为现实
towardsdatascience.com](/top-google-ai-tools-for-everyone-60346ab7e08)
7.数据营
图像来源— 数据营
在线学习数据科学最聪明的方法
- 成立于 — 2013 年
- 创始人— 马丁·托伊维森、乔纳森·科内利森、迪特·德·梅斯梅尔
- 网站链接—https://www.datacamp.com/
- 推特关注者——51.4 万关注者
- 脸书追随者—956384 人
- Linkedin 上的粉丝人数
DataCamp 是一家行业领先的数据科学在线课程提供商,提供数据科学行业中一些广泛使用的工具的实践经验,如 Python、R、Scala、Power BI、Excel、tableau 等。除了提供超过 300 门课程,涵盖数据科学的每个关键过程,DataCamp 还提供了一个社区部分,其中充满了关于数据科学、人工智能、机器学习、深度学习等热门趋势的内容、教程和备忘单**。**
热心的读者还可以免费浏览参考资料部分,查看一些业内知名领袖和研究人员的白皮书和网络研讨会,为读者提供不可或缺的知识。
8.IBM 大数据和分析中心
图片来源— IBM 大数据&分析中心
- 网站链接—【https://www.ibmbigdatahub.com/
- **推特粉丝—**19.74 万粉丝
- 领英粉丝—172482 人
这家跨国巨头为数千家成功企业提供支持,是数据科学和人工智能行业众多创新中的关键人物。 IBM 相信与世界分享知识,并且为数据科学狂热者和感兴趣的读者创建了 IBM 大数据&分析中心,在这里可以以系统的方式轻松访问所有信息。
IBM 涵盖各种行业、技术和分析等方面,以易于理解的形式提供了众多行业特定问题及其解决方案的 360 度概述,以加深理解。
9. InsideBIGDATA
图像来源— InsideBIGDATA
你的机器学习资源
- 成立—2011 年 8 月 28 日
- 经营人— 里奇·布鲁克纳
- 网站链接—https://insidebigdata.com/
InsideBIGDATA 是最受欢迎的新闻平台之一,它提供有关 IT 世界最新战略和技术的定期更新和新闻。InsideBIGDATA 涵盖了大数据、数据科学、机器学习、深度学习和人工智能等广泛的主题,出色地提供了关于上述主题的有影响力的行业观点和重要提示。
这些信息以各种格式准确呈现,如报告、简讯、资源、白皮书以及来自数据科学和大数据领域的一些顶级影响者的采访。
10.脸书数据科学博客
图片来源— 脸书
获得洞察力,实现有意义的社交互动
- 链接—https://research.fb.com/category/data-science/
- 脸书页面追随者—493638
顶级社交媒体巨头脸书也是数据科学行业的重要参与者。超过 26 亿用户的庞大用户群迫使脸书投资于可靠和胜任的数据科学技术,以深入了解其用户。
由于类似这样的几个关键原因,脸书积极研究更好的数据管理技术和创新,并将他们的发现发布在脸书数据科学博客上。读者可以从脸书一些著名的数据科学专家那里了解最新的研究趋势以及它们如何影响他们的用户。
推进数据科学的前沿核心数据科学(CDS)是一个研究和开发团队,致力于改善…
research.fb.com](https://research.fb.com/teams/core-data-science/)
11.数据机器人
图片来源— 数据机器人
- 成立于 — 2012 年
- 由创立——杰里米·阿钦,汤姆·德·戈多伊
- 网站链接—https://www.datarobot.com/
- **推特粉丝—**1640 万粉丝
- 脸书追随者—5489 人
- Linkedin 的关注者
DataRobot 是一个平台,让企业在运营中采用人工智能自动化,帮助他们在激烈的竞争中取得成功。除了将人工智能纳入组织战略之外,DataRobot 还以非常结构化的方式提供了大量来自专家的经过彻底研究的资源,涉及机器学习、人工智能和数据科学等多个主题。
读者和爱好者可以通过几种流行的格式获得数据科学和人工智能世界的最新更新,如博客、案例研究、白皮书、播客、视频、分析师报告等。
12.数据大学
图像来源— 数据多样性
面向数据专业人员的教育资源
- 成立于 — 2012 年
- 由创立——托尼·肖
- 网站链接—【https://www.dataversity.net/
- **推特粉丝—**22.5 万粉丝
- 脸书追随者—6495 人
- Linkedin 的追随者—5884 人
DATAVERSITY 致力于向其受众(主要包括日常处理数据的企业、IT 专业人员、开发人员和专家)提供对数据科学行业几项独特创新的丰富理解。
通过从各种来源(包括案例研究、会议、在线活动、网络研讨会、大量研究报告和专家意见)收集的重要见解,我们的目标是向不同的受众提供单一的信息来源。读者可以访问现场网络研讨会、白皮书、在线培训材料、博客和文章,在那里他们可以分解复杂的创新,为读者描绘一幅更清晰的画面。
结论
随着数据科学家需求的快速增长,自学行业最新创新的需求变得势在必行。随着互联网成为几乎所有可以想象的信息的巨大集合,找到正确的知识来源可能会变得具有挑战性。在这篇文章中,我们旨在通过 12 个平台简化您的搜索,这些平台可以方便地告诉您为什么数据科学存在,以及您如何跟上技术的各种变化。
注: 为了消除各种各样的问题,我想提醒你一个事实,这篇文章仅代表我想分享的个人观点,你有权不同意它。
更多有趣的阅读—
我希望这篇文章对你有用!以下是一些有趣的读物,希望你也喜欢
从几种编程语言中,人工智能工程师和科学家可以挑选出适合他们需要的语言
towardsdatascience.com](/top-programming-languages-for-ai-engineers-in-2020-33a9f16a80b0) [## 2020 年你必须使用的最好的 Python IDEs 和代码编辑器
具有显著特性的顶级 Python IDEs 和代码编辑器
towardsdatascience.com](/best-python-ides-and-code-editors-you-must-use-in-2020-2303a53db24) [## 2020 年必读的机器学习书籍
看看吧,你为什么要读它们?
towardsdatascience.com](/machine-learning-books-you-must-read-in-2020-d6e0620b34d7) [## 机器学习和深度学习的最佳 Python 库
现代机器学习模型和项目的 Python 库
towardsdatascience.com](/best-python-libraries-for-machine-learning-and-deep-learning-b0bd40c7e8c)
关于作者
克莱尔 D 。是Digitalogy**—**的内容制作者和营销人员,这是一个技术采购和定制匹配市场,根据全球各地的特定需求,将人们与预先筛选的&顶尖开发人员和设计师联系起来。在LinkedinTwitterinsta gram上连接 Digitalogy 。
最佳数据科学书籍
帮助您学习数据科学的前三本书
简介
很多人问我,我为想要开始数据科学之旅的人推荐什么资源。本节列出了我推荐你作为数据科学家一生中至少应该阅读一次的书籍。
学做数据科学家需要看这些书吗?答案是:没有。网上有很多和这些书一样好的教程和免费资料。然而,如果你买得起,并能把它们作为补充材料阅读,它们会成为很好的学习资源。与在线教程不同,这些书有一个结构,并以一种有组织和结构化的方式教授概念。这意味着你可以把时间花在学习上,而不是浪费在互联网上寻找好的教程。
我在这里推荐的书籍涵盖了作为一名数据科学家你将需要掌握的主要话题:编程(python)、数据分析和机器学习(包括深度学习)。我知道有很多关于每个主题的书,但这些是我在学习过程中用过的书,我真的可以推荐它们。
Python 编程
亚马逊(附属链接)
作为一名数据科学家,你首先应该是一名优秀的程序员,或者至少努力达到至少一门语言的编程水平。我推荐学习 python,因为它在数据科学中的常见用法和相对简单的学习曲线。
这本书就像一本 python 圣经。它大约有 1600 页,涵盖了所有基本和更高级的 python 概念。
对于开始学习 python 的人来说,这是一本好书,因为它对语言和编程概念有深入的解释,并且内容以简单易懂的方式呈现。
对于那些已经使用 python 有一段时间,但希望更好地掌握它,提高对语言和常见概念(尤其是面向对象编程)的理解的人来说,这也将是一个非常好的修订。
你可以从这里(附属链接)得到这本书。
数据分析
亚马逊(附属链接)
这本书几乎涵盖了与 pandas 有关的数据分析、数据清理和数据预处理的所有内容。而数据科学大部分时间都在做什么?
不幸或幸运的是,我们花了大部分时间来准备数据,以适应机器学习算法。这本书涵盖了所有内容,对于数据分析师或初级数据科学家来说,python 足够让他们熟悉数据分析的编程和库。
另外,这本书是由《熊猫套餐》的作者韦斯·麦金尼写的。如果不是最受欢迎的 python 数据分析库的作者,谁是学习数据分析的最佳人选呢?
你可以从这里(附属链接)得到这本书。
机器学习
亚马逊(附属链接)。
如果你只买一本关于机器学习的书,那将是我的选择。
这可能是一本面向初学者数据科学家的书,他们希望对机器学习算法以及如何使用 scikit-learn 在现实生活中实现这些算法有一个概述。
对于已经熟悉机器学习概念并想要一本书来快速参考和复习的人来说,这也是一个很好的修订。
此外,它还有一个精彩的第二部分,重点是 Keras 和 TensorFlow 的 od 深度学习。
你可以从这里(附属链接)得到这本书。
数据科学中的其他主题
成为一名数据科学家不仅仅涉及 python 编程、数据分析和机器学习。这个职业还有其他你应该掌握的话题。我首先想到的领域是数学和统计学。
我不推荐任何关于这些主题的书籍,因为我一直依赖于我的高中和大学知识,并通过在线教程和资源提供这些知识。如果我读到任何关于这些话题的好书,我会更新这个列表。
最初发表于 aboutdatablog.com: 最佳数据科学书籍,2020 年 8 月 19 日。
PS:我正在 Medium 和aboutdatablog.com上撰写以简单易懂的方式解释基本数据科学概念的文章。你可以订阅我的 邮件列表 在我每次写新文章的时候得到通知。如果你还不是中等会员,你可以在这里加入。
下面还有一些你可能喜欢的帖子
* [## 作为一名有抱负的数据科学家,你应该关注的中型作家
我最喜欢的 10 个数据科学博主,让你的学习之旅更轻松。
towardsdatascience.com](/medium-writers-you-should-follow-as-an-aspiring-data-scientist-13d5a7e6c5dc) [## 熊猫概况和探索性数据分析的第一行代码!
了解如何为自动 EDA 安装和使用 pandas profiling
towardsdatascience.com](/pandas-profiling-and-exploratory-data-analysis-with-line-one-of-code-423111991e58) [## Jupyter 笔记本自动完成
数据科学家的最佳生产力工具,如果您还没有使用它,您应该使用它…
towardsdatascience.com](/jupyter-notebook-autocompletion-f291008c66c) [## 9 大 Jupyter 笔记本扩展
改进笔记本电脑功能,提高您的工作效率
towardsdatascience.com](/top-9-jupyter-notebook-extensions-7a5d30269bc8)*
你从未听说过的最好的数据科学认证
数据策略最有价值培训实用指南。
** 更新 1/6/21 : 如果你对 CDMP 基础考试的全面学习计划感兴趣,可以看看我整理的这个 邮件系列 来帮你。在 90 天结束时,你会完全准备好 毫不费力 王牌 CDMP 。
** 更新 11/23/20 :
这种简单的开卷测试为数据科学家提供了数据策略方面的专业知识和重要的领导技能。
towardsdatascience.com](/cdmp-exam-d65e1255016b)
**** 更新 10/13/20 :我现在通过了基础考试,被认定为 CDMP 合伙人。有问题吗?在评论中留言或者加入 学习小组 。
**** 更新 8/15/20 :最近我注意到认证考试是 开卷 ,这是非常令人兴奋的,因为这意味着在真实世界设置中记忆的时间更少,而处理数据的时间更多。另外,我在脸书上开了一个 学习小组——加入帮助你备考。
八年前,数据科学被宣布为“21 世纪最性感的工作”然而,埋头苦读数小时的数据仍然让人感觉绝对T2 不性感。如果说有什么不同的话,那就是数据科学职业生涯的传奇般的崛起说明了大多数组织在管理数据方面做得有多差。
*进入认证数据管理专业(CDMP**)*来自数据管理协会国际( DAMA )。CDMP 是你从未听说过的最好的数据战略认证。(老实说,当你考虑到你可能正在从事一份十年前并不存在的工作时,这一认证尚未普及就不足为奇了。)
数据战略是一个重要的学科,它涵盖了数据生命周期的端到端管理、数据治理的相关方面以及数据伦理的关键考虑。
这篇文章概述了获得 CDMP 的方法和理由,这为有效的数据战略思想领导奠定了基础。它还包括一项调查,您可以就数据科学的数据管理的最重要方面提出您的想法,并查看社区的共识。
本指南中的*😗**
免责声明 :本帖非 DAMA International 赞助——所反映的观点仅是我个人观点。我在亚马逊上添加了一个链接到DMBOK的链接,这是考试所需的参考指南,因为这是一个开卷考试。通过此链接购买这本书有助于支持我在数据科学和数据策略方面的写作——提前致谢。
关于 CDMP 考试
CDMP 培训提供了与数据策略相关的 14 个领域的专业知识(我将在后面的章节中详细介绍)。考试是开卷*,但是考试上的 100 道题必须在 90 分钟内完成——没有太多时间来查找东西。因此,非常熟悉参考资料非常重要。***
当你安排考试(300 美元)时,DAMA 提供了 40 个练习题,这些练习题很好地反映了实际考试的难度。作为进一步的资源,查看这篇关于学习认证过程的文章。
可以通过网络摄像头在线参加考试(监考费 11 美元)。考试形式是多项选择——从五个选项中选择一个正确的选项。你可以标记问题,然后再回来。在考试结束时,你会立即得到分数反馈。
超过 60%视为通过。如果你有兴趣获得 CDMP 助理认证并继续前进,这很好。如果你对 CDMP 认证的高级层次感兴趣,你必须通过 70% (CDMP 从业者)或 80% (CDMP 硕士)。要获得最高级别的认证,CDMP 研究员,你需要获得硕士认证,并展示行业经验和对该领域的贡献。这些高级认证中的每一项都需要通过两次专业考试*。***
这让我想到了我的最后一点,那就是为什么——纯粹从职业发展的角度来看——你应该选择通过 CDMP 的学习和考试过程:来自 DAMA 的认证与领导、管理和数据架构方面的高端职位相关联。(把 CDMP 想象成一个半秘密的数据忍者团体。)与数据管理相关的企业角色和联邦合同越来越多地要求获得 CDMP 认证。阅读更多。
via CDMP
优点:
- 提供关于数据策略相关主题的全面知识库
- 开卷考试意味着花在死记硬背上的时间更少
- 针对不同级别的数据管理专业人员的四个层次
- 通过最低级别认证的 60%分数要求
- 与精英角色相关联
- 向 DAMA 国际提供 3 年会员资格
- 311 美元的考试费比微软和开放集团的其他数据相关认证便宜
缺点:
- DAMA 没有一家主要的技术公司(如亚马逊、谷歌、微软)的支持,这些公司正在积极推动营销工作,推动 CDMP 认证的品牌认知度——这意味着 CDMP 可能主要在已经熟悉数据管理的个人中被认为是有价值的
- 与 AWS 云从业者证书(100 美元)或 GPC 证书(200 美元)相比,311 美元的考试费相对昂贵
替代品:
- 微软认证解决方案助理 ( MCSA ) —专注于各种微软产品的模块化认证(330 美元以上)
- 微软认证解决方案专家 ( MCSE ) —建立在 MCSA 的基础上,集成了诸如核心基础设施、数据管理&分析和生产力(495 美元以上)等主题的认证
- 开放组架构框架(TOGAF)—软件开发和企业架构方法论高级框架的各种级别认证(550 美元以上)
- 规模敏捷框架(Scaled Agile Framework)软件工程团队基于角色的认证(995 美元)
如何准备去 CDMP
鉴于 CDMP 是一个开卷考试,为了考试而学习,所需要的就是 DAMA Body 的知识书( DMBOK $55)。它大约有 600 页,但是如果你把你的学习时间主要集中在第一章(数据管理)、图表&模式、角色&职责和定义上,那么这应该能让你达到 80%的及格分数。
就如何使用 DMBOK 而言,一名考生建议在 8-10 周内每周末 4-6 小时。另一种方法是每天早晚阅读几页。无论你如何处理,确保你将间隔重复融入到你的学习方法中。
除了作为考试的学习指南, DMBOK 当然也是有用的参考书,如果你的同事需要学习数据策略或者他们在网上研讨会期间打瞌睡,你可以把它放在他们的桌子上。
CDMP 在测试什么
CDMP 涵盖了 14 个主题——我按照它们在考试中出现的频率列出了它们,并为每个主题提供了一个简短的定义。
数据治理 ( 11%) —确保数据资产正式管理的实践和流程。阅读更多。
数据质量 ( 11%) —根据数据的准确性、完整性、一致性、完整性、合理性、及时性、唯一性/重复数据删除、有效性和可访问性,确保数据适合消费。阅读更多。
数据建模和设计(11%)——将商业需求转化为技术规范。阅读更多。
元数据管理 (11%) —收集的数据信息。阅读更多。
主数据和参考数据管理 (10%) —参考数据是用于对数据库中的其他数据进行分类的信息,或者仅用于将数据库中的数据与组织边界之外的信息相关联的信息。主参考数据是指在组织内多个系统之间共享的信息。阅读更多。
数据仓库和商业智能(10%)—数据仓库以一种优化的方式存储来自运营系统(以及潜在的其他数据资源)的信息,以支持决策过程。商业智能是指利用技术收集和分析数据,然后将其转化为有用的信息。阅读更多。
文档和内容管理 (6%) —用于组织和存储组织文档的技术、方法和工具。阅读更多。
数据集成和互操作性 ( 6%) —使用技术和业务流程来合并来自不同来源的数据,目标是方便有效地提供对有价值信息的访问。阅读更多。
数据架构 (6%) —根据组织的数据策略,描述现有状态、定义数据需求、指导数据集成和控制数据资产的规范。阅读更多。
数据安全 ( 6%) —实施政策和程序以确保人和事物对数据和信息资产采取正确的行动,即使存在恶意输入。阅读更多。
数据存储和操作 ( 6%) —保存、删除、备份、组织和保护组织信息的硬件或软件的特性。阅读更多。
数据管理流程 ( 2%) —数据的端到端管理,包括收集、控制、保护、交付和增强。阅读更多。
大数据 ( 2%) —超大型数据集,通常由各种结构化、非结构化和半结构化数据类型组成。阅读更多。
数据道德 ( 2%) —包含数据处理、算法和其他实践的行为准则,以确保数据在道德背景下得到适当使用。阅读更多。
调查
出于好奇,我很乐意听听你对数据管理最重要方面的看法*。在您在下面的投票中做出选择后,您将会看到社区的想法。***
你的选择是出于什么考虑?你认为为 CDMP 学习是学习这些话题的有效方法吗?在评论里说吧。
为什么数据科学家应该获得 CDMP 认证
仍然不相信为什么数据策略很重要?让我们从数据科学家的角度来看一下,他们的目标是增加知识和收入潜力。
Franki Chamaki 在 Unsplash 上的照片。该标牌是一家利用人工智能服务于零售业的公司的商标。
据说数据科学家是统计学、计算机科学和领域知识的结合点。为什么你想在你的盘子里多加一样东西呢?
就成功而言,擅长两种互补的技能比擅长一种技能要好
《呆伯特漫画》的作者和创作者斯科特·亚当斯提出了这样一个观点:“你获得的每一项技能都会让你成功的几率翻倍。”他承认这可能有点过于简单化——“显然有些技能比其他技能更有价值,你获得的第 12 项技能可能不如前 11 项技能中的每一项有价值”——但关键是有时拓宽* 比深入更好。***
抛开收益的相对大小(因为我严重怀疑它是每项技能的 2 倍…谢谢你,边际收益递减定律),相对于辛苦学习一项特定技能,拓宽你的技能组合无疑会带来更大的收益。简而言之,这就是我认为数据科学家学习数据策略非常重要的原因。
一般来说,拥有多样化的技能可以让你:
- 利用跨学科的知识更有效地解决问题
- 与其他专业的队友更好地交流
- 在接触新项目方面迈出第一步
了解数据策略可以让你从一个数据消费者转变为组织中的数据倡导者*。忍受所有绕口令缩写( DMBOK )是值得的——真的吗?他们就不能把它叫做数据管理书吗? ) 为了加深你对端到端知识生成过程的欣赏。***
如果你喜欢阅读这篇文章,请在 Medium 、 LinkedIn 和 Twitter 上关注我,了解更多提升你的数据科学技能的想法。加入 CDMP 考试的学习小组。购买 DMBOK 。
使你的技能多样化的其他文章
通过了解这种广泛使用的编程语言的基础知识,快速访问高质量的数据。
towardsdatascience.com](/java-for-data-science-f64631fdda12) [## 数据仓库综合指南
了解数据仓库作为分析就绪数据集的主存储库的角色。
towardsdatascience.com](/data-warehouse-68ec63eecf78) [## 如何不费吹灰之力通过 AWS 云从业者认证
预测:多云,第一次尝试有 100%的机会通过。
medium.com](https://medium.com/@nicolejaneway/how-to-ace-the-aws-cloud-practitioner-certification-with-minimal-effort-39f10f43146)***
最佳数据科学资源以及如何使用它们来获得数据科学能力
回顾最受欢迎的资源和推荐选项,将它们结合起来实现您的目标
本文中包含的一些资源的标题。我做的图像。
我收到的最常见的请求之一是推荐在线课程。这不是一件容易的事。在线课程竞争非常激烈,有许多课程提供不同的知识,几乎都声称自己是最好的课程。这就是为什么本周我坐下来回顾了学习数据科学的最受欢迎的课程和书籍的内容。
在这篇文章中,我将分享我对流行的数据科学课程和书籍的看法。在文章的最后,你可以找到我推荐的利用这些资源学习数据科学的方法。
我知道…
…你只是想看一下推荐课程的列表,但请稍等片刻。我要说的对你的课程选择很重要。在寻找数据科学课程时,您应该记住以下几点:
- 每门课程的创立者在准备课程时都有不同的想法,他们根据这些想法选择教学主题。不要完全相信一个教师对学科有全面和公正的看法。
- 对“完整训练营”这样的说法要有所保留。事实上,一门课程涵盖了你所听过的关于数据科学的一切,但这并不意味着它完全涵盖了这些内容。
- 最后,你可以选择适合你的课程。教学风格、课程水平和先决条件都很重要。不要只选择最流行的。
- 如果你很难找到适合你具体情况的课程,我的建议是,当你寻找课程时,去找一门课程的最低分,看看人们抱怨的东西是否适用于你。例如,许多人可能会给这门课打 5 颗星,但如果你学的是数学,而与你情况相近的人试图选修这门课,却因为与数学有关的原因而不喜欢它,那么这就证明这门课可能不适合你。
- 你不必从单一的课程中获得所有的知识。你可以找到几门相辅相成的课程。有时从几个来源获取知识甚至更好。有点重叠并不是一件坏事。
- 最重要的是,一门课程不能给你所有你需要知道的东西。把它当成一个起点,聪明地选择但不要想太多。你需要学习的只是基础知识。其余的来自实践。
既然你已经听了我的建议,让我们跳到复习部分。首先,知道我如何评价这些课程对你来说很重要。
我是如何评估这些资源的?
如果你学过我的数据科学入门课程,你会知道我把做数据科学所需的知识分为三层。理论、实践和技术。我将根据每门课程如何达到要求的理论知识来评估每门课程。
请记住,我是从获得数据科学所需的基础知识的角度来评判课程的。我所关心的是,这门课程能否让你从“对数据科学知之甚少”发展到可以开始实施自己的项目。因为一旦你知道的足够多,可以开始实施,你就会通过试错来弥补你知识中的所有空白。在数据科学中,有很多东西要归功于经验。不是所有的东西都能通过学习学会。
**免责声明:**我没有参加这些课程,也没有做他们的测验/练习。我的知识将是有限的。我在这里尝试做的是复习课程大纲和预习课程视频,并尝试得出结论。我还浏览课程评论,看看以前的学生对此有何反应。
我做了这些评论,因为我想提供我作为数据科学家的现有知识,以帮助您判断哪门课程更适合您。我和一个非数据科学家做这件事的不同之处在于,我对所需的技能有更好的看法,也知道对一个数据科学家来说什么是重要的。说到底,我如何评价这些课程是我的个人意见,不代表任何其他党派或组织。这篇文章或我在里面说的任何事情都是而不是赞助或推广的。
我已经说得够谨慎了。让我们言归正传。
在线课程
IBM 数据科学专业认证
这个认证是一个很好的开始。适合完全初学者。它将把你从一个“我不知道什么是数据科学”的点带到一个非常有知识的点。它涵盖了广泛的主题,但并不完整,也没有包括一些更高级的主题。这是以简单的方式学习数据科学基础知识的好方法。我不建议你把这门课作为唯一的课程。用一门更深入的课程来补充它会更好地为你服务。总的来说,这是一个很好的第一课。
约翰霍普金斯大学数据科学专业
这门课感觉很学术,但也有很实用的一面。它包括一些基础知识,但我发现它在提供数据科学的全貌方面有所欠缺。数据准备和处理数据相关问题等重要知识缺失,但有关于统计和研究的章节。这不像是一个很好的工业翻译。它深入到一些高级的主题,比如降维,但是我不确定是否预先提供了足够的基础。我不会向初学者推荐这门课程。此外,我不会仅仅因为它不完整就选择它作为我自己的研究对象。
密歇根大学 Python 专业的应用数据科学
这个课程有些东西好,有些东西不好。这对于可视化和对文本挖掘感兴趣的人来说是好的,但对于获得机器学习或一般数据科学实践的良好画面来说不是好的。拥有广泛的流行机器学习算法,但不知何故缺少无监督学习和缺乏数据准备。如果你有时间,甚至只是学习文本挖掘基础,这可能是一个很好的副业。
吴恩达的机器学习
这个课程是专门针对机器学习的,而不是一般的数据科学。它教授机器学习的数学和理论,同时也触及高级主题。因此,它不是初学者的课程。这门课程最大的缺点是使用了相当过时的工具,比如 Matlab。此外,它忽略了一些非常重要的算法,如决策树或随机森林。因此,不觉得它是一个完整的包,或者它可能在 8 年前是完整的,但现在有缺口。我建议,只有在对数据科学有了基本了解之后,才能学习这门课程。
【2020 年数据科学课程:完整的数据科学训练营
这是一门雄心勃勃的课程。它拥有从职业建议到 Python 到机器学习算法到统计学的一切。以这门课的题目数量,可以做五门课。虽然它涵盖了许多主题,但它似乎错过了一些基础概念,如数据准备和机器学习基础。而且,结构似乎有点乱。正如我之前提到的,对所教内容雄心勃勃的课程往往是肤浅的。我本人没有上过这门课,但我不认为深度学习和职业建议应该放在同一门课中。恕我直言,当所有其他课程都可用时,我不会选这门课。
用于数据科学和机器学习的 Python 训练营
我在网上见过的最全的课程之一。它很好地介绍了与数据科学相关的技术,并教授了一些使用 Python 进行数据准备的实践,同时还涉及了数据可视化。引入了许多最流行的算法,但我不确定有多好。这些课程似乎没有深入到这些算法是如何工作的,而是它们是如何在 Python 中实现的。大部分基本的数据科学基础知识都包括在内。我认为,就我所见,这是一门非常实用的课程。它可能不太适合学习数据科学的理论方面,但在机器学习方面,它有利于学习如何编写 python 代码。
数据科学 A-Z:现实生活中的数据科学练习包括
这门课程似乎是为了培养一种非常特殊的数据科学家。这不是一门理论课程,相反,它试图通过教授数据科学的操作方法以及非常具体的工具和软件来变得非常实用。我认为这门课所教的技能不能很好地概括。因此,我不推荐这个课程。
机器学习 A-Z:数据科学中的实践 Python&R
这个课程用 Python 和 R 两种语言讲授所有内容,这使得它太长了,但是,当然,你可以跳过你不感兴趣的语言的实现视频。它有一个很好的机器学习算法的选择,但机器学习似乎是这门课程唯一关注的事情。它不包括可视化、python 基础、数据科学技术或机器学习理论。仅简单提及与训练机器学习算法相关的数据准备。这门课程可能是学习更多关于机器学习算法以及如何实现它们的好选择,而不是学习一般数据科学的来源。
完整的机器学习和数据科学:零到精通
这不是最先出现的课程之一,但我在这里包括了这门课程,因为我参加了同一批人的 web 开发课程,并且很喜欢它。这似乎是一门非常实用和动手的课程。它并没有给人这样的感觉,即它将教授 ML 算法或一般数据科学背后的许多理论。相反,它会教你 Python,建立一个数据科学环境,数据科学的基础知识和 ML 算法的实现。当你想亲自动手时,这是一门很好的课程。
哈佛大学数据科学专业证书
这个课程是我能找到的最好的课程之一。理论上是非常完备的。它适当地回顾了机器学习的基础,介绍了最重要的算法和技术。我发现数据准备(课程中的数据扯皮)部分有点欠缺。这门课唯一让我不喜欢的是主要技术是 r,总而言之,这门课一开始听起来很扎实。
加州大学圣地亚哥分校的数据科学微硕士项目
这是一门高级课程,可以用来进一步学习。它有一个很棒的数学和统计部分。如果你想为你的机器学习知识打下坚实的理论基础,在对数据科学的主要概念有信心后,我会选择这门课程。
IBM 的数据科学基础
这就像数据科学课程一样简单。如果你对进入数据科学仍持观望态度,并想体验一下它是什么,我会去上这门课。这只是一个非常简单的介绍,不需要太多时间。你可以将本课程与使用 Python 的数据分析和使用 Python 的机器学习结合起来,更深入地了解数据科学。
书
使用 Scikit-Learn、Keras 和 TensorFlow 进行机器实践学习,第二版
这本书是最好的书之一,甚至可能是最好的。它基本上包含了您需要了解的一切,让您对自己的数据科学知识充满信心。所有的理论、数学甚至统计数据。如果你问我,这是一个独立的冠军。
虽然我认为这本书对任何人都会很管用,但普遍的看法是,这是一本中级水平的书,而不是一本初学者的书。我在一定程度上同意。我不会向初学者推荐整本书,而只推荐第一部分。这是因为第二部分进入深度学习,这对初学者来说是不必要的。无论如何,第一部分应该足以让你对数据科学有一个非常扎实的理解。
你可以很容易地用我上面提到的简单课程来补充它,以便更轻松地开始数据科学,然后全身心投入这本书。
数据科学从零开始,第二版
这本书的目标是让读者在不使用任何库的情况下手工实现算法。通过这样做,这本书很好地教授了数据科学和机器学习的基础知识。即使你不想在动手编码开始之前从头开始动手实现机器学习算法,学习数据科学背后的理论也是非常有用的。还有,作者爆笑。
用 Python 进行机器学习简介
这是另一个伟大的初学者水平的书。它主要关注机器学习及其背后的理论。它不会花太多时间处理数据。然而,这是一本研究机器学习算法的理论和实用性的好书。
学习平台
我知道有 Datacamp,Dataquest 等线上平台。我这周没有时间复习它们。我将很快浏览它们,并通过更新这篇文章来分享我的观点。
如果你愿意的话,可以是总结或最终裁决
我会建议几条途径:
选项 1
如果你想学习数据科学和机器学习背后的理论,并获得实践经验
IBM 数据科学专业认证打造基础
吴恩达的机器学习课程获取机器学习的理论知识(注意过时的应用,对实现持保留态度)
Python for Data Science and Machine Learning boot camp或 Machine Learning A-Z:动手实践 Python & R In Data Science 获取实践知识
选项 2
如果想专注于理论知识
IBM 数据科学专业认证打造基础
加州大学圣地亚哥分校的数据科学微硕士项目深入探讨高级主题
选项 3
:如果你只想学一门课
哈佛数据科学专业证书学习全面的数据科学技能
选项 4
:如果你是一个非常注重实践的人,不想学习太多理论
完整的机器学习和数据科学:零到精通
选项 5(个人最爱)
课程和你的学习旅程是非常个人化的。这就是为什么我一直非常小心,不去对你应该做什么或不应该做什么提出任何宏大的主张。当然,我有一个最喜欢的。我并不是说这对每个人来说都是最好的方式。我只是说,如果我必须给我的兄弟或姐妹关于如何学习数据科学的建议,我会告诉他/她遵循这个选项。
IBM 数据科学专业认证打造基础
使用 Scikit-Learn、Keras 和 TensorFlow 进行机器学习实践以获得对数据科学和机器学习概念的全面而正确的理解
不管多少,都要坚持做兼职项目
一锤定音
实事求是地看待这些资源,尽你所能从中获取,留下那些不适合你的。你将有时间重复、重温和重新学习一些(如果不是大部分)概念。不要把一门课程的结束或者一个证书的获得看作是你学习旅程的结束,到那时你应该什么都知道了。你的学习不会在参加这些课程或获得一些证书后就结束。相反,这是你学习新篇章的开始。在这一点上,你应该开始把你的技能用在项目上。通过这种方式,你可以实践你所学的东西,发现你知识中的差距,并通过解决这些差距来进一步提高自己。
我希望这篇文章能帮助您确定迈向数据科学的第一步,这样您就可以平稳地过渡到更具实践性的阶段。
👉对数据科学领域以及如何开始学习感到困惑? 免费参加数据科学入门迷你课程 !
数据科学家的最佳数据科学工具
数据科学工具,使任务可以实现
数据分析做出强有力的决策(来源
AI 已经接管了我们很多平凡的任务,并在这个过程中让我们的生活变得更加轻松。这归功于研究人员、数据科学家和开发人员在收集、研究和重塑数据方面投入的大量研究和奉献。不仅仅是 IT 部门,所有行业都从这些进步中受益。如果没有工作工具的发展和改进,这一切都不可能实现。
2020 年要学习的顶级数据科学工具
当我说“数据科学”时,我指的是将数据转化为现实世界行动的工具集合。这些包括机器学习、数据库技术、统计学、编程和特定领域技术。
随着现有工具的改进和更新工具进入数据科学领域,许多任务变得可以实现,而这些任务在早期要么过于复杂,要么难以管理。这些工具背后的核心思想是将数据分析、机器学习、统计学和相关概念联合起来,充分利用数据。这些工具对于任何希望深入数据科学世界的人来说都至关重要,选择正确的工具可以让世界变得不同。
信息是 21 世纪的石油,分析是内燃机。
—彼得·桑德加德
● Apache Hadoop
面向可靠、分布式、可扩展计算的开源软件。
Hadoop——面向可靠、分布式、可扩展计算的开源软件(来源
Apache Hadoop 是由Apache Software Foundation根据 Apache License 2.0 授权的开源软件。通过使用跨节点集群的并行处理,它有助于解决复杂的计算问题和数据密集型任务。Hadoop 通过将大文件分割成块,并通过指令将其发送到节点来实现这一点。帮助 Hadoop 实现更高效率和更流畅处理的组件包括:
● Hadoop Common 为子系统提供标准库和函数
● Hadoop 分布式文件系统提供文件系统和机制,用于拆分和分发数据块
● Hadoop YARN 调度作业并管理集群
● Hadoop MapReduce 用于处理并行处理
●将每个项目的磁盘驱动性能提高 10 倍
●与外部应用和软件解决方案无缝集成
● SaS
将数据转化为洞察力
****统计分析系统的简称, SAS 是由 SAS 研究所开发的统计工具。这是最古老的数据分析工具之一。最新稳定版本 v9.4m6 于 2018 年 11 月发布。SAS 提供的主要功能有:
●通过大量可用教程轻松学习
●一套包装完好的工具
●简单而强大的图形用户界面
●文本内容的粒度分析
●无缝的专业技术支持
●视觉上吸引人的报告
●识别拼写错误和语法错误,以便进行更准确的分析
目标是将数据转化为信息,将信息转化为洞察力。
——卡莉·菲奥莉娜
SAS 允许你从几个领域挖掘、改变、管理和检索数据。配合 SQL ,SAS 成为数据访问和分析的极其高效的工具。** SAS 已经发展成为一套服务于多种用途的工具,其中包括:**
●数据挖掘
●统计分析
●商业智能应用
●临床试验分析
●计量经济学和时间序列分析
●画面
功能强大且发展最快的数据可视化工具
Tableau 是一款出色的数据可视化工具**,最近被全球领先的企业 CRM 之一 Salesforce 收购。Tableau 专注于在短时间内提供清晰的数据表示,可以帮助更快地做出决策。它通过利用在线分析处理立方体、云数据库、电子表格和关系数据库来做到这一点。**
Tableau 的便利性让您可以专注于统计数据,而不必担心如何设置它。开始使用就像将数据集拖放到应用程序上一样简单,而设置过滤器和自定义数据集则轻而易举。
- 全面的端到端分析
- 高级数据计算
- 轻松发现内容
- 完全受保护的系统,将安全风险降至最低
- 反应灵敏的用户界面,适合所有类型的设备和屏幕尺寸
要知道的一件有趣的事情—
●张量流
说到 AI,DL 和 ML, TensorFlow 这个名字你总会听到。 由 Google 提供,TensorFlow 是一个无所不能的库,它可以构建和训练模型,部署在计算机、智能手机和服务器等不同的平台上,以有限的资源实现最大的潜力。
使用 TensorFlow,您可以创建统计模型**、数据可视化,并访问 ML 和 DL 的一些同类最佳且广泛使用的功能。TensorFlow 对 Python 的偏爱使其成为一种强大的编程语言,通过存储、过滤和操作数字和数据来进行分布式数值计算。**
● 数据机器人
data robot成立于 2012 年,现在被称为满足你所有人工智能需求的企业级解决方案。它旨在自动化构建、部署和维护人工智能的端到端过程。DataRobot 只需简单点击几下就能让你上手,而且不需要你是专业人士就能完成很多工作。DataRobot 为您的业务需求提供以下功能:
●自动化 ML
●自动化时间序列
● MLOps
● Paxata 帕克萨塔
这些可以与其他部署选项(如云或内部部署)结合使用或单独使用。对于数据科学家来说,这使他们能够更多地关注手头的问题,而不是忙于设置东西。
有趣的是-
与 AWS 合作,有意者可免费使用 DataRobot 公司数据科学家还预测…
www.datarobot.com](https://www.datarobot.com/news/press/datarobot-opens-up-its-platform-for-covid-19-response-efforts/)
● BigML
立即开始做出数据驱动的决策。
BigML 的成立只有一个目标,那就是让每个人更容易建立和分享数据集和模型,最终让机器学习变得更容易。旨在提供强大的 ML 算法,仅用一个框架来减少依赖性。BigML 的专业知识包括以下领域:
●分类
●回归
●时间序列预测
●聚类分析
●异常检测
●主题建模
BigML 包括一个易于使用的 GUI,允许交互式可视化,使数据科学家轻松做出决策。对 REST APIs 的支持可以让您立即启动并运行。通过 JSON PML 和 PMML 导出模型的能力有助于从一个平台到另一个平台的无缝过渡。还支持内部和外部部署。
● Knime
F ree 和开源数据分析、报告和集成平台
KNIME 是一个多用途工具,它可以进行数据报告和分析,同时可以轻松地将数据挖掘和机器学习等元素集成到您的数据中。KNIME 的直观 GUI 允许用最少的编程知识进行轻松提取、转换和数据加载。KNIME 支持创建可视化数据管道来创建模型和交互式视图,可以处理大量数据。
knime——免费和开源的数据分析、报告和集成平台(来源)
KNIME 的集成能力允许用下面列出的数据库管理语言扩展其核心功能,例如:
● SQLite
● SQL 服务器
● MySQL
●甲骨文
● PostgreSQL
●还有更多
●阿帕奇火花
Apache Spark 是用于大规模数据处理的统一分析引擎。
Apache SparkbyApache Software Foundation是一款分析和处理大规模数据的工具。它允许您通过合并数据并行性和容错性对数据集群进行编程,以便对它们进行集中处理。对于数据集群,Spark 需要一个集群管理器和一个分布式存储系统。Spark 还继承了 Hadoop 的一些特性,比如 YARN、MapR 和 HDFS。
Spark 还提供数据清理、转换、模型构建和评估。Spark 的内存工作能力使其处理数据和写入磁盘的速度极快。支持与其他编程语言的集成、转换以及它的开源特性使它成为数据科学家的一个很好的选择。
● RapidMiner
RapidMiner —数据科学平台(来源)
RapidMiner 是一个面向团队的数据科学平台,它将数据准备、机器学习和预测模型部署结合在一起。
RapidMiner 提供的工具可以帮助您从最初准备数据到最后一步(即分析部署的模型)准备模型。RapidMiner 本身作为一个完整的端到端数据科学包,利用了其他产品提供的集成,例如:
●机器学习
●深度学习
●文本挖掘
●预测分析
RapidMiner 面向数据科学家和分析师,它提供的一些功能包括:
●数据准备
●结果可视化
●模型验证
●用于扩展核心功能的插件
● ver 一千五百原生算法
●实时数据跟踪和分析
●支持数十种第三方集成
●全面的报告能力
●适合任何规模团队使用的可扩展性
●卓越的安全特性
● Matplotlib
Matplotlib 让简单的事情变得简单,让困难的事情变得可能。
Matplotlib 是任何数据科学家都必须知道的 Python 的基本开源图形绘制库之一。它不仅为用户提供了广泛的定制选项,而且不会使任何事情变得过于复杂。任何熟悉 Python 的人都知道 Python 凭借其庞大的库集合以及与其他编程语言的集成有多么强大。
使用 Matplotlib 的简单 GUI,数据科学家可以创建引人注目的数据可视化。几个导出选项使您可以更容易地将自定义图形带到您选择的平台上。
● Excel
更好地了解您的数据
作为微软 Office 工具套件的一部分,Excel 对于普通人来说是一个简单的电子表格管理工具,但在数据科学家等超级用户手中,它将成为一个极其高效的工具。众所周知,Excel 对于新手来说是一个简单的入门工具,但是一旦他们发现它有多强大,他们就会继续使用。
Excel 显示数据的方式使其强大的数据可视化风格使决策一目了然。Excel 提供的公式就像上面的樱桃一样,将 Excel 从一个简单的表示应用程序的数字转换成可以处理这些巨大数字的东西,可以是连接、查找长度、查找总和、平均值等等。**
结论
数据在当今人工智能的世界中发挥着决定性的作用,使数据科学家能够做出有影响力的决策。在缺乏强大的数据科学工具的情况下,这项任务变得异常复杂。无论您的专业水平如何,我们都让您更容易了解可用的工具。如果您对数据科学感兴趣,您有大量的工具可供选择。虽然这些工具中有一些值得被称为多面手,但也有一些迎合了特定的需求。
注: 为了消除各种各样的问题,我想提醒你一个事实,这篇文章仅代表我想分享的个人观点,你有权不同意它。
更多有趣的阅读—
我希望这篇文章对你有用!以下是一些有趣的读物,希望你也喜欢
从几种编程语言中,人工智能工程师和科学家可以挑选出适合他们需要的语言
towardsdatascience.com](/top-programming-languages-for-ai-engineers-in-2020-33a9f16a80b0) [## 机器学习和深度学习的最佳 Python 库
现代机器学习模型和项目的 Python 库
towardsdatascience.com](/best-python-libraries-for-machine-learning-and-deep-learning-b0bd40c7e8c) [## 选择 PyTorch 进行深度学习的理由
PyTorch 可以为深度学习程序员提供很多东西
towardsdatascience.com](/reasons-to-choose-pytorch-for-deep-learning-c087e031eaca)
关于作者
克莱尔 D 。在Digitalogy—是一个内容制作者和营销人员,这是一个技术采购和定制匹配市场,根据全球各地的特定需求,将人们与预先筛选的&顶尖开发人员和设计师联系起来。在Linkedin,Twitter,insta gram。****
用于正向和反向工程的最佳数据库设计工具
这篇文章强调了用于正向和反向数据库工程的可视化工具的基本要求。我们还列举了数据库设计中最流行的可视化解决方案。
图片来自 Piqsels (CC0)
数据设计可视化工具的基本要求
数据库设计软件必须确保的首要事情是正向和反向工程。实现它的一个方法是视觉设计。它在数据模型中引入变更时生成代码,支持向前工程。而且,它从代码中构建一个图形模型,支持逆向工程。
因此,数据库设计的可视化解决方案必须在以下功能中提供图形正向和反向工程:
- 可视化数据库结构以供进一步分析。
- 使用容器聚集逻辑上相关的对象。
- 跟踪表之间的逻辑关系。
- 打开大型 SQL 数据库图表。
- 在图表中创建和编辑数据库对象。
此外,还应具备以下可视化工具:
- 数据建模语法的符号列表。
- 对象的注释。
- 文档化的计划,显示当前 SQL 图的逻辑结构。在数据库图表中浏览表及其相关性时,可以使用它。
- 图表概述(在图表中缩放和导航)。
- 所显示数据的详细程度(是否显示约束、索引等。).
- 设计列表(优化黑白打印、彩色打印等。).
数据库可视化解决方案还可能涉及其他需求。
数据库设计可视化工具概述
在我们阐明了数据库可视化设计工具的基本标准之后,让我们回顾一下最流行的软件解决方案。我们从各种网络评级和评论中编辑了这个列表,特别关注那些工具中存在的正向和反向工程选项。
MySQL WorkBench 是数据库架构师、开发人员和设计人员的强大工具集。在其他特性中,它提供了可视化数据库设计和管理数据库的选项。正向和反向工程都有工具。用户可以顺利无误地将图形数据模型转换成 MySQL 服务器上的数据库。该软件适用于数据建模、服务器配置、数据库管理和备份。此外,该产品与 Windows、Mac 和 Linux 兼容。
图片 1。MySQL Workbench 中的数据模型
dbForge Studio for MySQL 是一个多功能解决方案,用于创建和维护 MySQL 和 MariaDB 数据库。该功能涵盖了 PL/SQL 编码、数据同步、表分析、模式比较以及针对所有类型的数据库开发工作的更多选项。值得一提的是数据库结构可视化特性——它在 MySQL 数据库图中显示所有对象及其属性。制作这种图表的工具是 MySQL 数据库设计器的一部分。这样,你就可以通过拖放来进行逆向工程。该产品针对团队协作进行了优化。
形象二。DbForge Studio 中的数据模型
SQL Server Management Studio (SSMS)是一个基于 Windows 的免费实用工具,可用于任何 SQL 基础设施。该解决方案允许开发人员访问、管理和开发所有 SQL Server、SQL 数据仓库和 Azure SQL 数据库组件。该环境提供了各种各样的图形工具和丰富的脚本编辑器,适合所有级别的管理员。其中一个优势是在本地计算机和云中使用数据库和数据仓库。请注意,该解决方案仅与操作系统 Windows 兼容(AMD 或 Intel)。
图片 3。SSMS 的数据模型
Microsoft Visual Studio 是一个多用途的 IDE(集成开发环境),适用于数据库开发和维护。它可以导入现有的模式并将它们转换成数据库。在编译器、图形设计器和许多其他功能的帮助下,它可以执行与数据库设计相关的所有必要任务。逆向工程是可用的,该软件可以为每个特定的数据库对象生成 T-SQL 文件。Visual Studio 与 Microsoft SQL Server 数据库和 Azure SQL 数据库都兼容。
图片 4。Visual Studio 中的数据模型
SQLGate 是数据库开发和管理的集成解决方案。它的主要目标是简化所有类型的数据库操作。它支持所有流行的数据库,并允许用户直接连接这些数据库。这种集成软件不需要复杂的安装,其所有功能都更简单。对象资源管理器确保快速访问对象面板进行分析和编辑。调试实用程序有助于检测查询中的任何错误,从而有助于正确编写查询。
图片 5。SQLGate 中的数据模型
Navicat Data Modeler 是一款流行的数据库设计工具,主要用于构建数据模型(概念模型、逻辑模型和物理模型)。该解决方案适用于数据库结构的可视化设计、逆向和正向工程以及许多其他任务。用户可以从数据库结构创建图表,并可视化模型以查看元素之间的关系。模型的任何部分都可以转换成物理数据库实体。支持所有流行的数据库。
图片 6。Navicat 数据建模器中的数据模型
DBeaver 是数据库开发人员、管理员和分析师的免费工具,兼容所有流行的数据库。基于开源框架,DBeaver 允许开发人员创建和添加程序扩展,增强功能。除其他功能外,该工具还提供了以 ERD 形式查看数据库结构的选项。这些图显示了数据库对象及其用于分析的依赖关系。可以通过拖放元素来编辑布局,但是图只显示了数据库的当前状态。无法保存更改。
图 7。DBeaver 中的数据模型
ER/Studio 是数据库设计和数据架构的解决方案。它支持大多数数据库平台,受到许多领域的数据专家的青睐。其强大的数据建模功能使其对逻辑和物理数据库设计都很有用。有一些选项,如自动数据库代码生成、数据建模、从逻辑或物理模型生成 XML 模式、将模型与实际数据库进行比较等。
图片 8。ER/Studio 中的数据模型
在其他流行的工具中,值得一提的是以下工具:
- PowerDesigner
- Toad 数据建模器
- TablePlus
- 瓦伦蒂娜工作室
- DbSchema
- 尔 Builder
- SchemaSpy
- 数据库设计器
- 模式抓取器
- 欧文数据建模器
- 视觉范式 ERD 工具
- RapidMiner
- 地图商务在线
- 维尔塔贝洛
- 卢西德哈特
- SQL 数据库建模器
- HeidiSQL
- 阿帕奇火花
在我们的工作中,我们发现db forge Studio for SQL Server是最有用和最方便的。我们将进一步描述如何使用该工具创建数据库图工具,以及如何将这些方法应用于逆向工程。
db forge Studio for SQL Server 中数据库图表的主要工程特性
前面,我们在专门讨论数据库逆向工程的文章(link)中考虑了正向和逆向工程,并介绍了数据库设计中最流行的可视化工具。现在,让我们继续检查这样一个工具的功能和任务性能。为此,我们选择了db forge Studio for SQL Server中的数据库图表工具。
该过程的第一步是为 JobEmplDB 数据库创建一个模式。
转到所需的数据库,并在“数据库”主菜单中选择“数据库图表”:
图片 9。创建数据库图表
按住鼠标左键,将数据库拖动到“数据库图表”区域:
图片 10。数据库图表
现在我们有了 JobEmplDB 数据库的图表。它显示所有对象(表、视图、存储过程)。此外,它还显示了表之间的依赖关系。
每个表显示一个约束块和一个索引块。双击特定的依赖项,它会打开关系编辑器:
图片 11。关系编辑器
双击表格打开表格编辑器:
图片 12。表格编辑器
表格编辑器包括:
- 列的内容和定义。
- 约束的内容和定义。
- 索引的内容和定义。
- 统计学的内容和定义。
- 触发器的内容和定义。
- T-SQL 选项卡上的表定义。
此外,您可以通过转到 Data 选项卡来查看表的内容。
还有一个类似的视图编辑器:
图 13。视图编辑器
视图编辑器包括:
视图的定义。
视图定义的图形编辑器。
索引的列表和定义。
统计的列表和定义。
触发器的列表和定义。
同样,如果转到 Data 选项卡,您可以查看表的内容。
至于存储过程和函数,编辑器也允许更改它们的定义:
图片 14。存储过程/函数的编辑器
所有由编辑者引入数据库模型的更改,数据库都会保存自己。因此,您可以用图形方式修改数据库。它促进了正向和反向工程。
除此之外,“数据库图表”工具还允许:
1)如果有太多单独的项目,则创建可视容器并对对象进行分组:
图片 15。通过可视容器对对象进行分组
2)对特定对象的每个元素或对象本身进行评论。
3)创建附加图形元素,以便更好地理解数据库图表:
图片 16。创建图形元素(注意)
图像 17。制作邮票
4)优化打印模式:
图 18。优化模式以打印它
5)跟踪表之间的逻辑相关性:
图像 19。跟踪表之间的逻辑关系
结论
作为一个既方便又实用的正向和反向工程解决方案的例子,我们选择了 DbForge Studio for SQL Server 中的数据库图表工具。该工具提供了高效工作所需的所有选项。它有许多优点,但最有帮助的一点是,它使得不必针对系统视图编写查询(包括复杂的查询)来获取 SQL Server 数据库中对象的信息。
参考文献:
1)https://docs . Microsoft . com/en-us/SQL/relational-databases/system-catalog-views/catalog-views-transact-SQL?view=sql-server-ver15
2)https://docs . Microsoft . com/en-us/SQL/relational-databases/system-information-schema-views/system-information-schema-views-transact-SQL?view=sql-server-ver15
3)https://blog . devart . com/SQL-database-design-basics-with-example . html;
https://blog . devart . com/generate-test-data-with-SQL-data-generator . html;
https://blog . devart . com/export-and-import-JSON-data-via-db forge-data-pump-for-SQL-server . html
4)数据库图表