FileDataset Osztály
Az Azure Machine Learningben használandó adattárakban vagy nyilvános URL-címekben található fájlhivatkozások gyűjteményét jelöli.
A FileDataset egy lazilyan kiértékelt, nem módosítható műveletsorozatot határoz meg az adatforrásból származó adatok fájlstreamekbe való betöltéséhez. Az adatok nem töltődnek be a forrásból, amíg a FileDataset nem kéri az adatok továbbítását.
Létrejön egy FileDataset a FileDatasetFactory osztály metódusával from_files .
További információt az Adathalmazok regisztrálása & hozzáadása című cikkben talál. A fájladatkészletek használatának megkezdéséhez tekintse meg a következőt: https://aka.ms/filedataset-samplenotebook.
Inicializálja a FileDataset objektumot.
Ezt a konstruktort nem szabad közvetlenül meghívni. Az adatkészletet osztály használatával FileDatasetFactory kell létrehozni.
- Öröklődés
-
FileDataset
Konstruktor
FileDataset()
Megjegyzések
A FileDataset egy kísérletfuttatás bemeneteként használható. A munkaterületen is regisztrálható egy megadott névvel, és később lekérhető a név alapján.
A FileDataset az osztályban elérhető különböző albeállítási módszerek meghívásával alhálózatosítható. Az albeállítás eredménye mindig egy új FileDataset.
A tényleges adatbetöltés akkor történik, ha a FileDataset egy másik tárolási mechanizmusba (például a letöltött vagy a helyi elérési útra csatlakoztatott fájlokba) kéri az adatokat.
Metódusok
as_cache |
Megjegyzés Ez egy kísérleti módszer, és bármikor változhat. További információ: https://aka.ms/azuremlexperimental. Hozzon létre egy datacache_store és egy adatkészletre leképezett DatacacheConsumptionConfig-t. |
as_download |
Hozzon létre egy DatasetConsumptionConfig fájlt a letöltési mód beállításával. Az elküldött futtatás során az adathalmaz fájljai a számítási cél helyi elérési útjára lesznek letöltve. A letöltési hely lekérhető az argumentumértékekből és a futtatási környezet input_datasets mezőjéből. Automatikusan létrehozunk egy bemeneti nevet. Ha egyéni bemeneti nevet szeretne megadni, hívja meg a as_named_input metódust.
|
as_hdfs |
Állítsa a módot hdfs értékre. A beküldött synapse-futtatás során az adathalmazokban lévő fájlok helyi elérési útra lesznek konvertálva a számítási célon. A hdfs elérési útja lekérhető az argumentumértékekből és az operációs rendszer környezeti változóiból.
|
as_mount |
Hozzon létre egy DatasetConsumptionConfig konfigurációt a csatlakoztatási mód beállításával. Az elküldött futtatás során az adathalmazokban lévő fájlok a számítási cél helyi elérési útjára lesznek csatlakoztatva. A csatlakoztatási pont lekérhető az argumentumértékekből és a futtatási környezet input_datasets mezőjéből. Automatikusan létrehozunk egy bemeneti nevet. Ha egyéni bemeneti nevet szeretne megadni, hívja meg a as_named_input metódust.
|
download |
Töltse le az adatkészlet által meghatározott fájlstreameket helyi fájlokként. |
file_metadata |
Megjegyzés Ez egy kísérleti módszer, és bármikor változhat. További információ: https://aka.ms/azuremlexperimental. A metaadatoszlop nevének megadásával lekérheti a fájl metaadat-kifejezését. A fájl metaadatainak támogatott oszlopai: Méret, LastModifiedTime, CreationTime, Extension és CanSeek |
filter |
Megjegyzés Ez egy kísérleti módszer, és bármikor változhat. További információ: https://aka.ms/azuremlexperimental. Szűrje az adatokat, és csak a megadott kifejezésnek megfelelő rekordokat hagyja meg. |
hydrate |
Megjegyzés Ez egy kísérleti módszer, és bármikor változhat. További információ: https://aka.ms/azuremlexperimental. Hidratálja az adathalmazt a datacache_store megadott kért replikákba. |
mount |
Hozzon létre egy környezetkezelőt az adathalmaz által helyi fájlként definiált fájlstreamek csatlakoztatásához. |
random_split |
Ossza fel az adathalmazban lévő fájlstreameket véletlenszerűen két részre, és körülbelül a megadott százalékkal. Az első visszaadott adathalmaz körülbelül |
skip |
Hagyja ki a fájlstreameket az adathalmaz tetejéről a megadott szám alapján. |
take |
Vegyünk egy mintát a fájlstreamekből az adathalmaz tetejéről a megadott szám alapján. |
take_sample |
Vegyünk egy véletlenszerű mintát az adathalmazban lévő fájlstreamekről a megadott valószínűség szerint. |
to_path |
Lekérheti az adatkészlet által definiált egyes fájlstreamek fájlelérési útvonalainak listáját. |
as_cache
Megjegyzés
Ez egy kísérleti módszer, és bármikor változhat. További információ: https://aka.ms/azuremlexperimental.
Hozzon létre egy datacache_store és egy adatkészletre leképezett DatacacheConsumptionConfig-t.
as_cache(datacache_store)
Paraméterek
Name | Description |
---|---|
datacache_store
Kötelező
|
A hidratálandó adatkachestore. |
Válaszok
Típus | Description |
---|---|
A konfigurációs objektum, amely leírja, hogyan kell materializálni a datacache-t a futtatás során. |
as_download
Hozzon létre egy DatasetConsumptionConfig fájlt a letöltési mód beállításával.
Az elküldött futtatás során az adathalmaz fájljai a számítási cél helyi elérési útjára lesznek letöltve. A letöltési hely lekérhető az argumentumértékekből és a futtatási környezet input_datasets mezőjéből. Automatikusan létrehozunk egy bemeneti nevet. Ha egyéni bemeneti nevet szeretne megadni, hívja meg a as_named_input metódust.
# Given a run submitted with dataset input like this:
dataset_input = dataset.as_download()
experiment.submit(ScriptRunConfig(source_directory, arguments=[dataset_input]))
# Following are sample codes running in context of the submitted run:
# The download location can be retrieved from argument values
import sys
download_location = sys.argv[1]
# The download location can also be retrieved from input_datasets of the run context.
from azureml.core import Run
download_location = Run.get_context().input_datasets['input_1']
as_download(path_on_compute=None)
Paraméterek
Name | Description |
---|---|
path_on_compute
|
A számítás célútvonala az adatok elérhetővé tétele érdekében a következő helyen: . Alapértelmezett érték: None
|
Megjegyzések
Amikor az adatkészlet egyetlen fájl elérési útjából jön létre, a letöltési hely az egyetlen letöltött fájl elérési útja lesz. Ellenkező esetben a letöltési hely az összes letöltött fájlhoz tartozó beágyazási mappa elérési útja lesz.
Ha path_on_compute egy /-val kezdődik, akkor az abszolút elérési útként lesz kezelve. Ha nem a /-val kezdődik, akkor a rendszer relatív elérési útként kezeli a munkakönyvtárhoz képest. Ha abszolút elérési utat adott meg, győződjön meg arról, hogy a feladat rendelkezik engedéllyel az adott könyvtárba való íráshoz.
as_hdfs
Állítsa a módot hdfs értékre.
A beküldött synapse-futtatás során az adathalmazokban lévő fájlok helyi elérési útra lesznek konvertálva a számítási célon. A hdfs elérési útja lekérhető az argumentumértékekből és az operációs rendszer környezeti változóiból.
# Given a run submitted with dataset input like this:
dataset_input = dataset.as_hdfs()
experiment.submit(ScriptRunConfig(source_directory, arguments=[dataset_input]))
# Following are sample codes running in context of the submitted run:
# The hdfs path can be retrieved from argument values
import sys
hdfs_path = sys.argv[1]
# The hdfs path can also be retrieved from input_datasets of the run context.
import os
hdfs_path = os.environ['input_<hash>']
as_hdfs()
Megjegyzések
Ha az adatkészlet egyetlen fájl elérési útjából jön létre, a hdfs elérési útja az egyetlen fájl elérési útja lesz. Ellenkező esetben a hdfs elérési útja az összes csatlakoztatott fájlhoz tartozó beágyazási mappa elérési útja lesz.
as_mount
Hozzon létre egy DatasetConsumptionConfig konfigurációt a csatlakoztatási mód beállításával.
Az elküldött futtatás során az adathalmazokban lévő fájlok a számítási cél helyi elérési útjára lesznek csatlakoztatva. A csatlakoztatási pont lekérhető az argumentumértékekből és a futtatási környezet input_datasets mezőjéből. Automatikusan létrehozunk egy bemeneti nevet. Ha egyéni bemeneti nevet szeretne megadni, hívja meg a as_named_input metódust.
# Given a run submitted with dataset input like this:
dataset_input = dataset.as_mount()
experiment.submit(ScriptRunConfig(source_directory, arguments=[dataset_input]))
# Following are sample codes running in context of the submitted run:
# The mount point can be retrieved from argument values
import sys
mount_point = sys.argv[1]
# The mount point can also be retrieved from input_datasets of the run context.
from azureml.core import Run
mount_point = Run.get_context().input_datasets['input_1']
as_mount(path_on_compute=None)
Paraméterek
Name | Description |
---|---|
path_on_compute
|
A számítás célútvonala az adatok elérhetővé tétele érdekében a következő helyen: . Alapértelmezett érték: None
|
Megjegyzések
Ha az adathalmaz egyetlen fájl elérési útjából jön létre, a csatlakoztatási pont az egyetlen csatlakoztatott fájl elérési útja lesz. Ellenkező esetben a csatlakoztatási pont az összes csatlakoztatott fájlhoz tartozó beágyazási mappa elérési útja lesz.
Ha path_on_compute egy /-val kezdődik, akkor az abszolút elérési útként lesz kezelve. Ha nem a /-val kezdődik, akkor a rendszer relatív elérési útként kezeli a munkakönyvtárhoz képest. Ha abszolút elérési utat adott meg, győződjön meg arról, hogy a feladat rendelkezik engedéllyel az adott könyvtárba való íráshoz.
download
Töltse le az adatkészlet által meghatározott fájlstreameket helyi fájlokként.
download(target_path=None, overwrite=False, ignore_not_found=False)
Paraméterek
Name | Description |
---|---|
target_path
Kötelező
|
A helyi könyvtár, amelybe letölti a fájlokat. Ha nincs, az adatok egy ideiglenes könyvtárba lesznek letöltve. |
overwrite
Kötelező
|
Azt jelzi, hogy felülírja-e a meglévő fájlokat. Az alapértelmezett érték Hamis. A meglévő fájlok felülíródnak, ha a felülírás Értéke Igaz; ellenkező esetben kivétel lép fel. |
ignore_not_found
Kötelező
|
Azt jelzi, hogy sikertelen-e a letöltés, ha az adathalmaz által mutatott egyes fájlok nem találhatók. Az alapértelmezett érték Hamis. A letöltés sikertelen lesz, ha a fájlletöltés bármilyen okból meghiúsul, ha ignore_not_found False (Hamis) értékre van állítva; ellenkező esetben a rendszer naplózza a nem talált hibákat, és a dowload mindaddig sikeres lesz, amíg más hibatípusok nem fordulnak elő. |
Válaszok
Típus | Description |
---|---|
Az egyes letöltött fájlok fájlelérési útjait tartalmazó tömböt ad vissza. |
Megjegyzések
Ha target_path egy /-val kezdődik, akkor abszolút elérési útként fogjuk kezelni. Ha nem /-val kezdődik, akkor a rendszer az aktuális munkakönyvtárhoz képest relatív elérési útként kezeli.
file_metadata
Megjegyzés
Ez egy kísérleti módszer, és bármikor változhat. További információ: https://aka.ms/azuremlexperimental.
A metaadatoszlop nevének megadásával lekérheti a fájl metaadat-kifejezését.
A fájl metaadatainak támogatott oszlopai: Méret, LastModifiedTime, CreationTime, Extension és CanSeek
file_metadata(col)
Paraméterek
Name | Description |
---|---|
col
Kötelező
|
Oszlop neve |
Válaszok
Típus | Description |
---|---|
<xref:azureml.dataprep.api.expression.RecordFieldExpression>
|
Egy kifejezést ad vissza, amely lekéri az értéket a megadott oszlopban. |
filter
Megjegyzés
Ez egy kísérleti módszer, és bármikor változhat. További információ: https://aka.ms/azuremlexperimental.
Szűrje az adatokat, és csak a megadott kifejezésnek megfelelő rekordokat hagyja meg.
filter(expression)
Paraméterek
Name | Description |
---|---|
expression
Kötelező
|
<xref:azureml.dataprep.api.expression.Expression>
A kiértékelendő kifejezés. |
Válaszok
Típus | Description |
---|---|
A módosított adatkészlet (regisztráció nélkül). |
Megjegyzések
A kifejezések a dataset oszlopnévvel történő indexelésével kezdődnek. Számos függvényt és operátort támogatnak, és logikai operátorokkal kombinálhatók. Az eredményül kapott kifejezés lazán lesz kiértékelve minden rekord esetében, amikor adat lekérés történik, és nem ott, ahol meg van adva.
(dataset.file_metadata('Size') > 10000) & (dataset.file_metadata('CanSeek') == True)
dataset.file_metadata('Extension').starts_with('j')
hydrate
Megjegyzés
Ez egy kísérleti módszer, és bármikor változhat. További információ: https://aka.ms/azuremlexperimental.
Hidratálja az adathalmazt a datacache_store megadott kért replikákba.
hydrate(datacache_store, replica_count=None)
Paraméterek
Name | Description |
---|---|
datacache_store
Kötelező
|
A hidratálandó adatkachestore. |
replica_count
Kötelező
|
<xref:Int>, <xref:optional>
Hidratálandó replikák száma. |
Válaszok
Típus | Description |
---|---|
A konfigurációs objektum, amely leírja, hogyan kell materializálni a datacache-t a futtatás során. |
mount
Hozzon létre egy környezetkezelőt az adathalmaz által helyi fájlként definiált fájlstreamek csatlakoztatásához.
mount(mount_point=None, **kwargs)
Paraméterek
Name | Description |
---|---|
mount_point
Kötelező
|
A helyi könyvtár, amelyhez csatlakoztatni szeretné a fájlokat. Ha nincs, az adatok egy ideiglenes könyvtárba lesznek csatlakoztatva, amelyet a MountContext.mount_point példány metódusának meghívásával talál meg. |
Válaszok
Típus | Description |
---|---|
<xref:MountContext>: <xref:the> <xref:context> <xref:manager.> <xref:Upon> <xref:entering> <xref:the> <xref:context> <xref:manager>, <xref:the> <xref:dataflow> <xref:will> <xref:be> <xref:mounted> <xref:to> <xref:the> <xref:mount_point.> <xref:Upon> exit, <xref:it> <xref:will> <xref:remove> <xref:the> mount <xref:point> <xref:and> clean <xref:up> <xref:the> <xref:daemon> <xref:process> <xref:used> <xref:to> mount <xref:the> <xref:dataflow.>
|
Egy környezetkezelőt ad vissza a csatlakoztatás életciklusának kezeléséhez. |
Megjegyzések
A rendszer egy környezetkezelőt ad vissza a csatlakoztatás életciklusának kezeléséhez. A csatlakoztatáshoz be kell írnia a környezetkezelőt, és le kell választania, és ki kell lépnie a környezetkezelőből.
A csatlakoztatást kizárólag a Unix vagy a Unixhoz hasonló operációs rendszerek támogatják a libfuse natív csomag telepítése mellett. Ha docker-tárolóban fut, a docker-tárolót a –privileged jelzővel vagy a –cap-add SYS_ADMIN –device /dev/fuse paranccsal kell elindítani.
datastore = Datastore.get(workspace, 'workspaceblobstore')
dataset = Dataset.File.from_files((datastore, 'animals/dog/year-*/*.jpg'))
with dataset.mount() as mount_context:
# list top level mounted files and folders in the dataset
os.listdir(mount_context.mount_point)
# You can also use the start and stop methods
mount_context = dataset.mount()
mount_context.start() # this will mount the file streams
mount_context.stop() # this will unmount the file streams
Ha target_path a /-val kezdődik, akkor abszolút elérési útként fogjuk kezelni. Ha nem /-val kezdődik, akkor a rendszer relatív elérési útként kezeli az aktuális munkakönyvtárhoz képest.
random_split
Ossza fel az adathalmazban lévő fájlstreameket véletlenszerűen két részre, és körülbelül a megadott százalékkal.
Az első visszaadott adathalmaz körülbelül percentage
a fájlhivatkozások teljes számát tartalmazza, a második adatkészlet pedig a fennmaradó fájlhivatkozásokat.
random_split(percentage, seed=None)
Paraméterek
Name | Description |
---|---|
percentage
Kötelező
|
Az adathalmaz felosztásának hozzávetőleges százaléka. Ennek 0,0 és 1,0 közötti számnak kell lennie. |
seed
Kötelező
|
Egy választható mag, amelyet a véletlenszerű generátorhoz használhat. |
Válaszok
Típus | Description |
---|---|
A felosztás után a két adathalmazt képviselő új FileDataset-objektumok rekordját adja vissza. |
skip
Hagyja ki a fájlstreameket az adathalmaz tetejéről a megadott szám alapján.
skip(count)
Paraméterek
Name | Description |
---|---|
count
Kötelező
|
A kihagyandó fájlstreamek száma. |
Válaszok
Típus | Description |
---|---|
Egy új FileDataset objektumot ad vissza, amely egy olyan adathalmazt jelöl, amelynek a fájlstreamjei kimaradtak. |
take
Vegyünk egy mintát a fájlstreamekből az adathalmaz tetejéről a megadott szám alapján.
take(count)
Paraméterek
Name | Description |
---|---|
count
Kötelező
|
A fájlstreamek száma. |
Válaszok
Típus | Description |
---|---|
Egy új FileDataset objektumot ad vissza, amely a mintavételezett adatkészletet jelöli. |
take_sample
Vegyünk egy véletlenszerű mintát az adathalmazban lévő fájlstreamekről a megadott valószínűség szerint.
take_sample(probability, seed=None)
Paraméterek
Name | Description |
---|---|
probability
Kötelező
|
Annak valószínűsége, hogy egy fájlstream szerepel a mintában. |
seed
Kötelező
|
Egy választható mag, amelyet a véletlenszerű generátorhoz használhat. |
Válaszok
Típus | Description |
---|---|
Egy új FileDataset objektumot ad vissza, amely a mintavételezett adatkészletet jelöli. |
to_path
Lekérheti az adatkészlet által definiált egyes fájlstreamek fájlelérési útvonalainak listáját.
to_path()
Válaszok
Típus | Description |
---|---|
Fájlelérési utak tömböt ad vissza. |
Megjegyzések
A fájlelérési utak a helyi fájlok relatív elérési útjai a fájlstreamek letöltésekor vagy csatlakoztatásakor.
A rendszer eltávolít egy közös előtagot a fájl elérési útjaiból az adatforrásnak az adathalmaz létrehozásához való megadása alapján. Például:
datastore = Datastore.get(workspace, 'workspaceblobstore')
dataset = Dataset.File.from_files((datastore, 'animals/dog/year-*/*.jpg'))
print(dataset.to_path())
# ['year-2018/1.jpg'
# 'year-2018/2.jpg'
# 'year-2019/1.jpg']
dataset = Dataset.File.from_files('https://dprepdata.blob.core.windows.net/demo/green-small/*.csv')
print(dataset.to_path())
# ['/green_tripdata_2013-08.csv']