Skip to content

Commit

Permalink
add note about incompatibility of sklearn versions
Browse files Browse the repository at this point in the history
  • Loading branch information
shevkunov committed Mar 30, 2018
1 parent e525891 commit 326a315
Showing 1 changed file with 34 additions and 4 deletions.
38 changes: 34 additions & 4 deletions Hometasks/Hometask_2.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"\n",
"### Физтех-Школа Прикладной математики и информатики МФТИ \n",
"### Лаборатория нейронных сетей и глубокого обучения (DeepHackLab) \n",
"дедлайн: 4 апреля 23: 59 (MSK)\n"
"Дедлайн: 4 апреля 23: 59 (MSK)\n"
]
},
{
Expand Down Expand Up @@ -670,14 +670,44 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"При большом числе признаков метрические алгоритмы обычно плохо работают, подробнее: <a href=\"https://en.wikipedia.org/wiki/Curse_of_dimensionality\">проклятие размерности </a>."
"__________________\n",
"**Замечание:**\n",
"Известна проблема несовместимости версий sklearn: метрика \"cosine\" не доступна в старых версиях sklearn.\n",
"\n",
"Учитывая, что самый важный навык в IT-профессиях это умение пользоваться поисковиком (и читать технические тексты, например, документации), предлагаются следующие варианты:\n",
"\n",
"- использовать sklearn версии 0.19.1\n",
" (вы быстро разберётесь, как узнать текущую версию и как её обновить, это полезно знать)\n",
" \n",
" \n",
"- написать метрику cosine_distances для своего класса и использовать её.\n",
"\n",
" В sklearn реализована похожая функция, можете использовать её, но никто не запрещает написать свою реализацию.\n",
" Обратите внимание, что CountVectorizer возвращает объект класса scipy.sparse.csr.csr_matrix, к чему вы, наверное,\n",
" не были готовы при реализации класса, так что нужно преобразовать Xt к numpy.ndarray (документация в помощь)\n",
" \n",
" Обьект класса scipy.sparse.csr.csr_matrix используется так как матрицы, возвращаемые CountVectorizer, обычно почти\n",
" полностью состоят из нулей и использование разреженных матриц сильно экономит оперативную память. Такие матрицы имеют\n",
" схожие с numpy.ndarray интерфейсы, но совместимость не полная. \n",
" \n",
" \n",
"________________________"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"При большом числе признаков метрические алгоритмы обычно плохо работают, подробнее: <a href=\"https://en.wikipedia.org/wiki/Curse_of_dimensionality\">проклятие размерности </a>.\n",
"\n",
"<!--- [email protected] -->"
]
}
],
"metadata": {
"anaconda-cloud": {},
"kernelspec": {
"display_name": "Python [default]",
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
Expand All @@ -691,7 +721,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.2"
"version": "3.6.4"
}
},
"nbformat": 4,
Expand Down

0 comments on commit 326a315

Please sign in to comment.