Uru:
- Ikike iji guzobe usoro nyocha nyocha ugboro ugboro nke na-ebu ma na-ehicha telemetry, nwalee na mmepụta data na pandas.
- Ikike ịghọta na nyochaa ahịrị mmepụta site n'ahịrị mgbe ị na-anata koodu, njirimara na enyemaka nhụta site na ọgụgụ isi
- Ikike inyocha nsonaazụ nyocha maka ịdị n'otu nkeji, ntapu data na mmụgharị
Na nkeji ndị gara aga, anyị na-eji ọgụgụ isi dị ka "onye ndụmọdụ". Na nkeji a, anyị na-aga n'ihu otu nzọụkwụ wee guzobe usoro ọrụ nke na-eji aka nke aka anyị nyochaa data ụgbọ ala, na-eji Python. Ebumnuche abụghị ime gị onye nrụpụta ngwanrọ; Ọ bụ ime onye injinia nwere ike ịghọta ma nyochaa ahịrị koodu ahụ site na ahịrị mgbe ị na-enweta enyemaka koodu site na AI. N'ihi na koodu nke AI mepụtara nwere ike ghara ịdị njọ, dịka ederede nke AI mepụtara; nwere ike ịgbagha olu, ihipu data, kọlụm na-ezighi ezi n'etiti. Ịgba koodu ahụ n'aghọtaghị ya dị ka ibipụta akụkọ na-edeghị akwụkwọ.
Python gịnị kpatara? N'ihi na ọ bụ ọkọlọtọ de facto na nyocha data: ị nwere ike hazie telemetry, nwalee na mmepụta data na pandas (tabular data), ọnụọgụ (nhazi ọnụọgụ), matplotlib (plot) na scikit-learn (ịmụ ihe igwe).
Nzọụkwụ isii na-emegharị nyocha
Nyocha siri ike na-agbaso otu usoro ahụ mgbe niile:
- Ibu: Gụọ data sitere na faịlụ ahụ.
- Nyochaa: Akụkụ, kọlụm, ụdị data, ụkpụrụ efu na-efu.
- Ọ dị ọcha: na-efu efu/outlier, otu, timestamp mgbazi.
- Njirimara wepụta: Nweta mgbanwe bara uru.
- Nyocha/ihe nlere anya: Statistics, visualization, ma ọ bụ ihe nlereanya.
- Nyochaa ma kọọ akụkọ: Nkwanye nsonaazụ, nlele olu/nyocha, ndekọ.
Ndụmọdụ: Mgbe ị na-arịọ AI maka koodu, kwuo "kọpụta ihe ị na-eme na usoro ọ bụla wee dee echiche gị." Yabụ ị nwere ike nyochaa koodu ahụ ka ị na-agụ ya.
Ihe atụ nzọụkwụ site na nzọụkwụ: nyocha telemetry
Koodu na-esote na-ebu ndekọ CAN/telemetry ma na-enyocha nyocha. (Rịba ama: jide n'aka na ị ghọtara koodu ndị ahụ tupu ịme ha; aha kọlụm dịgasị iche dabere na data gị.)
mbubata pandas dị ka pd# 1) Ibu: CSV ọkara nwere ntụpọ, nke mbụ kọlụm timestampdf = pd.read_csv("telemetry.csv", parse_dates=["oge"])# 2) Checkprint(df.shape) # ole ahịrị, ole columnsprint (df.dtypes) # ụdị nke ọ bụla (df.dtypes) # nchikota nke ọ bụla. ọnụọgụgụ ụkpụrụ efu na kọlụm ọ bụla(df.describe()) # nchịkọta nchịkọta: min, max, nkezi
Mpụta nkọwa () bụ ohere mbụ gị iji nyochaa: ọ bụrụ na ọnụ ahịa max nke engine bụ 45,000 rpm (njin njem njem ~ 7,000 rpm), enwere otu ma ọ bụ ihe mmetụta.
Iwu pandas ndị a na-ejikarị eme ihe na usoro nyocha na ihe ha na-eme:
iwu
Kedu ihe na-eme
Kedu ihe ọ na-akwado?
df.ọdịdị
Ọnụọgụ nke ahịrị/ogidi
Ọ bụ nha a tụrụ anya ya?
df.dụdị
Ụdị kọlụm
Kọlụm ọnụọgụ aghọọla ederede?
df.isna().sum()
Ọnụ ahịa efu efu
Ego ole ka ọ dị?
df.akọwa()
Min/max/nkezi
Ọ̀ bụ ezi uche n'ụzọ anụ ahụ́?
df.duplicated().nchịkọta()
ahiri oyiri
Enwere ndebanye aha abụọ?
# 3) doro anya: gosi ụkpụrụ na-agaghị ekwe omume n'anụ ahụ
Kpachara anya: Ehichapụla ihe mpụta ozugbo; Buru ụzọ ghọta ihe kpatara o ji bụrụ ihe dịpụrụ adịpụ. Ọ bụ ihe omume n'ezie (ọkụ mberede) ma ọ bụ ọdịda sensọ? Ihichapụ nke kpuru ìsì nwere ike zoo ezigbo mmejọ.
# 4) Wepụ atụmatụ: okpomọkụ ịrị elu ọnụego (derivative) df = df.sort_values ("oge") df ["sic_increase_speed"] = df ["moto_sic"].diff () / df ["oge"].diff () .dt.total_seconds ()# 5) Simple visualizationimport mattplot. pltplt.plot(df["oge"], df["motor_sic") plt.xlabel("Oge"); plt.ylabel("Engine okpomọkụ (C)") plt.title("N'ezie okpomọkụ engine")plt.show()
Na-egbochi mwepu data na Python
Njehie kachasị dị ize ndụ mgbe ị na-ewu ụdị amụma bụ nkwụsị data (nkeji 5): mgbe ihe nlereanya ahụ na-ahụ ozi na-enweghị ike ịmara n'oge amụma. Iwu ọla edo iji zere nke a na usoro oge: ụgbọ oloko na oge gara aga, nwalee n'ọdịnihu - enweghị shuffling enweghị usoro.
from sklearn.model_selection mbubata train_test_split# FALSE: na-ekewa usoro oge na-agbapụta ọdịnihu # df["oge"]> ọnụ ụzọ] # ikpeazụ 20% ga-eme n'ọdịnihu.
Akpachara anya: train_test_split na-emegharị data na ndabara (shuffle=Eziokwu). Na usoro oge, nke a na-agbagha ọdịnihu na agụmakwụkwọ ma na-emepụta akara dị elu ụgha. Ọ bụrụ na AI emeela nke a na koodu ọ na-emepụta, jide n'aka na ị ga-edozi ya.
Nkwekọrịta otu: nkịtị egbu egbu
Njehie kachasị njọ na ụgbọ ala bụ njehie unit: km / h ka m / s, Nm ka lb-ft, mmanya na kPa, ° C ruo K. Idebe akwụkwọ ọkọwa okwu nke ihe unit nke kọlụm ọ bụla dị na nyocha na idetu mgbanwe ndị ahụ n'ụzọ doro anya na-azọpụta ndụ.
# Detuo nkeji ahụ nke ọma = {"speed": "km/h", "motor_sic": "C", "nrụgide": "bar"}# Ntugharị doro anya ma ọ bụrụ na ọ dị mkpa (km/h -> m/s) df ["speed_ms"] = df["speed"] / 3.6
Obere ihe ọmụmụ
Ikpe 1 - Njehie ejiri nkọwa () jide. Onye nyocha na-agba ọsọ koodu site na AI ma mee atụmatụ dị iche iche; Nsonaazụ dị elu nke enweghị isi. Mgbe anyị lere anya na mmepụta nkọwa () , anyị na-ahụ na a na-abanye ike batrị na Wh na ụfọdụ ahịrị na kWh na ndị ọzọ (1000 ugboro ọdịiche). Mgbe a na-ebute unit ahụ n'ụdị otu, nsonaazụ na-akawanye mma. Mmechi: Nchịkọta nchịkọta dị mfe gbochiri amụma ọjọọ.
Ikpe 2 - ọnyà mgbagwoju anya. Ụdị eyi breeki nke onye ọrụ bụ 98% ziri ezi na nhazi ule. Mgbe a na-enyocha koodu ahụ, enwere ike ịhụ na train_test_split (shuffle=True) na usoro oge na-agwakọta, nke pụtara na isi ihe ga-eme n'ọdịnihu na-abanye na ọzụzụ ahụ. Mgbe oge kewara ya, izi ezi na-agbada ruo 80%, mana ọ bụ ihe ezi uche dị na ya ugbu a. Mkpebi: Naanị n'ihi na koodu AI na-arụ ọrụ, ọ bụghị ihe ziri ezi; Mmadụ jidere ntapu ahụ.
Ikpe 3 - Ịghọta ihe dịpụrụ adịpụ. N'ime ndekọ na-adịgide adịgide, koodu AI na-ehichapụ ụkpụrụ nhụsianya na-akpaghị aka. Onye injinia na-eleba anya n'ihe ndị ehichapụrụ; Ndị a bụ oge mmalite mgbawa nke ule ahụ nwere mmasị na ya. A na-ewepụ nhichapụ ma na-ewere mmebi iwu na nyocha dị iche iche. Nsonaazụ: N'okpuru "Nhicha" enwere ike ihichapụ ezigbo mgbaama; ajụjụ ọ bụla nzọụkwụ.
ngwa ngwa ndebiri
Ụdị 1 - Koodu arịrịọ (ya na nkọwa):
Ọrụ: Ị bụ Python data analyst mentor.Task: Dee koodu na-ebu ma na-elele telemetry CSV.Context: Ogidi: oge, ọsọ(km/h), engine_sic(C), mgbanwe(rpm) .Mgbochi: Kwupụta n'ahịrị ọ bụla; Kọwaa ihe nlele emere na ihe kpatara ya; tinye nlele uru na-agaghị ekwe omume; na-ehichapụ ihe ọ bụla n'ime ihe ọ bụla. Mmepụta: koodu ekwupụtara + nke mmepụta m kwesịrị ile anya na ihe kpatara ya.
Ụdị 2 - Nleba anya nhụcha:
Ọrụ: Ị bụ onye nyocha koodu mmụta igwe. Ọrụ: Lelee koodu nkewa ọzụzụ/nnwale ndị a maka ntapu data. Okwu: Nke a bụ usoro oge (telemetry ụgbọ ala). Mgbochi: Dọọ aka na ntị ma ọ bụrụ na enwere mgbanwe na-enweghị usoro; Tụọ aro ma kwado nkewa site na oge. Mmepụta: Nchọpụta + koodu agbaziri + nkọwa.
Ụdị 3 - Nkwenye nkeji:
Ọrụ: Ị bụ onye na-enyocha ogo data.Arụmọrụ: Na-atụ aro nlele ndị na-achọ enweghị nkwekọrịta otu na DataFrame.Context: Ike nwere ike ịbụ kWh n'ahịrị ụfọdụ yana Wh na ndị ọzọ. Mmepụta: Lelee koodu + ka ị ga-esi chọta ụkpụrụ na-enyo enyo.
Ụdị 4 - Nleba anya + ikwu:
Ọrụ: Ị bụ ọkachamara nhụpụta data. Ọrụ: Dee koodu na-echepụta usoro okpomọkụ nke injin na ọnụego mmụba. Mgbochi: Debe anyụike na nkeji; anya akara anomaly; ekwula ajọ mmejọ mgbe ị na-akọwa eserese ahụ. Mmepụta: Koodu + ihe ị ga-achọ na eserese ahụ.
Ngwa ngwa adịghị ike / Ike siri ike
Ngwa ngwa adịghị ike:
Jiri data a wuo ihe nlereanya.
Ọ bụghị ihe doro anya nke lekwasịrị anya, nke ngalaba, nke nkwenye; AI nwere ike wepụta koodu gbagọrọ agbagọ, leaky, koodu kpuru otu.
Mgbasa ozi siri ike:
Ọrụ: Ị bụ onye ndụmọdụ Python ML. Ọrụ: Dee usoro mmalite ọrụ iji buo amụma mkpuchi breeki ga-eyi ma gosipụta ọnyà nkwado. Okwu: Usoro oge telemetry; ebumnuche: ọkpụrụkpụ mpempe akwụkwọ fọdụrụnụ.Constraint: Kewaa usoro oge site na oge (enweghị shuffling); àgwà ọkọlọtọ n'ihe ize ndụ nke ntapu data; akụkụ akwụkwọ; kọwaa nzọụkwụ ọ bụla; Dee ihe nlele achọrọ tupu nsonaazụ a pụta n'ọhịa. Mmepụta: Koodu ekwuputara + ndepụta nyocha.
Mmejọ ndị nkịtị
- Na-agba ọsọ koodu na-aghọtaghị ya. Koodu AI nwekwara ike mebie; Gụọ ahịrị n'ahịrị.
- Usoro oge agwakọta. shuffle=Eziokwu na-agbapụta ọdịnihu wee mepụta akara adịgboroja.
- Jiri kpuru ìsì hichapụ ihe dịpụrụ adịpụ. Enwere ike ikpochapụ mgbama (mmalite mmejọ) n'ezie.
- Anaghị edekọ ngalaba ahụ. Njehie dị ka km/h vs m/s, Wh vs kWh na-eto nwayọ.
- Na-amafe nkọwa nkọwa ()/elele nzọụkwụ. Ọtụtụ mperi na-apụta na nchịkọta nchịkọta nke mbụ.
Na nchịkọta
- Python (pandas, numpy, matplotlib, scikit-learn) bụ ụkpụrụ nke nyocha data ụgbọ ala.
- Nyocha ugboro ugboro: ibu, nyochaa, dị ọcha, njirimara, nyochaa, kwadoro na akụkọ.
- Ọ dị mkpa ịghọta na nyochaa koodu nke AI na-emepụta ahịrị site na ahịrị; Naanị n'ihi na ọ na-arụ ọrụ apụtaghị na ọ ziri ezi.
- Maintain past/future distinction in time series; Mgbanwe nke enweghị usoro na-emepụta mpụ data.
- Nkwekọrịta otu na nkọwa dịpụrụ adịpụ bụ nke dị jụụ mana isi ihe dị mkpa nke nkwenye.
Ọrụ ngwa
Were obere ihe nhazi data (ezigbo telemetry ma ọ bụ sịntetik). (1) N'ịgbaso usoro usoro isii, mepụta koodu ntinye na njikwa na Template 1 wee gosi na ị ghọtara ahịrị ọ bụla. (2) Find at least one suspicious value in the describe() output and investigate why. (3) Na ọrụ amụma, oge ọzụzụ / ule kewara wee lelee ihe ize ndụ nke ntapu na Template 2. (4) Detuo nkeji nke kọlụm ọ bụla ị na-eji na akwụkwọ ọkọwa okwu.
ndetu
- [] Edobere m nyocha ahụ na usoro usoro isii.
- [ ] Agụrụ m wee ghọta koodu AI mepụtara site n'ahịrị.
- [] Achọkwara m ụkpụrụ enyo enyo na nkọwa () / nyocha.
- [] Ana m ekewa usoro oge site na oge (enweghị shuffling).
- [] Enyere m njirimara ndị dị n'ihe ize ndụ nke ntapu data.
- [ ] Edere m nkeji nke kọlụm ọ bụla wee dee mgbanwe ndị ahụ n'ụzọ doro anya.