Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uwaga: jeśli jesteś nowym użytkownikiem, rozważ użycie CNTK czytnika formatów tekstu. W przyszłości element LUSequenceReader zostanie wycofany i ostatecznie nie będzie obsługiwany.
LUSequenceReader jest podobny do LMSequenceReader. Jest on jednak używany do zadań interpretacji języka, które mają ciągi wejściowe i wyjściowe, które są różne. Przykład konfigurowania elementu LUSequenceReader jest następujący
reader = [
readerType = "LUSequenceReader"
randomize = "none"
wordContext = 0:1:2
nbrUttsInEachRecurrentIter = 10
unk = "<unk>"
wordMap = "$DataDir$\inputmap.txt"
file = "$DataDir$\atis.train.IOB"
labelIn = [
useWordMap = true
beginSequence = "BOS"
endSequence = "EOS"
token = "$DataDir$\input.txt"
]
labels = [
beginSequence = "O"
endSequence = "O"
token = "$DataDir$\output.txt"
]
]
Element LUSequenceReader ma następujące parametry:
wordContext: określa okno kontekstu. Na przykładwordContext=0:1:2określa okno kontekstu 3. W tym oknie kontekstowym odczytuje dane wejściowe w bieżącym czasie, następnym razem i po następnym czasie. Innym przykładem może byćwordContext=0:-1. W takim przypadku LUSequencReader odczytuje okno kontekstu 2, które składa się z bieżących danych wejściowych i natychmiastowego ostatniego wejścia.randomize: jest to wartośćNonelubAuto. Określa tryb wykonywania losowych zdań całego korpusu.nbrUttsInEachRecurrentIter: określa limit liczby zdań w minibatch. Czytelnik rozmieszcza zdania wejściowe o tej samej długości, do określonego limitu, do każdego minibatcha. W przypadku cyklicznych sieci trener resetuje ukryte działania warstwowe tylko na początku zdań. Działania ukrytych warstw są przenoszone do następnej minibatch, jeśli nie zostanie osiągnięty koniec zdania. Używanie wielu zdań w minibatch może przyspieszyć procesy trenowania.unk: określa symbol do reprezentowania nieużytowanych symboli wejściowych. Zazwyczaj ten symbol to "".wordMap: określa plik, który mapuje dane wejściowe na inne dane wejściowe. Jest to przydatne, jeśli użytkownik chce zamapować niektóre dane wejściowe na nieznane symbole. Przykład pliku mapowania wyrazów jest następujący:buy buytrans <unk>file: plik zawiera dane wejściowe i jego etykiety. Ostatnia kolumna to etykieta, a pozostałe kolumny zawierają dane wejściowe. Poniżej znajduje się przykład pliku szkoleniowego.BOS Oflight Ofrom Ocharlotte B-fromloc.city_nameto Olas B-toloc.city_namevegas I-toloc.city_nameEOS O
W powyższym przykładzie można również zauważyć dwa pod bloki o nazwie labelIn i labels.
labelIn: sekcja etykiety wejściowej. Zawiera on następujące konfiguracjeuseWordMap—truelubfalse, określa, czy za pomocą mapy wyrazów mapować wyrazy wejściowe na inne słowa wejściowe.beginSequence– symbol początkowy zdaniaendSequence– symbol końcowy zdaniatoken— plik tokenu zawiera listę słów wejściowych. Ich zamówienia nie są ważne.
labels: sekcja etykiety wyjściowej.token— plik tokenu zawiera listę etykiet wyjściowych. Ich kolejność nie jest ważna, o ile tokeny są unikatowe.