Лучшие решения весеннего практикума 2014 года

Выкладываю 5 решений весеннего практикума 2014 года, показавшие лучшие результаты по мере достоверности (accuracy):

Автор Итоговый результат
Константин Безденежных 0.8050847458
Малков Максим 0.7966101695
Гинатулина Светлана 0.7951977401
Александров Никита 0.7881355932
Ульянов Александр 0.7768361582

Также выкладываю baseline 2, который в итоге показал 0.7062146894

Все решения можно скачать по ссылке: solutions.zip

Слайды к лекциям 2013 года

Лекция Слайды
Лекция 1. Задачи обработки текстов lecture1-2013
Лекция 2. Регулярные выражения и конечные автоматы lecture2-2013
Лекция 3. Языковые модели и задача определения частей речи lecture3-2013
Лекция 4. Контекстно-свободные грамматики и синтаксический анализ lecture4-2013
Лекция 5. Статистические методы синтаксического анализа lecture5-2013
Лекция 6. Лексическая семантика lecture6-2013
Лекция 7. Вопросно-ответные системы и автоматическое реферирование lecture7-2013
Лекция 8. Машинный перевод lecture8-2013
Лекция 9. Распределенные методы обработки текстов lecture9_2013

Предварительные итоги (7 мая 2014)

Итак, подходит к концу практикум. Студенты, набравшие 9 и более баллов, получают оценку "отлично".  Все, кто набрал 5-8 баллов получают оценку "хорошо". За 2-4 бала будет выставляться оценка "удовлетворительно".

При желании в течении недели можно улучшить свою оценку, добрав недостающие баллы за счет дополнительной разметки сообщений (1 балл за 100 твитов, соблюдая начальный баланс (50/25/25)). Этим способом  можно изменить только "хорошо" на "отлично" и "удовлетворительно" на "хорошо".

Оценки будут выставляться в среду 14 мая на 1 паре в аудитории 523.

Итоговые результаты:

баллы доп. баллы оценка
Алексиянц Александр Владимирович 14 отлично
Безденежных Константин Вячеславович 39 отлично
Иванишин Владислав Анатольевич 8  1 отлично
Кондратьев Михаил Владимирович 11 отлично
Макаров Александр Евгеньевич 5  4 отлично
Мамонтов Антон Юрьевич 6  3 отлично
Пастух Денис Дмитриевич 3 удовл
Смородин Кирилл Андреевич 17 отлично
Сугаченко Екатерина Алексеевна 20 отлично
Ступин Андрей Андреевич 9 отлично
Татуев Антон Андреевич 5 хорошо
Тишевницкая Полина Николаевна 6 хорошо
Ульянов Александр Дмитриевич 11 отлично
Филипенко Максим Сергеевич 16 отлично
Черников Алексей Анатольевич 8  1 отлично
Шарыгин Евгений Юрьевич 3  2 хорошо
Щевьёва Светлана Михайловна 11 отлично
Ярошевский Денис Всеволодович 4  1 хорошо
Александров Никита Анатольевич 18 отлично
Астахова Дарья Ильинична 7 2 отлично
Борисова Татьяна Сергеевна 8 1 отлично
Буланов Артём Андреевич 14 2 отлично
Гинатулина Светлана Игоревна 16 отлично
Димитриев Станислав Олегович 0 неуд
Ермичев Александр Александрович 8  1 отлично
Захаров Дмитрий Александрович 5  4 отлично
Коноркин Иван Олегович 2 удовл
Косолапов Кирилл Александрович 8  1 отлично
Мальков Максим Петрович 37 отлично
Пузров Глеб Владимирович 3 удовл
Сукманова Дарья Александровна 10 отлично
Шалаев Михаил Михайлович 2 3 хорошо

Шаблон класса SentimentAnalyzer.py

По просьбам присутствовавших сегодня на семинаре, выкладываю шаблон класса SentimentAnalyzer.py. В последней строчке написано как из этого шаблона получить Baseline_1.

class SentimentAnalyzer:
    #constructor (optional)
    def __init__(self):
        None

    #trainer of classifier (mandatory)
    def train(self, training_corpus):
        # train your classifier here
        self.classifier = None

    #returns sentiment score of input text (mandatory)
    def getClasses(self, texts):
        #Write your code instead of next line
        return ['neutral' for iter in texts] # Baseline 1

Внимание, чтобы была возможность самостоятельно фильтровать данные, на вход функции train() подается тренировочный корпус в формате json, полученный примерно так:

training_corpus = json.load(open(path_to_training_corpus))

Экзамен и проставление оценок

Сдать экзамен или поставить полученную оценку в зачетку/ведомость можно приехав в ИСП РАН. Перед этим рекомендую написать мне письмо и договориться о времени. В университете я буду скорее всего только в январе.

Денис.

Исправлена ошибка в 3 лекции

В 21-м слайде лекции 3 (Языковые модели) была неправильная информация. Вопрос вызывала формула \sum_{i,j} p(w_n|w_i,w_j)=1 .

Эта формула относится к оценки вероятности N-граммы на основе метода максимального правдоподобия и означает вероятность события, что слово w_n встретилось в одном из всех возможных контекстах, в которых оно встречалось. То есть выполняется всегда.
В случае, когда применяется сглаживание откатом к модели меньшего порядка (вероятность n-граммы равна 0 ) необходимо сбалансировать вероятности всех n-грамм, так чтобы сумма вероятностей заданного слова во всех контекстах (в том числе и меньших порядков)  была равна 1 .

В разделе 6.4 основного учебника приводится подробный вывод коэффициента \alpha . Всем интересующимся рекомендую заглянуть туда.

PS. Спасибо внимательным студентам за вопрос. Слайд в лекциях исправлен.

Слайды лекций 2012 года

Лекция Слайды
Лекция 1. Задачи обработки текстов  lecture1-2012.pdf
Лекция 2. Регулярные выражения и конечные автоматы  lecture2-2012.pdf
Лекция 3. Методы поиска словосочетаний  lecture3-2012.pdf
Лекция 4. Языковые модели и задача определения частей речи  lecture4-2012.pdf
Лекция 5. Контекстно-свободные грамматики и синтаксический анализ  lecture5-2012.pdf
Лекция 6. Статистические методы синтаксического анализа  lecture6-2012.pdf
Лекция 7. Лексическая семантика  lecture7-2012.pdf
Лекция 8. Вопросно-ответные системы и автоматическое реферирование  lecture8-2012.pdf
Лекция 9. Машинный перевод  lecture9-2012.pdf

Первая лекция в осеннем семестре 2013 года

Первое занятие состоится в аудитории 612 в пятницу 4-го октября в 18.00. На вводной лекции будут рассмотрены классические задачи обработки текстов и типичные проблемы, возникающие при решении этих задач. Также будут обсуждаться некоторые организационные моменты.

Приглашаются все, кто хочет понять, о чем будет спецкурс, и что нужно для того чтобы успешно его завершить.