- этот репозиторий :-)
- самый короткий гайд по git http://rogerdudler.github.io/git-guide/
- курс по git https://www.codecademy.com/learn/learn-git
- как писать комментарии при коммитах в git https://chris.beams.io/posts/git-commit/
- cheat sheet по питону http://www.datasciencefree.com/python.pdf
- cheat sheet по numpy http://www.datasciencefree.com/numpy.pdf
- cheat sheet по pandas https://github.com/pandas-dev/pandas/blob/master/doc/cheatsheet/Pandas_Cheat_Sheet.pdf
- cheat sheet по scikit-learn https://s3.amazonaws.com/assets.datacamp.com/blog_assets/Scikit_Learn_Cheat_Sheet_Python.pdf
- визуализация того как работают переменные и память в питоне http://www.codeskulptor.org/viz/index.html
- задачи по алгоритмам + online judge https://leetcode.com/
- https://www.kaggle.com/ раздел с кернелами
- "Python for Data Analysis" by Wes McKinney
- ODS course https://github.com/Yorko/mlcourse_open
Репозиторий
Отсюда нужны только папки с данными (ch6-ch11)
github.com/wesm/pydata-book
**Софт **
Используется Python 2.7 и оболочка Jupyter. Чтобы их установить, проще всего скачать пакет Anaconda
Книгу в электронном виде можно скачать тут twirpx.com
Материалы
№ | Тема | ноутбук | ScreenCast |
---|---|---|---|
1 | The Basics(Language Semantics, Scalar Types) | appendix_python_part1.ipynb | [24.05.17] |
2 | The Basics(Control Flow), Data structures and sequences(Tuple,List,Dict,Set) |
appendix_python_part2.ipynb | [26.04.17] |
3 | Functions | appendix_python_part3.ipynb | [16.05.17] |
4 | Assignment #1 | Assignment_1.ipynb NumPy Basics ch04.ipynb |
- |
5 | Первичный анализ данных с Pandas Типы данных pandas: Series, DataFrame, Index |
topic1_pandas.ipynb ch05-part1.ipynb |
[23.05.17] |
6 | Assignment #2 | Assignment_2.ipynb | - |
7 | Визуализация данных Seaborn, Plotly, Matplotlib |
topic2_part1_seaborn_matplotlib_plotly.ipynb topic2_part2_telecom_churn_tsne.ipynb |
[30.05.17] |
8 | Assignment #3 | Assignment_3.ipynb | - |
9 | Indexes (Indexing, selection, and filtering) DataFrame Joints(Combining and Merging) |
ch05-part2.ipynb ch07.ipynb |
[13.06.17] |
10 | Assignment #4 Data loading Plotting and Visualization Data Aggregation and Group Operations Time Series Financial and Economic Data Application Advanced NumPy |
ch06.ipynb ch08.ipynb ch09.ipynb ch10.ipynb ch11.ipynb ch12.ipynb |
- |
- "Python Machine Learning" by Sebastian Raschka
Репозитории
github.com/rasbt/python-machine-learning-book
github.com/dmitriydligach/PyMLSlides
Материалы
№, Тема | ScreenCast |
---|---|
1 Giving Computers the Ability to Learn from Data 2 Training Machine Learning Algorithms for Classification |
[21.06.17] |
3 A Tour of Machine Learning Classifiers Using Scikit-learn | [29.06.17] |
4 Построение и отбор признаков | [04.07.17] |
5 Principal Component Analysis и Кластеризация | [11.07.17] |
6 Learning Best Practices for Model Evaluation and Hyperparameter Tuning | |
7 Combining Different Models for Ensemble Learning | |
8 Applying Machine Learning to Sentiment Analysis |
Построение и Анализ Признаков:
https://habrahabr.ru/company/ods/blog/325422
ролик о правильной кросвалидации при использовании признаков с расчетом woe или mean по целевой переменной (target)
https://www.youtube.com/watch?v=g335THJxkto&t=2566s
Q-Q plot
https://desktop.arcgis.com/ru/arcmap/latest/extensions/geostatistical-analyst/normal-qq-plot-and-general-qq-plot.htm
Q-Q plot интерпритация
https://stats.stackexchange.com/questions/101274/how-to-interpret-a-qq-plot
Опять о пайплайне обучения моделей
http://blog.kaggle.com/2016/07/21/approaching-almost-any-machine-learning-problem-abhishek-thakur/
Что я пропустил - перевод категориальных признаков
в sklearn есть LabelEncoder и OneHotEncoder - так вот - я ими НЕ пользуюсь, т.к. если на бою придет новый класс, а у вас паплайн модели содержит эти преобразования - они свалятся с ошибкой... в библиотеке pandas есть метод get_dummies который аналогичен OneHotEncoder. выглядит это следующим образом:
pd.get_dummies(union, prefix=[list of prefixes], prefix_sep='_', dummy_na=False, columns = [list of columns], drop_first=True)
смысл в том, что на бою(тесте) если будет новый класс - он просто создаст новую колонку (без ошибки), но в модель в итоге войдет ограниченное количество колонок
По поводу работы с текстом:
видео семинара Стаса Семенова, основные моменты он рассказывает https://www.youtube.com/watch?v=5sQ8-Er8tXM&app=desktop
По поводу практики - слайды семинара Мельника Богдана на ВМК (слайды листать вниз до конца, потом вправо один раз, повторить)
https://ld86.github.io/msu-slides/#/
есть ноутбук на основе которого были сделаны слайды
https://github.com/ld86/msu-slides/blob/gh-pages/msu.ipynb
PCA:
визуализация собственных векторов и значений
http://setosa.io/ev/eigenvectors-and-eigenvalues/
визуализация метода главных компонент
http://setosa.io/ev/principal-component-analysis/
как соотносится SVD и PCA
https://stats.stackexchange.com/questions/134282/relationship-between-svd-and-pca-how-to-use-svd-to-perform-pca
По поводу метрики silhouette (количество кластеров)
http://scikit-learn.org/stable/auto_examples/cluster/plot_kmeans_silhouette_analysis.html
И как всегда лекция ODS о кластеризации и PCA
https://habrahabr.ru/company/ods/blog/325654/