mendevi.models.lr

Predicting absolute values using linear regression.

Classes

EncodeLinear(*args, **kwargs)

Biaised linear regression to predict parameters on encoding.

LR(*args, **kwargs)

Biaised linear regression on all parameters.

Details

class mendevi.models.lr.EncodeLinear(*args: tuple, **kwargs: dict)[source]

Biaised linear regression to predict parameters on encoding.

Examples

>>> import pprint
>>> import cutcutcodec
>>> from mendevi.models.lr import EncodeLinear
>>> model = EncodeLinear().fit("x264_vs_openh264.db", table="t_enc_encode")
>>> video = cutcutcodec.utils.get_project_root() / "media" / "video" / "intro.webm"
>>> pred = model.predict_from_video(
...     video, effort="medium", encoder="libx264", quality=0.5, threads=8, mode="vbr",
... )
>>> pprint.pprint(pred)
{'log_act_duration_per_frame': [-1.063035249710083],
 'log_energy_per_frame': [0.5252208709716797],
 'log_rate': [6.431523323059082],
 'psnr': [38.24165725708008],
 'ssim': [0.8785048723220825],
 'vmaf': [81.59996032714844]}
>>>

Initialise the model.

class mendevi.models.lr.LR(*args: tuple, **kwargs: dict)[source]

Biaised linear regression on all parameters.

Gaussian process regression predictive model.

Parameters

title, sources, **kwargs

Transmitted to mendevi.models.base.Model.

biaisedboolean, default=True

If True, the linear regression includes a bias term, or y-intercept constant. If False, the regression is unbiased, and the y-intercept is zero.