knowledge-graph-learning icon indicating copy to clipboard operation
knowledge-graph-learning copied to clipboard

[Resource] Useful tools & lecture related to data science

Open BrambleXu opened this issue 6 years ago • 1 comments

这个issue打算放一些我个人觉得不错的工具和教程,做一个备份。

2025/02

What is an Agent?

  • 这里对于agent的定义挺好的:Agent is: an AI model capable of reasoning, planning, and interacting with its environment.
Think of the Agent as having two main parts:

The Brain (AI Model)
This is where all the thinking happens. The AI model handles reasoning and planning. It decides which Actions to take based on the situation.

The Body (Capabilities and Tools)
This part represents everything the Agent is equipped to do.

The scope of possible actions depends on what the agent has been equipped with. For example, because humans lack wings, they can’t perform the “fly” Action, but they can execute Actions like “walk”, “run” ,“jump”, “grab”, and so on.

2024/09

2024/07

2024/06

2024/04

2024/03

2024/02

2024/01

2023/11

  • deepeval: 用来测试LLM结果的,LLM输出结果评测这方面确实需要一个好用的工具
  • taipy:能在前后端实现ML产品的工具

2023/09

  • MetaGPT: https://huggingface.co/spaces/deepwisdom/MetaGPT , 使用huggingface可以直接在线使用metagpt,比较方便

2023/07

2023/03

2023/02

2023/01

2022

2022/12

  • pydantic: 花了整整一天,本来打算用pydantic给segal做数据验证的,结果最终还是放弃这个方案,直接在init里用if进行检查了。原因主要有两点,pydantic和pytorch这种封装严重的第三方库很不友好,比如Dataset class就无法进行验证,每次都会被pydantic报错。还有一个原因在于pydantic的test不好写。因为使用mock的时候,如果想要设定某个函数的输出值,比如sampler.query = MagicMock(return_value=2,会被pydantic报错,说sampler没有query这个属性值,但实际上query是函数。根据这次的经验,对pydantic的适用场景有了一些感想。主要适用于一些数据结构比较简单的,很少用到第三方依赖的项目。对于涉及到pytorch, tensorflow这种比较复杂的深度学习项目,还是直接用if进行判断做数据验证比较好

2022/10

PyCon JP的一些资料:

2022/09

image

2022/04

  • 写日语文章的时候,可以用这个工具检查文法,prh, 还有vscode的扩展prh。可以把一些常见的错误写好,トレニング-> トレーニング、エンティティ->固有表現、デーテ->データ
  • 关于OKR的设定,比如个人方面的目标设定Personal OKR Example

2022/03

  • 直接将B站的视频转换为mp3的网站,offliberty

2022/02

2021

2021/08

2021/05

  • Error-riddled data sets are warping our sense of how good AI really is: 这篇文章不错, 涉及到的论文

2021/04

2021/01

2020

2020/12

2020/11

2020/10

2020/8

2020/7

2020/6

关于抗疫的视频,太感动了:

  • https://www.youtube.com/watch?v=V14W8A73XW0
  • https://www.youtube.com/watch?v=XU9FVqwO4TM

2020/5

关于投资

关于开发:

关于日语:

  • 日语语法指南, 语法精要
  • 見出し語=見出し, 意思是标题,headline。「私は新聞の見出ししか読まない」"I only read the headlines of newspapers"

2020/4

2020/3

2020/2

2020/1

2019

2019/12

PyCon china 2018:

关于健身:

  • Dynamic Stretching Routine: Best Full Body Warm Up: 动态拉伸来热身。下腰触脚(拉伸大腿后侧),Knee To Chest(抱腿拉伸臀部肌肉),Side Lunge Touching Heel(拉伸大腿内侧),Lunge With A Lean(大腿前侧),Arm Circles(用手臂带动肩部的放松)
  • 3 Reasons to Complete Challenging Exercises First: 先热身。然后把最重要的训练放在一开始,这些训练是那些需要用到多个关节和部位的训练。
  • Light Weights vs Heavy Weights for Muscle Growth文章:低重量高频次和高重量低频次对于肌肉的增加效果基本一样。但是高重量低频次在抓举方面对于肌肉的增大效果更好。添加drop sets,通过低重量高频次来提高提高乳酸阈值。
  • How To Add Drop Set Training To Your Workout: 使用drop set的话,可以更好的利用上面两种训练效果。
  • How to Gain Muscle Faster With ‘time Under Tension’ Training: 这篇文章提到了TUT这个概念。它指的是在一个set里肌肉承受拉力的时间。为了能让肌肉增长,要保证受力时间。1 不要浪费大量时间在简单的锻炼上;2 保持一个稳定的节奏,each rep during a set would be 2/4/0 (lifting, lowering, pause);3 在离心运动上花更多时间,指的是上面lowering的部分,时间越长对肌肉破坏越大,能促进增长;4 关注form,不要因为疲劳破坏姿势。这里我理解的是每次动作要做完整,每个rep不要只做到一部分;5 使用drop set;保持高强度,重量和锻炼一定要有挑战性,才能促进肌肉增长。比如Use at least 60% of your 1-rep max for a lift to maximize gains.

2019/11

Some information about fuzzy matching: 没有找到日语的相关工具

2019/10

2019/09

image (图1)

image (图2)

Linux basic

  • Shell 教程. 文章最下面有5个链接。前两个里先看视频教程,速查表很多东西都没有涉及到,但视频里有讲。下面三个链接里,第一个Bash scripting cheatsheet 挺有方便的,写bash脚本的话直接拿来参考。
  • 机器学习、深度学习中常用的Linux命令

Deep Learning Tools

可视化

文章

关于RE的文章

关于Transformer的文章

关于BERT的文章

BrambleXu avatar Apr 24 '19 14:04 BrambleXu

分词

  • 英语分词

    • https://towardsdatascience.com/tokenization-for-natural-language-processing-a179a891bad4 这篇文章里的图将各种分词方法总结的不错

    • https://www.analyticsvidhya.com/blog/2020/05/what-is-tokenization-nlp/ 有具体例子,当做补充内容

    • https://neptune.ai/blog/tokenization-in-nlp 有一些分词工具

    • https://www.kaggle.com/code/satishgunjal/tokenization-in-nlp kaggle的分词教程,可以用来写教程

  • 日语分词

    • https://qiita.com/klis/items/bb9ffa4d9c886af0f531 文章介绍了konoha,文章里的link还有Mecab,Sentencepiece的用法,这些都是日语的分词工具

    • https://cardinal-moon.hatenablog.com/entry/tokenize_and_subword 主要介绍了BPE和Sentencepiece

    • https://www.nogawanogawa.com/entry/tokenizer 简单介绍了使用不同分词工具的分词结果

将text转换为特征向量

  • word embedding出现前,机器学习方式的特征转换

    • https://www.analyticsvidhya.com/blog/2021/06/part-5-step-by-step-guide-to-master-nlp-text-vectorization-approaches/,主要方式有OHE,Count Vectorizer,BOW,N-grams,TF-IDF
  • 基于神经网络,出现了word embedding

    • https://towardsdatascience.com/understanding-nlp-word-embeddings-text-vectorization-1a23744f7223,主要有Word2Vec,Glove,Fasttext。这些技术刚出来的时候效果都很好,但是现在已经很少使用了
  • 基于Transformers的embedding技术

    • https://towardsdatascience.com/nlp-extract-contextualized-word-embeddings-from-bert-keras-tf-67ef29f60a7b,主要介绍了BERT,BERT是这一类技术的始祖

    • https://www.kaggle.com/code/colearninglounge/vectorization-embeddings-elmo-bert-gpt/notebook,kaggle的一些用法,介绍了ELMo, BERT/GPT

    • https://medium.com/@dhartidhami/understanding-bert-word-embeddings-7dc4d2ea54ca,介绍BERT的文章,有具体的code可以参考

  • 其他

    • https://www.turing.com/kb/guide-on-word-embeddings-in-nlp#bert-(bidirectional-encoder-representations-from-transformers),梳理了不同方法的主要技术,算是总结性的文章

关于NLP的模型

  • 将特征转换为特征向量后,可以使用一些传统的机器学习模型,比如随机森林,SVM等等

  • 神经网络出现后,基于CNN,RNN的模型效果非常突出,最典型的是Bi-LSTM CRF

    • https://qiita.com/wakafar/items/c9a05713f579f436d36d

    • https://roy29fuku.com/natural-language-processing/ner-with-lstm-crf-model/

  • 基于Transformers的Language model出现后,性能非常强,最典型的是BERT

    • https://blog.brainpad.co.jp/entry/2021/01/06/113000

    • https://ainow.ai/2021/06/25/256107/

    • https://zenn.dev/yukiyada/articles/59f3b820c52571 有代码,可能比较难一些

    • https://note.com/npaka/n/n5bb043191cc9 基于Huggingface开发的Transformers工具,里面自带了很多有名的Transformers模型,用起来很方便

关于NLP的task

  • https://nlpprogress.com/:这里总结了基本上所有的NLP任务
  • https://radiology-nlp.hatenablog.com/entry/2019/11/16/005550:日语的介绍

可视化

  • 词云可视化:表达文章中单词的重要性

  • Embedding可视化:表达corpus中不同单词之间的联系

    • https://towardsdatascience.com/how-to-visualize-text-embeddings-with-tensorboard-47e07e3a12fb,需要用到tensorboard,可能比较难一些

    • https://yag-ays.github.io/project/embedding-visualization/:日语的,也要用到tensorboard

    • https://towardsdatascience.com/visualizing-word-embedding-with-pca-and-t-sne-961a692509f5,这个比较简单

    • http://projector.tensorflow.org/,google提供的一个网页可视化工具,可以自己导入embedding数据

  • 语法树可视化

    • https://qiita.com/wf-yamaday/items/3ffdcc15a5878b279d61

    • https://spacy.io/usage/visualizers

BrambleXu avatar Aug 27 '22 00:08 BrambleXu