# Pronunciation Difficulty Evaluator
A Python package that evaluates the difficulty of pronouncing words in multiple languages using state-of-the-art techniques. Currently supports English, Norwegian, Spanish, and Italian.
## Installation
```bash
pip install pron-difficulty
```
## Usage
```python
from pron_difficulty import PronDifficulty
# Initialize the evaluator
evaluator = PronDifficulty()
# Evaluate a word's pronunciation difficulty (returns a score from 0 to 1)
difficulty = evaluator.evaluate("hello", language="en")
print(f"Difficulty score: {difficulty}") # Example output: 0.23
# Batch evaluation
words = ["hello", "world", "difficult"]
difficulties = evaluator.evaluate_batch(words, language="en")
# Multi-language support
norwegian_score = evaluator.evaluate("kjærlighet", language="no")
spanish_score = evaluator.evaluate("desarrollador", language="es")
italian_score = evaluator.evaluate("sviluppatore", language="it")
```
## Features
- Support for multiple languages:
- English (en)
- Norwegian (no)
- Spanish (es)
- Italian (it)
- State-of-the-art phoneme-based difficulty evaluation
- Considers factors like:
- Phoneme complexity
- Syllable structure
- Common pronunciation patterns
- Language-specific features
- Fast and efficient processing
- Batch evaluation support
## How it Works
The package uses a combination of techniques to evaluate pronunciation difficulty:
1. Phoneme extraction using language-specific models
2. Syllable analysis and stress patterns
3. Statistical analysis of phoneme combinations
4. Neural network-based difficulty prediction
5. Language-specific rule evaluation
Raw data
{
"_id": null,
"home_page": null,
"name": "pron-difficulty",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "difficulty, multilingual, nlp, pronunciation",
"author": null,
"author_email": "Federico Torrielli <federico.torrielli@unito.it>",
"download_url": "https://files.pythonhosted.org/packages/e7/18/fbb4b05f54de7158ab25eb5a43a1dc3c3e50dab82e02a4cabc619d65d19e/pron_difficulty-0.1.0.tar.gz",
"platform": null,
"description": "# Pronunciation Difficulty Evaluator\n\nA Python package that evaluates the difficulty of pronouncing words in multiple languages using state-of-the-art techniques. Currently supports English, Norwegian, Spanish, and Italian.\n\n## Installation\n\n```bash\npip install pron-difficulty\n```\n\n## Usage\n\n```python\nfrom pron_difficulty import PronDifficulty\n\n# Initialize the evaluator\nevaluator = PronDifficulty()\n\n# Evaluate a word's pronunciation difficulty (returns a score from 0 to 1)\ndifficulty = evaluator.evaluate(\"hello\", language=\"en\")\nprint(f\"Difficulty score: {difficulty}\") # Example output: 0.23\n\n# Batch evaluation\nwords = [\"hello\", \"world\", \"difficult\"]\ndifficulties = evaluator.evaluate_batch(words, language=\"en\")\n\n# Multi-language support\nnorwegian_score = evaluator.evaluate(\"kj\u00e6rlighet\", language=\"no\")\nspanish_score = evaluator.evaluate(\"desarrollador\", language=\"es\")\nitalian_score = evaluator.evaluate(\"sviluppatore\", language=\"it\")\n```\n\n## Features\n\n- Support for multiple languages:\n - English (en)\n - Norwegian (no)\n - Spanish (es)\n - Italian (it)\n- State-of-the-art phoneme-based difficulty evaluation\n- Considers factors like:\n - Phoneme complexity\n - Syllable structure\n - Common pronunciation patterns\n - Language-specific features\n- Fast and efficient processing\n- Batch evaluation support\n\n## How it Works\n\nThe package uses a combination of techniques to evaluate pronunciation difficulty:\n\n1. Phoneme extraction using language-specific models\n2. Syllable analysis and stress patterns\n3. Statistical analysis of phoneme combinations\n4. Neural network-based difficulty prediction\n5. Language-specific rule evaluation\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A package to evaluate pronunciation difficulty of words in multiple languages",
"version": "0.1.0",
"project_urls": {
"Homepage": "https://github.com/federicotorrielli/pron-difficulty",
"Repository": "https://github.com/federicotorrielli/pron-difficulty.git"
},
"split_keywords": [
"difficulty",
" multilingual",
" nlp",
" pronunciation"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "db0ff68e288dd93cd2415bc76affdc5da4662b1e7369f9967ab8ebb96e56a1c8",
"md5": "93a765ea5dcf5e509c84ddee973483ec",
"sha256": "6a4dd0506da799832769eb204985a5796f0770f997c8a4fc95a236a6a2e4b742"
},
"downloads": -1,
"filename": "pron_difficulty-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "93a765ea5dcf5e509c84ddee973483ec",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 9752,
"upload_time": "2024-12-04T18:13:55",
"upload_time_iso_8601": "2024-12-04T18:13:55.488791Z",
"url": "https://files.pythonhosted.org/packages/db/0f/f68e288dd93cd2415bc76affdc5da4662b1e7369f9967ab8ebb96e56a1c8/pron_difficulty-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e718fbb4b05f54de7158ab25eb5a43a1dc3c3e50dab82e02a4cabc619d65d19e",
"md5": "81762b73c44a62329431234f2305f101",
"sha256": "b9a3b97088907d4435a749bb03125f5376580332766e9e42a5518f52d60e4d18"
},
"downloads": -1,
"filename": "pron_difficulty-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "81762b73c44a62329431234f2305f101",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 8442,
"upload_time": "2024-12-04T18:13:57",
"upload_time_iso_8601": "2024-12-04T18:13:57.210542Z",
"url": "https://files.pythonhosted.org/packages/e7/18/fbb4b05f54de7158ab25eb5a43a1dc3c3e50dab82e02a4cabc619d65d19e/pron_difficulty-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-04 18:13:57",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "federicotorrielli",
"github_project": "pron-difficulty",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "pron-difficulty"
}