찾다
기술 주변기기일체 포함Featuretools를 사용하여 자동 기능 엔지니어링 구현

Featuretools를 사용하여 자동 기능 엔지니어링 구현

Jan 22, 2024 pm 03:18 PM
기능 엔지니어링

Featuretools를 사용하여 자동 기능 엔지니어링 구현

Featuretools는 자동화된 기능 엔지니어링을 위한 Python 라이브러리입니다. 기능 엔지니어링 프로세스를 단순화하고 기계 학습 모델의 성능을 향상시키는 것을 목표로 합니다. 라이브러리는 원시 데이터에서 유용한 기능을 자동으로 추출하여 사용자가 시간과 노력을 절약하는 동시에 모델 정확도를 높이는 데 도움을 줍니다.

Featuretools를 사용하여 기능 엔지니어링을 자동화하는 방법에 대한 단계는 다음과 같습니다.

1단계: 데이터 준비

Featuretools를 사용하기 전에 데이터 세트를 준비해야 합니다. 데이터 세트는 Pandas DataFrame 형식이어야 하며, 여기서 각 행은 관찰을 나타내고 각 열은 기능을 나타냅니다. 분류 및 회귀 문제의 경우 데이터 세트에 목표 변수가 포함되어야 하고, 클러스터링 문제의 경우 데이터 세트에 목표 변수가 필요하지 않습니다. 따라서 Featuretools를 사용할 때 데이터 세트가 이러한 요구 사항을 충족하는지 확인하여 기능 엔지니어링 및 기능 생성을 효율적으로 수행할 수 있습니다.

2단계: 엔터티 및 관계 정의

특성 엔지니어링을 위해 Featuretools를 사용할 때는 먼저 엔터티와 관계를 정의해야 합니다. 엔터티는 관련된 특성 집합을 포함하는 데이터 집합의 하위 집합입니다. 예를 들어 전자상거래 웹사이트에서는 주문, 사용자, 제품, 결제 등이 서로 다른 개체로 처리될 수 있습니다. 관계는 엔터티 간의 연결입니다. 예를 들어 주문은 사용자와 연결될 수 있으며 사용자는 여러 제품을 구매할 수 있습니다. 엔터티와 관계를 명확하게 정의함으로써 데이터 세트의 구조를 더 잘 이해할 수 있으므로 기능 생성 및 데이터 분석이 용이해집니다.

3단계: 엔터티 세트 만들기

Featuretools를 사용하면 엔터티와 관계를 정의하여 엔터티 세트를 만들 수 있습니다. 엔터티 세트는 여러 엔터티의 모음입니다. 이 단계에서는 각 엔터티의 이름, 데이터 세트, 인덱스, 변수 유형, 타임스탬프 등을 정의해야 합니다. 예를 들어 주문 및 사용자 엔터티를 포함하는 엔터티 세트는 다음 코드를 사용하여 생성할 수 있습니다.

import featuretools as ft

# Create entity set
es=ft.EntitySet(id='ecommerce')

# Define entities
orders=ft.Entity(id='orders',dataframe=orders_df,index='order_id',time_index='order_time')
users=ft.Entity(id='users',dataframe=users_df,index='user_id')

# Add entities to entity set
es=es.entity_from_dataframe(entity_id='orders',dataframe=orders_df,index='order_id',time_index='order_time')
es=es.entity_from_dataframe(entity_id='users',dataframe=users_df,index='user_id')

여기에서는 EntitySet을 사용하여 "ecommerce"라는 엔터티 세트를 생성하고 Entity, Orders 및 Users를 사용하여 두 엔터티를 정의합니다. . 주문 엔터티의 경우 주문 ID를 인덱스로, 주문 시간을 타임스탬프로 지정했습니다. 사용자 엔터티의 경우 사용자 ID만 인덱스로 지정했습니다.

4단계: 관계 정의

이 단계에서는 엔터티 간의 관계를 정의해야 합니다. Featuretools를 사용하면 엔터티 간의 공유 변수, 타임스탬프 등을 통해 관계를 정의할 수 있습니다. 예를 들어 전자상거래 웹사이트에서 각 주문은 사용자와 연결됩니다. 주문과 사용자 간의 관계는 다음 코드를 사용하여 정의할 수 있습니다.

# Define relationships
r_order_user = ft.Relationship(orders['user_id'], users['user_id'])
es = es.add_relationship(r_order_user)

여기에서는 Relationship을 사용하여 주문과 사용자 간의 관계를 정의하고 add_relationship을 사용하여 엔터티 세트에 추가했습니다.

5단계: 심층 특징 합성 알고리즘 실행

위 단계를 완료한 후 Featuretools의 심층 특징 합성 알고리즘을 사용하여 자동으로 특징을 생성할 수 있습니다. 이 알고리즘은 집계, 변환, 조합과 같은 새로운 기능을 자동으로 생성합니다. 다음 코드를 사용하여 심층 기능 합성 알고리즘을 실행할 수 있습니다.

# Run deep feature synthesis algorithm
features, feature_names = ft.dfs(entityset=es, target_entity='orders', max_depth=2)

여기에서는 dfs 함수를 사용하여 심층 기능 합성 알고리즘을 실행하고 대상 엔터티를 순서 엔터티로 지정하고 최대 깊이를 2로 설정합니다. 이 함수는 새로운 기능과 기능 이름 목록이 포함된 DataFrame을 반환합니다.

6단계: 모델 구축

새로운 기능을 얻은 후에는 이를 사용하여 기계 학습 모델을 훈련할 수 있습니다. 다음 코드를 사용하여 원본 데이터세트에 새로운 기능을 추가할 수 있습니다.

# Add new features to original dataset
df=pd.merge(orders_df,features,left_on='order_id',right_on='order_id')

여기에서는 훈련 및 테스트를 위해 병합 기능을 사용하여 원본 데이터세트에 새로운 기능을 추가합니다. 그런 다음 새로운 기능을 사용하여 기계 학습 모델을 훈련할 수 있습니다. 예:

# Split dataset into train and test sets
X_train, X_test, y_train, y_test = train_test_split(df[feature_names], df['target'], test_size=0.2, random_state=42)

# Train machine learning model
model = RandomForestClassifier()
model.fit(X_train, y_train)

# Evaluate model performance
y_pred = model.predict(X_test)
accuracy_score(y_test, y_pred)

여기에서는 Random Forest 분류기를 기계 학습 모델로 사용하고 훈련 세트를 사용하여 모델을 훈련합니다. 그런 다음 테스트 세트를 사용하여 정확도를 평가 지표로 사용하여 모델 성능을 평가합니다.

요약:

Featuretools를 사용하여 기능 엔지니어링을 자동화하는 단계에는 데이터 준비, 엔터티 및 관계 정의, 엔터티 세트 생성, 관계 정의, 심층 기능 합성 알고리즘 실행 및 모델 구축이 포함됩니다. Featuretools는 원시 데이터에서 유용한 기능을 자동으로 추출하여 사용자가 많은 시간과 노력을 절약하고 기계 학습 모델의 성능을 향상시키는 데 도움을 줍니다.

위 내용은 Featuretools를 사용하여 자동 기능 엔지니어링 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 网易伏羲에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
신속한 엔지니어링에서 생각의 그래프는 무엇입니까?신속한 엔지니어링에서 생각의 그래프는 무엇입니까?Apr 13, 2025 am 11:53 AM

소개 신속한 엔지니어링에서 "Thought of Thought"는 그래프 이론을 사용하여 AI의 추론 과정을 구성하고 안내하는 새로운 접근법을 나타냅니다. 종종 선형 S와 관련된 전통적인 방법과 달리

Genai 에이전트와 함께 조직의 이메일 마케팅을 최적화하십시오Genai 에이전트와 함께 조직의 이메일 마케팅을 최적화하십시오Apr 13, 2025 am 11:44 AM

소개 축하해요! 당신은 성공적인 사업을 운영합니다. 웹 페이지, 소셜 미디어 캠페인, 웹 세미나, 컨퍼런스, 무료 리소스 및 기타 소스를 통해 매일 5000 개의 이메일 ID를 수집합니다. 다음 명백한 단계는입니다

Apache Pinot을 사용한 실시간 앱 성능 모니터링Apache Pinot을 사용한 실시간 앱 성능 모니터링Apr 13, 2025 am 11:40 AM

소개 오늘날의 빠르게 진행되는 소프트웨어 개발 환경에서 최적의 애플리케이션 성능이 중요합니다. 응답 시간, 오류율 및 자원 활용과 같은 실시간 메트릭 모니터링 메인이 도움이 될 수 있습니다.

Chatgpt가 10 억 명의 사용자를 쳤습니까? Openai CEO는'몇 주 만에 두 배가되었습니다Chatgpt가 10 억 명의 사용자를 쳤습니까? Openai CEO는'몇 주 만에 두 배가되었습니다Apr 13, 2025 am 11:23 AM

"얼마나 많은 사용자가 있습니까?" 그는 자극했다. Altman은“마지막으로 우리가 마지막으로 말한 것은 매주 5 억 명의 행위자이며 매우 빠르게 성장하고 있다고 생각합니다. 앤더슨은 계속해서“당신은 나에게 몇 주 만에 두 배가되었다고 말했습니다. “저는 그 개인이라고 말했습니다

Pixtral -12B : Mistral AI의 첫 번째 멀티 모드 모델 -Anuctics VidhyaPixtral -12B : Mistral AI의 첫 번째 멀티 모드 모델 -Anuctics VidhyaApr 13, 2025 am 11:20 AM

소개 Mistral은 최초의 멀티 모드 모델, 즉 Pixtral-12B-2409를 발표했습니다. 이 모델은 Mistral의 120 억 개의 매개 변수 인 NEMO 12B를 기반으로합니다. 이 모델을 차별화하는 것은 무엇입니까? 이제 이미지와 Tex를 모두 가져갈 수 있습니다

생성 AI 응용 프로그램을위한 에이전트 프레임 워크 - 분석 Vidhya생성 AI 응용 프로그램을위한 에이전트 프레임 워크 - 분석 VidhyaApr 13, 2025 am 11:13 AM

쿼리에 응답 할뿐만 아니라 자율적으로 정보를 모으고, 작업을 실행하며, 여러 유형의 데이터 (텍스트, 이미지 및 코드를 처리하는 AI 구동 조수가 있다고 상상해보십시오. 미래처럼 들리나요? 이것에서

금융 부문에서 생성 AI의 응용금융 부문에서 생성 AI의 응용Apr 13, 2025 am 11:12 AM

소개 금융 산업은 효율적인 거래 및 신용 가용성을 촉진함으로써 경제 성장을 주도하기 때문에 모든 국가 개발의 초석입니다. 거래가 발생하는 용이성 및 신용

온라인 학습 및 수동 공격 알고리즘 안내온라인 학습 및 수동 공격 알고리즘 안내Apr 13, 2025 am 11:09 AM

소개 소셜 미디어, 금융 거래 및 전자 상거래 플랫폼과 같은 소스에서 전례없는 속도로 데이터가 생성되고 있습니다. 이 지속적인 정보 스트림을 처리하는 것은 어려운 일이지만

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경