- 1. 新人がpythonを1日だけ学んで作ったアプリ
- 2. 言語処理100本ノック-75(scikit-learn使用):素性の重み
- 3. 【プログラミング・データサイエンス学習に使用した書籍・オンラインコースのまとめ】
- 4. Kivy#001_Layout、Button、Scatter
- 5. AtCorderわからん日記_1 ABC148D
- 6. docker上のjupyter notebookでtensorboardを表示できない(解決済み)
- 7. 【Mac】PythonでCGIが動く簡単なHTTPサーバー作りたい
- 8. メモ「Automate the Boring stuff -chapter5 Dictionaries and Structuring Data」
- 9. 競プロで使えるPythonの標準入力まとめ
- 10. ゼロからはじめるChIP-seq解析
- 11. pyenvで簡単 使い捨て環境構築
- 12. Django インストールと動作確認
- 13. PyHamcrestを使って柔軟なunittestを書こう!
- 14. OpenVINO IEPlugin.load()の実行時エラーの解決策
- 15. たらい落としでSAP S/4 HANA上に購買依頼伝票を作成してみた
- 16. Python基礎② for文
- 17. 危険すぎるAI「GPT-2」は実際どこまで自然な文を生成できるのか
- 18. Qiitaでバズりそうな記事タイトルの推定モデルを構築してみた
- 19. 学習記録 その12(16日目) Kaggle2
- 20. BlenderのShader NodesにPythonからアクセスする
新人がpythonを1日だけ学んで作ったアプリ
#前提
スペック:IT企業の新卒1年目
Python歴:1日
(好きな音ゲー:***Jubeat***)#今回作ったアプリケーション
アプリ名:***これで愛無双の終盤16連はOKくん***
開発時間:***10分***開発背景
・I’m so happy(赤)の終盤16連が***光らない***。
・運指さえ覚えれば…でも、***覚えられない***。
・何回も練習すれば覚えられるけど、***練習する環境が無い***。
じゃあ、PCのキーボードを4×4のマスに見立てて、勤務中とかに練習できるようにすれば良いのでは?
ここから、『これで愛無双の終盤16連はOKくん』のPython開発が始まった・・・・。#コード
imso関数の中身~~~python:im_so_happy.py
def imso():
print(“””
—-
1234
qwer ←キーボード上のこれらのキーを4×4のjubeatのパネルに例えてね。
asdf
zxcv
—-“””)
print(“””
—
言語処理100本ノック-75(scikit-learn使用):素性の重み
[言語処理100本ノック 2015](http://www.cl.ecei.tohoku.ac.jp/nlp100/)の75本目「素性の重み」の記録です。
学習(訓練)したモデルでどの素性が分類にとって重要かを出力します。ディープラーニングと違って説明性があるのがいいですね。
今までは基本的に[「素人の言語処理100本ノック」](https://qiita.com/segavvy/items/fb50ba8097d59475f760)とほぼ同じ内容にしていたのでブロクに投稿していなかったのですが、[「第8章: 機械学習」](http://www.cl.ecei.tohoku.ac.jp/nlp100/#ch8)については、真剣に時間をかけて取り組んでいてある程度変えているので投稿します。[scikit-learn](https://scikit-learn.org/)をメインに使用します。# 参考リンク
|リンク|備考|
|:–|:–|
|[075.素性の重み.ipynb](https://github.com/YoheiFukuhara/nlp100/blob/master
【プログラミング・データサイエンス学習に使用した書籍・オンラインコースのまとめ】
### 書籍
ディープラーニングG検定公式テキスト、浅川伸一、江間有沙、工藤郁子、巣籠悠輔、瀬谷啓介、松井孝之、松尾豊、2018年、JDLA
ゼロから作るDeep Learning ーPythonで学ぶディープラーニングの理論と実装、斎藤康毅、2016年、オライ
Kivy#001_Layout、Button、Scatter
まずドキュメントはここにあります↓
https://kivy.org/doc/stable/#インストール
“`
python -m pip install –upgrade pip wheel setuptools virtualenv
python -m virtualenv kivy_venv
kivy_venv\Scripts\activate
python -m pip install docutils pygments pypiwin32 kivy_deps.sdl2==0.1.* kivy_deps.glew==0.1.*
python -m pip install kivy_deps.gstreamer==0.1.*
python -m pip install kivy==1.11.1
“`##APP1
最初にはボタン一つ表示できるようにします。
ボタンの文字はhello、文字の大きさは150sp。###Code
“`Python
from kivy.app import App
from kivy.uix.label import Label
f
AtCorderわからん日記_1 ABC148D
# はじめに
こないだはじめてAtCorderのコンテストに参加してみました。過去問はほんのちょびっとだけ解いたぐらい。
マジの初心者なんですが、なんかCがむちゃ簡単でDもなんかいけるのでは? って思ったので解いてました。時間内にはだめだったけど。
プログラミング強人(つよびと)の解答、マジのスマートすぎて初心者には難しいです。え? そんな入力の受け取り方ある?! その出力の仕方アリなの?! みたいになる。精進します。
とりあえず自分で考えたアルゴリズムでどうしてダメだったのか考えていこうと思います。自分の考えた操作をきちんとコードとして書きおろせなければ意味ないので。
問題は[ABC148](https://atcoder.jp/contests/abc148)のD問題より。以下引用です(ルールに則っているつもりですが、間違っていれば教えてください)。(どうでもよい追記)
蟻本まだ買ってないです。持ち金が少ないので。学校の図書館にあれば年末年始借りるかも。
それとなく買ってほしいな~ってパッパにねだったつもりが、方向性をミスったのでおうちにあった
・アルゴリズム教科書 -実用的な
docker上のjupyter notebookでtensorboardを表示できない(解決済み)
随分と時間がかかってしまったが、ようやく解決した!
[すぐに使える! 業務で実践できる! Pythonによる AI・機械学習・深層学習アプリのつくり方](https://www.amazon.co.jp/%E3%81%99%E3%81%90%E3%81%AB%E4%BD%BF%E3%81%88%E3%82%8B-%E6%A5%AD%E5%8B%99%E3%81%A7%E5%AE%9F%E8%B7%B5%E3%81%A7%E3%81%8D%E3%82%8B-Python%E3%81%AB%E3%82%88%E3%82%8B-AI%E3%83%BB%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92%E3%83%BB%E6%B7%B1%E5%B1%A4%E5%AD%A6%E7%BF%92%E3%82%A2%E3%83%97%E3%83%AA%E3%81%AE%E3%81%A4%E3%81%8F%E3%82%8A%E6%96%B9-%E3%82%AF%E3%82%B8%E3%83%A9%E9%A3%9B%E8%A1%8C%E6%9C%BA/dp/4802611641)
【Mac】PythonでCGIが動く簡単なHTTPサーバー作りたい
# やること
CGIが動く簡単なローカルのHTTPサーバーをPythonで構築します。簡単なものだとPerlではなくて、PythonでもCGIスクリプト書けそうということでやってみました。
# 環境
– MacOS Mojave
– Python 3.7.5# CGIって何
> *CGIとはCommon Gateway Interfaceの略で、Webサーバー上でプログラムを使って処理した結果を表示させる機能のことです。*([CGIってなあに](http://www5.plala.or.jp/vaio0630/hp/cgi.htm)より引用)
要は、動的なウェブページを作ったりするのにブラウザから値取ってきたりしてサーバー側で処理してまた返すみたいなことが出来る機能のことだと思います。
# ローカルのHTTPサーバーの準備
まずはサーバーをたてないといけないのでローカルでHTTPサーバーをたてて、ウェブページを表示させます。表示したいページを作成するために、作業したいディレクトリの中にIndex.htmlを書きます。
今回は送信するデータをfoodとseasonに
メモ「Automate the Boring stuff -chapter5 Dictionaries and Structuring Data」
# Dictionaries and Structuring Data
## The Dictionary Data Type
“`
>>> myCat = {‘size’: ‘fat’, ‘color’: ‘gray’, ‘disposition’: ‘loud’}>>> myCat[‘size’]
‘fat’>>> ‘My cat has ‘ + myCat[‘color’] + ‘ fur.’
‘My cat has gray fur.’>>> spam = {12345: ‘Luggage Combination’, 42: ‘The Answer’}
“`## Dictionaries vs. Lists
“`
>>> spam = [‘cats’, ‘dogs’, ‘moose’]
>>> bacon = [‘dogs’, ‘moose’, ‘cats’]
>>> spam == bacon
False
>>> eggs = {‘name’: ‘Zophie’, ‘species’: ‘cat’, ‘age’: ‘8’}
>>> ham = {‘s
競プロで使えるPythonの標準入力まとめ
### -1. はじめに&前口上
この記事は、私の[はてなブログ](kingofwhiterock.hatenablog.com)に掲載している記事とほぼ同一です。最近話題になってる、競技プログラミングをしています(激弱コーダーなので探さないでください……泣)。
C++だったら、`std::cin` の後に`>>`をひたすらつなげておけばいいんですけど(偏見)、Pythonはそうもいかないので、標準入力を受け取る方法をいくつかまとめてみます。
以下に挙げるコードは`Python 3.7.3`で動作確認済みです。
間違い等ありましたら、教えてください!!
### 0. 目次
競技プログラミング基準で、どうしても整数中心の説明になっていますが、整数を受け取る場合も文字列を受け取る場合も、基本的な構造は変わらないと思います。* `input()`の動作
* 標準入力(1行)を受け取る
* 入力が1つの文字(列)
* 入力が1つの整数
* 入力が複数の整数
* 標準入力(複数行)を受け取る
* 各行に1つの整数(行数指定あり)
ゼロからはじめるChIP-seq解析
# はじめに
ChIP-seq(chromatin immunoprecipitation followed by sequencing)は特定の転写因子の結合やヒストン修飾がゲノム上のどの位置でどれぐらいの頻度で起こっているのかを網羅的に測定する方法です. この記事を読めば環境構築から始めて論文のデータを用いて解析を行い, 最終的に結果をゲノムブラウザで見たり, ピークコールをやったりするところまでできるようになりますよ~. それでは早速環境構築から始めましょう!
# 環境構築
## miniconda3のインストール
まずはパッケージマネージャーであるminicondaをインストールします. パッケージマネージャーは環境構築時のツールのインストールや管理を簡単にできるようにしてくれます.
Linuxの場合
“`
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.shbash Miniconda3-latest-Linux-x86_64.sh
“`Macの場合
pyenvで簡単 使い捨て環境構築
## 依存関係がめんどくさすぎる。。。(今更)
– git cloneしてきて試そうとしたけど依存関係が複雑すぎて全く再現できない。。。
– anacondaである程度まとめて入れたいけどpipとバッティングしまくる。。。
– requirement.txtで全部まとめて入れられる! と思ったら依存関係がアレな感じでうまくいかない。。。
– お仕事の引き継ぎできない。。。(泣)
– etc。。。なんてことはPythonでは日常茶飯事ですがpyenvでPythonのバージョンごと使い捨てしてしまうと割と環境構築の時間を短縮できたよと言う話。(推奨されるかは知りません。)
## 仮想環境の使い捨てはよく聞くがバージョンごと使い捨てする話はあまり聞かない
仮想環境といえばvertualenvで作っていつでも使い捨てられるから便利!とかよく聞きますが、そもそもPythonのバージョンが違ったりライブラリのパスを変更しなくてはいけなかったりなど仮想環境そんなに便利か?と思ったりします。しかしpyenvでバージョンごと使い捨てるといくらか環境構築の苦しみが緩和される場合があると思
Django インストールと動作確認
# きっかけ
最近業務や自宅でプログラミングしてなくて少し危機を感じたので勉強、リハビリかねて
Djangoを試してみようと思った。# 環境
+ Windows10 Home
+ python 3.6.5# 手順について
Djangoの[ドキュメント](https://docs.djangoproject.com/ja/3.0/)を参照して実施した。# インストール
以下のコマンド実行でインストールは完了。“`cmd:dos
python -m pip install Django
“`インストールが完了したら一応確認。pythonコマンドラインで以下を実行。
“`python:pythoncmd
>>> import django
>>> print(django.get_version())
3.0.1
“`
`print(django.get_version())`の結果に`3.0.1`などDjangoのバージョンが表示されればOK。
※言うまでもないが、バージョンなので必ず同じ値が表示されるとは限らない。# デモアプリ作成
コマンドプロンプトで
PyHamcrestを使って柔軟なunittestを書こう!
## はじめに
pythonのunittestでDict型の中にList型があって,テストをするたびに通ったり通らなかったりすることってありませんか?
私はあって悩んだのでここに書き残しておきます.
解決の糸口は[このサイト](https://stackoverflow.com/questions/14491164/python-unittest-asserting-dictionary-with-lists)(1)からいただきました.ありがとうございます.## assertEqualで対応できないところ
[ここ](https://qiita.com/phorizon20/items/acb929772aaae4f52101)(2)を参考にしながら以下のようなテストを書きました.“`python
import unittestclass VTest(unittest.TestCase):
maxDiff = None
def setUp(self):
passdef tearDown(self):
pass
OpenVINO IEPlugin.load()の実行時エラーの解決策
# はじめに
OpenVINOのハンズオンを受講したので、自宅のPCでも動作させようとしたときにハマったのでメモします。
ハンズオンはRaspberry Pi + Neural Compute Stickで行いました。(IntelCPUが必要なため)
このサイト[OpenVINOで始めるディープラーニング](http://jellyware.jp/openvino/)を参考にして手順通りに進めましたが、リアルタイム顔検出で実行時エラーに悩みました。
同じようにハマっている人の少しでも解決になればと思います。# OpenVINOとは
OpenVINOは、エッジにおける視覚アプリケーションでコンピュータビジョンやディープラーニング推論を容易に実現するためのツールキットです。
[OpenVINO ツールキット](https://www.intel.co.jp/content/www/jp/ja/internet-of-things/solution-briefs/openvino-toolkit-product-brief.html)# 動作環境
– MacBook Pro 2018
たらい落としでSAP S/4 HANA上に購買依頼伝票を作成してみた
この記事は [SAP Advent Calendar 2019](https://adventar.org/calendars/3908) の12月26日分の記事として執筆しています。
![saiko2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531075/43b67012-29b0-6202-8048-ad64aa6a5bf7.png)#はじめに
初めまして。サイコパスのりおです。
初投稿です。よろしくお願いします。早速ですが、皆さんはこんなことを思ったことはないでしょうか?「ボタン1つで伝票が出来たらいいのに」と。
また、こんなことも思ったことはないでしょうか?「たらい落としを味えたらいいのに」と。
そんな欲張りなあなたの願いを叶えるため、本記事では画期的なたらいシステムを実装していきます。#たらいシステムの概要
![アーキ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531075/977dc
Python基礎② for文
#Python基礎 for文
“`
for 変数名 in イテラブルオブジェクト:
処理
“`Pythonのfor文は他言語のforeach文と同様に、リスト(配列)などのオブジェクトの要素が順番に変数に代入されて処理が行われる。
“`
fruits = [‘Apple’, ‘Berry’, ‘Orange’]for Kudamono in fruits:
print(Kudamono)
# Apple
# Berry
# Orange
“`[エンジニア転職参考サイト](https://engineer-work.com)
危険すぎるAI「GPT-2」は実際どこまで自然な文を生成できるのか
# はじめに
2018年のBERT以降、高性能な自然言語処理モデルが次々に登場しています。その中でも特に話題となったのが、2019年2月にOpen AIが発表した[GPT-2](https://openai.com/blog/better-language-models/)(Generative Pre-Training 2)です。GPT-2は、同じくOpen AIが開発したGPTに対して、文章生成に特化した学習をさせたモデルです。発表当初、あまりに自然な文章を生成できるとして、フェイクニュースなどの危険性から、小規模モデル(それでもパラメータ数は1億2400万)のみが公開され、以後段階的に大きなモデルが公開されています。
このGPT-2ですが、現在は全てのモデルが公開されており、Dockerコンテナまで用意されているため、誰でも簡単に試すことができます。ということで実際にいくつかの文章を入力して、どの程度自然な文章を生成できるのか確認してみます。
参考までに、公開履歴は以下の通りです。
## 公開履歴
### 2019年2月 GPT-2発表&小規模モデル公開
* パラメータ数
Qiitaでバズりそうな記事タイトルの推定モデルを構築してみた
Pythonは触ってきたけど機械学習の実装経験が乏しい
→特に自然言語処理を使って何かを作ってみたい
・・・といった気持ちで、バズり推定モデルを構築してみました。# 概要
* 記事タイトルのデータを収集
* 記事タイトルのデータセットを1ファイルに結合
* スパム検知でまずは練習
* Qiita記事のデータセットに置き換え# 実装
## 記事タイトルのデータを収集
### トレンドに載った記事
トレンドの記事を紹介しているTwitterアカウント([Qiita 人気の投稿](https://twitter.com/qiitapoi))から、Twitter APIを用いて取得します。
3229件のデータが集まり、ツイート内のURLと絵文字を除去してからjsonファイルにダンプしていきます。“`python
def retrieveTweets(screenName, count):
global totalIdx
timeLine = t.statuses.user_timeline(screen_name=screenName, count=c
学習記録 その12(16日目) Kaggle2
#学習記録(16日目)
勉強開始:12/7(土)〜教材等:
・大重美幸『詳細! Python3 入門ノート』(ソーテック社、2017年):12/19(木)読了
・Progate Python講座(全5コース):12/21(土)終了
・Andreas C. Müller、Sarah Guido『(邦題)Pythonではじめる機械学習』(オライリージャパン、2017年):12月23日(土)読了#Kaggle
参加コンペ:[Real or Not? NLP with Disaster Tweets](https://www.kaggle.com/c/nlp-getting-started) 12/24(火)〜・train[“データラベル”]で抜き出す。
・targetは数値化済なのでtext部分のみtfidfvectorizerでベクトル化
fit_transformを使用
・KFoldでクロスバリデーションを行いたい…のだけど、引数にtextとtargetの2値が取れない。結局昨日と同じ問題に帰結してますが、なんとなく方向性は見えてきたので、kaggleの過去コンペ等を
BlenderのShader NodesにPythonからアクセスする
BlenderのShader Nodeの値をPython側から変更したかったのですが、意外とめんどくさかったので備忘録。
## 環境
Blender2.81
Windows10## コード
こんな感じのshaderの値にアクセスします。
Blenderはズブの素人なので、詳しい人いたらコメントお願いします。![キャプチャ.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/250282/b7ee01fb-ed84-d0d3-7aa7-26e646418f34.png)
“`python
mat = bpy.data.materials[mat_name] # get material
node_tree = mat.node_tree # node tree of material
nodes = node_tree.nodes # nodes array of material
bsdf = n