お知らせ
- 重要: 最終課題の提出期限を 7月15日(土) 18:00 に変更しました。
- レポートも期限までに完成させてください。
- プログラムが期限までに完成しなかった人は、未完成のものを提出してください。
レポートでは、完成しなかった部分を明示してください。
- 期限を過ぎて提出されたものは減点になりますが、発表会開始時までは受領します。
- 単語を頻度順にソートするには、頻度の数値で前後関係を判定する必要があります。
2年「データ構造とアルゴリズム演習」の2週目
「コレクションによるソート」
の課題4,5がこの話です。
概要
講義スライド
a を押すとスライド全ページを 1ページとして表示させることができます。
実習テキスト
- この演習で作成するシステムの全体像
- プログラミングの準備
- 2年次科目「データ記述とWebサービス」の内容 (復習)
以下は抜粋
- Feed (RSS/Atom) の利用
- Webサービスの利用
- Webページの利用
- 形態素解析の利用
- 感情分析
- 参考
発表会
- 日時: 7月17日(月・祝) 3限
- 発表時間: 5分程度 (+質疑)
- 発表内容:
- プログラムの目的
- デモ
- 実行のタイミングに制限がある場合には過去に実行した際の画面を示してください。
- アピールポイント
- 発表者の決定方法: 立候補 (+ 当日指名)
- 注意:
- 優秀な発表の様子は後輩等に紹介されることがあります。
- 発表の様子が卒業アルバムに載るかもしれません。
課題・練習問題
- 最終課題: プログラム(ソース)+レポート (+発表用スライド)
( 7/14(金) 23:59 7/15(土) 18:00 提出)
- 完成版のプログラム
- ソース一式(必須)
- Java の場合、src 以下の(今回のプログラムと関係のある)フォルダを
提出フォルダにコピーしてください。
圧縮してまとめる必要はありません。
- 提出物は公開しませんので、アプリケーションIDなどは入ったままにしてください。
なお採点時に限り、そのアプリケーションIDなどを使って実行することがあります。
- 実行に必要なライブラリなども提出してください。
外部プログラムを使っている人は、その配布パッケージを出してください。
配布パッケージからではなくパッケージ管理システム (Python の pip など)
を利用してインストールした場合は、
レポートにインストールしたパッケージ一覧を書いておくだけでかまいません。
- C# などで開発した場合には実行形式のファイルも提出してください。
- Webアプリケーションとして作成している人(ex. Tomcatを使っている人)については、
サーバで公開できるようなファイル一式を提出してください。
- データベースを使っている人は、ダンプしてもらってもよいのですが、
量が多いと現実的ではないかもしれません。
いずれにしても、テーブルの構造をレポートに書いておいてください。
- レポート...
- 発表用スライド (発表にスライドを使う場合)
- 提出期限: 7/14(金) 23:59 7/15(土) 18:00
- レポートとソースのどちらかが欠けている人は単位が出ません。
- 提出物は授業で制作された作品の例として、後輩や一般の人に紹介されることがあります。
- 提出先: boxの「最終課題」フォルダの中
- 課題: プログラムの構想
- どういう機能を実現するか (参考: 過去の例)
- そのためにどういう情報を利用するか
- それはどのような形式か (調査しておくこと)
- システムの構成図
- データの流れがわかるもの。システム内の処理は表現しなくてもよい。
- 形式: スライド 3枚以上(表紙は除く) (PowerPoint もしくは PDF)
- 提出先: boxの「構想」フォルダの中
- 提出期限: 5/22 5/29 授業開始時
- 期限後に修正版を提出する際にはファイル名を変えること(元のファイルを上書きしないこと)
- 内容を大きく変えたり簡略化する場合は相談すること
- 発表: 発表2分程度, 質疑応答1分程度。発表後も内容の変更は可能。
- 練習 (提出なし)
- 練習1: 単語の抽出と品詞による絞り込み
Sudachi のサンプルプログラムを参考に日本語で書かれたテキストを形態素解析し、
特定の品詞の語のみを取り出してリストに格納し、
最後にリストに含まれる語をすべて表示するプログラムを作成しましょう。
- 抽出する語の品詞は「名詞」「動詞」「形容詞」のいずれかとします。
形態素解析用辞書では品詞は階層的に定義されていますが、ここでは最上位の階層だけを指定します。
品詞は List<String> で、先頭の要素が最上位の階層です。
- 抽出した語を格納するリストには ArrayList を用いてください。
ArrayList<String> でかまいませんが、別のオブジェクトでもかまいません。
- 入力のフィードは好きなものに変更してかまいません。
- ネットワーク接続がうまくいかない人はファイル入力に変更してかまいません。
テキストファイルを BufferedReader で読み込む方法は、
「オブジェクト指向プログラミングおよび演習」の最後の講義で扱っています。
- ファイル名: TermExtractor.java
文献案内