[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-aikho--awesome-feature-engineering":3,"tool-aikho--awesome-feature-engineering":62},[4,18,26,36,46,54],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",160411,2,"2026-04-18T23:33:24",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":42,"last_commit_at":43,"category_tags":44,"status":17},8272,"opencode","anomalyco\u002Fopencode","OpenCode 是一款开源的 AI 编程助手（Coding Agent），旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件，而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码，还是排查难以定位的 Bug，OpenCode 都能通过自然语言交互高效完成，显著减少开发者在重复性劳动和上下文切换上的时间消耗。\n\n这款工具专为软件开发者、工程师及技术研究人员设计，特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构，这意味着用户可以审查代码逻辑、自定义行为策略，甚至私有化部署以保障数据安全，彻底打破了传统闭源 AI 助手的“黑盒”限制。\n\n在技术体验上，OpenCode 提供了灵活的终端界面（Terminal UI）和正在测试中的桌面应用程序，支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具，安装便捷，并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客，还是渴望提升产出的独立开发者，OpenCode 都提供了一个透明、可信",144296,1,"2026-04-16T14:50:03",[13,45],"插件",{"id":47,"name":48,"github_repo":49,"description_zh":50,"stars":51,"difficulty_score":32,"last_commit_at":52,"category_tags":53,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",109154,"2026-04-18T11:18:24",[14,15,13],{"id":55,"name":56,"github_repo":57,"description_zh":58,"stars":59,"difficulty_score":32,"last_commit_at":60,"category_tags":61,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[45,13,15,14],{"id":63,"github_repo":64,"name":65,"description_en":66,"description_zh":67,"ai_summary_zh":68,"readme_en":69,"readme_zh":70,"quickstart_zh":71,"use_case_zh":72,"hero_image_url":73,"owner_login":74,"owner_name":75,"owner_avatar_url":76,"owner_bio":77,"owner_company":78,"owner_location":79,"owner_email":78,"owner_twitter":80,"owner_website":78,"owner_url":81,"languages":78,"stars":82,"forks":83,"last_commit_at":84,"license":85,"difficulty_score":42,"env_os":86,"env_gpu":87,"env_ram":87,"env_deps":88,"category_tags":101,"github_topics":103,"view_count":32,"oss_zip_url":78,"oss_zip_packed_at":78,"status":17,"created_at":109,"updated_at":110,"faqs":111,"releases":112},9389,"aikho\u002Fawesome-feature-engineering","awesome-feature-engineering","A curated list of resources dedicated to Feature Engineering Techniques for Machine Learning","awesome-feature-engineering 是一份专为机器学习领域精心整理的特征工程技术资源清单。在机器学习中，原始数据往往无法直接用于模型训练，如何从中提取有效信息（即“特征工程”）是决定模型性能的关键难题。这份清单系统地解决了这一痛点，将分散的技术文档、代码库和教程按数据类型进行了科学分类。\n\n它涵盖了数值型数据的标准化与分箱、文本数据的词向量与 TF-IDF 处理、图像数据的深度学习特征提取、类别型数据的编码技巧，以及时序和地理空间数据的特有处理方法。无论是刚入门的新手还是资深算法工程师，都能在这里快速找到针对特定数据类型的最佳实践方案和相关工具链接（如 scikit-learn、Featuretools 等）。\n\n特别适合机器学习开发者、数据科学家及人工智能研究人员使用。其独特亮点在于极强的结构化与全面性：不仅罗列了传统统计方法，还收录了 t-SNE、Yeo-Johnson 变换等进阶技术，并提供了从理论文章到具体代码实现的完整路径。通过参考 awesome-feature-engineering，用户可以大幅缩短调研时间，构建更高质量的数据输入，从而提升模型的整体","awesome-feature-engineering 是一份专为机器学习领域精心整理的特征工程技术资源清单。在机器学习中，原始数据往往无法直接用于模型训练，如何从中提取有效信息（即“特征工程”）是决定模型性能的关键难题。这份清单系统地解决了这一痛点，将分散的技术文档、代码库和教程按数据类型进行了科学分类。\n\n它涵盖了数值型数据的标准化与分箱、文本数据的词向量与 TF-IDF 处理、图像数据的深度学习特征提取、类别型数据的编码技巧，以及时序和地理空间数据的特有处理方法。无论是刚入门的新手还是资深算法工程师，都能在这里快速找到针对特定数据类型的最佳实践方案和相关工具链接（如 scikit-learn、Featuretools 等）。\n\n特别适合机器学习开发者、数据科学家及人工智能研究人员使用。其独特亮点在于极强的结构化与全面性：不仅罗列了传统统计方法，还收录了 t-SNE、Yeo-Johnson 变换等进阶技术，并提供了从理论文章到具体代码实现的完整路径。通过参考 awesome-feature-engineering，用户可以大幅缩短调研时间，构建更高质量的数据输入，从而提升模型的整体表现。","# Awesome Feature Engineering for Machine Learning\n\n[![Awesome](https:\u002F\u002Fcdn.rawgit.com\u002Fsindresorhus\u002Fawesome\u002Fd7305f38d29fed78fa85652e3a63e154dd8e8829\u002Fmedia\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fsindresorhus\u002Fawesome)\n\nA curated list of resources dedicated to Feature Engineering Techniques for Machine Learning \n\nMaintainers - [Andrei Khobnia](https:\u002F\u002Fgithub.com\u002Faikho)\n\nThis page is licensed under [Creative Commons Attribution-Noncommercial-ShareAlike 3.0 Unported License](https:\u002F\u002Fcreativecommons.org\u002Flicenses\u002Fby-nc-sa\u002F3.0\u002F)\n\nPlease feel free to create [pull requests](https:\u002F\u002Fgithub.com\u002Faikho\u002Fawesome-feature-engineering\u002Fpulls).\n\n\n## Contents\n\n - [Numeric Data](#numeric-data)\n   - [Scaling](#scaling)\n   - [Ranking](#ranking)\n   - [Quantization and Binning](#quantization-and-binning)\n   - [Box-Cox Transformation](#box-cox-transformation)\n   - [Yeo-Johnson Transformation](#yeo-johnson-transformation)\n   - [Feature Interactions](#feature-interactions)\n   - [Clustering Features](#clustering-features)\n   - [t-SNE Features](#t-sne-features)\n   - [PCA Features](#pca-features)\n - [Textual Data](#textual-data)\n   - [Bag of Words](#bag-of-words)\n   - [Phrase Detection Features](#phrase-detection-features)\n   - [TFIDF](#tfidf)\n   - [Word Embeddings](#word-embeddings)\n   - [Subword Embeddings](#subword-embeddings)\n   - [Pattern Features](#pattern-features)\n   - [Lexicon Features](#lexicon-features)\n   - [PoS Features](#pos-features)\n - [Image Data](#image-data)\n   - [Computer Vision Algorithm Features](#computer-vision-algorithm-features)\n   - [Image Statistics Features](#image-statistics-features)\n   - [OCR Features](#ocr-features)\n   - [Deep Learning Features](#deep-learning-features)\n - [Categorical Data](#categorical-data)\n   - [One Hot Encoding](#one-hot-encoding)\n   - [Count Encoding](#count-encoding)\n   - [Label Encoding](#label-encoding)\n   - [Dummy Encoding](#dummy-encoding)\n   - [Mean Encoding](#mean-encoding)\n   - [Hashing](#hashing)\n - [Time Series Data](#time-series-data)\n   - [Rolling Window Features](#rolling-window-features)\n   - [Lag Features](#lag-features)\n - [Geospatial Data](#geospatial-data)\n\n\n## Numeric Data\n* [Understanding Feature Engineering (Part 1) -- Continuous Numeric Data](https:\u002F\u002Ftowardsdatascience.com\u002Funderstanding-feature-engineering-part-1-continuous-numeric-data-da4e47099a7b)\n### Scaling\n* [sklearn.preprocessing.MinMaxScaler](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.preprocessing.MinMaxScaler.html)\n* [sklearn.preprocessing.StandartScaler](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.preprocessing.StandardScaler.html)\n### Ranking\n* [Ranking](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRanking)\n* [scipy.stats.rankdata](https:\u002F\u002Fdocs.scipy.org\u002Fdoc\u002Fscipy-0.16.0\u002Freference\u002Fgenerated\u002Fscipy.stats.rankdata.html)\n### Quantization and Binning\n* [Data Binning](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FData_binning)\n* [Bucketing Continuous Variables in pandas](http:\u002F\u002Fbenalexkeen.com\u002Fbucketing-continuous-variables-in-pandas\u002F)\n* [pandas.cat](https:\u002F\u002Fpandas.pydata.org\u002Fpandas-docs\u002Fstable\u002Fgenerated\u002Fpandas.cut.html)\n### Box-Cox Transformation\n* [scipy.stats.boxcox](https:\u002F\u002Fdocs.scipy.org\u002Fdoc\u002Fscipy\u002Freference\u002Fgenerated\u002Fscipy.stats.boxcox.html)\n* `np.log (x + const)`\n### Yeo-Johnson Transformation\n* [Yeo-Johnson Transformation](https:\u002F\u002Fgist.github.com\u002Fmesgarpour\u002Ff24769cd186e2db853957b10ff6b7a95)\n### Feature Interactions\n* [Featuretools](https:\u002F\u002Fdocs.featuretools.com\u002F)\n* [sklearn.preprocessing.PolynomialFeatures](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.preprocessing.PolynomialFeatures.html)\n* Divisions\n* Other interactions\n### Clustering Features\n* [How to create New Features using Clustering!!](https:\u002F\u002Ftowardsdatascience.com\u002Fhow-to-create-new-features-using-clustering-4ae772387290)\n### t-SNE Features\n* [t-SNE](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FT-distributed_stochastic_neighbor_embedding)\n* [Automatic feature extraction with t-SNE](https:\u002F\u002Fmedium.com\u002Fjungle-book\u002Fautomatic-feature-extraction-with-t-sne-62826ce09268)\n### PCA Features\n* [Principal component analysis (PCA)](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPrincipal_component_analysis)\n* [sklearn.decomposition.PCA](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.decomposition.PCA.html)\n\n\n## Textual Data\n* [Understanding Feature Engineering (Part 3) -- Traditional Methods for Text Data](https:\u002F\u002Ftowardsdatascience.com\u002Funderstanding-feature-engineering-part-3-traditional-methods-for-text-data-f6f7d70acd41)\n### Bag of Words\n* [Bag-of-words model](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FBag-of-words_model)\n* [A Gentle Introduction to the Bag-of-Words Model](https:\u002F\u002Fmachinelearningmastery.com\u002Fgentle-introduction-bag-words-model\u002F)\n* [sklearn.feature_extraction.text.CountVectorizer](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.feature_extraction.text.CountVectorizer.html)\n* [sklearn.feature_extraction.DictVectorizer](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.feature_extraction.DictVectorizer.html)\n* [sklearn.feature_extraction.FeatureHasher](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.feature_extraction.FeatureHasher.html)\n### Phrase Detection Features\n* [sklearn_api.phrases – Scikit learn wrapper for phrase (collocation) detection](https:\u002F\u002Fradimrehurek.com\u002Fgensim\u002Fmodels\u002Fphrases.html)\n### TFIDF\n* [tf-idf](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FTf%E2%80%93idf)\n* [sklearn.feature_extraction.text.TfidfVectorizer](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.feature_extraction.text.TfidfVectorizer.html)\n### Word Embeddings\n* [Word embedding](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FWord_embedding)\n* [GloVe: Global Vectors for Word Representation](https:\u002F\u002Fnlp.stanford.edu\u002Fprojects\u002Fglove\u002F)\n* [Gensim: models.word2vec – Word2vec embeddings](https:\u002F\u002Fradimrehurek.com\u002Fgensim\u002Fmodels\u002Fword2vec.html)\n* [fastText](https:\u002F\u002Ffasttext.cc\u002F)\n* [Word2Vec and FastText Word Embedding with Gensim](https:\u002F\u002Ftowardsdatascience.com\u002Fword-embedding-with-word2vec-and-fasttext-a209c1d3e12c)\n* [Do Pretrained Embeddings Give You The Extra Edge?](https:\u002F\u002Fwww.kaggle.com\u002Fsbongo\u002Fdo-pretrained-embeddings-give-you-the-extra-edge)\n### Subword Embeddings\n* [Pre-trained subword embeddings in 275 languages, based on Byte-Pair Encoding (BPE)](https:\u002F\u002Fgithub.com\u002Fbheinzerling\u002Fbpemb)\n### Pattern Features\n* [ClearTK - Feature Extraction Tutorial](https:\u002F\u002Fcleartk.github.io\u002Fcleartk\u002Fdocs\u002Ftutorial\u002Ffeature_extraction.html)\n* Regular Expressions\n### Lexicon Features\n* [Named Entity Recognition with Bidirectional LSTM-CNNs (arXiv:1511.08308)](https:\u002F\u002Farxiv.org\u002Fabs\u002F1511.08308v4)\n### PoS Features\n* [Part-of-Speech_Tagging](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPart-of-speech_tagging)\n* [NLTK Categorizing and Tagging Words](https:\u002F\u002Fwww.nltk.org\u002Fbook\u002Fch05.html)\n* [How to use PoS features in scikit learn classfiers](https:\u002F\u002Fstackoverflow.com\u002Fquestions\u002F24002485\u002Fpython-how-to-use-pos-part-of-speech-features-in-scikit-learn-classfiers-svm)\n\n## Image Data\n### Computer Vision Algorithm Features\n* [Feature extraction and similar image search with OpenCV for newbies](https:\u002F\u002Fmedium.com\u002Fmachine-learning-world\u002Ffeature-extraction-and-similar-image-search-with-opencv-for-newbies-3c59796bf774)\n* [OpenCV -- Feature Detection and Description](https:\u002F\u002Fdocs.opencv.org\u002F3.0-beta\u002Fdoc\u002Fpy_tutorials\u002Fpy_feature2d\u002Fpy_table_of_contents_feature2d\u002Fpy_table_of_contents_feature2d.html)\n* [SimpleCV.Features package](http:\u002F\u002Fsimplecv.readthedocs.io\u002Fen\u002Flatest\u002FSimpleCV.Features.html)\n* [Scikit-image feature module](http:\u002F\u002Fscikit-image.org\u002Fdocs\u002Fstable\u002Fapi\u002Fskimage.feature.html)\n### Image Statistics Features\n* [ImageStat Module -- Pillow](http:\u002F\u002Fpillow.readthedocs.io\u002Fen\u002F3.1.x\u002Freference\u002FImageStat.html)\n### OCR Features\n* [A Python wrapper for Google Tesseract](https:\u002F\u002Fgithub.com\u002Fmadmaze\u002Fpytesseract)\n### Deep Learning Features\n* [Keras pre-trained models feature extraction](https:\u002F\u002Fkeras.io\u002Fapplications\u002F)\n* [Using Keras’ Pre-trained Models for Feature Extraction in Image Clustering](https:\u002F\u002Fmedium.com\u002F@franky07724_57962\u002Fusing-keras-pre-trained-models-for-feature-extraction-in-image-clustering-a142c6cdf5b1)\n\n\n## Categorical Data\n* [Understanding Feature Engineering (Part 2) -- Categorical Data](https:\u002F\u002Ftowardsdatascience.com\u002Funderstanding-feature-engineering-part-2-categorical-data-f54324193e63)\n### One Hot Encoding\n* [Why One-Hot Encode Data in Machine Learning?](https:\u002F\u002Fmachinelearningmastery.com\u002Fwhy-one-hot-encode-data-in-machine-learning\u002F)\n* [How to One Hot Encode Sequence Data in Python](https:\u002F\u002Fmachinelearningmastery.com\u002Fhow-to-one-hot-encode-sequence-data-in-python\u002F)\n* [sklearn.preprocessing.OneHotEncoder](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.preprocessing.OneHotEncoder.html)\n* [Keras - to_categorical](https:\u002F\u002Fkeras.io\u002Futils\u002F#to_categorical)\n### Count Encoding\n* [Feature engineering: Count encoding](https:\u002F\u002Fwww.slideshare.net\u002FHJvanVeen\u002Ffeature-engineering-72376750\u002F11)\n### Label Encoding\n* [Label encoding in scikit-learn](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.preprocessing.LabelEncoder.html)\n* [Feature engineering: Label encoding](https:\u002F\u002Fwww.slideshare.net\u002FHJvanVeen\u002Ffeature-engineering-72376750\u002F9)\n### Dummy Encoding\n* [Dummy Coding: The how and why](http:\u002F\u002Fwww.statisticssolutions.com\u002Fdummy-coding-the-how-and-why\u002F)\n* [pandas.get_dummies](https:\u002F\u002Fpandas.pydata.org\u002Fpandas-docs\u002Fstable\u002Fgenerated\u002Fpandas.get_dummies.html)\n* [One-Hot vs Dummy encoding](https:\u002F\u002Fstats.stackexchange.com\u002Fquestions\u002F224051\u002Fone-hot-vs-dummy-encoding-in-scikit-learn)\n### Mean Encoding\n* [Likelihood encoding of categorical features](https:\u002F\u002Fwww.kaggle.com\u002Ftnarik\u002Flikelihood-encoding-of-categorical-features)\n* [Python target encoding for categorical features](https:\u002F\u002Fwww.kaggle.com\u002Fogrellier\u002Fpython-target-encoding-for-categorical-features)\n* [Adding variance column when mean encoding](https:\u002F\u002Fwww.kaggle.com\u002Fgeneral\u002F16927#95887)\n### Hashing\n* [Feature Hashing on Wikipedia](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FFeature_hashing)\n* [Feature hashing and Extraction in VowpalWabbit](https:\u002F\u002Fgithub.com\u002FVowpalWabbit\u002Fvowpal_wabbit\u002Fwiki\u002FFeature-Hashing-and-Extraction)\n* [Feature hashing in scikit-learn](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.feature_extraction.FeatureHasher.html)\n\n\n## Time Series Data\n* [Automatic extraction of relevant features from time series](http:\u002F\u002Ftsfresh.readthedocs.io)\n* [Basic Feature Engineering With Time Series Data in Python](https:\u002F\u002Fmachinelearningmastery.com\u002Fbasic-feature-engineering-time-series-data-python\u002F)\n### Rolling Window Features\n* [pandas.DataFrame.rolling](https:\u002F\u002Fpandas.pydata.org\u002Fpandas-docs\u002Fversion\u002F0.22\u002Fgenerated\u002Fpandas.DataFrame.rolling.html)\n### Lag Features\n* [Use pandas to lag your timeseries data in order to examine causal relationships](https:\u002F\u002Fmedium.com\u002F@NatalieOlivo\u002Fuse-pandas-to-lag-your-timeseries-data-in-order-to-examine-causal-relationships-f8186451b3a9)\n\n\n## Geospatial Data\n* [Geospatial Feature Engineering and Visualization](https:\u002F\u002Fwww.kaggle.com\u002Fcamnugent\u002Fgeospatial-feature-engineering-and-visualization)\n* [Intro to Geospatial Data using Python](https:\u002F\u002Fgithub.com\u002FSocialDataSci\u002FGeospatial_Data_with_Python\u002Fblob\u002Fmaster\u002FIntro%20to%20Geospatial%20Data%20with%20Python.ipynb)\n\n\n[Back to Top](#contents)\n","# 机器学习中的精彩特征工程\n\n[![Awesome](https:\u002F\u002Fcdn.rawgit.com\u002Fsindresorhus\u002Fawesome\u002Fd7305f38d29fed78fa85652e3a63e154dd8e8829\u002Fmedia\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fsindresorhus\u002Fawesome)\n\n一份精心整理的资源列表，专注于机器学习中的特征工程技术。\n\n维护者 - [Andrei Khobnia](https:\u002F\u002Fgithub.com\u002Faikho)\n\n本页面采用 [知识共享 署名-非商业性使用-相同方式共享 3.0 未本地化许可协议](https:\u002F\u002Fcreativecommons.org\u002Flicenses\u002Fby-nc-sa\u002F3.0\u002F) 许可。\n\n欢迎随时创建 [pull requests](https:\u002F\u002Fgithub.com\u002Faikho\u002Fawesome-feature-engineering\u002Fpulls)。\n\n\n## 目录\n\n - [数值型数据](#numeric-data)\n   - [归一化](#scaling)\n   - [排名](#ranking)\n   - [量化与分箱](#quantization-and-binning)\n   - [Box-Cox变换](#box-cox-transformation)\n   - [Yeo-Johnson变换](#yeo-johnson-transformation)\n   - [特征交互](#feature-interactions)\n   - [聚类特征](#clustering-features)\n   - [t-SNE特征](#t-sne-features)\n   - [PCA特征](#pca-features)\n - [文本数据](#textual-data)\n   - [词袋模型](#bag-of-words)\n   - [短语检测特征](#phrase-detection-features)\n   - [TFIDF](#tfidf)\n   - [词嵌入](#word-embeddings)\n   - [子词嵌入](#subword-embeddings)\n   - [模式特征](#pattern-features)\n   - [词典特征](#lexicon-features)\n   - [词性特征](#pos-features)\n - [图像数据](#image-data)\n   - [计算机视觉算法特征](#computer-vision-algorithm-features)\n   - [图像统计特征](#image-statistics-features)\n   - [OCR特征](#ocr-features)\n   - [深度学习特征](#deep-learning-features)\n - [类别型数据](#categorical-data)\n   - [独热编码](#one-hot-encoding)\n   - [计数编码](#count-encoding)\n   - [标签编码](#label-encoding)\n   - [哑变量编码](#dummy-encoding)\n   - [均值编码](#mean-encoding)\n   - [哈希编码](#hashing)\n - [时间序列数据](#time-series-data)\n   - [滑动窗口特征](#rolling-window-features)\n   - [滞后特征](#lag-features)\n - [地理空间数据](#geospatial-data)\n\n\n## 数值型数据\n* [理解特征工程（第1部分）——连续数值型数据](https:\u002F\u002Ftowardsdatascience.com\u002Funderstanding-feature-engineering-part-1-continuous-numeric-data-da4e47099a7b)\n### 归一化\n* [sklearn.preprocessing.MinMaxScaler](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.preprocessing.MinMaxScaler.html)\n* [sklearn.preprocessing.StandartScaler](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.preprocessing.StandardScaler.html)\n### 排名\n* [排名](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRanking)\n* [scipy.stats.rankdata](https:\u002F\u002Fdocs.scipy.org\u002Fdoc\u002Fscipy-0.16.0\u002Freference\u002Fgenerated\u002Fscipy.stats.rankdata.html)\n### 量化与分箱\n* [数据分箱](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FData_binning)\n* [在pandas中对连续变量进行分桶](http:\u002F\u002Fbenalexkeen.com\u002Fbucketing-continuous-variables-in-pandas\u002F)\n* [pandas.cat](https:\u002F\u002Fpandas.pydata.org\u002Fpandas-docs\u002Fstable\u002Fgenerated\u002Fpandas.cut.html)\n### Box-Cox变换\n* [scipy.stats.boxcox](https:\u002F\u002Fdocs.scipy.org\u002Fdoc\u002Fscipy\u002Freference\u002Fgenerated\u002Fscipy.stats.boxcox.html)\n* `np.log (x + const)`\n### Yeo-Johnson变换\n* [Yeo-Johnson变换](https:\u002F\u002Fgist.github.com\u002Fmesgarpour\u002Ff24769cd186e2db853957b10ff6b7a95)\n### 特征交互\n* [Featuretools](https:\u002F\u002Fdocs.featuretools.com\u002F)\n* [sklearn.preprocessing.PolynomialFeatures](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.preprocessing.PolynomialFeatures.html)\n* 除法\n* 其他交互\n### 聚类特征\n* [如何利用聚类创建新特征！！](https:\u002F\u002Ftowardsdatascience.com\u002Fhow-to-create-new-features-using-clustering-4ae772387290)\n### t-SNE特征\n* [t-SNE](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FT-distributed_stochastic_neighbor_embedding)\n* [使用t-SNE自动提取特征](https:\u002F\u002Fmedium.com\u002Fjungle-book\u002Fautomatic-feature-extraction-with-t-sne-62826ce09268)\n### PCA特征\n* [主成分分析（PCA）](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPrincipal_component_analysis)\n* [sklearn.decomposition.PCA](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.decomposition.PCA.html)\n\n\n## 文本数据\n* [理解特征工程（第3部分）——文本数据的传统方法](https:\u002F\u002Ftowardsdatascience.com\u002Funderstanding-feature-engineering-part-3-traditional-methods-for-text-data-f6f7d70acd41)\n### 词袋模型\n* [词袋模型](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FBag-of-words_model)\n* [词袋模型简介](https:\u002F\u002Fmachinelearningmastery.com\u002Fgentle-introduction-bag-words-model\u002F)\n* [sklearn.feature_extraction.text.CountVectorizer](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.feature_extraction.text.CountVectorizer.html)\n* [sklearn.feature_extraction.DictVectorizer](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.feature_extraction.DictVectorizer.html)\n* [sklearn.feature_extraction.FeatureHasher](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.feature_extraction.FeatureHasher.html)\n### 短语检测特征\n* [sklearn_api.phrases – Scikit learn用于短语（搭配）检测的封装](https:\u002F\u002Fradimrehurek.com\u002Fgensim\u002Fmodels\u002Fphrases.html)\n### TFIDF\n* [tf-idf](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FTf%E2%80%93idf)\n* [sklearn.feature_extraction.text.TfidfVectorizer](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.feature_extraction.text.TfidfVectorizer.html)\n### 词嵌入\n* [词嵌入](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FWord_embedding)\n* [GloVe：用于单词表示的全局向量](https:\u002F\u002Fnlp.stanford.edu\u002Fprojects\u002Fglove\u002F)\n* [Gensim：models.word2vec – Word2vec嵌入](https:\u002F\u002Fradimrehurek.com\u002Fgensim\u002Fmodels\u002Fword2vec.html)\n* [fastText](https:\u002F\u002Ffasttext.cc\u002F)\n* [使用Gensim进行Word2Vec和FastText词嵌入](https:\u002F\u002Ftowardsdatascience.com\u002Fword-embedding-with-word2vec-and-fasttext-a209c1d3e12c)\n* [预训练的词嵌入是否能带来额外优势？](https:\u002F\u002Fwww.kaggle.com\u002Fsbongo\u002Fdo-pretrained-embeddings-give-you-the-extra-edge)\n### 子词嵌入\n* [基于字节对编码（BPE）的275种语言的预训练子词嵌入](https:\u002F\u002Fgithub.com\u002Fbheinzerling\u002Fbpemb)\n### 模式特征\n* [ClearTK - 特征提取教程](https:\u002F\u002Fcleartk.github.io\u002Fcleartk\u002Fdocs\u002Ftutorial\u002Ffeature_extraction.html)\n* 正则表达式\n### 词典特征\n* [使用双向LSTM-CNN进行命名实体识别（arXiv:1511.08308）](https:\u002F\u002Farxiv.org\u002Fabs\u002F1511.08308v4)\n### 词性特征\n* [词性标注](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPart-of-speech_tagging)\n* [NLTK对词语进行分类和标注](https:\u002F\u002Fwww.nltk.org\u002Fbook\u002Fch05.html)\n* [如何在scikit-learn分类器中使用词性特征](https:\u002F\u002Fstackoverflow.com\u002Fquestions\u002F24002485\u002Fpython-how-to-use-pos-part-of-speech-features-in-scikit-learn-classfiers-svm)\n\n## 图像数据\n\n### 计算机视觉算法特征\n* [使用 OpenCV 进行特征提取和相似图像搜索（新手指南）](https:\u002F\u002Fmedium.com\u002Fmachine-learning-world\u002Ffeature-extraction-and-similar-image-search-with-opencv-for-newbies-3c59796bf774)\n* [OpenCV — 特征检测与描述](https:\u002F\u002Fdocs.opencv.org\u002F3.0-beta\u002Fdoc\u002Fpy_tutorials\u002Fpy_feature2d\u002Fpy_table_of_contents_feature2d\u002Fpy_table_of_contents_feature2d.html)\n* [SimpleCV.Features 包](http:\u002F\u002Fsimplecv.readthedocs.io\u002Fen\u002Flatest\u002FSimpleCV.Features.html)\n* [Scikit-image 特征模块](http:\u002F\u002Fscikit-image.org\u002Fdocs\u002Fstable\u002Fapi\u002Fskimage.feature.html)\n### 图像统计特征\n* [ImageStat 模块 — Pillow](http:\u002F\u002Fpillow.readthedocs.io\u002Fen\u002F3.1.x\u002Freference\u002FImageStat.html)\n### OCR 特征\n* [Google Tesseract 的 Python 封装库](https:\u002F\u002Fgithub.com\u002Fmadmaze\u002Fpytesseract)\n### 深度学习特征\n* [Keras 预训练模型的特征提取](https:\u002F\u002Fkeras.io\u002Fapplications\u002F)\n* [在图像聚类中使用 Keras 预训练模型进行特征提取](https:\u002F\u002Fmedium.com\u002F@franky07724_57962\u002Fusing-keras-pre-trained-models-for-feature-extraction-in-image-clustering-a142c6cdf5b1)\n\n\n## 分类数据\n* [理解特征工程（第 2 部分）—— 分类数据](https:\u002F\u002Ftowardsdatascience.com\u002Funderstanding-feature-engineering-part-2-categorical-data-f54324193e63)\n### 独热编码\n* [为什么要在机器学习中对数据进行独热编码？](https:\u002F\u002Fmachinelearningmastery.com\u002Fwhy-one-hot-encode-data-in-machine-learning\u002F)\n* [如何在 Python 中对序列数据进行独热编码](https:\u002F\u002Fmachinelearningmastery.com\u002Fhow-to-one-hot-encode-sequence-data-in-python\u002F)\n* [sklearn.preprocessing.OneHotEncoder](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.preprocessing.OneHotEncoder.html)\n* [Keras - to_categorical](https:\u002F\u002Fkeras.io\u002Futils\u002F#to_categorical)\n### 计数编码\n* [特征工程：计数编码](https:\u002F\u002Fwww.slideshare.net\u002FHJvanVeen\u002Ffeature-engineering-72376750\u002F11)\n### 标签编码\n* [scikit-learn 中的标签编码](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.preprocessing.LabelEncoder.html)\n* [特征工程：标签编码](https:\u002F\u002Fwww.slideshare.net\u002FHJvanVeen\u002Ffeature-engineering-72376750\u002F9)\n### 虚拟编码\n* [虚拟编码：方法与原因](http:\u002F\u002Fwww.statisticssolutions.com\u002Fdummy-coding-the-how-and-why\u002F)\n* [pandas.get_dummies](https:\u002F\u002Fpandas.pydata.org\u002Fpandas-docs\u002Fstable\u002Fgenerated\u002Fpandas.get_dummies.html)\n* [独热编码与虚拟编码的区别](https:\u002F\u002Fstats.stackexchange.com\u002Fquestions\u002F224051\u002Fone-hot-vs-dummy-encoding-in-scikit-learn)\n### 均值编码\n* [分类特征的似然编码](https:\u002F\u002Fwww.kaggle.com\u002Ftnarik\u002Flikelihood-encoding-of-categorical-features)\n* [Python 中用于分类特征的目标编码](https:\u002F\u002Fwww.kaggle.com\u002Fogrellier\u002Fpython-target-encoding-for-categorical-features)\n* [均值编码时添加方差列](https:\u002F\u002Fwww.kaggle.com\u002Fgeneral\u002F16927#95887)\n### 哈希化\n* [维基百科上的特征哈希化](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FFeature_hashing)\n* [Vowpal Wabbit 中的特征哈希化与提取](https:\u002F\u002Fgithub.com\u002FVowpalWabbit\u002Fvowpal_wabbit\u002Fwiki\u002FFeature-Hashing-and-Extraction)\n* [scikit-learn 中的特征哈希化](http:\u002F\u002Fscikit-learn.org\u002Fstable\u002Fmodules\u002Fgenerated\u002Fsklearn.feature_extraction.FeatureHasher.html)\n\n\n## 时间序列数据\n* [自动提取时间序列中的相关特征](http:\u002F\u002Ftsfresh.readthedocs.io)\n* [使用 Python 对时间序列数据进行基础特征工程](https:\u002F\u002Fmachinelearningmastery.com\u002Fbasic-feature-engineering-time-series-data-python\u002F)\n### 滑动窗口特征\n* [pandas.DataFrame.rolling](https:\u002F\u002Fpandas.pydata.org\u002Fpandas-docs\u002Fversion\u002F0.22\u002Fgenerated\u002Fpandas.DataFrame.rolling.html)\n### 滞后特征\n* [使用 pandas 滞后时间序列数据以研究因果关系](https:\u002F\u002Fmedium.com\u002F@NatalieOlivo\u002Fuse-pandas-to-lag-your-timeseries-data-in-order-to-examine-causal-relationships-f8186451b3a9)\n\n\n## 地理空间数据\n* [地理空间特征工程与可视化](https:\u002F\u002Fwww.kaggle.com\u002Fcamnugent\u002Fgeospatial-feature-engineering-and-visualization)\n* [使用 Python 入门地理空间数据](https:\u002F\u002Fgithub.com\u002FSocialDataSci\u002FGeospatial_Data_with_Python\u002Fblob\u002Fmaster\u002FIntro%20to%20Geospatial%20Data%20with%20Python.ipynb)\n\n\n[返回顶部](#contents)","# awesome-feature-engineering 快速上手指南\n\n`awesome-feature-engineering` 并非一个可直接安装的 Python 库，而是一个精选的**特征工程技术资源清单**。它汇总了针对数值、文本、图像、类别、时间序列及地理空间数据的各种处理方法、理论文章及对应的代码实现库（如 scikit-learn, pandas, gensim 等）。\n\n本指南将指导你如何搭建环境，并利用该清单中推荐的主流工具快速开始特征工程实践。\n\n## 环境准备\n\n在开始之前，请确保你的开发环境满足以下要求：\n\n*   **操作系统**：Windows, macOS 或 Linux\n*   **Python 版本**：推荐 Python 3.8 及以上版本\n*   **包管理器**：pip 或 conda\n\n### 前置依赖安装\n\n根据清单内容，核心依赖主要集中在数据处理和机器学习领域。建议使用国内镜像源加速安装。\n\n**推荐使用 pip 安装核心套件：**\n\n```bash\npip install -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple \\\n    pandas \\\n    numpy \\\n    scikit-learn \\\n    scipy \\\n    matplotlib \\\n    seaborn\n```\n\n**针对特定数据类型的可选依赖：**\n\n*   **文本处理**：`gensim`, `nltk`, `spacy`\n*   **图像处理**：`opencv-python`, `pillow`, `scikit-image`, `keras` (或 `tensorflow`\u002F`pytorch`)\n*   **时间序列**：`tsfresh`\n*   **自动特征生成**：`featuretools`\n\n```bash\npip install -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple \\\n    gensim nltk opencv-python pillow scikit-image tsfresh featuretools\n```\n\n## 安装步骤\n\n由于本项目是资源列表，无需安装项目本身。你只需克隆仓库以便查阅文档，或直接参考下文的使用示例调用相关库。\n\n**1. 克隆资源仓库（可选，用于离线查阅）：**\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Faikho\u002Fawesome-feature-engineering.git\ncd awesome-feature-engineering\n```\n\n**2. 验证环境：**\n\n运行以下 Python 代码确认核心库已就绪：\n\n```python\nimport pandas as pd\nimport sklearn\nimport numpy as np\n\nprint(f\"Pandas version: {pd.__version__}\")\nprint(f\"Scikit-learn version: {sklearn.__version__}\")\nprint(\"Environment ready for Feature Engineering!\")\n```\n\n## 基本使用\n\n以下示例展示了如何利用清单中推荐的技术，对不同类型的数据进行基础特征工程。\n\n### 1. 数值型数据 (Numeric Data)\n**技术**：标准化 (Scaling) 与 分箱 (Binning)\n**对应库**：`sklearn.preprocessing`, `pandas`\n\n```python\nimport pandas as pd\nfrom sklearn.preprocessing import StandardScaler\nimport numpy as np\n\n# 模拟数据\ndf = pd.DataFrame({'age': [25, 32, 47, 51, 62], 'income': [30000, 45000, 80000, 92000, 120000]})\n\n# 1. Scaling (标准化)\nscaler = StandardScaler()\ndf[['age_scaled', 'income_scaled']] = scaler.fit_transform(df[['age', 'income']])\n\n# 2. Quantization and Binning (分箱)\ndf['age_bin'] = pd.cut(df['age'], bins=[0, 30, 50, 100], labels=['Young', 'Middle', 'Senior'])\n\nprint(df.head())\n```\n\n### 2. 类别型数据 (Categorical Data)\n**技术**：独热编码 (One Hot Encoding) 与 均值编码 (Mean Encoding)\n**对应库**：`pandas`, `sklearn`\n\n```python\nfrom sklearn.preprocessing import OneHotEncoder\n\n# 模拟数据\ndf_cat = pd.DataFrame({\n    'city': ['Beijing', 'Shanghai', 'Beijing', 'Guangzhou', 'Shanghai'],\n    'target': [1, 0, 1, 0, 1] # 假设的目标变量\n})\n\n# 1. One Hot Encoding (使用 pandas)\ndf_dummies = pd.get_dummies(df_cat, columns=['city'], prefix='city')\n\n# 2. Mean Encoding (手动实现示例：用目标均值替换类别)\nmean_enc = df_cat.groupby('city')['target'].mean()\ndf_cat['city_mean_enc'] = df_cat['city'].map(mean_enc)\n\nprint(df_dummies)\nprint(df_cat)\n```\n\n### 3. 文本数据 (Textual Data)\n**技术**：TF-IDF 与 词袋模型 (Bag of Words)\n**对应库**：`sklearn.feature_extraction.text`\n\n```python\nfrom sklearn.feature_extraction.text import TfidfVectorizer, CountVectorizer\n\ndocuments = [\n    \"机器学习是人工智能的核心\",\n    \"深度学习属于机器学习的子集\",\n    \"自然语言处理需要大量的文本数据\"\n]\n\n# 1. Bag of Words\ncount_vec = CountVectorizer()\nbow_matrix = count_vec.fit_transform(documents)\nprint(\"BoW Shape:\", bow_matrix.shape)\n\n# 2. TF-IDF\ntfidf_vec = TfidfVectorizer()\ntfidf_matrix = tfidf_vec.fit_transform(documents)\nprint(\"TF-IDF Shape:\", tfidf_matrix.shape)\n```\n\n### 4. 时间序列数据 (Time Series Data)\n**技术**：滞后特征 (Lag Features) 与 滚动窗口 (Rolling Window)\n**对应库**：`pandas`\n\n```python\n# 模拟时间序列数据\ndates = pd.date_range(start='2023-01-01', periods=5, freq='D')\nts_df = pd.DataFrame({'date': dates, 'value': [10, 12, 11, 15, 14]})\nts_df.set_index('date', inplace=True)\n\n# 1. Lag Features (滞后 1 期)\nts_df['value_lag1'] = ts_df['value'].shift(1)\n\n# 2. Rolling Window Features (滚动平均值，窗口大小=2)\nts_df['value_roll_mean'] = ts_df['value'].rolling(window=2).mean()\n\nprint(ts_df)\n```\n\n### 5. 高级自动化特征工程\n**技术**：自动特征生成\n**对应库**：`featuretools` (清单推荐)\n\n```python\nimport featuretools as ft\n\n# 创建实体集 (EntitySet)\nes = ft.EntitySet(id=\"customer_data\")\n\n# 添加数据框 (示例)\n# transactions_df = ... \n# es = es.add_dataframe(dataframe_name=\"transactions\", dataframe=transactions_df, index=\"id\", ...)\n\n# 深度特征合成 (Deep Feature Synthesis)\n# feature_matrix, feature_defs = ft.dfs(entityset=es, target_dataframe_name=\"customers\", max_depth=2)\n# print(feature_matrix.head())\n```\n\n> **提示**：对于图像数据（如 CNN 特征提取）和复杂的地理空间数据处理，请参考原仓库中对应的 `Image Data` 和 `Geospatial Data` 章节链接，使用 `Keras`, `OpenCV` 或专用 GIS 库进行深入实践。","某电商数据科学团队正致力于构建用户流失预测模型，但原始数据中包含大量分布不均的数值型特征和复杂的类别变量，导致初期模型效果不佳。\n\n### 没有 awesome-feature-engineering 时\n- 面对偏态分布的连续数值（如用户消费金额），团队缺乏系统的转换指南，只能盲目尝试对数变换，无法有效利用 Box-Cox 或 Yeo-Johnson 等高级方法标准化数据分布。\n- 处理高基数类别特征（如成千上万个商品 ID）时，仅知道简单的独热编码，导致特征维度爆炸，且容易忽略均值编码（Mean Encoding）等能保留目标信息的高效技巧。\n- 在挖掘特征交互关系时，完全依赖人工经验构造交叉项，不仅效率低下，还遗漏了通过多项式特征或聚类生成的深层隐含模式。\n- 缺乏统一的知识索引，团队成员需花费大量时间在零散的博客和文档中搜索特定技术实现，严重拖慢了实验迭代节奏。\n\n### 使用 awesome-feature-engineering 后\n- 团队快速定位并应用了 Yeo-Johnson 变换处理非正态数值特征，显著提升了模型对异常值的鲁棒性，使数据分布更符合算法假设。\n- 针对高基数类别数据，直接采用列表中推荐的均值编码和计数编码方案，在大幅降低维度的同时，有效保留了特征与目标变量的关联性。\n- 借助 Featuretools 和多阶多项式特征生成技术，自动挖掘出“用户活跃度×最近购买时间”等强解释性交互特征，模型区分度明显增强。\n- 依托其结构化的资源分类，工程师能按需速查从文本 TF-IDF 到时序滞后特征的各类实现方案，将特征工程阶段的研发周期缩短了 40%。\n\nawesome-feature-engineering 通过提供系统化、全覆盖的特征工程技术图谱，帮助团队将原本依靠直觉的“手工艺术”转化为高效可复用的“标准工程”，直接推动了模型精度的突破。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Faikho_awesome-feature-engineering_9cb3727a.png","aikho","Andrei Khobnia","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Faikho_e2c270ab.png","Machine Learning and AI Lead",null,"United States","AI_Kho_","https:\u002F\u002Fgithub.com\u002Faikho",598,190,"2026-04-16T18:54:08","NOASSERTION","","未说明",{"notes":89,"python":87,"dependencies":90},"该仓库是一个机器学习特征工程技术的资源列表（Awesome List），并非单一的可执行软件工具。它汇总了多种不同技术栈（如统计学习、自然语言处理、计算机视觉等）的库和教程链接。具体的运行环境需求取决于用户选择实现的特定特征工程技术（例如，使用深度学习提取图像特征需要 GPU 和 Keras\u002FTensorFlow，而仅使用 Pandas 进行分箱操作则仅需 CPU）。建议根据具体选用的算法参考对应链接中的文档来配置环境。",[91,92,93,94,95,96,97,98,99,100],"scikit-learn","pandas","scipy","numpy","gensim","opencv","Pillow","pytesseract","keras","nltk",[16,102,14,13,15],"其他",[104,105,106,107,108],"machine-learning","ai","data-science","feature-engineering","feature-extraction","2026-03-27T02:49:30.150509","2026-04-19T09:38:42.526229",[],[]]