Egység 4 / 12

Téradatok munkafolyamat QGIS és Python segítségével

Nyereség:

  • Képes mesterséges intelligencia használatára kód- és munkafolyamat-generálásban térbeli adatok feldolgozásához QGIS-sel és Python-nal (könyvtárak, mint például a GeoPandas)
  • Képes tesztelni az AI által előállított térkódot kis mintaadatokon, és ellenőrizni a koordinátarendszer- és geometriai hibákkal szemben
  • Képes megérteni az adatok titkosságát, és ellenőrizni kell az AI által generált szkriptet, mielőtt valós projektadatokon futtatná.

Az ismétlődő térbeli feladatok egy tervezési egységben (rétegek kivágása, pufferek rajzolása, területek kiszámítása, táblázatok kombinálása) órákig tartanak, és manuálisan hibákat okoznak. Két hatékony, ingyenes és nyílt forráskódú eszköz automatizálja ezeket a feladatokat: a QGIS (egy asztali GIS-szoftver) és a Python (egy olyan programozási nyelv, amely könyvtárakat tartalmaz téradatokhoz, például GeoPandas, Shapely, Rasterio). Az AI hihetetlenül gyorsan generál kódot és munkafolyamatot ezekhez az eszközökhöz: munkaszkriptet készít egy mondatos kérésből. De a mesterséges intelligencia olyan feltevésekkel ír kódot, amelyeket Ön nem lát – rossz koordinátarendszer, rossz mértékegység, olyan művelet, amely csendben törli az elemeket. Ez az oka annak, hogy minden mesterséges intelligencia által létrehozott térbeli kódot el kell olvasni és kis mintán kell tesztelni, mielőtt valós projektadatokon futtatnák. Ez az egység biztonságos térbeli automatizálást tanít AI segítségével, még akkor is, ha nem tudja, hogyan kell kódolni.

Miért QGIS és Python?

A QGIS lehetővé teszi a kattintással történő elemzést; Könnyen megtanulható, és Python konzolt is tartalmaz. A Python viszont lehetővé teszi, hogy ismétlődő feladatokat írjon egyszer, és futtasson több száz fájlban. A GeoPandas a tervezők legpraktikusabb könyvtára, amely a táblázatos adatokat (pandákat) a földrajzi adatokkal kombinálja: rétegeket olvas, szűr, puffereket rajzol, területeket számít ki egy kódsorral. Az AI nagyon jól írja a GeoPandas kódot; De a jól kinéző kód nem mindig a megfelelő kód.

Figyelem: Egy mesterséges intelligencia által írt szkript hiba nélkül futhat, és így is teljesen rossz eredményeket produkál. A „működött” és a „helyes” két különböző dolog. Az érvényesítés nem az, hogy a kód sikertelen, hanem az, hogy az eredmény megegyezik egy ismert hivatkozással.

Egy másik fontos fogalom a reprodukálhatóság: egy közintézményben végzett elemzést hónapokkal később valaki másnak meg kell ismételnie ugyanazokkal a lépésekkel. A manuális kattintással végrehajtott műveletek nem emlékeznek meg, és nem ellenőrizhetők; míg a Python-szkript egyszerre rögzíti a munkát, és ugyanazt az eredményt reprodukálja. A mesterséges intelligencia segítségével előállított kód tárolása a megjegyzésekkel együtt erősíti az elszámoltathatóságot és a vállalati memóriát. Tehát törekedjen az "olvasható, megjegyzésekkel ellátott és tárolt kódra", ne a "működő kódra". Jó szokás, hogy minden szkript elejére egy rövid leírás blokkot adunk, amelyben feltüntetjük, hogy milyen adatokon fut, milyen dátumon és milyen célból.

A kódgenerálás aranyszabályai mesterséges intelligencia segítségével

  1. Adja meg a kontextust. Fájlformátum, CRS, oszlopnevek, mit szeretne tenni.
  2. Kérj kicsiket. Az egyetlen feladatot elvégző rövid kód biztonságosabb, mint egy óriási szkript.
  3. Kérjen felvilágosítást. Nyomtassa ki az AI-nak, hogy mit csinál az egyes kódsorok; Ne fuss olyan kódot, amit nem értesz.
  4. Tesztelje a mintán. Először próbálja ki egy 10-20 rekordból álló mintaadaton.
  5. Hasonlítsa össze a hivatkozással. Hasonlítson össze egy területet/távolságot egy ismert értékkel.
  6. Vissza. Soha ne írjuk felül a törzsadatokat; mű másolatban.

Lépésről lépésre: Biztonságos térbeli szkript AI-val

  1. Tisztázza a feladatot. "Zöldfelületek kiválasztása a parcellarétegből, területük kiszámítása, az 5000 m² feletti terület külön fájlba írása."
  2. Azonosítsa az adatokat. Formátum (GeoPackage/Shapefile), CRS, releváns oszlopnév.
  3. Kód + leírás nyomtatása AI-ba. Megjegyzés soronként.
  4. CRS-t és egységvezérlést végeztessen el. Terület m²-ben vagy réteg metrikus CRS-ben?
  5. Futtassa mintaadatokon. Vizuálisan ellenőrizze az eredményt.
  6. Hivatkozással igazolni. Hasonlítsa össze egy telek területét a tulajdoni lap értékével.
  7. Futtassa a törzsadatokon, írja be a kimenetet az új fájlba.

Gyenge felszólítás / Erős felszólítás

Gyenge felszólítás: "Számítsa ki a parcellák területét."

Az AI a koordinátarendszer, a formátum és az oszlop ismerete nélkül ír; A mező rossz mértékegységben vagy rossz CRS-ben jelenhet meg.

Erős felszólítás: "A GeoPandas segítségével olvasson be egy GeoPackage réteget ("parcels.gpkg", egy metrikus nemzeti rendszer, például CRS: EPSG:5254), és írja be az egyes parcellák területét m²-ben egy új "area_m2" oszlopba. A kód minden sorához írjon megjegyzést. Adjon hozzá egy sort, hogy a C réteg nem ellenőrzi-e a területszámítást. Írja a kimenetet egy új fájlba, ne változtassa meg az eredetit."

A második prompt auditálható, biztonságos kódot állít elő, mivel CRS-t, egységet, biztonságos kimenetet és leírást tartalmaz.

Négy másolható sablon

Feladat: Írjon egy rövid Python kódot, amely a következő feladatot végzi el a GeoPandas segítségével. Minden sorhoz írjon megjegyzést török ​​nyelven. Művelet: [...]Bemeneti fájl: [...] (formátum, CRS: [...], releváns oszlop: [...]) Szabály: Ne módosítsa az eredeti fájlt, írja be a kimenetet ÚJ fájlba. A művelet előtt ellenőrizze, hogy a CRS metrikus; Ha nem, figyelmeztessen.

Feladat: Magyarázza el soronként a következő Python/GeoPandas kódot, és jelölje be a KOCKÁZATOKAT: melyik sor törölhet/írhat felül adatokat, melyik művelet feltételezi a CRS-t vagy a kötetet, melyik lépés lenne lassú big data esetén. A kód megváltoztatása; csak magyarázd és figyelmeztess.Kód: [...]

Feladat: Írjon egy kis TESZT tervet, mielőtt ezt a kódot valós adatokon futtatná. Milyen mintaadatokkal, milyen várható eredménnyel, milyen referenciaértékkel kell érvényesíteni? Adjon egy ellenőrző listát. Kód/művelet: [...]

Feladat: Írja le a következő QGIS műveletet (kattintási lépések) a QGIS menü elérési útjaként és az azzal egyenértékű Python/GeoPandas kódként. Adja meg a különbségeket és az érdekes pontokat (CRS, egység).Folyamat: [...]

Egy táblázat: gyakori térbeli műveletek és buktatóik

tranzakciót

Mit tesz

Csapda az AI-kódban

ellenőrzése

Field account

Megkeresi a sokszög területét

A mező értelmetlen a Geographic CRS-ben

Összehasonlítás ismert területtel

Puffer

határ körüli régióban

Mértékegység (fok/méter) hiba

Metrikus CRS + mérés

térbeli aggregáció

Rétegek társítása

Hibás kulcs/másodpéldány regisztráció

Rekordszámlálás vezérlése

Clip

területtel vág

Határon túli adatvesztés

Bemenet/kimenet összehasonlítása

visszavetítés

CRS váltja fel

Rossz cél CRS

EPSG kód megerősítése

három mini tok

1. eset – Csendes felülírás. A tervező az AI által írt szkriptet futtat közvetlenül az alaprétegen. A kód helytelenül alkalmaz egy szűrőt, törli a réteg felét, és ugyanabba a fájlba menti. Mivel nincs biztonsági mentés, a napokig tartó adatok elvesznek. Tanulság: kimenet mindig új fájlba, törzsadatok mindig redundánsak.

2. eset – Puffer rossz egységgel. Az egyik csapat 500 lábnyi hozzáférési puffert kér az iskolák számára. Az AI kód ​​geo CRS-en fut; Az 500 fokos puffer a teljes térképet lefedi. Mivel a csapat kis mintán tesztel, elkapja a hibát, mielőtt az átkerülne a fő adatokba; Hozzáadja és javítja a vetületet a metrikus CRS-hez. A tesztelés szokása megakadályozza a katasztrófát.

3. eset – Magyarázó tanulás. Az a tervező, aki nem ismeri a kódot, úgy állítja elő a csatlakozási kódot, hogy az AI értelmezi az egyes sorokat. Látja, hogy "ez a sor páratlan rekordokat dob ​​el" a leírásban, és rájön, hogy ezzel elveszít néhány csomagot; Olyan verziót kér az AI-tól, amely a nem egyezéseket is megtartja. A kód megértése előfeltétele a biztonságos használatnak.

Gyakori hibák

  • Közvetlenül a törzsadatokon fut. Mindig dolgozzon a másolaton, és írja be a kimenetet az új fájlba.
  • A „működött” a „helyes” összetévesztése. A hibamentes kód hibás eredményeket produkálhat; Hivatkozással ellenőrizze.
  • CRS-t és hangerőt feltételezve. Mindig ellenőrizze a metrikus CRS-t a terület- és távolságműveletek tekintetében.
  • Olyan kódot futtat, amelyet nem ért. Kockázatos úgy futtatni, hogy nem kér magyarázatot, és nem ismeri a sorok működését.
  • Hagyd ki a kis tesztet. A nagy adathalmazra való váltás a mintaadatok kipróbálása nélkül a leggyakoribb hibaforrás.
  • Bizalmas adatok átadása a felhőalapú eszközöknek gondolkodás nélkül. Ne ossza meg valós csomag-/személyadatokat a kód generálásakor; Használjon minta/névtelen adatokat.

Összefoglalva

A QGIS és a Python (különösen a GeoPandas) automatizálja az ismétlődő térbeli feladatokat a tervezés során; Az AI gyorsan generál kódot ezekhez az eszközökhöz. De az AI olyan feltevésekkel ír kódot, amelyeket nem lát: rossz CRS, rossz hangerő, olyan műveletek, amelyek csendben törlik az adatokat. A biztonságos használat hat szabályon alapul: kontextus megadása, kis kérés, pontosítás kérése, példa tesztelése, hivatkozással ellenőrzés, biztonsági mentés. A „dolgozott” nem ugyanaz, mint a „helyes”. Még ha nem is ismeri a kódot, biztonságos térbeli automatizálást végezhet a mesterséges intelligencia segítségével minden sor megértésével és bizalmas adatok megosztása nélkül.

Pályázati feladat

Válasszon egy ismétlődő térbeli feladatot (például egy rétegben lévő területek kiszámítása és egy küszöb felső részének elválasztása). (1) Nyomtasson kódot + sorleírást az AI-hoz az első sablonnal. (2) Ellenőrizze a második sablonnal megegyező kód kockázatait, és keressen legalább egy „törölheti az adatokat/ feltételezi, hogy CRS” sort. (3) Adjon ki egy teszttervet a harmadik sablonnal: melyik mintaadat, melyik referenciaérték. (4) Írjon fel három biztonsági lépést, amelyet meg kell tennie, mielőtt a kódot valós adatokon futtatná.

ellenőrző lista

  • [ ] Megadtam az AI-t a formátum, a CRS és az oszlopkontextus.
  • [ ] A kód minden sorát elmagyaráztam; Nem futtattam le a kódot, amit nem értettem.
  • [ ] Rövid, egyfunkciós kódot akartam.
  • [ ] Kis mintaadatokon teszteltem, és szemrevételezéssel ellenőriztem az eredményt.
  • [ ] Az eredményt ismert referenciaértékkel igazoltam.
  • [ ] A törzsadatokról biztonsági másolatot készítettem; A kimenetet az új fájlba írtam.
  • [ ] Nem adtam meg a tényleges bizalmas adatokat a felhőeszköznek; Névtelen/minta adatokat használtam.