Automaattinen piirteiden suunnittelu Featuretoolsilla
EntitySet, DFS (Deep Feature Synthesis), piirreprimitiivit, pinoavat aggregoinnit.
Automaattinen piirteiden suunnittelu Featuretoolsilla on ilmainen Oppikaa tekoälyä Pythonilla-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Oppikaa tekoälyä Pythonilla-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Oppikaa tekoälyä Pythonilla-kurssilla on yhteensä 4 oppituntia.
Piirteiden luonnin automatisointi
Piirteiden manuaalinen suunnittelu on hidasta, ja yhdistelmiä on helppo jättää huomaamatta. Featuretools muodostaa relaatiodatasta automaattisesti monia ehdokaspiirteitä Deep Feature Synthesis -menetelmän avulla.
Relaatiodata ja entiteetit
Reaalimaailman data jakautuu usein useisiin toisiinsa liittyviin tauluihin, kuten asiakkaisiin, tilauksiin ja tuotteisiin. Featuretools mallintaa nämä suhteet ja muodostaa automaattisesti piirteitä, jotka kokoavat tietoa linkitettyjen taulujen yli.
EntitySetin luominen
EntitySet on säilö, joka sisältää dataframe-kehykset ja niiden väliset suhteet. Aloittakaa luomalla tyhjä EntitySet.
import featuretools as ft
es = ft.EntitySet(id="customers_data")Dataframe-kehysten lisääminen
es.add_dataframe rekisteröi taulun. Määritätte sen index-indeksin (yksilöivän avaimen) ja halutessanne ajallista dataa varten myös time_index-indeksin.
import featuretools as ft
es = es.add_dataframe(
dataframe_name="customers",
dataframe=customers_df,
index="customer_id",
)
es = es.add_dataframe(
dataframe_name="orders",
dataframe=orders_df,
index="order_id",
time_index="order_date",
)Suhteiden määrittäminen
Kertokaa Featuretoolsille, miten taulut liittyvät toisiinsa add_relationship-menetelmällä: vanhemman avain yhdistää lapsitaulun viiteavaimeen (yhdellä asiakkaalla on useita tilauksia).
es = es.add_relationship(
"customers", "customer_id",
"orders", "customer_id",
)Deep Feature Synthesis
DFS (ft.dfs) on moottori, joka ketjuttaa operaatioita suhteiden yli ja luo piirteitä, kuten "tilauksen keskimääräinen arvo asiakasta kohden", ilman että jokaista piirrettä tarvitsee ohjelmoida erikseen.
import featuretools as ft
feature_matrix, feature_defs = ft.dfs(
entityset=es,
target_dataframe_name="customers",
)Aggregointiprimitiivit
Aggregointiprimitiivit kokoavat lapsirivien tiedot vanhemmalle: SUM, MEAN, COUNT, MAX ja STD. Ne muuttavat useat tilaukset asiakaskohtaisiksi tilastoiksi.
feature_matrix, defs = ft.dfs(
entityset=es,
target_dataframe_name="customers",
agg_primitives=["mean", "sum", "count", "max"],
)Muunnosprimitiivit
Muunnosprimitiivit käsittelevät yksittäisen rivin tai taulun sisäisiä tietoja: esimerkiksi poimivat päivämäärästä kuukauden, laskevat kuluneen ajan tai ottavat itseisarvon.
feature_matrix, defs = ft.dfs(
entityset=es,
target_dataframe_name="customers",
trans_primitives=["month", "weekday", "time_since_previous"],
)Syvyyden hallinta max_depth-parametrilla
max_depth rajoittaa ketjutettavien primitiivien määrää. Syvyys 1 tarkoittaa suoria aggregointeja; syvyys 2 käyttää ensin muunnosta ja sitten aggregointia (esimerkiksi tilausten viikonpäivien keskiarvoa). Suurempi syvyys tuottaa enemmän, mutta riskialttiimpia piirteitä.
feature_matrix, defs = ft.dfs(
entityset=es,
target_dataframe_name="customers",
max_depth=2,
)Piirrematriisin käyttäminen
Tuloksena syntyvä feature_matrix on kohde-entiteetin mukaan indeksoitu siisti dataframe-kehys, joka voidaan syöttää suoraan mallille. feature_defs dokumentoi jokaisen muodostetun piirteen.
print(feature_matrix.shape)
print(feature_matrix.head())
X = feature_matrix.fillna(0)
# now train any sklearn model on XVahvuudet ja varoitukset
Featuretools tuottaa nopeasti paljon piirteitä ja paljastaa relaatiodatan sisältämiä signaaleja. Se voi kuitenkin luoda satoja sarakkeita, joten käyttäkää sen kanssa piirrevalintaa. Välttäkää tietovuoto määrittämällä ajalliselle datalle asianmukainen cutoff_time.
Pikatesti
Testatkaa tietonne Featuretoolsista.
Kertaus
Kertaus: Featuretools automatisoi piirteiden suunnittelun. Rakentakaa EntitySet, rekisteröikää taulut komennolla es.add_dataframe, määrittäkää suhteet ja suorittakaa sitten ft.dfs käyttäen max_depth-parametria. Aggregointiprimitiivit kokoavat lapsirivit vanhemmille; muunnosprimitiivit käsittelevät yksittäisen rivin sisäisiä tietoja. feature_matrix on valmis syötettäväksi mallille, mutta yhdistäkää se piirrevalintaan.
Opi Python tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 53
- Oppitunnit
- 225
Usein kysytyt kysymykset
Onko oppitunti ”Automaattinen piirteiden suunnittelu Featuretoolsilla” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Oppikaa tekoälyä Pythonilla-oppimispolun 3 oppituntia, myös oppitunnin “Automaattinen piirteiden suunnittelu Featuretoolsilla”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppikaa tekoälyä Pythonilla-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Automaattinen piirteiden suunnittelu Featuretoolsilla”?
EntitySet, DFS (Deep Feature Synthesis), piirreprimitiivit, pinoavat aggregoinnit. Harjoittelet Oppikaa tekoälyä Pythonilla-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Oppikaa tekoälyä Pythonilla-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Oppikaa tekoälyä Pythonilla-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.
Kuinka kauan ”Automaattinen piirteiden suunnittelu Featuretoolsilla”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Oppikaa tekoälyä Pythonilla-oppitunnilla?
Kyllä. Jokainen Oppikaa tekoälyä Pythonilla-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Piirteiden valintamenetelmät
- Interaktio- ja polynomipiirteiden luominen
- Kohdekoodaus ja edistynyt kategoristen muuttujien käsittely
- Automaattinen piirteiden suunnittelu Featuretoolsilla