カップ2014を想像してください。

親愛なるhabrahabr、こんにちは!

ごく最近、イマジンカップ2014のロシアの決勝戦が終了しました。このコンテストについての感想とプロジェクトについてお話ししたいと思います。 Habrは技術コミュニティなので、この記事を2つのパートに分けることにしました。チームの短い歴史と、プロジェクトとアイデア自体に関する技術的なストーリーです。





Geek.Threeチームについて簡単に説明します
私たちのチームは3人のシベリアの大学院生で構成され、チームは大学の3年目に形成され、この間、私たちは毎年ソフトウェアプロジェクトImCupのコンテストや他の多くのコンテストに参加しました。 この間、一部のコンテストで賞を獲得しました。プロジェクトの範囲はおおよそ次のとおりです。

  1. 連邦法152「個人データの保護」の枠組みにおける企業の情報セキュリティの監査のためのソフトウェアプロジェクト。
  2. SaveFood-電話を使用してスーパーマーケットで商品のバーコードを読み取り、簡単な言葉で製品の構成に精通します-「製品のこれらのコンポーネントはどれくらい有害ですか?」;
  3. NotAlone-趣味で友人を検索する独身者向けのプロジェクト。
  4. Katrinaは、ソーシャルネットワークでのティーンエイジャーの自殺行為を監視し、即座に両親に通知するためのクロスプラットフォームアプリケーションです。


他にも多くのプロジェクトやフリーランスがありましたが、読者に多くの時間を費やしたプロジェクトのみを伝えようとしました。

2014年2月、トムスクで開催されたImCup地域ファイナルで2位になりましたが、ロシアファイナルへの参加は期待できませんでした。 しかし、決勝の少し前に、 シュワルから「Imagine Cup Russian Finals」というテーマのメッセージを受け取りました。 決勝戦の準備が始まったのは、地域の決勝戦の後、近い将来に他のコンテストに参加する予定はなかったため、プロジェクトの作業が少し中断されたためですが、良いニュースの後、失われた時間を補うために莫大なエネルギーを投入しなければなりませんでした。



プロジェクトについて。






主なアイデアは、ソーシャルネットワークで思春期の自殺行為を監視し、すぐに両親に通知するためのクロスプラットフォームアプリケーションを実装することです。 両親は、職場での高い雇用のために、子供の活動を独立して監視する機会を常に持っているわけではありません。 私たちのアプリケーションでは、公開情報(ステータス、投稿)を常に監視し、自殺行為に関連する単語をチェックできます。

次に、そのような投稿はプッシュ通知として親に送信され、親はすでに次に何をすべきかを決定します。 実装計画では、危険な場合に、そのような状況で有資格の助けを求めることができる最も近い心理センターを提案する機能を追加します。

次のプラットフォームは、アイデアを実装するために使用されました。



Windows Phoneでは、最初のパブリックSDKからプログラムを作成しており、すでにこのプラットフォームでの十分な経験があります。 Windows Azureプラットフォームでは、ロシアで使用することが実質的に不可能であった瞬間からも多くの経験がありました。 Windows Azureはアプリケーションのバックエンドとして使用され、最初のタスクは、ソーシャルネットワークから受信した投稿を統合し、キーワードシソーラスの保存、投稿の確認、認証、プッシュ通知の送信でした。 調性の分析では、より困難であり、私たちの誰もそのようなアルゴリズムを以前に使用したことがなく、したがって、将来、多くの研究が必要です。

実装の最初の段階では、膨大な数のティーンエイジャーがこの特定のソーシャルネットワークを使用するソーシャルネットワークVkontakteに焦点を合わせることにしましたが、Twitter、Facebook、Tumblr、Odnoklassnikiなどの他のAPIを接続するための機能も用意しました。このプロジェクトはそれほど苦痛ではありませんでした。

最初は、プロジェクトは独自のシソーラスを使用して、ソーシャルネットワークから受信した投稿のキーワードをチェックし、ネガティブな単語が使用されたことをユーザーに通知しました。 その後、フラット分類が使用され、偶然の場合、アプリケーションをインストールしたキーワード(ポジティブ、ネガティブ、ニュートラル)に従って、ポスト分類を含むプッシュメッセージが送信されました。

将来、メッセージの色が「ネガ」になった場合にのみ、プッシュ通知を送信することが決定されました。 10代の若者は、ソーシャルネットワークのページに多くの情報を投稿することがよくあります。 ネットワーク。 アプリケーションを開いてソーシャルネットワークアイコンのステータスを表示することにより、たとえば1日ですべてのメッセージを知ることができます。

ロシアのファイナルへの参加について通知を受けた後、機能を早急に改良する必要がありました。 shwarsは、アプリケーションを明確に示すためにソーシャルネットワークでテストアカウントを作成することを推奨しました。その後、テキストの色を決定する負担を調性分析アルゴリズムにシフトすることにしました(このトピックに関する優れた記事はこちらです )。 そのようなアルゴリズムを実装してテストする時間がなかったため、既製のソリューションを使用することに決め、AlchemyAPIをこの能力で使用し、テスト中に最良の結果をもたらしたものでした。 当時の唯一の問題は、このAPIがロシア語で動作しなかったことであり、デモでは英語で書かれた投稿を使用する必要がありました。



次は何ですか


ロシアの決勝で賞を獲得することができなかったという事実にもかかわらず、みんなと私はこのプロジェクトで作業を続ける準備ができていますが、近い将来、Githubにリポジトリを公開し、このプロジェクトの共同開発にコミュニティを引き付けることを望んでいます。 競争後、Windowsデスクトップでプロジェクトを実装する提案を受け取りました。したがって、近い将来、この方向で作業します。



結論と感謝
結論として、このようなコンテストを開催し、参加する機会を与えてくれたMicrosoftに感謝するとともに 、サポートとアドバイスを求めるshwarsに感謝します。 実際、ImCupは自分自身を証明してプロジェクトを実証するだけでなく、ロシア全土の学生や大学院生とコミュニケーションをとる絶好の機会であり、そのような競技会の参加者とコミュニケーションをとる絶好の機会であると考えています。一見したように!

私の同僚、特にkoztの理解と支援に感謝します!




All Articles