✏️ 正在编辑: regressor.cpython-312.pyc
路径:
/var/opt/nydus/ops/mysql/ai/ml/__pycache__/regressor.cpython-312.pyc
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
� ��'j� � �| � d Z ddlmZmZ ddlZddlZddlm Z ddl mZ ddlm Z ddlmZ ddlmZ G d � d ee � Zy)zuRegressor utilities for MySQL Connector/Python. Provides a scikit-learn compatible regressor backed by HeatWave ML. � )�Optional�UnionN)�RegressorMixin)� MyBaseMLModel)�ML_TASK)� copy_dict)�MySQLConnectionAbstractc � � e Zd ZdZ d dedee dee dee dee f d�Zd e e j ej f d ej fd�Zd e e j ej f d e j fd�Zy)�MyRegressora� MySQL HeatWave scikit-learn compatible regressor estimator. Provides prediction output from a regression model deployed in MySQL, and manages fit, explain, and prediction options as per HeatWave ML interface. Attributes: predict_extra_options (dict): Optional parameter dict passed to the backend for prediction. _model (MyModel): Underlying interface for database model operations. fit_extra_options (dict): See MyBaseMLModel. explain_extra_options (dict): See MyBaseMLModel. Args: db_connection (MySQLConnectionAbstract): Active MySQL connector DB connection. model_name (str, optional): Custom name for the model. fit_extra_options (dict, optional): Extra options for fitting. explain_extra_options (dict, optional): Extra options for explanations. predict_extra_options (dict, optional): Extra options for predictions. Methods: predict(X): Predict regression target. N� db_connection� model_name�fit_extra_options�explain_extra_options�predict_extra_optionsc � � t j | |t j ||�� t |� | _ t |� | _ y)a Initialize a MyRegressor. Args: db_connection: Active MySQL connector database connection. model_name: Optional, custom model name. fit_extra_options: Optional fit options. explain_extra_options: Optional explain options. predict_extra_options: Optional prediction options. Raises: DatabaseError: If a database connection issue occurs. If an operational error occurs during execution. )r r N)r �__init__r � REGRESSIONr r r )�selfr r r r r s �F/opt/nydus/tmp/pip-target-k0fmikie/lib/python/mysql/ai/ml/regressor.pyr zMyRegressor.__init__F sE � �. ��������!�/� � &/�/D�%E��"�%.�/D�%E��"� �X�returnc �v � | j j || j �� }|d j � S )aZ Predict a continuous target for the input features using the MySQL model. Args: X: Input samples as a numpy array or pandas DataFrame. Returns: ndarray: Array of predicted target values, shape (n_samples,). Raises: DatabaseError: If provided options are invalid or unsupported, or if the model is not initialized, i.e., fit or import has not been called If a database connection issue occurs. If an operational error occurs during execution. ��options� Prediction)�_model�predictr �to_numpy)r r �results r r zMyRegressor.predicth s7 � �( ���$�$�Q��0J�0J�$�K���l�#�,�,�.�.r c �R � | j j || j �� y)ai Explain model predictions using provided data. References: https://dev.mysql.com/doc/heatwave/en/mys-hwaml-ml-explain-table.html A full list of supported options can be found under "ML_EXPLAIN_TABLE Options" Args: X: DataFrame for which predictions should be explained. Returns: DataFrame containing explanation details (feature attributions, etc.) Raises: DatabaseError: If provided options are invalid or unsupported, or if the model is not initialized, i.e., fit or import has not been called If a database connection issue occurs. If an operational error occurs during execution. Notes: Temporary input/output tables are cleaned up after explanation. r N)r �explain_predictionsr )r r s r r"