✏️ 正在编辑: outlier.cpython-312.pyc
路径:
/var/opt/nydus/ops/mysql/ai/ml/__pycache__/outlier.cpython-312.pyc
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
� ��'j� � �� � d Z ddlmZmZ ddlZddlZddlm Z ddl mZ ddlm Z ddlmZ ddlmZ d Zd eeej( f deeej( f fd�Z G d � dee � Zy)z�Outlier/anomaly detection utilities for MySQL Connector/Python. Provides a scikit-learn compatible wrapper using HeatWave to score anomalies. � )�Optional�UnionN)�OutlierMixin)� MyBaseMLModel)�ML_TASK)� copy_dict)�MySQLConnectionAbstractg�h㈵��>�prob�returnc �| � t j | t dt z � }t j |d|z z � S )z� Compute logit (logodds) for a probability, clipping to avoid numerical overflow. Args: prob: Scalar or array of probability values in (0,1). Returns: logit-transformed probabilities. � )�np�clip�EPS�log)r �results �D/opt/nydus/tmp/pip-target-k0fmikie/lib/python/mysql/ai/ml/outlier.py�_get_logitsr 0 s2 � � �W�W�T�3��C�� (�F� �6�6�&�A��J�'�(�(� c �D � e Zd ZdZ d dedee dee dee fd�Zde e j ej f d ej fd �Zde e j ej f d ej fd�Zde e j ej f d ej fd�Zy)�MyAnomalyDetectora� MySQL HeatWave scikit-learn compatible anomaly/outlier detector. Flags samples as outliers when the probability of being an anomaly exceeds a user-tunable threshold. Includes helpers to obtain decision scores and anomaly probabilities for ranking. Args: db_connection (MySQLConnectionAbstract): Active MySQL DB connection. model_name (str, optional): Custom model name in the database. fit_extra_options (dict, optional): Extra options for fitting. score_extra_options (dict, optional): Extra options for scoring/prediction. Attributes: boundary: Decision threshold boundary in logit space. Derived from trained model's catalog info Methods: predict(X): Predict outlier/inlier labels. score_samples(X): Compute anomaly (normal class) logit scores. decision_function(X): Compute signed score above/below threshold for ranking. N� db_connection� model_name�fit_extra_options�score_extra_optionsc � � t j | |t j ||�� t |� | _ d| _ y)a2 Initialize an anomaly detector instance with threshold and extra options. Args: db_connection: Active MySQL DB connection. model_name: Optional model name in DB. fit_extra_options: Optional extra fit options. score_extra_options: Optional extra scoring options. Raises: ValueError: If outlier_threshold is not in (0,1). DatabaseError: If a database connection issue occurs. If an operational error occurs during execution. )r r N)r �__init__r �ANOMALY_DETECTIONr r �boundary)�selfr r r r s r r zMyAnomalyDetector.__init__W s>