def _set_model(self, **keywords): """ Define the sequence model for the calculation. Parameters ---------- model : { None, Model } (default=None) Specify the sound-class model to which the strings shall be converted. """ defaults = dict( model=rcParams['sca'], stress=rcParams['stress'], transform=rcParams['align_transform']) for k in defaults: if k not in keywords: keywords[k] = defaults[k] if isinstance(keywords['model'], (text_type, str)): self.model = rcParams[keywords['model']] else: self.model = keywords['model'] self.classes = [] for clA, clB in map( lambda x: ( tokens2class(x[0], self.model, stress=keywords['stress']), tokens2class(x[1], self.model, stress=keywords['stress'])), self.tokens ): self.classes += [(clA, clB)] self.weights = [] for prA, prB in self.prostrings: self.weights += [( prosodic_weights(prA, _transform=keywords['transform']), prosodic_weights(prB, _transform=keywords['transform']) )] self.scoredict = self.model.scorer
def _set_model(self, **keywords): """ Define the sequence model for the calculation. Parameters ---------- model : { None, Model } (default=None) Specify the sound-class model to which the strings shall be converted. """ defaults = dict( model=rcParams['sca'], stress=rcParams['stress'], transform=rcParams['align_transform']) for k in defaults: if k not in keywords: keywords[k] = defaults[k] if isinstance(keywords['model'], (text_type, str)): self.model = rcParams[keywords['model']] else: self.model = keywords['model'] self.classes = [] for clA, clB in map( lambda x: ( tokens2class(x[0], self.model, stress=keywords['stress']), tokens2class(x[1], self.model, stress=keywords['stress'])), self.tokens ): self.classes += [(clA, clB)] self.weights = [] for prA, prB in self.prostrings: self.weights += [( prosodic_weights(prA, _transform=keywords['transform']), prosodic_weights(prB, _transform=keywords['transform']) )] self.scoredict = self.model.scorer
def test_prosodic_weights(self): seq = 'tʰ ɔ x t ə r'.split(' ') assert prosodic_weights(prosodic_string(seq))[0] == 2 assert prosodic_weights(prosodic_string(seq))[-1] == 0.8
def test_prosodic_weights(): seq = 'tʰ ɔ x t ə r'.split(' ') assert prosodic_weights(prosodic_string(seq))[0] == 2 assert prosodic_weights(prosodic_string(seq))[-1] == 0.8