It seems PyInstaller and cx_Freeze will include many packages with an Anaconda2 environment.
Using either will produce a file over 600MB, this is largely due to a chain of includes which eventually includes Numpy, which then includes just about everything else.
An example of the includes that cause 600MB+ worth of packages:
import sys
from sys import argv
from os import path
from Tkinter import *
import tkFileDialog
from PyQt4 import QtCore, QtGui, uic, QtOpenGL
from moviepy.editor import *
Which doesn't seem like much, but I cannot reduce the file down without explicitly excluding Numpy, but even then it's still ~140MB and won't execute.
Has anyone had experience with dealing with this situation? 600MB is well excessive for a tiny app.
This issue was directly related to Anaconda.
When constructing an exe with Pyinstaller, it will get confused at Anaconda's package linkage and include obscene amounts of things.
This problem is fixed when using a non-Anaconda python with wheels for non-pip packages.