sentiment_anals / src /__init__.py
abdou21367's picture
Upload 64 files
839c56d verified
"""
Sentiment Analysis Deep Learning Project
Main package initializer
"""
# Data modules
from .data.preprocessing import EnhancedTextPreprocessor, prepare_data
from .data.augmentation import TextAugmenter, augment_training_data
from .data.dataset import (
SentimentDataset,
TransformerDataset,
create_data_loaders,
create_transformer_data_loaders,
get_class_weights
)
# Model modules - Baseline
from .models.baseline.bilstm_attention import create_bilstm_model
from .models.baseline.custom_transformer import create_custom_transformer
from .models.baseline.fasttext import create_fasttext_model
# Model modules - Pretrained
from .models.pretrained.roberta import create_roberta_model, get_roberta_tokenizer
from .models.pretrained.bertweet import create_bertweet_model, get_bertweet_tokenizer
# Model modules - Ensemble
from .models.ensemble.voting_ensemble import (
VotingEnsemble,
create_voting_ensemble,
create_weighted_ensemble
)
from .models.ensemble.stacking_ensemble import (
StackingEnsemble,
create_stacking_ensemble
)
# Training modules
from .training.trainer import Trainer
from .training.metrics import calculate_metrics, print_metrics
from .training.losses import (
FocalLoss,
LabelSmoothingLoss,
WeightedCrossEntropyLoss,
CombinedLoss,
get_loss_function,
compute_class_weights
)
# Evaluation modules
from .evaluation.evaluator import ModelEvaluator, EnsembleEvaluator
from .evaluation.error_analysis import ErrorAnalyzer
from .evaluation.visualizer import SentimentVisualizer
# Utility modules
from .utils.config import set_seed, get_device, load_config, save_config
from .utils.logger import setup_logger
from .utils.helpers import (
count_parameters,
save_model,
load_model,
EarlyStopping,
format_time
)
# Package metadata
__version__ = '1.0.0'
__author__ = 'Ayoub Asri'
__description__ = 'Sentiment Analysis with Deep Learning - ENSSEA Project 2026'
# Public API
__all__ = [
# Data
'EnhancedTextPreprocessor',
'prepare_data',
'TextAugmenter',
'augment_training_data',
'SentimentDataset',
'TransformerDataset',
'create_data_loaders',
'create_transformer_data_loaders',
'get_class_weights',
# Baseline Models
'create_bilstm_model',
'create_custom_transformer',
'create_fasttext_model',
# Pretrained Models
'create_roberta_model',
'get_roberta_tokenizer',
'create_bertweet_model',
'get_bertweet_tokenizer',
# Ensemble Models
'VotingEnsemble',
'create_voting_ensemble',
'create_weighted_ensemble',
'StackingEnsemble',
'create_stacking_ensemble',
# Training
'Trainer',
'calculate_metrics',
'print_metrics',
'FocalLoss',
'LabelSmoothingLoss',
'WeightedCrossEntropyLoss',
'CombinedLoss',
'get_loss_function',
'compute_class_weights',
# Evaluation
'ModelEvaluator',
'EnsembleEvaluator',
'ErrorAnalyzer',
'SentimentVisualizer',
# Utilities
'set_seed',
'get_device',
'load_config',
'save_config',
'setup_logger',
'count_parameters',
'save_model',
'load_model',
'EarlyStopping',
'format_time',
]